update 调整企标计划字段

This commit is contained in:
lijiarao
2024-09-19 14:39:25 +08:00
parent ad65960303
commit 07e059d34c
6 changed files with 80 additions and 11 deletions
@@ -1,6 +1,7 @@
package com.jero.modules.laws.enterprise.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -61,6 +62,11 @@ public class EnterpriseStandardPlan {
*/
@ApiModelProperty(value = "起草人")
private String mainDraftingUser;
/**
* 所在部门id
*/
@ApiModelProperty(value = "所在部门id")
private String departId;
/**
* 专业模块
*/
@@ -28,7 +28,7 @@ public class EnterpriseStandardPlanVo {
@Excel(name = "制修订类别", width = 15, dicCode = "esp_revision_type")
@Dict(dicCode = "esp_revision_type")
@ApiModelProperty(value = "制修订类别")
private String applicationCategory;
private String revisionType;
@Excel(name = "标准编号", width = 15)
@ApiModelProperty(value = "标准编号")
@@ -38,17 +38,22 @@ public class EnterpriseStandardPlanVo {
@ApiModelProperty(value = "标准名称")
private String standardName;
@Excel(name = "起草人", width = 15)
@Excel(name = "起草人", width = 15, dictTable = "sys_user", dicCode = "id", dicText = "realname")
@Dict(dictTable = "sys_user", dicCode = "id", dicText = "realname")
@ApiModelProperty(value = "起草人")
private String mainDraftingUser;
@Excel(name = "邮箱", width = 15)
@ApiModelProperty(value = "邮箱")
private String mail;
@Excel(name = "所在部门", width = 15)
@ApiModelProperty(value = "所在部门")
private String depart;
private String email;
/**
* 所在部门id
*/
@Excel(name = "所在部门", width = 15, dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
@Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
@ApiModelProperty(value = "所在部门id")
private String departId;
/**
* 专业模块
@@ -1,5 +1,7 @@
package com.jero.modules.laws.enterprise.service.impl;
import cn.hutool.core.collection.CollStreamUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -7,7 +9,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.api.CommonAPI;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.DictModel;
import com.jero.common.util.PasswordUtil;
import com.jero.modules.activiti.util.ExcelUtils;
import com.jero.modules.laws.common.service.ILawsCommonService;
import com.jero.modules.laws.common.util.ImportUtil;
@@ -16,6 +21,7 @@ import com.jero.modules.laws.enterprise.entity.vo.EnterpriseStandardPlanVo;
import com.jero.modules.laws.enterprise.mapper.EnterpriseStandardPlanMapper;
import com.jero.modules.laws.enterprise.service.EnterpriseStandardPlanService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -25,6 +31,8 @@ import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author ThinkBook
@@ -42,6 +50,8 @@ public class EnterpriseStandardPlanServiceImpl extends ServiceImpl<EnterpriseSta
@Resource
private CommonAPI commonAPI;
@Resource
private ISysBaseAPI sysBaseAPI;
@Resource
private ExcelUtils excelUtils;
@@ -54,15 +64,30 @@ public class EnterpriseStandardPlanServiceImpl extends ServiceImpl<EnterpriseSta
@Override
public IPage<EnterpriseStandardPlanVo> queryPageList(EnterpriseStandardPlan enterpriseStandardPlan, HttpServletRequest req, IPage<EnterpriseStandardPlan> page) {
List<String> subDepIds = null;
String departId = enterpriseStandardPlan.getDepartId();
if (StringUtils.isNotBlank(departId)) {
subDepIds = sysBaseAPI.getSubDepIdsByDepId(departId);
enterpriseStandardPlan.setDepartId(null);
}
QueryWrapper<EnterpriseStandardPlan> wrapper = QueryGenerator.initQueryWrapper(enterpriseStandardPlan, req.getParameterMap());
if (subDepIds != null){
wrapper.lambda().in(EnterpriseStandardPlan::getDepartId,subDepIds);
}
IPage<EnterpriseStandardPlan> pageList = this.page(page, wrapper);
IPage<EnterpriseStandardPlanVo> pageList1 = new Page<>();
BeanUtils.copyProperties(pageList,pageList1);
List<EnterpriseStandardPlan> records = pageList.getRecords();
List<String> userIdList = records.stream().map(EnterpriseStandardPlan::getMainDraftingUser).distinct().collect(Collectors.toList());
//批量查询用户邮箱
List<DictModel> dictModels = sysBaseAPI.translateDictFromTableByKeys("sys_user", "email", "id", String.join(",", userIdList));
Map<String, String> userEmailMap = CollStreamUtil.toMap(dictModels, DictModel::getValue, DictModel::getText);
List<EnterpriseStandardPlanVo> list = new ArrayList<>();
for (EnterpriseStandardPlan record : records) {
EnterpriseStandardPlanVo vo = new EnterpriseStandardPlanVo();
BeanUtils.copyProperties(record,vo);
String userId = vo.getMainDraftingUser();
vo.setEmail(PasswordUtil.decrypt(userEmailMap.get(userId)));
list.add(vo);
}
pageList1.setRecords(list);