From 9517ad15d6487c22691f336cd81d001d91d5cc69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=98ml=E2=80=99?= Date: Fri, 11 Nov 2022 10:36:49 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=81=8C=E7=BA=A7?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=AD=97=E6=AE=B5=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ImportCommonServiceImpl.java | 66 +++++++++++-------- 1 file changed, 40 insertions(+), 26 deletions(-) diff --git a/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java b/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java index 37399001..99354f82 100644 --- a/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java +++ b/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java @@ -1573,7 +1573,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ List schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue)); if (schemePOS.size() > 0) { historyDetailPO.setOperateDetail("方案页导入:方案编号[" + reallyValue + "]与原有编号重复"); - historyDetailPO.setRelatedName(infoPO.getFieldName()); + historyDetailPO.setRelatedName(cellValue); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1584,7 +1584,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ List schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue)); if (schemePOS.size() == 0) { historyDetailPO.setOperateDetail("职等页导入:未找到编号为[" + reallyValue + "]的方案"); - historyDetailPO.setRelatedName(infoPO.getFieldName()); + historyDetailPO.setRelatedName(cellValue); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1595,20 +1595,25 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ List schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue)); if (schemePOS.size() == 0) { historyDetailPO.setOperateDetail("职级页导入:未找到编号为[" + reallyValue + "]的方案"); - historyDetailPO.setRelatedName(infoPO.getFieldName()); + historyDetailPO.setRelatedName(cellValue); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; } } if ("level_no".equals(infoPO.getFieldName()) && s == 2) { - List levelPOS = MapperProxyFactory.getProxy(LevelMapper.class).listByNo(Util.null2String(reallyValue)); - if (levelPOS.size() == 0) { - historyDetailPO.setOperateDetail("职级页导入:未找到编号为[" + reallyValue + "]的职等"); - historyDetailPO.setRelatedName(infoPO.getFieldName()); - historyDetailPO.setStatus("0"); - saveImportDetailLog(historyDetailPO); - continue nextRow; + String[] split = Util.null2String(reallyValue).split(","); + if (split.length > 0) { + for (int index = 0; index < split.length - 1; index++) { + List levelPOS = MapperProxyFactory.getProxy(LevelMapper.class).listByNo(split[index]); + if (levelPOS.size() == 0) { + historyDetailPO.setOperateDetail("职级页导入:未找到编号为[" + reallyValue + "]的职等"); + historyDetailPO.setRelatedName(cellValue); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } + } } } } @@ -1646,8 +1651,8 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ if (schemeNew != null) { levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid(levelNo, schemeNew.getId()); if (levelNew != null) { - historyDetailPO.setRelatedName("职等页导入"); - historyDetailPO.setOperateDetail("同一方案" + schemeNo + "下,职等编号不可重复"); + historyDetailPO.setRelatedName("职等编号"); + historyDetailPO.setOperateDetail("职等页导入:同一方案" + schemeNo + "下,职等编号不可重复"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1672,7 +1677,6 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ String levelNo = (String) map.get("level_no"); schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo(schemeNo); - levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid(levelNo, schemeNew.getId()); gradeNew = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByNoAndSid(gradeNo, schemeNew.getId()); gradePO.setGradeNo(gradeNo); @@ -1681,7 +1685,6 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ // 关联方案id gradePO.setSchemeId(schemeNew.getId()); // 关联职等id - gradePO.setLevelId(String.valueOf(levelNew.getId())); gradePO.setGradeNo((String) map.get("grade_no")); gradePO.setForbiddenTag((int) map.get("forbidden_tag")); gradePO.setIsUsed(1); @@ -1689,15 +1692,26 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ gradePO.setDeleteType((int) map.get("delete_type")); gradePO.setCreateTime((Date) map.get("create_time")); gradePO.setUpdateTime((Date) map.get("update_time")); + String[] split = levelNo.split(","); + String levelIds = null; + if (split.length > 0) { + for (int index = 0; index < split.length; index++) { + levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid(split[index], schemeNew.getId()); + if(levelIds!=null){ + levelIds = levelIds+ "," +levelNew.getId(); + }else { + levelIds = String.valueOf(levelNew.getId()); + } + } + } if (gradeNew != null) { - //职级已存在,重新拼接level_id - gradePO.setLevelId(gradeNew.getLevelId() + "," + levelNew.getId()); - - gradePO.setId(gradeNew.getId()); - gradePO.setCreateTime(null); - gradePO.setUpdateTime(new Date()); - MapperProxyFactory.getProxy(GradeMapper.class).updateGrade(gradePO); - } else { + historyDetailPO.setRelatedName("职级编号"); + historyDetailPO.setOperateDetail("职级页导入:同一方案[" + schemeNo + "]下,职级编号不可重复"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + }else{ + gradePO.setLevelId(levelIds); MapperProxyFactory.getProxy(GradeMapper.class).insertIgnoreNull(gradePO); } } @@ -1951,20 +1965,20 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ schemeList.add(column); } if("职等编号".equals(column)){ - levelList.add(column); + levelList.add(0,column); gradeList.add(column); } if("职等名称".equals(column)){ - levelList.add(column); + levelList.add(1,column); } if("职等说明".equals(column)){ levelList.add(column); } if("职级编号".equals(column)){ - gradeList.add(column); + gradeList.add(0,column); } if("职级名称".equals(column)){ - gradeList.add(column); + gradeList.add(1,column); } if("职级说明".equals(column)){ gradeList.add(column); From 1baf55e04faccc5b61591d4626fb99582ae31a07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=98ml=E2=80=99?= Date: Fri, 11 Nov 2022 13:35:00 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=81=8C=E7=BA=A7=E8=81=8C=E7=AD=89?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ImportCommonServiceImpl.java | 206 +++++++++++------- 1 file changed, 127 insertions(+), 79 deletions(-) diff --git a/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java b/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java index 99354f82..759da7c8 100644 --- a/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java +++ b/src/com/engine/organization/service/impl/ImportCommonServiceImpl.java @@ -1569,11 +1569,11 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ } map.put(infoPO.getFieldName(), reallyValue); // 方案页校验 - if ("scheme_no".equals(infoPO.getFieldName()) && s == 0) { + if ("scheme_no".equals(infoPO.getFieldName()) && s == 0 && "add".equals(operateType)) { List schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue)); if (schemePOS.size() > 0) { - historyDetailPO.setOperateDetail("方案页导入:方案编号[" + reallyValue + "]与原有编号重复"); - historyDetailPO.setRelatedName(cellValue); + historyDetailPO.setOperateDetail("方案编号[" + reallyValue + "]与原有编号重复"); + historyDetailPO.setRelatedName("方案页导入"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1583,8 +1583,8 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ if ("scheme_no".equals(infoPO.getFieldName()) && s == 1) { List schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue)); if (schemePOS.size() == 0) { - historyDetailPO.setOperateDetail("职等页导入:未找到编号为[" + reallyValue + "]的方案"); - historyDetailPO.setRelatedName(cellValue); + historyDetailPO.setOperateDetail("未找到编号为[" + reallyValue + "]的方案"); + historyDetailPO.setRelatedName("职等页导入"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1594,8 +1594,8 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ if ("scheme_no".equals(infoPO.getFieldName()) && s == 2) { List schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue)); if (schemePOS.size() == 0) { - historyDetailPO.setOperateDetail("职级页导入:未找到编号为[" + reallyValue + "]的方案"); - historyDetailPO.setRelatedName(cellValue); + historyDetailPO.setOperateDetail("未找到编号为[" + reallyValue + "]的方案"); + historyDetailPO.setRelatedName("职级页导入"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1607,8 +1607,8 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ for (int index = 0; index < split.length - 1; index++) { List levelPOS = MapperProxyFactory.getProxy(LevelMapper.class).listByNo(split[index]); if (levelPOS.size() == 0) { - historyDetailPO.setOperateDetail("职级页导入:未找到编号为[" + reallyValue + "]的职等"); - historyDetailPO.setRelatedName(cellValue); + historyDetailPO.setOperateDetail("未找到编号为[" + reallyValue + "]的职等"); + historyDetailPO.setRelatedName("职级页导入"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; @@ -1670,6 +1670,12 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ levelPO.setUpdateTime((Date) map.get("update_time")); MapperProxyFactory.getProxy(LevelMapper.class).insertIgnoreNull(levelPO); } + } else { + historyDetailPO.setRelatedName("职等页导入"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; } } else if (s == 2) { String gradeNo = (String) map.get("grade_no"); @@ -1677,14 +1683,27 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ String levelNo = (String) map.get("level_no"); schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo(schemeNo); + if (schemeNew == null) { + historyDetailPO.setRelatedName("职级页导入"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } gradeNew = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByNoAndSid(gradeNo, schemeNew.getId()); + if (gradeNew == null) { + historyDetailPO.setRelatedName("职级页导入"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的职等"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } gradePO.setGradeNo(gradeNo); gradePO.setGradeName((String) map.get("grade_name")); gradePO.setDescription((String) map.get("grade_description")); // 关联方案id gradePO.setSchemeId(schemeNew.getId()); - // 关联职等id gradePO.setGradeNo((String) map.get("grade_no")); gradePO.setForbiddenTag((int) map.get("forbidden_tag")); gradePO.setIsUsed(1); @@ -1697,20 +1716,21 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ if (split.length > 0) { for (int index = 0; index < split.length; index++) { levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid(split[index], schemeNew.getId()); - if(levelIds!=null){ - levelIds = levelIds+ "," +levelNew.getId(); - }else { + if (levelIds != null) { + levelIds = levelIds + "," + levelNew.getId(); + } else { levelIds = String.valueOf(levelNew.getId()); } } } if (gradeNew != null) { - historyDetailPO.setRelatedName("职级编号"); - historyDetailPO.setOperateDetail("职级页导入:同一方案[" + schemeNo + "]下,职级编号不可重复"); + historyDetailPO.setRelatedName("职级页导入"); + historyDetailPO.setOperateDetail("同一方案[" + schemeNo + "]下,职级编号不可重复"); historyDetailPO.setStatus("0"); saveImportDetailLog(historyDetailPO); continue nextRow; - }else{ + } else { + // 关联职等id gradePO.setLevelId(levelIds); MapperProxyFactory.getProxy(GradeMapper.class).insertIgnoreNull(gradePO); } @@ -1720,71 +1740,99 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ historyDetailPO.setStatus("1"); saveImportDetailLog(historyDetailPO); } else if ("update".equals(operateType)) { - schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo((String) map.get("scheme_no")); - if (schemeNew != null) { - schemeNew.setSchemeNo((String) map.get("scheme_no")); - schemeNew.setSchemeName((String) map.get("scheme_name")); - schemeNew.setSchemeDescription((String) map.get("scheme_description")); - schemeNew.setUpdateTime((Date) map.get("update_time")); - MapperProxyFactory.getProxy(SchemeMapper.class).updateScheme(schemeNew); - } else { - schemeNew.setSchemeNo((String) map.get("scheme_no")); - schemeNew.setSchemeName((String) map.get("scheme_name")); - schemeNew.setSchemeDescription((String) map.get("scheme_description")); - schemeNew.setForbiddenTag((int) map.get("forbidden_tag")); - schemeNew.setIsUsed(1); - schemeNew.setCreator((long) user.getUID()); - schemeNew.setDeleteType((int) map.get("delete_type")); - schemeNew.setCreateTime((Date) map.get("create_time")); - schemeNew.setUpdateTime((Date) map.get("update_time")); - MapperProxyFactory.getProxy(SchemeMapper.class).insertIgnoreNull(schemeNew); - } - - //查询职等信息 - schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo((String) map.get("scheme_no")); - levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid((String) map.get("level_no"), schemeNew.getId()); - if (levelNew != null) { - levelNew.setLevelNo((String) map.get("level_no")); - levelNew.setLevelName((String) map.get("level_name")); - levelNew.setDescription((String) map.get("level_description")); - //关联方案id - levelNew.setSchemeId(schemeNew.getId()); - levelNew.setUpdateTime((Date) map.get("update_time")); - MapperProxyFactory.getProxy(LevelMapper.class).updateLevel(levelNew); - } else { - levelNew.setLevelNo((String) map.get("level_no")); - levelNew.setLevelName((String) map.get("level_name")); - levelNew.setDescription((String) map.get("level_description")); - //关联方案id - levelNew.setSchemeId(schemeNew.getId()); - levelNew.setForbiddenTag((int) map.get("forbidden_tag")); - levelNew.setIsUsed(1); - levelNew.setCreator((long) user.getUID()); - levelNew.setDeleteType((int) map.get("delete_type")); - levelNew.setCreateTime((Date) map.get("create_time")); - levelNew.setUpdateTime((Date) map.get("update_time")); - MapperProxyFactory.getProxy(LevelMapper.class).insertIgnoreNull(levelNew); - } - - gradeNew = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByNoAndSid((String) map.get("grade_no"), schemeNew.getId()); - if (gradeNew != null) { - gradeNew.setGradeNo((String) map.get("grade_no")); - gradeNew.setGradeName((String) map.get("grade_name")); - gradeNew.setDescription((String) map.get("grade_description")); - // 关联方案id - gradeNew.setSchemeId(schemeNew.getId()); - // 关联职等id - gradeNew.setLevelId(String.valueOf(levelNew.getId())); - gradeNew.setUpdateTime((Date) map.get("update_time")); - GradePO gradePOTmp = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByID(gradeNew.getId()); - if (gradePOTmp != null) { - - MapperProxyFactory.getProxy(GradeMapper.class).updateGrade(gradeNew); - + if (s == 0) { + schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo((String) map.get("scheme_no")); + if (schemeNew != null) { + schemeNew.setSchemeName((String) map.get("scheme_name")); + schemeNew.setSchemeDescription((String) map.get("scheme_description")); + schemeNew.setUpdateTime((Date) map.get("update_time")); + MapperProxyFactory.getProxy(SchemeMapper.class).updateScheme(schemeNew); + } else { + historyDetailPO.setRelatedName("方案更新"); + historyDetailPO.setOperateDetail("未找到编号为[" + map.get("scheme_no") + "]的方案"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } + } else if (s == 1) { + String schemeNo = (String) map.get("scheme_no"); + String levelNo = (String) map.get("level_no"); + schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo(schemeNo); + if (schemeNew != null) { + levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid(levelNo, schemeNew.getId()); + if (levelNew != null) { + levelNew.setLevelName((String) map.get("level_name")); + levelNew.setDescription((String) map.get("level_description")); + //关联方案id + levelNew.setSchemeId(schemeNew.getId()); + levelNew.setUpdateTime((Date) map.get("update_time")); + MapperProxyFactory.getProxy(LevelMapper.class).updateLevel(levelNew); + } else { + historyDetailPO.setRelatedName("职等页更新"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } + } else { + historyDetailPO.setRelatedName("职等页更新"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案,无法更新"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } + } else if (s == 2) { + String gradeNo = (String) map.get("grade_no"); + String schemeNo = (String) map.get("scheme_no"); + String levelNo = (String) map.get("level_no"); + schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo(schemeNo); + if (schemeNew == null) { + historyDetailPO.setRelatedName("职级页更新"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } + gradeNew = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByNoAndSid(gradeNo, schemeNew.getId()); + if (gradeNew == null) { + historyDetailPO.setRelatedName("职级页更新"); + historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的职等"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; + } + + String[] split = levelNo.split(","); + String levelIds = null; + if (split.length > 0) { + for (int index = 0; index < split.length; index++) { + levelNew = MapperProxyFactory.getProxy(LevelMapper.class).getLevelByNoAndSid(split[index], schemeNew.getId()); + if (levelIds != null) { + levelIds = levelIds + "," + levelNew.getId(); + } else { + levelIds = String.valueOf(levelNew.getId()); + } + } + } + if (gradeNew != null) { + gradeNew.setSchemeId(schemeNew.getId()); + gradeNew.setGradeName((String) map.get("grade_name")); + gradeNew.setDescription((String) map.get("grade_description")); + // 关联职等id + gradeNew.setLevelId(levelIds); + gradeNew.setUpdateTime((Date) map.get("update_time")); + MapperProxyFactory.getProxy(GradeMapper.class).updateGrade(gradeNew); + } else { + historyDetailPO.setRelatedName("职级页更新"); + historyDetailPO.setOperateDetail("未找到编号[" + schemeNo + "]的职级,无法更新"); + historyDetailPO.setStatus("0"); + saveImportDetailLog(historyDetailPO); + continue nextRow; } - } else { - MapperProxyFactory.getProxy(GradeMapper.class).insertIgnoreNull(gradePO); } + historyDetailPO.setOperateDetail("更新成功"); + historyDetailPO.setStatus("1"); + saveImportDetailLog(historyDetailPO); } }