feat(企标稽查流程): 完善

This commit is contained in:
yjz
2023-11-16 17:11:41 +08:00
parent 5b0070e92b
commit e6d6fa1911
7 changed files with 381 additions and 30 deletions
@@ -72,6 +72,20 @@ public class EsInspectPlanFlowController {
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
}
/**
* 企标稽查计划流程-流程保存
* @param esInspectPlanFlowVO 企标稽查计划流程VO对象
* @return 结果对象
*/
@AutoLog(value = "企标稽查计划流程-流程保存")
@ApiOperation(value="企标稽查计划流程-流程保存", notes="企标稽查计划流程-流程保存")
@PostMapping(value = "/flowSave")
public Result<T> flowSave(@RequestBody EsInspectPlanFlowVO esInspectPlanFlowVO) {
esInspectPlanFlowService.flowSave(esInspectPlanFlowVO);
return Result.OK(MessageUtils.getMessage(ResultCommon.OK));
}
/**
* 企标稽查计划流程-办理详情
* @param projectId 项目id
@@ -81,8 +95,8 @@ public class EsInspectPlanFlowController {
@ApiOperation(value="企标稽查计划流程-办理详情", notes="企标稽查计划流程-办理详情")
@GetMapping(value = "/queryDetailByProjectId")
@Translation
public Result<EsInspectPlanFlowVO> queryDetailByProjectId(String projectId) {
return Result.OK(esInspectPlanFlowService.queryDetailByProjectId(projectId));
public Result<EsInspectPlanFlowVO> queryDetailByProjectId(String projectId, String taskId) {
return Result.OK(esInspectPlanFlowService.queryDetailByProjectId(projectId, taskId));
}
/**
@@ -169,8 +169,8 @@ public class ProcessEsInspectPlanController extends JeroController<ProcessEsInsp
* @return
*/
@PostMapping(value = "/importExcel")
public Result<ProcessEsInspectPlan> importExcel(HttpServletRequest request, HttpServletResponse response) {
return super.importExcel(request, response, ProcessEsInspectPlan.class);
public Result<List<ProcessEsInspectPlan>> importExcel(HttpServletRequest request, HttpServletResponse response) throws Exception {
return processEsInspectPlanService.importExcel(request, response);
}
}
@@ -1,5 +1,6 @@
package com.jero.modules.activiti.process.esinspectplan.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jero.common.aspect.annotation.Dict;
@@ -28,7 +29,6 @@ import java.util.Date;
@ApiModel(value="process_es_inspect_plan对象", description="企标稽查计划业务表")
public class ProcessEsInspectPlan extends BaseEntity {
/**项目id*/
@Excel(name = "项目id", width = 15)
@ApiModelProperty(value = "项目id")
private String projectId;
/**稽查依据标准号*/
@@ -55,11 +55,16 @@ public class ProcessEsInspectPlan extends BaseEntity {
@Dict(dictTable ="sys_depart",dicText = "depart_name",dicCode = "id")
private String belongDept;
/**计划稽查日期*/
@Excel(name = "计划稽查日期", width = 15, format = "yyyy-MM-dd")
// @Excel(name = "计划稽查日期", width = 15, format = "yyyy-MM-dd")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@ApiModelProperty(value = "计划稽查日期")
private Date planInspectDate;
/**计划稽查日期 导入用*/
@Excel(name = "计划稽查日期", width = 15, format = "yyyy-MM-dd")
@ApiModelProperty(value = "计划稽查日期 导入用")
@TableField(exist = false)
private String planInspectDates;
/**稽查负责人*/
@Excel(name = "稽查负责人", width = 15)
@ApiModelProperty(value = "稽查负责人")
@@ -19,12 +19,20 @@ public interface IEsInspectPlanFlowService {
*/
void flowStart(EsInspectPlanFlowVO esInspectPlanFlowVO);
/**
* 企标稽查计划流程-流程保存
* @param esInspectPlanFlowVO
*/
void flowSave(EsInspectPlanFlowVO esInspectPlanFlowVO);
/**
* 企标稽查计划流程-办理详情
*
* @param projectId
* @param taskId
* @return
*/
EsInspectPlanFlowVO queryDetailByProjectId(String projectId);
EsInspectPlanFlowVO queryDetailByProjectId(String projectId, String taskId);
/**
* 企标稽查计划流程-人员信息
@@ -2,8 +2,11 @@ package com.jero.modules.activiti.process.esinspectplan.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.common.api.vo.Result;
import com.jero.modules.activiti.process.esinspectplan.entity.ProcessEsInspectPlan;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
@@ -83,4 +86,12 @@ public interface IProcessEsInspectPlanService extends IService<ProcessEsInspectP
* @return
*/
Map<String, Object> findActRuVariableByInstanceId(String instanceId, String key);
/**
* 通过excel导入数据
* @param request
* @param response
* @return
*/
Result<List<ProcessEsInspectPlan>> importExcel(HttpServletRequest request, HttpServletResponse response) throws Exception;
}
@@ -11,6 +11,9 @@ import com.jero.modules.activiti.entity.ProcessApprovalRecord;
import com.jero.modules.activiti.entity.ProcessNode;
import com.jero.modules.activiti.entity.ProcessNodeLink;
import com.jero.modules.activiti.enums.FinishFlagEnum;
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
import com.jero.modules.activiti.process.common.enums.ProcessType;
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
import com.jero.modules.activiti.process.esinspectplan.common.EsInspectPlanCommon;
import com.jero.modules.activiti.process.esinspectplan.entity.ProcessEsInspectPlan;
import com.jero.modules.activiti.process.esinspectplan.service.IEsInspectPlanFlowService;
@@ -29,6 +32,7 @@ import org.activiti.engine.repository.ProcessDefinition;
import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -49,6 +53,7 @@ import java.util.stream.Collectors;
public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
private final ProcessAllService processAllService;
private final ProcessApprovalRecordService processApprovalRecordService;
private final ProcessDraftService processDraftService;
private final IProcessEsInspectPlanService processEsInspectPlanService;
private final RepositoryService repositoryService;
private final ISysUserService sysUserService;
@@ -58,6 +63,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
public EsInspectPlanFlowServiceImpl(ProcessAllService processAllService,
ProcessApprovalRecordService processApprovalRecordService,
ProcessDraftService processDraftService,
IProcessEsInspectPlanService processEsInspectPlanService,
RepositoryService repositoryService,
ISysUserService sysUserService,
@@ -66,6 +72,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
SendMessageAPI sendMessageAPI) {
this.processAllService = processAllService;
this.processApprovalRecordService = processApprovalRecordService;
this.processDraftService = processDraftService;
this.processEsInspectPlanService = processEsInspectPlanService;
this.repositoryService = repositoryService;
this.sysUserService = sysUserService;
@@ -76,7 +83,6 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine();
RuntimeService runtimeService = processEngine.getRuntimeService();
@Autowired
private TaskService taskService;
@@ -97,8 +103,9 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
// 更新流程总表信息
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_PLAN.getValue()));
processAll.setCreateUserId(loginUser.getId());
processAllService.update(processAll,
processAllService.update(
new LambdaUpdateWrapper<ProcessAll>()
.eq(ProcessAll::getProcessInstanceId, processInstance.getId()));
@@ -115,6 +122,8 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
// 更新流程审批信息
processApprovalRecord.setUserId(loginUser.getId());
processApprovalRecord.setProjectId(processAll.getProjectId());
processApprovalRecord.setFinishFlag(FinishFlagEnum.COMPLETE.getValue());
processApprovalRecordService.update(processApprovalRecord,
new LambdaUpdateWrapper<ProcessApprovalRecord>()
.eq(ProcessApprovalRecord::getTaskId, task.getId()));
@@ -126,6 +135,53 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
taskService.complete(task.getId());
}
@Override
public void flowSave(EsInspectPlanFlowVO esInspectPlanFlowVO) {
// 流程信息
ProcessAll processAll = esInspectPlanFlowVO.getProcessAll();
// 企标稽查计划业务表
List<ProcessEsInspectPlan> processEsInspectPlanList = esInspectPlanFlowVO.getProcessEsInspectPlanList();
// 流程审批信息
ProcessApprovalRecord processApprovalRecord = esInspectPlanFlowVO.getProcessApprovalRecord();
// 流程总表信息
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
processAll.setPrcType(Integer.valueOf(ProcessType.ES_INSPECT_PLAN.getValue()));
ProcessDraft processDraft = new ProcessDraft();
// 属性拷贝
BeanUtils.copyProperties(processAll, processDraft);
// 保存草稿表
if (StringUtils.isNotBlank(processApprovalRecord.getCommitFile())){
processDraft.setHandleFile(processApprovalRecord.getCommitFile());
}
if (StringUtils.isNotBlank(processApprovalRecord.getCommitText())){
processDraft.setHandleText(processApprovalRecord.getCommitText());
}
processDraft.setUserId(loginUser.getId());
processDraftService.save(processDraft);
// 保存企标稽查计划业务表
List<String> ids = new ArrayList<>();
for (ProcessEsInspectPlan processEsInspectPlan : processEsInspectPlanList) {
if (StringUtils.isNotBlank(processApprovalRecord.getId())){
ids.add(processEsInspectPlan.getId());
}
processEsInspectPlan.setProjectId(processAll.getProjectId());
}
//删除旧数据
if (ids.isEmpty()){
processEsInspectPlanService.remove(new LambdaQueryWrapper<ProcessEsInspectPlan>()
.eq(ProcessEsInspectPlan::getProjectId, processAll.getProjectId()));
}else {
processEsInspectPlanService.remove(new LambdaQueryWrapper<ProcessEsInspectPlan>()
.eq(ProcessEsInspectPlan::getProjectId, processAll.getProjectId())
.notIn(ProcessEsInspectPlan::getId, ids));
}
// 保存新数据
processEsInspectPlanService.saveOrUpdateBatch(processEsInspectPlanList);
}
private Map<String, Object> listToString(Map<String, Object> map) {
Map<String, Object> stringObjectHashMap;
stringObjectHashMap = map.entrySet().stream().map(v -> {
@@ -139,24 +195,46 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
}
@Override
public EsInspectPlanFlowVO queryDetailByProjectId(String projectId) {
public EsInspectPlanFlowVO queryDetailByProjectId(String projectId, String taskId) {
EsInspectPlanFlowVO esInspectPlanFlowVO = new EsInspectPlanFlowVO();
// 流程信息
ProcessAll processAll = processAllService.getOne(new LambdaQueryWrapper<ProcessAll>()
.eq(ProcessAll::getProjectId, projectId));
esInspectPlanFlowVO.setProcessAll(processAll);
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
ProcessAll processAll = new ProcessAll();
ProcessApprovalRecord processApprovalRecord = new ProcessApprovalRecord();
// 是否存在草稿
List<ProcessDraft> processDraftList = processDraftService.list(new LambdaQueryWrapper<ProcessDraft>()
.eq(ProcessDraft::getProjectId, projectId)
.eq(ProcessDraft::getUserId, loginUser.getId()));
if (!processDraftList.isEmpty()){
// 存在草稿
ProcessDraft processDraft = processDraftList.get(0);
// 属性拷贝
BeanUtils.copyProperties(processDraft, processAll);
if (StringUtils.isNotBlank(processDraft.getHandleFile())){
processApprovalRecord.setCommitFile(processDraft.getHandleFile());
}
if (StringUtils.isNotBlank(processDraft.getHandleText())){
processApprovalRecord.setCommitText(processDraft.getHandleText());
}
}else {
// 不存在草稿
processAll = processAllService.getOne(new LambdaQueryWrapper<ProcessAll>()
.eq(ProcessAll::getProjectId, projectId), false);
processApprovalRecord = processApprovalRecordService.getOne(new LambdaQueryWrapper<ProcessApprovalRecord>()
.eq(ProcessApprovalRecord::getProjectId, projectId)
.eq(ProcessApprovalRecord::getUserId, loginUser.getId())
.eq(StringUtils.isNotBlank(taskId), ProcessApprovalRecord::getTaskId, taskId)
, false);
}
// 企标稽查计划业务表
List<ProcessEsInspectPlan> processEsInspectPlanList = processEsInspectPlanService.list(new LambdaQueryWrapper<ProcessEsInspectPlan>()
.eq(ProcessEsInspectPlan::getProjectId, projectId));
// 业务基本信息
List<ProcessEsInspectPlan> processEsInspectPlanList = processEsInspectPlanService.list(
new LambdaQueryWrapper<ProcessEsInspectPlan>()
.eq(ProcessEsInspectPlan::getProjectId, projectId));
esInspectPlanFlowVO.setProcessEsInspectPlanList(processEsInspectPlanList);
// 流程审批信息
ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getOne(new LambdaQueryWrapper<ProcessApprovalRecord>()
.eq(ProcessApprovalRecord::getProjectId, projectId));
esInspectPlanFlowVO.setProcessAll(processAll);
esInspectPlanFlowVO.setProcessApprovalRecord(processApprovalRecord);
return esInspectPlanFlowVO;
}
@@ -249,7 +327,6 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService {
// 更新流程审批信息
processApprovalRecordService.update(new LambdaUpdateWrapper<ProcessApprovalRecord>()
.eq(ProcessApprovalRecord::getTaskId, taskId)
.eq(ProcessApprovalRecord::getFinishFlag, FinishFlagEnum.INCOMPLETE.getValue())
.set(ProcessApprovalRecord::getTransferBy, userId)
.set(ProcessApprovalRecord::getUserId, userId));
// 转办
@@ -1,21 +1,38 @@
package com.jero.modules.activiti.process.esinspectplan.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.api.vo.Result;
import com.jero.common.exception.JeroBootException;
import com.jero.common.util.BeanCopyUtils;
import com.jero.common.util.ImportExcelUtil;
import com.jero.modules.activiti.process.esinspectplan.entity.ProcessEsInspectPlan;
import com.jero.modules.activiti.process.esinspectplan.mapper.ProcessEsInspectPlanMapper;
import com.jero.modules.activiti.process.esinspectplan.service.IProcessEsInspectPlanService;
import com.jero.modules.laws.standard.entity.LawsEnterpriseStandard;
import com.jero.modules.laws.standard.service.ILawsEnterpriseStandardService;
import com.jero.modules.system.entity.SysDepart;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysDepartService;
import com.jero.modules.system.service.ISysUserService;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang3.StringUtils;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jetbrains.annotations.NotNull;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.*;
/**
@@ -29,11 +46,22 @@ import java.util.Map;
public class ProcessEsInspectPlanServiceImpl extends ServiceImpl<ProcessEsInspectPlanMapper, ProcessEsInspectPlan> implements IProcessEsInspectPlanService {
private final ProcessEsInspectPlanMapper processEsInspectPlanMapper;
private final ILawsEnterpriseStandardService lawsEnterpriseStandardService;
private final ISysUserService sysUserService;
private final ISysDepartService sysDepartService;
public ProcessEsInspectPlanServiceImpl(ProcessEsInspectPlanMapper processEsInspectPlanMapper) {
public ProcessEsInspectPlanServiceImpl(ProcessEsInspectPlanMapper processEsInspectPlanMapper,
ILawsEnterpriseStandardService lawsEnterpriseStandardService,
ISysUserService sysUserService,
ISysDepartService sysDepartService) {
this.processEsInspectPlanMapper = processEsInspectPlanMapper;
this.lawsEnterpriseStandardService = lawsEnterpriseStandardService;
this.sysUserService = sysUserService;
this.sysDepartService = sysDepartService;
}
private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
/**
* 分页查询
*
@@ -91,9 +119,9 @@ public class ProcessEsInspectPlanServiceImpl extends ServiceImpl<ProcessEsInspec
*/
@Override
public void editById(ProcessEsInspectPlan processEsInspectPlan) {
Date now = new Date();
Date now = new Date();
processEsInspectPlan.setUpdateTime(now);
saveOrUpdate(processEsInspectPlan);
saveOrUpdate(processEsInspectPlan);
}
/**
@@ -133,4 +161,212 @@ public class ProcessEsInspectPlanServiceImpl extends ServiceImpl<ProcessEsInspec
public Map<String, Object> findActRuVariableByInstanceId(String instanceId, String key) {
return processEsInspectPlanMapper.findActRuVariableByInstanceId(instanceId, key);
}
@Override
public Result<List<ProcessEsInspectPlan>> importExcel(HttpServletRequest request, HttpServletResponse response) throws Exception {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
// 获取上传文件对象
MultipartFile file = entity.getValue();
ImportParams params = new ImportParams();
params.setHeadRows(1);
params.setNeedSave(true);
// excel表格头部校验
excelHeadVerify(file, ProcessEsInspectPlan.class, params.getTitleRows(), 0);
List<ProcessEsInspectPlan> lists = ExcelImportUtil.importExcel(file.getInputStream(), ProcessEsInspectPlan.class, params);
if (CollectionUtils.isEmpty(lists)) {
return Result.error("没有数据可导入!");
}
List<ProcessEsInspectPlan> list = BeanCopyUtils.copyBeanList(lists, ProcessEsInspectPlan.class);
StringBuilder errorMSG = new StringBuilder();
// 字段校验
for (int i = 0; i < list.size(); i++) {
String head = "" + (i + 2) + "行:";
List<String> firstVerify = firstVerify(list.get(i));
List<String> secondVerify = secondVerify(list.get(i));
List<String> thirdVerify = thirdVerify(list.get(i));
List<String> fifthVerify = fifthVerify(list.get(i));
List<String> sixthVerify = sixthVerify(list.get(i));
firstVerify.addAll(secondVerify);
firstVerify.addAll(thirdVerify);
firstVerify.addAll(fifthVerify);
firstVerify.addAll(sixthVerify);
if (!firstVerify.isEmpty()){
errorMSG.append(head).append(String.join(",", fifthVerify));
}
}
//update-begin-author:taoyan date:20190528 for:批量插入数据
//update-end-author:taoyan date:20190528 for:批量插入数据
if (errorMSG.length() > 0){
throw new JeroBootException("文件导入失败:<br/>" + errorMSG);
}else {
return Result.OK("文件导入成功!数据行数:" + list.size(), list);
}
}
return Result.error("文件导入失败!");
}
private List<String> sixthVerify(ProcessEsInspectPlan processEsInspectPlan) {
List<String> errorList = new ArrayList<>();
if (StringUtils.isNotBlank(processEsInspectPlan.getStandardizationDockingUser())){
SysUser sysUser = sysUserService.getById(processEsInspectPlan.getStandardizationDockingUser());
if (Objects.isNull(sysUser)){
errorList.add("标准化组对接人不存在!");
}else {
processEsInspectPlan.setStandardizationDockingUser(sysUser.getId());
}
}else {
errorList.add("标准化组对接人不能为空!");
}
if (StringUtils.isNotBlank(processEsInspectPlan.getObjectOfConsultation())){
SysUser sysUser = sysUserService.getById(processEsInspectPlan.getObjectOfConsultation());
if (Objects.isNull(sysUser)){
errorList.add("征求意见对象不存在!");
}else {
processEsInspectPlan.setObjectOfConsultation(sysUser.getId());
}
}else {
errorList.add("征求意见对象不能为空!");
}
return errorList;
}
private List<String> fifthVerify(ProcessEsInspectPlan processEsInspectPlan) {
List<String> errorList = new ArrayList<>();
if (StringUtils.isNotBlank(processEsInspectPlan.getPlanInspectDates())){
try{
Date parse = dateFormat.parse(processEsInspectPlan.getPlanInspectDates());
processEsInspectPlan.setPlanInspectDate(parse);
}catch (Exception e){
errorList.add("计划稽查日期格式不正确!(正确格式:yyyy-MM-dd");
}
}else {
errorList.add("计划稽查日期不能为空!");
}
if (StringUtils.isNotBlank(processEsInspectPlan.getInspectUser())){
SysUser sysUser = sysUserService.getById(processEsInspectPlan.getInspectUser());
if (Objects.isNull(sysUser)){
errorList.add("稽查负责人不存在!");
}else {
processEsInspectPlan.setInspectUser(sysUser.getId());
}
}else {
errorList.add("稽查负责人不能为空!");
}
return errorList;
}
private List<String> thirdVerify(ProcessEsInspectPlan processEsInspectPlan) {
List<String> errorList = new ArrayList<>();
if (StringUtils.isNotBlank(processEsInspectPlan.getStandardizationWorkGroup())){
SysDepart sysDepart = sysDepartService.getById(processEsInspectPlan.getStandardizationWorkGroup());
if (Objects.isNull(sysDepart)) {
errorList.add("主责标准化工作组不存在!");
}else {
processEsInspectPlan.setStandardizationWorkGroup(sysDepart.getId());
}
}else {
errorList.add("主责标准化工作组不能为空!");
}
if (StringUtils.isNotBlank(processEsInspectPlan.getBelongDept())){
SysDepart sysDepart = sysDepartService.getById(processEsInspectPlan.getBelongDept());
if (Objects.isNull(sysDepart)) {
errorList.add("所属部门不存在!");
}else {
processEsInspectPlan.setBelongDept(sysDepart.getId());
}
}else {
errorList.add("所属部门不能为空!");
}
return errorList;
}
private List<String> secondVerify(ProcessEsInspectPlan processEsInspectPlan) {
List<String> errorList = new ArrayList<>();
List<String> departList = new ArrayList<>();
if (StringUtils.isNotBlank(processEsInspectPlan.getInspectObject())){
String[] list = processEsInspectPlan.getInspectObject().split(",");
for (String s : list) {
SysDepart sysDepart = sysDepartService.getById(s);
if (Objects.isNull(sysDepart)) {
errorList.add("计划稽查对象不存在!");
}else {
departList.add(sysDepart.getId());
}
}
}else {
errorList.add("计划稽查对象不能为空!");
}
if (errorList.isEmpty()){
processEsInspectPlan.setInspectObject(String.join(",", departList));
}
return errorList;
}
private List<String> firstVerify(ProcessEsInspectPlan processEsInspectPlan) {
List<String> errorList = new ArrayList<>();
if (StringUtils.isNotBlank(processEsInspectPlan.getInspectNo())){
List<LawsEnterpriseStandard> list = lawsEnterpriseStandardService.list(new LambdaQueryWrapper<LawsEnterpriseStandard>()
.eq(LawsEnterpriseStandard::getStandardNumber, processEsInspectPlan.getInspectNo()));
if (list.isEmpty()) {
errorList.add("稽查依据标准号不存在!");
}
}else {
errorList.add("稽查依据标准号不能为空!");
}
if (StringUtils.isNotBlank(processEsInspectPlan.getInspectName())){
List<LawsEnterpriseStandard> list = lawsEnterpriseStandardService.list(new LambdaQueryWrapper<LawsEnterpriseStandard>()
.eq(LawsEnterpriseStandard::getStandardName, processEsInspectPlan.getInspectName()));
if (list.isEmpty()) {
errorList.add("稽查依据标准名称不存在!");
}
}else {
errorList.add("稽查依据标准名称不能为空!");
}
if (StringUtils.isNotBlank(processEsInspectPlan.getInspectNo())
&& StringUtils.isNotBlank(processEsInspectPlan.getInspectName())
&& errorList.isEmpty()){
List<LawsEnterpriseStandard> list = lawsEnterpriseStandardService.list(new LambdaQueryWrapper<LawsEnterpriseStandard>()
.eq(LawsEnterpriseStandard::getStandardNumber, processEsInspectPlan.getInspectNo())
.eq(LawsEnterpriseStandard::getStandardName, processEsInspectPlan.getInspectName()));
if (list.isEmpty()) {
errorList.add("稽查依据标准号和稽查依据标准名称不匹配!");
}
}
return errorList;
}
/**
* 获取对象ID
*
* @return
*/
private String getId(ProcessEsInspectPlan item) {
try {
return PropertyUtils.getProperty(item, "id").toString();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* excel表头校验
* @param file
* @param carTypeClass
* @param titleRows
* @param i
*/
private void excelHeadVerify(MultipartFile file, Class<ProcessEsInspectPlan> carTypeClass, int titleRows, int i) {
try {
if (!(boolean) ImportExcelUtil.checkTemplateTitle(file, carTypeClass, titleRows, i)){
throw new JeroBootException("excel文件表头错误,请重新下载");
}
}catch (Exception e) {
e.printStackTrace();
throw new JeroBootException("文件格式有误!");
}
}
}