diff --git a/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java b/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java index 229534c7..ca93faa9 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java +++ b/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java @@ -2,6 +2,8 @@ package com.ydw.bat.wkflow.business_auth; import com.ydw.bat.wkflow.business_main.datas.dto.*; +import com.ydw.bat.wkflow.business_main.datas.dto.WG.BusinessDeptIssue; +import com.ydw.bat.wkflow.business_main.datas.dto.WG.ProductDeptIssue; import com.ydw.bat.wkflow.business_main.datas.dto.WG.WgWorkGroupShowDTO; import com.ydw.bat.wkflow.business_main.datas.entity.*; import com.ydw.bat.wkflow.business_slrs.dao.*; @@ -176,5 +178,12 @@ public interface LawsUserInfoService { @GetMapping("/slrs/sar-public-idea/deletePublicIdea") public ResponseMessage deletePublicIdea(@RequestParam("id") String id); + @PostMapping("/sarStandUnqualified/businessDeptIssue/saveBatch") + public ResponseMessage businessDeptIssueSaveBatch(@RequestBody List issue); + + + @PostMapping("/sarStandUnqualified/productDeptIssue/saveBatch") + public ResponseMessage productDeptIssueSaveBatch(@RequestBody List issue); + } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/WG/BusinessDeptIssue.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/WG/BusinessDeptIssue.java new file mode 100644 index 00000000..3777bec0 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/WG/BusinessDeptIssue.java @@ -0,0 +1,88 @@ +package com.ydw.bat.wkflow.business_main.datas.dto.WG; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +public class BusinessDeptIssue implements Serializable { + + @TableId(value = "id", type = IdType.UUID) + private String id; + + + @TableField("law_id") + private String lawId; + + + @TableField(exist = false) + private String lawNumber; + + + @TableField(exist = false) + private String lawName; + + + @TableField("product_type") + private String productType; + + + @TableField("impl_time") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + private Date implTime; + + + @TableField("impl_require") + private String implRequire; + + + @TableField("conform_situation") + private String conformSituation; + + + @TableField("dev_scheme") + private String devScheme; + + + @TableField("sop_time") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + private Date sopTime; + + + @TableField("complete_situation") + private String completeSituation; + + + @TableField("timeout_situation") + private String timeoutSituation; + + + @TableLogic(value = "0", delval = "1") + @TableField("del_flag") + private String delFlag; + + + @TableField("response_dept") + private String responseDept; + + + @TableField("response_people") + private String responsePeople; + + + @TableField("is_close") + private String isClose; + + + @TableField("is_risk") + private String isRisk; + + +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/WG/ProductDeptIssue.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/WG/ProductDeptIssue.java new file mode 100644 index 00000000..cb61e0cf --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/dto/WG/ProductDeptIssue.java @@ -0,0 +1,74 @@ +package com.ydw.bat.wkflow.business_main.datas.dto.WG; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +@Data +@TableName("product_dept_issue") +public class ProductDeptIssue implements Serializable { + + @TableId + private String id; + + @TableField("law_id") + private String lawId; + + @TableField(exist = false) + private String lawsNumber; + + @TableField(exist = false) + private String lawsName; + + @TableField("product_business") + private String productBusiness; + + @TableField("platform") + private String platform; + + @TableField("poj_name") + private String pojName; + + @TableField("poj_description") + private String pojDescription; + + @TableField("current_node") + private String currentNode; + + @TableField("conceptual_state") + private String conceptualState; + + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + @TableField("scheduled_issuance_time") + private Date scheduledIssuanceTime; + + @TableField("revised_plan") + private String revisedPlan; + + @TableField("explanation") + private String explanation; + + @TableField("response_dept") + private String responseDept; + + @TableLogic(value = "0",delval = "1") + @TableField("del_flag") + private String delFlag; + + @TableField("is_close") + private String isClose; + + @TableField(exist = false) + private Integer page; + + @TableField(exist = false) + private Integer pageSize; + +} diff --git a/src/main/java/com/ydw/bat/wkflow/listener/KCSTPReviewProcess/SubViceDirectorAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/KCSTPReviewProcess/SubViceDirectorAfter.java index 06dc56cb..4a0aafcb 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/KCSTPReviewProcess/SubViceDirectorAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/KCSTPReviewProcess/SubViceDirectorAfter.java @@ -1,7 +1,12 @@ package com.ydw.bat.wkflow.listener.KCSTPReviewProcess; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_auth.LawsUserInfoService; +import com.ydw.bat.wkflow.business_main.datas.dto.WG.BusinessDeptIssue; +import com.ydw.bat.wkflow.business_main.datas.dto.WG.ProductDeptIssue; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessName; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.entity.Datas; @@ -14,10 +19,7 @@ import org.activiti.engine.delegate.TaskListener; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; /** * 副总监审核 @@ -28,6 +30,7 @@ public class SubViceDirectorAfter implements TaskListener { IDatasService datasService = SpringContextUtil.getBean(IDatasService.class); IBusProcessNewService busBean = SpringContextUtil.getBean(IBusProcessNewService.class); IBusProcessNameService busProcessNameService = SpringContextUtil.getBean(IBusProcessNameService.class); + LawsUserInfoService lawsUserInfoService = SpringContextUtil.getBean(LawsUserInfoService.class); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("ACTI_TASK_ID", delegateTask.getId()); @@ -50,6 +53,69 @@ public class SubViceDirectorAfter implements TaskListener { if ("0".equals(object.getString("actionFlag"))){ delegateTask.setVariable("lawsProveViceChiefVerify",0); + + if ("1".equals(object.getString("feedbackDept"))) { + List list = new ArrayList<>(); + if (null != delegateTask.getVariable("v")) { + list = delegateTask.getVariable("v", List.class); + } + JSONArray array = object.getJSONArray("infoTableDatas"); + if (array.size() > 0) { + for (Object o : array) { + JSONObject object1 = JSON.parseObject(o.toString()); + BusinessDeptIssue businessDeptIssue = new BusinessDeptIssue(); + businessDeptIssue.setDelFlag("0"); + businessDeptIssue.setId(String.valueOf(UUID.randomUUID())); + businessDeptIssue.setLawId(object1.getString("lawId")); + businessDeptIssue.setImplRequire(object1.getString("implRequire")); + businessDeptIssue.setImplTime(object1.getDate("implTime")); + businessDeptIssue.setCompleteSituation(object1.getString("completeSituation")); + businessDeptIssue.setSopTime(object1.getDate("sopTime")); + businessDeptIssue.setLawName(object1.getString("lawName")); + businessDeptIssue.setConformSituation(object1.getString("conformSituation")); + businessDeptIssue.setTimeoutSituation(object1.getString("timeoutSituation")); + businessDeptIssue.setDevScheme(object1.getString("devScheme")); + businessDeptIssue.setLawNumber(object1.getString("lawCode")); + businessDeptIssue.setProductType(object1.getString("dataSource")); + list.add(businessDeptIssue); + } + } + + delegateTask.setVariable("v", list); + + if (i >= delegateTask.getVariable("responseUserIdList", List.class).size()) { + lawsUserInfoService.businessDeptIssueSaveBatch(list); + } + }else { + List list = new ArrayList<>(); + if (null != delegateTask.getVariable("v2")) { + list = delegateTask.getVariable("v2", List.class); + } + JSONArray array = object.getJSONArray("infoTableDatas"); + if (array.size() > 0) { + for (Object o : array) { + JSONObject object1 = JSON.parseObject(o.toString()); + ProductDeptIssue productDeptIssue = new ProductDeptIssue(); + productDeptIssue.setDelFlag("0"); + productDeptIssue.setId(String.valueOf(UUID.randomUUID())); + productDeptIssue.setLawId(object1.getString("lawId")); +// businessDeptIssue.setImplRequire(object1.getString("implRequire")); +// businessDeptIssue.setImplTime(object1.getDate("implTime")); +// businessDeptIssue.setCompleteSituation(object1.getString("completeSituation")); +// businessDeptIssue.setSopTime(object1.getDate("sopTime")); +// businessDeptIssue.setLawName(object1.getString("lawName")); +// businessDeptIssue.setConformSituation(object1.getString("conformSituation")); +// businessDeptIssue.setTimeoutSituation(object1.getString("timeoutSituation")); +// businessDeptIssue.setDevScheme(object1.getString("devScheme")); +// businessDeptIssue.setLawNumber(object1.getString("lawCode")); +// businessDeptIssue.setProductType(object1.getString("dataSource")); + list.add(productDeptIssue); + } + } + + delegateTask.setVariable("v2", list); + } + //流程结束 func2(delegateTask, busBean, object, "0", busProcessNameService); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java index 44b76cae..30b3af51 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/ResponUserSignAfter.java @@ -123,6 +123,18 @@ public class ResponUserSignAfter implements TaskListener { busBean.save(busProcessNewNext); } } + }else{ + delegateTask.setVariable("actionFlag",1); + delegateTask.setVariable("cs",0); + BusProcessNew busProcessNewNext = new BusProcessNew(); + busProcessNewNext.setMsgType("clause"); + busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); + busProcessNewNext.setMesg(object.toJSONString()); + busProcessNewNext.setFinishFlag("0"); + busProcessNewNext.setTaskInfo("调研结果处理"); + busProcessNewNext.setPrcName(prcName); + busProcessNewNext.setUserId(delegateTask.getVariable("startUser", String.class)); + busBean.save(busProcessNewNext); } } else { delegateTask.setVariable("actionFlag",1); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java index 5a99dda1..dcc77a36 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/StandardSurvey/UploadResearchResultAfter.java @@ -80,6 +80,21 @@ public class UploadResearchResultAfter implements TaskListener { busProcessNameService.saveOrUpdate(one1); } + //存储当前节点意见 + if (null != object.getString("commentText")) { + QueryWrapper queryWrapper3 = new QueryWrapper(); + queryWrapper3.eq("TASK_ID", delegateTask.getId()); + queryWrapper3.eq("USER_ID", delegateTask.getAssignee()); + List list = busBean.list(queryWrapper3); + if (!list.isEmpty()) { + BusProcessNew busProcessNews = list.get(0); + busProcessNews.setTaskId(delegateTask.getId()); + busProcessNews.setCommitText(object.getString("commentText")); + busBean.saveOrUpdate(busProcessNews); + } + } + + BusProcessNew busProcessNewNext = new BusProcessNew(); diff --git a/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java index 13e977b0..f65e791b 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/standardRead/DeptApplayAfter.java @@ -157,7 +157,7 @@ public class DeptApplayAfter implements TaskListener{ busProcessNew.setTaskInfo(delegateTask.getTaskDefinitionKey()); busProcessNew.setTaskId(delegateTask.getId()); busProcessNew.setCommitText(object.getString("commentText")); - busProcessNew.setFinishFlag("0"); + busProcessNew.setFinishFlag("1"); busProcessNew.setTaskInfo(delegateTask.getName()); QueryWrapper updataWapper = new QueryWrapper();