初始化资金计划申请界面数据
This commit is contained in:
parent
9a2527d6f8
commit
b8b7a9e05e
|
@ -6,6 +6,7 @@ import kd.bos.bill.OperationStatus;
|
|||
import kd.bos.context.RequestContext;
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
||||
import kd.bos.dataentity.entity.MulBasedataDynamicObjectCollection;
|
||||
import kd.bos.entity.datamodel.events.BizDataEventArgs;
|
||||
import kd.bos.entity.datamodel.events.ChangeData;
|
||||
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
|
||||
|
@ -48,12 +49,70 @@ public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin
|
|||
if(orgByCurperiod!=null && orgByCurperiod.length>0){
|
||||
this.getModel().setValue("zcgj_period",orgByCurperiod[0].getDynamicObject("curperiod"));
|
||||
}
|
||||
|
||||
//初始化值
|
||||
initData(org);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 自动带入 今年最新的 “年初应收余额”和“年初应付余额
|
||||
*/
|
||||
public void initData(DynamicObject org){
|
||||
int year = LocalDate.now().getYear();
|
||||
|
||||
|
||||
List<QFilter> searchFilterList = new ArrayList<>();
|
||||
//查询申请人下的今年的探亲差旅单据
|
||||
searchFilterList.add(new QFilter("zcgj_org", QCP.equals, org.getLong("id")));
|
||||
searchFilterList.add( new QFilter("zcgj_period.number", QCP.like, year+"%"));
|
||||
DynamicObject[] load = BusinessDataServiceHelper.load("zcgj_ec_fundingplanapply",
|
||||
"zcgj_period," +
|
||||
"zcgj_infundproject_entry.zcgj_in_fundproject,zcgj_infundproject_entry.zcgj_in_custom,zcgj_infundproject_entry.zcgj_iinitialreceivable " +
|
||||
",zcgj_outfundproject_entry.zcgj_out_fundproject,zcgj_outfundproject_entry.zcgj_out_supplier,zcgj_outfundproject_entry.zcgj_openingpayable" +
|
||||
",createtime",
|
||||
searchFilterList.toArray(new QFilter[]{}), "createtime desc");
|
||||
if(load!=null && load.length>0){
|
||||
DynamicObject data = load[0];
|
||||
DynamicObjectCollection indataentry = data.getDynamicObjectCollection("zcgj_infundproject_entry");
|
||||
DynamicObjectCollection inentry = this.getModel().getDataEntity(true).getDynamicObjectCollection("zcgj_infundproject_entry");
|
||||
inentry.clear();
|
||||
for (DynamicObject dynamicObject : indataentry) {
|
||||
DynamicObject newData = inentry.addNew();
|
||||
newData.set("zcgj_in_fundproject",dynamicObject.get("zcgj_in_fundproject"));
|
||||
DynamicObjectCollection collection = new DynamicObjectCollection();
|
||||
for (DynamicObject zcgjInCustom :dynamicObject.getDynamicObjectCollection("zcgj_in_custom")) {
|
||||
DynamicObject basedataObj = zcgjInCustom.getDynamicObject("fbasedataid");
|
||||
DynamicObject newObj = new DynamicObject(newData.getDynamicObjectCollection("zcgj_in_custom").getDynamicObjectType());
|
||||
newObj.set("fbasedataid", basedataObj);
|
||||
newObj.set("fbasedataid_id", basedataObj.getPkValue());
|
||||
collection.add(newObj);
|
||||
}
|
||||
newData.set("zcgj_in_custom",collection);
|
||||
newData.set("zcgj_iinitialreceivable",dynamicObject.get("zcgj_iinitialreceivable"));
|
||||
}
|
||||
this.getView().updateView("zcgj_infundproject_entry");
|
||||
|
||||
|
||||
DynamicObjectCollection outdataentry = data.getDynamicObjectCollection("zcgj_outfundproject_entry");
|
||||
DynamicObjectCollection outentry = this.getModel().getDataEntity().getDynamicObjectCollection("zcgj_outfundproject_entry");
|
||||
outentry.clear();
|
||||
for (DynamicObject dynamicObject : outdataentry) {
|
||||
DynamicObject newData = outentry.addNew();
|
||||
newData.set("zcgj_out_fundproject",dynamicObject.get("zcgj_out_fundproject"));
|
||||
DynamicObjectCollection collection = new DynamicObjectCollection();
|
||||
for (DynamicObject zcgjInCustom : (MulBasedataDynamicObjectCollection) dynamicObject.get("zcgj_out_supplier")) {
|
||||
DynamicObject basedataObj = zcgjInCustom.getDynamicObject("fbasedataid");
|
||||
DynamicObject newObj = new DynamicObject(newData.getDynamicObjectCollection("zcgj_out_supplier").getDynamicObjectType());
|
||||
newObj.set("fbasedataid", basedataObj);
|
||||
newObj.set("fbasedataid_id", basedataObj.getPkValue());
|
||||
collection.add(newObj);
|
||||
}
|
||||
newData.set("zcgj_out_supplier",collection);
|
||||
newData.set("zcgj_openingpayable",dynamicObject.get("zcgj_openingpayable"));
|
||||
}
|
||||
this.getView().updateView("zcgj_outfundproject_entry");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -81,6 +140,20 @@ public class FundingplanapplyPlugin extends AbstractBillPlugIn implements Plugin
|
|||
this.getView().updateView("zcgj_setttype",rowIndex);
|
||||
}
|
||||
}
|
||||
}else if(name.equals("zcgj_org")){
|
||||
DynamicObject org = (DynamicObject) changeData.getNewValue();
|
||||
initData(org);
|
||||
}
|
||||
}
|
||||
|
||||
// 获取某年份的第一天
|
||||
public static LocalDate getFirstDayOfYear(int year) {
|
||||
return LocalDate.of(year, 1, 1);
|
||||
}
|
||||
|
||||
// 获取某年份的最后一天
|
||||
public static LocalDate getLastDayOfYear(int year) {
|
||||
return LocalDate.of(year, 12, 31);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue