parent
903b495259
commit
b6f0bd3a84
|
|
@ -97,8 +97,8 @@ public class ScheduleListPlugin extends AbstractListPlugin {
|
||||||
if (null!= bill.getDynamicObject("creator")) {
|
if (null!= bill.getDynamicObject("creator")) {
|
||||||
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
||||||
}
|
}
|
||||||
//jsonObject.put("cname", cname);//创建人,工号
|
jsonObject.put("cname", cname);//创建人,工号
|
||||||
jsonObject.put("cname", "GH001657");//todo:创建人,工号
|
// jsonObject.put("cname", "GH001657");//创建人,工号
|
||||||
jsonObject.put("zjddjid", "" + bill.getPkValue());
|
jsonObject.put("zjddjid", "" + bill.getPkValue());
|
||||||
jsonObject.put("zjddjbh", bill.getString("billno"));
|
jsonObject.put("zjddjbh", bill.getString("billno"));
|
||||||
IT_INPUT.add(jsonObject);
|
IT_INPUT.add(jsonObject);
|
||||||
|
|
|
||||||
|
|
@ -52,8 +52,8 @@ public class PayApplyDeleteOperation extends AbstractOperationServicePlugIn impl
|
||||||
if (null!= bill.getDynamicObject("creator")) {
|
if (null!= bill.getDynamicObject("creator")) {
|
||||||
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
||||||
}
|
}
|
||||||
// jsonObject.put("cname", cname);//创建人,工号
|
jsonObject.put("cname", cname);//创建人,工号
|
||||||
jsonObject.put("cname", "GH001657");//todo:创建人,工号
|
// jsonObject.put("cname", "GH001657");//创建人,工号
|
||||||
jsonObject.put("zjddjid", ""+bill.getPkValue());//金蝶单据ID
|
jsonObject.put("zjddjid", ""+bill.getPkValue());//金蝶单据ID
|
||||||
jsonObject.put("zjddjbh", bill.getString("billno"));//金蝶单据编号
|
jsonObject.put("zjddjbh", bill.getString("billno"));//金蝶单据编号
|
||||||
IT_INPUT.add(jsonObject);
|
IT_INPUT.add(jsonObject);
|
||||||
|
|
|
||||||
|
|
@ -60,8 +60,8 @@ public class PayApplySaveOperation extends AbstractOperationServicePlugIn implem
|
||||||
if (null!= bill.getDynamicObject("creator")) {
|
if (null!= bill.getDynamicObject("creator")) {
|
||||||
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
||||||
}
|
}
|
||||||
// jsonObject.put("cname", cname);//todo:创建人,工号
|
jsonObject.put("cname", cname);//创建人,工号
|
||||||
jsonObject.put("CNAME", "GH001657");//todo:创建人,工号
|
// jsonObject.put("CNAME", "GH001657");//创建人,工号
|
||||||
jsonObject.put("ZJDDJID", ""+bill.getPkValue());//金蝶单据ID
|
jsonObject.put("ZJDDJID", ""+bill.getPkValue());//金蝶单据ID
|
||||||
jsonObject.put("ZJDDJBH", bill.getString("billno"));//金蝶单据编号
|
jsonObject.put("ZJDDJBH", bill.getString("billno"));//金蝶单据编号
|
||||||
IT_INPUT.add(jsonObject);
|
IT_INPUT.add(jsonObject);
|
||||||
|
|
|
||||||
|
|
@ -208,7 +208,7 @@ public class PaybillPushSapOperation extends AbstractOperationServicePlugIn impl
|
||||||
// 进行空值检查
|
// 进行空值检查
|
||||||
if (debitlocal != null && creditlocal != null && entrydc != null) {
|
if (debitlocal != null && creditlocal != null && entrydc != null) {
|
||||||
BigDecimal amountToPut = BigDecimal.ZERO;
|
BigDecimal amountToPut = BigDecimal.ZERO;
|
||||||
// todo:获取分录方向 若A,只拿一方,当前拿的借方
|
// 获取分录方向 若A,只拿一方,当前拿的借方
|
||||||
boolean isSourceSystemA = "A".equals(shjhSourcesystem);
|
boolean isSourceSystemA = "A".equals(shjhSourcesystem);
|
||||||
boolean isEntryDC1 = "1".equals(entrydc);
|
boolean isEntryDC1 = "1".equals(entrydc);
|
||||||
boolean isEntryDCNegative1 = "-1".equals(entrydc);
|
boolean isEntryDCNegative1 = "-1".equals(entrydc);
|
||||||
|
|
@ -386,7 +386,7 @@ public class PaybillPushSapOperation extends AbstractOperationServicePlugIn impl
|
||||||
// HKONT = shjhSapkjkm.getString("number");//SAP会计科目
|
// HKONT = shjhSapkjkm.getString("number");//SAP会计科目
|
||||||
// }
|
// }
|
||||||
// jsonObject.put("HKONT", HKONT);//总账科目
|
// jsonObject.put("HKONT", HKONT);//总账科目
|
||||||
// jsonObject.put("UMSKZ", "");//todo:特殊总账标识
|
// jsonObject.put("UMSKZ", "");//特殊总账标识
|
||||||
// jsonObject.put("DMBTR", entr.getBigDecimal("e_actamt"));//未清金额_实收金额
|
// jsonObject.put("DMBTR", entr.getBigDecimal("e_actamt"));//未清金额_实收金额
|
||||||
// IT_CLEAR.add(jsonObject);
|
// IT_CLEAR.add(jsonObject);
|
||||||
// }
|
// }
|
||||||
|
|
|
||||||
|
|
@ -77,8 +77,8 @@ public class PayrequestBillOperation extends AbstractOperationServicePlugIn impl
|
||||||
if (null!= bill.getDynamicObject("creator")) {
|
if (null!= bill.getDynamicObject("creator")) {
|
||||||
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
cname = bill.getDynamicObject("creator").getString("number");//创建人,工号_申请人
|
||||||
}
|
}
|
||||||
// jsonObject.put("cname", cname);//创建人,工号
|
jsonObject.put("cname", cname);//创建人,工号
|
||||||
jsonObject.put("cname", "GH001657");//todo:创建人,工号
|
// jsonObject.put("cname", "GH001657");//创建人,工号
|
||||||
jsonObject.put("zjddjid", ""+bill.getPkValue());//金蝶单据ID
|
jsonObject.put("zjddjid", ""+bill.getPkValue());//金蝶单据ID
|
||||||
jsonObject.put("zjddjbh", bill.getString("billno"));//金蝶单据编号
|
jsonObject.put("zjddjbh", bill.getString("billno"));//金蝶单据编号
|
||||||
IT_INPUT.add(jsonObject);
|
IT_INPUT.add(jsonObject);
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,66 @@
|
||||||
|
package shjh.jhzj7.fi.fi.plugin.task;
|
||||||
|
|
||||||
|
import kd.bos.context.RequestContext;
|
||||||
|
import kd.bos.dataentity.OperateOption;
|
||||||
|
import kd.bos.dataentity.entity.DynamicObject;
|
||||||
|
import kd.bos.entity.operate.OperateOptionConst;
|
||||||
|
import kd.bos.entity.operate.result.OperationResult;
|
||||||
|
import kd.bos.exception.KDException;
|
||||||
|
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.schedule.executor.AbstractTask;
|
||||||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
import kd.bos.servicehelper.operation.OperationServiceHelper;
|
||||||
|
import kd.sdk.plugin.Plugin;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 定时任务 付款申请定时生成付款单
|
||||||
|
* @author LiGuiQiang
|
||||||
|
*/
|
||||||
|
public class PayApplyFukuanTask extends AbstractTask implements Plugin {
|
||||||
|
|
||||||
|
private static final String AP_PAYAPPLY ="ap_payapply";// 付款申请单
|
||||||
|
private static final String CAS_PAYBILL ="cas_paybill";// 付款单
|
||||||
|
private static final Log logger = LogFactory.getLog(PayApplyFukuanTask.class);
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {
|
||||||
|
// 【单据状态】=已审核
|
||||||
|
QFilter qFilter = new QFilter("status", QCP.equals, "C");
|
||||||
|
|
||||||
|
DynamicObject[] collection = BusinessDataServiceHelper.load(AP_PAYAPPLY, "id", qFilter.toArray());
|
||||||
|
if (collection.length!=0){
|
||||||
|
ArrayList<Long> ids = new ArrayList<>();
|
||||||
|
for (DynamicObject dynamicObject : collection) {
|
||||||
|
ids.add(dynamicObject.getLong("id"));
|
||||||
|
}
|
||||||
|
Map<Object, DynamicObject> recBillMap = BusinessDataServiceHelper.loadFromCache(ids.toArray(), AP_PAYAPPLY);
|
||||||
|
OperateOption operateOption = OperateOption.create();
|
||||||
|
// 不执行警告级别校验器
|
||||||
|
operateOption.setVariableValue(OperateOptionConst.IGNOREWARN, String.valueOf(true));
|
||||||
|
// 不显示交互提示,自动执行到底
|
||||||
|
operateOption.setVariableValue(OperateOptionConst.IGNOREINTERACTION, String.valueOf(true));
|
||||||
|
// 全部校验通过才保存
|
||||||
|
operateOption.setVariableValue(OperateOptionConst.STRICTVALIDATION, String.valueOf(true));
|
||||||
|
//同一个用户在多个界面操作同一张,也不允许操作
|
||||||
|
operateOption.setVariableValue(OperateOptionConst.MUTEX_ISSTRICT, String.valueOf(true));
|
||||||
|
for (DynamicObject dynamicObject : recBillMap.values()) {
|
||||||
|
// 注意:executeOperate 需要一个数组形式的 DynamicObject[]
|
||||||
|
DynamicObject[] billArray = new DynamicObject[]{dynamicObject};
|
||||||
|
OperationResult operationResult = OperationServiceHelper.executeOperate("pay", AP_PAYAPPLY, billArray, operateOption);
|
||||||
|
// 可以根据需要处理 operationResult,例如检查是否成功、获取返回值等
|
||||||
|
if (operationResult.isSuccess()) {
|
||||||
|
logger.info("执行 pay 成功,单据编号:" + dynamicObject.getPkValue());
|
||||||
|
} else {
|
||||||
|
logger.error(operationResult.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -152,8 +152,8 @@ public class QuerySapCreatePayApplyTask extends AbstractTask {
|
||||||
shjh_payeebanknum = lifnr;
|
shjh_payeebanknum = lifnr;
|
||||||
}
|
}
|
||||||
String assacct = it_list.getString("BVTYP");//合作银行类型
|
String assacct = it_list.getString("BVTYP");//合作银行类型
|
||||||
//todo:原因码
|
//原因码
|
||||||
String reasoncode = "014";
|
String reasoncode =it_list.getString("RSTGR");
|
||||||
//todo:资金计划分类
|
//todo:资金计划分类
|
||||||
String zreqDept = it_list.getString("ZREQ_DEPT");//二级部门
|
String zreqDept = it_list.getString("ZREQ_DEPT");//二级部门
|
||||||
String procurementeam = it_list.getString("EKGRP");//采购组
|
String procurementeam = it_list.getString("EKGRP");//采购组
|
||||||
|
|
@ -285,7 +285,13 @@ public class QuerySapCreatePayApplyTask extends AbstractTask {
|
||||||
//表头申请金额
|
//表头申请金额
|
||||||
ap_payapply.set("applyamount", amount);
|
ap_payapply.set("applyamount", amount);
|
||||||
|
|
||||||
//todo:结算方式
|
String zlsch = it_list.getString("ZLSCH");//付款方式
|
||||||
|
// 结算方式(付款方式)
|
||||||
|
DynamicObject settlementtype = BusinessDataServiceHelper.loadSingle("bd_settlementtype",
|
||||||
|
new QFilter[]{new QFilter("number", QCP.equals, zlsch)});
|
||||||
|
if (null != settlementtype) {
|
||||||
|
ap_payapply_entry.set("e_settlementtype", settlementtype);
|
||||||
|
}
|
||||||
|
|
||||||
//付款类型:取值范围:对公付款、对私付款;SAP:科目编号1221020200 对私付款。费控:劳务人员报销单 对私付款。其他均赋值为对公付款。
|
//付款类型:取值范围:对公付款、对私付款;SAP:科目编号1221020200 对私付款。费控:劳务人员报销单 对私付款。其他均赋值为对公付款。
|
||||||
if ("1221020200".equals(accountingsubject)) {
|
if ("1221020200".equals(accountingsubject)) {
|
||||||
|
|
@ -371,7 +377,6 @@ public class QuerySapCreatePayApplyTask extends AbstractTask {
|
||||||
DynamicObject cause = BusinessDataServiceHelper.loadSingle(GL_CASHFLOWITEM, new QFilter[]{Q11});
|
DynamicObject cause = BusinessDataServiceHelper.loadSingle(GL_CASHFLOWITEM, new QFilter[]{Q11});
|
||||||
ap_payapply.set("shjh_yym", cause);
|
ap_payapply.set("shjh_yym", cause);
|
||||||
}
|
}
|
||||||
//todo:汇率日期,支付渠道 文档20-36(7.1.3)
|
|
||||||
//过账日期(记账)
|
//过账日期(记账)
|
||||||
ap_payapply.set("shjh_bookkeepingdate", BUDATs);
|
ap_payapply.set("shjh_bookkeepingdate", BUDATs);
|
||||||
//凭证日期
|
//凭证日期
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue