diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/plugin/LwfPluginInitializer.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/plugin/LwfPluginInitializer.java index c100a009..b9242356 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/plugin/LwfPluginInitializer.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/plugin/LwfPluginInitializer.java @@ -7,7 +7,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** - * @Description 劳务费插件 + * @Description 劳务费插件 这个插件没用 用的还是ExpensePluginInitializer * @Author xiangerlin * @Date 2025/5/13 17:49 **/ @@ -90,7 +90,6 @@ public class LwfPluginInitializer extends PluginBaseEntity { **/ @Override public JsonResultEntity executeBusiness(JSONObject requestJson) throws Exception { - logger.info("======开始执行GRP劳务费插件======:{}",requestJson.toString()); return null; } } diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/ILwfPluginService.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/ILwfPluginService.java index 294cf4d5..0a3a847a 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/ILwfPluginService.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/ILwfPluginService.java @@ -4,7 +4,7 @@ import com.alibaba.fastjson.JSONObject; import com.hzya.frame.web.entity.JsonResultEntity; /** - * @Description 劳务费插件service + * @Description 劳务费插件service 这个插件没用,用的还是 ExpensePluginInitializer * @Author xiangerlin * @Date 2025/5/13 17:52 **/ diff --git a/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/impl/LwfPluginServiceImpl.java b/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/impl/LwfPluginServiceImpl.java index dd076619..754b1edd 100644 --- a/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/impl/LwfPluginServiceImpl.java +++ b/base-buildpackage/src/main/java/com/hzya/frame/plugin/grp/service/impl/LwfPluginServiceImpl.java @@ -13,7 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; /** - * @Description 劳务费插件 + * @Description 劳务费插件 这个插件没用用的还是 ExpensePluginInitializer * @Author xiangerlin * @Date 2025/5/13 17:52 **/ @@ -31,26 +31,6 @@ public class LwfPluginServiceImpl implements ILwfPluginService { */ @Override public JsonResultEntity execute(JSONObject json) throws Exception { - String headersStr = json.getString("headers");//请求头 - String formAppId = json.getString("formAppId"); - String eventType = json.getString("eventType"); - String dataSouceCode = json.getString("apiDataSourceCode"); - Assert.notEmpty(formAppId,"formAppId不能为空"); - Assert.notEmpty(eventType,"eventType不能为空"); - Assert.notEmpty(headersStr,"headers不能为空"); - Assert.notEmpty(dataSouceCode,"数据源编码不能为空"); - logger.info("准备开始组装参数"); - String param = lwfExtService.saveLwfPrePlugin(json); - logger.info("OA单据组装好准备保存劳务费的参数:{}",param); - String result = HttpRequest.post(interfaceUrl) - .header("appId","800042")// grp应用 - .header("apiCode","8000420043")//劳务费接口 - .header("publicKey","ZJYAcDv1SMgN1oUwzfpV5byfUaN78sVw+L+DB9XTT30aS8hCe7eDIk+3zDUT+v578prj")//OA应用key - .header("secretKey","ZLQWG13Z30FoeuCgi6/Uc41XF6oLO63550OAa6ggXUmtOZj5MgQNZMjVgL/M4BRkj3JzOP8MtA1LSGvL+2BWG8c/o7DKi92S4mr3zcGearA=")//OA应用密钥 - .body(param).execute().body(); - // JsonResultEntity resultEntity = (JsonResultEntity) oerDjmlService.handleOerDjml(paramJSON); - // logger.info("保存GRPU8响应参数:{}",JSONObject.toJSON(resultEntity)); - logger.info("保存GRPU8响应参数:{}",result); - return BaseResult.getSuccessMessageEntity(result); + return null; } } diff --git a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.java b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.java index 1c5d125e..76cb0f8e 100644 --- a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.java +++ b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.java @@ -87,6 +87,8 @@ public class OerDjmlEntity extends BaseEntity { private String WX00000055;//自定义字段 已到位经费 private String WX00000056;//自定义字段 激励费总额 private String WX00000057;//自定义字段 已支出激励费 + private String WX00000058;//自定义字段 发放人群 + private String WX00000059;//自定义字段 发放性质 //附件对象 @JSONField(ordinal = 9995) private List<FileInfoDTO> fileInfoList; @@ -561,4 +563,20 @@ public class OerDjmlEntity extends BaseEntity { public void setWX00000057(String WX00000057) { this.WX00000057 = WX00000057; } + + public String getWX00000058() { + return WX00000058; + } + + public void setWX00000058(String WX00000058) { + this.WX00000058 = WX00000058; + } + + public String getWX00000059() { + return WX00000059; + } + + public void setWX00000059(String WX00000059) { + this.WX00000059 = WX00000059; + } } diff --git a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.xml b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.xml index 81d22719..a92653c7 100644 --- a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.xml +++ b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/entity/OerDjmlEntity.xml @@ -36,6 +36,8 @@ <result property="WX00000055" column="WX00000055" /> <result property="WX00000056" column="WX00000056" /> <result property="WX00000057" column="WX00000057" /> + <result property="WX00000058" column="WX00000058" /> + <result property="WX00000059" column="WX00000059" /> <result column="Rpt_Rt_content" property="RptRtContent" jdbcType="BLOB" typeHandler="org.apache.ibatis.type.BlobTypeHandler" /> </resultMap> @@ -168,6 +170,8 @@ GSDM,KJND,mlId <if test="WX00000055 != null and WX00000055 !='' "> WX00000055, </if> <if test="WX00000056 != null and WX00000056 !='' "> WX00000056, </if> <if test="WX00000057 != null and WX00000057 !='' "> WX00000057, </if> + <if test="WX00000058 != null and WX00000058 !='' "> WX00000058, </if> + <if test="WX00000059 != null and WX00000059 !='' "> WX00000059, </if> <if test="xmdm != null and xmdm !='' "> xmdm, </if> <if test="xmmc != null and xmmc !='' "> xmmc, </if> </trim> @@ -221,6 +225,8 @@ GSDM,KJND,mlId <if test="WX00000055 != null and WX00000055 !='' "> #{WX00000055}, </if> <if test="WX00000056 != null and WX00000056 !='' "> #{WX00000056}, </if> <if test="WX00000057 != null and WX00000057 !='' "> #{WX00000057}, </if> + <if test="WX00000058 != null and WX00000058 !='' "> #{WX00000058}, </if> + <if test="WX00000059 != null and WX00000059 !='' "> #{WX00000059}, </if> <if test="xmdm != null and xmdm !='' "> #{xmdm}, </if> <if test="xmmc != null and xmmc !='' "> #{xmmc}, </if> </trim> @@ -278,7 +284,9 @@ GSDM,KJND,mlId <if test="WX00000054 != null and WX00000054 !='' "> WX00000054 = #{WX00000054}, </if> <if test="WX00000055 != null and WX00000055 !='' "> WX00000055 = #{WX00000055}, </if> <if test="WX00000056 != null and WX00000056 !='' "> WX00000056 = #{WX00000056}, </if> - <if test="WX00000057 != null and WX00000057 !='' "> WX00000057 = #{WX00000057}</if> + <if test="WX00000057 != null and WX00000057 !='' "> WX00000057 = #{WX00000057},</if> + <if test="WX00000058 != null and WX00000058 !='' "> WX00000058 = #{WX00000058},</if> + <if test="WX00000059 != null and WX00000059 !='' "> WX00000059 = #{WX00000059}</if> </trim> where DJBH = #{djbh} and MLID=${mlId} </update> diff --git a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/service/impl/OerDjmlExtServiceImpl.java b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/service/impl/OerDjmlExtServiceImpl.java index d7cfd270..fc5d3e76 100644 --- a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/service/impl/OerDjmlExtServiceImpl.java +++ b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjml/service/impl/OerDjmlExtServiceImpl.java @@ -155,6 +155,8 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService { if (null != jsonStr && null != headers && !headers.isEmpty()){ String formmainTableName = headers.get("formmainTableName"); String forsonTableName = headers.get("forsonTableName"); + String forsonTableName1 = headers.get("forsonTableName1"); + String forsonTableName2 = headers.get("forsonTableName2"); String djlx = headers.get("djlx"); //事件类型 String eventType = jsonStr.getString("eventType"); @@ -170,6 +172,9 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService { */ JSONObject formmainData = seeyonData.getJSONObject(formmainTableName); JSONArray forsonData = seeyonData.getJSONArray(forsonTableName); + //劳保费用 + JSONArray forson0045Data = seeyonData.getJSONArray(forsonTableName1); + JSONArray forson0046Data = seeyonData.getJSONArray(forsonTableName2); String res = ""; if (DjlxEnum.TRAVEL.type.equals(djlx)) { logger.info("准备组装差旅报销单参数"); @@ -181,7 +186,8 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService { res = expense(headers,eventType,summaryId,dataSourceCode, formmainData, forsonData); logger.info("oerValuOf方法已经组装好参数,准备return"); }else if (DjlxEnum.LABOR.type.equals(djlx)){ - //劳务费 labor + //判断一下要用哪个明细表 + res = labor(headers,eventType,summaryId,dataSourceCode,formmainData,forsonData,forson0045Data,forson0046Data); }else if (DjlxEnum.HXKY.type.equals(djlx)){ //横向科研 res = hxky(headers,eventType,summaryId,dataSourceCode, formmainData, forsonData); @@ -195,9 +201,6 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService { } return null; } - - - /** * 费用报销单 * @param headers 请求头 @@ -863,6 +866,96 @@ public class OerDjmlExtServiceImpl implements IOerDjmlExtService { return djmlStr; } + /** + * 劳务费 + * @param headers 头部参数 + * @param eventType 事件类型 + * @param summaryId 流程id + * @param dataSourceCode 数据源编码 + * @param formmainData 主表数据 + * @param forson0044Data 子1表数据 + * @param forson0045Data 子表2数据 + * @param forson0046Data 子表3数据 + * @return + */ + private String labor(Map<String, String> headers, String eventType, String summaryId, String dataSourceCode, JSONObject formmainData, JSONArray forson0044Data, JSONArray forson0045Data, JSONArray forson0046Data) { + String djlxid = headers.get("djlxid"); + String flowcode = headers.get("flowcode"); + String fileApiCode = headers.get("file_api_code"); + OerDjmlEntity djml = new OerDjmlEntity(); + djml.setLclb(eventType); + djml.setDjbh(formmainData.getString("field0001")); + djml.setDjlxId(djlxid); + djml.setDataSourceCode(dataSourceCode); + String fflx = formmainData.getString("field0102"); + JSONArray forsonData = null; + JSONObject forsonData0 = null; + switch (fflx){ + case "0": + case "3": + forsonData0 = forson0044Data.getJSONObject(0); + forsonData = forson0044Data; + break; + case "1": + forsonData0 = forson0045Data.getJSONObject(0); + forsonData = forson0045Data; + break; + case "2": + forsonData0 = forson0046Data.getJSONObject(0); + forsonData = forson0046Data; + break; + } + if (ColEventTypeEnum.ONSTART.getType().equals(eventType)){ + djml.setGsdm(formmainData.getString("field0037")); + djml.setKjnd(formmainData.getString("field0038")); + djml.setDjlxId(djlxid); + djml.setZt("2"); + djml.setCrerdm(formmainData.getString("field0039"));//制单人代码 + djml.setCrermc(formmainData.getString("field0045"));//制单人名称 + djml.setCrerdate(timestampConvert(formmainData.getString("start_date"),"yyyyMMdd")); + djml.setDjdate((timestampConvert(formmainData.getString("field0002"),"yyyyMMdd"))); + djml.setJe(formmainData.getString("field0017"));//金额 + djml.setJedx(formmainData.getString(""));//金额大写 + djml.setGrdm(formmainData.getString("field0084"));//报销人代码 + djml.setGrmc(formmainData.getString("field0085"));//报销人名称 + djml.setBmdm(formmainData.getString("field0086"));//部门代码 + djml.setBmmc(formmainData.getString("field0087"));//部门名称 + djml.setXmdm(formmainData.getString("field0004"));//项目代码 + djml.setXmmc(formmainData.getString("field0005"));//项目名称 + djml.setZy(formmainData.getString("field0045"));//劳务内容 + djml.setWX00000051(formmainData.getString("field0006"));//讲座发生时间 + djml.setWX00000059(formmainData.getString("field0046"));//讲座发生时间 + //报销明细 + List<OerDjnrEntity> djnrList = new ArrayList<>(); + //结算方式 + List<OerDjjsfsEntity> jsfsList = new ArrayList<>(); + //预算指标 + List<OerYszbEntity> yszbList = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(forsonData)){ + int xh = 1; + for (int i=0; i<forsonData.size();i++){ + JSONObject forson = forsonData.getJSONObject(i); + String gsdm = djml.getGsdm(); + String kjnd = djml.getKjnd(); + String je = forson.getString("field0024"); + //单据内容 + OerDjnrEntity djnr = new OerDjnrEntity(); + djnr.setXh(String.valueOf(xh)); + djnr.setGsdm(gsdm); + djnr.setKjnd(kjnd); + djnr.setDjlxId(djlxid); + djnr.setBnxId(headers.get("bxmx_bnxid")); + djnr.setJe(je); + djnr.setBmdm(formmainData.getString("field0051")); + djnr.setBmmc(formmainData.getString("field0050")); + djnr.setXmdm(djml.getXmdm()); + djnr.setXmmc(djml.getXmmc()); + } + } + } + return null; + } + /** * 时间戳转成 指定格式 * @param timestamp 时间戳 diff --git a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.java b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.java index 41ef94dc..c62bfdeb 100644 --- a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.java +++ b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.java @@ -81,6 +81,15 @@ public class OerDjnrEntity extends BaseEntity { private String clf_jtbzf; //差旅费-其他费用 private String clf_qtf; + private String ys00000051;//自定义字段 发放明目 + private String ys00000052;// 自定义字段 发放事项 + private String ys00000053;// 自定义字段 打款时备注 + private String ys00000054;// 自定义字段 已开票应付劳务 + private String ys00000055;// 自定义字段 扣补个税 + private String ys00000056;// 自定义字段 个人所得税 + private String ys00000057;// 自定义字段 实发金额 + private String ys00000058;// 自定义字段 数量(课时) + private String ys00000059;// 自定义字段 标准 public String getXh() { return xh; } @@ -472,4 +481,76 @@ public class OerDjnrEntity extends BaseEntity { public void setClf_cctsbz(String clf_cctsbz) { this.clf_cctsbz = clf_cctsbz; } + + public String getYs00000051() { + return ys00000051; + } + + public void setYs00000051(String ys00000051) { + this.ys00000051 = ys00000051; + } + + public String getYs00000052() { + return ys00000052; + } + + public void setYs00000052(String ys00000052) { + this.ys00000052 = ys00000052; + } + + public String getYs00000053() { + return ys00000053; + } + + public void setYs00000053(String ys00000053) { + this.ys00000053 = ys00000053; + } + + public String getYs00000054() { + return ys00000054; + } + + public void setYs00000054(String ys00000054) { + this.ys00000054 = ys00000054; + } + + public String getYs00000055() { + return ys00000055; + } + + public void setYs00000055(String ys00000055) { + this.ys00000055 = ys00000055; + } + + public String getYs00000056() { + return ys00000056; + } + + public void setYs00000056(String ys00000056) { + this.ys00000056 = ys00000056; + } + + public String getYs00000057() { + return ys00000057; + } + + public void setYs00000057(String ys00000057) { + this.ys00000057 = ys00000057; + } + + public String getYs00000058() { + return ys00000058; + } + + public void setYs00000058(String ys00000058) { + this.ys00000058 = ys00000058; + } + + public String getYs00000059() { + return ys00000059; + } + + public void setYs00000059(String ys00000059) { + this.ys00000059 = ys00000059; + } } diff --git a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.xml b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.xml index effdc908..023fba26 100644 --- a/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.xml +++ b/fw-grpU8/src/main/java/com/hzya/frame/grpU8/nxproof/oerdjnr/entity/OerDjnrEntity.xml @@ -33,6 +33,15 @@ <result property="fzx9mc" column="fzx9mc" /> <result property="jflxdm" column="jflxdm" /> <result property="jflxmc" column="jflxmc" /> + <result property="ys00000051" column="ys00000051" /> + <result property="ys00000052" column="ys00000052" /> + <result property="ys00000053" column="ys00000053" /> + <result property="ys00000054" column="ys00000054" /> + <result property="ys00000055" column="ys00000055" /> + <result property="ys00000056" column="ys00000056" /> + <result property="ys00000057" column="ys00000057" /> + <result property="ys00000058" column="ys00000058" /> + <result property="ys00000059" column="ys00000059" /> <result property="clf_startdate" column="clf_startdate" /> <result property="clf_enddate" column="clf_enddate" /> <result property="clf_ccdd" column="clf_ccdd" /> @@ -88,6 +97,15 @@ <if test="fzx9mc != null and fzx9mc !='' "> fzx9mc, </if> <if test="jflxdm != null and jflxdm !='' "> jflxdm, </if> <if test="jflxmc != null and jflxmc !='' "> jflxmc, </if> + <if test="ys00000051 != null and ys00000051 !='' "> ys00000051, </if> + <if test="ys00000052 != null and ys00000052 !='' "> ys00000052, </if> + <if test="ys00000053 != null and ys00000053 !='' "> ys00000053, </if> + <if test="ys00000054 != null and ys00000054 !='' "> ys00000054, </if> + <if test="ys00000055 != null and ys00000055 !='' "> ys00000055, </if> + <if test="ys00000056 != null and ys00000056 !='' "> ys00000056, </if> + <if test="ys00000057 != null and ys00000057 !='' "> ys00000057, </if> + <if test="ys00000058 != null and ys00000058 !='' "> ys00000058, </if> + <if test="ys00000059 != null and ys00000059 !='' "> ys00000059, </if> <if test="clf_startdate != null and clf_startdate !='' "> clf_startdate, </if> <if test="clf_enddate != null and clf_enddate !='' "> clf_enddate, </if> <if test="clf_ccdd != null and clf_ccdd !='' "> clf_ccdd, </if> @@ -138,6 +156,15 @@ <if test="fzx9mc != null and fzx9mc !='' "> #{fzx9mc}, </if> <if test="jflxdm != null and jflxdm !='' "> #{jflxdm}, </if> <if test="jflxmc != null and jflxmc !='' "> #{jflxmc}, </if> + <if test="ys00000051 != null and ys00000051 !='' "> #{ys00000051}, </if> + <if test="ys00000052 != null and ys00000052 !='' "> #{ys00000052}, </if> + <if test="ys00000053 != null and ys00000053 !='' "> #{ys00000053}, </if> + <if test="ys00000054 != null and ys00000054 !='' "> #{ys00000054}, </if> + <if test="ys00000055 != null and ys00000055 !='' "> #{ys00000055}, </if> + <if test="ys00000056 != null and ys00000056 !='' "> #{ys00000056}, </if> + <if test="ys00000057 != null and ys00000057 !='' "> #{ys00000057}, </if> + <if test="ys00000058 != null and ys00000058 !='' "> #{ys00000058}, </if> + <if test="ys00000059 != null and ys00000059 !='' "> #{ys00000059}, </if> <if test="clf_startdate != null and clf_startdate !='' "> #{clf_startdate}, </if> <if test="clf_enddate != null and clf_enddate !='' "> #{clf_enddate}, </if> <if test="clf_ccdd != null and clf_ccdd !='' "> #{clf_ccdd}, </if>