会计科目过滤
This commit is contained in:
parent
cadf5f0436
commit
0de251a569
|
@ -0,0 +1,67 @@
|
|||
package zcgj.zcdev.zcdev.fs.plugin.form;
|
||||
|
||||
import kd.bos.bill.AbstractBillPlugIn;
|
||||
import kd.bos.context.RequestContext;
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.form.field.BasedataEdit;
|
||||
import kd.bos.form.field.events.BeforeF7SelectEvent;
|
||||
import kd.bos.form.field.events.BeforeF7SelectListener;
|
||||
import kd.bos.list.ListShowParameter;
|
||||
import kd.bos.orm.query.QCP;
|
||||
import kd.bos.orm.query.QFilter;
|
||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||
import kd.bos.servicehelper.user.UserServiceHelper;
|
||||
import kd.sdk.plugin.Plugin;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.EventObject;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 收款处理/付款处理 会计科目过滤
|
||||
*/
|
||||
public class CasAccountFilterPlugin extends AbstractBillPlugIn implements Plugin, BeforeF7SelectListener {
|
||||
|
||||
private final static String ACCOUNT_ITEM ="zcgj_account";
|
||||
|
||||
@Override
|
||||
public void registerListener(EventObject e) {
|
||||
super.registerListener(e);
|
||||
Long currentUserId = UserServiceHelper.getCurrentUserId();
|
||||
// 当前用户所属组织
|
||||
Long mainOrgId = UserServiceHelper.getUserMainOrgId(currentUserId);
|
||||
//当前切换选择的组织
|
||||
Long currentOrgId = RequestContext.get().getOrgId();
|
||||
//当前所在的组织是属于矿山下的 costcompany
|
||||
//costcompany 费用承担公司
|
||||
//DynamicObject costcompany = (DynamicObject)this.getModel().getValue("costcompany");
|
||||
//long costcompanyId = costcompany.getLong("id");
|
||||
//if(OrgCheckUtils.isKS(currentOrgId) && OrgCheckUtils.isKS(costcompanyId)){
|
||||
BasedataEdit fieldEdit = this.getView().getControl(ACCOUNT_ITEM);
|
||||
fieldEdit.addBeforeF7SelectListener(this);
|
||||
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
public void beforeF7Select(BeforeF7SelectEvent arg0) {
|
||||
String name = arg0.getProperty().getName();
|
||||
if(name.equals(ACCOUNT_ITEM)){
|
||||
//会计科目根据左树根据科目表编码过滤
|
||||
String zcgjAccounttableNumber = (String)this.getModel().getValue("zcgj_accounttable_number");
|
||||
QFilter accountTableFilter = new QFilter("number", QCP.equals,zcgjAccounttableNumber);
|
||||
|
||||
List<QFilter> qFilterList = new ArrayList<>();
|
||||
qFilterList.add(new QFilter("isleaf", QCP.equals,true));
|
||||
arg0.setCustomQFilters(qFilterList);
|
||||
|
||||
DynamicObject accountTableFilterObj = BusinessDataServiceHelper.loadSingle("bd_accounttable", "id,number", new QFilter[]{accountTableFilter});
|
||||
if(accountTableFilterObj!=null){
|
||||
long id = accountTableFilterObj.getLong("id");
|
||||
ListShowParameter param = (ListShowParameter) arg0.getFormShowParameter();
|
||||
param.getTreeFilterParameter().getQFilters().add(new QFilter("accounttableid", QCP.equals, id));
|
||||
// param.getTreeFilterParameter().getQFilters().add(new QFilter("isleaf", QCP.equals,true));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -142,7 +142,7 @@ public class CostcompanyDefaultPlugin extends AbstractBillPlugIn implements Plu
|
|||
//bos_costcenter
|
||||
QFilter numberFilter = new QFilter("number",QCP.equals,costcompanyObj.getString("number"));
|
||||
DynamicObject[] dynamicObjectAccItem = BusinessDataServiceHelper.load("bos_costcenter", "number,name", new QFilter[]{numberFilter});
|
||||
if(dynamicObjectAccItem!=null && !dynamicObjectCollection.isEmpty()){
|
||||
if(dynamicObjectAccItem!=null && !dynamicObjectCollection.isEmpty() && dynamicObjectAccItem.length > 0){
|
||||
DynamicObject dynamicObject = dynamicObjectCollection.get(dynamicObjectCollection.size() - 1);
|
||||
dynamicObject.set("std_entrycostcenter",dynamicObjectAccItem[0]);
|
||||
}
|
||||
|
@ -188,6 +188,8 @@ public class CostcompanyDefaultPlugin extends AbstractBillPlugIn implements Plu
|
|||
DynamicObject[] dynamicObjectAccItem = BusinessDataServiceHelper.load("bos_costcenter", "number,name", new QFilter[]{numberFilter});
|
||||
if(dynamicObjectAccItem!=null && dynamicObjectAccItem.length >0){
|
||||
this.getModel().setValue("std_entrycostcenter", dynamicObjectAccItem[0], rowIndex);
|
||||
}else{
|
||||
this.getView().showErrorNotification("请设置成本中心!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue