Merge remote-tracking branch 'origin/fix_bug_first_stage' into fix_bug_first_stage

This commit is contained in:
zer0Black
2022-06-30 22:38:57 +08:00
63 changed files with 1053 additions and 476 deletions
@@ -4974,9 +4974,20 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
File saveDirectory,
String cut) {
//树形数据字典
List<String> treeNameList = categoryList.stream().map(SysCategory::getName).collect(Collectors.toList());
List<String> treeNameList = new ArrayList<>();
if(CutEnum.CN.getValue().equals(cut)){
treeNameList = categoryList.stream().map(SysCategory::getName).collect(Collectors.toList());
}else{
treeNameList = categoryList.stream().map(SysCategory::getEnName).collect(Collectors.toList());
}
//普通数据字典
List<String> itemNameList = dictItemList.stream().map(SysDictItem::getItemText).collect(Collectors.toList());
List<String> itemNameList = new ArrayList<>();
if(CutEnum.CN.getValue().equals(cut)){
itemNameList = dictItemList.stream().map(SysDictItem::getItemText).collect(Collectors.toList());
}else{
itemNameList = dictItemList.stream().map(SysDictItem::getEnName).collect(Collectors.toList());
}
int i = 2;
List<String> msgList = new ArrayList<>();
List<Map<String, Object>> mapList = new ArrayList<>();
@@ -5074,11 +5085,18 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
if (StringUtils.isNotBlank(value)) {
for (String valueTemp : value.split(",")) {
if (treeNameList.contains(valueTemp)) {
List<SysCategory> collect = categoryList.stream().filter(e -> e.getName().equals(valueTemp)).collect(Collectors.toList());
valueId += collect.get(0).getId();
List<SysCategory> collect = new ArrayList<>();
if(CutEnum.CN.getValue().equals(cut)){
collect = categoryList.stream().filter(e -> e.getName().equals(valueTemp)).collect(Collectors.toList());
}else{
collect = categoryList.stream().filter(e -> e.getEnName().equals(valueTemp)).collect(Collectors.toList());
}
valueId += collect.get(0).getId()+",";
}
}
value = valueId;
if(StringUtils.isNotBlank(valueId)){
value = valueId.substring(0, valueId.length() - 1);
}
}
} else if (FieldTypeEnum.TEXT_STRING.getValue().equals(fieldShowType)) {
@@ -5150,7 +5168,12 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//文字转数据字典编码
if (itemNameList.contains(value)) {
String finalValue = value;
List<SysDictItem> collect = dictItemList.stream().filter(e -> StringUtils.isNotBlank(e.getItemText()) && e.getItemText().equals(finalValue)).collect(Collectors.toList());
List<SysDictItem> collect = new ArrayList<>();
if(CutEnum.CN.getValue().equals(cut)){
collect = dictItemList.stream().filter(e -> StringUtils.isNotBlank(e.getItemText()) && e.getItemText().equals(finalValue)).collect(Collectors.toList());
}else{
collect = dictItemList.stream().filter(e -> StringUtils.isNotBlank(e.getEnName()) && e.getEnName().equals(finalValue)).collect(Collectors.toList());
}
if (collect.size() != 0) {
value = collect.get(0).getItemValue();
}
@@ -5193,7 +5216,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
if (StringUtils.isNotBlank(value)) {
for (String valueTemp : value.split(",")) {
if (itemNameList.contains(valueTemp)) {
List<SysDictItem> collect = dictItemList.stream().filter(e -> StringUtils.isNotBlank(e.getItemText()) && e.getItemText().equals(valueTemp)).collect(Collectors.toList());
List<SysDictItem> collect = new ArrayList<>();
if(CutEnum.CN.getValue().equals(cut)){
collect = dictItemList.stream().filter(e -> StringUtils.isNotBlank(e.getItemText()) && e.getItemText().equals(valueTemp)).collect(Collectors.toList());
}else{
collect = dictItemList.stream().filter(e -> StringUtils.isNotBlank(e.getEnName()) && e.getEnName().equals(valueTemp)).collect(Collectors.toList());
}
valueId += collect.get(0).getItemValue() + ",";
}
}
@@ -201,6 +201,10 @@ public class DummyInventoryInfoEO implements Serializable {
@Dict(dicCode ="ze2_ren4_ren2")
private java.lang.String designDuty;
//交付物说明
@Excel(name = "设计符合性确认-交付物说明", width = 20)
private String designRemark;
/**prehomo确认-交付物类型*/
@Excel(name = "Prehomo-交付物类型", width = 15,dicCode ="deliverable_template")
@ApiModelProperty(value = "prehomo确认-交付物类型")
@@ -209,6 +213,7 @@ public class DummyInventoryInfoEO implements Serializable {
@TableField(exist = false)
private java.lang.String prehomoDeliverableTypeName;
/**prehomo确认-交付物模板*/
@ApiModelProperty(value = "prehomo确认-交付物模板")
@@ -230,6 +235,10 @@ public class DummyInventoryInfoEO implements Serializable {
@Dict(dicCode ="ze2_ren4_ren2")
private java.lang.String prehomoDuty;
//prehomo确认-交付物说明
@Excel(name = "prehomo确认-交付物说明", width = 20)
private String prehomoRemark;
/**验证符合性确认-交付物类型*/
@Excel(name = "验证-交付物类型", width = 15,dicCode ="deliverable_template")
@ApiModelProperty(value = "验证符合性确认-交付物类型")
@@ -259,6 +268,10 @@ public class DummyInventoryInfoEO implements Serializable {
@Dict(dicCode ="ze2_ren4_ren2")
private java.lang.String verifyDuty;
//验证备注
@Excel(name = "验证符合性确认-交付物说明", width = 20)
private String verifyRemark;
@TableField(exist = false)
private String cut;
@@ -273,4 +286,9 @@ public class DummyInventoryInfoEO implements Serializable {
}
@@ -82,11 +82,11 @@ public class DummyInventoryInfoEOEn implements Serializable {
/**适用地区*/
@ApiModelProperty(value = "适用地区")
@Dict(dicCode ="region")
@Excel(name = "Area", width = 15, dicCode = "region")
@Excel(name = "Area", width = 15)
private String region;
/**适用范围*/
@Excel(name = "Scope of application", width = 15, dicCode = "apply_scope")
@Excel(name = "Scope of application", width = 30, dicCode = "apply_scope")
@ApiModelProperty(value = "适用范围")
@Dict(dicCode ="apply_scope")
private String shi4Yong4Fan4Wei2;
@@ -111,7 +111,7 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String implementType;
/**新车型实施日期*/
@Excel(name = "New Type Execute Date", width = 15,format = "yyyy-MM-dd")
@Excel(name = "New Type Execute Date", width = 30,format = "yyyy-MM-dd")
@ApiModelProperty(value = "新车型实施日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@@ -120,7 +120,7 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String xin1Che1Xing2Shi2Shi1Ri4Qi1String;
/**在产车实施日期*/
@Excel(name = "New Vehicle Execute Date", width = 15,format = "yyyy-MM-dd")
@Excel(name = "New Vehicle Execute Date", width = 30,format = "yyyy-MM-dd")
@ApiModelProperty(value = "在产车实施日期")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@@ -134,25 +134,25 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String wvtaId;
/**认证类型*/
@Excel(name = "Certification Type", width = 15,dicCode ="attestation_type")
@Excel(name = "Certification Type", width = 30,dicCode ="attestation_type")
@ApiModelProperty(value = "认证类型")
@Dict(dicCode ="attestation_type")
private String attestationType;
/**认证级别*/
@Excel(name = "Certification Level", width = 15,dicCode ="attestation_rank")
@Excel(name = "Certification Level", width = 30,dicCode ="attestation_rank")
@ApiModelProperty(value = "认证级别")
@Dict(dicCode ="attestation_rank")
private String attestationRank;
/**适用增补件*/
@ApiModelProperty(value = "适用增补件")
@Excel(name = "Applicable Supplement", width = 15)
@Excel(name = "Applicable Supplement", width = 30)
private String applicableSupplement;
/**技术领域*/
@Excel(name = "Technical Field", width = 15)
@Excel(name = "Technical Field", width = 30)
@ApiModelProperty(value = "技术领域")
private String technologyTerritory;
@@ -160,7 +160,7 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String technologyTerritoryName;
/**责任领域*/
@Excel(name = "Responsible Field", width = 15,dicCode ="duty_territory")
@Excel(name = "Responsible Field", width = 30,dicCode ="duty_territory")
@ApiModelProperty(value = "责任领域")
@Dict(dicCode ="duty_territory")
private String dutyTerritory;
@@ -171,7 +171,7 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String remark;
/**设计符合性确认-交付物类型*/
@Excel(name = "Design-Deliverables", width = 15,dicCode ="deliverable_template")
@Excel(name = "Design Deliverables", width = 30,dicCode ="deliverable_template")
@ApiModelProperty(value = "设计符合性确认-交付物类型")
@Dict(dicCode ="deliverable_template")
private String designDeliverableType;
@@ -182,23 +182,28 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String designDeliverableTemplate;
@TableField(exist = false)
@Excel(name = "Design-Deliverable Template", width = 15)
@Excel(name = "Design Deliverable Template", width = 30)
private String designDeliverableTemplateName;
/**设计符合性确认-发起人*/
@Excel(name = "Design-Initiator", width = 15)
@Excel(name = "Design Initiator", width = 30)
@ApiModelProperty(value = "设计符合性确认-发起人")
@Dict(dicCode ="fa1_qi3_ren2")
private String designInitiator;
/**设计符合性确认-责任人*/
@Excel(name = "Design-Assignee", width = 15)
@Excel(name = "Design Assignee", width = 30)
@ApiModelProperty(value = "设计符合性确认-责任人")
@Dict(dicCode ="ze2_ren4_ren2")
private String designDuty;
//交付物说明
@Excel(name = "Design Compliance Check Deliverable Description", width = 50)
private String designRemark;
/**prehomo确认-交付物类型*/
@Excel(name = "Prehomo-Deliverables", width = 15,dicCode ="deliverable_template")
@Excel(name = "Prehomo Deliverables", width = 30,dicCode ="deliverable_template")
@ApiModelProperty(value = "prehomo确认-交付物类型")
@Dict(dicCode ="deliverable_template")
private String prehomoDeliverableType;
@@ -209,23 +214,27 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String prehomoDeliverableTemplate;
@TableField(exist = false)
@Excel(name = "Prehomo-Deliverable Template", width = 15)
@Excel(name = "Prehomo Deliverable Template", width = 30)
private String prehomoDeliverableTemplateName;
/**prehomo确认-发起人*/
@Excel(name = "Prehomo-Initiator", width = 15)
@Excel(name = "Prehomo Initiator", width = 30)
@ApiModelProperty(value = "prehomo确认-发起人")
@Dict(dicCode ="fa1_qi3_ren2")
private String prehomoInitiator;
/**prehomo确认-责任人*/
@Excel(name = "Prehomo-Assignee", width = 15)
@Excel(name = "Prehomo Assignee", width = 30)
@ApiModelProperty(value = "prehomo确认-责任人")
@Dict(dicCode ="ze2_ren4_ren2")
private String prehomoDuty;
//prehomo确认-交付物说明
@Excel(name = "Prehomo Check Deliverable Description", width = 50)
private String prehomoRemark;
/**验证符合性确认-交付物类型*/
@Excel(name = "Verify-Deliverables", width = 15,dicCode ="deliverable_template")
@Excel(name = "Verify Deliverables", width = 30,dicCode ="deliverable_template")
@ApiModelProperty(value = "验证符合性确认-交付物类型")
@Dict(dicCode ="deliverable_template")
private String verifyDeliverableType;
@@ -235,21 +244,25 @@ public class DummyInventoryInfoEOEn implements Serializable {
private String verifyDeliverableTemplate;
@TableField(exist = false)
@Excel(name = "Verify-Deliverable Template", width = 15)
@Excel(name = "Verify Deliverable Template", width = 30)
private String verifyDeliverableTemplateName;
/**验证符合性确认-发起人*/
@Excel(name = "Verify-Initiator", width = 15)
@Excel(name = "Verify Initiator", width = 30)
@ApiModelProperty(value = "验证符合性确认-发起人")
@Dict(dicCode ="fa1_qi3_ren2")
private String verifyInitiator;
/**验证符合性确认-责任人*/
@Excel(name = "Verify-Assignee", width = 15)
@Excel(name = "Verify Assignee", width = 30)
@ApiModelProperty(value = "验证符合性确认-责任人")
@Dict(dicCode ="ze2_ren4_ren2")
private String verifyDuty;
///验证-交付物说明
@Excel(name = "Validation Compliance Check Deliverable Description", width = 60)
private String verifyRemark;
@TableField(exist = false)
private String cut;
@@ -264,4 +277,9 @@ public class DummyInventoryInfoEOEn implements Serializable {
}
@@ -30,7 +30,6 @@
<result column="design_duty" property="designDuty" />
<result column="prehomo_deliverable_type" property="prehomoDeliverableType" />
<result column="prehomo_deliverable_template" property="prehomoDeliverableTemplate" />
<result column="prehomo_initiator" property="prehomoInitiator" />
<result column="prehomo_duty" property="prehomoDuty" />
<result column="verify_deliverable_type" property="verifyDeliverableType" />
<result column="verify_deliverable_template" property="verifyDeliverableTemplate" />
@@ -38,5 +37,8 @@
<result column="verify_duty" property="verifyDuty" />
<result column="region" property="region" />
<result column="applicable_supplement" property="applicableSupplement" />
<result column="verify_remark" property="verifyRemark" />
<result column="prehomo_remark" property="prehomoRemark" />
<result column="design_remark" property="designRemark" />
</resultMap>
</mapper>
@@ -653,16 +653,18 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
"*认证级别," +"适用增补件,"+
"*责任领域,备注," +
"设计符合性确认,Pre-homo确认,验证符合性确认";
titleTwo = "交付物类型,交付物模板,发起人,责任人,交付物类型,交付物模板,发起人,责任人,交付物类型,交付物模板,发起人,责任人";
titleTwo = "交付物类型,交付物模板,发起人,责任人,交付物说明," +
"交付物类型,交付物模板,发起人,责任人,交付物说明," +
"交付物类型,交付物模板,发起人,责任人,交付物说明";
}else{
titleOne = "*Number,Sub-Title,Usage," +
"WVTA ID,Certification Type," +
"*Certification Level," +"Applicable Supplement,"+
"*Responsible Field,Comments," +
"design compliance check,pre-homo check,validation compliance chech";
titleTwo = "type of deliverables,deliverable template,initiator,person liable," +
"type of deliverables,deliverable template,initiator,person liable," +
"type of deliverables,deliverable template,initiator,person liable";
"Design compliance check,Pre-homo check,Validation compliance chech";
titleTwo = "Type of deliverables,Deliverable template,Initiator,Person liable,Deliverables description," +
"Type of deliverables,Deliverable template,Initiator,Person liable,Deliverables description," +
"Type of deliverables,Deliverable template,Initiator,Person liable,Deliverables description";
}
@@ -694,7 +696,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
int count = 1;
int startLine = 0;
int endLine = 0;
int line = 3;
int line = 4;
for (int i = 0; i < index; i++) {
//合并单元格
CellRangeAddress region1 =
@@ -716,7 +718,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
count ++;
}
CellRangeAddress region =
new CellRangeAddress(2, 2, 0, 20); //参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列
new CellRangeAddress(2, 2, 0, 23); //参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列
sheet.addMergedRegion(region);
String explain= "";
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
@@ -751,7 +753,7 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
row.createCell(lineTemp).setCellValue(headerArr[m]);
Cell cell = row.getCell(lineTemp);
cell.setCellStyle(cellStyle);
lineTemp = lineTemp + 4;
lineTemp = lineTemp + 5;
}
}
@@ -916,15 +918,17 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
String title = "";
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
title = "*编号,子标题,实施类别,WVTA ID,认证类型,*认证级别,适用增补件,*责任领域,备注," +
"设计交付物类型,设计交付物模板,设计发起人,设计责任人,pre交付物类型,pre交付物模板,pre发起人,pre责任人,验证交付物类型,验证交付物模板,验证发起人,验证责任人";
"设计交付物类型,设计交付物模板,设计发起人,设计责任人,设计交付物说明," +
"Pre交付物类型,Pre交付物模板,Pre发起人,Pre责任人,Pre交付物说明," +
"验证交付物类型,验证交付物模板,验证发起人,验证责任人,验证交付物说明";
}else{
title = "*Number,Sub-Title,Usage," +
"WVTA ID,Certification Type," +
"*Certification Level," +"Applicable Supplement,"+
"*Responsible Field,Comments," +
"design type of deliverables,design deliverable template,design initiator,design person liable," +
"pre type of deliverables,pre deliverable template,pre initiator,pre person liable," +
"verify type of deliverables,verify deliverable template,verify initiator,verify person liable";
"Design Type of deliverables,Design Deliverable template,Design Initiator,Design Person liable,Design Deliverables description," +
"Pre Type of deliverables,Pre Deliverable template,Pre Initiator,Pre Person liable,Pre Deliverables description," +
"Verify Type of deliverables,Verify Deliverable template,Verify Initiator,Verify Person liable,Verify Deliverables description";
}
int pos = file.getOriginalFilename().lastIndexOf(".");
@@ -1046,27 +1050,27 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}else if(i == 1){
if(j > 8){
String flag = "";
if(8 < j && j < 13){
if(8 < j && j < 14){
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
flag ="设计";
}else{
flag ="design ";
flag ="Design ";
}
key = flag + headerCell.getStringCellValue();
}
if(12 < j && j < 17){
if(13 < j && j < 19){
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
flag ="pre";
flag ="Pre";
}else{
flag ="pre ";
flag ="Pre ";
}
key = flag + headerCell.getStringCellValue();
}
if(16 < j && j < 21){
if(18 < j && j < 24){
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
flag ="验证";
}else{
flag ="verify ";
flag ="Verify ";
}
key = flag + headerCell.getStringCellValue();
@@ -1469,10 +1473,12 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
//存在文档库没有的数据
List<String> collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
List<String> serialNumbers = serialNumberS.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList());
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
if(serialNumbers.size() != 0){
if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){
throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加");
}else{
throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added");
}
}
}
if(dummyInventoryInfoEOList.size() > 0){
@@ -1718,18 +1724,21 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
case "设计交付物模板": return "designDeliverableTemplate";
case "设计发起人": return "designInitiator";
case "设计责任人": return "designDuty";
case "pre交付物类型": return "prehomoDeliverableType";
case "pre交付物模板": return "prehomoDeliverableTemplate";
case "pre发起人": return "prehomoInitiator";
case "pre责任人": return "prehomoDuty";
case "设计交付物说明": return "designRemark";
case "Pre交付物类型": return "prehomoDeliverableType";
case "Pre交付物模板": return "prehomoDeliverableTemplate";
case "Pre发起人": return "prehomoInitiator";
case "Pre责任人": return "prehomoDuty";
case "Pre交付物说明": return "prehomoRemark";
case "验证交付物类型": return "verifyDeliverableType";
case "验证交付物模板": return "verifyDeliverableTemplate";
case "验证发起人": return "verifyInitiator";
case "验证责任人": return "verifyDuty";
case "验证交付物说明": return "verifyRemark";
case "*Number": return "serialNumber";
case "title": return "title";
case "Title": return "title";
case "Sub-Title": return "subtitle";
// case "适用范围": return "shi4Yong4Fan4Wei2";
// case "状态": return "state";
@@ -1745,18 +1754,21 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
case "*Responsible Field": return "dutyTerritory";
// case "适用地区": return "region";
case "Comments": return "remark";
case "design type of deliverables": return "designDeliverableType";
case "design deliverable template": return "designDeliverableTemplate";
case "design initiator": return "designInitiator";
case "design person liable": return "designDuty";
case "pre type of deliverables": return "prehomoDeliverableType";
case "pre deliverable template": return "prehomoDeliverableTemplate";
case "pre initiator": return "prehomoInitiator";
case "pre person liable": return "prehomoDuty";
case "verify type of deliverables": return "verifyDeliverableType";
case "verify deliverable template": return "verifyDeliverableTemplate";
case "verify initiator": return "verifyInitiator";
case "verify person liable": return "verifyDuty";
case "Design Type of deliverables": return "designDeliverableType";
case "Design Deliverable template": return "designDeliverableTemplate";
case "Design Initiator": return "designInitiator";
case "Design Person liable": return "designDuty";
case "Design Deliverables description": return "designRemark";
case "Pre Type of deliverables": return "prehomoDeliverableType";
case "Pre Deliverable template": return "prehomoDeliverableTemplate";
case "Pre Initiator": return "prehomoInitiator";
case "Pre Person liable": return "prehomoDuty";
case "Pre Deliverables description": return "prehomoRemark";
case "Verify Type of deliverables": return "verifyDeliverableType";
case "Verify Deliverable template": return "verifyDeliverableTemplate";
case "Verify Initiator": return "verifyInitiator";
case "Verify Person liable": return "verifyDuty";
case "Verify Deliverables description": return "verifyRemark";
default: return null;
}
}
@@ -71,7 +71,7 @@ public class ProjectLawsInventoryEOEn implements Serializable {
private String serialNumber;
/**标题*/
@Excel(name = "title", width = 20)
@Excel(name = "Title", width = 20)
@ApiModelProperty(value = "标题")
private String title;
@@ -101,7 +101,7 @@ public class ProjectLawsInventoryEOEn implements Serializable {
/**适用地区*/
@ApiModelProperty(value = "适用地区")
@Dict(dicCode ="Area")
@Excel(name = "Area", width = 15, dicCode = "region")
@Excel(name = "Area", width = 15)
private String region;
/**对应标准*/
@@ -71,7 +71,7 @@ public class InventoryAffirmJob implements Job {
List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseMapper.selectList(queryWrapper);
if(CollectionUtils.isNotEmpty(projectLibraryBaseList)){
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date currentDate = new Date();
@@ -134,8 +134,10 @@ public class InventoryAffirmJob implements Job {
/*String msgContentCN = "您" + projectLibraryBase.getProjectName() + "(项目名称)法规清单的任务确认剩余处理时间还有3天,请及时查看处理";*/
// XXX .
String msgContentEN = "The remaining processing time for the regulation list confirmation of"
+ projectNameInfoEO.getProjectName()
String msgContentEN = "The remaining processing time for the regulation list confirmation of "
+ projectNameInfoEO.getProjectName() + "-"
+ projectYearNameInfoEO.getYearName()+ " "
+ projectLibraryBase.getTargetMarket()
+ " are 3 days. Please check and handle it in time.";
//飞书跳转链接
@@ -74,7 +74,7 @@ public class PrehomoJob implements Job {
queryWrapper.lambda().in(ProjectLibraryBase::getId,projectLibraryIdList);
List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseMapper.selectList(queryWrapper);
if(CollectionUtils.isNotEmpty(projectLibraryBaseList)){
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date currentDate = new Date();
@@ -137,7 +137,9 @@ public class PrehomoJob implements Job {
//您XXX(项目名称)中GB 7258的Pre-Homo确认剩余处理时间还有3天,请及时查看处理
//The remaining processing time for the Pre-Homo confirmation of GB 7258 in XXX (project name) is 3 days. Please check and handle it in time.
String msgContentEN = "The remaining processing time for the Pre-Homo confirmation of "
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName()
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName() + "-"
+ projectYearNameInfoEO.getYearName()+ " "
+ projectLibraryBase.getTargetMarket()
+ " are 3 days. Please check and handle it in time.";
//飞书跳转链接
@@ -73,7 +73,7 @@ public class VerifyComplianceJob implements Job {
queryWrapper.lambda().in(ProjectLibraryBase::getId,projectLibraryIdList);
List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseMapper.selectList(queryWrapper);
if(CollectionUtils.isNotEmpty(projectLibraryBaseList)){
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date currentDate = new Date();
@@ -135,7 +135,9 @@ public class VerifyComplianceJob implements Job {
//您XXX(项目名称)中GB 7258的验证符合性确认剩余处理时间还有3天,请及时查看处理
//The remaining processing time for the Verify compliance confirmation of GB 7258 in XXX (project name) is 3 days. Please check and handle it in time.
String msgContentEN = "The remaining processing time for the validation compliance confirmation of "
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName()
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName() + "-"
+ projectYearNameInfoEO.getYearName()+ " "
+ projectLibraryBase.getTargetMarket()
+ " are 3 days. Please check and handle it in time.";
//飞书跳转链接
@@ -73,7 +73,7 @@ public class designComplianceJob implements Job {
queryWrapper.lambda().in(ProjectLibraryBase::getId,projectLibraryIdList);
List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseMapper.selectList(queryWrapper);
if(CollectionUtils.isNotEmpty(projectLibraryBaseList)){
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date currentDate = new Date();
@@ -137,6 +137,8 @@ public class designComplianceJob implements Job {
//您XXX(项目名称)中GB 7258的设计符合性确认剩余处理时间还有3天,请及时查看处理
String msgContentEN = "The remaining processing time for the design compliance confirmation for "
+ projectLawsInventoryEO.getSerialNumber() + " in " + projectNameInfoEO.getProjectName()
+ projectYearNameInfoEO.getYearName()+ " "
+ projectLibraryBase.getTargetMarket()
+ " are 3 days. Please check and address it in a timely manner.";
//飞书跳转链接
@@ -44,7 +44,7 @@
</if>
AND sd.dict_code = #{dictCode}
</where>
ORDER BY sdi.sort_order
ORDER BY sdi.item_text ASC
</select>
<select id="queryById" resultType="com.jero.modules.project.entity.ProjectRelatedPersonnel">
@@ -2929,8 +2929,14 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
fileTemp.mkdirs();
//文件
exportFile(dataList,fileInfos);
String excelName = "";
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
excelName = "法规清单.xlsx";
}else{
excelName = "Regulation List.xlsx";
}
//excel
OutputStream excelOS = new FileOutputStream(path + File.separator + "法规清单.xlsx");
OutputStream excelOS = new FileOutputStream(path + File.separator + excelName);
ExportParams exportParams = new ExportParams();
exportParams.setType(ExcelType.XSSF);
if(CutEnum.CN.getValue().equals(projectLawsInventoryEO.getCut())){
@@ -3069,6 +3075,17 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
if(StringUtils.isNotBlank(pullVerifyDeliverableType)){
projectLawsInventoryEOEn.setVerifyDeliverableType(pullVerifyDeliverableType);
}
//清单确认状态
String inventoryAffirmStatus = projectLawsInventoryEOEn.getInventoryAffirmStatus();
if(StringUtils.isNotBlank(inventoryAffirmStatus)){
projectLawsInventoryEOEn.setInventoryAffirmStatusName(inventoryAffirmStatus);
}
//任务确认状态
String taskAffirmStatus = projectLawsInventoryEOEn.getTaskAffirmStatus();
if(StringUtils.isNotBlank(taskAffirmStatus)){
projectLawsInventoryEOEn.setTaskAffirmStatusName(taskAffirmStatus);
}
}
}
@@ -211,6 +211,16 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
*/
@Override
public void checkData(String id, String cut) {
//判断该条项目是否是自己创建,如果不是则不能删除
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
List<ProjectLibraryBase> projectLibraryBases = this.queryById(id);
if(!loginUser.getUsername().equals(projectLibraryBases.get(0).getCreateBy())){
if(CutEnum.CN.getValue().equals(cut)){
throw new JeroBootException("该条项目非本人创建,不能删除");
}else{
throw new JeroBootException("This item is not created by myself and cannot be deleted");
}
}
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryQueryWrapper = new QueryWrapper<>();
lawsInventoryQueryWrapper.eq("project_library_id",id);
List<ProjectLawsInventoryEO> lawsInventoryRecords = projectLawsInventoryEOMapper.selectList(lawsInventoryQueryWrapper);
@@ -1063,8 +1063,6 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
}
}
if (CollectionUtils.isNotEmpty(certificationEngineerNameList) && StringUtils.isNotBlank(certificationEngineerNameList.get(0))) {
certificationEngineerNameList = certificationEngineerNameList.stream().distinct().collect(Collectors.toList());
certificationEngineerUsers=sysUserService.queryUserIdListByNameList(certificationEngineerNameList);
@@ -1139,28 +1137,29 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
List<ProjectLibraryBase> baseDataList = projectLibraryBaseService.list(baseQueryWrapper.eq("id", projectId));
if (CollectionUtils.isNotEmpty(baseDataList)) {
String baseCertificationEngineer = baseDataList.get(0).getCertificationEngineer();
List<String> baseCertificationEngineerIdList = Arrays.asList(baseCertificationEngineer.split(","));
String certificationEngineerName;
QueryWrapper<SysUser> userqueryWrapper = new QueryWrapper<>();
userqueryWrapper.in("id ", baseCertificationEngineerIdList);
List<SysUser> userList = sysUserMapper.selectList(userqueryWrapper);
if (CollectionUtils.isNotEmpty(userList)) {
for (String baseUserId : baseCertificationEngineerIdList) {
// 判断是否有工程师
if (StringUtils.isNotEmpty(baseCertificationEngineer)){
List<String> baseCertificationEngineerIdList = Arrays.asList(baseCertificationEngineer.split(","));
String certificationEngineerName;
QueryWrapper<SysUser> userqueryWrapper = new QueryWrapper<>();
userqueryWrapper.in("id ", baseCertificationEngineerIdList);
List<SysUser> userList = sysUserMapper.selectList(userqueryWrapper);
if (CollectionUtils.isNotEmpty(userList)) {
for (String baseUserId : baseCertificationEngineerIdList) {
if (StringUtils.isNotEmpty(baseUserId)) {
certificationEngineerName = userList.stream().filter(e -> baseUserId.equals(e.getId()))
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
ProjectRelatedPersonnel relatedPersonnel =new ProjectRelatedPersonnel();
relatedPersonnel.setCertificationEngineer(baseUserId);
relatedPersonnel.setCertificationEngineerName(certificationEngineerName);
certificationEngineerList.add(relatedPersonnel);
if (StringUtils.isNotEmpty(baseUserId)) {
certificationEngineerName = userList.stream().filter(e -> baseUserId.equals(e.getId()))
.map(sysUser -> sysUser.getUsername()).collect(Collectors.joining(","));
ProjectRelatedPersonnel relatedPersonnel =new ProjectRelatedPersonnel();
relatedPersonnel.setCertificationEngineer(baseUserId);
relatedPersonnel.setCertificationEngineerName(certificationEngineerName);
certificationEngineerList.add(relatedPersonnel);
}
}
}
}
}
certificationEngineerList = certificationEngineerList.stream().distinct().collect(Collectors.toList());
return certificationEngineerList;
@@ -111,8 +111,9 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
}
}
}
List<SysDictItem> dictItemList = sysDictItemServiceImpl.selectItemsByDictCode("region");
for (ProjectLibraryBase libraryBase : projectLibraryBaseList) {
targetMarket(projectLibraryBase, dictItemList, libraryBase);
Map<String,Object> mapList = new HashMap<>();
List<List<TimeNodeVO>> collect = new ArrayList<>();
if(ObjectUtils.isNotEmpty(startTime) && ObjectUtils.isNotEmpty(endTime)){
@@ -124,7 +125,7 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
if(collect.size() != 0){
index ++;
mapList.put("index",index);
mapList.put("projectName",libraryBase.getProjectName());
mapList.put("projectName",libraryBase.getProjectName()+" "+libraryBase.getYearName()+"-"+libraryBase.getTargetMarket());
mapList.put("data",collect);
result.add(mapList);
}
@@ -76,6 +76,55 @@ public class FileUnZip {
return orgMkdirs;
}
/**
* 解压zip文件
* 解决解压文件下有多个文件夹时,读不到orgMkdirs问题
* @param sourceFile,待解压的zip文件; descDir,解压后的存放路径
* @throws Exception
* @author gaoyan
**/
public static String unZipFiles2(String sourceFile, String descDir) throws IOException {
File zipFile = new File(sourceFile);
File pathFile = new File(descDir);
if (!pathFile.exists()) {
pathFile.mkdirs();
}
ZipFile zip = new ZipFile(zipFile,"gbk");
String orgMkdirsLast = "";
for (Enumeration entries = zip.getEntries(); entries.hasMoreElements(); ) {
ZipEntry entry = (ZipEntry) entries.nextElement();
String zipEntryName = entry.getName();
String outPath = (descDir + "/" + zipEntryName).replaceAll("\\*", "/");
orgMkdirsLast = zipEntryName.substring(0, zipEntryName.indexOf('/'));
//判断路径是否存在,不存在则创建文件路径
File file = new File(outPath.substring(0, outPath.lastIndexOf('/')));
if (!file.exists()) {
file.mkdirs();
}
//判断文件全路径是否为文件夹,如果是上面已经上传,不需要解压
if (new File(outPath).isDirectory()) {
continue;
}
//输出文件路径信息
// InputStream in = null;
// OutputStream out = null;
try(InputStream in =zip.getInputStream(entry);
OutputStream out =new FileOutputStream(outPath)){
byte[] buf1 = new byte[1024];
int len;
while ((len = in.read(buf1)) > 0) {
out.write(buf1, 0, len);
}
}catch(IOException e){
logger.error(e.getMessage(),e);
}
}
zip.close();
String orgMkdirs = descDir + "/" + orgMkdirsLast;
return orgMkdirs;
}
/**
* 递归删除文件及文件夹
*
@@ -1484,7 +1484,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
}
return Result.error(resultMsg);
}
String path = uploadpath + "/modal/"+filenameorg;
String path = uploadpath + File.separator + "modal" + File.separator + filenameorg + System.currentTimeMillis();
File saveDirectory = new File(path);
if(!saveDirectory.isDirectory()){
saveDirectory.mkdir();
@@ -1492,7 +1492,7 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path +File.separator+ file.getOriginalFilename()));
try{
//解压缩
String zipEntryName = FileUnZip.unZipFiles(path +File.separator+ file.getOriginalFilename(),path);
String zipEntryName = FileUnZip.unZipFiles2(path +File.separator+ file.getOriginalFilename(),path);
// 数据相关处理,
// 1.获取其中的Excel,
List<File> excelfilelist = FileUnZip.readExcelFile(zipEntryName);