|
|
|
@ -212,7 +212,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
returnMap.put("condition", getResourceImportForm(templatePath));
|
|
|
|
|
break;
|
|
|
|
|
case "joblevel":
|
|
|
|
|
returnMap.put("condition", getJobTitleImportForm(templatePath));
|
|
|
|
|
returnMap.put("condition", getJobLevelImportForm(templatePath));
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
returnMap.put("status", "-1");
|
|
|
|
@ -512,6 +512,67 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
lsGroup.add(groupItem);
|
|
|
|
|
return lsGroup;
|
|
|
|
|
}
|
|
|
|
|
private List<Object> getJobLevelImportForm(String templatePath) throws IOException {
|
|
|
|
|
|
|
|
|
|
// 返回导入数据
|
|
|
|
|
List<Object> lsGroup = new ArrayList<>();
|
|
|
|
|
Map<String, Object> groupItem = new HashMap<>();
|
|
|
|
|
List<Object> itemList = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
groupItem.put("title", SystemEnv.getHtmlLabelName(1361, user.getLanguage()));
|
|
|
|
|
groupItem.put("defaultshow", true);
|
|
|
|
|
|
|
|
|
|
SearchConditionItem searchConditionItem;
|
|
|
|
|
ConditionFactory conditionFactory = new ConditionFactory(user);
|
|
|
|
|
|
|
|
|
|
//导入类型
|
|
|
|
|
List<SearchConditionOption> statusOptions = new ArrayList<>();
|
|
|
|
|
statusOptions.add(new SearchConditionOption("add", SystemEnv.getHtmlLabelName(611, user.getLanguage()), true));
|
|
|
|
|
statusOptions.add(new SearchConditionOption("update", SystemEnv.getHtmlLabelName(17744, user.getLanguage())));
|
|
|
|
|
searchConditionItem = conditionFactory.createCondition(ConditionType.SELECT, 24863, "importType", statusOptions);
|
|
|
|
|
searchConditionItem.setValue("add");
|
|
|
|
|
itemList.add(searchConditionItem);
|
|
|
|
|
|
|
|
|
|
//模板文件
|
|
|
|
|
searchConditionItem = conditionFactory.createCondition(ConditionType.INPUT, 28576, "templet");
|
|
|
|
|
searchConditionItem.setValue(templatePath);
|
|
|
|
|
itemList.add(searchConditionItem);
|
|
|
|
|
|
|
|
|
|
//Excel文件
|
|
|
|
|
searchConditionItem = conditionFactory.createCondition(ConditionType.RESOURCEIMG, 16630, "excelfile");
|
|
|
|
|
itemList.add(searchConditionItem);
|
|
|
|
|
|
|
|
|
|
groupItem.put("items", itemList);
|
|
|
|
|
lsGroup.add(groupItem);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
itemList = new ArrayList<>();
|
|
|
|
|
groupItem = new HashMap<>();
|
|
|
|
|
groupItem.put("title", SystemEnv.getHtmlLabelName(33803, Util.getIntValue(user.getLanguage())));
|
|
|
|
|
groupItem.put("defaultshow", true);
|
|
|
|
|
List<Integer> lsPromptLabel = new ArrayList<>(); //提示信息
|
|
|
|
|
lsPromptLabel.add(34275);
|
|
|
|
|
lsPromptLabel.add(125452);
|
|
|
|
|
|
|
|
|
|
for (int i = 0; i < lsPromptLabel.size(); i++) {
|
|
|
|
|
Map<String, Object> item = new HashMap<>();
|
|
|
|
|
item.put("index", (i + 1));
|
|
|
|
|
String value = Util.toScreen(SystemEnv.getHtmlLabelName(lsPromptLabel.get(i), user.getLanguage()), user.getLanguage());
|
|
|
|
|
if (i == 0) {
|
|
|
|
|
value += SystemEnv.getHtmlLabelName(28576, user.getLanguage());
|
|
|
|
|
item.put("link", templatePath);
|
|
|
|
|
}
|
|
|
|
|
item.put("value", value);
|
|
|
|
|
itemList.add(item);
|
|
|
|
|
}
|
|
|
|
|
Map<String, Object> item = new HashMap<>();
|
|
|
|
|
item.put("index", 3);
|
|
|
|
|
item.put("value", "多个职等之间使用英文状态下逗号”,“隔开");
|
|
|
|
|
itemList.add(item);
|
|
|
|
|
groupItem.put("items", itemList);
|
|
|
|
|
lsGroup.add(groupItem);
|
|
|
|
|
return lsGroup;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<Object> getResourceImportForm(String templatePath) throws IOException {
|
|
|
|
|
|
|
|
|
@ -1509,11 +1570,26 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
throw new RuntimeException(e);
|
|
|
|
|
}
|
|
|
|
|
int allRow = 0;
|
|
|
|
|
nextSheet:
|
|
|
|
|
for (int s = 0; s < workbook.getNumberOfSheets(); s++) {
|
|
|
|
|
// 当前sheet
|
|
|
|
|
XSSFSheet sheetAt = workbook.getSheetAt(s);
|
|
|
|
|
int lastRow = sheetAt.getLastRowNum();
|
|
|
|
|
OrganizationAssert.isTrue(lastRow > 0, "导入数据为空");
|
|
|
|
|
allRow = allRow + lastRow;
|
|
|
|
|
String relatedName = "";
|
|
|
|
|
switch (s) {
|
|
|
|
|
case 0:
|
|
|
|
|
relatedName = "方案页";
|
|
|
|
|
break;
|
|
|
|
|
case 1:
|
|
|
|
|
relatedName = "职等页";
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
relatedName = "职级页";
|
|
|
|
|
OrganizationAssert.isTrue(allRow > 0, "导入数据为空");
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
short lastCellNum = sheetAt.getRow(0).getLastCellNum();
|
|
|
|
|
List<ExtendInfoPO> extendInfoPOS = new ArrayList<>();
|
|
|
|
|
|
|
|
|
@ -1527,7 +1603,6 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
|
|
SchemePO schemePO = new SchemePO();
|
|
|
|
|
SchemePO schemeNew = new SchemePO();
|
|
|
|
|
;
|
|
|
|
|
GradePO gradePO = new GradePO();
|
|
|
|
|
GradePO gradeNew = new GradePO();
|
|
|
|
|
LevelPO levelPO = new LevelPO();
|
|
|
|
@ -1545,6 +1620,7 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
ExtendInfoPO infoPO = extendInfoPOS.get(cellIndex);
|
|
|
|
|
// 数据校验
|
|
|
|
|
if (infoPO.getIsrequired() == 1 && StringUtils.isBlank(cellValue)) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail(infoPO.getFieldNameDesc() + "为必填项");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
@ -1556,59 +1632,62 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
// 数据格式转换
|
|
|
|
|
reallyValue = getReallyValue(infoPO, cellValue);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail(cellValue + "转换失败");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
if (StringUtils.isNotBlank(cellValue) && StringUtils.isBlank(Util.null2String(reallyValue)) && !"ec_company".equals(infoPO.getFieldName()) && !"ec_department".equals(infoPO.getFieldName())) {
|
|
|
|
|
historyDetailPO.setRelatedName("");
|
|
|
|
|
historyDetailPO.setOperateDetail(infoPO.getFieldNameDesc() + "数据转换失败,未找到对应数据");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
map.put(infoPO.getFieldName(), reallyValue);
|
|
|
|
|
// 方案页校验
|
|
|
|
|
// 方案页校验(是否重复)
|
|
|
|
|
if ("scheme_no".equals(infoPO.getFieldName()) && s == 0 && "add".equals(operateType)) {
|
|
|
|
|
List<SchemePO> schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue));
|
|
|
|
|
if (schemePOS.size() > 0) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("方案编号[" + reallyValue + "]与原有编号重复");
|
|
|
|
|
historyDetailPO.setRelatedName("方案页导入");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
break nextSheet;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 职等页校验
|
|
|
|
|
// 职等页校验(方案是否存在)
|
|
|
|
|
if ("scheme_no".equals(infoPO.getFieldName()) && s == 1) {
|
|
|
|
|
List<SchemePO> schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue));
|
|
|
|
|
if (schemePOS.size() == 0) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + reallyValue + "]的方案");
|
|
|
|
|
historyDetailPO.setRelatedName("职等页导入");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 职级页校验
|
|
|
|
|
// 职级页校验(方案是否存在)
|
|
|
|
|
if ("scheme_no".equals(infoPO.getFieldName()) && s == 2) {
|
|
|
|
|
List<SchemePO> schemePOS = MapperProxyFactory.getProxy(SchemeMapper.class).listByNo(Util.null2String(reallyValue));
|
|
|
|
|
if (schemePOS.size() == 0) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + reallyValue + "]的方案");
|
|
|
|
|
historyDetailPO.setRelatedName("职级页导入");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 职级页校验(职等是否存在)
|
|
|
|
|
if ("level_no".equals(infoPO.getFieldName()) && s == 2) {
|
|
|
|
|
String[] split = Util.null2String(reallyValue).split(",");
|
|
|
|
|
if (split.length > 0) {
|
|
|
|
|
for (int index = 0; index < split.length - 1; index++) {
|
|
|
|
|
for (int index = 0; index < split.length; index++) {
|
|
|
|
|
List<LevelPO> levelPOS = MapperProxyFactory.getProxy(LevelMapper.class).listByNo(split[index]);
|
|
|
|
|
if (levelPOS.size() == 0) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + reallyValue + "]的职等");
|
|
|
|
|
historyDetailPO.setRelatedName("职级页导入");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
@ -1632,203 +1711,207 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
map.put("forbidden_tag", 0);
|
|
|
|
|
map.put("is_used", 1);
|
|
|
|
|
if ("add".equals(operateType)) {
|
|
|
|
|
if (s == 0) {
|
|
|
|
|
schemePO.setSchemeNo((String) map.get("scheme_no"));
|
|
|
|
|
schemePO.setSchemeName((String) map.get("scheme_name"));
|
|
|
|
|
schemePO.setSchemeDescription((String) map.get("scheme_description"));
|
|
|
|
|
schemePO.setForbiddenTag((int) map.get("forbidden_tag"));
|
|
|
|
|
schemePO.setIsUsed(1);
|
|
|
|
|
schemePO.setCreator((long) user.getUID());
|
|
|
|
|
schemePO.setDeleteType((int) map.get("delete_type"));
|
|
|
|
|
schemePO.setCreateTime((Date) map.get("create_time"));
|
|
|
|
|
schemePO.setUpdateTime((Date) map.get("update_time"));
|
|
|
|
|
|
|
|
|
|
MapperProxyFactory.getProxy(SchemeMapper.class).insertIgnoreNull(schemePO);
|
|
|
|
|
} 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) {
|
|
|
|
|
historyDetailPO.setRelatedName("职等编号");
|
|
|
|
|
historyDetailPO.setOperateDetail("职等页导入:同一方案" + schemeNo + "下,职等编号不可重复");
|
|
|
|
|
switch (s) {
|
|
|
|
|
case 0:
|
|
|
|
|
schemePO.setSchemeNo((String) map.get("scheme_no"));
|
|
|
|
|
schemePO.setSchemeName((String) map.get("scheme_name"));
|
|
|
|
|
schemePO.setSchemeDescription((String) map.get("scheme_description"));
|
|
|
|
|
schemePO.setForbiddenTag((int) map.get("forbidden_tag"));
|
|
|
|
|
schemePO.setIsUsed(1);
|
|
|
|
|
schemePO.setCreator((long) user.getUID());
|
|
|
|
|
schemePO.setDeleteType((int) map.get("delete_type"));
|
|
|
|
|
schemePO.setCreateTime((Date) map.get("create_time"));
|
|
|
|
|
schemePO.setUpdateTime((Date) map.get("update_time"));
|
|
|
|
|
MapperProxyFactory.getProxy(SchemeMapper.class).insertIgnoreNull(schemePO);
|
|
|
|
|
break;
|
|
|
|
|
case 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) {
|
|
|
|
|
historyDetailPO.setRelatedName("职等编号");
|
|
|
|
|
historyDetailPO.setOperateDetail("职等页导入:同一方案" + schemeNo + "下,职等编号不可重复");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
} else {
|
|
|
|
|
levelPO.setLevelNo(levelNo);
|
|
|
|
|
levelPO.setLevelName((String) map.get("level_name"));
|
|
|
|
|
levelPO.setDescription((String) map.get("level_description"));
|
|
|
|
|
//关联方案id
|
|
|
|
|
levelPO.setSchemeId(schemeNew.getId());
|
|
|
|
|
levelPO.setForbiddenTag((int) map.get("forbidden_tag"));
|
|
|
|
|
levelPO.setIsUsed(1);
|
|
|
|
|
levelPO.setCreator((long) user.getUID());
|
|
|
|
|
levelPO.setDeleteType((int) map.get("delete_type"));
|
|
|
|
|
levelPO.setCreateTime((Date) map.get("create_time"));
|
|
|
|
|
levelPO.setUpdateTime((Date) map.get("update_time"));
|
|
|
|
|
MapperProxyFactory.getProxy(LevelMapper.class).insertIgnoreNull(levelPO);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
String gradeNo2 = (String) map.get("grade_no");
|
|
|
|
|
String schemeNo2 = (String) map.get("scheme_no");
|
|
|
|
|
String levelNo2 = (String) map.get("level_no");
|
|
|
|
|
|
|
|
|
|
schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo(schemeNo2);
|
|
|
|
|
if (schemeNew == null) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo2 + "]的方案");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
} else {
|
|
|
|
|
levelPO.setLevelNo(levelNo);
|
|
|
|
|
levelPO.setLevelName((String) map.get("level_name"));
|
|
|
|
|
levelPO.setDescription((String) map.get("level_description"));
|
|
|
|
|
//关联方案id
|
|
|
|
|
levelPO.setSchemeId(schemeNew.getId());
|
|
|
|
|
levelPO.setForbiddenTag((int) map.get("forbidden_tag"));
|
|
|
|
|
levelPO.setIsUsed(1);
|
|
|
|
|
levelPO.setCreator((long) user.getUID());
|
|
|
|
|
levelPO.setDeleteType((int) map.get("delete_type"));
|
|
|
|
|
levelPO.setCreateTime((Date) map.get("create_time"));
|
|
|
|
|
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");
|
|
|
|
|
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;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
gradePO.setGradeNo(gradeNo);
|
|
|
|
|
gradePO.setGradeName((String) map.get("grade_name"));
|
|
|
|
|
gradePO.setDescription((String) map.get("grade_description"));
|
|
|
|
|
// 关联方案id
|
|
|
|
|
gradePO.setSchemeId(schemeNew.getId());
|
|
|
|
|
gradePO.setGradeNo((String) map.get("grade_no"));
|
|
|
|
|
gradePO.setForbiddenTag((int) map.get("forbidden_tag"));
|
|
|
|
|
gradePO.setIsUsed(1);
|
|
|
|
|
gradePO.setCreator((long) user.getUID());
|
|
|
|
|
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());
|
|
|
|
|
gradePO.setGradeNo(gradeNo2);
|
|
|
|
|
gradePO.setGradeName((String) map.get("grade_name"));
|
|
|
|
|
gradePO.setDescription((String) map.get("grade_description"));
|
|
|
|
|
// 关联方案id
|
|
|
|
|
gradePO.setSchemeId(schemeNew.getId());
|
|
|
|
|
gradePO.setForbiddenTag((int) map.get("forbidden_tag"));
|
|
|
|
|
gradePO.setIsUsed(1);
|
|
|
|
|
gradePO.setCreator((long) user.getUID());
|
|
|
|
|
gradePO.setDeleteType((int) map.get("delete_type"));
|
|
|
|
|
gradePO.setCreateTime((Date) map.get("create_time"));
|
|
|
|
|
gradePO.setUpdateTime((Date) map.get("update_time"));
|
|
|
|
|
String[] split = levelNo2.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) {
|
|
|
|
|
historyDetailPO.setRelatedName("职级页导入");
|
|
|
|
|
historyDetailPO.setOperateDetail("同一方案[" + schemeNo + "]下,职级编号不可重复");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
} else {
|
|
|
|
|
// 关联职等id
|
|
|
|
|
gradePO.setLevelId(levelIds);
|
|
|
|
|
MapperProxyFactory.getProxy(GradeMapper.class).insertIgnoreNull(gradePO);
|
|
|
|
|
}
|
|
|
|
|
gradeNew = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByNoAndSid(gradeNo2, schemeNew.getId());
|
|
|
|
|
if (gradeNew != null) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("同一方案[" + schemeNo2 + "]下,职级编号不可重复");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
} else {
|
|
|
|
|
// 关联职等id
|
|
|
|
|
gradePO.setLevelId(levelIds);
|
|
|
|
|
MapperProxyFactory.getProxy(GradeMapper.class).insertIgnoreNull(gradePO);
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
historyDetailPO.setOperateDetail("添加成功");
|
|
|
|
|
historyDetailPO.setStatus("1");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
} else if ("update".equals(operateType)) {
|
|
|
|
|
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);
|
|
|
|
|
switch (s) {
|
|
|
|
|
case 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("未找到编号为[" + schemeNo + "]的方案");
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + map.get("scheme_no") + "]的方案");
|
|
|
|
|
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();
|
|
|
|
|
break;
|
|
|
|
|
case 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 {
|
|
|
|
|
levelIds = String.valueOf(levelNew.getId());
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo + "]的方案,无法更新");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
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;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 2:
|
|
|
|
|
String gradeNo = (String) map.get("grade_no");
|
|
|
|
|
String schemeNo2 = (String) map.get("scheme_no");
|
|
|
|
|
String levelNo2 = (String) map.get("level_no");
|
|
|
|
|
schemeNew = MapperProxyFactory.getProxy(SchemeMapper.class).getSchemeByNo(schemeNo2);
|
|
|
|
|
if (schemeNew == null) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo2 + "]的方案");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
gradeNew = MapperProxyFactory.getProxy(GradeMapper.class).getGradeByNoAndSid(gradeNo, schemeNew.getId());
|
|
|
|
|
if (gradeNew == null) {
|
|
|
|
|
historyDetailPO.setRelatedName(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号为[" + schemeNo2 + "]的职等");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
// 处理职级编号
|
|
|
|
|
String[] split = levelNo2.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(relatedName);
|
|
|
|
|
historyDetailPO.setOperateDetail("未找到编号[" + schemeNo2 + "]的职级,无法更新");
|
|
|
|
|
historyDetailPO.setStatus("0");
|
|
|
|
|
saveImportDetailLog(historyDetailPO);
|
|
|
|
|
continue nextRow;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
historyDetailPO.setOperateDetail("更新成功");
|
|
|
|
|
historyDetailPO.setStatus("1");
|
|
|
|
@ -1889,6 +1972,8 @@ public class ImportCommonServiceImpl extends Service implements ImportCommonServ
|
|
|
|
|
object = Integer.parseInt(cellValue);
|
|
|
|
|
} else if ("float".equals(valueType)) {
|
|
|
|
|
object = Float.parseFloat(cellValue);
|
|
|
|
|
} else if ("text".equals(valueType)){
|
|
|
|
|
object = cellValue;
|
|
|
|
|
} else {
|
|
|
|
|
try {
|
|
|
|
|
object = new BigDecimal(cellValue).toPlainString();
|
|
|
|
|