|
|
@@ -2181,6 +2181,144 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public R importTeamLeaderAssessExcel(List<TeamLeaderAssessExcel> 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++)
|
|
|
+ {
|
|
|
+ TeamLeaderAssessExcel teamLeaderAssessExcel = data.get(i);
|
|
|
+ if (StringUtils.isBlank(teamLeaderAssessExcel.getIdNumber())){
|
|
|
+ errMsg.append("第"+(i+2)+"行,身份证号码为空,");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(teamLeaderAssessExcel.getCname())){
|
|
|
+ errMsg.append("第"+(i+2)+"行,姓名为空,");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ SalaryItem salaryItem = new SalaryItem();
|
|
|
+ BeanUtil.copy(teamLeaderAssessExcel,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 importPrepareAssessExcel(List<PrepareAssessExcel> 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++)
|
|
|
+ {
|
|
|
+ PrepareAssessExcel prepareAssessExcel = data.get(i);
|
|
|
+ if (StringUtils.isBlank(prepareAssessExcel.getIdNumber())){
|
|
|
+ errMsg.append("第"+(i+2)+"行,身份证号码为空,");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(prepareAssessExcel.getCname())){
|
|
|
+ errMsg.append("第"+(i+2)+"行,姓名为空,");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ SalaryItem salaryItem = new SalaryItem();
|
|
|
+ BeanUtil.copy(prepareAssessExcel,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 importLeadAssessExcel(List<LeadAssessExcel> 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++)
|
|
|
+ {
|
|
|
+ LeadAssessExcel leadAssessExcel = data.get(i);
|
|
|
+ if (StringUtils.isBlank(leadAssessExcel.getIdNumber())){
|
|
|
+ errMsg.append("第"+(i+2)+"行,身份证号码为空,");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(leadAssessExcel.getCname())){
|
|
|
+ errMsg.append("第"+(i+2)+"行,姓名为空,");
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ SalaryItem salaryItem = new SalaryItem();
|
|
|
+ BeanUtil.copy(leadAssessExcel,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("导入失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
*工资计算
|
|
|
*
|