146 lines
7.1 KiB
Java
146 lines
7.1 KiB
Java
package tqq9.lc123.cloud.app.plugin.form.conm;
|
|
|
|
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.entity.datamodel.IDataModel;
|
|
import kd.bos.entity.datamodel.ListSelectedRow;
|
|
import kd.bos.entity.datamodel.ListSelectedRowCollection;
|
|
import kd.bos.form.CloseCallBack;
|
|
import kd.bos.form.FormShowParameter;
|
|
import kd.bos.form.IFormView;
|
|
import kd.bos.form.ShowType;
|
|
import kd.bos.form.control.events.BeforeItemClickEvent;
|
|
import kd.bos.form.control.events.ItemClickEvent;
|
|
import kd.bos.form.events.ClosedCallBackEvent;
|
|
import kd.bos.form.plugin.AbstractFormPlugin;
|
|
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.math.BigDecimal;
|
|
import java.util.Date;
|
|
import java.util.EventObject;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* 采购合同表单插件
|
|
* 点击按钮新增返利规则
|
|
*/
|
|
public class purconmAddRebateRulesPlugin extends AbstractFormPlugin implements Plugin {
|
|
private final static Log logger = LogFactory.getLog(purconmAddRebateRulesPlugin.class);
|
|
|
|
|
|
@Override
|
|
public void registerListener(EventObject e) {
|
|
super.registerListener(e);
|
|
this.addItemClickListeners("tbmain");
|
|
this.addItemClickListeners("tqq9_rebatetoolbarap");
|
|
}
|
|
|
|
|
|
@Override
|
|
public void itemClick(ItemClickEvent evt) {
|
|
super.itemClick(evt);
|
|
String itemKey = evt.getItemKey();
|
|
if ("tqq9_pur_rebate".equals(itemKey)) {
|
|
BillShowParameter param = new BillShowParameter();
|
|
param.setFormId("tqq9_pur_rebate");
|
|
param.setCustomParam("purcontract_billno", this.getModel().getValue("billno"));
|
|
param.setCustomParam("purcontract_supplier", this.getModel().getValue("supplier"));
|
|
param.setCloseCallBack(new CloseCallBack(this, "rebateSync"));
|
|
param.getOpenStyle().setShowType(ShowType.Modal);
|
|
this.getView().showForm(param);
|
|
} else if (StringUtils.equals("tqq9_rebate_addrow", itemKey)) {
|
|
BillShowParameter param = new BillShowParameter();
|
|
param.setFormId("tqq9_pur_rebate");
|
|
param.setCustomParam("purcontract_billno", this.getModel().getValue("billno"));
|
|
param.setCustomParam("purcontract_supplier", (DynamicObject)this.getModel().getValue("supplier"));
|
|
param.setCloseCallBack(new CloseCallBack(this, "entry_rebateSync"));
|
|
param.getOpenStyle().setShowType(ShowType.Modal);
|
|
this.getView().showForm(param);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* 点击增行分录返回值
|
|
*
|
|
* @param closedCallBackEvent
|
|
*/
|
|
@Override
|
|
public void closedCallBack(ClosedCallBackEvent closedCallBackEvent) {
|
|
super.closedCallBack(closedCallBackEvent);
|
|
IDataModel model = this.getModel();
|
|
IFormView view = this.getView();
|
|
String actionId = closedCallBackEvent.getActionId();
|
|
Object returnData = closedCallBackEvent.getReturnData();
|
|
if (returnData != null) {
|
|
if ("entry_rebateSync".equals(actionId)) {
|
|
DynamicObjectCollection tqq9_entryentity = this.getModel().getDataEntity(true).getDynamicObjectCollection("tqq9_entryentity");
|
|
int size = tqq9_entryentity.size();
|
|
DynamicObject dynamicObject = (DynamicObject) ((HashMap) returnData).get("tqq9_pur_rebate");
|
|
String name = dynamicObject.getString("name");//规则名称
|
|
DynamicObjectCollection tqq9_rebatebrand = dynamicObject.getDynamicObjectCollection("tqq9_rebatebrand");//品牌
|
|
DynamicObjectCollection tqq9_supplier = dynamicObject.getDynamicObjectCollection("tqq9_supplier");//供应商
|
|
Date tqq9_startdate = dynamicObject.getDate("tqq9_startdate");//返利开始时间
|
|
Date tqq9_enddate = dynamicObject.getDate("tqq9_enddate");//返利结束时间
|
|
String tqq9_status = dynamicObject.getString("tqq9_status");//返利状态
|
|
DynamicObject creator = dynamicObject.getDynamicObject("creator");//创建人
|
|
Date createtime = dynamicObject.getDate("createtime");//创建时间
|
|
Date tqq9_lastdate = dynamicObject.getDate("tqq9_lastdate");//最后一次执行时间
|
|
String tqq9_rebatesub = dynamicObject.getString("tqq9_rebatesub");//返利主体
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
if (StringUtils.equals("A", tqq9_rebatesub)) {
|
|
Boolean tqq9_shanghailici = dynamicObject.getBoolean("tqq9_shanghailici");
|
|
if (tqq9_shanghailici) {
|
|
stringBuilder.append(",").append("上海励齿");
|
|
}
|
|
Boolean tqq9_beijinglichi = dynamicObject.getBoolean("tqq9_beijinglichi");
|
|
if (tqq9_beijinglichi) {
|
|
stringBuilder.append(",").append("北京励齿");
|
|
|
|
}
|
|
Boolean tqq9_guangzhoulici = dynamicObject.getBoolean("tqq9_guangzhoulici");
|
|
if (tqq9_guangzhoulici) {
|
|
stringBuilder.append(",").append("广州励齿");
|
|
}
|
|
} else if (StringUtils.equals("B", tqq9_rebatesub)) {
|
|
BigDecimal tqq9_shlcbl = dynamicObject.getBigDecimal("tqq9_shlcbl");
|
|
if (tqq9_shlcbl.compareTo(BigDecimal.ZERO) == 0) {
|
|
stringBuilder.append(",").append("上海励齿");
|
|
}
|
|
BigDecimal tqq9_bjlcbl = dynamicObject.getBigDecimal("tqq9_bjlcbl");
|
|
if (tqq9_bjlcbl.compareTo(BigDecimal.ZERO) == 0) {
|
|
stringBuilder.append(",").append("北京励齿");
|
|
}
|
|
BigDecimal tqq9_gzlcbl = dynamicObject.getBigDecimal("tqq9_gzlcbl");
|
|
if (tqq9_gzlcbl.compareTo(BigDecimal.ZERO) == 0) {
|
|
stringBuilder.append(",").append("广州励齿");
|
|
}
|
|
}
|
|
|
|
|
|
model.setValue("tqq9_rulename", name, size - 1);//规则名称
|
|
model.setValue("tqq9_company", stringBuilder.substring(1), size - 1);//主体
|
|
model.setValue("tqq9_brand", tqq9_rebatebrand, size - 1);//品牌
|
|
model.setValue("tqq9_supplier", tqq9_supplier, size - 1);//供应商
|
|
model.setValue("tqq9_startdate", tqq9_startdate, size - 1);//返利开始时间
|
|
model.setValue("tqq9_enddate", tqq9_enddate, size - 1);//返利结束时间
|
|
model.setValue("tqq9_status", tqq9_status, size - 1);//返利状态
|
|
model.setValue("tqq9_creatuser", creator, size - 1);//创建人
|
|
model.setValue("tqq9_creatdate", createtime, size - 1);//创建时间
|
|
model.setValue("tqq9_lastdate", tqq9_lastdate, size - 1);//最后一次执行时间
|
|
}
|
|
}
|
|
this.getView().updateView();
|
|
}
|
|
}
|
|
|
|
|