From 1d230f4dd505a296a1e56eed228d6b95789bbeec Mon Sep 17 00:00:00 2001 From: zhangzhiguo Date: Mon, 30 Jun 2025 09:20:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=92=E4=BB=B6=E5=B7=A5=E5=85=B7=E7=B1=BB?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zcdev/zcdev/pr/utils/CommonUtils.java | 12 ++++ .../zcdev/zcdev/pr/utils/OrgCheckUtils.java | 70 +++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/CommonUtils.java create mode 100644 code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/OrgCheckUtils.java diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/CommonUtils.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/CommonUtils.java new file mode 100644 index 0000000..41bffef --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/CommonUtils.java @@ -0,0 +1,12 @@ +package zcgj.zcdev.zcdev.pr.utils; + +import kd.bos.entity.datamodel.IDataModel; + +public class CommonUtils { + public CommonUtils() { + } + + public static boolean isNewData(IDataModel model) { + return !model.getDataEntity().getDataEntityState().getFromDatabase(); + } +} \ No newline at end of file diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/OrgCheckUtils.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/OrgCheckUtils.java new file mode 100644 index 0000000..3594351 --- /dev/null +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/utils/OrgCheckUtils.java @@ -0,0 +1,70 @@ +package zcgj.zcdev.zcdev.pr.utils; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.org.OrgUnitServiceHelper; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; + +public class OrgCheckUtils { + + + public static String ksNumberTop = "10006431"; //矿山总部组织编码 + + + public static String ksNumber = "10006447";//矿山总部本部 + + //试点四家公司本部 + public static Set testCompanyNumberSet = new HashSet<>(); + static { + testCompanyNumberSet.add("10006461"); //南京本部 + testCompanyNumberSet.add("10006476"); //兖州本部 + testCompanyNumberSet.add("10007186"); //西安本部 + testCompanyNumberSet.add("10006939"); //天津本部 + } + + + /** + * 判断是否为矿山 + */ + public static boolean isKS(Long currentOrgId){ + QFilter filterOrgId = new QFilter("number", QCP.equals,ksNumberTop);//中材矿山建设有限公司 + DynamicObject adminOrg = BusinessDataServiceHelper.loadSingle("bos_org", "number,name,fullname", new QFilter[]{filterOrgId}); + long orgId = adminOrg.getLong("id"); + List orgIds = new ArrayList<>(1); + //orgIds.add(1692204547985902592L); + orgIds.add(orgId); + List subOrgIds = OrgUnitServiceHelper.getAllSubordinateOrgs(1L, orgIds, true); + Set orgSer = subOrgIds.stream().collect(Collectors.toSet()); + if(orgSer.contains(currentOrgId)){ + return true; + } + return false; + } + + /** + * 判断某个组织是否在某个组织下面 + * parentOrgNumber 上层组织编码 + * currentOrgId 需要判断的组织id + */ + public static boolean isChildrenOrg(String parentOrgNumber,Long currentOrgId){ + QFilter filterOrgId = new QFilter("number", QCP.equals,parentOrgNumber);//中材矿山建设有限公司 + DynamicObject adminOrg = BusinessDataServiceHelper.loadSingle("bos_org", "number,name,fullname", new QFilter[]{filterOrgId}); + long orgId = adminOrg.getLong("id"); + List orgIds = new ArrayList<>(1); + //orgIds.add(1692204547985902592L); + orgIds.add(orgId); + List subOrgIds = OrgUnitServiceHelper.getAllSubordinateOrgs(1L, orgIds, true); + Set orgSer = subOrgIds.stream().collect(Collectors.toSet()); + if(orgSer.contains(currentOrgId)){ + return true; + } + return false; + } +}