Commit ad7cf558 authored by 刘帅's avatar 刘帅

1.维修项目导入功能-优化

parent fa311c1d
...@@ -67,7 +67,7 @@ public class ErpMaintainProjectVo implements Serializable { ...@@ -67,7 +67,7 @@ public class ErpMaintainProjectVo implements Serializable {
/** /**
* 保质期(天) * 保质期(天)
*/ */
@ExcelProperty(value = "保质期") @ExcelProperty(value = "保质期(天)")
private Integer warrantyPeriod; private Integer warrantyPeriod;
/** /**
......
...@@ -19,6 +19,7 @@ import com.maintain.common.excel.ExcelListener; ...@@ -19,6 +19,7 @@ import com.maintain.common.excel.ExcelListener;
import com.maintain.common.excel.ExcelResult; import com.maintain.common.excel.ExcelResult;
import com.maintain.common.exception.ServiceException; import com.maintain.common.exception.ServiceException;
import com.maintain.common.helper.LoginHelper; import com.maintain.common.helper.LoginHelper;
import com.maintain.common.utils.StringUtils;
import com.maintain.common.utils.ValidatorUtils; import com.maintain.common.utils.ValidatorUtils;
import com.maintain.common.utils.spring.SpringUtils; import com.maintain.common.utils.spring.SpringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -26,7 +27,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -26,7 +27,7 @@ import lombok.extern.slf4j.Slf4j;
import java.util.List; import java.util.List;
/** /**
* 故障项目自定义导入 * 检验项目自定义导入
* *
* @author liushuai * @author liushuai
*/ */
...@@ -63,15 +64,14 @@ public class ErpExamineProjectImportListener extends AnalysisEventListener<ErpEx ...@@ -63,15 +64,14 @@ public class ErpExamineProjectImportListener extends AnalysisEventListener<ErpEx
if (ObjectUtil.isNull(erpExamineProject)) { if (ObjectUtil.isNull(erpExamineProject)) {
erpExamineProject = BeanUtil.toBean(projectImportVo, ErpExamineProject.class); erpExamineProject = BeanUtil.toBean(projectImportVo, ErpExamineProject.class);
ValidatorUtils.validate(erpExamineProject); ValidatorUtils.validate(erpExamineProject);
LambdaQueryWrapper<ErpProjectType> typeLambdaQueryWrapper = Wrappers.lambdaQuery(); ErpProjectType projectType = typeMapper.selectOne(
typeLambdaQueryWrapper.eq(ErpProjectType::getTypeName, erpExamineProject.getTypeName()) new LambdaQueryWrapper<ErpProjectType>().eq(ErpProjectType::getTypeName, erpExamineProject.getTypeName())
.eq(ErpProjectType::getType, ProjectType.EXAMINE.getCode()); .eq(ErpProjectType::getType, ProjectType.EXAMINE.getCode()));
ErpProjectType projectType = typeMapper.selectOne(typeLambdaQueryWrapper);
if (null == projectType) { if (null == projectType) {
ErpProjectType type = new ErpProjectType(); ErpProjectType type = new ErpProjectType();
type.setTypeName(erpExamineProject.getTypeName()); type.setTypeName(erpExamineProject.getTypeName());
type.setParentId(Long.valueOf(ProjectType.EXAMINE.getCode())); type.setParentId(Long.valueOf(ProjectType.EXAMINE.getCode()));
type.setAncestors("0,3"); type.setAncestors("0" + StringUtils.SEPARATOR + ProjectType.EXAMINE.getCode());
type.setType(ProjectType.EXAMINE.getCode()); type.setType(ProjectType.EXAMINE.getCode());
typeMapper.insert(type); typeMapper.insert(type);
erpExamineProject.setTypeId(type.getTypeId()); erpExamineProject.setTypeId(type.getTypeId());
......
...@@ -22,7 +22,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -22,7 +22,7 @@ import lombok.extern.slf4j.Slf4j;
import java.util.List; import java.util.List;
/** /**
* 故障项目自定义导入 * 维修原因自定义导入
* *
* @author liushuai * @author liushuai
*/ */
...@@ -52,7 +52,7 @@ public class ErpMaintainCauseImportListener extends AnalysisEventListener<ErpMai ...@@ -52,7 +52,7 @@ public class ErpMaintainCauseImportListener extends AnalysisEventListener<ErpMai
lqw.eq(ErpMaintainCause::getMaintainCauseCode, maintainCauseImportVo.getMaintainCauseCode()); lqw.eq(ErpMaintainCause::getMaintainCauseCode, maintainCauseImportVo.getMaintainCauseCode());
ErpMaintainCause erpMaintainCause = maintainCauseMapper.selectOne(lqw); ErpMaintainCause erpMaintainCause = maintainCauseMapper.selectOne(lqw);
try { try {
// 验证是否存在这个车辆 // 验证是否存在这个维修原因
if (ObjectUtil.isNull(erpMaintainCause)) { if (ObjectUtil.isNull(erpMaintainCause)) {
erpMaintainCause = BeanUtil.toBean(maintainCauseImportVo, ErpMaintainCause.class); erpMaintainCause = BeanUtil.toBean(maintainCauseImportVo, ErpMaintainCause.class);
ValidatorUtils.validate(erpMaintainCause); ValidatorUtils.validate(erpMaintainCause);
......
...@@ -6,13 +6,17 @@ import com.alibaba.excel.context.AnalysisContext; ...@@ -6,13 +6,17 @@ import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.event.AnalysisEventListener;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.maintain.business.domain.ErpMaintainProject; import com.maintain.business.domain.ErpMaintainProject;
import com.maintain.business.domain.ErpProjectType;
import com.maintain.business.domain.vo.ErpMaintainProjectImportVo; import com.maintain.business.domain.vo.ErpMaintainProjectImportVo;
import com.maintain.business.domain.vo.ErpMaintainProjectVo; import com.maintain.business.domain.vo.ErpMaintainProjectVo;
import com.maintain.business.mapper.ErpMaintainProjectMapper; import com.maintain.business.mapper.ErpMaintainProjectMapper;
import com.maintain.business.mapper.ErpProjectTypeMapper;
import com.maintain.common.enums.ProjectType;
import com.maintain.common.excel.ExcelListener; import com.maintain.common.excel.ExcelListener;
import com.maintain.common.excel.ExcelResult; import com.maintain.common.excel.ExcelResult;
import com.maintain.common.exception.ServiceException; import com.maintain.common.exception.ServiceException;
import com.maintain.common.helper.LoginHelper; import com.maintain.common.helper.LoginHelper;
import com.maintain.common.utils.StringUtils;
import com.maintain.common.utils.ValidatorUtils; import com.maintain.common.utils.ValidatorUtils;
import com.maintain.common.utils.spring.SpringUtils; import com.maintain.common.utils.spring.SpringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -29,6 +33,8 @@ public class ErpMaintainProjectImportListener extends AnalysisEventListener<ErpM ...@@ -29,6 +33,8 @@ public class ErpMaintainProjectImportListener extends AnalysisEventListener<ErpM
private final ErpMaintainProjectMapper projectMapper; private final ErpMaintainProjectMapper projectMapper;
private final ErpProjectTypeMapper projectTypeMapper;
private final Boolean isUpdateSupport; private final Boolean isUpdateSupport;
private final String operName; private final String operName;
...@@ -40,6 +46,7 @@ public class ErpMaintainProjectImportListener extends AnalysisEventListener<ErpM ...@@ -40,6 +46,7 @@ public class ErpMaintainProjectImportListener extends AnalysisEventListener<ErpM
public ErpMaintainProjectImportListener(Boolean isUpdateSupport) { public ErpMaintainProjectImportListener(Boolean isUpdateSupport) {
this.projectMapper = SpringUtils.getBean(ErpMaintainProjectMapper.class); this.projectMapper = SpringUtils.getBean(ErpMaintainProjectMapper.class);
this.projectTypeMapper = SpringUtils.getBean(ErpProjectTypeMapper.class);
this.isUpdateSupport = isUpdateSupport; this.isUpdateSupport = isUpdateSupport;
this.operName = LoginHelper.getUsername(); this.operName = LoginHelper.getUsername();
} }
...@@ -51,10 +58,24 @@ public class ErpMaintainProjectImportListener extends AnalysisEventListener<ErpM ...@@ -51,10 +58,24 @@ public class ErpMaintainProjectImportListener extends AnalysisEventListener<ErpM
.eq(ErpMaintainProject::getProjectName, projectImportVo.getProjectName()); .eq(ErpMaintainProject::getProjectName, projectImportVo.getProjectName());
ErpMaintainProject maintainProject = projectMapper.selectOne(lqw); ErpMaintainProject maintainProject = projectMapper.selectOne(lqw);
try { try {
// 验证是否存在这个车辆 // 验证是否存在这个维修项目
if (ObjectUtil.isNull(maintainProject)) { if (ObjectUtil.isNull(maintainProject)) {
maintainProject = BeanUtil.toBean(projectImportVo, ErpMaintainProject.class); maintainProject = BeanUtil.toBean(projectImportVo, ErpMaintainProject.class);
ValidatorUtils.validate(maintainProject); ValidatorUtils.validate(maintainProject);
if (StringUtils.isNotEmpty(maintainProject.getTypeName())) {
ErpProjectType projectType = projectTypeMapper.selectOne(new LambdaQueryWrapper<ErpProjectType>().eq(ErpProjectType::getTypeName, maintainProject.getTypeName()).eq(ErpProjectType::getType, ProjectType.MAINTAIN.getCode()));
if (null == projectType) {
ErpProjectType erpProjectType = new ErpProjectType();
erpProjectType.setTypeName(maintainProject.getTypeName());
erpProjectType.setParentId(Long.valueOf(ProjectType.MAINTAIN.getCode()));
erpProjectType.setAncestors("0" + StringUtils.SEPARATOR + ProjectType.MAINTAIN.getCode());
erpProjectType.setType(ProjectType.MAINTAIN.getCode());
projectTypeMapper.insert(erpProjectType);
maintainProject.setTypeId(erpProjectType.getTypeId());
}else {
maintainProject.setTypeId(projectType.getTypeId());
}
}
projectMapper.insert(maintainProject); projectMapper.insert(maintainProject);
successNum++; successNum++;
successMsg.append("<br/>").append(successNum).append("、维修项目 ").append(maintainProject.getProjectName()).append(" 导入成功"); successMsg.append("<br/>").append(successNum).append("、维修项目 ").append(maintainProject.getProjectName()).append(" 导入成功");
......
...@@ -20,6 +20,7 @@ import com.maintain.common.excel.ExcelListener; ...@@ -20,6 +20,7 @@ import com.maintain.common.excel.ExcelListener;
import com.maintain.common.excel.ExcelResult; import com.maintain.common.excel.ExcelResult;
import com.maintain.common.exception.ServiceException; import com.maintain.common.exception.ServiceException;
import com.maintain.common.helper.LoginHelper; import com.maintain.common.helper.LoginHelper;
import com.maintain.common.utils.StringUtils;
import com.maintain.common.utils.ValidatorUtils; import com.maintain.common.utils.ValidatorUtils;
import com.maintain.common.utils.spring.SpringUtils; import com.maintain.common.utils.spring.SpringUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -64,14 +65,15 @@ public class ErpMalfunctionProjectImportListener extends AnalysisEventListener<E ...@@ -64,14 +65,15 @@ public class ErpMalfunctionProjectImportListener extends AnalysisEventListener<E
if (ObjectUtil.isNull(malfunctionProject)) { if (ObjectUtil.isNull(malfunctionProject)) {
malfunctionProject = BeanUtil.toBean(projectImportVo, ErpMalfunctionProject.class); malfunctionProject = BeanUtil.toBean(projectImportVo, ErpMalfunctionProject.class);
ValidatorUtils.validate(malfunctionProject); ValidatorUtils.validate(malfunctionProject);
LambdaQueryWrapper<ErpProjectType> projectTypeLambdaQueryWrapper = Wrappers.lambdaQuery(); ErpProjectType erpProjectType = projectTypeMapper.selectOne(
projectTypeLambdaQueryWrapper.eq(ErpProjectType::getTypeName, malfunctionProject.getTypeName()).eq(ErpProjectType::getType, ProjectType.MALFUNCTION.getCode()); new LambdaQueryWrapper<ErpProjectType>()
ErpProjectType erpProjectType = projectTypeMapper.selectOne(projectTypeLambdaQueryWrapper); .eq(ErpProjectType::getTypeName, malfunctionProject.getTypeName())
.eq(ErpProjectType::getType, ProjectType.MALFUNCTION.getCode()));
if (erpProjectType == null) { if (erpProjectType == null) {
ErpProjectType projectType = new ErpProjectType(); ErpProjectType projectType = new ErpProjectType();
projectType.setTypeName(malfunctionProject.getTypeName()); projectType.setTypeName(malfunctionProject.getTypeName());
projectType.setParentId(2L); projectType.setParentId(2L);
projectType.setAncestors("0,2"); projectType.setAncestors("0" + StringUtils.SEPARATOR + ProjectType.MALFUNCTION.getCode());
projectType.setType(ProjectType.MALFUNCTION.getCode()); projectType.setType(ProjectType.MALFUNCTION.getCode());
projectTypeMapper.insert(projectType); projectTypeMapper.insert(projectType);
malfunctionProject.setTypeId(projectType.getTypeId()); malfunctionProject.setTypeId(projectType.getTypeId());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment