Merge remote-tracking branch 'origin/master'

# Conflicts:
#	jero-web/src/views/projectManagement/components/listOfRegulations.vue
This commit is contained in:
wangzhijiang
2022-04-27 19:13:34 +08:00
29 changed files with 1478 additions and 624 deletions
+5
View File
@@ -161,6 +161,11 @@
<artifactId>prime-jwt</artifactId>
<version>1.3.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.62</version>
</dependency>
</dependencies>
</project>
@@ -36,7 +36,7 @@ public interface IDummyInventoryBaseEOService extends IService<DummyInventoryBas
* 发布
* @param dummyInventoryBaseEO
*/
void issue(DummyInventoryBaseEO dummyInventoryBaseEO);
void issue(DummyInventoryBaseEO dummyInventoryBaseEO) throws Exception;
/**
* 通过id删除
@@ -1,5 +1,6 @@
package com.jero.modules.dummy.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -17,17 +18,17 @@ import com.jero.modules.dummy.service.IDummyContentChangeEOService;
import com.jero.modules.dummy.service.IDummyInventoryBaseEOService;
import com.jero.modules.dummy.service.IDummyInventoryInfoEOService;
import com.jero.modules.dummy.service.IDummyReadEOService;
import com.jero.modules.dummy.util.ListDiff;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysUserService;
import net.sf.json.JSONArray;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -137,7 +138,7 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
if (pageList.getRecords().size() != 0) {
List<DummyInventoryBaseEO> records = pageList.getRecords();
List<String> createByList = records.stream().map(DummyInventoryBaseEO::getCreateBy).collect(Collectors.toList());
LambdaQueryWrapper<SysUser> lambdaQueryWrapper = new LambdaQueryWrapper();
LambdaQueryWrapper<SysUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(SysUser::getUsername, createByList);
List<SysUser> userList = sysUserService.list(lambdaQueryWrapper);
//订阅标识
@@ -187,7 +188,7 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
* @param dummyInventoryBaseEO
*/
@Override
public void issue(DummyInventoryBaseEO dummyInventoryBaseEO) {
public void issue(DummyInventoryBaseEO dummyInventoryBaseEO) throws Exception {
this.updateById(dummyInventoryBaseEO);
//发布与撤回均需要发消息(向订阅的人员发消息)
//首次发布不发消息
@@ -216,14 +217,14 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
//没有添加过需要进行第一次添加
List<DummyContentChangeEO> list = new ArrayList<>();
if(dummyInventoryBaseEOList.size() != 0){
String base = JSONArray.fromObject(dummyInventoryBaseEOList).toString();
String base = JSONArray.toJSONString(dummyInventoryBaseEOList);
DummyContentChangeEO dummyContentChangeEOBase = new DummyContentChangeEO();
dummyContentChangeEOBase.setConnectId(dummyInventoryBaseEO.getId());
dummyContentChangeEOBase.setContentJson(base);
list.add(dummyContentChangeEOBase);
}
if(dummyInventoryInfoEOList.size() != 0){
String info = JSONArray.fromObject(dummyInventoryInfoEOList).toString();
String info = JSONArray.toJSONString(dummyInventoryInfoEOList);
DummyContentChangeEO dummyContentChangeEOInfo = new DummyContentChangeEO();
dummyContentChangeEOInfo.setParentId(dummyInventoryBaseEO.getId());
dummyContentChangeEOInfo.setContentJson(info);
@@ -242,39 +243,53 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
wrapperInfo.in(DummyContentChangeEO::getParentId,dummyInventoryBaseEO.getId());
List<DummyContentChangeEO> dummyContentChangeEOInfoList = iDummyContentChangeEOService.list(wrapperInfo);
//3.截止到现在发布,期间修改的数据(基础)
//数据为-->dummyInventoryBaseEOList
String dibName = dummyInventoryBaseEOList.get(0).getName();
String dibUseExplain = dummyInventoryBaseEOList.get(0).getUseExplain();
//3.对比基础表数据
//3.1截止到现在发布,期间修改的数据(基础)
//最新的数据为-->dummyInventoryBaseEOList
//3.2基础表数据对比
String baseCJ=dummyContentChangeEOBaseList.get(0).getContentJson();
List<DummyInventoryBaseEO> baseCJlist = JSONArray.parseArray(baseCJ, DummyInventoryBaseEO.class);//json转list
//对比,获取值不同的字段
Map<String, List<Object>> diff = null;
for(int i=0;i<= baseCJlist.size();i++) {
baseCJlist.get(i);
dummyInventoryBaseEOList.get(i);
diff = ListDiff.compareObject(baseCJlist.get(i), dummyInventoryBaseEOList.get(i));
System.out.println(diff);//不同的字段原,现,{name=[虚拟清单33331122211, 虚拟清单3333444]}
}
//4.对比详情表数据
//4.1截止到现在发布,期间修改的数据(详情)
//现在的数据为-->dummyInventoryInfoEOList
//dummyInventoryInfoEOList
//4.2详情表数据(一条基础数据可能对应多个详情数据---一对多)
/* String baseCJ=dummyContentChangeEOBaseList.get(0).getContentJson();
List<DummyInventoryBaseEO> baseCJlist = JSONArray.parseArray(baseCJ, DummyInventoryBaseEO.class);//json转list
//对比,获取值不同的字段
Map<String, List<Object>> diff = null;
for(int i=0;i<= baseCJlist.size();i++) {
baseCJlist.get(i);
dummyInventoryBaseEOList.get(i);
diff = ListDiff.compareObject(baseCJlist.get(i), dummyInventoryBaseEOList.get(i));
System.out.println(diff);//不同的字段原,现,{name=[虚拟清单33331122211, 虚拟清单3333444]}
}*/
for(DummyContentChangeEO dummyContentChangeEO : dummyContentChangeEOInfoList){
String infoCJ = dummyContentChangeEO.getContentJson();
List<DummyContentChangeEO> infoCJlist = JSONArray.parseArray(infoCJ, DummyContentChangeEO.class);//json转list
System.out.println(infoCJlist);
System.out.println(infoCJlist);
// JsonDiff.compareJson(infoCJjson,info,null);
//4.截止到现在发布,期间修改的数据(详情)
//数据为-->dummyInventoryInfoEOList
List<String> contentJson = Arrays.asList(dummyContentChangeEOInfoList.get(0).getContentJson().split("},\\{"));
for(String midCJ:contentJson){
List<String> dccContentJson = Arrays.asList( midCJ.split("\",\""));
System.out.println(dccContentJson);
}
//5.分别对比基础表数据和详情表数据
//5.1.基础表数据对比
List<String> dibContentJson = Arrays.asList(dummyContentChangeEOBaseList.get(0).getContentJson().split("\",\""));
//获取原虚拟清单名称
String cJName = dibContentJson.get(6);
String trueCJName = disposeContentJson(cJName);
//获取原虚拟清单使用说明
String cJUseExplain = dibContentJson.get(1);
String trueCJUseExplain = disposeContentJson(cJUseExplain);
//拼接本次发布时的修改信息
if(!trueCJName.equals(dibName)) {
String cJNameMessage = dummyInventoryBaseEO.getUpdateBy() + "" + trueCJName + "改为了" + dibName;
}
if(!trueCJUseExplain.equals(dibUseExplain)) {
String cJUseExplainMessage = dummyInventoryBaseEO.getUpdateBy() + "" + trueCJUseExplain + "改为" + dibUseExplain;
}
//5.2详情表数据(一条基础数据可能对应多个详情数据---一对多)
//6.数据对比完成后.删除之前保存的dummy_inventory_info中的数据,重新保存最新的数据
@@ -289,12 +304,4 @@ public class DummyInventoryBaseEOServiceImpl extends ServiceImpl<DummyInventoryB
}
public String disposeContentJson(String cJName){
//获取cntentJson中原数据
String midCJName = cJName.substring(0, cJName.indexOf(":"));
String trueCJName = cJName.substring(midCJName.length()+1, cJName.length()).replace("\"","");
return trueCJName;
}
}
@@ -0,0 +1,37 @@
package com.jero.modules.dummy.util;
import java.lang.reflect.Field;
import java.util.*;
public class ListDiff <T> {
public static <T> Map<String, List<Object>> compareObject(T obj1, T Obj2)
throws Exception {
Map<String, List<Object>> result = new HashMap<String, List<Object>>();
Field[] fs = obj1.getClass().getDeclaredFields();
for (Field f : fs) {
f.setAccessible(true);
Object v1 = f.get(obj1);
Object v2 = f.get(Obj2);
if( ! equals(v1, v2) /*&& !f.getName().contains("update")*/
&& !f.getName().equals("updateTime") ){
List<Object> resultList=new ArrayList<>();
resultList.add(v1);
resultList.add(v2);
result.put(f.getName(), resultList);
}
}
return result;
}
public static boolean equals(Object obj1, Object obj2) {
if (obj1 == obj2) {
return true;
}
if (obj1 == null || obj2 == null) {
return false;
}
return obj1.equals(obj2);
}
}
@@ -46,23 +46,23 @@ public class ProjectRelatedPersonnel implements Serializable {
/**法规工程师*/
private java.lang.String lawEngineer;
@TableField(exist = false)
@Excel(name = "法规工程师,lawEngineerName", width = 30,orderNum = "2")
@Excel(name = "法规工程师,lawEngineerName", width = 15,orderNum = "2")
private java.lang.String lawEngineerName;
/**工程接口人*/
private java.lang.String engineeringInterfacePerson;
@TableField(exist = false)
@Excel(name = "工程接口人,engineeringInterfacePersonName", width = 30,orderNum = "3")
@Excel(name = "工程接口人,engineeringInterfacePersonName", width = 15,orderNum = "3")
private java.lang.String engineeringInterfacePersonName;
/**认证工程师*/
private java.lang.String certificationEngineer;
@TableField(exist = false)
@Excel(name = "认证工程师,certificationEngineerName", width = 30,orderNum = "4")
@Excel(name = "认证工程师,certificationEngineerName", width = 15,orderNum = "4")
private java.lang.String certificationEngineerName;
/**备注*/
@Excel(name = "备注,remark", width = 50,orderNum = "5")
@Excel(name = "备注,remark", width = 15,orderNum = "5")
private java.lang.String remark;
/**创建人*/
@@ -4,7 +4,7 @@ package com.jero.modules.project.enums;
*/
public enum ExportTemplateEnum {
DUTY_TERRITORY("责任领域"," duty_territory"),
DUTY_TERRITORY("责任领域","duty_territory"),
DUTY_TERRITORY_FIELD_of_PRODUCTION("生产领域","field_of_production"),
// LAW_ENGINEER("法规工程师","lawEngineerName"),
// ENGINEER_INTERFACE_PERSON("工程接口人","engineeringInterfacePersonName"),
@@ -9,11 +9,11 @@ import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.enums.DictCodeEnum;
import com.jero.modules.project.entity.ProjectRelatedPersonnel;
import com.jero.modules.project.enums.ExportTemplateEnum;
import com.jero.modules.project.mapper.ProjectRelatedPersonnelMapper;
import com.jero.modules.project.service.IProjectRelatedPersonnelService;
import com.jero.modules.project.util.ExcelLangUtils;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.mapper.SysDictItemMapper;
import com.jero.modules.system.mapper.SysDictMapper;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.service.ISysDictService;
@@ -60,6 +60,8 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
@Autowired
private SysDictMapper sysDictMapper;
@Autowired
private SysDictItemMapper sysDictItemMapper;
/**
* 保存
@@ -406,29 +408,40 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
*/
@Override
public ModelAndView setExporTemplate(HttpServletRequest request, Class<ProjectRelatedPersonnel> clazz, String title,String cut){
List<ProjectRelatedPersonnel> records=new ArrayList<>();
ProjectRelatedPersonnel projectRelatedPersonnel=new ProjectRelatedPersonnel();
List<ProjectRelatedPersonnel> records = new ArrayList<>();;
// Step.1 组装查询条件
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
ExportParams exportParams=null;
// Step.2 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
try {
String fillingExplanationCN="填写说明\n" +
"1.导入数据从第三行开始,第一行为表头,第二行为填写说明,第三行是正式数据\n" +
"2.所有带*号的字段必须填写\n" +
"3.填写人员时,必须使用人员账号进行填写。\n" +
"4.填写的人员账号必须与系统中账号保持一致";
//中英切换模板
if(CutEnum.CN.getValue().equals(cut)) {
projectRelatedPersonnel.setDutyTerritory(ExportTemplateEnum.DUTY_TERRITORY_FIELD_of_PRODUCTION.getName());
exportParams=new ExportParams(title , "导出人:" + sysUser.getUsername(), title);
/* if(CutEnum.CN.getValue().equals(cut)) {
exportParams=new ExportParams(title , fillingExplanationCN, title);
}else{
projectRelatedPersonnel.setDutyTerritory(ExportTemplateEnum.DUTY_TERRITORY_FIELD_of_PRODUCTION.getValue());
exportParams=new ExportParams(title , "Exporter:" + sysUser.getUsername(), title);
}
projectRelatedPersonnel.setLawEngineerName("ning.chen,xinhui.wei");
projectRelatedPersonnel.setEngineeringInterfacePersonName("ning.chen,xinhui.wei");
projectRelatedPersonnel.setCertificationEngineerName("ning.chen,xinhui.wei");
projectRelatedPersonnel.setRemark("xxxxx");
if(projectRelatedPersonnel != null) {
records.add(projectRelatedPersonnel);
exportParams=new ExportParams(title , ExportTemplateEnum.FILLING_EXPLANATION_EN.getName(), title);
}*/
exportParams=new ExportParams();
exportParams.setSheetName(title);
//查标签内容里的责任领域数据
List<String> dictItemNameList = sysDictMapper.queryDictNameByCode(DictCodeEnum.DUTY_TERRITORY.getValue());
//新建相关人员表里的责任领域数据
if (CollectionUtils.isNotEmpty(dictItemNameList)) {
for (String dictItemName : dictItemNameList) {
ProjectRelatedPersonnel projectRelatedPersonnel=new ProjectRelatedPersonnel();
projectRelatedPersonnel.setDutyTerritory(dictItemName);
records.add(projectRelatedPersonnel);
}
}
mv.addObject(NormalExcelConstants.FILE_NAME, title); //此处设置的filename无效 ,前端会重更新设置一下
mv.addObject(NormalExcelConstants.CLASS, clazz);//!!!!这里设置中英切换
mv.addObject(NormalExcelConstants.PARAMS,exportParams);
@@ -492,6 +505,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
/**
* 把导入的数据翻译成对应的id,并校验
* 若除责任领域外的导入数据为空,设置为空白
* @return
*/
@Override
@@ -540,7 +554,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
List<SysUser> lawEngineerUsers = new ArrayList<>();
if (StringUtils.isNotEmpty(projectRelatedPersonnel.getLawEngineerName())){
List<String> lawEngineerNameList = Arrays.asList(projectRelatedPersonnel.getLawEngineerName().split(","));
if (CollectionUtils.isNotEmpty(lawEngineerNameList)) {
if (CollectionUtils.isNotEmpty(lawEngineerNameList) && StringUtils.isNotBlank(lawEngineerNameList.get(0))) {
lawEngineerNameList = lawEngineerNameList.stream().distinct().collect(Collectors.toList());
lawEngineerUsers=sysUserService.queryUserIdListByNameList(lawEngineerNameList);
if(lawEngineerUsers.size()!=lawEngineerNameList.size()){
@@ -567,19 +581,14 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
projectRelatedPersonnel.setLawEngineer(midId.substring(0,midId.toString().length()-1));
}
}else{
//中英切换提示语
if(CutEnum.CN.getValue().equals(cut)) {
throw new JeroBootException("导入的法规工程师不能为空,请检查第" + row + "");
}else{
throw new JeroBootException("The imported law engineer cannot be empty.Please check line " + row );
}
projectRelatedPersonnel.setLawEngineer("");
}
//工程接口人
List<SysUser> engineeringInterfacePersonUsers = new ArrayList<>();
if (StringUtils.isNotEmpty(projectRelatedPersonnel.getEngineeringInterfacePersonName())){
List<String> engineeringInterfacePersonNameList = Arrays.asList(projectRelatedPersonnel.getEngineeringInterfacePersonName().split(","));
if (CollectionUtils.isNotEmpty(engineeringInterfacePersonNameList)) {
if (CollectionUtils.isNotEmpty(engineeringInterfacePersonNameList) && StringUtils.isNotBlank(engineeringInterfacePersonNameList.get(0))) {
engineeringInterfacePersonNameList = engineeringInterfacePersonNameList.stream().distinct().collect(Collectors.toList());
engineeringInterfacePersonUsers=sysUserService.queryUserIdListByNameList(engineeringInterfacePersonNameList);
if(engineeringInterfacePersonUsers.size()!=engineeringInterfacePersonNameList.size()){
@@ -606,19 +615,14 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
projectRelatedPersonnel.setEngineeringInterfacePerson(midId.substring(0,midId.toString().length()-1));
}
}else{
//中英切换提示语
if(CutEnum.CN.getValue().equals(cut)) {
throw new JeroBootException("导入的工程接口人不能为空,请检查第" + row + "");
}else {
throw new JeroBootException("The imported engineering interface person cannot be empty.Please check line " + row );
}
projectRelatedPersonnel.setEngineeringInterfacePerson("");
}
//认证工程师
List<SysUser> certificationEngineerUsers = new ArrayList<>();
if (StringUtils.isNotEmpty(projectRelatedPersonnel.getCertificationEngineerName())){
List<String> certificationEngineerNameList = Arrays.asList(projectRelatedPersonnel.getCertificationEngineerName().split(","));
if (CollectionUtils.isNotEmpty(certificationEngineerNameList)) {
if (CollectionUtils.isNotEmpty(certificationEngineerNameList) && StringUtils.isNotBlank(certificationEngineerNameList.get(0))) {
certificationEngineerNameList = certificationEngineerNameList.stream().distinct().collect(Collectors.toList());
certificationEngineerUsers=sysUserService.queryUserIdListByNameList(certificationEngineerNameList);
if(certificationEngineerUsers.size()!=certificationEngineerNameList.size()){
@@ -645,12 +649,7 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
projectRelatedPersonnel.setCertificationEngineer(midId.substring(0,midId.toString().length()-1));
}
}else{
//中英切换提示语
if(CutEnum.CN.getValue().equals(cut)) {
throw new JeroBootException("导入的认证工程师不能为空,请检查第" + row + "");
}else {
throw new JeroBootException("The imported certification engineer cannot be empty.Please check line " + row );
}
projectRelatedPersonnel.setCertificationEngineer("");
}
projectRelatedPersonnel.setProjectId(projectId);
row++;
@@ -663,58 +662,44 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
private void updateDataById(ProjectRelatedPersonnel projectRelatedPersonnel) {
List<ProjectRelatedPersonnel> records = projectRelatedPersonnelMapper.queryById(projectRelatedPersonnel.getId());
for (ProjectRelatedPersonnel data : records) {
if (StringUtils.isBlank(data.getLawEngineer())) {//数据库里法规工程师是空的
projectRelatedPersonnel.setLawEngineer(projectRelatedPersonnel.getLawEngineer());
}else{//数据库里不空,原+新
StringBuilder law = new StringBuilder(data.getLawEngineer());
String lawString = law.append(",").append(projectRelatedPersonnel.getLawEngineer()).toString();
//去重
//法规工程师
String lawString = projectRelatedPersonnel.getLawEngineer();
//去重
if(StringUtils.isNotBlank(lawString)) {
List<String> lawList = Arrays.asList(lawString.split(","));
String lawDistinct = lawList.stream().distinct().collect(Collectors.joining(","));
projectRelatedPersonnel.setLawEngineer(lawDistinct);
}
if (StringUtils.isBlank(data.getEngineeringInterfacePerson())) {//数据库里工程接口人是空的
projectRelatedPersonnel.setEngineeringInterfacePerson(projectRelatedPersonnel.getEngineeringInterfacePerson());
}else{//数据库里不空,原+新
StringBuilder interfacePerson = new StringBuilder(data.getEngineeringInterfacePerson());
String interfaceString = interfacePerson.append(",").append(projectRelatedPersonnel.getEngineeringInterfacePerson()).toString();
//去重
//工程接口人
String interfaceString = projectRelatedPersonnel.getEngineeringInterfacePerson();
//去重
if(StringUtils.isNotBlank(interfaceString)) {
List<String> interfaceList = Arrays.asList(interfaceString.split(","));
String interfaceDistinct = interfaceList.stream().distinct().collect(Collectors.joining(","));
projectRelatedPersonnel.setEngineeringInterfacePerson(interfaceDistinct);
}
if (StringUtils.isBlank(data.getCertificationEngineer())) {//数据库里工程接口人是空的
projectRelatedPersonnel.setCertificationEngineer(projectRelatedPersonnel.getCertificationEngineer());
}else{//数据库里不空,原+新
StringBuilder certification = new StringBuilder(data.getCertificationEngineer());
String certificationString = certification.append(",").append(projectRelatedPersonnel.getCertificationEngineer()).toString();
//去重
// 工程接口人
String certificationString = projectRelatedPersonnel.getCertificationEngineer();
//去重
if(StringUtils.isNotBlank(certificationString)) {
List<String> certificationList = Arrays.asList(certificationString.split(","));
String certificationDistinct= certificationList.stream().distinct().collect(Collectors.joining(","));
String certificationDistinct = certificationList.stream().distinct().collect(Collectors.joining(","));
projectRelatedPersonnel.setCertificationEngineer(certificationDistinct);
}
if (StringUtils.isBlank(data.getRemark())) {//数据库里备注是空的
projectRelatedPersonnel.setRemark(projectRelatedPersonnel.getRemark());
} else {//数据库里备注不是空的
if (StringUtils.isNotBlank(projectRelatedPersonnel.getRemark())) {//导入的备注不是空的
}
if (StringUtils.isNotBlank(projectRelatedPersonnel.getRemark())) {//导入的备注不是是空的,原+新
StringBuilder remark = new StringBuilder(data.getRemark());
projectRelatedPersonnel.setRemark(remark.append(",").append(projectRelatedPersonnel.getRemark()).toString());
} else {
projectRelatedPersonnel.setRemark(data.getRemark());
}
} else {
projectRelatedPersonnel.setRemark("");
}
Date now = new Date();
projectRelatedPersonnel.setUpdateTime(now);
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
projectRelatedPersonnel.setUpdateBy(sysUser.getUsername());
saveOrUpdate(projectRelatedPersonnel);
updateById(projectRelatedPersonnel);
}
}
}
@@ -546,6 +546,8 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
}
String value = stringBuilder.substring(0, stringBuilder.lastIndexOf(","));
entry.setValue(value);
} else {
entry.setValue(null);
}
}
// 标准选择