|
@@ -0,0 +1,146 @@
|
|
|
+package nckd.jxccl.base.orm.helper;
|
|
|
+
|
|
|
+import kd.bos.common.enums.EnableEnum;
|
|
|
+import kd.bos.entity.constant.StatusEnum;
|
|
|
+import kd.bos.entity.validate.BillStatus;
|
|
|
+import kd.bos.logging.Log;
|
|
|
+import kd.bos.logging.LogFactory;
|
|
|
+import kd.bos.orm.query.QCP;
|
|
|
+import kd.bos.orm.query.QFilter;
|
|
|
+import nckd.jxccl.base.common.constant.FromConstant;
|
|
|
+import nckd.jxccl.base.common.utils.ConvertUtil;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * QFilter 通用辅助类
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date 2025/7/7 9:17
|
|
|
+ * @version 1.0
|
|
|
+ */
|
|
|
+public final class QFilterCommonHelper {
|
|
|
+
|
|
|
+ private static final Log logger = LogFactory.getLog(QFilterCommonHelper.class);
|
|
|
+
|
|
|
+ private QFilterCommonHelper() {
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取使用状态为可用的QFilter实例
|
|
|
+ * @param
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getEnableFilter() {
|
|
|
+ return getEnableFilter(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据使用状态获取QFilter实例
|
|
|
+ * @param enable 是否启用
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getEnableFilter(boolean enable) {
|
|
|
+ return new QFilter(FromConstant.ENABLE, QCP.equals, enable ? EnableEnum.YES.getCode() : EnableEnum.NO.getCode());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取当前版本QFilter实例
|
|
|
+ * @param
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getCurrentVersionFilter() {
|
|
|
+ return new QFilter(FromConstant.IS_CURRENT_VERSION, QCP.equals, EnableEnum.YES.getCode());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取状态为已审核的QFilter实例
|
|
|
+ * @param
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getStatusFilter() {
|
|
|
+ return new QFilter(FromConstant.STATUS, QCP.equals, StatusEnum.C.toString());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取数据版本状态为生效中的QFilter实例
|
|
|
+ * @param
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getDataStatusFilter() {
|
|
|
+ return new QFilter(FromConstant.DATA_STATUS, QCP.equals, EnableEnum.YES.getCode());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取业务状态为生效中的QFilter实例
|
|
|
+ * @param
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getBusinessStatusFilter() {
|
|
|
+ return new QFilter(FromConstant.BUSINESS_STATUS, QCP.equals, EnableEnum.YES.getCode());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取初始状态为完成的QFilter实例
|
|
|
+ * @param
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getInitStatusFinishFilter() {
|
|
|
+ return new QFilter(FromConstant.INIT_STATUS, QCP.equals, BillStatus.C.ordinal()+"");
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取业务状态为已审批的QFilter实例
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 17:30
|
|
|
+ */
|
|
|
+ public static QFilter getBillStatusFilter() {
|
|
|
+ return new QFilter(FromConstant.BILL_STATUS_KEY, QCP.equals, BillStatus.C.toString());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取编号等于number的QFilter实例
|
|
|
+ * @param number
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getNumberEqFilter(String number) {
|
|
|
+ return new QFilter(FromConstant.NUMBER_KEY, QCP.equals, number);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取主键等于id的QFilter实例
|
|
|
+ * @param id
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getIdEqFilter(Object id) {
|
|
|
+ return new QFilter(FromConstant.ID_KEY, QCP.in, ConvertUtil.toLong(id));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取主键等于idList的QFilter实例
|
|
|
+ * @param idList
|
|
|
+ * @return: kd.bos.orm.query.QFilter
|
|
|
+ * @author W.Y.C
|
|
|
+ * @date: 2025/07/07 09:20
|
|
|
+ */
|
|
|
+ public static QFilter getIdInFilter(List<Long> idList) {
|
|
|
+ return new QFilter(FromConstant.ID_KEY, QCP.in, idList);
|
|
|
+ }
|
|
|
+}
|