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

125 lines
6.1 KiB
Java

package tqq9.lc123.cloud.app.plugin.form.pm;
import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.entity.operate.result.OperationResult;
import kd.bos.form.events.AfterDoOperationEventArgs;
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.EventObject;
/**
* 采购订单关闭推送返利系统
*/
public class PurOrderCloseBillPlugin extends AbstractBillPlugIn implements Plugin {
private final static Log logger = LogFactory.getLog(PurOrderCloseBillPlugin.class);
private static String URL;
private static String FLXT_TOKEN;
@Override
public void registerListener(EventObject e) {
super.registerListener(e);
this.addItemClickListeners("tbmain");
}
static {
DynamicObject url = BusinessDataServiceHelper.loadSingle("tqq9_thirdconfig", "name",
new QFilter[]{new QFilter("number", QCP.equals, "FLXT_Undeduct_Url")});
URL = url != null ? url.getString("name") : null;
DynamicObject token = BusinessDataServiceHelper.loadSingle("tqq9_thirdconfig", "name",
new QFilter[]{new QFilter("number", QCP.equals, "FLXT_TOKEN")});
FLXT_TOKEN = token != null ? token.getString("name") : null;
}
// @Override
// public void itemClick(ItemClickEvent evt) {
// super.itemClick(evt);
// String itemKey = evt.getItemKey();
// DynamicObject dataEntity = this.getModel().getDataEntity();
// Boolean tqq9_isrebatecalculate = dataEntity.getBoolean("tqq9_isrebatecalculate");//是否使用返利
// if (StringUtils.equals("close", itemKey)&& tqq9_isrebatecalculate) {
// ConfirmCallBackListener confirmCallBacks = new ConfirmCallBackListener("isrebate", this);
// // 设置回调提示
// String confirmTip = "关闭时是否释放返利金额";
// this.getView().showConfirm(confirmTip, MessageBoxOptions.OKCancel, ConfirmTypes.Default, confirmCallBacks);
// }
//
// }
@Override
public void afterDoOperation(AfterDoOperationEventArgs afterDoOperationEventArgs) {
super.afterDoOperation(afterDoOperationEventArgs);
String operateKey = afterDoOperationEventArgs.getOperateKey();
OperationResult operationResult = afterDoOperationEventArgs.getOperationResult();
if(StringUtils.equals("bizclose",operateKey)&&operationResult.isSuccess()){
// afterDoOperationEventArgs.getSource()
}
}
// @Override
// public void confirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
// // 回调标识正确,并且点击了确认
// if (StringUtils.equals(messageBoxClosedEvent.getCallBackId(), "isrebate") && messageBoxClosedEvent.getResult() == MessageBoxResult.Yes) {
// DynamicObject dataEntity = this.getModel().getDataEntity();
// // todo 在此添加业务逻辑
// BigDecimal tqq9_hshfsyje = dataEntity.getBigDecimal("tqq9_hshfsyje");//含税货返使用金额
// BigDecimal tqq9_hsxfsyje = dataEntity.getBigDecimal("tqq9_hsxfsyje");//含税现返使用金额
// String tqq9_hfid = dataEntity.getString("tqq9_hfid");//货返id
// String tqq9_xfid = dataEntity.getString("tqq9_xfid");//现返id
// String billno = dataEntity.getString("tqqbillno9_xfid");//单据编号
// BigDecimal oneHundred = new BigDecimal(100);
// HashMap<String, String> tokenMap = new HashMap<String, String>();
// tokenMap.put("Authorization", FLXT_TOKEN);
//
// if (tqq9_hshfsyje.compareTo(BigDecimal.ZERO) > 0) {
// BigDecimal notaxamount = tqq9_hshfsyje.multiply(oneHundred.divide(oneHundred.add(new BigDecimal(13)), 10, RoundingMode.HALF_UP)).setScale(2, RoundingMode.HALF_UP);
// BigDecimal taxamount = tqq9_hshfsyje.subtract(notaxamount);//税额
// JSONObject bodyMap = new JSONObject();
// bodyMap.put("id", tqq9_hfid);
// bodyMap.put("lockMoney", tqq9_hshfsyje);
// bodyMap.put("lockTaxAmount", taxamount);
// Gson gson = new Gson();
// try {
// String bodyString = HttpRequestUtils.postJson(URL ,bodyMap.toString(), tokenMap);
// HashMap map = gson.fromJson(bodyString, HashMap.class);
// Boolean data = (Boolean) map.get("data");
// if (!data) {
// this.getView().showErrorNotification("采购订单:" + billno + ",释放返利金额成功");
// }
// } catch (IOException ex) {
// throw new RuntimeException(ex);
// }
// //现返审核
// } else if (tqq9_hsxfsyje.compareTo(BigDecimal.ZERO) > 0) {
// BigDecimal notaxamount = tqq9_hsxfsyje.multiply(oneHundred.divide(oneHundred.add(new BigDecimal(13)), 10, RoundingMode.HALF_UP)).setScale(2, RoundingMode.HALF_UP);
// BigDecimal taxamount = tqq9_hsxfsyje.subtract(notaxamount);//税额
// JSONObject bodyMap = new JSONObject();
// bodyMap.put("id", tqq9_xfid);
// bodyMap.put("lockMoney", tqq9_hsxfsyje);
// bodyMap.put("lockTaxAmount", taxamount);
// Gson gson = new Gson();
// try {
// String bodyString = HttpRequestUtils.postJson(URL, bodyMap.toString(), tokenMap);
// HashMap map = gson.fromJson(bodyString, HashMap.class);
// Boolean data = (Boolean) map.get("data");
// if (!data) {
// this.getView().showErrorNotification("采购订单:" + billno + ",释放返利金额成功");
// }
// } catch (IOException ex) {
// throw new RuntimeException(ex);
// }
// }
//// this.getView().showSuccessNotification("confirm call back success");
// }
//
//
// }
}