lc/lc123/cloud/app/plugin/form/pm/PurRefundApplyBillPlugin.java

85 lines
3.5 KiB
Java

package tqq9.lc123.cloud.app.plugin.form.pm;
import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.bill.BillShowParameter;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.form.CloseCallBack;
import kd.bos.form.ShowType;
import kd.bos.form.control.events.ItemClickEvent;
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.logging.Log;
import kd.bos.logging.LogFactory;
import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.sdk.plugin.Plugin;
import java.util.Date;
import java.util.EventObject;
/**
* 采购退货界面插件
*/
public class PurRefundApplyBillPlugin extends AbstractBillPlugIn implements BeforeF7SelectListener {
private final static Log logger = LogFactory.getLog(PurorderEntryIntroPaybillPlugin.class);
@Override
public void registerListener(EventObject e) {
super.registerListener(e);
this.addItemClickListeners("tbmain");
BasedataEdit control = this.getControl("tqq9_ph");
control.addBeforeF7SelectListener(this);
// this.addClickListeners("tqq9_xsddh");
}
/**
*异地退货
*/
@Override
public void itemClick(ItemClickEvent evt) {
super.itemClick(evt);
String itemKey = evt.getItemKey();
if(StringUtils.equals("tqq9_ydth",itemKey)){
BillShowParameter param = new BillShowParameter();
param.setFormId("tqq9_otheroutapply");
param.setCustomParam("tqq9_otheroutapplybillno", this.getModel().getValue("billno"));//采购退货申请单号
param.setCloseCallBack(new CloseCallBack(this, "tqq9_otheroutapply"));
param.getOpenStyle().setShowType(ShowType.Modal);
this.getView().showForm(param);
}
}
/**出库批号根据了做筛选
*
*/
@Override
public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
int index = this.getModel().getEntryCurrentRowIndex("billentry");
DynamicObjectCollection entryentity = this.getModel().getDataEntity(true).getDynamicObjectCollection("billentry");
DynamicObject dynamicObject = entryentity.get(index);
DynamicObject material = dynamicObject.getDynamicObject("material");//物料采购信息
if (material == null) {
beforeF7SelectEvent.setCancel(true);
this.getView().showMessage("请先填物料信息");
} else {
DynamicObject masterid = material.getDynamicObject("masterid");//物料
DynamicObject bd_materialinventoryinfo = BusinessDataServiceHelper.loadSingle("bd_materialinventoryinfo", new QFilter[]{new QFilter("masterid", QCP.equals, masterid.getLong("id"))});
Boolean enablelot = bd_materialinventoryinfo.getBoolean("enablelot");//是否启用批号管理
if (enablelot) {
ListShowParameter param = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter();
QFilter qF1 = new QFilter("material.number", QCP.equals, masterid.getString("number"));
param.getListFilterParameter().getQFilters().add(qF1);
} else {
beforeF7SelectEvent.setCancel(true);
this.getView().showMessage("该物料未启用批号管理");
}
}
}
}