wuxw
2025-03-30 becc16e36e8fdad39eb32661acb73375c6cbdfb4
service-oa/src/main/java/com/java110/oa/cmd/work/UpdateWorkPoolCmd.java
@@ -82,7 +82,6 @@
    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
        Assert.hasKeyAndValue(reqJson, "workId", "workId不能为空");
        Assert.hasKeyAndValue(reqJson, "wtId", "请求报文中未包含wtId");
        Assert.hasKeyAndValue(reqJson, "workName", "请求报文中未包含workName");
        Assert.hasKeyAndValue(reqJson, "workCycle", "请求报文中未包含workCycle");
        Assert.hasKeyAndValue(reqJson, "startTime", "请求报文中未包含startTime");
        Assert.hasKeyAndValue(reqJson, "endTime", "请求报文中未包含endTime");
@@ -152,6 +151,11 @@
        Assert.listOnlyOne(userDtos, "用户未登录");
        String workName = reqJson.getString("workName");
        if(StringUtil.isEmpty(workName)){
            reqJson.put("workName",userDtos.get(0).getName()+"发起的工作单");
        }
        WorkPoolPo workPoolPo = BeanConvertUtil.covertBean(reqJson, WorkPoolPo.class);
        int flag = workPoolV1InnerServiceSMOImpl.updateWorkPool(workPoolPo);
@@ -161,6 +165,10 @@
        //todo 保存 工作单内容
        updateContent(workPoolPo, reqJson, userDtos.get(0));
        // todo 修改工作单附件
        updateFile(workPoolPo, reqJson, userDtos.get(0));
        //todo 保存 抄送人
        updateCopyStaff(workPoolPo, reqJson, userDtos.get(0));
@@ -173,6 +181,7 @@
        cmdDataFlowContext.setResponseEntity(ResultVo.success());
    }
    private void updateWorkTask(WorkPoolPo workPoolPo, JSONObject reqJson, UserDto userDto) {
        JSONArray staffs = reqJson.getJSONArray("staffs");
@@ -194,10 +203,6 @@
        workTaskItemPo.setStoreId(workPoolPo.getStoreId());
        workTaskItemV1InnerServiceSMOImpl.deleteWorkTaskItem(workTaskItemPo);
        WorkPoolFilePo workPoolFilePo = new WorkPoolFilePo();
        workPoolFilePo.setWorkId(workPoolPo.getWorkId());
        workPoolFilePo.setStoreId(workPoolPo.getStoreId());
        workPoolFileV1InnerServiceSMOImpl.deleteWorkPoolFile(workPoolFilePo);
        JSONArray contents = reqJson.getJSONArray("contents");
        for (int staffIndex = 0; staffIndex < staffs.size(); staffIndex++) {
@@ -232,20 +237,6 @@
                workTaskItemPo.setTaskId(workTaskPo.getTaskId());
                workTaskItemV1InnerServiceSMOImpl.saveWorkTaskItem(workTaskItemPo);
            }
            if (StringUtil.isEmpty(reqJson.getString("pathUrl"))) {
                continue;
            }
            workPoolFilePo = new WorkPoolFilePo();
            workPoolFilePo.setCommunityId(workPoolPo.getCommunityId());
            workPoolFilePo.setFileType(WorkPoolFileDto.FILE_TYPE_START);
            workPoolFilePo.setFileId(GenerateCodeFactory.getGeneratorId("11"));
            workPoolFilePo.setWorkId(workPoolPo.getWorkId());
            workPoolFilePo.setTaskId(workTaskPo.getTaskId());
            workPoolFilePo.setPathUrl(reqJson.getString("pathUrl"));
            workPoolFilePo.setStoreId(workPoolPo.getStoreId());
            workPoolFileV1InnerServiceSMOImpl.saveWorkPoolFile(workPoolFilePo);
        }
    }
@@ -367,4 +358,31 @@
            workPoolContentV1InnerServiceSMOImpl.saveWorkPoolContent(workPoolContentPo);
        }
    }
    private void updateFile(WorkPoolPo workPoolPo, JSONObject reqJson, UserDto userDto) {
        JSONArray pathUrls = reqJson.getJSONArray("pathUrls");
        if (ListUtil.isNull(pathUrls)) {
            return;
        }
        WorkPoolFilePo workPoolFilePo = new WorkPoolFilePo();
        workPoolFilePo.setWorkId(workPoolPo.getWorkId());
        workPoolFilePo.setStoreId(workPoolPo.getStoreId());
        workPoolFileV1InnerServiceSMOImpl.deleteWorkPoolFile(workPoolFilePo);
        for (int urlIndex = 0; urlIndex < pathUrls.size(); urlIndex++) {
            workPoolFilePo = new WorkPoolFilePo();
            workPoolFilePo.setCommunityId(workPoolPo.getCommunityId());
            workPoolFilePo.setFileType(WorkPoolFileDto.FILE_TYPE_START);
            workPoolFilePo.setFileId(GenerateCodeFactory.getGeneratorId("11"));
            workPoolFilePo.setWorkId(workPoolPo.getWorkId());
            workPoolFilePo.setTaskId("-1");
            workPoolFilePo.setPathUrl(pathUrls.getString(urlIndex));
            workPoolFilePo.setStoreId(workPoolPo.getStoreId());
            workPoolFilePo.setItemId("-1");
            workPoolFilePo.setContentId("-1");
            workPoolFileV1InnerServiceSMOImpl.saveWorkPoolFile(workPoolFilePo);
        }
    }
}