|
@@ -1,12 +1,8 @@
|
|
|
package com.dragonsoft.dcuc.approve.facade.api.v3;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
-import cn.hutool.core.collection.CollUtil;
|
|
|
-import cn.hutool.core.lang.Assert;
|
|
|
import cn.hutool.core.map.MapUtil;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
-import cn.hutool.core.util.StrUtil;
|
|
|
-import com.dragoninfo.dcuc.common.Constants;
|
|
|
import com.dragoninfo.dcuc.common.entity.Proofs;
|
|
|
import com.dragoninfo.dcuc.common.utils.LangUtil;
|
|
|
import com.dragoninfo.dcuc.common.utils.ResponseUtil;
|
|
@@ -15,6 +11,7 @@ import com.dragonsoft.dcuc.approve.business.IApproveApiBusiness;
|
|
|
import com.dragonsoft.dcuc.approve.business.IBimBusiness;
|
|
|
import com.dragonsoft.dcuc.approve.business.IDcucBusiness;
|
|
|
import com.dragonsoft.dcuc.approve.business.IWorkFlowBusiness;
|
|
|
+import com.dragonsoft.dcuc.approve.business.api.IApiV3ApproveBusiness;
|
|
|
import com.dragonsoft.dcuc.approve.dto.OperateReqDTO;
|
|
|
import com.dragonsoft.dcuc.approve.enumresources.*;
|
|
|
import com.dragonsoft.dcuc.approve.model.ApproveRecordInfo;
|
|
@@ -39,8 +36,6 @@ import com.dragonsoft.dcuc.approve.service.IApproveTaskClassService;
|
|
|
import com.dragonsoft.dcuc.approve.threadlocal.ThreadLocalProofsHolder;
|
|
|
import com.dragonsoft.duceap.base.entity.http.ResponseDTO;
|
|
|
import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
|
|
|
-import com.dragonsoft.duceap.commons.util.date.DateConst;
|
|
|
-import com.dragonsoft.duceap.commons.util.date.DateUtils;
|
|
|
import com.dragonsoft.duceap.commons.util.enums.EnumUtils;
|
|
|
import com.dragonsoft.duceap.commons.util.json.JsonUtils;
|
|
|
import com.dragonsoft.duceap.duwf.api.model.TaskRequest;
|
|
@@ -49,7 +44,6 @@ import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
-import java.text.ParseException;
|
|
|
import java.util.Collections;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
@@ -81,6 +75,13 @@ public class ApiV3ApproveFacade implements IApiV3ApproveFacade {
|
|
|
|
|
|
private IApproveTaskClassService approveTaskClassService;
|
|
|
|
|
|
+ private IApiV3ApproveBusiness apiV3ApproveBusiness;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ public void setApiV3ApproveBusiness(IApiV3ApproveBusiness apiV3ApproveBusiness) {
|
|
|
+ this.apiV3ApproveBusiness = apiV3ApproveBusiness;
|
|
|
+ }
|
|
|
+
|
|
|
@Autowired
|
|
|
public void setApproveTaskClassService(IApproveTaskClassService approveTaskClassService) {
|
|
|
this.approveTaskClassService = approveTaskClassService;
|
|
@@ -142,7 +143,7 @@ public class ApiV3ApproveFacade implements IApiV3ApproveFacade {
|
|
|
|
|
|
Map<String, List<Map<String, Object>>> bo = zeroTrustApproveCreateReqV3VO.getBo();
|
|
|
Map<String, Object> bizData = zeroTrustApproveCreateReqV3VO.getBizData();
|
|
|
- ResponseStatus checkBizDataStatus = checkBizData(bizData);
|
|
|
+ ResponseStatus checkBizDataStatus = apiV3ApproveBusiness.checkBizData(bizData);
|
|
|
if (ResponseUtil.isFail(checkBizDataStatus)) {
|
|
|
return ZeroTrustResultDataVO.operateFailMessage("bizData中key值:" + checkBizDataStatus.getMessage());
|
|
|
}
|
|
@@ -204,8 +205,8 @@ public class ApiV3ApproveFacade implements IApiV3ApproveFacade {
|
|
|
BeanUtil.copyProperties(bizData, resourceInfoReqVO);
|
|
|
}
|
|
|
|
|
|
- Date startTime = getBizData(bizData, ReqBizDataEnum.BIZ_TERM_START);
|
|
|
- Date startEnd = getBizData(bizData, ReqBizDataEnum.BIZ_TERM_END);
|
|
|
+ Date startTime = apiV3ApproveBusiness.getBizData(bizData, ReqBizDataEnum.BIZ_TERM_START);
|
|
|
+ Date startEnd = apiV3ApproveBusiness.getBizData(bizData, ReqBizDataEnum.BIZ_TERM_END);
|
|
|
|
|
|
ApprovalInfoReqVO approvalInfoReqVO = new ApprovalInfoReqVO();
|
|
|
approvalInfoReqVO.setProcessTitle(title);
|
|
@@ -303,68 +304,4 @@ public class ApiV3ApproveFacade implements IApiV3ApproveFacade {
|
|
|
return ZeroTrustMessageRespVO.messageEnumMessage(ZeroTrustBusinessRespEnum.SUCCESS);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 检查业务数据
|
|
|
- *
|
|
|
- * @param bizDataMap 业务数据
|
|
|
- * @return 状态
|
|
|
- */
|
|
|
- public ResponseStatus checkBizData(Map<String, Object> bizDataMap) {
|
|
|
- if (CollUtil.isEmpty(bizDataMap)) {
|
|
|
- return ResponseStatus.fail("业务数据不可为空");
|
|
|
- }
|
|
|
-
|
|
|
- StringBuilder errorMessageBuilder = new StringBuilder();
|
|
|
- for (ReqBizDataEnum reqBizDataEnum : ReqBizDataEnum.values()) {
|
|
|
- String value = reqBizDataEnum.getValue();
|
|
|
- boolean containsKey = bizDataMap.containsKey(value);
|
|
|
- if (!containsKey) {
|
|
|
- if (reqBizDataEnum.isNeed()) {
|
|
|
- String errorMessage = String.format("字段:%s 必填 ", value);
|
|
|
- errorMessageBuilder.append(errorMessage).append(Constants.CHINESE_COMMA);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- String errorMessage = errorMessageBuilder.toString();
|
|
|
- if (StrUtil.isNotBlank(errorMessage)) {
|
|
|
- return ResponseStatus.fail(LangUtil.subLastSymbol(errorMessage, Constants.CHINESE_COMMA));
|
|
|
- }
|
|
|
-
|
|
|
- return ResponseStatus.success();
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取业务数据
|
|
|
- *
|
|
|
- * @param bizDataMap 业务数据
|
|
|
- * @param reqBizDataEnum 业务数据枚举
|
|
|
- * @param <T> 泛型
|
|
|
- * @return 值
|
|
|
- */
|
|
|
- @SuppressWarnings("unchecked")
|
|
|
- protected <T> T getBizData(Map<String, Object> bizDataMap, ReqBizDataEnum reqBizDataEnum) {
|
|
|
- Assert.notEmpty(bizDataMap);
|
|
|
- Assert.notNull(reqBizDataEnum);
|
|
|
- Object object = bizDataMap.get(reqBizDataEnum.getValue());
|
|
|
- switch (reqBizDataEnum) {
|
|
|
- case BIZ_TERM_START:
|
|
|
- case BIZ_TERM_END:
|
|
|
- String temString = object.toString();
|
|
|
- try {
|
|
|
- object = DateUtils.getDate(temString, DateConst.HYPHEN_DISPLAY_TIME);
|
|
|
- } catch (ParseException e) {
|
|
|
- log.error("parse to date error :{}", temString, e);
|
|
|
- return null;
|
|
|
- }
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
-
|
|
|
- if (ObjectUtil.isNull(object)) {
|
|
|
- return null;
|
|
|
- }
|
|
|
-
|
|
|
- return (T) object;
|
|
|
- }
|
|
|
}
|