Commit cd6d2dcc authored by xuzhang's avatar xuzhang

feat[doc]代码迁移

parent 577557fd
...@@ -2,8 +2,11 @@ package com.yonde.dcs.document.core.events; ...@@ -2,8 +2,11 @@ package com.yonde.dcs.document.core.events;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSONObject;
import com.yonde.dcs.document.common.vo.DxDocumentVO; 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.constants.Constants;
import com.yonde.dcs.document.core.factory.TechnicalFileUtils;
import com.yonde.dcs.document.core.service.ExtDocService; import com.yonde.dcs.document.core.service.ExtDocService;
import com.yonde.dcs.document.core.util.ExtDocUtil; import com.yonde.dcs.document.core.util.ExtDocUtil;
import com.yonde.dcs.document.core.util.FileUtils; import com.yonde.dcs.document.core.util.FileUtils;
...@@ -15,12 +18,16 @@ import com.yonde.dex.dao.events.DxEvent; ...@@ -15,12 +18,16 @@ import com.yonde.dex.dao.events.DxEvent;
import com.yonde.dex.dao.events.DxEventListener; import com.yonde.dex.dao.events.DxEventListener;
import com.yonde.dex.dao.events.DxEventWrap; import com.yonde.dex.dao.events.DxEventWrap;
import com.yonde.dex.dfs.vo.ObjFileLinkVO; import com.yonde.dex.dfs.vo.ObjFileLinkVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
...@@ -130,7 +137,7 @@ public class DocBeforeCreateEvent { ...@@ -130,7 +137,7 @@ public class DocBeforeCreateEvent {
* @param documentVo * @param documentVo
* @param infoLinkVO 提资人信息 * @param infoLinkVO 提资人信息
*/ */
public void generateAutoInterFaceWord(DxDocumentVO documentVo, InterfaceInfoLinkVO infoLinkVO, WfProcessInfoVO wfProcessInfoVO) { public void generateAutoInterFaceWord(DxDocumentVO documentVo, ExtInterfaceInfoLinkVO infoLinkVO, WfProcessInfoVO wfProcessInfoVO) {
try { try {
String file = documentVo.getSubTypeName(); String file = documentVo.getSubTypeName();
String outWordFilePath = Constants.MERGER_FILE_ABSOLUTE_PATH + documentVo.getSubTypeName() + "\\" + documentVo.getNumber() + "\\" + Constants.MERGER_SOURCE + "\\"; String outWordFilePath = Constants.MERGER_FILE_ABSOLUTE_PATH + documentVo.getSubTypeName() + "\\" + documentVo.getNumber() + "\\" + Constants.MERGER_SOURCE + "\\";
......
...@@ -11,8 +11,12 @@ import com.inet.pdm.util.WorkFlowUtil; ...@@ -11,8 +11,12 @@ import com.inet.pdm.util.WorkFlowUtil;
import com.inet.pdm.word.ImportWordService; import com.inet.pdm.word.ImportWordService;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO; import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dcs.document.common.entity.vo.InterfaceInfoLinkVO; import com.yonde.dcs.document.common.entity.vo.InterfaceInfoLinkVO;
import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.core.constants.Constants;
import com.yonde.dcs.document.core.util.FileUtils;
import com.yonde.dex.wfc.common.vo.DxWfProcessInfoVO;
import com.yonde.dex.wfc.common.vo.WfProcessInfoVO; import com.yonde.dex.wfc.common.vo.WfProcessInfoVO;
import com.yonde.dex.wfc.common.vo.WfProcessInstVO; import com.yonde.dex.wfc.common.vo.DxWfProcessInstVO;
import com.yonde.dex.wfc.feign.api.DexWorkFlowService; import com.yonde.dex.wfc.feign.api.DexWorkFlowService;
import com.yonde.dex.wfc.spi.utils.SpringUtil; import com.yonde.dex.wfc.spi.utils.SpringUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -63,8 +67,8 @@ public class ProcessDataUtils { ...@@ -63,8 +67,8 @@ public class ProcessDataUtils {
*/ */
public void processData(DxDocumentVO documentVo) { public void processData(DxDocumentVO documentVo) {
String subTypeName = documentVo.getSubTypeName(); String subTypeName = documentVo.getSubTypeName();
WfProcessInstVO wfProcessInstVO = workFlowUtil.getWfProcessInst(documentVo); WfProcessInstVO DxWfProcessInstVO = workFlowUtil.getWfProcessInst(documentVo);
WfProcessInfoVO wfProcessInfoVO = dexWorkFlowService.getProcessInstDetailById(wfProcessInstVO.getId()); DxWfProcessInfoVO wfProcessInfoVO = dexWorkFlowService.getProcessInstDetailById(DxWfProcessInstVO.getId());
switch (subTypeName) { switch (subTypeName) {
case Constants.INTERNAL_INTERFACE: case Constants.INTERNAL_INTERFACE:
this.generateInterFaceWord(documentVo, new InterfaceInfoLinkVO(), wfProcessInfoVO); this.generateInterFaceWord(documentVo, new InterfaceInfoLinkVO(), wfProcessInfoVO);
......
...@@ -2,34 +2,24 @@ package com.yonde.dcs.document.core.factory; ...@@ -2,34 +2,24 @@ package com.yonde.dcs.document.core.factory;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.inet.pdm.constants.Constants; import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.inet.pdm.constants.DictConstants; import com.yonde.dcs.document.core.constants.Constants;
import com.inet.pdm.constants.SignConstants; import com.yonde.dcs.document.core.constants.DictConstants;
import com.inet.pdm.entity.excel.AuditPojo; import com.yonde.dcs.document.core.constants.SignConstants;
import com.inet.pdm.service.AuditRecordCardLinkService; import com.yonde.dcs.document.core.service.ExtAuditRecordCardLinkService;
import com.inet.pdm.service.ExtDocService; import com.yonde.dcs.document.core.service.ExtDocService;
import com.inet.pdm.signUtils.SignUtil; import com.yonde.dcs.document.core.util.ExtDocUtil;
import com.inet.pdm.util.*; import com.yonde.dcs.document.core.util.WorkFlowUtil;
import com.inet.pdm.word.ImportWordService; import com.yonde.dcs.document.core.word.ImportWordService;
import com.yonde.dcs.document.common.entity.vo.AtlasDrawingLinkVO; import com.yonde.dcs.document.entity.excel.AuditPojo;
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.dex.basedata.data.search.SearchItem; import com.yonde.dex.basedata.data.search.SearchItem;
import com.yonde.dex.basedata.data.search.SearchItems; import com.yonde.dex.basedata.data.search.SearchItems;
import com.yonde.dex.basedata.data.search.SearchQueryCondition; import com.yonde.dex.basedata.data.search.SearchQueryCondition;
import com.yonde.dex.basedata.entity.data.DxPageImpl; import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.dict.service.service.IDictDataService; import com.yonde.dex.dict.feign.DictDataFeignService;
import com.yonde.dex.dict.service.vo.DictDataVO; import com.yonde.dex.dict.service.vo.DictDataVO;
import com.yonde.dex.user.service.service.IOrganizationService; import com.yonde.dex.user.feign.DxUserInfoFeign;
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.common.enums.TaskStateEnum;
import com.yonde.dex.wfc.service.service.IInstanceService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
...@@ -67,15 +57,15 @@ public class TechnicalFileUtils { ...@@ -67,15 +57,15 @@ public class TechnicalFileUtils {
@Autowired @Autowired
private IOrganizationService organizationService; private IOrganizationService organizationService;
@Autowired @Autowired
private IUserService userService; private DxUserInfoFeign userService;
@Autowired @Autowired
private AuditRecordCardLinkService auditRecordCardLinkService; private ExtAuditRecordCardLinkService auditRecordCardLinkService;
@Autowired @Autowired
private ExtDocUtil extDocUtil; private ExtDocUtil extDocUtil;
@Autowired @Autowired
private WorkFlowUtil workFlowUtil; private WorkFlowUtil workFlowUtil;
@Autowired @Autowired
private IDictDataService dictDataService; private DictDataFeignService dictDataService;
/** /**
* 填充保密封皮数据 * 填充保密封皮数据
......
package com.yonde.dcs.document.core.repository; package com.yonde.dcs.document.core.repository;
import com.yonde.dcs.document.core.repository.shadow.ExtSendFormLinkRepositoryShadow;
import com.yonde.dcs.document.core.repository.shadow.ExtSerialNumberRepositoryShadow; import com.yonde.dcs.document.core.repository.shadow.ExtSerialNumberRepositoryShadow;
import com.yonde.dcs.document.entity.po.ExtSendFormLink; import com.yonde.dcs.document.entity.po.SerialNumber;
import com.yonde.dex.dao.business.repository.BaseRepository;
import sun.security.x509.SerialNumber;
/** /**
* @program: service * @program: service
......
package com.yonde.dcs.document.core.repository.shadow; package com.yonde.dcs.document.core.repository.shadow;
import com.yonde.dcs.document.entity.po.ExtSendFormLink; import com.yonde.dcs.document.entity.po.SerialNumber;
import com.yonde.dex.dao.business.repository.BaseRepository; import com.yonde.dex.dao.business.repository.BaseRepository;
import com.yonde.dex.linkdata.plugin.core.repository.DxLinkDataRepository;
import com.yonde.dex.logicdelete.plugin.core.repository.DxLogicDeleteRepository;
import org.springframework.data.repository.NoRepositoryBean; import org.springframework.data.repository.NoRepositoryBean;
import sun.security.x509.SerialNumber;
@NoRepositoryBean @NoRepositoryBean
public interface ExtSerialNumberRepositoryShadow<P extends SerialNumber> extends BaseRepository<P>{ public interface ExtSerialNumberRepositoryShadow<P extends SerialNumber> extends BaseRepository<P>{
String BEAN_NAME = "extSerialNumberRepository"; String BEAN_NAME = "extSerialNumberRepository";
......
...@@ -6,7 +6,7 @@ import com.yonde.dcs.document.common.vo.ExtSerialNumberVO; ...@@ -6,7 +6,7 @@ import com.yonde.dcs.document.common.vo.ExtSerialNumberVO;
import com.yonde.dcs.document.core.service.shadow.ExtSendFormLinkServiceShadow; import com.yonde.dcs.document.core.service.shadow.ExtSendFormLinkServiceShadow;
import com.yonde.dcs.document.core.service.shadow.ExtSerialNumberServiceShadow; import com.yonde.dcs.document.core.service.shadow.ExtSerialNumberServiceShadow;
import com.yonde.dex.dao.service.BaseIdEntityService; import com.yonde.dex.dao.service.BaseIdEntityService;
import sun.security.x509.SerialNumber; import com.yonde.dcs.document.entity.po.SerialNumber;
/** /**
* @program: service * @program: service
......
...@@ -221,7 +221,12 @@ public class ExtAutoTaskServiceImpl implements ExtAutoTaskService { ...@@ -221,7 +221,12 @@ public class ExtAutoTaskServiceImpl implements ExtAutoTaskService {
//得到souceId获取计划,更新计划状态 //得到souceId获取计划,更新计划状态
ExtPlanVO source = planDocLinkVO.getSource(); ExtPlanVO source = planDocLinkVO.getSource();
source.setTaskState(Constants.COMPLETED); source.setTaskState(Constants.COMPLETED);
extPlanService.saveAndChangeState(source); if (ObjectUtils.isEmpty(source.getId())){
extPlanService.save(source);
}else {
extPlanService.update(source);
}
} }
} }
documentVO.setState(state); documentVO.setState(state);
......
...@@ -2,15 +2,12 @@ package com.yonde.dcs.document.core.service.impl; ...@@ -2,15 +2,12 @@ package com.yonde.dcs.document.core.service.impl;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.yonde.dcs.document.common.vo.DxDocumentVO; import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dcs.document.common.vo.ExtSendFormLinkVO;
import com.yonde.dcs.document.common.vo.ExtSerialNumberVO; import com.yonde.dcs.document.common.vo.ExtSerialNumberVO;
import com.yonde.dcs.document.core.repository.ExtSerialNumberRepository; import com.yonde.dcs.document.core.repository.ExtSerialNumberRepository;
import com.yonde.dcs.document.core.service.ExtSendFormLinkService;
import com.yonde.dcs.document.core.service.ExtSerialNumberService; import com.yonde.dcs.document.core.service.ExtSerialNumberService;
import com.yonde.dex.dao.business.repository.BaseRepository;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import sun.security.x509.SerialNumber; import com.yonde.dcs.document.entity.po.SerialNumber;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
......
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;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
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();
}
/**
* 获取字典中文密级
*
* @param key
* @return
*/
public static String getSecretCode(String key) {
if (Strings.isEmpty(key)) {
return "";
}
DictService dictService = ApplicationContextUtil.getBean(DictService.class);
String secretKey = "SecretCode";
List<DictDataVO> dictData = dictService.getDictDatas(secretKey);
Map<String, String> dictMap = new HashMap<>();
for (DictDataVO dict : dictData) {
dictMap.put(dict.getDictKey(), dict.getDictValue());
}
return dictMap.get(key);
}
/**
* 获取字典中文值
*
* @param key
* @return
*/
public static String getCode(String key,String dictCode) {
if (Strings.isEmpty(key)) {
return "";
}
DictService dictService = ApplicationContextUtil.getBean(DictService.class);
String secretKey = dictCode;
List<DictDataVO> dictData = dictService.getDictDatas(secretKey);
Map<String, String> dictMap = new HashMap<>();
for (DictDataVO dict : dictData) {
dictMap.put(dict.getDictKey(), dict.getDictValue());
}
return dictMap.get(key);
}
/**
* 根据value升序排序
*
* @param aMap
* @param <K>
* @param <V>
* @return
*/
public static <K extends Comparable, V extends Comparable> LinkedHashMap<K, V> sortMapByValues(Map<K, V> aMap) {
LinkedHashMap<K, V> finalOut = new LinkedHashMap<>();
aMap.entrySet()
.stream()
.sorted((p1, p2) -> p1.getValue().compareTo(p2.getValue()))
.collect(Collectors.toList()).forEach(ele -> finalOut.put(ele.getKey(), ele.getValue()));
return finalOut;
}
/**
* 根据key降序排序
*
* @param aMap
* @param <K>
* @param <V>
* @return
*/
public static <K extends Comparable, V extends Comparable> LinkedHashMap<K, V> sortMapByKeys(Map<K, V> aMap) {
LinkedHashMap<K, V> finalOut = new LinkedHashMap<>();
aMap.entrySet()
.stream()
.sorted((p1, p2) -> p2.getKey().compareTo(p1.getKey()))
.collect(Collectors.toList()).forEach(ele -> finalOut.put(ele.getKey(), ele.getValue()));
return finalOut;
}
}
package com.yonde.dcs.document.core.util; package com.yonde.dcs.document.core.util;
import freemarker.core.XMLOutputFormat;
import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
......
package com.yonde.dcs.document.core.util; package com.yonde.dcs.document.core.util;
import com.inet.pdm.constants.SignConstants;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO; import com.yonde.dcs.document.common.vo.DxDocumentVO;
import com.yonde.dex.user.service.service.IUserService; import com.yonde.dcs.document.core.constants.SignConstants;
import com.yonde.dex.user.service.vo.UserVO; import com.yonde.dex.user.feign.DxUserInfoFeign;
import com.yonde.dex.version.common.entity.vo.DxIterationVO;
import com.yonde.dex.wfc.common.enums.TaskStateEnum; import com.yonde.dex.wfc.common.enums.TaskStateEnum;
import com.yonde.dex.wfc.service.service.IInstanceService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -29,7 +27,7 @@ public class WorkFlowUtil { ...@@ -29,7 +27,7 @@ public class WorkFlowUtil {
@Autowired @Autowired
private IInstanceService instanceService; private IInstanceService instanceService;
@Autowired @Autowired
private IUserService userService; private DxUserInfoFeign userService;
/** /**
* 获取流程实例 * 获取流程实例
......
package com.yonde.dcs.document.entity.po;
import com.vladmihalcea.hibernate.type.json.JsonStringType;
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.TypeDef;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* @program: service
* @description: 系统流水码实体类
* @author: dang wei
* @create: 2021-05-31 13:31
*/
@Entity
@Table(name = "SERIAL_NUMBER")
@TypeDef(name = "json", typeClass = JsonStringType.class)
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class SerialNumber extends IdOnlyEntity implements IdEntity{
/**
* dao扩展对象
*/
@DexEmbedded()
@Embedded()
private DxIdEntityEmbeddable dxIdEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLogicDeleteEmbeddable dxLogicDeleteEmbeddable;
/**
* 扩展PO属性
*/
@DexEmbedded()
@Embedded()
private DxLinkDataEmbeddable dxLinkDataEmbeddable;
private Long contextId;
private String oneLevCategory;
private String className;
private String subTypeName;
private Long maxNumber;
}
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