diff --git a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java index d660b9bc..f1f822b8 100644 --- a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java +++ b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java @@ -396,7 +396,7 @@ public class SalesOrderEdit extends AbstractBillPlugIn implements Plugin, Before genTradeTermsDestports(model, view);//贸易术语=价格条款+目的港.工厂 DynamicObjectCollection yemEsMaterialinfo = this.getModel().getEntryEntity("yem_es_materialinfo"); for (DynamicObject dynamicObject : yemEsMaterialinfo) { - dynamicObject.set("yem_port",model.getValue("yem_shipports")); + dynamicObject.set("yem_port", model.getValue("yem_shipports")); } break; case "yem_destports": @@ -1536,35 +1536,38 @@ public class SalesOrderEdit extends AbstractBillPlugIn implements Plugin, Before yem_es_materialinfo.set("yem_amt", yem_amt); yem_es_materialinfo.set("yem_locamt", yem_amt.multiply(newbill.getBigDecimal("yem_exrate"))); qty_s = BigDecimalUtils.add(qty_s, yem_qty, 10); - DynamicObject yem_productmodel = yem_es_materialinfo.getDynamicObject("yem_productmodel"); - if (yem_productmodel != null) { - DynamicObject yem_products = yem_productmodel.getDynamicObject("yem_products"); - if (yem_products != null) { - long yem_productsid = yem_products.getLong("id"); - if (!productsList.containsKey(yem_productsid)) { - productsList.put(yem_productsid, yem_qty); - } else { - productsList.replace(yem_productsid, BigDecimalUtils.add(productsList.get(yem_productsid), yem_qty, 10)); + if (!yem_es_materialinfo.getString("yem_businesssort").equals("Z") || !yem_es_materialinfo.getBoolean("yem_ifgift")) { + DynamicObject yem_productmodel = yem_es_materialinfo.getDynamicObject("yem_productmodel"); + if (yem_productmodel != null) { + DynamicObject yem_products = yem_productmodel.getDynamicObject("yem_products"); + if (yem_products != null) { + long yem_productsid = yem_products.getLong("id"); + if (!productsList.containsKey(yem_productsid)) { + productsList.put(yem_productsid, yem_qty); + } else { + productsList.replace(yem_productsid, BigDecimalUtils.add(productsList.get(yem_productsid), yem_qty, 10)); + } } + } - } // if ("Z".equals(key)) { - DynamicObjectCollection yem_multiconfig_s = yem_es_materialinfo.getDynamicObjectCollection("yem_multiconfig"); - for (int j = 0; j < yem_multiconfig_s.size(); j++) { - DynamicObject yem_multiconfig = yem_multiconfig_s.get(j); - yem_multiconfig.set("yem_unitset", yem_qty);//台数 - } - DynamicObjectCollection yem_retrofitting_s = yem_es_materialinfo.getDynamicObjectCollection("yem_retrofitting"); - for (int j = 0; j < yem_retrofitting_s.size(); j++) { - DynamicObject yem_retrofitting = yem_retrofitting_s.get(j); - BigDecimal yem_singleqty = yem_retrofitting.getBigDecimal("yem_singleqty");//单台数量 - BigDecimal yem_qtyamt = BigDecimalUtils.multiply(yem_singleqty, yem_qty, 10);//总数量 - yem_retrofitting.set("yem_qty1", yem_qty); - yem_retrofitting.set("yem_qtyamt", yem_qtyamt); - } + DynamicObjectCollection yem_multiconfig_s = yem_es_materialinfo.getDynamicObjectCollection("yem_multiconfig"); + for (int j = 0; j < yem_multiconfig_s.size(); j++) { + DynamicObject yem_multiconfig = yem_multiconfig_s.get(j); + yem_multiconfig.set("yem_unitset", yem_qty);//台数 + } + DynamicObjectCollection yem_retrofitting_s = yem_es_materialinfo.getDynamicObjectCollection("yem_retrofitting"); + for (int j = 0; j < yem_retrofitting_s.size(); j++) { + DynamicObject yem_retrofitting = yem_retrofitting_s.get(j); + BigDecimal yem_singleqty = yem_retrofitting.getBigDecimal("yem_singleqty");//单台数量 + BigDecimal yem_qtyamt = BigDecimalUtils.multiply(yem_singleqty, yem_qty, 10);//总数量 + yem_retrofitting.set("yem_qty1", yem_qty); + yem_retrofitting.set("yem_qtyamt", yem_qtyamt); + } // } + } } else { yem_es_materialinfo_s.remove(i--); }