入库金额数量处理

This commit is contained in:
sez 2025-11-20 17:43:33 +08:00
parent 5ae04ce266
commit 1b4f729ef2
4 changed files with 83 additions and 2 deletions

View File

@ -106,8 +106,14 @@ public class OtherInApplyPushOtherInConvertPlugin extends AbstractConvertPlugIn
DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)}); DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)});
DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)}); DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)});
DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)}); DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)});
BigDecimal price = entry.getBigDecimal("price");//不含税单价
BigDecimal amount = price.multiply(quantity);//金额
// 处理第一次逻辑 // 处理第一次逻辑
if (i == 0) { if (i == 0) {
entry.set("amount",amount);
// 第一次直接赋值 // 第一次直接赋值
entry.set("qty", quantity); entry.set("qty", quantity);
entry.set("baseqty", quantity); entry.set("baseqty", quantity);
@ -131,6 +137,7 @@ public class OtherInApplyPushOtherInConvertPlugin extends AbstractConvertPlugIn
for (IDataEntityProperty property : properties) { for (IDataEntityProperty property : properties) {
newEntry.set(property.getName(), entry.get(property.getName())); newEntry.set(property.getName(), entry.get(property.getName()));
} }
newEntry.set("amount",amount);
newEntry.set("qty", quantity); newEntry.set("qty", quantity);
newEntry.set("baseqty", quantity); newEntry.set("baseqty", quantity);
newEntry.set("tqq9_goods", tqq9_goodspackage); newEntry.set("tqq9_goods", tqq9_goodspackage);

View File

@ -106,8 +106,17 @@ public class OtherOutApplyPushOtherOutConvertPlugin extends AbstractConvertPlugI
DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)}); DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)});
DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)}); DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)});
DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)}); DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)});
BigDecimal price = entry.getBigDecimal("price");//单价
BigDecimal amount = price.multiply(quantity);//金额
// 处理第一次逻辑 // 处理第一次逻辑
if (i == 0) { if (i == 0) {
entry.set("amount",amount);
entry.set("remainreturnqty",quantity);//未退库数量
entry.set("remainreturnbaseqty",quantity);//未退库基本数量
// 第一次直接赋值 // 第一次直接赋值
entry.set("qty", quantity); entry.set("qty", quantity);
entry.set("baseqty", quantity); entry.set("baseqty", quantity);
@ -131,6 +140,11 @@ public class OtherOutApplyPushOtherOutConvertPlugin extends AbstractConvertPlugI
for (IDataEntityProperty property : properties) { for (IDataEntityProperty property : properties) {
newEntry.set(property.getName(), entry.get(property.getName())); newEntry.set(property.getName(), entry.get(property.getName()));
} }
newEntry.set("amount",amount);
newEntry.set("remainreturnqty",quantity);//未退库数量
newEntry.set("remainreturnbaseqty",quantity);//未退库基本数量
newEntry.set("qty", quantity); newEntry.set("qty", quantity);
newEntry.set("baseqty", quantity); newEntry.set("baseqty", quantity);
newEntry.set("tqq9_goods", tqq9_goodspackage); newEntry.set("tqq9_goods", tqq9_goodspackage);

View File

@ -111,8 +111,26 @@ public class PurInConvertPlugin extends AbstractConvertPlugIn implements Plugin
DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)}); DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)});
DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)}); DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)});
DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)}); DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)});
BigDecimal priceandtax = entry.getBigDecimal("priceandtax");//含税单价
BigDecimal price = entry.getBigDecimal("price");//不含税单价
BigDecimal amountandtax = priceandtax.multiply(quantity);//折扣后价税合计
BigDecimal amount = price.multiply(quantity);//金额
BigDecimal taxamount = amountandtax.subtract(amount);//税额
// 处理第一次逻辑 // 处理第一次逻辑
if (i == 0) { if (i == 0) {
entry.set("taxamount", taxamount);//税额
entry.set("amountandtax", amountandtax);//折扣后价税合计
entry.set("amount", amount);
entry.set("remainreturnqty", quantity);//未退库数量
entry.set("remainreturnbaseqty", quantity);//未退库基本数量
entry.set("remainjoinpriceqty", quantity); //剩余应付数量
entry.set("remainjoinpricebaseqty", quantity);//剩余应付基本数量
entry.set("unverifyqty", quantity); //未核销数量
entry.set("unverifybaseqty", quantity); //未核销基本数量
// 第一次直接赋值 // 第一次直接赋值
entry.set("qty", quantity); entry.set("qty", quantity);
entry.set("baseqty", quantity); entry.set("baseqty", quantity);
@ -136,6 +154,17 @@ public class PurInConvertPlugin extends AbstractConvertPlugIn implements Plugin
for (IDataEntityProperty property : properties) { for (IDataEntityProperty property : properties) {
newEntry.set(property.getName(), entry.get(property.getName())); newEntry.set(property.getName(), entry.get(property.getName()));
} }
newEntry.set("taxamount", taxamount);//税额
newEntry.set("amountandtax", amountandtax);//折扣后价税合计
newEntry.set("amount", amount);//金额
newEntry.set("remainreturnqty", quantity);//未退库数量
newEntry.set("remainreturnbaseqty", quantity);//未退库基本数量
newEntry.set("remainjoinpriceqty", quantity); //剩余应付数量
newEntry.set("remainjoinpricebaseqty", quantity);//剩余应付基本数量
newEntry.set("unverifyqty", quantity); //未核销数量
newEntry.set("unverifybaseqty", quantity); //未核销基本数量
newEntry.set("qty", quantity); newEntry.set("qty", quantity);
newEntry.set("baseqty", quantity); newEntry.set("baseqty", quantity);
newEntry.set("tqq9_goods", tqq9_goodspackage); newEntry.set("tqq9_goods", tqq9_goodspackage);

View File

@ -122,8 +122,28 @@ public class YdthPurInConvertPlugin extends AbstractConvertPlugIn implements Plu
DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)}); DynamicObject tqq9_goodspackage = BusinessDataServiceHelper.loadSingle("tqq9_goodspackage", new QFilter[]{new QFilter("tqq9_mater.number", QCP.equals, uniqueCode).and("tqq9_isauto", QCP.equals, true)});
DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)}); DynamicObject tqq9_registration = BusinessDataServiceHelper.loadSingle("tqq9_registration", new QFilter[]{new QFilter("number", QCP.equals, registrationCode)});
DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)}); DynamicObject tqq9_proxyandfactory = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", new QFilter[]{new QFilter("number", QCP.equals, producer)});
BigDecimal priceandtax = entry.getBigDecimal("priceandtax");//含税单价
BigDecimal price = entry.getBigDecimal("price");//不含税单价
BigDecimal amountandtax = priceandtax.multiply(quantity);//折扣后价税合计
BigDecimal amount = price.multiply(quantity);//金额
BigDecimal taxamount = amountandtax.subtract(amount);//税额
// 处理第一次逻辑 // 处理第一次逻辑
if (i == 0) { if (i == 0) {
entry.set("taxamount", taxamount);//税额
entry.set("amountandtax", amountandtax);//折扣后价税合计
entry.set("amount", amount);
entry.set("remainreturnqty", quantity);//未退库数量
entry.set("remainreturnbaseqty", quantity);//未退库基本数量
entry.set("remainjoinpriceqty", quantity); //剩余应付数量
entry.set("remainjoinpricebaseqty", quantity);//剩余应付基本数量
entry.set("unverifyqty", quantity); //未核销数量
entry.set("unverifybaseqty", quantity); //未核销基本数量
// 第一次直接赋值 // 第一次直接赋值
entry.set("qty", quantity); entry.set("qty", quantity);
entry.set("baseqty", quantity); entry.set("baseqty", quantity);
@ -147,6 +167,17 @@ public class YdthPurInConvertPlugin extends AbstractConvertPlugIn implements Plu
for (IDataEntityProperty property : properties) { for (IDataEntityProperty property : properties) {
newEntry.set(property.getName(), entry.get(property.getName())); newEntry.set(property.getName(), entry.get(property.getName()));
} }
newEntry.set("taxamount", taxamount);//税额
newEntry.set("amountandtax", amountandtax);//折扣后价税合计
newEntry.set("amount", amount);//金额
newEntry.set("remainreturnqty", quantity);//未退库数量
newEntry.set("remainreturnbaseqty", quantity);//未退库基本数量
newEntry.set("remainjoinpriceqty", quantity); //剩余应付数量
newEntry.set("remainjoinpricebaseqty", quantity);//剩余应付基本数量
newEntry.set("unverifyqty", quantity); //未核销数量
newEntry.set("unverifybaseqty", quantity); //未核销基本数量
newEntry.set("qty", quantity); newEntry.set("qty", quantity);
newEntry.set("baseqty", quantity); newEntry.set("baseqty", quantity);
newEntry.set("tqq9_goods", tqq9_goodspackage); newEntry.set("tqq9_goods", tqq9_goodspackage);
@ -216,7 +247,7 @@ public class YdthPurInConvertPlugin extends AbstractConvertPlugIn implements Plu
entry.set("remainjoinpricebaseqty", qty);//剩余应付基本数量 entry.set("remainjoinpricebaseqty", qty);//剩余应付基本数量
entry.set("unverifyqty", qty); //未核销数量 entry.set("unverifyqty", qty); //未核销数量
entry.set("unverifybaseqty", qty); //未核销基本数量 entry.set("unverifybaseqty", qty); //未核销基本数量
entry.set("baseqty",qty);//基本数量-反写规则用到 entry.set("baseqty", qty);//基本数量-反写规则用到
entry.set("taxrateid", bd_taxrate);//税率 entry.set("taxrateid", bd_taxrate);//税率
entry.set("price", tqq9_price_ydth);//不含税单价 entry.set("price", tqq9_price_ydth);//不含税单价
entry.set("taxamount", tqq9_taxamount_ydth);//税额 entry.set("taxamount", tqq9_taxamount_ydth);//税额
@ -240,7 +271,7 @@ public class YdthPurInConvertPlugin extends AbstractConvertPlugIn implements Plu
newEntry.set("remainjoinpricebaseqty", qty);//剩余应付基本数量 newEntry.set("remainjoinpricebaseqty", qty);//剩余应付基本数量
newEntry.set("unverifyqty", qty); //未核销数量 newEntry.set("unverifyqty", qty); //未核销数量
newEntry.set("unverifybaseqty", qty); //未核销基本数量 newEntry.set("unverifybaseqty", qty); //未核销基本数量
newEntry.set("baseqty",qty);//基本数量-反写规则用到 newEntry.set("baseqty", qty);//基本数量-反写规则用到
newEntry.set("taxrateid", bd_taxrate);//税率 newEntry.set("taxrateid", bd_taxrate);//税率
newEntry.set("price", tqq9_price_ydth);//不含税单价 newEntry.set("price", tqq9_price_ydth);//不含税单价
newEntry.set("taxamount", tqq9_taxamount_ydth);//税额 newEntry.set("taxamount", tqq9_taxamount_ydth);//税额