|
|
|
@ -30,18 +30,20 @@ public class StaffTriggerRunnable implements Runnable {
|
|
|
|
|
return MapperProxyFactory.getProxy(StaffTriggerMapper.class);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private final String currentDate;
|
|
|
|
|
|
|
|
|
|
public StaffTriggerRunnable(StaffPO staffPO) {
|
|
|
|
|
this.staffPO = staffPO;
|
|
|
|
|
currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void run() {
|
|
|
|
|
String currentDate = OrganizationDateUtil.getFormatLocalDate(new java.util.Date());
|
|
|
|
|
if (null != staffPO) {
|
|
|
|
|
StaffPlanPO staffPlanByID = getStaffPlanMapper().getStaffPlanByID(staffPO.getPlanId());
|
|
|
|
|
if (null != staffPlanByID && StringUtils.isNotBlank(staffPlanByID.getControlDimension())) {
|
|
|
|
|
String fType = staffPlanByID.getControlDimension();
|
|
|
|
|
int fPlan = 0;
|
|
|
|
|
Integer fPlan = 0;
|
|
|
|
|
int fOnJob = 0;
|
|
|
|
|
String fObjId = "";
|
|
|
|
|
switch (fType) {
|
|
|
|
@ -55,19 +57,22 @@ public class StaffTriggerRunnable implements Runnable {
|
|
|
|
|
// 更新部门编制
|
|
|
|
|
fObjId = Util.null2String(staffPO.getDeptId());
|
|
|
|
|
fOnJob = getStaffTriggerMapper().countDepartmentUsers(staffPO.getEcDepartment());
|
|
|
|
|
fPlan = getStaffTriggerMapper().countDepartmentStaffNum(currentDate, staffPO.getDeptId());
|
|
|
|
|
fPlan = getStaffTriggerMapper().countCompanyStaffNum(currentDate, staffPO.getCompId());
|
|
|
|
|
fPlan += getStaffTriggerMapper().countDepartmentStaffNum(currentDate, staffPO.getDeptId());
|
|
|
|
|
break;
|
|
|
|
|
case "3":
|
|
|
|
|
// 更新岗位编制
|
|
|
|
|
fObjId = Util.null2String(staffPO.getJobId());
|
|
|
|
|
fOnJob = 10;
|
|
|
|
|
fPlan = getStaffTriggerMapper().countJobStaffNum(currentDate, staffPO.getJobId());
|
|
|
|
|
fPlan = getStaffTriggerMapper().countCompanyStaffNum(currentDate, staffPO.getCompId());
|
|
|
|
|
fPlan += getStaffTriggerMapper().countDepartmentStaffNum(currentDate, staffPO.getDeptId());
|
|
|
|
|
fPlan += getStaffTriggerMapper().countJobStaffNum(currentDate, staffPO.getJobId());
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
// 更新对应的编制数
|
|
|
|
|
getStaffTriggerMapper().updateOrgStaffs(currentDate, fType, fObjId, fPlan, fOnJob);
|
|
|
|
|
getStaffTriggerMapper().updateOrgStaffs(currentDate, fType, fObjId, fPlan < 0 ? 0 : fPlan, fOnJob);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|