1.日志接口,返利规则,入库调整,退货补货调整

This commit is contained in:
龚豆豆 2025-11-03 18:21:37 +08:00
parent d463687681
commit f44baa86d1
4 changed files with 87 additions and 77 deletions

View File

@ -7,15 +7,18 @@ import kd.bos.entity.operate.result.IOperateInfo;
import kd.bos.entity.operate.result.OperationResult;
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.bos.servicehelper.coderule.CodeRuleServiceHelper;
import kd.bos.servicehelper.operation.OperationServiceHelper;
import kd.bos.servicehelper.user.UserServiceHelper;
import tqq9.lc123.cloud.app.eip.iscb.LCLogService;
import java.util.Date;
import java.util.List;
public class LCLogServiceImpl implements LCLogService {
public class LCLogServiceImpl implements LCLogService {
private static Log logger = LogFactory.getLog(LCLogServiceImpl.class);
@Override
@ -54,7 +57,9 @@ import java.util.List;
// 获取根据编码规则得到的编码字符串
String number = CodeRuleServiceHelper.getNumber(codeRule, apiLog);
apiLog.set("number", number);
long currentUserId = UserServiceHelper.getCurrentUserId();
DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)});
apiLog.set("creator", user);
OperateOption option = OperateOption.create();
OperationResult saveResult = OperationServiceHelper
.executeOperate("save", "tqq9_thirdinterfacelogs", new DynamicObject[]{apiLog}, option);

View File

@ -51,7 +51,9 @@ public class GetGoodsByMaterialBillPlugin extends AbstractBillPlugIn {
Date expirydate = (Date) this.getModel().getValue("expirydate", rowIndex);
if(material != null){
DynamicObject[] goodsArr = BaseDataMatchUtils.materialMatchGoods(material.getString("number"), lotnumber, producedate, expirydate, false);
this.getModel().setValue("tqq9_goods", goodsArr[0], rowIndex);
if (goodsArr!=null&&goodsArr.length>0) {
this.getModel().setValue("tqq9_goods", goodsArr[0], rowIndex);
}
}
}

View File

@ -50,13 +50,13 @@ public class PurOrderPushPurRefundConverPlugin extends AbstractConvertPlugIn imp
"billentry.amount,billentry.curamount,billentry.taxamount,billentry.curtaxamount," +
"billentry.discountamount,billentry.amountandtax,billentry.curamountandtax,billentry.returnqty," +
"billentry.returnbaseqty,billentry.tqq9_yyhyflje,billentry.tqq9_yyhwflje,billentry.lotnumber," +
"billentry.tqq9_goods,billentry.tqq9_wmsdetailid,billentry.producedate,billentry.expirydate,creator,createtime,modifier,modifytime,billentry.owner", new QFilter[]{new QFilter("billentry.mainbillnumber", QCP.equals, mainbillnumber).and("billstatus",QCP.equals,"C")});
"billentry.tqq9_goods,billentry.tqq9_wmsdetailid,billentry.producedate,billentry.expirydate,creator,createtime,modifier,modifytime,billentry.owner", new QFilter[]{new QFilter("billentry.mainbillnumber", QCP.equals, mainbillnumber).and("billstatus", QCP.equals, "C")});
}
BigDecimal zero = BigDecimal.ZERO;
dynamicObjectCollection.clear();
if(im_purinblil!=null){
if (im_purinblil != null) {
for (DynamicObject dynamicObject : im_purinblil) {
DynamicObjectCollection billentry = dynamicObject.getDynamicObjectCollection("billentry");
String billid = dynamicObject.getString("id");
@ -66,7 +66,7 @@ public class PurOrderPushPurRefundConverPlugin extends AbstractConvertPlugIn imp
DynamicObject masterid = material.getDynamicObject("masterid");//物料信息
//物料采购信息
DynamicObject bd_materialpurchaseinfo = BusinessDataServiceHelper.loadSingle("bd_materialpurchaseinfo", new QFilter[]{new QFilter("masterid", QCP.equals, masterid.getLong("id"))});
masterid = BusinessDataServiceHelper.loadSingle("bd_material", new QFilter[]{new QFilter("id", QCP.equals, masterid.getLong("id"))});
masterid = BusinessDataServiceHelper.loadSingle("bd_material", new QFilter[]{new QFilter("id", QCP.equals, masterid.getLong("id"))});
String materialname = bd_materialpurchaseinfo.getString("masterid.name");//物料名称
DynamicObject baseunit = masterid.getDynamicObject("baseunit");//计量单位
DynamicObject entryreqorg = object.getDynamicObject("entryreqorg");//需求组织
@ -109,84 +109,86 @@ public class PurOrderPushPurRefundConverPlugin extends AbstractConvertPlugIn imp
BigDecimal tqq9_yyhyflje = object.getBigDecimal("tqq9_yyhyflje");//有优惠有返利含税单价
BigDecimal tqq9_yyhwflje = object.getBigDecimal("tqq9_yyhwflje");//有优惠无返利含税单价
String lotnumber = object.getString("lotnumber");//批号
DynamicObject bd_lot = BusinessDataServiceHelper.loadSingle("bd_lot", new QFilter[]{new QFilter("number", QCP.equals, lotnumber)});
DynamicObject tqq9_goods = object.getDynamicObject("tqq9_goods");//商品
String tqq9_wmsdetailid = object.getString("tqq9_wmsdetailid");//WMS分录id
Date producedate = object.getDate("producedate");//生产日期
Date expirydate = object.getDate("expirydate");//生产日期
DynamicObject dynamicObject1 = dynamicObjectCollection.addNew();
dynamicObject1.set("material",bd_materialpurchaseinfo);
dynamicObject1.set("materialname",materialname);
dynamicObject1.set("unit",baseunit);
dynamicObject1.set("baseunit",baseunit);
dynamicObject1.set("rowclosestatus","A");
dynamicObject1.set("rowterminatestatus","A");
dynamicObject1.set("entryreqorg","A");
dynamicObject1.set("entryreqorg",entryreqorg);
dynamicObject1.set("entryinvcorg",entryreqorg);
dynamicObject1.set("entrysettleorg",entryreqorg);
dynamicObject1.set("taxrateid",taxrateid);
dynamicObject1.set("discounttype",discounttype);
dynamicObject1.set("entrypayorg",entryreqorg);
dynamicObject1.set("mainbillentity",mainbillentity);
dynamicObject1.set("mainbillid",mainbillid);
dynamicObject1.set("mainbillnumber",mainbillnumber);
dynamicObject1.set("mainbillentryid",mainbillentryid);
dynamicObject1.set("mainbillentryseq",mainbillentryseq);
dynamicObject1.set("srcbillentity",mainbillentity);
dynamicObject1.set("srcbillid",mainbillid);
dynamicObject1.set("srcbillnumber",mainbillnumber);
dynamicObject1.set("srcbillentryid",mainbillentryid);
dynamicObject1.set("srcbillentryseq",mainbillentryseq);
dynamicObject1.set("entrycreator",creator);
dynamicObject1.set("entrycreatetime",createtime);
dynamicObject1.set("entrymodifier",modifier);
dynamicObject1.set("entrymodifytime",modifytime);
dynamicObject1.set("linetype",linetype);
dynamicObject1.set("tqq9_registration",tqq9_registration);
dynamicObject1.set("tqq9_licenseno",tqq9_licenseno);
dynamicObject1.set("tqq9_brand",tqq9_brand);
dynamicObject1.set("tqq9_thck",warehouse);
dynamicObject1.set("tqq9_kclx","ZP");
dynamicObject1.set("tqq9_maxqty",qty);
dynamicObject1.set("qty",qty);
dynamicObject1.set("baseqty",qty);
dynamicObject1.set("ispresent",ispresent);
dynamicObject1.set("ownertype",ownertype);
dynamicObject1.set("owner",owner);
dynamicObject1.set("materialversion",version);
dynamicObject1.set("auxunit",unit2nd);
dynamicObject1.set("auxqty",qtyunit2nd);
dynamicObject1.set("auxpty",auxpty);
dynamicObject1.set("discountrate",discountrate);
dynamicObject1.set("price",price);
dynamicObject1.set("priceandtax",priceandtax);
dynamicObject1.set("amount",amount);
dynamicObject1.set("curamount",curamount);
dynamicObject1.set("taxamount",taxamount);
dynamicObject1.set("curtaxamount",curtaxamount);
dynamicObject1.set("discountamount",discountamount);
dynamicObject1.set("amountandtax",amountandtax);
dynamicObject1.set("curamountandtax",curamountandtax);
dynamicObject1.set("joinqty",zero);
dynamicObject1.set("joinbaseqty",zero);
dynamicObject1.set("returnqty",returnqty);
dynamicObject1.set("returnbaseqty",returnbaseqty);
dynamicObject1.set("tqq9_yyhyflje",tqq9_yyhyflje);
dynamicObject1.set("tqq9_yyhwflje",tqq9_yyhwflje);
dynamicObject1.set("tqq9_ph",lotnumber);
dynamicObject1.set("tqq9_goods",tqq9_goods);
dynamicObject1.set("tqq9_inwarebill",dynamicObject);
dynamicObject1.set("tqq9_inwarebillid",billid);
dynamicObject1.set("tqq9_inwarebillentryid",billentryid);
dynamicObject1.set("tqq9_inwarebillentryqty",qty);
dynamicObject1.set("tqq9_wmsdetailid",tqq9_wmsdetailid);
dynamicObject1.set("tqq9_productdate",producedate);
dynamicObject1.set("tqq9_expiredate",expirydate);
if (qty.compareTo(BigDecimal.ZERO) > 0) {
DynamicObject dynamicObject1 = dynamicObjectCollection.addNew();
dynamicObject1.set("material", bd_materialpurchaseinfo);
dynamicObject1.set("materialname", materialname);
dynamicObject1.set("unit", baseunit);
dynamicObject1.set("baseunit", baseunit);
dynamicObject1.set("rowclosestatus", "A");
dynamicObject1.set("rowterminatestatus", "A");
dynamicObject1.set("entryreqorg", "A");
dynamicObject1.set("entryreqorg", entryreqorg);
dynamicObject1.set("entryinvcorg", entryreqorg);
dynamicObject1.set("entrysettleorg", entryreqorg);
dynamicObject1.set("taxrateid", taxrateid);
dynamicObject1.set("discounttype", discounttype);
dynamicObject1.set("entrypayorg", entryreqorg);
dynamicObject1.set("mainbillentity", mainbillentity);
dynamicObject1.set("mainbillid", mainbillid);
dynamicObject1.set("mainbillnumber", mainbillnumber);
dynamicObject1.set("mainbillentryid", mainbillentryid);
dynamicObject1.set("mainbillentryseq", mainbillentryseq);
dynamicObject1.set("srcbillentity", mainbillentity);
dynamicObject1.set("srcbillid", mainbillid);
dynamicObject1.set("srcbillnumber", mainbillnumber);
dynamicObject1.set("srcbillentryid", mainbillentryid);
dynamicObject1.set("srcbillentryseq", mainbillentryseq);
dynamicObject1.set("entrycreator", creator);
dynamicObject1.set("entrycreatetime", createtime);
dynamicObject1.set("entrymodifier", modifier);
dynamicObject1.set("entrymodifytime", modifytime);
dynamicObject1.set("linetype", linetype);
dynamicObject1.set("tqq9_registration", tqq9_registration);
dynamicObject1.set("tqq9_licenseno", tqq9_licenseno);
dynamicObject1.set("tqq9_brand", tqq9_brand);
dynamicObject1.set("tqq9_thck", warehouse);
dynamicObject1.set("tqq9_kclx", "ZP");
dynamicObject1.set("tqq9_maxqty", qty);
dynamicObject1.set("qty", qty);
dynamicObject1.set("baseqty", qty);
dynamicObject1.set("ispresent", ispresent);
dynamicObject1.set("ownertype", ownertype);
dynamicObject1.set("owner", owner);
dynamicObject1.set("materialversion", version);
dynamicObject1.set("auxunit", unit2nd);
dynamicObject1.set("auxqty", qtyunit2nd);
dynamicObject1.set("auxpty", auxpty);
dynamicObject1.set("discountrate", discountrate);
dynamicObject1.set("price", price);
dynamicObject1.set("priceandtax", priceandtax);
dynamicObject1.set("amount", amount);
dynamicObject1.set("curamount", curamount);
dynamicObject1.set("taxamount", taxamount);
dynamicObject1.set("curtaxamount", curtaxamount);
dynamicObject1.set("discountamount", discountamount);
dynamicObject1.set("amountandtax", amountandtax);
dynamicObject1.set("curamountandtax", curamountandtax);
dynamicObject1.set("joinqty", zero);
dynamicObject1.set("joinbaseqty", zero);
dynamicObject1.set("returnqty", returnqty);
dynamicObject1.set("returnbaseqty", returnbaseqty);
dynamicObject1.set("tqq9_yyhyflje", tqq9_yyhyflje);
dynamicObject1.set("tqq9_yyhwflje", tqq9_yyhwflje);
dynamicObject1.set("tqq9_ph", bd_lot);
dynamicObject1.set("tqq9_goods", tqq9_goods);
dynamicObject1.set("tqq9_inwarebill", dynamicObject);
dynamicObject1.set("tqq9_inwarebillid", billid);
dynamicObject1.set("tqq9_inwarebillentryid", billentryid);
dynamicObject1.set("tqq9_inwarebillentryqty", qty);
dynamicObject1.set("tqq9_wmsdetailid", tqq9_wmsdetailid);
dynamicObject1.set("tqq9_productdate", producedate);
dynamicObject1.set("tqq9_expiredate", expirydate);
}
}
}
}

View File

@ -75,6 +75,7 @@ public class ReturnStockSyncNotifierPlugin extends AbstractOperationServicePlugI
}
}
String rule = BotpParamUtils.getBotpRuleId(PURORDER, RECEIPTNOTICE, "采购订单_收货通知单_转换规则_扩展");
PushArgs pushArgs = BotpParamUtils.getPushArgs(PURORDER, RECEIPTNOTICE, PURORDER_ENTRY, param, entitypkMap, RULE);
ConvertOperationResult pushResult = ConvertServiceHelper.pushAndSave(pushArgs);
List<SourceBillReport> billReports = pushResult.getBillReports();