Commit 32d4db3e authored by 侯彦文's avatar 侯彦文

Merge remote-tracking branch 'origin/master'

parents 8475bf09 a48a6ab8
......@@ -13,16 +13,16 @@ import java.util.List;
public final class SignConstants {
//签名取值
public static final String SIGN_KEY_PREPARED = "编制";
public static final String SIGN_KEY_TSSH = "同室审核";
public static final String SIGN_KEY_FXTZSSH = "分系统总师审核";
public static final String SIGN_KEY_GY = "工艺";
public static final String SIGN_KEY_QF = "签发";
public static final String SIGN_KEY_ZTSSH = "总体室审核";
public static final String SIGN_KEY_APPROVED = "批准";
public static final String SIGN_KEY_STANDARD = "标准化";
public static final String SIGN_KEY_ZTS = "总体室";
public static final String SIGN_KEY_ZTSQS = "总体室签审";
public static final String SIGN_KEY_BZ = "编制";
public static final String SIGN_KEY_SJX_IN_COME_CONTRACT = "设计项";
public static final String SIGN_KEY_ZTS_IN_COME_CONTRACT = "总体室";
public static final String SIGN_KEY_ZBB_IN_COME_CONTRACT = "质保部";
public static final String SIGN_KEY_BMB_IN_COME_CONTRACT = "保密办";
public static final String SIGN_KEY_XMBU_IN_COME_CONTRACT = "项目部";
public static final String SIGN_KEY_XMBAN_IN_COME_CONTRACT = "项目办";
public static final String SIGN_KEY_CBBM_IN_COME_CONTRACT = "承办部门";
public static final String SIGN_KEY_XMZGYLD_IN_COME_CONTRACT = "项目主管院领导";
public static final String SIGN_KEY_TZSH = "提资审核";
public static final String SIGN_KEY_SH = "审核";
public static final String SIGN_KEY_CLJD = "编制不符合项处理单处理决定任务";
......@@ -70,10 +70,7 @@ public final class SignConstants {
* 定义流程判断节点常量
*/
public final static List WfResultList = Arrays.asList("通过", "同意", "提交签审", "提交审阅", "提交", "提交提资审阅", "不需要总体室会签", "外协采购单位(过工程部)", "设计协同单位及其他");
/**
* 定义总体室签审节点名称
*/
public final static List ZTSSignTaskList = Arrays.asList(SIGN_KEY_ZTS, SIGN_ZTS, SIGN_KEY_ZTSJKSC);
/**
* 定义流程路由常量
*/
......
......@@ -50,8 +50,8 @@ import com.yonde.dex.basedata.entity.users.DxUserVO;
@EqualsAndHashCode(callSuper = true)
@Data
@ToString(callSuper = true)
@DexTypeVersionProp(propName = "target", join = @VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.VERSION))
@DexTypeVersionProp(propName = "source", join = @VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.VERSION))
@DexTypeVersionProp(propName = "target", join = @VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.ITERATION))
@DexTypeVersionProp(propName = "source", join = @VersionProperty(curVersion = VersionRelationType.NONE, refVersion = VersionRelationType.ITERATION))
public class ExtICMPlanDocLinkVO extends IdOnlyVO implements IdVO ,DxLinkDataVOHolder<ExtICMExternalInterfacePlanVO, DxDocumentVO> ,DxLogicDeleteVOHolder{
public static final String DX_ID_EMBEDDABLE_PROP_NAME = "dxIdEmbeddable";
......
......@@ -91,7 +91,7 @@ public class ExtPuchasePlanExcelVO {
/**
* 计划编码
*/
@ExcelProperty(value = {"采购计划","计划编*"},index = 8)
@ExcelProperty(value = {"采购计划","计划编*"},index = 8)
@ColumnWidth(20)
private String planCode;
......@@ -99,23 +99,10 @@ public class ExtPuchasePlanExcelVO {
/**
* 备注
*/
@ExcelProperty(value = {"采购计划","备注*"},index = 9)
@ExcelProperty(value = {"采购计划","备注"},index = 9)
@ColumnWidth(20)
private String note;
public static void main(String[] args) {
List<ExtPuchasePlanExcelVO> list = new ArrayList<>();
for (int i=0;i<=1;i++){
ExtPuchasePlanExcelVO extPuchasePlanExcelVO = new ExtPuchasePlanExcelVO();
extPuchasePlanExcelVO.setNote("测试"+i);
list.add(extPuchasePlanExcelVO);
}
EasyExcel.write(
"F:\\yangyi\\项目\\清华核研院\\核研院设计文档及原型\\采购计划导入模板333.xlsx", ExtPuchasePlanExcelVO.class)
.sheet("采购计划").doWrite(list);
}
}
......@@ -64,7 +64,7 @@ public class ExtSupplierVO implements Serializable {
/**
* 资质内容
*/
@ExcelProperty("资质内容(承制资格证书)")
@ExcelProperty("资质内容(质量体系证书)")
private String qscQualificationsContent;
/**
......@@ -82,7 +82,7 @@ public class ExtSupplierVO implements Serializable {
/**
* 资质内容
*/
@ExcelProperty("资质内容(质量体系证书)")
@ExcelProperty("资质内容(承制资格证书)")
private String cqmQualificationsContent;
/**
......
......@@ -9,6 +9,7 @@ import com.yonde.dcs.plan.core.service.ExtExpenditureContractService;
import com.yonde.dcs.plan.core.word.ImportWordService;
import com.yonde.dex.wfc.common.vo.DxWfProcessInfoVO;
import com.yonde.dex.wfc.common.vo.DxWfProcessTaskVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
......@@ -22,6 +23,7 @@ import java.util.List;
* @createTime 2022/02/22 14:35:00
*/
@Component
@Slf4j
public class ExpenditureContractUtils {
@Autowired
......@@ -29,6 +31,7 @@ public class ExpenditureContractUtils {
@Autowired
private ImportWordService importWordService;
/**
* 填充评审会议资料数据
*
......@@ -48,24 +51,12 @@ public class ExpenditureContractUtils {
String designPhase = Objects.isNull(dynamicAttrs.get("designPhase")) ? "" : (String) dynamicAttrs.get("designPhase");*/
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(expenditureContractVO);
jsonObject.put("agree", "☑");
jsonObject.put("reject", "□");
//项目代号
/*String projectCode = ObjectUtils.isEmpty(v.getDxDocumentExpand().getProjectCode()) ? "" : v.getDxDocumentExpand().getProjectCode();
jsonObject.put("projectCode", extDocService.searchDictDataByDictCode(Constants.PROJECT_CODE, projectCode));
jsonObject.put("projectCode", projectCode);*/
//合同名称
//合同乙方
//合同编号
//合同金额
//合同密级
//合同乙方保密资质等级
//合同类型
//学校/院归口管理部门
//合同成果形式
//成果交付地点(样机存放地方)
//起止时间
//承办部门
//经办人
//
//页数
//jsonObject.put("pages",v.getDxDocumentExpand().getAttachPages());
......@@ -73,19 +64,12 @@ public class ExpenditureContractUtils {
List<DxWfProcessTaskVO> activities = wfProcessInfoVO.getHistoryInfo();
if (!CollectionUtils.isEmpty(activities)) {
//写入签名数据
jsonObject.put("bz_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("bz_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("bz_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("sh_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_SH));
jsonObject.put("sh_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_SH));
//总体室审核
jsonObject.put("zts_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_ZTSSH));
jsonObject.put("zts_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_ZTSSH));
jsonObject.put("zts_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("pz_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_APPROVED));
jsonObject.put("pz_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_APPROVED));
jsonObject.put("pz_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("bz_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_BZ));
jsonObject.put("bz_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_BZ));
jsonObject.put("bz_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_BZ));
}
log.info("ExpenditureContractUtils.settingDocData.jsonObject:{}", jsonObject.toString());
//模板名称
importWordService.getWordAllTable(jsonObject, path + file + ".docx", outFilePath + "outFile.docx");
return jsonObject;
......
......@@ -11,6 +11,7 @@ import com.yonde.dcs.plan.core.service.ExtExpenditureContractService;
import com.yonde.dcs.plan.core.word.ImportWordService;
import com.yonde.dex.wfc.common.vo.DxWfProcessInfoVO;
import com.yonde.dex.wfc.common.vo.DxWfProcessTaskVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
......@@ -27,6 +28,7 @@ import java.util.Objects;
* @createTime 2022/02/22 14:35:00
*/
@Component
@Slf4j
public class InComeContractUtils {
@Autowired
......@@ -47,47 +49,45 @@ public class InComeContractUtils {
+ "\\" + inComeContractVO.getNumber() + "\\";
//生成特定的文档目录,保存生成的word文件
FileUtil.mkdir(outFilePath);
//获取动态属性
/*Map<String, Object> dynamicAttrs = expenditureContractVO.getDynamicAttrs();
String content = Objects.isNull(dynamicAttrs.get("content")) ? "" : (String) dynamicAttrs.get("content");
String designPhase = Objects.isNull(dynamicAttrs.get("designPhase")) ? "" : (String) dynamicAttrs.get("designPhase");*/
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(inComeContractVO);
//项目代号
/*String projectCode = ObjectUtils.isEmpty(v.getDxDocumentExpand().getProjectCode()) ? "" : v.getDxDocumentExpand().getProjectCode();
jsonObject.put("projectCode", extDocService.searchDictDataByDictCode(Constants.PROJECT_CODE, projectCode));
jsonObject.put("projectCode", projectCode);*/
//合同名称
//合同乙方
//合同编号
//合同金额
//合同密级
//合同乙方保密资质等级
//合同类型
//学校/院归口管理部门
//合同成果形式
//成果交付地点(样机存放地方)
//起止时间
//承办部门
//经办人
//
//页数
//jsonObject.put("pages",v.getDxDocumentExpand().getAttachPages());
//获取参与者
List<DxWfProcessTaskVO> activities = wfProcessInfoVO.getHistoryInfo();
if (!CollectionUtils.isEmpty(activities)) {
//写入签名数据
jsonObject.put("bz_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("bz_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_PREPARED));
jsonObject.put("sh_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_SH));
jsonObject.put("sh_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_SH));
//总体室审核
jsonObject.put("zts_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_ZTSSH));
jsonObject.put("zts_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_ZTSSH));
jsonObject.put("pz_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_APPROVED));
jsonObject.put("pz_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_APPROVED));
jsonObject.put("sjxfzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_SJX_IN_COME_CONTRACT));
jsonObject.put("sjxfzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_SJX_IN_COME_CONTRACT));
jsonObject.put("sjxfzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_SJX_IN_COME_CONTRACT));
jsonObject.put("ztsfzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_ZTS_IN_COME_CONTRACT));
jsonObject.put("ztsfzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_ZTS_IN_COME_CONTRACT));
jsonObject.put("ztsfzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_ZTS_IN_COME_CONTRACT));
jsonObject.put("zbbfzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_ZBB_IN_COME_CONTRACT));
jsonObject.put("zbbfzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_ZBB_IN_COME_CONTRACT));
jsonObject.put("zbbfzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_ZBB_IN_COME_CONTRACT));
jsonObject.put("bmbfzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_BMB_IN_COME_CONTRACT));
jsonObject.put("bmbfzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_BMB_IN_COME_CONTRACT));
jsonObject.put("bmbfzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_BMB_IN_COME_CONTRACT));
jsonObject.put("xmbufzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_XMBU_IN_COME_CONTRACT));
jsonObject.put("xmbufzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_XMBU_IN_COME_CONTRACT));
jsonObject.put("xmbufzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_XMBU_IN_COME_CONTRACT));
jsonObject.put("xmbanfzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_XMBAN_IN_COME_CONTRACT));
jsonObject.put("xmbanfzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_XMBAN_IN_COME_CONTRACT));
jsonObject.put("xmbanfzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_XMBAN_IN_COME_CONTRACT));
jsonObject.put("cbbmfzr_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_CBBM_IN_COME_CONTRACT));
jsonObject.put("cbbmfzr_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_CBBM_IN_COME_CONTRACT));
jsonObject.put("cbbmfzr_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_CBBM_IN_COME_CONTRACT));
jsonObject.put("xmzgyld_photo", extExpenditureContractService.getSignImage(activities, SignConstants.SIGN_KEY_XMZGYLD_IN_COME_CONTRACT));
jsonObject.put("xmzgyld_date", extExpenditureContractService.getEndDate(activities, SignConstants.SIGN_KEY_XMZGYLD_IN_COME_CONTRACT));
jsonObject.put("xmzgyld_comments", extExpenditureContractService.getComments(activities, SignConstants.SIGN_KEY_XMZGYLD_IN_COME_CONTRACT));
}
log.info("InComeContractUtils.settingDocData.jsonObject:{}", jsonObject.toString());
//模板名称
importWordService.getWordAllTable(jsonObject, path + file + ".docx", outFilePath + "outFile.docx");
return jsonObject;
......
......@@ -190,8 +190,10 @@ public class ICMPlanExcelListenner extends AnalysisEventListener<ExtICMPlanExcel
SearchItems icmPlanSearch = new SearchItems();
SearchItem numberFilter = new SearchItem("planNumber", SearchItem.Operator.EQ, planNumber, (Object)null);
SearchItem latestFilter = new SearchItem("latest", SearchItem.Operator.EQ, true, (Object)null);
SearchItem projectIdFilter = new SearchItem("dxContextId", SearchItem.Operator.EQ, projectId, (Object)null);
icmPlanSearch.addItem(numberFilter);
icmPlanSearch.addItem(latestFilter);
icmPlanSearch.addItem(projectIdFilter);
SearchQueryCondition searchQuery = SearchQueryCondition.builder().searchItems(icmPlanSearch).sortItem(Lists.newArrayList(new SortItem[]{sortByModifyTime})).build();
//根据计划编码查询出最新版本的计划
DxPageImpl<ExtICMExternalInterfacePlanVO> ICMPlanPage = extICMExternalInterfacePlanService.findRecursion(searchQuery);
......
......@@ -15,6 +15,7 @@ import com.yonde.dcs.plan.common.vo.ExtPuchasePlanAttributeVO;
import com.yonde.dcs.plan.core.service.ExtIEDPlanDocLinkService;
import com.yonde.dcs.plan.core.service.ExtIEDPlanService;
import com.yonde.dcs.plan.core.util.CommonUtils;
import com.yonde.dcs.plan.core.util.UserUtils;
import com.yonde.dcs.plan.core.util.WorkFlowUtil;
import com.yonde.dcs.plan.entity.po.ExtIEDPlanDocLink;
import com.yonde.dex.basedata.data.search.SearchItem;
......@@ -25,6 +26,8 @@ import com.yonde.dex.basedata.entity.data.OperatorType;
import com.yonde.dex.basedata.exception.DxBusinessException;
import com.yonde.dex.dao.service.util.ApplicationContextUtil;
import com.yonde.dex.dao.service.util.DxPageUtils;
import com.yonde.dex.user.common.vo.DxUserInfoVO;
import com.yonde.dex.user.feign.DxUserInfoFeign;
import com.yonde.dex.wfc.common.vo.DxWfProcessVO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -47,6 +50,7 @@ public class IEDPlanExcelListenner extends AnalysisEventListener<ExtIEDPlanExcel
private ExtIEDPlanDocLinkService extIEDPlanDocLinkService;
private ExtDxDocumentServiceFeign extDxDocumentServiceFeign;
private WorkFlowUtil workFlowUtil;
private UserUtils userUtils;
/**
* 每隔100条处理下,然后清理list ,方便内存回收
*/
......@@ -85,6 +89,7 @@ public class IEDPlanExcelListenner extends AnalysisEventListener<ExtIEDPlanExcel
this.extIEDPlanDocLinkService = ApplicationContextUtil.getBean(ExtIEDPlanDocLinkService.class);
this.workFlowUtil = ApplicationContextUtil.getBean(WorkFlowUtil.class);
this.extDxDocumentServiceFeign = ApplicationContextUtil.getBean(ExtDxDocumentServiceFeign.class);
this.userUtils = ApplicationContextUtil.getBean(UserUtils.class);
this.projectId = projectId;
}
......@@ -182,23 +187,8 @@ public class IEDPlanExcelListenner extends AnalysisEventListener<ExtIEDPlanExcel
StringBuffer errorString = new StringBuffer();
//校验数据
if (!StringUtils.isEmpty(extIEDPlanExcelVO.getOperation()) && !StringUtils.isEmpty(extIEDPlanExcelVO.getFileNumber())) {
if (!operationList.contains(extIEDPlanExcelVO.getOperation())) {
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的操作符无法识别!!");
errorList.add(errorString);
return;
}
//文件代号不能为空
if(StringUtils.isEmpty(extIEDPlanExcelVO.getFileCode())){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的文件代号不能为空!!");
errorList.add(errorString);
return;
}
//管理系统编码不能为空
if(StringUtils.isEmpty(extIEDPlanExcelVO.getSystemNumber())){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的管理信息系统编码不能为空!!");
errorList.add(errorString);
return;
}
//校验excel必填字段是否有效
verifyExcelRequiredFields(extIEDPlanExcelVO,errorString);
//如果是新增,查看一下数据库中是不是已经存在
if (Constants.EXCEL_ADD.equals(extIEDPlanExcelVO.getOperation())) {
//文件编码、文件代号、管理系统编码只要有一个为删除存在就不能新增。
......@@ -207,7 +197,7 @@ public class IEDPlanExcelListenner extends AnalysisEventListener<ExtIEDPlanExcel
errorString.append("解析到数据第"+excelDataRow+"行,新增IED计划的文件编号、文件代号或者管理信息系统编码已存在,不能重复添加!");
errorList.add(errorString);
}
}else if (Constants.EXCEL_DELETE.equals(extIEDPlanExcelVO.getOperation())){//删除时校验
}else if (Constants.EXCEL_DELETE.equals(extIEDPlanExcelVO.getOperation())){
// ExtIEDPlanVO extIEDPlanVO = getIEDPlanByFileNumberAndDeleted(extIEDPlanExcelVO.getFileNumber(),true);
// if(!ObjectUtils.isEmpty(extIEDPlanVO)){
// errorString.append("解析到数据第"+excelDataRow+"行,删除IED计划的文件编号:" + extIEDPlanExcelVO.getFileNumber() + "未查到相关数据,删除失败!");
......@@ -436,4 +426,84 @@ public class IEDPlanExcelListenner extends AnalysisEventListener<ExtIEDPlanExcel
extDxDocumentServiceFeign.saveRecursion(dxDocumentVO);
}
/**
* 校验excel必填字段
* @param extIEDPlanExcelVO
* @param errorString
*/
public void verifyExcelRequiredFields(ExtIEDPlanExcelVO extIEDPlanExcelVO,StringBuffer errorString){
if (!operationList.contains(extIEDPlanExcelVO.getOperation())) {
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的操作符无法识别!!");
errorList.add(errorString);
return;
}
//文件代号不能为空
if(StringUtils.isEmpty(extIEDPlanExcelVO.getFileCode())){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的文件代号不能为空!!");
errorList.add(errorString);
return;
}
//管理系统编码不能为空
if(StringUtils.isEmpty(extIEDPlanExcelVO.getSystemNumber())){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的管理信息系统编码不能为空!!");
errorList.add(errorString);
return;
}
//文件提交时间不能为空
if(StringUtils.isEmpty(extIEDPlanExcelVO.getFileSubmitTime())){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的提交时间不能为空!!");
errorList.add(errorString);
return;
}
//编写者不能为空
if(StringUtils.isEmpty(extIEDPlanExcelVO.getEditor())){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的编写者不能为空!!");
errorList.add(errorString);
return;
}else {
DxUserInfoVO dxUserInfoVO= userUtils.getUserByName(extIEDPlanExcelVO.getEditor());
if(ObjectUtils.isEmpty(dxUserInfoVO)){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的编写者在系统中未查到!!");
errorList.add(errorString);
return;
}else {
extIEDPlanExcelVO.setEditor(String.valueOf(dxUserInfoVO.getId()));
}
}
//审核不是空,判断该用户是否存在,存在的话,将用户id保存
if(!StringUtils.isEmpty(extIEDPlanExcelVO.getAuditor())){
DxUserInfoVO dxUserInfoVO= userUtils.getUserByName(extIEDPlanExcelVO.getAuditor());
if(ObjectUtils.isEmpty(dxUserInfoVO)){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的审核者在系统中未查到!!");
errorList.add(errorString);
return;
}else {
extIEDPlanExcelVO.setAuditor(String.valueOf(dxUserInfoVO.getId()));
}
}
//审定不是空,判断该用户是否存在,存在的话,将用户id保存
if(!StringUtils.isEmpty(extIEDPlanExcelVO.getInvestigator())){
DxUserInfoVO dxUserInfoVO= userUtils.getUserByName(extIEDPlanExcelVO.getInvestigator());
if(ObjectUtils.isEmpty(dxUserInfoVO)){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的审定者在系统中未查到!!");
errorList.add(errorString);
return;
}else {
extIEDPlanExcelVO.setInvestigator(String.valueOf(dxUserInfoVO.getId()));
}
}
//批准不是空,判断该用户是否存在,存在的话,将用户id保存
if(!StringUtils.isEmpty(extIEDPlanExcelVO.getRatifier())){
DxUserInfoVO dxUserInfoVO= userUtils.getUserByName(extIEDPlanExcelVO.getRatifier());
if(ObjectUtils.isEmpty(dxUserInfoVO)){
errorString.append("解析到数据第"+excelDataRow+"行文件编号为:" + extIEDPlanExcelVO.getFileNumber() + "的审定者在系统中未查到!!");
errorList.add(errorString);
return;
}else {
extIEDPlanExcelVO.setRatifier(String.valueOf(dxUserInfoVO.getId()));
}
}
}
}
......@@ -29,6 +29,8 @@ import org.springframework.util.ObjectUtils;
import javax.servlet.ServletContextListener;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@Component
@Slf4j
......@@ -43,6 +45,11 @@ public class PurchasePlanExcelReadListenner extends AnalysisEventListener<ExtPuc
private String projectId;
/**
* 密级列别
*/
private Map<Integer,String> securityList = new ConcurrentHashMap();
/**
* excel数据行数
*/
......
......@@ -74,6 +74,7 @@ public class ExtIEDPlanServiceImpl<V extends ExtIEDPlanVO> implements ExtIEDPlan
@Autowired
private ExtIEDPlanDocLinkService extIEDPlanDocLinkService;
@Override
public String importIEDPlan(InputStream inputStream, String projectId) {
EasyExcel.read(inputStream, ExtIEDPlanExcelVO.class,
......@@ -201,6 +202,8 @@ public class ExtIEDPlanServiceImpl<V extends ExtIEDPlanVO> implements ExtIEDPlan
dynamicAttrs.put("systemCode", extIEDPlanVO.getSystemNumber());
//阶段
dynamicAttrs.put("phase", extIEDPlanVO.getPhase());
//编写者
dynamicAttrs.put("editor", extIEDPlanVO.getEditor());
//设置动态属性
dxDocumentVO.setDynamicAttrs(dynamicAttrs);
//设备号
......@@ -208,6 +211,8 @@ public class ExtIEDPlanServiceImpl<V extends ExtIEDPlanVO> implements ExtIEDPlan
//创建时间
dxDocumentVO.setCreateTime(LocalDateTime.now());
//设置扩展属性
//项目代号
//todo wq项目代号暂时还未取到
dxDocumentVO.setDxDocumentExpand(dxDocumentExpand);
dxDocumentVO.setOperator(OperatorType.ADD);
DxDocumentVO dxDocumentVOForDB = extDxDocumentServiceFeign.saveRecursion(dxDocumentVO);
......@@ -259,7 +264,6 @@ public class ExtIEDPlanServiceImpl<V extends ExtIEDPlanVO> implements ExtIEDPlan
return ApiResult.SUCCESS;
}
}
......@@ -159,7 +159,7 @@ public class ExtSupplierManageServiceImpl<V extends ExtSupplierManageVO> impleme
throw new DxBusinessException("500", "获取不到对象");
}
if (!extSupplierManageVO.getState().equals(Constants.RELEASE)) {
throw new DxBusinessException("500", "该对象不是编制状态");
throw new DxBusinessException("500", "该对象不是已发布状态");
}
return this.changeStatus(extSupplierManageVO.getId(), Constants.CONTEXT_DISABLE, true);
}
......@@ -179,7 +179,9 @@ public class ExtSupplierManageServiceImpl<V extends ExtSupplierManageVO> impleme
BeanUtils.copyProperties(extSupplierManageVO, extSupplierVO);
DictDataVO supplierType = supplierTypeMap.get(extSupplierManageVO.getSupplierType());
extSupplierVO.setSupplierType(supplierType.getDictValue());
for (ExtSupplierManageLinkVO extSupplierManageLink : extSupplierManageVO.getExtSupplierManageLinks()) {
List<ExtSupplierManageLinkVO> extSupplierManageLinks = extSupplierManageVO.getExtSupplierManageLinks();
if (CollectionUtils.isNotEmpty(extSupplierManageLinks)) {
for (ExtSupplierManageLinkVO extSupplierManageLink : extSupplierManageLinks) {
ExtQualificationsVO target = extSupplierManageLink.getTarget();
String qualificationsContent = target.getQualificationsContent();
String certificateNumber = target.getCertificateNumber();
......@@ -211,6 +213,7 @@ public class ExtSupplierManageServiceImpl<V extends ExtSupplierManageVO> impleme
break;
}
}
}
list.add(extSupplierVO);
}
return list;
......
package com.yonde.dcs.plan.core.util;
import com.yonde.dex.user.common.vo.DxUserInfoVO;
import com.yonde.dex.user.feign.DxUserInfoFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 用户信息工具类
*/
@Component
public class UserUtils {
@Autowired
private DxUserInfoFeign dxUserInfoFeign;
public DxUserInfoVO getUserByName(String name){
return dxUserInfoFeign.getUserByName(name);
}
}
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