122 lines
5.4 KiB
Java
122 lines
5.4 KiB
Java
package tqq9.lc123.cloud.app.plugin.form.im;
|
|
|
|
import kd.bos.bill.AbstractBillPlugIn;
|
|
import kd.bos.bill.BillShowParameter;
|
|
import kd.bos.bill.OperationStatus;
|
|
import kd.bos.dataentity.entity.DynamicObject;
|
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
|
import kd.bos.dataentity.utils.StringUtils;
|
|
import kd.bos.entity.datamodel.IDataModel;
|
|
import kd.bos.entity.datamodel.events.ChangeData;
|
|
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
|
|
import kd.bos.form.ShowType;
|
|
import kd.bos.form.StyleCss;
|
|
import kd.bos.form.control.Control;
|
|
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 java.util.EventObject;
|
|
|
|
/**
|
|
* 其他出库申请界面插件
|
|
*/
|
|
public class OtherOutApplyBillPlugin extends AbstractBillPlugIn implements BeforeF7SelectListener {
|
|
@Override
|
|
public void registerListener(EventObject e) {
|
|
super.registerListener(e);
|
|
this.addItemClickListeners("tbmain");
|
|
BasedataEdit control = this.getControl("tqq9_lot");
|
|
control.addBeforeF7SelectListener(this);
|
|
this.addClickListeners("tqq9_xsddh");
|
|
|
|
|
|
}
|
|
|
|
/**出库批号根据了做筛选
|
|
*
|
|
*/
|
|
|
|
@Override
|
|
public void beforeF7Select(BeforeF7SelectEvent beforeF7SelectEvent) {
|
|
int index = this.getModel().getEntryCurrentRowIndex("entryentity");
|
|
DynamicObjectCollection entryentity = this.getModel().getDataEntity(true).getDynamicObjectCollection("entryentity");
|
|
DynamicObject dynamicObject = entryentity.get(index);
|
|
DynamicObject tqq9_materiel = dynamicObject.getDynamicObject("tqq9_materiel");
|
|
if (tqq9_materiel == null) {
|
|
beforeF7SelectEvent.setCancel(true);
|
|
this.getView().showMessage("请先填物料信息");
|
|
} else {
|
|
DynamicObject materiel = tqq9_materiel.getDynamicObject("masterid");//物料
|
|
Boolean enablelot = tqq9_materiel.getBoolean("enablelot");//是否启用批号管理
|
|
if (enablelot) {
|
|
ListShowParameter param = (ListShowParameter) beforeF7SelectEvent.getFormShowParameter();
|
|
QFilter qF1 = new QFilter("material.number", QCP.equals, materiel.getString("number"));
|
|
param.getListFilterParameter().getQFilters().add(qF1);
|
|
} else {
|
|
beforeF7SelectEvent.setCancel(true);
|
|
this.getView().showMessage("该物料未启用批号管理");
|
|
}
|
|
|
|
}
|
|
}
|
|
/**售后单号带出售后信息
|
|
*
|
|
*/
|
|
|
|
@Override
|
|
public void propertyChanged(PropertyChangedArgs e) {
|
|
super.propertyChanged(e);
|
|
String name = e.getProperty().getName();
|
|
IDataModel model = this.getModel();
|
|
if (StringUtils.equals("tqq9_returnapply", name)) {
|
|
ChangeData[] changeSet = e.getChangeSet();
|
|
DynamicObject newValue = (DynamicObject) changeSet[0].getNewValue();//销售退货申请单
|
|
DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("sm_returnapply", new QFilter[]{new QFilter("billno", QCP.equals, newValue.getString("billno"))});
|
|
DynamicObjectCollection billentry = dynamicObject.getDynamicObjectCollection("billentry");
|
|
if (billentry.size() > 0) {
|
|
DynamicObject entry = billentry.get(0);
|
|
String mainbillnumber = entry.getString("mainbillnumber");//核心单据编号
|
|
String tqq9_kddh = dynamicObject.getString("tqq9_kddh");//快递单号
|
|
DynamicObject tqq9_sskf = dynamicObject.getDynamicObject("tqq9_sskf");//所属客服
|
|
DynamicObject operator = dynamicObject.getDynamicObject("operator");//所属客服
|
|
DynamicObject customer = dynamicObject.getDynamicObject("customer");//订货客户
|
|
model.setValue("tqq9_xsddh", mainbillnumber);//对应销售订单号
|
|
model.setValue("tqq9_dpdh", tqq9_kddh);//DP单号
|
|
model.setValue("tqq9_sskf", tqq9_sskf);//所属客服
|
|
model.setValue("tqq9_ssxs", operator);//所属销售
|
|
model.setValue("tqq9_kufptt", customer);//客户发票抬头
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
/**点击对应销售订单号跳转
|
|
*
|
|
*/
|
|
@Override
|
|
public void click(EventObject evt) {
|
|
super.click(evt);
|
|
Control source = (Control) evt.getSource();
|
|
if (StringUtils.equals("tqq9_xsddh", source.getKey())) {
|
|
String tqq9_xsddh = (String) this.getModel().getValue("tqq9_xsddh");
|
|
DynamicObject sm_salorder = BusinessDataServiceHelper.loadSingle("sm_salorder", new QFilter[]{new QFilter("billno", QCP.equals, tqq9_xsddh)});
|
|
Long id = sm_salorder.getLong("id");
|
|
if (id != null) {
|
|
BillShowParameter formshowParameter = new BillShowParameter();
|
|
formshowParameter.setFormId("sm_salorder");
|
|
formshowParameter.getOpenStyle().setInlineStyleCss(new StyleCss());
|
|
formshowParameter.setPkId(id);
|
|
formshowParameter.getOpenStyle().setShowType(ShowType.Modal);
|
|
formshowParameter.setStatus(OperationStatus.VIEW);
|
|
this.getView().showForm(formshowParameter);
|
|
}
|
|
}
|
|
|
|
}
|
|
} |