修改上级组织赋值逻辑

This commit is contained in:
xuhaihui 2025-09-12 15:24:54 +08:00
parent 8bf871646e
commit b27ed7d9cd
2 changed files with 20 additions and 13 deletions

View File

@ -26,6 +26,7 @@ import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.QueryServiceHelper; import kd.bos.servicehelper.QueryServiceHelper;
import kd.bos.servicehelper.org.OrgUnitServiceHelper; import kd.bos.servicehelper.org.OrgUnitServiceHelper;
import kd.bos.servicehelper.org.OrgViewType;
import kd.bos.servicehelper.user.UserServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper;
import kd.fi.er.business.bean.CostDeptF7ChangePram; import kd.fi.er.business.bean.CostDeptF7ChangePram;
import kd.fi.er.business.servicehelper.CoreBaseBillServiceHelper; import kd.fi.er.business.servicehelper.CoreBaseBillServiceHelper;
@ -35,10 +36,7 @@ import kd.fi.er.business.utils.ErEntityTypeUtils;
import kd.fi.er.business.utils.ErStdConfig; import kd.fi.er.business.utils.ErStdConfig;
import kd.sdk.plugin.Plugin; import kd.sdk.plugin.Plugin;
import java.util.ArrayList; import java.util.*;
import java.util.EventObject;
import java.util.List;
import java.util.Map;
/** /**
* 用款申请单表单插件 * 用款申请单表单插件
@ -204,9 +202,14 @@ public class PaymentApplicationPlugin extends AbstractBillPlugIn implements Atta
}; };
cost = BusinessDataServiceHelper.loadSingle("bos_adminorg", qFilters); cost = BusinessDataServiceHelper.loadSingle("bos_adminorg", qFilters);
} }
DynamicObjectCollection structureCollection = cost.getDynamicObjectCollection("structure");//组织结构分录 long currentOrgId = Long.parseLong(cost.getString("id"));//当前部门ID
DynamicObject structure = structureCollection.get(0); Map<Long, Long> orgParentMap = OrgUnitServiceHelper.getDirectSuperiorOrg(OrgViewType.Admin, Collections.singletonList(currentOrgId));//获取当前部门的上级组织
viewParent = structure.getDynamicObject("viewparent");//上级组织 Long parentId = orgParentMap.get(currentOrgId);//上级组织ID
viewParent = BusinessDataServiceHelper.loadSingle("bos_adminorg",
new QFilter[]{new QFilter("id", QCP.equals, parentId)});//行政组织-上级组织
// DynamicObjectCollection structureCollection = cost.getDynamicObjectCollection("structure");//组织结构分录
// DynamicObject structure = structureCollection.get(0);
// viewParent = structure.getDynamicObject("viewparent");//上级组织
String viewParentNumber = viewParent.getString("number"); String viewParentNumber = viewParent.getString("number");
QFilter[] qFilters = new QFilter[]{ QFilter[] qFilters = new QFilter[]{
new QFilter("number", QCP.equals, viewParentNumber) new QFilter("number", QCP.equals, viewParentNumber)

View File

@ -21,11 +21,10 @@ import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter; import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.org.OrgUnitServiceHelper; import kd.bos.servicehelper.org.OrgUnitServiceHelper;
import kd.bos.servicehelper.org.OrgViewType;
import kd.bos.servicehelper.user.UserServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper;
import java.util.ArrayList; import java.util.*;
import java.util.EventObject;
import java.util.List;
/* /*
* 设备调令单表单插件 * 设备调令单表单插件
@ -387,9 +386,14 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be
}; };
cost = BusinessDataServiceHelper.loadSingle("bos_adminorg", qFilters);//行政组织 cost = BusinessDataServiceHelper.loadSingle("bos_adminorg", qFilters);//行政组织
} }
DynamicObjectCollection structureCollection = cost.getDynamicObjectCollection("structure");//组织结构分录 long currentOrgId = Long.parseLong(cost.getString("id"));//当前部门ID
DynamicObject structure = structureCollection.get(0); Map<Long, Long> orgParentMap = OrgUnitServiceHelper.getDirectSuperiorOrg(OrgViewType.Admin, Collections.singletonList(currentOrgId));//获取当前部门的上级组织
viewParent = structure.getDynamicObject("viewparent");//上级组织 Long parentId = orgParentMap.get(currentOrgId);//上级组织ID
viewParent = BusinessDataServiceHelper.loadSingle("bos_adminorg",
new QFilter[]{new QFilter("id", QCP.equals, parentId)});//行政组织-上级组织
// DynamicObjectCollection structureCollection = cost.getDynamicObjectCollection("structure");//组织结构分录
// DynamicObject structure = structureCollection.get(0);
// viewParent = structure.getDynamicObject("viewparent");//上级组织
String viewParentNumber = viewParent.getString("number"); String viewParentNumber = viewParent.getString("number");
QFilter[] qFilters = new QFilter[]{ QFilter[] qFilters = new QFilter[]{
new QFilter("number", QCP.equals, viewParentNumber) new QFilter("number", QCP.equals, viewParentNumber)