Browse Source

refactor(empmgt): 使用通用日期过滤器优化查询逻辑

- 引入 QFilterCommonHelper 工具类简化日期范围过滤条件
- 替换手动构建的 STARTDATE 和 ENDDATE 查询条件
- 统一两个插件中的法律岗位查询逻辑实现方式
- 减少重复代码,提高可维护性
wyc 6 days ago
parent
commit
0be805d97a

+ 2 - 3
code/swc/nckd-jxccl-swc/src/main/java/nckd/jxccl/swc/mas/plugin/form/empmgt/SubCoHeadServiceListPlugin.java

@@ -32,6 +32,7 @@ import nckd.jxccl.base.common.utils.QueryFieldBuilder;
 import nckd.jxccl.base.common.utils.ShowOperExecuteResult;
 import nckd.jxccl.base.entity.helper.EntityHelper;
 import nckd.jxccl.base.hrpi.helper.EmpPosOrgRelHelper;
+import nckd.jxccl.base.orm.helper.QFilterCommonHelper;
 import nckd.jxccl.swc.mas.common.MasConstant;
 
 import java.time.LocalDateTime;
@@ -308,9 +309,7 @@ public class SubCoHeadServiceListPlugin extends AbstractListPlugin implements Pl
                 .add(MasConstant.ENDDATE)
                 .addIdNumberName(FormConstant.NCKD_EMPPOSORGREL,FormConstant.EMPLOYEE_KEY)
                 .addIdNumberName(MasConstant.NCKD_LAWENTITY);
-        QFilter legalPostFilter = new QFilter(MasConstant.STARTDATE, QCP.less_equals, endOfYear)
-                .and(new QFilter(MasConstant.ENDDATE, QCP.is_null,null)
-                        .or(MasConstant.ENDDATE, QCP.large_equals, startOfYear))
+        QFilter legalPostFilter = QFilterCommonHelper.getValidDateFilter(MasConstant.STARTDATE, MasConstant.ENDDATE)
                 .and(FormConstant.NCKD_EMPPOSORGREL,QCP.in, empPosOrgRelIds);
         DynamicObjectCollection legalPostQuery = QueryServiceHelper.query(FormConstant.NCKD_HRPI_LEGALPOST, legalPostFieldBuilder.buildSelect(), new QFilter[]{legalPostFilter});
         Map<Long, DynamicObject> legalPostMap = legalPostQuery.stream()

+ 2 - 3
code/swc/nckd-jxccl-swc/src/main/java/nckd/jxccl/swc/mas/plugin/form/empmgt/TenurePersonListListPlugin.java

@@ -32,6 +32,7 @@ import nckd.jxccl.base.common.utils.QueryFieldBuilder;
 import nckd.jxccl.base.common.utils.ShowOperExecuteResult;
 import nckd.jxccl.base.entity.helper.EntityHelper;
 import nckd.jxccl.base.hrpi.helper.EmpPosOrgRelHelper;
+import nckd.jxccl.base.orm.helper.QFilterCommonHelper;
 import nckd.jxccl.swc.mas.common.MasConstant;
 
 import java.time.LocalDateTime;
@@ -261,9 +262,7 @@ public class TenurePersonListListPlugin extends AbstractListPlugin implements Pl
                 .add(MasConstant.ENDDATE)
                 .addIdNumberName(FormConstant.NCKD_EMPPOSORGREL,FormConstant.EMPLOYEE_KEY)
                 .addIdNumberName(MasConstant.NCKD_LAWENTITY);
-        QFilter legalPostFilter = new QFilter(MasConstant.STARTDATE, QCP.less_equals, endOfYear)
-                .and(new QFilter(MasConstant.ENDDATE, QCP.is_null,null)
-                        .or(MasConstant.ENDDATE, QCP.large_equals, startOfYear))
+        QFilter legalPostFilter = QFilterCommonHelper.getValidDateFilter(MasConstant.STARTDATE, MasConstant.ENDDATE)
                 .and(FormConstant.NCKD_EMPPOSORGREL,QCP.in, empPosOrgRelIds);
         DynamicObjectCollection legalPostQuery = QueryServiceHelper.query(FormConstant.NCKD_HRPI_LEGALPOST, legalPostFieldBuilder.buildSelect(), new QFilter[]{legalPostFilter});
         Map<Long, DynamicObject> legalPostMap = legalPostQuery.stream()