宁波精华7天内离职人员二开
This commit is contained in:
parent
a58bb7c189
commit
89e3f54dc2
|
|
@ -47,6 +47,7 @@ import org.apache.commons.collections4.CollectionUtils;
|
|||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.commons.lang3.math.NumberUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import weaver.conn.RecordSet;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -862,6 +863,16 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
|
|||
throw new SalaryRunTimeException("薪资核算记录不存在或已被删除!");
|
||||
}
|
||||
SalarySobPO salarySobPO = getSalarySobService(user).getById(salaryAcctRecordPO.getSalarySobId());
|
||||
|
||||
// 宁波精华二开 - 240814获取不需要发薪的人员
|
||||
RecordSet rs = new RecordSet();
|
||||
rs.execute("select xm from uf_lztz where sfsx = 1");
|
||||
List<Long> notAcctEmpIds = new ArrayList<>();
|
||||
while (rs.next()) {
|
||||
int xm = rs.getInt("xm");
|
||||
notAcctEmpIds.add(Long.valueOf(xm));
|
||||
}
|
||||
|
||||
BaseBean baseBean = new BaseBean();
|
||||
List<Long> resignationSobIds = Arrays.asList(baseBean.getPropValue("nbjhSalary", "dimissionSobIds").split(","))
|
||||
.stream()
|
||||
|
|
@ -886,6 +897,8 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
|
|||
List<Long> salaryEmployees = getSalaryEmployeeService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId()).stream().map(DataCollectionEmployee::getEmployeeId).collect(Collectors.toList());
|
||||
List<Long> needAddEmpIds = thisMonthResigEmpIds.stream().filter(empId -> !salaryAcctEmployeeIds.contains(empId) && salaryEmployees.contains(empId)).collect(Collectors.toList());
|
||||
|
||||
// 过滤不需要算薪的人
|
||||
needAddEmpIds = needAddEmpIds.stream().filter(empId -> !notAcctEmpIds.contains(empId)).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(needAddEmpIds)) {
|
||||
List<DataCollectionEmployee> employeeList = getSalaryEmployeeService(user).listByIds(needAddEmpIds);
|
||||
Map<Long, DataCollectionEmployee> empMap = SalaryEntityUtil.convert2Map(employeeList, DataCollectionEmployee::getEmployeeId);
|
||||
|
|
@ -945,6 +958,9 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
|
|||
List<Long> needHandleEmpIds = salaryAcctEmployeePOS.stream().filter(acctEmp -> !archivedEmpIds.contains(acctEmp.getEmployeeId()))
|
||||
.map(SalaryAcctEmployeePO::getEmployeeId)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// 过滤不需要算薪的人
|
||||
needHandleEmpIds = needHandleEmpIds.stream().filter(empId -> !notAcctEmpIds.contains(empId)).collect(Collectors.toList());
|
||||
// 获取这些人的薪资档案,判断起始发薪日期是否早于或等于上月
|
||||
if (CollectionUtils.isNotEmpty(needHandleEmpIds)) {
|
||||
List<SalaryArchivePO> needHandleArchiveIds = getSalaryArchiveService(user).listSome(SalaryArchivePO.builder().employeeIds(needHandleEmpIds).taxAgentId(salarySobPO.getTaxAgentId()).build());
|
||||
|
|
@ -998,6 +1014,18 @@ public class SalaryAcctEmployeeServiceImpl extends Service implements SalaryAcct
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 删除本次核算记录中不需要算薪的人
|
||||
if (salaryAcctRecordPO.getStatus().equals(SalaryAcctRecordStatusEnum.NOT_ARCHIVED.getValue())) {
|
||||
List<SalaryAcctEmployeePO> salaryAcctEmployeePOList = listBySalaryAcctRecordId(salaryAcctRecordId);
|
||||
List<Long> needDeleteAcctEmpIds = salaryAcctEmployeePOList.stream()
|
||||
.filter(acctEmp -> notAcctEmpIds.contains(acctEmp.getEmployeeId()))
|
||||
.map(SalaryAcctEmployeePO::getId)
|
||||
.collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(needDeleteAcctEmpIds)) {
|
||||
deleteByIds(needDeleteAcctEmpIds);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public class SalaryAcctEmployeeWrapper extends Service {
|
|||
* @return
|
||||
*/
|
||||
public PageInfo<SalaryAccEmployeeListDTO> listPage(SalaryAcctEmployeeQueryParam queryParam) {
|
||||
// 宁波精华二开 - 删除离职账套中包含的人员
|
||||
// 宁波精华二开 - 从正常核算记录中删除离职账套记录中包含的人员
|
||||
getSalaryAcctEmployeeService(user).deleteResignationEmp(queryParam.getSalaryAcctRecordId());
|
||||
// 宁波精华二开 - 0617离职账套人员确认二开
|
||||
getSalaryAcctEmployeeService(user).handleNbjhSalaryAcctEmp(queryParam.getSalaryAcctRecordId());
|
||||
|
|
|
|||
Loading…
Reference in New Issue