|
@@ -35,6 +35,7 @@ import nckd.jxccl.base.common.utils.QueryFieldBuilder;
|
|
|
import nckd.jxccl.base.entity.helper.EntityHelper;
|
|
import nckd.jxccl.base.entity.helper.EntityHelper;
|
|
|
import nckd.jxccl.base.org.helper.OrgHelper;
|
|
import nckd.jxccl.base.org.helper.OrgHelper;
|
|
|
import nckd.jxccl.base.orm.helper.QFilterCommonHelper;
|
|
import nckd.jxccl.base.orm.helper.QFilterCommonHelper;
|
|
|
|
|
+import nckd.jxccl.hr.sdm.business.SdmBusinessService;
|
|
|
import nckd.jxccl.hr.sdm.common.SanDingConstant;
|
|
import nckd.jxccl.hr.sdm.common.SanDingConstant;
|
|
|
import nckd.jxccl.hr.sdm.common.SanDingPlanEntryStatus;
|
|
import nckd.jxccl.hr.sdm.common.SanDingPlanEntryStatus;
|
|
|
|
|
|
|
@@ -277,7 +278,7 @@ public class SendTaskOpPlugin extends AbstractOperationServicePlugIn {
|
|
|
Map<String, Integer> kgsddEmpPosOrgRelMap = kgsddEmpPosOrgRelIdListMap.entrySet().stream().collect(Collectors.toMap(entry -> entry.getKey(), entry -> entry.getValue().size()));
|
|
Map<String, Integer> kgsddEmpPosOrgRelMap = kgsddEmpPosOrgRelIdListMap.entrySet().stream().collect(Collectors.toMap(entry -> entry.getKey(), entry -> entry.getValue().size()));
|
|
|
// key->单位BOID@岗位BOID value->定员数
|
|
// key->单位BOID@岗位BOID value->定员数
|
|
|
Map<String, Integer> lastSanDingTaskMap = new HashMap<String, Integer>();
|
|
Map<String, Integer> lastSanDingTaskMap = new HashMap<String, Integer>();
|
|
|
- DynamicObject lastSanDingPlanDyo = getLastSanDingPlanDyo(billDyo.getLong(SanDingConstant.ID_KEY), SanDingConstant.ID_KEY);
|
|
|
|
|
|
|
+ DynamicObject lastSanDingPlanDyo = SdmBusinessService.getLastSanDingPlanDyo(billDyo.getLong(SanDingConstant.ID_KEY));
|
|
|
if (!HRObjectUtils.isEmpty(lastSanDingPlanDyo)) {
|
|
if (!HRObjectUtils.isEmpty(lastSanDingPlanDyo)) {
|
|
|
long sanDingPlanId = lastSanDingPlanDyo.getLong(SanDingConstant.ID_KEY);
|
|
long sanDingPlanId = lastSanDingPlanDyo.getLong(SanDingConstant.ID_KEY);
|
|
|
// 查询 单据体.定员数、单据体.岗位.BOID、单位.BOID
|
|
// 查询 单据体.定员数、单据体.岗位.BOID、单位.BOID
|
|
@@ -373,17 +374,6 @@ public class SendTaskOpPlugin extends AbstractOperationServicePlugIn {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private static DynamicObject getLastSanDingPlanDyo(Long id, String selectFields) {
|
|
|
|
|
- // 排序 年度降序、适用批次人力资源需求批次.编码降序
|
|
|
|
|
- String orderBys = QueryFieldBuilder.create().addDesc(SanDingConstant.NCKD_SANDINGYEAR_KEY).addDesc(SanDingConstant.NCKD_SANDINGTIME_KEY, SanDingConstant.NUMBER_KEY).buildOrder();
|
|
|
|
|
- // 获取最近一个三定计划
|
|
|
|
|
- DynamicObject[] lastSanDingPlanDyos = HRBaseServiceHelper.create(SanDingConstant.NCKD_SANDINGPLAN_ENTITY).queryOriginalArray(selectFields, new QFilter[]{new QFilter(SanDingConstant.ID_KEY, QCP.not_equals, id)}, orderBys);
|
|
|
|
|
- if (lastSanDingPlanDyos.length > 0) {
|
|
|
|
|
- return HRBaseServiceHelper.create(SanDingConstant.NCKD_SANDINGPLAN_ENTITY).loadSingle(lastSanDingPlanDyos[0].getLong(SanDingConstant.ID_KEY));
|
|
|
|
|
- }
|
|
|
|
|
- return null;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public void endOperationTransaction(EndOperationTransactionArgs e) {
|
|
public void endOperationTransaction(EndOperationTransactionArgs e) {
|
|
|
super.endOperationTransaction(e);
|
|
super.endOperationTransaction(e);
|
|
@@ -439,7 +429,7 @@ public class SendTaskOpPlugin extends AbstractOperationServicePlugIn {
|
|
|
|
|
|
|
|
private void updateLastSanDingPlanEndDate(DynamicObject dyo) {
|
|
private void updateLastSanDingPlanEndDate(DynamicObject dyo) {
|
|
|
Date startDate = dyo.getDate(SanDingConstant.NCKD_STARTDATE_KEY);
|
|
Date startDate = dyo.getDate(SanDingConstant.NCKD_STARTDATE_KEY);
|
|
|
- DynamicObject lastSanDingPlanDyo = getLastSanDingPlanDyo(dyo.getLong(SanDingConstant.ID_KEY), String.join(",", SanDingConstant.ID_KEY, SanDingConstant.NCKD_ENDDATE));
|
|
|
|
|
|
|
+ DynamicObject lastSanDingPlanDyo = SdmBusinessService.getLastSanDingPlanDyo(dyo.getLong(SanDingConstant.ID_KEY));
|
|
|
if (!HRObjectUtils.isEmpty(lastSanDingPlanDyo)) {
|
|
if (!HRObjectUtils.isEmpty(lastSanDingPlanDyo)) {
|
|
|
lastSanDingPlanDyo.set(SanDingConstant.NCKD_ENDDATE, HRDateTimeUtils.addDay(startDate, -1));
|
|
lastSanDingPlanDyo.set(SanDingConstant.NCKD_ENDDATE, HRDateTimeUtils.addDay(startDate, -1));
|
|
|
SaveServiceHelper.save(new DynamicObject[]{lastSanDingPlanDyo});
|
|
SaveServiceHelper.save(new DynamicObject[]{lastSanDingPlanDyo});
|