Commit 715c26df authored by pchxue's avatar pchxue

配置文件修改

parent 3521142f
// TODO: 2024/8/1 4.1 LifecycleManageBaseVO 这个类不存在
//package com.yonde.dcs.document.common.vo;
//
//import com.fasterxml.jackson.annotation.JsonTypeInfo;
//import com.yonde.dex.basedata.entity.annotation.ModelConfigProperty;
//import com.yonde.dex.basedata.entity.annotation.RelationProperty;
//import lombok.Data;
//import lombok.EqualsAndHashCode;
//import lombok.ToString;
//
//import java.util.Map;
//
///**
// * @description:
// * @version: 0
// * @date: 2021-09-15 02:27:18
// **/
//@Data
//@EqualsAndHashCode(callSuper = true)
//@ToString(callSuper = true)
//@JsonTypeInfo(
// use = JsonTypeInfo.Id.CLASS,
// property = "dxClassname",
// defaultImpl = ECRVO.class
//)
//@ModelConfigProperty(syncES = true)
//
//public class ECRVO extends LifecycleManageBaseVO<ECRVO> {
// /**LifecycleManageBaseVO
// * 升版后对象集合
// */
// @RelationProperty(refProperty = "source")
// private List<ExtUpgradeObjLinkVO> sourceExtUpgradeObjLink;
//
// /**
// * 原因说明
// */
// private String causeDescript;
//
// /**
// * 更改原因
// */
// private String changeReason;
//
// /**
// * 改前对象集合
// */
// @RelationProperty(refProperty = "source")
// private List<ExtOriginObjLinkVO> sourceExtOriginObjLink;
//
//
// private Map<String, Object> dynamicAttrs;
//
//
//}
//
package com.yonde.dcs.document.common.vo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.basedata.entity.annotation.ModelConfigProperty;
import com.yonde.dex.basedata.entity.annotation.RelationProperty;
import com.yonde.dex.basedata.entity.vo.DxIdVOEmbeddable;
import com.yonde.dex.basedata.entity.vo.IdOnlyVO;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.logicdelete.plugin.common.entity.DxLogicDeleteVOEmbeddable;
import com.yonde.dex.logicdelete.plugin.common.entity.DxLogicDeleteVOHolder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
......@@ -27,7 +34,20 @@ import java.util.Map;
defaultImpl = ExtIncomeContractVO.class
)
@ModelConfigProperty(syncES = true)
public class ExtIncomeContractVO extends DxObjectVo {
public class ExtIncomeContractVO extends IdOnlyVO implements IdVO, DxLogicDeleteVOHolder {
/**
* dao扩展对象
*/
@DexEmbedded()
@JsonIgnore
private DxIdVOEmbeddable dxIdEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLogicDeleteVOEmbeddable dxLogicDeleteEmbeddable;
/**
* 项目属性
*/
......@@ -189,5 +209,7 @@ public class ExtIncomeContractVO extends DxObjectVo {
*/
@RelationProperty(refProperty = "source")
private List<ExtContractLinkVO> sourceContractLink;
}
......@@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.yonde.dex.basedata.entity.annotation.ModelConfigProperty;
import com.yonde.dex.basedata.entity.annotation.ReferenceProperty;
import com.yonde.dex.basedata.entity.annotation.RelationProperty;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.lcycle.baseentity.vo.DxObjectVo;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -28,7 +29,7 @@ import java.util.Map;
defaultImpl = ExtIncomeDetailVO.class
)
@ModelConfigProperty(syncES = true)
public class ExtIncomeDetailVO extends DxObjectVo {
public class ExtIncomeDetailVO extends DxObjectVo implements IdVO {
/**
* IncomeBillInfo集合
*/
......
package com.yonde.dcs.document.common.vo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.basedata.entity.annotation.ModelConfigProperty;
import com.yonde.dex.basedata.entity.vo.DxIdVOEmbeddable;
import com.yonde.dex.basedata.entity.vo.IdOnlyVO;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.linkdata.plugin.common.DxLinkDataVOEmbeddable;
import com.yonde.dex.logicdelete.plugin.common.entity.DxLogicDeleteVOEmbeddable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Map;
/**
* @description:
* @version: 0
* @date: 2021-09-24 03:02:10
**/
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
property = "dxClassname",
defaultImpl = ExtOriginObjLinkVO.class
)
@ModelConfigProperty(syncES = true)
public class ExtOriginObjLinkVO extends IdOnlyVO implements IdVO {
/**
* dao扩展对象
*/
@DexEmbedded()
@JsonIgnore
private DxIdVOEmbeddable dxIdEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLogicDeleteVOEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLinkDataVOEmbeddable<DxDocumentVO, DxDocumentVO> dxLinkDataEmbeddable;
// TODO: 2024/8/1 ECRVO这个类不存在
// /**
// * 更改请求
// */
// @ReferenceProperty(baseProperty = "sourceId")
// private ECRVO source;
// TODO: 2024/8/1 DxIterationVO这个类不存在
// /**
// * 版本基类
// */
// @ReferenceProperty(baseProperty = "targetId")
// @VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.VERSION)
// private DxIterationVO target;
/**
* source对应的属性
*/
private Long sourceId;
/**
* sourceId对应的类型
*/
private String sourceIdType;
/**
* target对应的属性
*/
private Long targetId;
/**
* targetId对应的类型
*/
private String targetIdType;
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
package com.yonde.dcs.document.common.vo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.basedata.entity.annotation.ModelConfigProperty;
import com.yonde.dex.basedata.entity.annotation.ReferenceProperty;
import com.yonde.dex.basedata.entity.annotation.VersionProperty;
import com.yonde.dex.basedata.entity.data.VersionRelationType;
import com.yonde.dex.basedata.entity.vo.DxIdVOEmbeddable;
import com.yonde.dex.basedata.entity.vo.IdOnlyVO;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.linkdata.plugin.common.DxLinkDataVOEmbeddable;
import com.yonde.dex.logicdelete.plugin.common.entity.DxLogicDeleteVOEmbeddable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Map;
/**
* @description:
* @version: 1
* @date: 2021-09-24 02:58:31
**/
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
property = "dxClassname",
defaultImpl = ExtUpgradeObjLinkVO.class
)
@ModelConfigProperty(syncES = true)
public class ExtUpgradeObjLinkVO extends IdOnlyVO implements IdVO{
/**
* dao扩展对象
*/
@DexEmbedded()
@JsonIgnore
private DxIdVOEmbeddable dxIdEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLogicDeleteVOEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLinkDataVOEmbeddable<DxDocumentVO, DxDocumentVO> dxLinkDataEmbeddable;
// TODO: 2024/8/1 ECRVO不存在
// /**
// * 更改请求
// */
// @ReferenceProperty(baseProperty = "sourceId")
// private ECRVO source;
// TODO: 2024/8/1 DxIterationVO不存在
// /**
// * 版本基类
// */
// @ReferenceProperty(baseProperty = "targetId")
// @VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.VERSION)
// private DxIterationVO target;
/**
* source对应的属性
*/
private Long sourceId;
/**
* sourceId对应的类型
*/
private String sourceIdType;
/**
* target对应的属性
*/
private Long targetId;
/**
* targetId对应的类型
*/
private String targetIdType;
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
package com.yonde.dcs.document.common.vo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.basedata.entity.annotation.ModelConfigProperty;
import com.yonde.dex.basedata.entity.annotation.ReferenceProperty;
import com.yonde.dex.basedata.entity.annotation.VersionProperty;
import com.yonde.dex.basedata.entity.data.VersionRelationType;
import com.yonde.dex.basedata.entity.vo.DxIdVOEmbeddable;
import com.yonde.dex.basedata.entity.vo.IdOnlyVO;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.linkdata.plugin.common.DxLinkDataVOEmbeddable;
import com.yonde.dex.logicdelete.plugin.common.entity.DxLogicDeleteVOEmbeddable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Map;
/**
* @author xfchai
* @description: 过时文件通知单实体VO
* @version: 0
* @date: 2021-09-27 10:48:22
**/
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@JsonTypeInfo(
use = JsonTypeInfo.Id.CLASS,
property = "dxClassname",
defaultImpl = ObsoleteDocLinkVO.class
)
@ModelConfigProperty(syncES = true)
public class ObsoleteDocLinkVO extends IdOnlyVO implements IdVO {
/**
* dao扩展对象
*/
@DexEmbedded()
@JsonIgnore
private DxIdVOEmbeddable dxIdEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLogicDeleteVOEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展VO属性
*/
@DexEmbedded()
@JsonIgnore
private DxLinkDataVOEmbeddable<DxDocumentVO, DxDocumentVO> dxLinkDataEmbeddable;
/**
* 文档
*/
@ReferenceProperty(baseProperty = "sourceId")
@VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.VERSION)
private DxDocumentVO source;
/**
* 文档
*/
@ReferenceProperty(baseProperty = "targetId")
@VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.VERSION)
private DxDocumentVO target;
/**
* source对应的属性
*/
private Long sourceId;
/**
* sourceId对应的类型
*/
private String sourceIdType;
/**
* target对应的属性
*/
private Long targetId;
/**
* targetId对应的类型
*/
private String targetIdType;
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
......@@ -82,6 +82,12 @@
<groupId>com.yonde.dex</groupId>
<artifactId>dex-initialization-rule-runtime</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>5.2.12.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
......@@ -67,17 +67,18 @@ public class ExtAutoTaskController {
signNode = "Activity_0st1yf8";
}
DxWfTaskContext dxWfTaskContext = new DxWfTaskContext(dxWfProcessVO.getBusinessKey(), dxWfProcessVO.getId(), dxWfProcessVO.getProcessDef().getId(), signNode, null, (Map) null);
WfcSignMessage wfcSignMessage = new WfcSignMessage(new HashMap());
wfcSignMessage.setWfTaskContext(dxWfTaskContext);
wfcSignMessage.setSignType(pboKey);
TaskMessage taskMessage = (new WfcSignMessageBuilder()).newTasks(wfcSignMessage);
this.taskMessagePusher.sendMessage(taskMessage);
//todo 在4.1中未找到WfcSignMessage 注释了71-74行
// WfcSignMessage wfcSignMessage = new WfcSignMessage(new HashMap());
// wfcSignMessage.setWfTaskContext(dxWfTaskContext);
// wfcSignMessage.setSignType(pboKey);
// TaskMessage taskMessage = (new WfcSignMessageBuilder()).newTasks(wfcSignMessage);
// this.taskMessagePusher.sendMessage(taskMessage);
this.taskMessagePusher.sendMessage(null);
return ApiResult.ok("重新发送电子签名请求成功!");
} else {
return ApiResult.ok("该对象未走签审流程!");
}
}
@ApiOperation(value = "更新PDF", notes = "更新PDF", httpMethod = "GET")
@GetMapping(value = "/updatePdf/{id}")
public ApiResult updatePdf(@PathVariable Long id) {
......
package com.yonde.dcs.document.core.controller;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.core.controller.shadow.ExtIncomeContractControllerShadow;
import com.yonde.dcs.document.core.service.ExtIncomeContractService;
import com.yonde.dex.basedata.entity.api.ApiResult;
import com.yonde.dex.baseweb.AbstractBaseController;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -17,16 +17,11 @@ import org.springframework.web.bind.annotation.*;
**/
@RestController
@RequestMapping("/ExtIncomeContract")
public class ExtIncomeContractController extends AbstractBaseController<ExtIncomeContractVO, ExtIncomeContractService<ExtIncomeContractVO>> {
public class ExtIncomeContractController <V extends ExtIncomeContractVO, S extends ExtIncomeContractService<V>> extends ExtIncomeContractControllerShadow<V, S> {
@Autowired
private ExtIncomeContractService extIncomeContractService;
@Override
protected ExtIncomeContractService getService() {
return extIncomeContractService;
}
@ApiOperation(value = "合同收入计算", notes = "合同收入计算", httpMethod = "GET")
@GetMapping("/calculateIncome/{id}")
public ApiResult calculateIncome(@PathVariable Long id) {
......
......@@ -2,9 +2,8 @@ package com.yonde.dcs.document.core.controller;
import com.yonde.dcs.document.common.vo.ExtIncomeDetailVO;
import com.yonde.dcs.document.core.controller.shadow.ExtIncomeDetailControllerShadow;
import com.yonde.dcs.document.core.service.ExtIncomeDetailService;
import com.yonde.dex.baseweb.AbstractBaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
......@@ -15,8 +14,6 @@ import org.springframework.web.bind.annotation.RestController;
**/
@RestController
@RequestMapping("/ExtIncomeDetail")
public class ExtIncomeDetailController extends AbstractBaseController<ExtIncomeDetailVO, ExtIncomeDetailService<ExtIncomeDetailVO>> {
public class ExtIncomeDetailController <V extends ExtIncomeDetailVO, S extends ExtIncomeDetailService<V>> extends ExtIncomeDetailControllerShadow<V, S> {
@Autowired
private ExtIncomeDetailService extIncomeDetailService;
}
package com.yonde.dcs.document.core.controller.shadow;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.common.vo.ExtPlanVO;
import com.yonde.dcs.document.core.service.ExtIncomeContractService;
import com.yonde.dcs.document.core.service.ExtPlanService;
import com.yonde.dcs.document.core.service.impl.ExtDistributeRecordServiceImpl;
import com.yonde.dcs.document.core.service.impl.ExtIncomeContractServiceImpl;
import com.yonde.dex.baseweb.AbstractBaseController;
import com.yonde.dex.linkdata.plugin.core.controller.DxLinkDataController;
import javax.annotation.Resource;
public class ExtIncomeContractControllerShadow<V extends ExtIncomeContractVO, S extends ExtIncomeContractService<V>> implements AbstractBaseController<V, S>{
public static final String BEAN_NAME = "extIncomeContractController";
/**
* 注入
*/
@Resource(name = ExtIncomeContractServiceImpl.BEAN_NAME)
private ExtIncomeContractService<V> extIncomeContractService;
/**
* getService
*/
@Override
public S getService() {
return (S) this.extIncomeContractService;
}
}
package com.yonde.dcs.document.core.controller.shadow;
import com.yonde.dcs.document.common.vo.ExtIncomeDetailVO;
import com.yonde.dcs.document.core.service.ExtIncomeDetailService;
import com.yonde.dcs.document.core.service.impl.ExtIncomeDetailServiceImpl;
import com.yonde.dex.baseweb.AbstractBaseController;
import javax.annotation.Resource;
public class ExtIncomeDetailControllerShadow<V extends ExtIncomeDetailVO, S extends ExtIncomeDetailService<V>> implements AbstractBaseController<V, S>{
public static final String BEAN_NAME = "extIncomeDetailController";
/**
* 注入
*/
@Resource(name = ExtIncomeDetailServiceImpl.BEAN_NAME)
private ExtIncomeDetailService<V> extIncomeDetailService;
/**
* getService
*/
@Override
public S getService() {
return (S) this.extIncomeDetailService;
}
}
package com.yonde.dcs.document.core.event;
import cn.hutool.core.io.FileUtil;
import cn.hutool.extra.spring.SpringUtil;
import com.alibaba.fastjson.JSONObject;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.ExtInterfaceInfoLinkVO;
import com.yonde.dcs.document.core.constants.Constants;
import com.yonde.dcs.document.core.factory.InternalInterfaceUtils;
import com.yonde.dcs.document.core.factory.TechnicalFileUtils;
......@@ -17,6 +19,7 @@ import com.yonde.dex.dao.events.DxEvent;
import com.yonde.dex.dao.events.DxEventListener;
import com.yonde.dex.dao.events.DxEventWrap;
import com.yonde.dex.dfs.vo.ObjFileLinkVO;
import com.yonde.dex.wfc.common.vo.DxWfProcessVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
......@@ -136,14 +139,14 @@ public class DocBeforeCreateEvent {
* @param documentVo
* @param infoLinkVO 提资人信息
*/
public void generateAutoInterFaceWord(DxDocumentVO documentVo, InterfaceInfoLinkVO infoLinkVO, WfProcessInfoVO wfProcessInfoVO) {
public void generateAutoInterFaceWord(DxDocumentVO documentVo, ExtInterfaceInfoLinkVO infoLinkVO, DxWfProcessVO wfProcessInfoVO) {
try {
String file = documentVo.getSubTypeName();
String outWordFilePath = Constants.MERGER_FILE_ABSOLUTE_PATH + documentVo.getSubTypeName() + "\\" + documentVo.getNumber() + "\\" + Constants.MERGER_SOURCE + "\\";
//生成特定的文档目录,保存生成的word文件
FileUtil.mkdir(outWordFilePath);
Class<?> clazz = Class.forName("com.inet.pdm.factory.InternalInterfaceUtils");
Method settingDataMethod = clazz.getMethod("settingData", DxDocumentVO.class, InterfaceInfoLinkVO.class, WfProcessInfoVO.class);
Method settingDataMethod = clazz.getMethod("settingData", DxDocumentVO.class, ExtInterfaceInfoLinkVO.class, DxWfProcessVO.class);
JSONObject jsonObject = (JSONObject) settingDataMethod.invoke(SpringUtil.getBean(InternalInterfaceUtils.class), documentVo, infoLinkVO, wfProcessInfoVO);
String generateWordFilePath = FileUtils.generateWordFile(outWordFilePath);
//生成word文件方法
......
......@@ -13,6 +13,7 @@ import com.yonde.dcs.document.core.util.FileUtils;
import com.yonde.dcs.document.core.util.WorkFlowUtil;
import com.yonde.dcs.document.core.word.ImportWordService;
import com.yonde.dex.wfc.common.vo.DxWfProcessInfoVO;
import com.yonde.dex.wfc.common.vo.DxWfProcessVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
......@@ -62,7 +63,7 @@ public class ProcessDataUtils {
public void processData(DxDocumentVO documentVo) {
String subTypeName = documentVo.getSubTypeName();
WfProcessInstVO wfProcessInstVO = workFlowUtil.getWfProcessInst(documentVo);
DxWfProcessInfoVO wfProcessInfoVO = dexWorkFlowService.getProcessInstDetailById(wfProcessInstVO.getId());
DxWfProcessVO wfProcessInfoVO = dexWorkFlowService.getProcessInstDetailById(wfProcessInstVO.getId());
switch (subTypeName) {
case Constants.INTERNAL_INTERFACE:
this.generateInterFaceWord(documentVo, new ExtInterfaceInfoLinkVO(), wfProcessInfoVO);
......@@ -98,7 +99,7 @@ public class ProcessDataUtils {
* @param documentVo
* @param infoLinkVO 提资人信息
*/
public void generateInterFaceWord(DxDocumentVO documentVo, ExtInterfaceInfoLinkVO infoLinkVO, DxWfProcessInfoVO wfProcessInfoVO) {
public void generateInterFaceWord(DxDocumentVO documentVo, ExtInterfaceInfoLinkVO infoLinkVO, DxWfProcessVO wfProcessInfoVO) {
try {
String file = documentVo.getSubTypeName();
String outWordFilePath = Constants.MERGER_FILE_ABSOLUTE_PATH + documentVo.getSubTypeName() + "\\" + documentVo.getNumber() + "\\";
......
......@@ -2,34 +2,18 @@ package com.yonde.dcs.document.core.factory;
import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSONObject;
import com.inet.pdm.constants.Constants;
import com.inet.pdm.constants.DictConstants;
import com.inet.pdm.constants.SignConstants;
import com.inet.pdm.entity.excel.AuditPojo;
import com.inet.pdm.service.AuditRecordCardLinkService;
import com.inet.pdm.service.ExtDocService;
import com.inet.pdm.signUtils.SignUtil;
import com.inet.pdm.util.*;
import com.inet.pdm.word.ImportWordService;
import com.yonde.dcs.document.common.entity.vo.AtlasDrawingLinkVO;
import com.yonde.dcs.document.common.entity.vo.AuditRecordCardLinkVO;
import com.yonde.dcs.document.common.entity.vo.AuditRecordCardVO;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dcs.document.core.service.DocumentService;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.ExtAtlasDrawingLinkVO;
import com.yonde.dcs.document.core.constants.Constants;
import com.yonde.dcs.document.core.util.DateUtils;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.dict.service.service.IDictDataService;
import com.yonde.dex.dict.service.vo.DictDataVO;
import com.yonde.dex.user.service.service.IOrganizationService;
import com.yonde.dex.user.service.service.IUserService;
import com.yonde.dex.user.service.vo.OrganizationVO;
import com.yonde.dex.user.service.vo.UserVO;
import com.yonde.dex.valut.vo.ObjFileLinkVO;
import com.yonde.dex.valut.vo.PapersVO;
import com.yonde.dex.wfc.common.enums.TaskStateEnum;
import com.yonde.dex.wfc.service.service.IInstanceService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
......@@ -311,7 +295,7 @@ public class TechnicalFileUtils {
JSONObject jsonObject = new JSONObject();
//获取相关图纸
List<AtlasDrawingLinkVO> drawingLinks = extDocService.recursionAtlasDoc(doc.getVersionId());
List<ExtAtlasDrawingLinkVO> drawingLinks = extDocService.recursionAtlasDoc(doc.getVersionId());
jsonObject.put("drawingNo", drawingLinks.size());
List<JSONObject> drawingsJson = new ArrayList<>();
......
......@@ -2,14 +2,13 @@ package com.yonde.dcs.document.core.factory;
import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSONObject;
import com.inet.pdm.constants.Constants;
import com.inet.pdm.constants.SignConstants;
import com.inet.pdm.service.ExtDocService;
import com.inet.pdm.util.DateUtils;
import com.inet.pdm.word.ImportWordService;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dex.wfc.common.vo.WfProcessInfoVO;
import com.yonde.dex.wfc.common.vo.WfTaskDefinitionVO;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.core.constants.Constants;
import com.yonde.dcs.document.core.constants.SignConstants;
import com.yonde.dcs.document.core.service.ExtDocService;
import com.yonde.dcs.document.core.util.DateUtils;
import com.yonde.dcs.document.core.word.ImportWordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
......
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtDisReocredLinkRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
/**
* @author xfchai
* @description: 分发记录关联数据库操作层
* @version: 0
* @date: 2021-09-14 11:08:37
**/
public interface ExtDisReocredLinkRepository <P extends ExtDisReocredLink> extends ExtDisReocredLinkRepositoryShadow<P> {
}
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtDistributeRecordRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtDistributeRecord;
/**
* @description: ExtIncomeDetail数据库操作层
* @version: 1
* @date: 2022-02-24 02:58:51
**/
public interface ExtDistributeRecordRepository<P extends ExtDistributeRecord> extends ExtDistributeRecordRepositoryShadow<P> {
}
\ No newline at end of file
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtIncomeContractRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtIncomeContract;
/**
* @author xfchai
* @description: 收入合同数据库操作层
* @version: 1
* @date: 2021-09-03 03:41:00
**/
public interface ExtIncomeContractRepository <P extends ExtIncomeContract> extends ExtIncomeContractRepositoryShadow<P> {
}
\ No newline at end of file
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtIncomeContractRepositoryShadow;
import com.yonde.dcs.document.core.repository.shadow.ExtIncomeDetailRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtIncomeDetail;
/**
* @description: ExtIncomeDetail数据库操作层
* @version: 1
* @date: 2022-02-24 02:58:51
**/
public interface ExtIncomeDetailRepository<P extends ExtIncomeDetail> extends ExtIncomeDetailRepositoryShadow<P> {
}
\ No newline at end of file
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtOriginObjLinkRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtOriginObjLink;
/**
* @author xfchai
* @description: 收入合同数据库操作层
* @version: 1
* @date: 2021-09-03 03:41:00
**/
public interface ExtOriginObjLinkRepository<P extends ExtOriginObjLink> extends ExtOriginObjLinkRepositoryShadow<P> {
}
\ No newline at end of file
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtDisReocredLinkRepositoryShadow;
import com.yonde.dcs.document.core.repository.shadow.ExtUpgradeObjLinkRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
import com.yonde.dcs.document.entity.po.ExtUpgradeObjLink;
/**
* @author xfchai
* @description: 分发记录关联数据库操作层
* @version: 0
* @date: 2021-09-14 11:08:37
**/
public interface ExtUpgradeObjLinkRepository<P extends ExtUpgradeObjLink> extends ExtUpgradeObjLinkRepositoryShadow<P> {
}
package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtDisReocredLinkRepositoryShadow;
import com.yonde.dcs.document.core.repository.shadow.ObsoleteDocLinkRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
import com.yonde.dcs.document.entity.po.ObsoleteDocLink;
/**
* @author xfchai
* @description: 分发记录关联数据库操作层
* @version: 0
* @date: 2021-09-14 11:08:37
**/
public interface ObsoleteDocLinkRepository<P extends ObsoleteDocLink> extends ObsoleteDocLinkRepositoryShadow<P> {
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
import com.yonde.dcs.document.entity.po.ExtDistributeRecord;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.logicdelete.plugin.core.repository.DxLogicDeleteRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ExtDisReocredLinkRepositoryShadow<P extends ExtDisReocredLink> extends BaseRepository<P> ,DxLogicDeleteRepository<P> {
String BEAN_NAME = "extDisReocredLinkRepository";
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtDistributeRecord;
import com.yonde.dcs.document.entity.po.ExtIncomeDetail;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.logicdelete.plugin.core.repository.DxLogicDeleteRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ExtDistributeRecordRepositoryShadow<P extends ExtDistributeRecord> extends BaseRepository<P> ,DxLogicDeleteRepository<P> {
String BEAN_NAME = "extDistributeRecordRepository";
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtIncomeContract;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.logicdelete.plugin.core.repository.DxLogicDeleteRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ExtIncomeContractRepositoryShadow<P extends ExtIncomeContract> extends BaseRepository<P> ,DxLogicDeleteRepository<P> {
String BEAN_NAME = "extIncomeContractRepository";
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtIncomeContract;
import com.yonde.dcs.document.entity.po.ExtIncomeDetail;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.logicdelete.plugin.core.repository.DxLogicDeleteRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ExtIncomeDetailRepositoryShadow<P extends ExtIncomeDetail> extends BaseRepository<P> ,DxLogicDeleteRepository<P> {
String BEAN_NAME = "extIncomeDetailRepository";
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtOriginObjLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ExtOriginObjLinkRepositoryShadow<P extends ExtOriginObjLink> extends BaseRepository<P> {
String BEAN_NAME = "extOriginObjLinkRepository";
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
import com.yonde.dcs.document.entity.po.ExtUpgradeObjLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.logicdelete.plugin.core.repository.DxLogicDeleteRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ExtUpgradeObjLinkRepositoryShadow<P extends ExtUpgradeObjLink> extends BaseRepository<P> {
String BEAN_NAME = "extUpgradeObjLinkRepository";
}
package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ObsoleteDocLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
import org.springframework.data.repository.NoRepositoryBean;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
@NoRepositoryBean
public interface ObsoleteDocLinkRepositoryShadow<P extends ObsoleteDocLink> extends BaseRepository<P> {
String BEAN_NAME = "obsoleteDocLinkRepository";
}
//package com.yonde.dcs.document.core.service;
//
//import com.inet.pdm.entity.vo.ECRVO;
//import com.inet.pdm.feign.ECRFeignService;
//import com.yonde.dex.lcycle.integration.service.LifecycleBaseService;
//
///**
// * @author xfchai
// * @description: ECR逻辑层接口
// * @version: 0
// * @date: 2021-09-15 02:27:18
// **/
// TODO: 2024/8/1 4.1 ECRVO 这个继承的类不存在
//public interface ECRService<V extends ECRVO> extends ECRFeignService<ECRVO>, LifecycleBaseService<ECRVO> {
//}
......@@ -2,6 +2,9 @@ package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtApplyDocVO;
import com.yonde.dcs.document.core.service.shadow.ExtApplyDocServiceShadow;
import com.yonde.dcs.document.entity.po.ExtApplyDoc;
import com.yonde.dex.dao.business.repository.BaseRepository;
/**
* @description: ExtApplyDoc-service
* @author: dexadmin
......@@ -10,4 +13,5 @@ import com.yonde.dcs.document.core.service.shadow.ExtApplyDocServiceShadow;
**/
public interface ExtApplyDocService<V extends ExtApplyDocVO> extends ExtApplyDocServiceShadow<V> {
BaseRepository<ExtApplyDoc> getRepository();
}
package com.yonde.dcs.document.core.service;
import com.inet.pdm.entity.vo.ExtPlanVO;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.ExtPlanVO;
import com.yonde.dex.user.common.vo.DxOrganizationVO;
import com.yonde.dex.user.service.vo.OrganizationVO;
import com.yonde.dex.version.common.entity.vo.DxIterationVO;
import java.util.List;
import java.util.Map;
......@@ -142,7 +140,9 @@ public interface ExtAutoTaskService {
*
* @param iterationObject
*/
void endProcess(DxIterationVO iterationObject);
// TODO: 2024/7/31 DxIterationVO在4.1不存在
// void endProcess(DxIterationVO iterationObject);
/**
* 生成过时文件通知单word
......
package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtDisReocredLinkVO;
import com.yonde.dcs.document.core.service.impl.ExtDistributeRecordServiceImpl;
import com.yonde.dcs.document.core.service.shadow.ExtDisReocredLinkServiceShadow;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
import org.springframework.stereotype.Service;
/**
* @author xfchai
* @description: 分发记录关联Service接口
* @version: 0
* @date: 2021-09-14 11:08:37
**/
public interface ExtDisReocredLinkService<V extends ExtDisReocredLinkVO> extends ExtDisReocredLinkServiceShadow<V> {
BaseRepository<ExtDisReocredLink> getRepository();
}
package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtDistributeRecordVO;
import com.yonde.dcs.document.core.service.shadow.ExtDistributeRecordServiceShadow;
import com.yonde.dcs.document.entity.po.ExtDistributeRecord;
import com.yonde.dcs.document.feign.ExtDistributeRecordFeignService;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.dao.service.BaseIdEntityService;
import java.util.List;
......@@ -12,7 +15,11 @@ import java.util.List;
* @version: 1
* @date: 2021-09-14 11:11:01
**/
public interface ExtDistributeRecordService<V extends ExtDistributeRecordVO> extends ExtDistributeRecordFeignService<V> {
public interface ExtDistributeRecordService<V extends ExtDistributeRecordVO> extends ExtDistributeRecordServiceShadow<V> {
BaseRepository<ExtDistributeRecord> getRepository();
void preSaveOrUpdate(ExtDistributeRecordVO entity);
/**
* 获取收发记录接口
* @param id
......
......@@ -101,7 +101,7 @@ public interface ExtDocService {
* @param classType
* @param wfProcessInfoVO
*/
void getDocWord(DxDocumentVO documentVo, Class classType, WfProcessInfoVO wfProcessInfoVO, String fileName);
void getDocWord(DxDocumentVO documentVo, Class classType, DxWfProcessInfoVO wfProcessInfoVO, String fileName);
/**
* 生成word的文件业务逻辑(签名专用的)
......@@ -111,25 +111,29 @@ public interface ExtDocService {
* @param wfProcessInfoVO
* @param fileName
*/
void generateDocWordSign(DxDocumentVO documentVo, Class classType, DxWfProcessInfoVO wfProcessInfoVO, String fileName);
/**
* 获取签名图片
*
* @param activities
* @param activityName
* @return
*/
String getSignImage(List<WfTaskDefinitionVO> activities, String activityName);
/**
* 获取签名日期
*
* @param activities
* @param activityName
* @return
*/
String getEndDate(List<WfTaskDefinitionVO> activities, String activityName);
// TODO: 2024/7/31 2.1有WfProcessInfoVO 4.1没有这个VO
// void generateDocWordSign(DxDocumentVO documentVo, Class classType, WfProcessInfoVO wfProcessInfoVO, String fileName);
// TODO: 2024/7/31 2.1有WfTaskDefinitionVO 4.1没有这个VO
// /**
// * 获取签名图片
// *
// * @param activities
// * @param activityName
// * @return
// */
// String getSignImage(List<WfTaskDefinitionVO> activities, String activityName);
//
// /**
// * 获取签名日期
// *
// * @param activities
// * @param activityName
// * @return
// */
// String getEndDate(List<WfTaskDefinitionVO> activities, String activityName);
Boolean validate(DxDocumentVO documentVO);
/**
* 获取图册相关图纸
......@@ -139,6 +143,8 @@ public interface ExtDocService {
*/
List<ExtAtlasDrawingLinkVO> recursionAtlasDoc(Long id);
void generateDocWordSign(DxDocumentVO documentVo, Class classType, DxWfProcessInfoVO wfProcessInfoVO, String fileName);
/**
* 获取升版的图册图纸
*
......
......@@ -2,6 +2,9 @@ package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtDocumentReferentLinkVO;
import com.yonde.dcs.document.core.service.shadow.ExtDocumentReferentLinkServiceShadow;
import com.yonde.dcs.document.entity.po.ExtOriginObjLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
/**
* @description: ExtDocumentReferentLink-service
* @author: dexadmin
......
package com.yonde.dcs.document.core.service;
import com.yonde.dex.auth.core.service.DynamicPermService;
import com.yonde.dex.auth.entity.vo.DynamicPermVO;
import com.yonde.dex.auth.common.vo.DynamicPermVO;
import java.util.List;
/**
......@@ -11,7 +11,7 @@ import java.util.List;
* @author: dang wei
* @create: 2022-02-28 10:55
*/
public interface ExtDynamicPermService extends DynamicPermService {
public interface ExtDynamicPermService {
/**
* 获取动态权限
* @param userId
......
package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.core.service.shadow.ExtIncomeContractServiceShadow;
import com.yonde.dcs.document.entity.po.ExtIncomeContract;
import com.yonde.dcs.document.feign.ExtIncomeContractFeignService;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.dao.service.BaseIdEntityService;
/**
......@@ -11,7 +14,9 @@ import com.yonde.dex.dao.service.BaseIdEntityService;
* @version: 1
* @date: 2021-09-03 03:41:00
**/
public interface ExtIncomeContractService<V extends ExtIncomeContractVO> extends ExtIncomeContractFeignService<V> {
public interface ExtIncomeContractService<V extends ExtIncomeContractVO> extends ExtIncomeContractServiceShadow<V> {
BaseRepository<ExtIncomeContract> getRepository();
/**
* 计算收入明细
*
......
package com.yonde.dcs.document.core.service;
import com.inet.pdm.entity.vo.ExtIncomeDetailVO;
import com.inet.pdm.feign.ExtIncomeDetailFeignService;
import com.yonde.dcs.document.common.vo.ExtIncomeDetailVO;
import com.yonde.dcs.document.core.service.shadow.DxDocTreeTemplateServiceShadow;
import com.yonde.dcs.document.core.service.shadow.ExtIncomeDetailServiceShadow;
import com.yonde.dcs.document.entity.po.ExtIncomeDetail;
import com.yonde.dcs.document.feign.ExtIncomeDetailFeignService;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.dao.service.BaseIdEntityService;
/**
......@@ -11,6 +13,7 @@ import com.yonde.dex.dao.service.BaseIdEntityService;
* @version: 1
* @date: 2022-02-24 02:58:51
**/
public interface ExtIncomeDetailService<V extends ExtIncomeDetailVO> extends ExtIncomeDetailFeignService<ExtIncomeDetailVO>, BaseIdEntityService<ExtIncomeDetailVO> {
public interface ExtIncomeDetailService<V extends ExtIncomeDetailVO> extends ExtIncomeDetailServiceShadow<V> {
BaseRepository<ExtIncomeDetail> getRepository();
}
......@@ -2,6 +2,8 @@ package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtInformingVO;
import com.yonde.dcs.document.core.service.shadow.ExtInformingServiceShadow;
import com.yonde.dcs.document.entity.po.ExtInforming;
import com.yonde.dex.dao.business.repository.BaseRepository;
import java.util.List;
......@@ -12,10 +14,12 @@ import java.util.List;
* @date: 2024-7-15 15:32:37
**/
public interface ExtInformingService<V extends ExtInformingVO> extends ExtInformingServiceShadow<V> {
BaseRepository<ExtInforming> getRepository();
/**
* 获取提资信息
*
* @param id
*/
List<InformingVO> getInforming(Long id);
List<ExtInformingVO> getInforming(Long id);
}
package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtOriginObjLinkVO;
import com.yonde.dcs.document.core.service.shadow.ExtOriginObjLinkServiceShadow;
/**
* @author xfchai
* @description: ExtOriginObjLink逻辑层接口
* @version: 0
* @date: 2021-09-24 03:02:10
**/
public interface ExtOriginObjLinkService<V extends ExtOriginObjLinkVO> extends ExtOriginObjLinkServiceShadow<V> {
}
package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ExtUpgradeObjLinkVO;
import com.yonde.dcs.document.core.service.shadow.ExtUpgradeObjLinkServiceShadow;
/**
* @author xfchai
* @description: ExtUpgradeObjLink逻辑层接口
* @version: 1
* @date: 2021-09-24 02:58:31
**/
public interface ExtUpgradeObjLinkService<V extends ExtUpgradeObjLinkVO> extends ExtUpgradeObjLinkServiceShadow<V> {
}
package com.yonde.dcs.document.core.service;
import com.yonde.dcs.document.common.vo.ObsoleteDocLinkVO;
import com.yonde.dcs.document.core.service.shadow.ExtUpgradeObjLinkServiceShadow;
import com.yonde.dcs.document.core.service.shadow.ObsoleteDocLinkServiceShadow;
/**
* @author xfchai
* @description: 过时文件通知单逻辑层接口
* @version: 0
* @date: 2021-09-27 10:48:22
**/
public interface ObsoleteDocLinkService<V extends ObsoleteDocLinkVO> extends ObsoleteDocLinkServiceShadow<V> {
}
......@@ -20,6 +20,7 @@ import javax.annotation.Resource;
* @date: 2024-7-15 15:32:33
**/
@Slf4j
@Service(DxDocTreeTemplateServiceImpl.BEAN_NAME)
public class DxDocTreeTemplateServiceImpl<V extends DxDocTreeTemplateVO> implements DxDocTreeTemplateService<V>{
......
......@@ -20,6 +20,7 @@ import javax.annotation.Resource;
* @date: 2024-7-15 15:32:34
**/
@Slf4j
@Service(DxDocumentServiceImpl.BEAN_NAME)
public class DxDocumentServiceImpl<V extends DxDocumentVO> implements DxDocumentService<V>{
......
//package com.yonde.dcs.document.core.service.impl;
//
//import com.inet.pdm.entity.po.ECR;
//import com.inet.pdm.entity.vo.ECRVO;
//import com.inet.pdm.repository.cmt.ECRRepository;
//import com.inet.pdm.service.ECRService;
//import com.yonde.dex.dao.business.repository.BaseRepository;
//import com.yonde.dex.lcycle.integration.service.impl.LifecycleBaseServiceImpl;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//
///**
// * @author xfchai
// * @description: ECR逻辑实现层接口
// * @version: 0
// * @date: 2021-09-15 02:27:18
// **/
//@Service
//@Slf4j
// TODO: 2024/8/1 4.1 ECR, ECRVO 这两个继承的类不存在
//public class ECRServiceImpl extends LifecycleBaseServiceImpl<ECR, ECRVO, Long> implements ECRService<ECRVO> {
//
// @Autowired
// private ECRRepository eCRRepository;
//
// @Override
// protected BaseRepository<ECR, Long> getRepository() {
// return eCRRepository;
// }
//}
//
......@@ -2,17 +2,12 @@ package com.yonde.dcs.document.core.service.impl;
import com.yonde.dex.dao.business.repository.BaseRepository;
import org.springframework.stereotype.Service;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import com.yonde.dcs.document.common.vo.ExtApplyDocVO;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Autowired;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import com.yonde.dcs.document.core.service.ExtApplyDocService;
import com.yonde.dcs.document.core.repository.ExtApplyDocRepository;
import com.yonde.dcs.document.entity.po.ExtApplyDoc;
import javax.annotation.Resource;
/**
* @description: ExtApplyDoc-ServiceImpl
......@@ -32,7 +27,7 @@ public class ExtApplyDocServiceImpl<V extends ExtApplyDocVO> implements ExtApply
@Override
protected BaseRepository<ExtApplyDoc, Long> getRepository() {
public BaseRepository<ExtApplyDoc> getRepository() {
return extApplyDocRepository;
}
}
......
package com.yonde.dcs.document.core.service.impl;
import com.inet.pdm.service.ExtContextService;
import com.yonde.dcs.document.core.service.ExtContextService;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.basedata.entity.users.DxUserVO;
import com.yonde.dex.basedata.users.UserHelper;
import com.yonde.dex.context.core.service.ContextLibraryService;
import com.yonde.dex.context.core.service.ContextService;
import com.yonde.dex.dict.feign.DictService;
import com.yonde.dex.context.feign.ContextLibraryServiceFeign;
import com.yonde.dex.context.feign.ContextServiceFeign;
import com.yonde.dex.dict.feign.DictDataFeignService;
import com.yonde.dex.dict.service.vo.DictDataVO;
import com.yonde.dex.globalconfig.feign.SecretCodeMatrixFeign;
import com.yonde.dex.lcycle.integration.utils.FieldEncryptionUtil;
import com.yonde.dex.secretcode.plugin.entities.utils.FieldEncryptionUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
......@@ -33,16 +34,16 @@ import java.util.Objects;
public class ExtContextServiceImpl implements ExtContextService {
@Autowired
ContextLibraryService contextLibraryService;
ContextLibraryServiceFeign contextLibraryServiceFeign;
@Autowired
ContextService contextService;
@Resource
ContextServiceFeign contextServiceFeign;
@Autowired
UserHelper userHelper;
@Autowired
DictService dictService;
DictDataFeignService dictDataFeignService;
@Autowired
SecretCodeMatrixFeign secretCodeMatrixFeign;
......@@ -59,7 +60,7 @@ public class ExtContextServiceImpl implements ExtContextService {
DxUserVO userVo = userHelper.getCurrentUser();
if (Objects.nonNull(userVo)) {
String secretCode = userVo.getSecretCode();
DictDataVO dictDataVO = this.dictService.getDictCode("UserSecretCode", secretCode);
DictDataVO dictDataVO = dictDataFeignService.getDictCode("UserSecretCode", secretCode);
if (Objects.nonNull(dictDataVO)) {
List<String> visibleSecretCodes = this.secretCodeMatrixFeign.getVisibleSecret(secretCode);
List<String> secretList = new ArrayList();
......@@ -71,7 +72,7 @@ public class ExtContextServiceImpl implements ExtContextService {
searchQueryCondition.addSearchItemsWithAnd(secretCondition);
}
}
return contextService.findRecursion(searchQueryCondition);
return contextServiceFeign.findRecursion(searchQueryCondition);
}
}
package com.yonde.dcs.document.core.service.impl;
import com.yonde.dcs.document.common.vo.ExtDisReocredLinkVO;
import com.yonde.dcs.document.core.repository.ExtDisReocredLinkRepository;
import com.yonde.dcs.document.core.service.ExtDisReocredLinkService;
import com.yonde.dcs.document.entity.po.ExtDisReocredLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author xfchai
* @description: 分发记录关联Service实现
* @version: 0
* @date: 2021-09-14 11:08:37
**/
@Service(ExtDisReocredLinkServiceImpl.BEAN_NAME)
@Slf4j
public class ExtDisReocredLinkServiceImpl <V extends ExtDisReocredLinkVO> implements ExtDisReocredLinkService<V> {
public static final String BEAN_NAME = "extDisReocredLinkServiceImpl";
@Autowired
private ExtDisReocredLinkRepository disReocredLinkRepository;
@Override
public BaseRepository<ExtDisReocredLink> getRepository() {
return disReocredLinkRepository;
}
}
package com.yonde.dcs.document.core.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.inet.pdm.constants.Constants;
import com.inet.pdm.entity.po.DistributeRecord;
import com.inet.pdm.entity.vo.DisReocredLinkVO;
import com.inet.pdm.entity.vo.DistributeRecordVO;
import com.inet.pdm.repository.DistributeRecordRepository;
import com.inet.pdm.service.DisReocredLinkService;
import com.inet.pdm.service.DistributeRecordService;
import com.inet.pdm.service.ExtDynamicPermService;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dcs.document.core.service.DocumentService;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.ExtDisReocredLinkVO;
import com.yonde.dcs.document.common.vo.ExtDistributeRecordVO;
import com.yonde.dcs.document.core.constants.Constants;
import com.yonde.dcs.document.core.repository.ExtDistributeRecordRepository;
import com.yonde.dcs.document.core.service.DxDocumentService;
import com.yonde.dcs.document.core.service.ExtDisReocredLinkService;
import com.yonde.dcs.document.core.service.ExtDistributeRecordService;
import com.yonde.dcs.document.entity.po.ExtDistributeRecord;
import com.yonde.dex.auth.api.feign.DynamicPermFeignService;
import com.yonde.dex.auth.common.constant.DynamicAuthTypeEnum;
import com.yonde.dex.auth.entity.vo.DynamicPermVO;
import com.yonde.dex.auth.common.vo.DynamicPermVO;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.basedata.entity.data.OperatorType;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.dao.service.BaseIdEntityServiceImp;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
......@@ -36,30 +36,30 @@ import java.util.List;
* @version: 1
* @date: 2021-09-14 11:11:01
**/
@Service
@Service(ExtDistributeRecordServiceImpl.BEAN_NAME)
@Slf4j
public class ExtDistributeRecordServiceImpl extends BaseIdEntityServiceImp<DistributeRecord, DistributeRecordVO, Long> implements DistributeRecordService<DistributeRecordVO> {
public class ExtDistributeRecordServiceImpl <V extends ExtDistributeRecordVO> implements ExtDistributeRecordService<V> {
public static final String BEAN_NAME = "extDistributeRecordServiceImpl";
@Autowired
private DistributeRecordRepository distributeRecordRepository;
private ExtDistributeRecordRepository distributeRecordRepository;
@Autowired
private DisReocredLinkService disRecordLink;
private ExtDisReocredLinkService disRecordLink;
@Autowired
private ExtDynamicPermService dynamicPermService;
private DynamicPermFeignService dynamicPermFeignService;
@Qualifier("documentServiceImpl")
@Qualifier("dxDocumentServiceImpl")
@Autowired
private DocumentService documentService;
private DxDocumentService documentService;
@Override
protected BaseRepository<DistributeRecord, Long> getRepository() {
public BaseRepository<ExtDistributeRecord> getRepository() {
return distributeRecordRepository;
}
@Override
protected void preSaveOrUpdate(DistributeRecordVO entity) {
public void preSaveOrUpdate(ExtDistributeRecordVO entity) {
//回收分发动态权限
/*if (!ObjectUtils.isEmpty(entity.getCompleted()) && entity.getCompleted()) {
if (!ObjectUtils.isEmpty(entity.getHandlerId()) && CollectionUtil.isNotEmpty(entity.getSourceDisReocredLink()) && !ObjectUtils.isEmpty(entity.getSourceDisReocredLink().get(0))) {
......@@ -79,7 +79,7 @@ public class ExtDistributeRecordServiceImpl extends BaseIdEntityServiceImp<Distr
DynamicPermVO dynamicPermVO = new DynamicPermVO();
dynamicPermVO.setSubType(entity.getSourceDisReocredLink().get(0).getTargetIdType());
if ("DxDocument".equals(entity.getSourceDisReocredLink().get(0).getTargetIdType())) {
DxDocumentVO doc = documentService.get(entity.getSourceDisReocredLink().get(0).getTargetId());
DxDocumentVO doc = (DxDocumentVO) documentService.get(entity.getSourceDisReocredLink().get(0).getTargetId());
//内部接口赋予创建人分发动态权限
if (Constants.INTERNAL_INTERFACE.equals(doc.getSubTypeName())) {
......@@ -87,7 +87,8 @@ public class ExtDistributeRecordServiceImpl extends BaseIdEntityServiceImp<Distr
sendPermVO.setSubType(entity.getSourceDisReocredLink().get(0).getTargetIdType());
sendPermVO.setBranchId(doc.getVersionId().toString());
sendPermVO.setEndowUserId(doc.getCreatorId().toString());
sendPermVO.setDynamicPermTypeList(Arrays.asList("DisReocredLink-add"));
// TODO: 2024/7/31 4.1不存在 setDynamicPermTypeList字段
// sendPermVO.setDynamicPermTypeList(Arrays.asList("DisReocredLink-add"));
dynamicPermVOList.add(sendPermVO);
}
......@@ -95,22 +96,20 @@ public class ExtDistributeRecordServiceImpl extends BaseIdEntityServiceImp<Distr
} else {
dynamicPermVO.setBranchId(entity.getSourceDisReocredLink().get(0).getTargetId().toString());
}
dynamicPermVO.setEndowUserId(entity.getHandlerId().toString());
dynamicPermVO.setDynamicPerm(Arrays.asList(DynamicAuthTypeEnum.READ.getDisplayName()));
dynamicPermVOList.add(dynamicPermVO);
dynamicPermService.batchSaveDynamicPerm(dynamicPermVOList);
dynamicPermFeignService.batchSaveDynamicPerm(dynamicPermVOList);
}
}
}
@Override
public List<DistributeRecordVO> getDisRecord(Long id) {
public List<ExtDistributeRecordVO> getDisRecord(Long id) {
//通过id查询分发记录Link
List<DisReocredLinkVO> disReocredLinkVOS = this.recursionDisRecordLinks(id);
List<DistributeRecordVO> list = new ArrayList<>();
List<ExtDisReocredLinkVO> disReocredLinkVOS = this.recursionDisRecordLinks(id);
List<ExtDistributeRecordVO> list = new ArrayList<>();
disReocredLinkVOS.stream().forEach(item -> {
list.add(item.getSource());
});
......@@ -122,7 +121,7 @@ public class ExtDistributeRecordServiceImpl extends BaseIdEntityServiceImp<Distr
*
* @param id
*/
private List<DisReocredLinkVO> recursionDisRecordLinks(Long id) {
private List<ExtDisReocredLinkVO> recursionDisRecordLinks(Long id) {
SearchQueryCondition condition = SearchQueryCondition.builder()
.openProp(SearchQueryCondition.builder().name("source")
.openProp(SearchQueryCondition.builder().name("objFileLinks")
......
package com.yonde.dcs.document.core.service.impl;
import com.inet.pdm.service.ExtDynamicPermService;
import com.yonde.dex.auth.core.service.impl.DynamicPermServiceImpl;
import com.yonde.dex.auth.entity.vo.DynamicPermVO;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dcs.document.core.service.ExtDynamicPermService;
import com.yonde.dex.auth.api.feign.DynamicPermFeignService;
import com.yonde.dex.auth.common.vo.DynamicPermVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.List;
......@@ -20,7 +18,9 @@ import java.util.List;
* @create: 2022-02-28 10:58
*/
@Service
public class ExtDynamicPermServiceImpl extends DynamicPermServiceImpl implements ExtDynamicPermService {
public class ExtDynamicPermServiceImpl implements ExtDynamicPermService {
@Autowired
DynamicPermFeignService dynamicPermFeignService;
/**
* 获取动态权限
*
......@@ -30,15 +30,15 @@ public class ExtDynamicPermServiceImpl extends DynamicPermServiceImpl implements
*/
@Override
public List<DynamicPermVO> getDynamicPerm(String userId, String branchId) {
SearchQueryCondition condition = SearchQueryCondition.builder()
.searchItems(SearchItems.builder()
.item(new SearchItem("endowUserId", SearchItem.Operator.EQ, userId, null))
.item(new SearchItem("branchId", SearchItem.Operator.EQ, branchId, null)).build()).build();
DxPageImpl recursion = this.findRecursion(condition);
if (!ObjectUtils.isEmpty(recursion)) {
return recursion.getContent();
}
return null;
// SearchQueryCondition condition = SearchQueryCondition.builder()
// .searchItems(SearchItems.builder()
// .item(new SearchItem("endowUserId", SearchItem.Operator.EQ, userId, null))
// .item(new SearchItem("branchId", SearchItem.Operator.EQ, branchId, null)).build()).build();
// DxPageImpl recursion = this.findRecursion(condition);
DynamicPermVO dynamicPermVO=new DynamicPermVO();
dynamicPermVO.setBranchId(branchId);
dynamicPermVO.setEndowUserId(userId);
return dynamicPermFeignService.findDynamicPermList(dynamicPermVO);
}
......@@ -53,6 +53,7 @@ public class ExtDynamicPermServiceImpl extends DynamicPermServiceImpl implements
for (DynamicPermVO dynamicPermVO : dynamicPermVOList) {
dynamicPermVO.setRecallTime(new Date());
}
this.batchUpdate(dynamicPermVOList);
dynamicPermFeignService.batchUpdate(dynamicPermVOList);
// this.batchUpdate(dynamicPermVOList);
}
}
package com.yonde.dcs.document.core.service.impl;
import com.inet.pdm.entity.po.ExtIncomeContract;
import com.inet.pdm.entity.vo.ExtIncomeContractVO;
import com.inet.pdm.entity.vo.ExtIncomeDetailVO;
import com.inet.pdm.entity.vo.PaymentDetailsVO;
import com.inet.pdm.repository.ExtIncomeContractRepository;
import com.inet.pdm.service.ExtIncomeContractService;
import com.inet.pdm.service.ExtIncomeDetailService;
import com.inet.pdm.service.PaymentDetailsService;
import com.inet.pdm.util.BigDecimalUtil;
import com.inet.pdm.util.DateUtils;
import com.yonde.dcs.business.common.utils.DxPageUtils;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.common.vo.ExtIncomeDetailVO;
import com.yonde.dcs.document.common.vo.ExtPaymentDetailsVO;
import com.yonde.dcs.document.core.repository.ExtIncomeContractRepository;
import com.yonde.dcs.document.core.service.ExtIncomeContractService;
import com.yonde.dcs.document.core.service.ExtIncomeDetailService;
import com.yonde.dcs.document.core.util.BigDecimalUtil;
import com.yonde.dcs.document.core.util.DateUtils;
import com.yonde.dcs.document.entity.po.ExtIncomeContract;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.basedata.entity.data.OperatorType;
import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.dao.service.BaseIdEntityServiceImp;
import com.yonde.dex.dao.service.util.DxPageUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -36,19 +35,19 @@ import java.util.List;
* @version: 1
* @date: 2021-09-03 03:41:00
**/
@Service
@Service(ExtIncomeContractServiceImpl.BEAN_NAME)
@Slf4j
public class ExtIncomeContractServiceImpl extends BaseIdEntityServiceImp<ExtIncomeContract, ExtIncomeContractVO, Long> implements ExtIncomeContractService<ExtIncomeContractVO> {
public class ExtIncomeContractServiceImpl <V extends ExtIncomeContractVO> implements ExtIncomeContractService<V> {
public static final String BEAN_NAME = "extIncomeContractServiceImpl";
@Autowired
private ExtIncomeContractRepository extIncomeContractRepository;
@Autowired
private ExtIncomeDetailService extIncomeDetailService;
@Autowired
private PaymentDetailsService paymentDetailsService;
private ExtPaymentDetailsService paymentDetailsService;
@Override
protected BaseRepository<ExtIncomeContract, Long> getRepository() {
public BaseRepository<ExtIncomeContract> getRepository() {
return extIncomeContractRepository;
}
......@@ -83,7 +82,7 @@ public class ExtIncomeContractServiceImpl extends BaseIdEntityServiceImp<ExtInco
}
extIncomeContractVO.setToBedisbursed(subtract);
extIncomeContractVO.setOperator(OperatorType.MODIFY);
ExtIncomeContractVO extIncomeContractVO1 = this.saveRecursion(extIncomeContractVO);
ExtIncomeContractVO extIncomeContractVO1 = this.saveRecursion((V) extIncomeContractVO);
return extIncomeContractVO1;
}
......@@ -95,7 +94,7 @@ public class ExtIncomeContractServiceImpl extends BaseIdEntityServiceImp<ExtInco
List<BigDecimal> payAmoutList = new ArrayList<>();
//year为空就是事件方法调用
if (StringUtils.isEmpty(year)) {
List<PaymentDetailsVO> paymentDetailss = extIncomeContractVO.getPaymentDetailss();
List<ExtPaymentDetailsVO> paymentDetailss = extIncomeContractVO.getPaymentDetailss();
if (!CollectionUtils.isEmpty(paymentDetailss)) {
paymentDetailss.stream().forEach(item -> {
item.setOperator(OperatorType.MODIFY);
......@@ -104,7 +103,7 @@ public class ExtIncomeContractServiceImpl extends BaseIdEntityServiceImp<ExtInco
});
}
} else {
PaymentDetailsVO paymentDetailsVO = new PaymentDetailsVO();
ExtPaymentDetailsVO paymentDetailsVO = new ExtPaymentDetailsVO();
paymentDetailsVO.setExtIncomeContractId(id);
paymentDetailsVO.setExtIncomeContractIdType("ExtIncomeContract");
paymentDetailsVO.setExtIncomeContract(extIncomeContractVO);
......@@ -163,7 +162,7 @@ public class ExtIncomeContractServiceImpl extends BaseIdEntityServiceImp<ExtInco
.openProp(SearchQueryCondition.builder().name("paymentDetailss").build())
.searchItems(SearchItems.builder().item(new SearchItem("id", SearchItem.Operator.EQ,
id, null)).build()).build();
DxPageImpl<ExtIncomeContractVO> dexPage = this.findRecursion(query);
DxPageImpl<ExtIncomeContractVO> dexPage = (DxPageImpl<ExtIncomeContractVO>) this.findRecursion(query);
if (!CollectionUtils.isEmpty(dexPage.getContent())) {
ExtIncomeContractVO incomeContractVO = DxPageUtils.getFirst(dexPage);
return incomeContractVO;
......
package com.yonde.dcs.document.core.service.impl;
import com.yonde.dcs.document.common.vo.ExtIncomeDetailVO;
import com.yonde.dcs.document.core.repository.ExtIncomeDetailRepository;
import com.yonde.dcs.document.core.service.ExtIncomeDetailService;
import com.yonde.dcs.document.entity.po.ExtIncomeDetail;
import com.yonde.dex.dao.business.repository.BaseRepository;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @description: ExtIncomeDetail逻辑实现层接口
* @version: 1
* @date: 2022-02-24 02:58:51
**/
@Service(ExtIncomeDetailServiceImpl.BEAN_NAME)
@Slf4j
public class ExtIncomeDetailServiceImpl <V extends ExtIncomeDetailVO> implements ExtIncomeDetailService<V> {
public static final String BEAN_NAME = "extIncomeDetailServiceImpl";
@Autowired
private ExtIncomeDetailRepository extIncomeDetailRepository;
@Override
public BaseRepository<ExtIncomeDetail> getRepository() {
return extIncomeDetailRepository;
}
}
package com.yonde.dcs.document.core.service.impl;
import com.yonde.dcs.document.common.vo.ExtInterfaceInfoLinkVO;
import com.yonde.dcs.document.core.service.ExtInterfaceInfoLinkService;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
......@@ -7,20 +9,16 @@ import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.basedata.users.UserHelper;
import com.yonde.dex.dao.business.repository.BaseRepository;
import org.springframework.stereotype.Service;
import io.swagger.annotations.ApiOperation;
import java.util.ArrayList;
import java.util.List;
import com.yonde.dcs.document.common.vo.ExtInformingVO;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Autowired;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import com.yonde.dcs.document.core.service.ExtInformingService;
import com.yonde.dcs.document.core.repository.ExtInformingRepository;
import com.yonde.dcs.document.entity.po.ExtInforming;
import javax.annotation.Resource;
/**
* @description: ExtInforming-ServiceImpl
......@@ -39,29 +37,31 @@ public class ExtInformingServiceImpl<V extends ExtInformingVO> implements ExtInf
ExtInformingRepository<ExtInforming> extInformingRepository;
@Autowired
private InformingRepository informingRepository;
private ExtInformingRepository informingRepository;
@Autowired
private InterfaceInfoLinkService interfaceInfoLinkService;
private ExtInterfaceInfoLinkService interfaceInfoLinkService;
@Autowired
UserHelper userHelper;
@Qualifier("documentServiceImpl")
@Autowired
private DocumentService documentService;
// @Qualifier("documentServiceImpl")
// @Autowired
// private DocumentService documentService;
private final static String informativeUser = "informativeUser";
@Override
protected BaseRepository<Informing, Long> getRepository() {
public BaseRepository<ExtInforming> getRepository() {
return informingRepository;
}
@Override
public List<InformingVO> getInforming(Long id) {
List<InterfaceInfoLinkVO> informingVOS = this.recursionInterfaceInfoLinks(id);
List<InformingVO> list = new ArrayList<>();
public List<ExtInformingVO> getInforming(Long id) {
List<ExtInterfaceInfoLinkVO> informingVOS = this.recursionInterfaceInfoLinks(id);
List<ExtInformingVO> list = new ArrayList<>();
informingVOS.stream().forEach(item -> {
list.add(item.getTarget());
});
......@@ -87,7 +87,7 @@ public class ExtInformingServiceImpl<V extends ExtInformingVO> implements ExtInf
*
* @param id
*/
private List<InterfaceInfoLinkVO> recursionInterfaceInfoLinks(Long id) {
private List<ExtInterfaceInfoLinkVO> recursionInterfaceInfoLinks(Long id) {
SearchQueryCondition condition = SearchQueryCondition.builder()
.openProp(SearchQueryCondition.builder().name("target")
.openProp(SearchQueryCondition.builder().name("targetInterfaceInfoLink").build())
......
package com.yonde.dcs.document.core.service.impl;
import com.yonde.dcs.document.common.vo.ExtDocumentReferentLinkVO;
import com.yonde.dcs.document.common.vo.ExtOriginObjLinkVO;
import com.yonde.dcs.document.core.repository.ExtOriginObjLinkRepository;
import com.yonde.dcs.document.core.service.ExtDocumentReferentLinkService;
import com.yonde.dcs.document.core.service.ExtOriginObjLinkService;
import com.yonde.dcs.document.entity.po.ExtOriginObjLink;
import com.yonde.dex.dao.business.repository.BaseRepository;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author xfchai
* @description: ExtOriginObjLink逻辑实现层接口
* @version: 0
* @date: 2021-09-24 03:02:10
**/
@Service(ExtOriginObjLinkServiceImpl.BEAN_NAME)
@Slf4j
public class ExtOriginObjLinkServiceImpl <V extends ExtOriginObjLinkVO> implements ExtOriginObjLinkService<V> {
public static final String BEAN_NAME = "extOriginObjLinkServiceImpl";
@Autowired
private ExtOriginObjLinkRepository extOriginObjLinkRepository;
@Override
public BaseRepository<ExtOriginObjLink> getRepository() {
return extOriginObjLinkRepository;
}
}
package com.yonde.dcs.document.core.service.impl;
import com.yonde.dcs.document.common.vo.ExtUpgradeObjLinkVO;
import com.yonde.dcs.document.core.repository.ExtUpgradeObjLinkRepository;
import com.yonde.dcs.document.core.service.ExtUpgradeObjLinkService;
import com.yonde.dcs.document.entity.po.ExtUpgradeObjLink;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author xfchai
* @description: ExtUpgradeObjLink逻辑实现层接口
* @version: 1
* @date: 2021-09-24 02:58:31
**/
@Service
@Slf4j
public class ExtUpgradeObjLinkServiceImpl <V extends ExtUpgradeObjLinkVO> implements ExtUpgradeObjLinkService<V> {
public static final String BEAN_NAME = "extUpgradeObjLinkServiceImpl";
@Autowired
ExtUpgradeObjLinkRepository<ExtUpgradeObjLink> extUpgradeObjLinkRepository;
}
package com.yonde.dcs.document.core.service.impl;
import com.yonde.dcs.document.common.vo.ObsoleteDocLinkVO;
import com.yonde.dcs.document.core.repository.ExtUpgradeObjLinkRepository;
import com.yonde.dcs.document.core.service.ObsoleteDocLinkService;
import com.yonde.dcs.document.entity.po.ExtUpgradeObjLink;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author xfchai
* @description: 过时文件通知单逻辑实现层接口
* @version: 0
* @date: 2021-09-27 10:48:22
**/
@Service
@Slf4j
public class ObsoleteDocLinkServiceImpl <V extends ObsoleteDocLinkVO> implements ObsoleteDocLinkService<V> {
@Autowired
ObsoleteDocLinkRepository obsoleteDocLinkRepository;
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtDisReocredLinkVO;
import com.yonde.dcs.document.common.vo.ExtDistributeRecordVO;
import com.yonde.dcs.document.core.service.ExtDisReocredLinkService;
import com.yonde.dcs.document.feign.ExtDisReocredLinkFeignService;
import com.yonde.dcs.document.feign.ExtDistributeRecordFeignService;
import com.yonde.dex.dao.service.BaseIdEntityService;
import com.yonde.dex.logicdelete.plugin.core.service.LogicDeleteService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ExtDisReocredLinkServiceShadow<V extends ExtDisReocredLinkVO> extends ExtDisReocredLinkFeignService<V>, BaseIdEntityService<V> {
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtDistributeRecordVO;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.feign.ExtDistributeRecordFeignService;
import com.yonde.dcs.document.feign.ExtIncomeContractFeignService;
import com.yonde.dex.dao.service.BaseIdEntityService;
import com.yonde.dex.logicdelete.plugin.core.service.LogicDeleteService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ExtDistributeRecordServiceShadow<V extends ExtDistributeRecordVO> extends ExtDistributeRecordFeignService<V>, BaseIdEntityService<V>, LogicDeleteService<V> {
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.feign.ExtIncomeContractFeignService;
import com.yonde.dex.dao.service.BaseIdEntityService;
import com.yonde.dex.logicdelete.plugin.core.service.LogicDeleteService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ExtIncomeContractServiceShadow<V extends ExtIncomeContractVO> extends ExtIncomeContractFeignService<V>, BaseIdEntityService<V>, LogicDeleteService<V> {
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dcs.document.common.vo.ExtIncomeDetailVO;
import com.yonde.dcs.document.feign.ExtIncomeContractFeignService;
import com.yonde.dcs.document.feign.ExtIncomeDetailFeignService;
import com.yonde.dex.dao.service.BaseIdEntityService;
import com.yonde.dex.logicdelete.plugin.common.entity.DxLogicDeleteVOHolder;
import com.yonde.dex.logicdelete.plugin.core.service.LogicDeleteService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ExtIncomeDetailServiceShadow<V extends ExtIncomeDetailVO > extends ExtIncomeDetailFeignService<V>, BaseIdEntityService<V> {
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtOriginObjLinkVO;
import com.yonde.dex.dao.service.BaseIdEntityService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ExtOriginObjLinkServiceShadow<V extends ExtOriginObjLinkVO> extends BaseIdEntityService<V> {
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtUpgradeObjLinkVO;
import com.yonde.dex.dao.service.BaseIdEntityService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ExtUpgradeObjLinkServiceShadow<V extends ExtUpgradeObjLinkVO> extends BaseIdEntityService<V> {
}
package com.yonde.dcs.document.core.service.shadow;
import com.yonde.dcs.document.common.vo.ExtDisReocredLinkVO;
import com.yonde.dcs.document.common.vo.ObsoleteDocLinkVO;
import com.yonde.dcs.document.feign.ExtDisReocredLinkFeignService;
import com.yonde.dex.dao.service.BaseIdEntityService;
/**
* @description: ExtApplicant-repository
* @author: dexadmin
* @version: V
* @date: 2024-7-15 15:32:39
**/
public interface ObsoleteDocLinkServiceShadow<V extends ObsoleteDocLinkVO> extends BaseIdEntityService<V> {
}
package com.yonde.dcs.document.core.util;
import com.yonde.dex.bmodel.common.entity.vo.ModelDefinitionVO;
import com.yonde.dex.bmodel.sdk.service.ModelDefinitionService;
import com.yonde.dex.dao.service.util.ApplicationContextUtil;
import com.yonde.dex.dict.feign.DictService;
import com.yonde.dex.dict.service.vo.DictDataVO;
import org.elasticsearch.common.Strings;
import java.util.HashMap;
import java.util.LinkedHashMap;
......@@ -21,16 +18,16 @@ public class CommonUtil {
* @param subtypeName
* @return
*/
public static String getDisplayName(String subtypeName){
ModelDefinitionService modelDefinitionService = ApplicationContextUtil.getBean(ModelDefinitionService.class);
// SearchQueryCondition queryCondition = SearchQueryBuilder.openBuild()
// .openFilterBuilder()
// .setItem("name", SearchItem.Operator.EQ, subtypeName)
// .setItem("deleted", SearchItem.Operator.EQ, subtypeName)
// .builder().build();
ModelDefinitionVO modelByName = modelDefinitionService.findModelByName(subtypeName);
return modelByName.getDisplayName();
}
// public static String getDisplayName(String subtypeName){
// ModelDefinitionService modelDefinitionService = ApplicationContextUtil.getBean(ModelDefinitionService.class);
//// SearchQueryCondition queryCondition = SearchQueryBuilder.openBuild()
//// .openFilterBuilder()
//// .setItem("name", SearchItem.Operator.EQ, subtypeName)
//// .setItem("deleted", SearchItem.Operator.EQ, subtypeName)
//// .builder().build();
// ModelDefinitionVO modelByName = modelDefinitionService.findModelByName(subtypeName);
// return modelByName.getDisplayName();
// }
/**
......
......@@ -4,12 +4,14 @@ import cn.hutool.core.bean.BeanUtil;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.ExtObsoleteDocLinkVO;
import com.yonde.dcs.document.core.constants.Constants;
import com.yonde.dcs.document.core.service.ObsoleteDocLinkService;
import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.dao.service.util.DxPageUtils;
import com.yonde.dex.dfs.vo.ObjFileLinkVO;
import com.yonde.dex.dfs.vo.RepoFileVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
......@@ -75,8 +77,8 @@ public class ExtDocUtil {
* @param dxDocumentVo
* @return
*/
public PapersVO getPrimaryFile(DxDocumentVO dxDocumentVo) {
PapersVO fileVO = new PapersVO();
public RepoFileVO getPrimaryFile(DxDocumentVO dxDocumentVo) {
RepoFileVO fileVO = new RepoFileVO();
if (CollectionUtils.isNotEmpty(dxDocumentVo.getObjFileLinks())) {
fileVO = dxDocumentVo.getObjFileLinks().stream().filter(objFileLinkVO -> Constants.PDF_FILE.equals(objFileLinkVO.getContentType()))
.map(ObjFileLinkVO::getTarget).findFirst().orElse(null);
......@@ -90,8 +92,8 @@ public class ExtDocUtil {
* @param objFileLinks
* @return
*/
public PapersVO obtainPrimaryFile(List<ObjFileLinkVO> objFileLinks) {
PapersVO fileVO = null;
public RepoFileVO obtainPrimaryFile(List<ObjFileLinkVO> objFileLinks) {
RepoFileVO fileVO = null;
if (!CollectionUtils.isEmpty(objFileLinks)) {
fileVO = objFileLinks.stream().filter(objFileLinkVO -> Constants.MASTER_FILE.equals(objFileLinkVO.getContentType())).map(ObjFileLinkVO::getTarget)
.findFirst().orElse(null);
......
......@@ -3,6 +3,10 @@ package com.yonde.dcs.document.core.util;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.core.constants.SignConstants;
import com.yonde.dex.wfc.common.enums.TaskStateEnum;
import com.yonde.dex.wfc.common.vo.DxWfProcessSearchVO;
import com.yonde.dex.wfc.common.vo.DxWfProcessVO;
import com.yonde.dex.wfc.feign.api.WfcActivityFeign;
import com.yonde.dex.wfc.feign.api.WfcProcessFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.stereotype.Component;
......@@ -23,7 +27,7 @@ import java.util.stream.Collectors;
public class WorkFlowUtil {
@Autowired
private IInstanceService instanceService;
private WfcProcessFeign instanceService;
@Autowired
private IUserService userService;
......@@ -50,11 +54,11 @@ public class WorkFlowUtil {
* @param doc
* @return
*/
public WfProcessInstVO getWfProcessInst(DxDocumentVO doc) {
WfProcessInstSearchVO wfProcessInstSearchVO = new WfProcessInstSearchVO();
public DxWfProcessVO getWfProcessInst(DxDocumentVO doc) {
DxWfProcessSearchVO wfProcessInstSearchVO = new DxWfProcessSearchVO();
wfProcessInstSearchVO.setPboClass(DxDocumentVO.class.getName());
wfProcessInstSearchVO.setPboId(doc.getVersionId());
Page<WfProcessInstVO> wfProcessInstVOPage = this.instanceService.getProcessInstList(wfProcessInstSearchVO, 1, 10);
Page<DxWfProcessVO> wfProcessInstVOPage = this.instanceService.getProcessList(wfProcessInstSearchVO, 1, 10);
if (!CollectionUtils.isEmpty(wfProcessInstVOPage.getContent())) {
return wfProcessInstVOPage.getContent().get(0);
}
......
//package com.yonde.dcs.document.entity.po;
//
//import com.vladmihalcea.hibernate.type.json.JsonStringType;
//import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
//import com.yonde.dex.lcycle.baseentity.entity.LifecycleManageBaseEntity;
//import lombok.Data;
//import lombok.EqualsAndHashCode;
//import lombok.ToString;
//import org.hibernate.annotations.Type;
//import org.hibernate.annotations.TypeDef;
//
//import javax.persistence.Column;
//import javax.persistence.Entity;
//import javax.persistence.Table;
//import java.util.Map;
//
///**
// * @description:
// * @version: 0
// * @date: 2021-09-15 02:27:18
// **/
//@Entity
//@Table(name = "ECR")
//@TypeDef(name = "json", typeClass = JsonStringType.class)
//@Data
//@EqualsAndHashCode(callSuper = true)
//@ToString(callSuper = true)
//@DexDeleteOption(physicsDelete = true)
// TODO: 2024/8/1 4.1 LifecycleManageBaseEntity 这个类不存在
//public class ECR extends LifecycleManageBaseEntity<ECR> {
// /**
// * 原因说明
// */
// private String causeDescript;
//
// /**
// * 更改原因
// */
// private String changeReason;
//
//
// @Type(type = "json")
// @Column(columnDefinition = "json")
// private Map<String, Object> dynamicAttrs;
//
//
//}
//
//
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
import com.yonde.dex.basedata.data.expands.DxExpandPO;
import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteHolder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Map;
/**
* @author xfchai
* @description: 分发记录关联实体
* @version: 0
* @date: 2021-09-14 11:08:37
**/
@Entity
@Table(name = "EXT_DIS_REOCRED_LINK")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@DexDeleteOption(physicsDelete = true)
public class ExtDisReocredLink extends IdOnlyEntity implements IdEntity, DxLogicDeleteHolder {
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxObjFileLinkEmbeddable dxObjFileLinkEmbeddable;
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* DxObject
*/
private Long targetId;
/**
* 分发记录
*/
private Long sourceId;
/**
* targetId类型
*/
private String targetIdType;
/**
* sourceId类型
*/
private String sourceIdType;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteHolder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
import java.util.Map;
/**
* @author xfchai
* @description: 分发记录实体
* @version: 1
* @date: 2021-09-14 11:11:01
**/
@Entity
@Table(name = "EXT_DISTRIBUTE_RECORD")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@DexDeleteOption(physicsDelete = true)
public class ExtDistributeRecord extends IdOnlyEntity implements IdEntity, DxLogicDeleteHolder {
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxObjFileLinkEmbeddable dxObjFileLinkEmbeddable;
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 分发类型
*/
private String distributeType;
/**
* 操作时间
*/
private Date operationTime;
/**
* 工作说明
*/
private String workDesc;
/**
* 接收备注
*/
private String receiveRemark;
/**
* 完成接收任务时间
*/
private Date comReceiveTime;
/**
* 分发人
*/
private Long senderId;
/**
* 显示名称
*/
private String boTitle;
/**
* 是否处理
*/
private Boolean completed;
/**
* 截止时间
*/
private Date dueTime;
/**
* 分发单位
*/
private String distributDepart;
/**
* 分发时间
*/
private Date distributTime;
/**
* 操作人
*/
private Long handlerId;
/**
* 分发备注
*/
private String distributeRemark;
/**
* 分发是否需回复
*/
private String replyDistribute;
/**
* 要求回复日期
*/
private Date replyDate;
/**
* 接收单位
*/
private String receiver;
/**
* 接收任务类型
*/
private String receiveTaskType;
/**
* 接收时间
*/
private Date receiveTime;
/**
* 接收类型
*/
private String receiveType;
/**
* senderId类型
*/
private String senderIdType;
/**
* handlerId操作人类型
*/
private String handlerIdType;
/**
* 外单位(收)
*/
private String foreignUnitReceive;
/**
* 外单位(发)
*/
private String foreignUnitIssued;
/**
* 发送任务是否结束
*/
private Boolean sendFinish;
/**
* 分发编号
*/
private String disNumber;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
}
package com.yonde.dcs.document.entity.po;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkEmbeddable;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkHolder;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteHolder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;
/**
* @author xfchai
* @description: 收入合同实体
* @version: 1
* @date: 2021-09-03 03:41:00
**/
@Table(name = "EXT_INCOME_CONTRACT")
@Entity
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@Data
public class ExtIncomeContract extends IdOnlyEntity implements IdEntity, DxLogicDeleteHolder {
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxObjFileLinkEmbeddable dxObjFileLinkEmbeddable;
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 项目属性
*/
private String itemProperties;
/**
* 项目名称
*/
private String itemName;
/**
* 项目来源
*/
private String itemOrigin;
/**
* 合同编号
*/
private String contractNo;
/**
* 合同名称
*/
private String contractName;
/**
* 合同生效时间
*/
private Date startTime;
/**
* 合同结束时间
*/
private Date endTime;
/**
* 校内科研代码
*/
private String researchCode;
/**
* 校内财务代码
*/
private String financialCode;
/**
* 执行财务规定
*/
private String financialRegul;
/**
* 合同价款类型
*/
private String contractPriceType;
/**
* 合同额
*/
private BigDecimal contractPrice;
/**
* 审价额
*/
private BigDecimal trialPrice;
/**
* 项目编号
*/
private String itemNumber;
/**
* 合同经费构成
*/
private String contractfunding;
/**
* 支付时间
*/
private Date payTime;
/**
* 支付金额
*/
private BigDecimal payPrice;
/**
* 到款情况
*/
private String paymentSituat;
/**
* 票据开具情况
*/
private String billStatus;
/**
* 票据开具时间
*/
private Date issuanceTime;
/**
* 票据号码
*/
private String billNumber;
/**
* 票据类型
*/
private String billType;
/**
* 税率
*/
private String tariff;
/**
* 票据金额
*/
private BigDecimal billAmount;
/**
* 已到款
*/
private BigDecimal paid;
/**
* 待拨付
*/
private BigDecimal toBedisbursed;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
}
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.dfs.objfilelink.plugin.entities.DxObjFileLinkEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteHolder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;
/**
* @description: 收入明细
* @version: 1
* @date: 2022-02-24 02:58:51
**/
@Entity
@Table(name = "EXT_INCOME_DETAIL")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@DexDeleteOption(physicsDelete = true)
public class ExtIncomeDetail extends IdOnlyEntity implements IdEntity, DxLogicDeleteHolder {
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxObjFileLinkEmbeddable dxObjFileLinkEmbeddable;
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 收入合同
*/
private Long extIncomeContractId;
/**
* 支付进度安排时间
*/
private Date payTime;
/**
* 到款情况
*/
private String paySituation;
/**
* 票据开具
*/
private String billing;
/**
* 支付进度安排金额
*/
private BigDecimal payAmount;
/**
* 到账时间
*/
private Date arrivalTime;
/**
* extIncomeContractId类型
*/
private String extIncomeContractIdType;
/**
* 到账金额
*/
private BigDecimal amount;
/**
* 时间
*/
private Date incomeTime;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
}
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.linkdata.plugin.entities.DxLinkDataEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Map;
/**
* @description:
* @version: 0
* @date: 2021-09-24 03:02:10
**/
@Entity
@Table(name = "EXT_ORIGIN_OBJ_LINK")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@DexDeleteOption(physicsDelete = false)
public class ExtOriginObjLink extends IdOnlyEntity implements IdEntity {
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLinkDataEmbeddable dxLinkDataEmbeddable;
/**
* 更改请求
*/
private Long sourceId;
/**
* 版本基类
*/
private Long targetId;
/**
* sourceId类型
*/
private String sourceIdType;
/**
* targetId类型
*/
private String targetIdType;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.linkdata.plugin.entities.DxLinkDataEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Map;
/**
* @description:
* @version: 1
* @date: 2021-09-24 02:58:31
**/
@Entity
@Table(name = "EXT_UPGRADE_OBJ_LINK")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@DexDeleteOption(physicsDelete = false)
public class ExtUpgradeObjLink extends IdOnlyEntity implements IdEntity {
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLinkDataEmbeddable dxLinkDataEmbeddable;
/**
* 更改请求
*/
private Long sourceId;
/**
* 版本基类
*/
private Long targetId;
/**
* sourceId类型
*/
private String sourceIdType;
/**
* targetId类型
*/
private String targetIdType;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
import com.yonde.dex.basedata.entity.annotation.DexDeleteOption;
import com.yonde.dex.basedata.entity.annotation.DexEmbedded;
import com.yonde.dex.dao.entity.base.DxIdEntityEmbeddable;
import com.yonde.dex.dao.entity.base.IdEntity;
import com.yonde.dex.dao.entity.base.IdOnlyEntity;
import com.yonde.dex.linkdata.plugin.entities.DxLinkDataEmbeddable;
import com.yonde.dex.logicdelete.plugin.entities.DxLogicDeleteEmbeddable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.hibernate.annotations.Type;
import org.hibernate.annotations.TypeDef;
import javax.persistence.Column;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Map;
/**
* @description:
* @version: 0
* @date: 2021-09-27 10:48:22
**/
@Entity
@Table(name = "OBSOLETE_DOC_LINK")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@DexDeleteOption(physicsDelete = false)
public class ObsoleteDocLink extends IdOnlyEntity implements IdEntity {
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLinkDataEmbeddable dxLinkDataEmbeddable;
/**
* 文档
*/
private Long sourceId;
/**
* 文档
*/
private Long targetId;
/**
* sourceId类型
*/
private String sourceIdType;
/**
* targetId类型
*/
private String targetIdType;
@Type(type = "json")
@Column(columnDefinition = "json")
private Map<String, Object> dynamicAttrs;
/**
* 关联描述
*/
private String linkDescript;
}
......@@ -65,6 +65,10 @@
<artifactId>dex-basic-service-feign</artifactId>
<version>4.1-RELEASE</version>
</dependency>
<dependency>
<groupId>com.yonde.dcs</groupId>
<artifactId>dcs-doc-core</artifactId>
</dependency>
</dependencies>
</project>
package com.yonde.dcs.document.feign;
import com.yonde.dcs.document.common.vo.ExtDisReocredLinkVO;
import com.yonde.dcs.document.common.vo.ExtDistributeRecordVO;
import com.yonde.dex.dao.service.remotes.BaseFeign;
/**
* @author xfchai
* @description: 分发记录feign逻辑接口
* @version: 1
* @date: 2021-09-14 11:11:01
**/
public interface ExtDisReocredLinkFeignService<V extends ExtDisReocredLinkVO> extends BaseFeign<V> {
}
......@@ -2,12 +2,15 @@ package com.yonde.dcs.document.feign;
import com.yonde.dcs.document.common.vo.ExtIncomeContractVO;
import com.yonde.dex.dao.service.remotes.BaseFeign;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @description: ExtIncomeContractfeign逻辑接口
* @version: 1
* @date: 2021-09-03 03:41:00
**/
@Api(tags = "ExtIncomeContract-FEIGN")
@FeignClient(value = "${dcs.feign.DCS-DOC}", path = "/ExtIncomeContract")
public interface ExtIncomeContractFeignService<V extends ExtIncomeContractVO> extends BaseFeign<V> {
}
......@@ -45,6 +45,11 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
</dependency>
<!--限流熔断降级-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment