潜在供应商,服务分类默认集团外

This commit is contained in:
ptt 2025-04-16 11:48:50 +08:00
parent cfc41e41da
commit 7b9acc1627
1 changed files with 74 additions and 0 deletions

View File

@ -2,13 +2,87 @@ package shkd.repc.resm.formplugin;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.dataentity.metadata.dynamicobject.DynamicObjectType;
import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.repc.common.enums.resm.RegSupplierStatusEnum;
import kd.repc.common.util.resm.SupplierAptUtils;
import kd.repc.common.util.resm.SupplierStrategyUtil;
import kd.repc.resm.formplugin.supplier.RegSupplierEdit;
import java.util.Iterator;
import java.util.List;
import java.util.stream.Collectors;
public class TycQzSupplierUSAFormPlugin extends RegSupplierEdit {
@Override
protected void beforeBindData_serviceOrgAndGroup() {
DynamicObject dataEntity = this.getModel().getDataEntity();
boolean multipleServiceFlag = SupplierStrategyUtil.isMultipleserviceflag();
boolean visibleFlag = true;
DynamicObjectCollection collection = dataEntity.getDynamicObjectCollection("group_entry");
Iterator var5 = collection.iterator();
while(var5.hasNext()) {
DynamicObject item = (DynamicObject)var5.next();
String status = item.getString("groupstatus");
if (RegSupplierStatusEnum.OFFICIAL_SUPPLIER.getValue().equals(status)) {
visibleFlag = false;
}
}
this.getView().setVisible(multipleServiceFlag && visibleFlag, new String[]{"newentry_serviceorg", "deleteentry_serviceorg"});
if (dataEntity.getPkValue() == null || dataEntity.getLong("id") == 0L) {
DynamicObject belongOrgEntry = dataEntity.getDynamicObject("serviceorg");
DynamicObject[] groupArr = SupplierAptUtils.getDefaultGroup(belongOrgEntry.getPkValue());
DynamicObjectCollection serviceOrgColl = dataEntity.getDynamicObjectCollection("entry_serviceorg");
Iterator var8 = serviceOrgColl.iterator();
while(var8.hasNext()) {
DynamicObject serviceOrg = (DynamicObject)var8.next();
serviceOrg.set("orgarea", belongOrgEntry);
DynamicObjectCollection supGroupColl = serviceOrg.getDynamicObjectCollection("supgroup");
DynamicObject supGroup = supGroupColl.addNew();
QFilter number = new QFilter("number", QCP.equals, "GYSFL-202411-002");
DynamicObject[] load = BusinessDataServiceHelper.load("bd_suppliergroup", "id", number.toArray());
if (load!=null&&load.length>0) {
supGroup.set("fbasedataid", load[0]);
}else{
Object value = groupArr.length > 0 ? groupArr[0] : null;
supGroup.set("fbasedataid", value);
}
serviceOrg.set("supgroup", supGroupColl);
}
dataEntity.set("entry_serviceorg", serviceOrgColl);
}
this.lockServiceAreaAndGroupEntry(dataEntity);
//
// DynamicObjectCollection usersForDisplay = new DynamicObjectCollection();
//
// DynamicObjectCollection entry_serviceorg = (DynamicObjectCollection)this.getModel().getValue("entry_serviceorg");
// DynamicObject entry = entry_serviceorg.get(0);
// DynamicObjectType dynamicObjectType = entry.getDynamicObjectCollection("supgroup").getDynamicObjectType();
// if (load!=null) {
// for (DynamicObject obj : load) {
// DynamicObject dynamicObject = new DynamicObject(dynamicObjectType);
// dynamicObject.set("fbasedataid", obj);
// usersForDisplay.add(dynamicObject);
// }
// //usersForDisplay.addAll(Arrays.asList(load));
// }
//
// entry.set("supgroup",usersForDisplay);
// this.getModel().setValue("entry_serviceorg", entry_serviceorg);
}
@Override
protected void lockServiceAreaAndGroupEntry(DynamicObject dataEntity) {
DynamicObjectCollection serviceOrgColl = dataEntity.getDynamicObjectCollection("entry_serviceorg");