浏览代码

学校修改

lazhaoqian 3 年之前
父节点
当前提交
667ec0e57a

+ 74 - 9
blade-service/blade-client/src/main/java/org/springblade/client/school/service/impl/SchoolTeacherServiceImpl.java

@@ -320,6 +320,15 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 						schoolTeacher.setVirtualDoubleCease(configItem.getVirtualDoubleCease());//虚拟双休日工作量工资标准
 						schoolTeacher.setVirtualDailyAssessmentCriteria(configItem.getVirtualDailyAssessmentCriteria());//虚拟日常考核工资标准
 						schoolTeacher.setTermPerformanceSalaryName(configItem.getTermPerformanceSalaryName());//学期绩效工资标准
+					}else {
+						schoolTeacher.setSalaryWithdrawalStandard(BigDecimal.ZERO);
+						schoolTeacher.setWorkloadSalaryName(BigDecimal.ZERO);//工作量工资标准
+						schoolTeacher.setVirtualWorkloadSalary(BigDecimal.ZERO);//虚拟工作量工资标准
+						schoolTeacher.setDoubleCease(BigDecimal.ZERO);//双休日工作量工资标准
+						schoolTeacher.setDailyAssessmentCriteriaName(BigDecimal.ZERO);//日常考核工资标准
+						schoolTeacher.setVirtualDoubleCease(BigDecimal.ZERO);//虚拟双休日工作量工资标准
+						schoolTeacher.setVirtualDailyAssessmentCriteria(BigDecimal.ZERO);//虚拟日常考核工资标准
+						schoolTeacher.setTermPerformanceSalaryName(BigDecimal.ZERO);//学期绩效工资标准
 					}
 				}else {
 					schoolTeacher.setSalaryWithdrawalStandard(configMessage.getSalary());
@@ -344,6 +353,15 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 					schoolTeacher.setVirtualDoubleCease(configMessage.getVirtualDoubleCease());//虚拟双休日工作量工资标准
 					schoolTeacher.setVirtualDailyAssessmentCriteria(configMessage.getVirtualDailyAssessmentCriteria());//虚拟日常考核工资标准
 					schoolTeacher.setTermPerformanceSalaryName(configMessage.getTermPerformanceSalaryName());//学期绩效工资标准
+				}else {
+					schoolTeacher.setSalaryWithdrawalStandard(BigDecimal.ZERO);
+					schoolTeacher.setWorkloadSalaryName(BigDecimal.ZERO);//工作量工资标准
+					schoolTeacher.setVirtualWorkloadSalary(BigDecimal.ZERO);//虚拟工作量工资标准
+					schoolTeacher.setDoubleCease(BigDecimal.ZERO);//双休日工作量工资标准
+					schoolTeacher.setDailyAssessmentCriteriaName(BigDecimal.ZERO);//日常考核工资标准
+					schoolTeacher.setVirtualDoubleCease(BigDecimal.ZERO);//虚拟双休日工作量工资标准
+					schoolTeacher.setVirtualDailyAssessmentCriteria(BigDecimal.ZERO);//虚拟日常考核工资标准
+					schoolTeacher.setTermPerformanceSalaryName(BigDecimal.ZERO);//学期绩效工资标准
 				}
 			}
 		}else {
@@ -365,6 +383,15 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 						schoolTeacher.setVirtualDoubleCease(configItem.getVirtualDoubleCease());//虚拟双休日工作量工资标准
 						schoolTeacher.setVirtualDailyAssessmentCriteria(configItem.getVirtualDailyAssessmentCriteria());//虚拟日常考核工资标准
 						schoolTeacher.setTermPerformanceSalaryName(configItem.getTermPerformanceSalaryName());//学期绩效工资标准
+					}else {
+						schoolTeacher.setSalaryWithdrawalStandard(BigDecimal.ZERO);
+						schoolTeacher.setWorkloadSalaryName(BigDecimal.ZERO);//工作量工资标准
+						schoolTeacher.setVirtualWorkloadSalary(BigDecimal.ZERO);//虚拟工作量工资标准
+						schoolTeacher.setDoubleCease(BigDecimal.ZERO);//双休日工作量工资标准
+						schoolTeacher.setDailyAssessmentCriteriaName(BigDecimal.ZERO);//日常考核工资标准
+						schoolTeacher.setVirtualDoubleCease(BigDecimal.ZERO);//虚拟双休日工作量工资标准
+						schoolTeacher.setVirtualDailyAssessmentCriteria(BigDecimal.ZERO);//虚拟日常考核工资标准
+						schoolTeacher.setTermPerformanceSalaryName(BigDecimal.ZERO);//学期绩效工资标准
 					}
 				}else {
 					schoolTeacher.setSalaryWithdrawalStandard(configMessage.getSalary());
@@ -389,6 +416,15 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 					schoolTeacher.setVirtualDoubleCease(configMessage.getVirtualDoubleCease());//虚拟双休日工作量工资标准
 					schoolTeacher.setVirtualDailyAssessmentCriteria(configMessage.getVirtualDailyAssessmentCriteria());//虚拟日常考核工资标准
 					schoolTeacher.setTermPerformanceSalaryName(configMessage.getTermPerformanceSalaryName());//学期绩效工资标准
+				}else {
+					schoolTeacher.setSalaryWithdrawalStandard(BigDecimal.ZERO);
+					schoolTeacher.setWorkloadSalaryName(BigDecimal.ZERO);//工作量工资标准
+					schoolTeacher.setVirtualWorkloadSalary(BigDecimal.ZERO);//虚拟工作量工资标准
+					schoolTeacher.setDoubleCease(BigDecimal.ZERO);//双休日工作量工资标准
+					schoolTeacher.setDailyAssessmentCriteriaName(BigDecimal.ZERO);//日常考核工资标准
+					schoolTeacher.setVirtualDoubleCease(BigDecimal.ZERO);//虚拟双休日工作量工资标准
+					schoolTeacher.setVirtualDailyAssessmentCriteria(BigDecimal.ZERO);//虚拟日常考核工资标准
+					schoolTeacher.setTermPerformanceSalaryName(BigDecimal.ZERO);//学期绩效工资标准
 				}
 			}
 		}
@@ -409,59 +445,82 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 			if (message != null){
 				schoolTeacher.setRankWithdrawalStandardName(message.getSalary());
 				schoolTeacher.setRankWithdrawalStandard(message.getSalary());
+			}else {
+				schoolTeacher.setRankWithdrawalStandardName(BigDecimal.ZERO);
+				schoolTeacher.setRankWithdrawalStandard(BigDecimal.ZERO);
 			}
 		}
 		//班主任补贴标准
 		SchoolConfigItem message = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(),
 			schoolTeacher.getInSection(), null, "班主任补贴标准", schoolTeacher.getDepartment()+schoolTeacher.getDoubleTeachers(),
-			schoolTeacher.getCompileCategory(),null);
+			null,null);
 		if (message != null){
 			schoolTeacher.setTeacherSubsidy(message.getSalary());
+		}else {
+			schoolTeacher.setTeacherSubsidy(BigDecimal.ZERO);
 		}
 		//班主任考核补贴标准
-		SchoolConfigItem teacherAssessSubsidy = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "班主任考核补贴标准", schoolTeacher.getDepartment()+schoolTeacher.getDoubleTeachers(),schoolTeacher.getCompileCategory(),null);
+		SchoolConfigItem teacherAssessSubsidy = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "班主任考核补贴标准", schoolTeacher.getDepartment()+schoolTeacher.getDoubleTeachers(),null,null);
 		if (teacherAssessSubsidy != null){
 			schoolTeacher.setTeacherAssessSubsidy(teacherAssessSubsidy.getSalary());
+		}else {
+			schoolTeacher.setTeacherAssessSubsidy(BigDecimal.ZERO);
 		}
 		//教研组长补贴标准
 		SchoolConfigItem assessTeachingResearch = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "教研组长补贴标准", null,schoolTeacher.getCompileCategory(),null);
 		if (assessTeachingResearch != null){
 			schoolTeacher.setTeachingResearchName(assessTeachingResearch.getSalary());
+		}else {
+			schoolTeacher.setTeachingResearchName(BigDecimal.ZERO);
 		}
 		//教研组长考核补贴标准
 		SchoolConfigItem assessTeachingResearchName = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "教研组长考核补贴标准", null,schoolTeacher.getCompileCategory(),null);
 		if (assessTeachingResearchName != null){
 			schoolTeacher.setAssessTeachingResearchName(assessTeachingResearchName.getSalary());
+		}else {
+			schoolTeacher.setAssessTeachingResearchName(BigDecimal.ZERO);
 		}
 		//备课组长补贴标准
 		SchoolConfigItem assessPrepareLessonsName = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "备课组长补贴标准", null,schoolTeacher.getCompileCategory(),null);
 		if (assessPrepareLessonsName != null){
 			schoolTeacher.setPrepareLessonsName(assessPrepareLessonsName.getSalary());
+		}else {
+			schoolTeacher.setPrepareLessonsName(BigDecimal.ZERO);
 		}
 		//备课组长考核补贴标准
 		SchoolConfigItem assessPrepareLessons = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "备课组长考核补贴标准", null,schoolTeacher.getCompileCategory(),null);
 		if (assessPrepareLessons != null){
 			schoolTeacher.setAssessPrepareLessonsName(assessPrepareLessons.getSalary());
+		}else {
+			schoolTeacher.setAssessPrepareLessonsName(BigDecimal.ZERO);
 		}
 		//领导干部补贴标准
 		SchoolConfigItem assessLeadingCadreSubsidyName = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "领导干部补贴标准", null,schoolTeacher.getCompileCategory(),null);
 		if (assessLeadingCadreSubsidyName != null){
 			schoolTeacher.setLeadingCadreSubsidyName(assessLeadingCadreSubsidyName.getSalary());
+		}else {
+			schoolTeacher.setLeadingCadreSubsidyName(BigDecimal.ZERO);
 		}
 		//领导干部考核补贴标准
 		SchoolConfigItem assessLeadingCadreSubsidy = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "领导干部考核补贴标准", null,schoolTeacher.getCompileCategory(),null);
 		if (assessLeadingCadreSubsidy != null){
 			schoolTeacher.setAssessLeadingCadreSubsidyName(assessLeadingCadreSubsidy.getSalary());
+		}else {
+			schoolTeacher.setAssessLeadingCadreSubsidyName(BigDecimal.ZERO);
 		}
 		//学历工资
-		SchoolConfigItem code = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "学历标准", schoolTeacher.getCode(), null,null);
+		SchoolConfigItem code = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), schoolTeacher.getSalaryWithdrawalStandardName(), "学历标准", schoolTeacher.getCode(), null,null);
 		if (code != null){
 			schoolTeacher.setEducationSalary(code.getSalary());
+		}else {
+			schoolTeacher.setEducationSalary(BigDecimal.ZERO);
 		}
 		//职级等级工资
 		SchoolConfigItem rankSalaryName = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "职级等级标准", schoolTeacher.getRankSalaryName(), null,null);
 		if (rankSalaryName != null){
 			schoolTeacher.setRankSalary(rankSalaryName.getSalary());
+		}else {
+			schoolTeacher.setRankSalary(BigDecimal.ZERO);
 		}
 		//增资标准
 		SchoolConfigItem capitalIncreaseName = schoolConfigItemMapper.getConfigMessage(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "增资标准", schoolTeacher.getSchoolAge().toString(), null,null);
@@ -470,6 +529,9 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 			if (capitalIncrease != null){
 				schoolTeacher.setCapitalIncreaseName(schoolTeacher.getSchoolAge());
 				schoolTeacher.setCapitalIncrease(capitalIncrease.getSalary());
+			}else {
+				schoolTeacher.setCapitalIncreaseName(schoolTeacher.getSchoolAge());
+				schoolTeacher.setCapitalIncrease(BigDecimal.ZERO);
 			}
 		}else {
 			schoolTeacher.setCapitalIncreaseName(schoolTeacher.getSchoolAge());
@@ -477,12 +539,15 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 		}
 		//履约奖标准
 		if (StringUtils.isBlank(schoolTeacher.getEnjoyOfficeTreatment()) || !schoolTeacher.getEnjoyOfficeTreatment().equals("是")) {
-			SchoolConfigItem performanceAward = schoolConfigItemMapper.getConfigMessage(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "履约奖标准", schoolTeacher.getSchoolAge().toString(), null,null);
+			SchoolConfigItem performanceAward = schoolConfigItemMapper.getConfigMessage(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), schoolTeacher.getSalaryWithdrawalStandardName(), "履约奖标准", schoolTeacher.getSchoolAge().toString(), null,null);
 			if (performanceAward == null){
-				SchoolConfigItem performanceAwardName = schoolConfigItemMapper.getConfigMessage(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "履约奖标准", null, null,null);
+				SchoolConfigItem performanceAwardName = schoolConfigItemMapper.getConfigMessage(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), schoolTeacher.getSalaryWithdrawalStandardName(), "履约奖标准", null, null,null);
 				if (performanceAwardName != null){
 					schoolTeacher.setPerformanceAward(performanceAwardName.getSalary());
 					schoolTeacher.setPerformanceAwardName(schoolTeacher.getSchoolAge());
+				}else {
+					schoolTeacher.setPerformanceAward(BigDecimal.ZERO);
+					schoolTeacher.setPerformanceAwardName(schoolTeacher.getSchoolAge());
 				}
 			}else {
 				schoolTeacher.setPerformanceAward(performanceAward.getSalary());
@@ -491,14 +556,14 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 		}
 		if (schoolTeacher.getInSection().equals("高中部")){
 			//日常考核工资标准
-			SchoolConfigItem assessment = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "日常考核工资标准", schoolTeacher.getDailyGrade(), null,schoolTeacher.getClassType());
+			SchoolConfigItem assessment = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "日常考核等级", schoolTeacher.getDailyGrade(), null,schoolTeacher.getClassType());
 			if (assessment != null){
 				schoolTeacher.setDailyAssessmentCriteria(assessment.getSalary());
 			}else {
 				schoolTeacher.setDailyAssessmentCriteria(new BigDecimal(BigInteger.ZERO));
 			}
 			//学期绩效工资标准
-			SchoolConfigItem performance = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "学期绩效工资标准", schoolTeacher.getPerformanceGrade(), null,schoolTeacher.getClassType());
+			SchoolConfigItem performance = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "学期绩效等级", schoolTeacher.getPerformanceGrade(), null,schoolTeacher.getClassType());
 			if (performance != null){
 				schoolTeacher.setTermPerformanceSalary(performance.getSalary());
 			}else {
@@ -507,14 +572,14 @@ public class SchoolTeacherServiceImpl extends ServiceImpl<SchoolTeacherMapper, S
 
 		}else {
 			//日常考核工资标准
-			SchoolConfigItem assessment = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "日常考核工资标准", schoolTeacher.getDailyGrade(), null,null);
+			SchoolConfigItem assessment = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "日常考核等级", schoolTeacher.getDailyGrade(), null,null);
 			if (assessment != null){
 				schoolTeacher.setDailyAssessmentCriteria(assessment.getSalary());
 			}else {
 				schoolTeacher.setDailyAssessmentCriteria(new BigDecimal(BigInteger.ZERO));
 			}
 			//学期绩效工资标准
-			SchoolConfigItem performance = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "学期绩效工资标准", schoolTeacher.getPerformanceGrade(), null,null);
+			SchoolConfigItem performance = schoolConfigItemMapper.getConfig(schoolTeacher.getTenantId(), schoolTeacher.getInSection(), null, "学期绩效等级", schoolTeacher.getPerformanceGrade(), null,null);
 			if (performance != null){
 				schoolTeacher.setTermPerformanceSalary(performance.getSalary());
 			}else {

+ 111 - 0
blade-service/blade-school/src/main/java/org/springblade/school/controller/SalaryItemController.java

@@ -1477,4 +1477,115 @@ public class SalaryItemController extends BladeController {
 		ExcelUtil.export(response, "工资表", "工资表", list, WageExcel.class);
 	}
 
+	/**
+	 * 导入产假工资
+	 */
+	@GetMapping("/export/maternityPay")
+	@ApiOperationSupport(order = 82)
+	@ApiOperation(value = "导入模板-工资管理-小学部-产假工资模板")
+	public void exportMaternityPay(HttpServletResponse response) {
+		List<MaternityPay> list = new ArrayList<MaternityPay>();
+		ExcelUtil.export(response, "产假工资", "产假工资", list, MaternityPay.class);
+	}
+	/**
+	 * 导入-工资管理-小学部-产假工资入
+	 *
+	 * */
+	@PostMapping("/import/maternityPay")
+	@ApiOperationSupport(order = 83)
+	@ApiOperation(value = "导入-工资管理-小学部-产假工资导入", notes = "传入excel")
+	public R importMaternityPay(@RequestParam("file") MultipartFile file,@RequestParam("id") Long id)
+	{
+		//校验模板
+		String excelPattern = null;
+		try {
+			excelPattern = ExcelCheck.checkExcelPattern(file, new MaternityPay());
+		} catch (Exception e) {
+			throw new SecurityException("校验Excel失败");
+		}
+		if (StringUtils.isNotBlank(excelPattern)){
+			throw new SecurityException(excelPattern);
+		}
+		//导入数据
+		List<MaternityPay> excelList = ExcelUtil.read(file, MaternityPay.class);
+		if(CollectionUtils.isEmpty(excelList))
+		{
+			throw new SecurityException("数据不能为空");
+		}
+		return salaryItemService.importMaternityPay(excelList,false,id,file);
+	}
+	/**
+	 * 导入生育津贴模板
+	 */
+	@GetMapping("/export/woChenGeld")
+	@ApiOperationSupport(order = 84)
+	@ApiOperation(value = "导入模板-工资管理-小学部-生育津贴模板")
+	public void exportWoChenGeld(HttpServletResponse response) {
+		List<WoChenGeld> list = new ArrayList<WoChenGeld>();
+		ExcelUtil.export(response, "生育津贴", "生育津贴", list, WoChenGeld.class);
+	}
+	/**
+	 * 导入-工资管理-小学部-生育津贴导入
+	 *
+	 * */
+	@PostMapping("/import/woChenGeld")
+	@ApiOperationSupport(order = 85)
+	@ApiOperation(value = "导入-工资管理-小学部-生育津贴导入", notes = "传入excel")
+	public R importWoChenGeld(@RequestParam("file") MultipartFile file,@RequestParam("id") Long id)
+	{
+		//校验模板
+		String excelPattern = null;
+		try {
+			excelPattern = ExcelCheck.checkExcelPattern(file, new WoChenGeld());
+		} catch (Exception e) {
+			throw new SecurityException("校验Excel失败");
+		}
+		if (StringUtils.isNotBlank(excelPattern)){
+			throw new SecurityException(excelPattern);
+		}
+		//导入数据
+		List<WoChenGeld> excelList = ExcelUtil.read(file, WoChenGeld.class);
+		if(CollectionUtils.isEmpty(excelList))
+		{
+			throw new SecurityException("数据不能为空");
+		}
+		return salaryItemService.importWoChenGeld(excelList,false,id,file);
+	}
+	/**
+	 * 导入自定义工作量工资模板
+	 */
+	@GetMapping("/export/customWorkload")
+	@ApiOperationSupport(order = 86)
+	@ApiOperation(value = "导入模板-工资管理-小学部-自定义工作量工资模板")
+	public void exportCustomWorkload(HttpServletResponse response) {
+		List<CustomWorkload> list = new ArrayList<CustomWorkload>();
+		ExcelUtil.export(response, "自定义工作量工资", "自定义工作量工资", list, CustomWorkload.class);
+	}
+	/**
+	 * 导入-工资管理-小学部-自定义工作量工资导入
+	 *
+	 * */
+	@PostMapping("/import/customWorkload")
+	@ApiOperationSupport(order = 87)
+	@ApiOperation(value = "导入-工资管理-小学部-自定义工作量工资导入", notes = "传入excel")
+	public R importCustomWorkload(@RequestParam("file") MultipartFile file,@RequestParam("id") Long id)
+	{
+		//校验模板
+		String excelPattern = null;
+		try {
+			excelPattern = ExcelCheck.checkExcelPattern(file, new CustomWorkload());
+		} catch (Exception e) {
+			throw new SecurityException("校验Excel失败");
+		}
+		if (StringUtils.isNotBlank(excelPattern)){
+			throw new SecurityException(excelPattern);
+		}
+		//导入数据
+		List<CustomWorkload> excelList = ExcelUtil.read(file, CustomWorkload.class);
+		if(CollectionUtils.isEmpty(excelList))
+		{
+			throw new SecurityException("数据不能为空");
+		}
+		return salaryItemService.importCustomWorkload(excelList,false,id,file);
+	}
 }

+ 56 - 0
blade-service/blade-school/src/main/java/org/springblade/school/excel/CustomWorkload.java

@@ -0,0 +1,56 @@
+package org.springblade.school.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 通济学校-工资管理-小学部-自定义工作量工资导入模板
+ */
+@Data
+@ColumnWidth(15)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class CustomWorkload implements Serializable {
+	/**
+	 * 姓名
+	 */
+	@ExcelProperty(value = "姓名(必填)")
+	private String cname;
+	/**
+	 * 身份证号
+	 */
+	@ExcelProperty(value = "身份证号(必填)")
+	@ColumnWidth(35)
+	private String idNumber;
+	/**
+	 * 工作量工资1
+	 */
+	@ExcelProperty(value = "工作量工资1")
+	private BigDecimal customThree;
+	/**
+	 * 工作量工资2
+	 */
+	@ExcelProperty(value = "工作量工资2")
+	private BigDecimal customFour;
+	/**
+	 * 工作量工资3
+	 */
+	@ExcelProperty(value = "工作量工资3")
+	private BigDecimal customFive;
+	/**
+	 * 工作量工资4
+	 */
+	@ExcelProperty(value = "工作量工资4")
+	private BigDecimal customSix;
+	/**
+	 * 工作量工资5
+	 */
+	@ExcelProperty(value = "工作量工资5")
+	private BigDecimal customSeven;
+}

+ 36 - 0
blade-service/blade-school/src/main/java/org/springblade/school/excel/MaternityPay.java

@@ -0,0 +1,36 @@
+package org.springblade.school.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 通济学校-工资管理-小学部-产假工资导入模板
+ */
+@Data
+@ColumnWidth(15)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class MaternityPay implements Serializable {
+	/**
+	 * 姓名
+	 */
+	@ExcelProperty(value = "姓名(必填)")
+	private String cname;
+	/**
+	 * 身份证号
+	 */
+	@ExcelProperty(value = "身份证号(必填)")
+	@ColumnWidth(35)
+	private String idNumber;
+	/**
+	 * 产假工资
+	 */
+	@ExcelProperty(value = "产假工资")
+	private BigDecimal maternityLeaveSalary;
+}

+ 36 - 0
blade-service/blade-school/src/main/java/org/springblade/school/excel/WoChenGeld.java

@@ -0,0 +1,36 @@
+package org.springblade.school.excel;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 通济学校-工资管理-小学部-生育津贴导入模板
+ */
+@Data
+@ColumnWidth(15)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class WoChenGeld implements Serializable {
+	/**
+	 * 姓名
+	 */
+	@ExcelProperty(value = "姓名(必填)")
+	private String cname;
+	/**
+	 * 身份证号
+	 */
+	@ExcelProperty(value = "身份证号(必填)")
+	@ColumnWidth(35)
+	private String idNumber;
+	/**
+	 * 生育津贴
+	 */
+	@ExcelProperty(value = "生育津贴")
+	private BigDecimal childbirthAllowance;
+}

+ 21 - 0
blade-service/blade-school/src/main/java/org/springblade/school/service/ISalaryItemService.java

@@ -331,5 +331,26 @@ public interface ISalaryItemService extends IService<SalaryItem> {
 	 * @return
 	 */
 	List<WageExcel> exportSalaryStatements(SalaryItemVO salaryItem);
+	/**
+	 * 导入产假工资
+	 * @param data
+	 * @param isCovered
+	 * @return
+	 */
+	R importMaternityPay(List<MaternityPay> data, Boolean isCovered, Long id,MultipartFile file);
+	/**
+	 * 导入生育津贴
+	 * @param data
+	 * @param isCovered
+	 * @return
+	 */
+	R importWoChenGeld(List<WoChenGeld> data, Boolean isCovered, Long id,MultipartFile file);
+	/**
+	 * 导入自定义工作量工资
+	 * @param data
+	 * @param isCovered
+	 * @return
+	 */
+	R importCustomWorkload(List<CustomWorkload> data, Boolean isCovered, Long id,MultipartFile file);
 
 }

+ 142 - 4
blade-service/blade-school/src/main/java/org/springblade/school/service/impl/SalaryItemServiceImpl.java

@@ -1072,7 +1072,7 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 			//获取日常考核工资
 			if (zhaPingExcel.getGrading().equals("高中部")){
 				//日常考核工资标准
-				R<SchoolConfigItem> config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(), zhaPingExcel.getGrading(), null, "日常考核工资标准", salaryItem.getDailyGrade(), null, salaryItem.getDiscipline());
+				R<SchoolConfigItem> config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(), zhaPingExcel.getGrading(), null, "日常考核等级", salaryItem.getDailyGrade(), null, salaryItem.getDiscipline());
 				if (config.isSuccess() && config.getData() != null){
 					salaryItem.setDailyAssessmentSalary(config.getData().getSalary());
 				}else {
@@ -1080,7 +1080,7 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 				}
 			}else {
 				//日常考核工资标准
-				R<SchoolConfigItem>  config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(), zhaPingExcel.getGrading(), null, "日常考核工资标准", salaryItem.getDailyGrade(), null,null);
+				R<SchoolConfigItem>  config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(), zhaPingExcel.getGrading(), null, "日常考核等级", salaryItem.getDailyGrade(), null,null);
 				if (config.isSuccess() && config.getData() != null){
 					salaryItem.setDailyAssessmentSalary(config.getData().getSalary());
 				}else {
@@ -1408,7 +1408,7 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 			//获取学期绩效工资
 			if (insuranceExcel.getGrading().equals("高中部")){
 				//学期绩效工资
-				R<SchoolConfigItem> config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(),insuranceExcel.getGrading(), null, "学期绩效工资标准", salaryItem.getPerformanceGrade(), null,salaryItem.getDiscipline());
+				R<SchoolConfigItem> config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(),insuranceExcel.getGrading(), null, "学期绩效等级", salaryItem.getPerformanceGrade(), null,salaryItem.getDiscipline());
 				if (config.isSuccess() && config.getData() != null){
 					salaryItem.setTermPerformanceSalary(config.getData().getSalary());
 				}else {
@@ -1416,7 +1416,7 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 				}
 			}else {
 				//学期绩效工资
-				R<SchoolConfigItem> config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(),insuranceExcel.getGrading(), null, "学期绩效工资标准", salaryItem.getPerformanceGrade(), null,salaryItem.getDiscipline());
+				R<SchoolConfigItem> config = schoolTeacherClient.getConfig(SecureUtil.getTenantId(),insuranceExcel.getGrading(), null, "学期绩效等级", salaryItem.getPerformanceGrade(), null,salaryItem.getDiscipline());
 				if (config.isSuccess() && config.getData() != null){
 					salaryItem.setTermPerformanceSalary(config.getData().getSalary());
 				}else {
@@ -1943,6 +1943,144 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 		return baseMapper.exportSalaryStatements(salaryItem);
 	}
 
+	@Override
+	public R importMaternityPay(List<MaternityPay> data, Boolean isCovered, Long id, MultipartFile file) {
+		if(org.springframework.util.CollectionUtils.isEmpty(data))
+		{
+			throw new SecurityException("导入数据不能为空");
+		}
+		int message = 0; //导入成功条数
+		StringBuffer errMsg= new StringBuffer();
+		for(int i=0;i<data.size();i++)
+		{
+			MaternityPay maternityPay = data.get(i);
+			if (StringUtils.isBlank(maternityPay.getIdNumber())){
+				errMsg.append("第"+(i+2)+"行,身份证号码为空,");
+				continue;
+			}
+			if (StringUtils.isBlank(maternityPay.getCname())){
+				errMsg.append("第"+(i+2)+"行,姓名为空,");
+				continue;
+			}
+			SalaryItem salaryItem = new SalaryItem();
+			BeanUtil.copy(maternityPay,salaryItem);
+			//根据身份证号查询教职工信息是否存在存在更新不存在新增
+			SalaryItem item = baseMapper.selectOne(new QueryWrapper<SalaryItem>().eq("id_number", salaryItem.getIdNumber()).eq("tenant_id", SecureUtil.getTenantId())
+				.eq("is_deleted", 0).eq("pid",id));
+			if (item != null){
+				salaryItem.setPid(id);
+				salaryItem.setId(item.getId());
+				salaryItem.setUpdateUser(SecureUtil.getUserId());
+				salaryItem.setUpdateTime(new Date());
+				baseMapper.updateById(salaryItem);
+				message = ++ message;
+				//更新计算工资
+				this.countSalary(salaryItem);
+			}
+		}
+		//保存上传记录
+		this.saveAccessory(file,id);
+		if (message >0 && message == data.size()){
+			return R.success("全部导入成功");
+		}else if (message >0 && message != data.size()){
+			return R.success("导入部分成功,成功"+ message +"条,导入失败"+(data.size()-message)+"条");
+		}else {
+			return R.success("导入失败");
+		}
+	}
+
+	@Override
+	public R importWoChenGeld(List<WoChenGeld> data, Boolean isCovered, Long id, MultipartFile file) {
+		if(org.springframework.util.CollectionUtils.isEmpty(data))
+		{
+			throw new SecurityException("导入数据不能为空");
+		}
+		int message = 0; //导入成功条数
+		StringBuffer errMsg= new StringBuffer();
+		for(int i=0;i<data.size();i++)
+		{
+			WoChenGeld woChenGeld = data.get(i);
+			if (StringUtils.isBlank(woChenGeld.getIdNumber())){
+				errMsg.append("第"+(i+2)+"行,身份证号码为空,");
+				continue;
+			}
+			if (StringUtils.isBlank(woChenGeld.getCname())){
+				errMsg.append("第"+(i+2)+"行,姓名为空,");
+				continue;
+			}
+			SalaryItem salaryItem = new SalaryItem();
+			BeanUtil.copy(woChenGeld,salaryItem);
+			//根据身份证号查询教职工信息是否存在存在更新不存在新增
+			SalaryItem item = baseMapper.selectOne(new QueryWrapper<SalaryItem>().eq("id_number", salaryItem.getIdNumber()).eq("tenant_id", SecureUtil.getTenantId())
+				.eq("is_deleted", 0).eq("pid",id));
+			if (item != null){
+				salaryItem.setPid(id);
+				salaryItem.setId(item.getId());
+				salaryItem.setUpdateUser(SecureUtil.getUserId());
+				salaryItem.setUpdateTime(new Date());
+				baseMapper.updateById(salaryItem);
+				message = ++ message;
+				//更新计算工资
+				this.countSalary(salaryItem);
+			}
+		}
+		//保存上传记录
+		this.saveAccessory(file,id);
+		if (message >0 && message == data.size()){
+			return R.success("全部导入成功");
+		}else if (message >0 && message != data.size()){
+			return R.success("导入部分成功,成功"+ message +"条,导入失败"+(data.size()-message)+"条");
+		}else {
+			return R.success("导入失败");
+		}
+	}
+
+	@Override
+	public R importCustomWorkload(List<CustomWorkload> data, Boolean isCovered, Long id, MultipartFile file) {
+		if(org.springframework.util.CollectionUtils.isEmpty(data))
+		{
+			throw new SecurityException("导入数据不能为空");
+		}
+		int message = 0; //导入成功条数
+		StringBuffer errMsg= new StringBuffer();
+		for(int i=0;i<data.size();i++)
+		{
+			CustomWorkload customWorkload = data.get(i);
+			if (StringUtils.isBlank(customWorkload.getIdNumber())){
+				errMsg.append("第"+(i+2)+"行,身份证号码为空,");
+				continue;
+			}
+			if (StringUtils.isBlank(customWorkload.getCname())){
+				errMsg.append("第"+(i+2)+"行,姓名为空,");
+				continue;
+			}
+			SalaryItem salaryItem = new SalaryItem();
+			BeanUtil.copy(customWorkload,salaryItem);
+			//根据身份证号查询教职工信息是否存在存在更新不存在新增
+			SalaryItem item = baseMapper.selectOne(new QueryWrapper<SalaryItem>().eq("id_number", salaryItem.getIdNumber()).eq("tenant_id", SecureUtil.getTenantId())
+				.eq("is_deleted", 0).eq("pid",id));
+			if (item != null){
+				salaryItem.setPid(id);
+				salaryItem.setId(item.getId());
+				salaryItem.setUpdateUser(SecureUtil.getUserId());
+				salaryItem.setUpdateTime(new Date());
+				baseMapper.updateById(salaryItem);
+				message = ++ message;
+				//更新计算工资
+				this.countSalary(salaryItem);
+			}
+		}
+		//保存上传记录
+		this.saveAccessory(file,id);
+		if (message >0 && message == data.size()){
+			return R.success("全部导入成功");
+		}else if (message >0 && message != data.size()){
+			return R.success("导入部分成功,成功"+ message +"条,导入失败"+(data.size()-message)+"条");
+		}else {
+			return R.success("导入失败");
+		}
+	}
+
 	/**
 	 *工资计算
 	 *