1.外销合同赠送配件页签汇总赋值
2.发运明细单台数发运更新

(cherry picked from commit 261d35ff59)
This commit is contained in:
ljw 2024-11-25 10:27:57 +08:00
parent c295a5ee38
commit 7add40bc5a

View File

@ -416,25 +416,11 @@ public class SalesOrderUtils {
materielId.add(materiel.getLong("id"));
}
}
String yemBdProductsid = "";
DynamicObject yemBdProducts = dataEntitie.getDynamicObject("yem_bd_products");
if (yemBdProducts != null) {
yemBdProductsid = yemBdProducts.getString("number");
}
if ("CC".equals(yemBdProducts.getString("number"))) {//叉车
yemBdProductsid = "CCPJ";
} else if ("ZZJ".equals(yemBdProducts.getString("number"))) {//装载机
yemBdProductsid = "ZZJPJ";
} else if ("TLJ".equals(yemBdProducts.getString("number"))) {//拖拉机
yemBdProductsid = "TLJPJ";
}
String selectFields = DynamicObjectUtil.getSelectfields("yem_pricelibrary", false);
selectFields = DynamicObjectUtil.getEntrySelectfields(selectFields, "yem_pricelibrary", "yem_accessory", false);
DynamicObject[] accPriceLibrarys = BusinessDataServiceHelper.load("yem_pricelibrary", selectFields,
new QFilter[]{new QFilter("yem_accessory.yem_material", QCP.in, materielId)
, new QFilter("billstatus", QCP.equals, "C")
, new QFilter("yem_productclass.number", QCP.equals, yemBdProductsid)
,new QFilter("yem_cancelstatus", QCP.equals, "0")});
new QFilter[]{new QFilter("yem_accessory.yem_material", QCP.in, materielId),
new QFilter("billstatus", QCP.equals, "C")});
for (DynamicObject accPriceLibrary : accPriceLibrarys) {
Map<Long, Map<String, Object>> allMap = new HashMap<>();
Date bizDate = accPriceLibrary.getDate("yem_bizdate");
@ -1123,9 +1109,9 @@ public class SalesOrderUtils {
for (DynamicObject destport : destports) {
DynamicObject port = destport.getDynamicObject("fbasedataid");
if (port == null) continue;
port = BusinessDataServiceHelper.loadSingle(port.getPkValue(), port.getDataEntityType().getName(), "yem_namecn");
if (!port.getString("yem_namecn").isEmpty()) {
sb.append(port.getString("yem_namecn")).append(";");
port = BusinessDataServiceHelper.loadSingle(port.getPkValue(), port.getDataEntityType().getName(), "yem_factory");
if (!port.getString("yem_factory").isEmpty()) {
sb.append(port.getString("yem_factory")).append(";");
}
}
if (sb.lastIndexOf(";") == sb.length() - 1) {
@ -1240,26 +1226,20 @@ public class SalesOrderUtils {
List<DynamicObject> value = entry.getValue();
DynamicObject basemodelib = BusinessDataServiceHelper.loadSingle(productmodelId, "yem_bd_basemodelib");
long products = basemodelib.getLong("yem_products.id");
BigDecimal qty = BigDecimal.ZERO;
BigDecimal singlepartgiftmat = BigDecimal.ZERO;
// BigDecimal singlepartgiftmat = BigDecimal.ZERO;
for (DynamicObject dynamicObject : value) {
BigDecimal yemSinglepartgiftmat = dynamicObject.getBigDecimal("yem_singlepartgiftmat");
if (yemSinglepartgiftmat.compareTo(BigDecimal.ZERO) != 0) {
qty = qty.add(dynamicObject.getBigDecimal("yem_qty"));
}
if (singlepartgiftmat.compareTo(BigDecimal.ZERO) == 0) {
singlepartgiftmat = yemSinglepartgiftmat;
}
BigDecimal qty = dynamicObject.getBigDecimal("yem_qty");
BigDecimal singlepartgiftmat = dynamicObject.getBigDecimal("yem_singlepartgiftmat"); // 单台配件金额
BigDecimal amount = qty.multiply(singlepartgiftmat);
if (singlepartgiftmat.compareTo(BigDecimal.ZERO) == 0) continue;
DynamicObject addNew = giftEntry.addNew();
addNew.set("yem_giveproactype", products); // 产品机型
addNew.set("yem_qtyint", qty); // 台数
addNew.set("yem_singleamt", singlepartgiftmat); // 单台配件金额
addNew.set("yem_singleamtlocal", singlepartgiftmat.multiply(exrate)); // 单台配件金额本位币
addNew.set("yem_giveamt", amount); // 配件金额
addNew.set("yem_giveamtbase", amount.multiply(exrate)); // 配件金额本位币
}
BigDecimal amount = qty.multiply(singlepartgiftmat);
if (singlepartgiftmat.compareTo(BigDecimal.ZERO) == 0) continue;
DynamicObject addNew = giftEntry.addNew();
addNew.set("yem_giveproactype", products); // 产品机型
addNew.set("yem_qtyint", qty); // 台数
addNew.set("yem_singleamt", singlepartgiftmat); // 单台配件金额
addNew.set("yem_singleamtlocal", singlepartgiftmat.multiply(exrate)); // 单台配件金额本位币
addNew.set("yem_giveamt", amount); // 配件金额
addNew.set("yem_giveamtbase", amount.multiply(exrate)); // 配件金额本位币
}
}