Merge remote-tracking branch 'origin/master'

This commit is contained in:
wangzhijiang
2022-05-25 18:01:23 +08:00
34 changed files with 507 additions and 181 deletions
@@ -2032,6 +2032,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
List<String> serialNumberList = list.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList());
String serialNumber = (String)map.get("serial_number");
String id = (String) map.get("id");
String title = (String) map.get("title");
//通过id查询数据
List<Map<String, Object>> dataList = bussDocumentLibraryEOMapper.selectMapsAll(id);
if(dataList.size() != 0){
@@ -2040,6 +2041,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
throw new JeroBootException("编号已存在不能重复添加");
}
}
//字段属性
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
//普通数据字典
List<SysDictItem> dictItemList = sysDictItemServiceImpl.selectItemsAll();
//编辑时处理首页文档动态 1. 标准XXXX的状态改为 2. 标准XXXX的适用车型改为 3. 标准XXXX删除了XXXX文件 4. 标准XXXX上传了XXXX文件
homeDocumentDynamic(cut,map, serialNumber, id, title, dataList, fieldList,dictItemList);
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
@@ -2063,27 +2071,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
} catch (ParseException e) {
throw new JeroBootException(e.getMessage());
}
//字段属性
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
//标准选择字段
// List<OnlCgformField> standardOnlCgformFieldList = fieldList.stream()
// .filter(e -> FieldTypeEnum.STANDARD.getValue().equals(e.getFieldShowType())).collect(Collectors.toList());
// if(standardOnlCgformFieldList.size() != 0){
// List<String> collect = standardOnlCgformFieldList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList());
// List<String> standardList = new ArrayList<>();
// for (Map.Entry<String, Object> entry : map.entrySet()) {
// String key = entry.getKey();
// if(collect.contains(key)){
// standardList.add(key);
// }
// }
// if(standardList.size() != 0){
// for (String standard : standardList) {
// map.put(standard, map.get(standard+"_id"));
// map.remove(standard+"_id");
// }
// }
// }
map.remove("cut");
//获取搜索中心字段
@@ -2121,8 +2110,6 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
//树形数据字典
List<SysCategory> categoryList = sysCategoryService.list();
//普通数据字典
List<SysDictItem> dictItemList = sysDictItemServiceImpl.selectItemsAll();
//查询所有
List<Map<String, Object>> listMap = bussDocumentLibraryEOMapper.selectMapsAll(null);
@@ -2360,6 +2347,145 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
}
}
private void homeDocumentDynamic(String cut,
Map<String, Object> map,
String serialNumber,
String id, String title,
List<Map<String, Object>> dataList,
List<OnlCgformField> fieldList,
List<SysDictItem> dictItemList) {
//文件类型字段
List<OnlCgformField> onlCgformFieldList = fieldList.stream()
.filter(e -> FieldTypeEnum.FILE.getValue().equals(e.getFieldShowType())).collect(Collectors.toList());
List<String> fileFieldList = onlCgformFieldList.stream().map(OnlCgformField::getDbFieldName).collect(Collectors.toList());
//编辑时处理首页文档动态 1. 标准XXXX的状态改为 2. 标准XXXX的适用车型改为 3. 标准XXXX删除了XXXX文件 4. 标准XXXX上传了XXXX文件
String href = "<a href='/docManage/library/detail?id=" + id +
"&title=" + title +
"&serial_number=" + serialNumber + "'" + " target='_blank'>" + serialNumber + "</a>,";
StringBuilder msgContentSb = new StringBuilder("标准" + serialNumber);
StringBuilder msgContentInfoSb = new StringBuilder("标准" + href);
List<String> fileIdLIstTemp = new ArrayList<>();
for (Map.Entry<String, Object> entry : dataList.get(0).entrySet()) {
String key = entry.getKey();
String value = String.valueOf(entry.getValue());
//文件
if(fileFieldList.contains(key)&& !"null".equals(value) && StringUtils.isNotBlank(value)){
fileIdLIstTemp.addAll(Arrays.asList(value.split(",")));
}
}
List<String> fileIdLIst = new ArrayList<>();
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
String value = String.valueOf(entry.getValue());
//文件
if(fileFieldList.contains(key) && !"null".equals(value) && StringUtils.isNotBlank(value)){
fileIdLIst.addAll(Arrays.asList(value.split(",")));
}
}
//之前的文件
List<OSSFile> fileListTemp = new ArrayList<>();
if(fileIdLIstTemp.size() != 0){
fileListTemp = iOSSFileService.getFileInfoAll(StringUtils.join(fileIdLIstTemp,","));
}
List<String> fileNameListTemp = fileListTemp.stream().map(OSSFile::getFileName).collect(Collectors.toList());
//编辑的文件
List<OSSFile> fileList = new ArrayList<>();
if(fileIdLIst.size() != 0){
fileList = iOSSFileService.getFileInfoAll(StringUtils.join(fileIdLIst,","));
}
List<String> fileNameList = fileList.stream().map(OSSFile::getFileName).collect(Collectors.toList());
//删除的文件
List<String> deleteFileList = new ArrayList<>();
for (String fileName : fileNameListTemp) {
if(fileNameList.size() != 0 && !fileNameList.contains(fileName)){
deleteFileList.add(fileName);
}
}
//上传的文件
List<String> upFileList = new ArrayList<>();
for (String fileName : fileNameList) {
if(!fileNameListTemp.contains(fileName)){
upFileList.add(fileName);
}
}
int count = 0;
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
String value = String.valueOf(entry.getValue());
//状态
if("state".equals(key) && !value.equals((String)dataList.get(0).get("state"))){
count++;
//数据字典转换 dictItemList
String finalValue = value;
List<SysDictItem> stateDictItemList = dictItemList.stream()
.filter(e -> "state".equals(e.getDictCode()) && finalValue.equals(e.getItemValue()))
.collect(Collectors.toList());
if(stateDictItemList.size() != 0){
if(CutEnum.CN.getValue().equals(cut)){
value = stateDictItemList.get(0).getItemText();
}else{
value = stateDictItemList.get(0).getEnName();
}
}
msgContentSb.append("状态改为" + value + ",");
msgContentInfoSb.append("状态改为" + value + ",");
}
//适用车型 car_type
if("shi4_yong4_che1_xing2".equals(key) && !value.equals((String)dataList.get(0).get("shi4_yong4_che1_xing2"))){
count++;
//数据字典转换 dictItemList
List<SysDictItem> stateDictItemList = dictItemList.stream()
.filter(e -> "car_type".equals(e.getDictCode()))
.collect(Collectors.toList());
StringBuilder sb = new StringBuilder();
for (String s : value.split(",")) {
List<SysDictItem> collect = stateDictItemList.stream().filter(e -> s.equals(e.getItemValue())).collect(Collectors.toList());
if(collect.size() != 0){
if(CutEnum.CN.getValue().equals(cut)){
sb.append(collect.get(0).getItemText()+",");
}else{
sb.append(collect.get(0).getEnName()+",");
}
}
}
if(StringUtils.isNotBlank(sb)){
String substring = sb.substring(0, sb.length() - 1);
value = substring;
}
msgContentSb.append("适用车型改为" + value + ",");
msgContentInfoSb.append("适用车型改为" + value + ",");
}
}
if(upFileList.size() != 0){
count++;
msgContentSb.append("上传了" + StringUtils.join(upFileList,",") + ",");
msgContentInfoSb.append("上传了" + StringUtils.join(upFileList,",") + ",");
}
if(deleteFileList.size() != 0){
count++;
msgContentSb.append("删除了" + StringUtils.join(deleteFileList,",") + ",");
msgContentInfoSb.append("删除了" + StringUtils.join(deleteFileList,",") + ",");
}
if(count > 0){
String msgContent = msgContentSb.substring(0, msgContentSb.length() - 1);
String msgContentInfo = msgContentInfoSb.substring(0, msgContentInfoSb.length() - 1);
HomeDocumentDynamicEO homeDocumentDynamicEO = new HomeDocumentDynamicEO();
homeDocumentDynamicEO.setMsgContent(msgContent);
homeDocumentDynamicEO.setMsgContentInfo(msgContentInfo);
homeDocumentDynamicEOService.save(homeDocumentDynamicEO);
}
}
private String updateEsInfo(Map<String, Object> map, List<OnlCgformField> searchFieldList, StringBuilder sbCn, StringBuilder sbEn, List<OSSFile> fileInfos, List<Map<String, Object>> mapListTempCn, List<Map<String, Object>> mapListTempEn, String cutCn, String cutEn) {
Map<String, Object> mapBaseDateCn = new HashMap<>();
Map<String, Object> mapBaseDateEn = new HashMap<>();
@@ -53,6 +53,7 @@ public class HomeDocumentDynamicEOController extends JeroController<HomeDocument
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<HomeDocumentDynamicEO> queryWrapper = QueryGenerator.initQueryWrapper(homeDocumentDynamicEO, req.getParameterMap());
queryWrapper.orderByDesc("create_time");
Page<HomeDocumentDynamicEO> page = new Page<HomeDocumentDynamicEO>(pageNo, pageSize);
IPage<HomeDocumentDynamicEO> pageList = homeDocumentDynamicEOService.page(page, queryWrapper);
return Result.OK(pageList);
@@ -76,8 +76,8 @@ public class HomeFunctionModuleEOController extends JeroController<HomeFunctionM
@AutoLog(value = "功能模块-列表查询")
@ApiOperation(value="功能模块-列表查询", notes="功能模块-列表查询")
@GetMapping(value = "/list")
public Result<List<HomeFunctionModuleEO>> queryList() {
List<HomeFunctionModuleEO> list = homeFunctionModuleEOService.queryList();
public Result<List<HomeFunctionModuleEO>> queryList(String cut) {
List<HomeFunctionModuleEO> list = homeFunctionModuleEOService.queryList(cut);
return Result.OK(list);
}
@@ -59,5 +59,5 @@ public interface IHomeFunctionModuleEOService extends IService<HomeFunctionModul
*
* @return
*/
List<HomeFunctionModuleEO> queryList();
List<HomeFunctionModuleEO> queryList(String cut);
}
@@ -3,6 +3,7 @@ package com.jero.modules.home.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.home.entity.HomeFunctionModuleEO;
import com.jero.modules.home.mapper.HomeFunctionModuleEOMapper;
@@ -99,7 +100,7 @@ public class HomeFunctionModuleEOServiceImpl extends ServiceImpl<HomeFunctionMod
* @return
*/
@Override
public List<HomeFunctionModuleEO> queryList() {
public List<HomeFunctionModuleEO> queryList(String cut) {
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//所有的图表(state=0)
@@ -111,9 +112,19 @@ public class HomeFunctionModuleEOServiceImpl extends ServiceImpl<HomeFunctionMod
LambdaQueryWrapper<HomeFunctionModuleEO> wrapperTemp = new LambdaQueryWrapper<>();
wrapperTemp.in(HomeFunctionModuleEO::getCreateBy,loginUser.getUsername()).orderByAsc(HomeFunctionModuleEO::getState).orderByAsc(HomeFunctionModuleEO::getSort);
List<HomeFunctionModuleEO> homeFunctionModuleEOS = this.list(wrapperTemp);
if(homeFunctionModuleEOS.size() == 0){
if(homeFunctionModuleEOList.size() == 0){
if(CutEnum.EN.getValue().equals(cut)){
for (HomeFunctionModuleEO homeFunctionModuleEO : homeFunctionModuleEOList) {
homeFunctionModuleEO.setIconName(homeFunctionModuleEO.getIconNameEn());
}
}
return homeFunctionModuleEOList;
}else{
if(CutEnum.EN.getValue().equals(cut)){
for (HomeFunctionModuleEO homeFunctionModuleEO : homeFunctionModuleEOS) {
homeFunctionModuleEO.setIconName(homeFunctionModuleEO.getIconNameEn());
}
}
return homeFunctionModuleEOS;
}
@@ -15,6 +15,7 @@ import org.jeecgframework.poi.excel.annotation.ExcelTarget;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.List;
/**
@@ -60,7 +61,8 @@ public class ProjectRelatedPersonnel implements Serializable {
@TableField(exist = false)
@Excel(name = "认证工程师,Homologation Engineer", width = 15,orderNum = "4")
private java.lang.String certificationEngineerName;
@TableField(exist = false)
private List<String> certificationEngineerNameList;
/**备注*/
@Excel(name = "备注,Comments", width = 15,orderNum = "5")
private java.lang.String remark;
@@ -88,55 +90,4 @@ public class ProjectRelatedPersonnel implements Serializable {
/**中英切换标志*/
@TableField(exist = false)
private String cut;
}
/* *//**责任领域*//*
@Excel(name = "责任领域,Responsible Field", width = 15,orderNum = "1",dicCode = "duty_territory")
@Dict(dicCode = "duty_territory")
private java.lang.String dutyTerritory;
*//**法规工程师*//*
private java.lang.String lawEngineer;
@TableField(exist = false)
@Excel(name = "法规工程师,Regulation Engineer", width = 15,orderNum = "2")
private java.lang.String lawEngineerName;
*//**工程接口人*//*
private java.lang.String engineeringInterfacePerson;
@TableField(exist = false)
@Excel(name = "工程接口人,Engineering Interface", width = 15,orderNum = "3")
private java.lang.String engineeringInterfacePersonName;
*//**认证工程师*//*
private java.lang.String certificationEngineer;
@TableField(exist = false)
@Excel(name = "认证工程师,Homologation Engineer", width = 15,orderNum = "4")
private java.lang.String certificationEngineerName;
*//**备注*//*
@Excel(name = "备注,Comments", width = 15,orderNum = "5")
private java.lang.String remark;
*//**创建人*//*
private java.lang.String createBy;
*//**创建日期*//*
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private java.util.Date createTime;
*//**更新人*//*
private java.lang.String updateBy;
*//**更新日期*//*
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private java.util.Date updateTime;
*//**所属部门*//*
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
*//**中英切换标志*//*
@TableField(exist = false)
private String cut;
}*/
}
@@ -996,79 +996,43 @@ public class ProjectRelatedPersonnelServiceImpl extends ServiceImpl<ProjectRelat
return getOne(queryWrapper);
}
// //导入-更新数据
// private void updateDataById(List<ProjectRelatedPersonnel> records) {
//// List<ProjectRelatedPersonnel> records = projectRelatedPersonnelMapper.queryById(projectRelatedPersonnel.getId());
// for (ProjectRelatedPersonnel projectRelatedPersonnel : records) {
//// //法规工程师
//// 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);
//// }
////
//// //工程接口人
//// 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);
//// }
////
////// 工程接口人
//// String certificationString = projectRelatedPersonnel.getCertificationEngineer();
//// //去重
//// if(StringUtils.isNotBlank(certificationString)) {
//// List<String> certificationList = Arrays.asList(certificationString.split(","));
//// String certificationDistinct = certificationList.stream().distinct().collect(Collectors.joining(","));
//// projectRelatedPersonnel.setCertificationEngineer(certificationDistinct);
//// }
////
//// if (StringUtils.isBlank(data.getRemark())) {//数据库里备注是空的
//// projectRelatedPersonnel.setRemark(projectRelatedPersonnel.getRemark());
//// } else {
//// projectRelatedPersonnel.setRemark("");
//// }
//
// Date now = new Date();
// projectRelatedPersonnel.setUpdateTime(now);
// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// projectRelatedPersonnel.setUpdateBy(sysUser.getUsername());
// updateById(projectRelatedPersonnel);
// }
// }
@Override
public List<ProjectRelatedPersonnel> queryCertificationEngineer(String projectId) {
//查询数据库中的数据
QueryWrapper<ProjectRelatedPersonnel> queryWrapper = new QueryWrapper<>();
List<ProjectRelatedPersonnel> list = list(queryWrapper.eq("project_id",projectId));
List<ProjectRelatedPersonnel> list = list(queryWrapper.eq("project_id", projectId));
List<ProjectRelatedPersonnel> certificationEngineerList = new ArrayList<>();
//查询基础表认证工程师的值
QueryWrapper<ProjectLibraryBase> baseQueryWrapper = new QueryWrapper<>();
List<ProjectLibraryBase> baseDataList = projectLibraryBaseService.list(baseQueryWrapper.eq("id", projectId));
String baseCertificationEngineer = baseDataList.get(0).getCertificationEngineer();
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.isNotBlank(baseCertificationEngineer)) {
for (ProjectRelatedPersonnel projectRelatedPersonnel : list) {
projectRelatedPersonnel.setCertificationEngineer(baseCertificationEngineer);
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);
}
}
}
}
disposeData(list);
List<ProjectRelatedPersonnel> certificationEngineerList = new ArrayList<>();
for(ProjectRelatedPersonnel personnel : list){
ProjectRelatedPersonnel relatedPersonnel =new ProjectRelatedPersonnel();
relatedPersonnel.setCertificationEngineer(personnel.getCertificationEngineer());
relatedPersonnel.setCertificationEngineerName(personnel.getCertificationEngineerName());
certificationEngineerList.add(relatedPersonnel);
}
certificationEngineerList = certificationEngineerList.stream().distinct().collect(Collectors.toList());
return certificationEngineerList;
}
}