Compare commits

..

No commits in common. "bdfd3c6117db26724daa7a6b5c19beda8f559ca2" and "96921a75ec61e91575426eb500ff507c155a8d2e" have entirely different histories.

1 changed files with 9 additions and 62 deletions

View File

@ -3,12 +3,8 @@ package zcgj.zcdev.zcdev.pr.plugin.form;
import kd.bos.bill.AbstractBillPlugIn; import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.entity.datamodel.ListSelectedRowCollection;
import kd.bos.entity.datamodel.events.ChangeData; import kd.bos.entity.datamodel.events.ChangeData;
import kd.bos.entity.datamodel.events.PropertyChangedArgs; import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.bos.form.CloseCallBack;
import kd.bos.form.ShowFormHelper;
import kd.bos.form.events.ClosedCallBackEvent;
import kd.bos.form.field.BasedataEdit; import kd.bos.form.field.BasedataEdit;
import kd.bos.form.field.events.BeforeF7SelectEvent; import kd.bos.form.field.events.BeforeF7SelectEvent;
import kd.bos.form.field.events.BeforeF7SelectListener; import kd.bos.form.field.events.BeforeF7SelectListener;
@ -37,10 +33,6 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be
outProject.addBeforeF7SelectListener(this); outProject.addBeforeF7SelectListener(this);
BasedataEdit inProject = this.getControl("zcgj_inproject"); //调入项目 BasedataEdit inProject = this.getControl("zcgj_inproject"); //调入项目
inProject.addBeforeF7SelectListener(this); inProject.addBeforeF7SelectListener(this);
BasedataEdit zcgj_department = this.getView().getControl("zcgj_department");//部门
zcgj_department.addBeforeF7SelectListener(this);
BasedataEdit zcgj_org = this.getView().getControl("zcgj_org");//所属组织
zcgj_org.addBeforeF7SelectListener(this);
} }
@Override @Override
@ -110,7 +102,7 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be
} }
} }
} }
} else if (StringUtil.equals(key, "zcgj_department")) { } else if (StringUtil.equals(key, "zcgj_department")){
//部门 //部门
DynamicObject costDept = (DynamicObject) this.getModel().getValue("zcgj_department");//部门 DynamicObject costDept = (DynamicObject) this.getModel().getValue("zcgj_department");//部门
if (costDept != null) { if (costDept != null) {
@ -133,12 +125,13 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be
beforeF7SelectEvent.setCancel(true); beforeF7SelectEvent.setCancel(true);
return; return;
} }
DynamicObject outOrgDy = (DynamicObject) outOrg;//调出组织 DynamicObject outOrgDy = (DynamicObject) outOrg;//调出组织
QFilter filter = new QFilter("org.id", "=", outOrgDy.get("id")); QFilter filter = new QFilter("org.id", "=", outOrgDy.get("id"));
DynamicObject[] equipmentInfos = BusinessDataServiceHelper.load("eceq_equipment_info", "id", new QFilter[]{filter});//设备台账F7 DynamicObject[] equipmentInfos = BusinessDataServiceHelper.load("eceq_equipment_info", "id", new QFilter[]{filter});//设备台账F7
List<Long> equipmentInfoIds = getIdsFromDynamicObjects(equipmentInfos); List<Long> equipmentInfoIds = getIdsFromDynamicObjects(equipmentInfos);
qFilters.add(new QFilter("id", QCP.in, equipmentInfoIds)); qFilters.add(new QFilter("id", QCP.in, equipmentInfoIds));
formShowParameter.getListFilterParameter().setQFilters(qFilters);
} else if (StringUtil.equals(propertyName, "zcgj_outproject")) { } else if (StringUtil.equals(propertyName, "zcgj_outproject")) {
// 调出项目 // 调出项目
Object outOrg = this.getModel().getValue("zcgj_outorg");//调出组织 Object outOrg = this.getModel().getValue("zcgj_outorg");//调出组织
@ -147,18 +140,13 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be
beforeF7SelectEvent.setCancel(true); beforeF7SelectEvent.setCancel(true);
return; return;
} }
DynamicObject outOrgDy = (DynamicObject) outOrg;//调出组织 DynamicObject outOrgDy = (DynamicObject) outOrg;//调出组织
QFilter filter = new QFilter("fiaccountorg.id", "=", outOrgDy.get("id")); QFilter filter = new QFilter("fiaccountorg.id", "=", outOrgDy.get("id"));
DynamicObject[] projectF7s = BusinessDataServiceHelper.load("ec_ecbd_projectf7", "id", new QFilter[]{filter});//工程项目 DynamicObject[] projectF7s = BusinessDataServiceHelper.load("ec_ecbd_projectf7", "id", new QFilter[]{filter});//工程项目
List<Long> projectF7Ids = getIdsFromDynamicObjects(projectF7s); List<Long> projectF7Ids = getIdsFromDynamicObjects(projectF7s);
qFilters.add(new QFilter("id", QCP.in, projectF7Ids)); qFilters.add(new QFilter("id", QCP.in, projectF7Ids));
beforeF7SelectEvent.setCancel(true);
ListShowParameter ec_ecbd_projectf7 = ShowFormHelper.createShowListForm("ec_ecbd_projectf7", true);
ec_ecbd_projectf7.setCloseCallBack(new CloseCallBack(this, "zcgj_outproject"));
ec_ecbd_projectf7.setMultiSelect(false);
ec_ecbd_projectf7.setIsolationOrg(true);
ec_ecbd_projectf7.getListFilterParameter().setQFilters(qFilters);
this.getView().showForm(ec_ecbd_projectf7);
} else if (StringUtil.equals(propertyName, "zcgj_inproject")) { } else if (StringUtil.equals(propertyName, "zcgj_inproject")) {
//调入项目 //调入项目
Object inOrg = this.getModel().getValue("zcgj_inorg");//调入组织 Object inOrg = this.getModel().getValue("zcgj_inorg");//调入组织
@ -172,53 +160,12 @@ public class EquipmentCommandBillPlugin extends AbstractBillPlugIn implements Be
DynamicObject[] projectF7s = BusinessDataServiceHelper.load("ec_ecbd_projectf7", "id", new QFilter[]{filter}); DynamicObject[] projectF7s = BusinessDataServiceHelper.load("ec_ecbd_projectf7", "id", new QFilter[]{filter});
List<Long> projectF7Ids = getIdsFromDynamicObjects(projectF7s); List<Long> projectF7Ids = getIdsFromDynamicObjects(projectF7s);
qFilters.add(new QFilter("id", QCP.in, projectF7Ids)); qFilters.add(new QFilter("id", QCP.in, projectF7Ids));
beforeF7SelectEvent.setCancel(true);
ListShowParameter ec_ecbd_projectf7 = ShowFormHelper.createShowListForm("ec_ecbd_projectf7", true);
ec_ecbd_projectf7.setCloseCallBack(new CloseCallBack(this, "zcgj_inproject"));
ec_ecbd_projectf7.setMultiSelect(false);
ec_ecbd_projectf7.setIsolationOrg(true);
ec_ecbd_projectf7.getListFilterParameter().setQFilters(qFilters);
this.getView().showForm(ec_ecbd_projectf7);
} else if (propertyName.equals("zcgj_department")) {
// 部门
DynamicObject creator = this.getModel().getDataEntity().getDynamicObject("creator");//创建人
if (creator == null) {
return;
}
List<Long> id = UserServiceHelper.getOrgsUserJoin(creator.getLong("id"));
qFilters.add(new QFilter("id", QCP.in, id));
formShowParameter.setCustomParam("isIncludeAllSub", "true");
formShowParameter.getListFilterParameter().setQFilters(qFilters);
} else if (propertyName.equals("zcgj_org")) {
// 所属组织
DynamicObject costDept = (DynamicObject) this.getModel().getValue("zcgj_department");//部门
DynamicObject zcgj_org = (DynamicObject) this.getModel().getValue("zcgj_org");//所属组织
if (costDept != null && zcgj_org != null) {
DynamicObject orgPattern = costDept.getDynamicObject("orgpattern");
if (orgPattern == null) {
return;
}
String orgPatternNumber = orgPattern.getString("number");
if (orgPatternNumber.equals("Orgform06")) {
Long id = (Long) zcgj_org.get("id");
qFilters.add(new QFilter("id", QCP.in, id));
formShowParameter.setCustomParam("isIncludeAllSub", "true");
formShowParameter.getListFilterParameter().setQFilters(qFilters);
}
}
} }
}
public void closedCallBack(ClosedCallBackEvent closedCallBackEvent) { // formShowParameter.setHasRight(true);
super.closedCallBack(closedCallBackEvent); // formShowParameter.getCustomParams().put("isIgnoreLicense", true);
String actionId = closedCallBackEvent.getActionId(); // formShowParameter.setIsolationOrg(false);
ListSelectedRowCollection returnData = (ListSelectedRowCollection) closedCallBackEvent.getReturnData(); formShowParameter.getListFilterParameter().setQFilters(qFilters);
if (returnData == null) {
return;
}
Object[] primaryKeyValues = returnData.getPrimaryKeyValues();
Long primaryKeyValue = (Long) primaryKeyValues[0];
this.getModel().setValue(actionId, primaryKeyValue);
} }
private List<Long> getIdsFromDynamicObjects(DynamicObject[] dynamicObjects) { private List<Long> getIdsFromDynamicObjects(DynamicObject[] dynamicObjects) {