|
|
@ -59,9 +59,7 @@ import org.springframework.transaction.annotation.Transactional; |
|
|
|
import org.springframework.web.multipart.MultipartFile; |
|
|
|
|
|
|
|
import java.io.File; |
|
|
|
import java.lang.reflect.Field; |
|
|
|
import java.math.BigDecimal; |
|
|
|
import java.time.LocalDate; |
|
|
|
import java.time.YearMonth; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
@ -121,22 +119,8 @@ public class ManualScoreServiceImpl extends BaseServiceImpl<ManualScoreDao, Manu |
|
|
|
// 考核周期开始月
|
|
|
|
YearMonth scoreStartDateMonth = YearMonth.parse(dto.getMonthString()); |
|
|
|
dto.setMonth(LocalDateUtils.localDateToDate(scoreStartDateMonth.atDay(NumConstant.ONE))); |
|
|
|
switch (dto.getManualScore()) { |
|
|
|
case "优": |
|
|
|
dto.setScore(new BigDecimal(100)); |
|
|
|
break; |
|
|
|
case "良": |
|
|
|
dto.setScore(new BigDecimal(80)); |
|
|
|
break; |
|
|
|
case "中": |
|
|
|
dto.setScore(new BigDecimal(60)); |
|
|
|
break; |
|
|
|
case "差": |
|
|
|
dto.setScore(new BigDecimal(40)); |
|
|
|
break; |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
dto.setScore(this.textToScore(dto.getManualScore())); |
|
|
|
|
|
|
|
ManualScoreEntity entity = ConvertUtils.sourceToTarget(dto, ManualScoreEntity.class); |
|
|
|
|
|
|
|
DeptLevelAndLeaderDTO deptLevelInfo = deptUtils.getDeptLevelInfo(entity.getDeptId(), YesOrNoEnum.YES); |
|
|
@ -153,22 +137,7 @@ public class ManualScoreServiceImpl extends BaseServiceImpl<ManualScoreDao, Manu |
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public void update(ManualScoreDTO dto) { |
|
|
|
switch (dto.getManualScore()) { |
|
|
|
case "优": |
|
|
|
dto.setScore(new BigDecimal(100)); |
|
|
|
break; |
|
|
|
case "良": |
|
|
|
dto.setScore(new BigDecimal(80)); |
|
|
|
break; |
|
|
|
case "中": |
|
|
|
dto.setScore(new BigDecimal(60)); |
|
|
|
break; |
|
|
|
case "差": |
|
|
|
dto.setScore(new BigDecimal(40)); |
|
|
|
break; |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
dto.setScore(this.textToScore(dto.getManualScore())); |
|
|
|
ManualScoreEntity entity = ConvertUtils.sourceToTarget(dto, ManualScoreEntity.class); |
|
|
|
updateById(entity); |
|
|
|
} |
|
|
@ -264,13 +233,6 @@ public class ManualScoreServiceImpl extends BaseServiceImpl<ManualScoreDao, Manu |
|
|
|
return new Result().error("导入内容不能为空"); |
|
|
|
} |
|
|
|
UserDetail user = SecurityUser.getUser(); |
|
|
|
// 校验excel数据
|
|
|
|
// List<ExcelError> checkResult = checkExcelForManualScore(recordList, user.getDeptIdList());
|
|
|
|
// if (CollUtil.isNotEmpty(checkResult)) {
|
|
|
|
// Result result = new Result().error();
|
|
|
|
// result.setData(checkResult);
|
|
|
|
// return result;
|
|
|
|
// }
|
|
|
|
for (ManualScoreExcel manualScoreExcel : recordList) { |
|
|
|
ManualScoreEntity manualScoreEntity = packageManualScoreByExcelData(manualScoreExcel, user); |
|
|
|
baseDao.insert(manualScoreEntity); |
|
|
@ -331,22 +293,7 @@ public class ManualScoreServiceImpl extends BaseServiceImpl<ManualScoreDao, Manu |
|
|
|
manualScoreEntity.setParentDeptNames(deptLevelInfo.getParentDeptNames()); |
|
|
|
manualScoreEntity.setCreatorDeptId(user.getDeptId()); |
|
|
|
manualScoreEntity.setCreatorDeptName(user.getDeptName()); |
|
|
|
switch (excelData.getScore()) { |
|
|
|
case "优": |
|
|
|
manualScoreEntity.setScore(new BigDecimal(100)); |
|
|
|
break; |
|
|
|
case "良": |
|
|
|
manualScoreEntity.setScore(new BigDecimal(80)); |
|
|
|
break; |
|
|
|
case "中": |
|
|
|
manualScoreEntity.setScore(new BigDecimal(60)); |
|
|
|
break; |
|
|
|
case "差": |
|
|
|
manualScoreEntity.setScore(new BigDecimal(40)); |
|
|
|
break; |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
manualScoreEntity.setScore(this.textToScore(excelData.getScore())); |
|
|
|
|
|
|
|
//后期要进一步处理的字段值
|
|
|
|
manualScoreEntity.setMonth(excelData.getScoreStartDate()); |
|
|
@ -446,4 +393,24 @@ public class ManualScoreServiceImpl extends BaseServiceImpl<ManualScoreDao, Manu |
|
|
|
return new PageData<>(list, page.getTotal()); |
|
|
|
} |
|
|
|
|
|
|
|
private BigDecimal textToScore(String score){ |
|
|
|
BigDecimal big = new BigDecimal(0); |
|
|
|
switch (score) { |
|
|
|
case "优": |
|
|
|
big = new BigDecimal(100); |
|
|
|
break; |
|
|
|
case "良": |
|
|
|
big = new BigDecimal(80); |
|
|
|
break; |
|
|
|
case "中": |
|
|
|
big = new BigDecimal(60); |
|
|
|
break; |
|
|
|
case "差": |
|
|
|
big = new BigDecimal(40); |
|
|
|
break; |
|
|
|
default: |
|
|
|
break; |
|
|
|
} |
|
|
|
return big; |
|
|
|
} |
|
|
|
} |