diff --git a/lc123/cloud/app/plugin/form/ap/ApHandSettleFormPlugin.java b/lc123/cloud/app/plugin/form/ap/ApHandSettleFormPlugin.java index 02ac1be..bf5af75 100644 --- a/lc123/cloud/app/plugin/form/ap/ApHandSettleFormPlugin.java +++ b/lc123/cloud/app/plugin/form/ap/ApHandSettleFormPlugin.java @@ -49,9 +49,14 @@ public class ApHandSettleFormPlugin extends ManualSettleBasePlugin { @Override public void afterBindData(EventObject e) { super.afterBindData(e); - Button button = (Button)this.getControl("btnquery"); - button.addClickListener(this); - button.click(); + FormShowParameter formShowParameter = this.getView().getFormShowParameter(); + // 获取自定义参数 + JSONObject e_asstact = formShowParameter.getCustomParam("e_asstact"); + if(e_asstact!=null){ + Button button = (Button)this.getControl("btnquery"); + button.addClickListener(this); + button.click(); + } } @Override diff --git a/lc123/cloud/app/plugin/form/ap/PayApplyFormPlugin.java b/lc123/cloud/app/plugin/form/ap/PayApplyFormPlugin.java index e92938a..c5b52e8 100644 --- a/lc123/cloud/app/plugin/form/ap/PayApplyFormPlugin.java +++ b/lc123/cloud/app/plugin/form/ap/PayApplyFormPlugin.java @@ -1,10 +1,16 @@ package tqq9.lc123.cloud.app.plugin.form.ap; +import kd.bos.algo.DataSet; import kd.bos.bill.AbstractBillPlugIn; import kd.bos.bill.BillShowParameter; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.dataentity.metadata.IDataEntityProperty; import kd.bos.dataentity.utils.StringUtils; +import kd.bos.db.DB; +import kd.bos.db.DBRoute; +import kd.bos.entity.datamodel.IDataModel; +import kd.bos.entity.datamodel.events.PropertyChangedArgs; import kd.bos.form.CloseCallBack; import kd.bos.form.FormShowParameter; import kd.bos.form.ShowFormHelper; @@ -14,10 +20,12 @@ import kd.bos.list.ListFilterParameter; import kd.bos.list.ListShowParameter; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; +import kd.bos.orm.ORM; import kd.sdk.plugin.Plugin; import scala.annotation.meta.param; import tqq9.lc123.cloud.app.plugin.form.conm.purconmAddRebateRulesPlugin; +import java.math.BigDecimal; import java.util.EventObject; /** @@ -37,18 +45,18 @@ public class PayApplyFormPlugin extends AbstractBillPlugIn implements Plugin { public void itemClick(ItemClickEvent evt) { super.itemClick(evt); String itemKey = evt.getItemKey(); - if (StringUtils.equals("tqq9_deductorder",itemKey)) { + if (StringUtils.equals("tqq9_deductorder", itemKey)) { DynamicObjectCollection entry = this.getModel().getDataEntity(true).getDynamicObjectCollection("entry"); if (entry.isEmpty()) { getView().showMessage("请先维护供应商"); return; - }else{ + } else { DynamicObject e_asstact = entry.get(0).getDynamicObject("e_asstact");//往来户 DynamicObject settleorg = (DynamicObject) this.getModel().getValue("settleorg");//结算组织 - if(e_asstact==null){ + if (e_asstact == null) { getView().showMessage("请先维护供应商"); return; - }else{ + } else { FormShowParameter param = new FormShowParameter(); param.setFormId("ap_handsettle"); param.setCustomParam("e_asstact", e_asstact); @@ -60,4 +68,44 @@ public class PayApplyFormPlugin extends AbstractBillPlugIn implements Plugin { } } } + + @Override + public void afterCreateNewData(EventObject e) { + super.afterCreateNewData(e); + IDataModel model = this.getModel(); + DynamicObject e_asstact = (DynamicObject) model.getValue("e_asstact", 0); + if (e_asstact != null) { + long id = e_asstact.getLong("id"); + String sql = "/*dialect*/select fasstactid,sum(funsettleamount) qty from t_ap_finapbill,t_ap_finapbilldetailentry " + + " WHERE fsettlestatus in ('unsettle','partsettle') and fbillstatus ='C' and funsettleamount<0 AND fasstactid=" + id + " group by fasstactid"; + DataSet dataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("cas"), sql); + DataSet copy = dataSet.copy(); + DynamicObjectCollection dynamicObjects = ORM.create().toPlainDynamicObjectCollection(copy); + BigDecimal qty = dynamicObjects.get(0).getBigDecimal("qty"); + model.setValue("tqq9_gyskdkzje", qty); + getView().updateView(); + } + } + + @Override + public void propertyChanged(PropertyChangedArgs e) { + super.propertyChanged(e); + String name = e.getProperty().getName(); + if (StringUtils.equals("e_asstact", name)) { + IDataModel model = this.getModel(); + DynamicObject e_asstact = (DynamicObject) model.getValue("e_asstact", 0); + if (e_asstact != null) { + long id = e_asstact.getLong("id"); + String sql = "/*dialect*/select fasstactid,sum(funsettleamount) qty from t_ap_finapbill,t_ap_finapbilldetailentry " + + " WHERE fsettlestatus in ('unsettle','partsettle') and fbillstatus ='C' and funsettleamount<0 AND fasstactid=" + id + " group by fasstactid"; + DataSet dataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("cas"), sql); + DataSet copy = dataSet.copy(); + DynamicObjectCollection dynamicObjects = ORM.create().toPlainDynamicObjectCollection(copy); + BigDecimal qty = dynamicObjects.get(0).getBigDecimal("qty"); + model.setValue("tqq9_gyskdkzje", qty); + getView().updateView(); + } + } + + } } \ No newline at end of file diff --git a/lc123/cloud/app/plugin/form/conm/RebateRulesBillPlugin.java b/lc123/cloud/app/plugin/form/conm/RebateRulesBillPlugin.java index 95975b7..338cc0b 100644 --- a/lc123/cloud/app/plugin/form/conm/RebateRulesBillPlugin.java +++ b/lc123/cloud/app/plugin/form/conm/RebateRulesBillPlugin.java @@ -17,6 +17,8 @@ import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.sdk.plugin.Plugin; +import java.math.BigDecimal; +import java.util.Date; import java.util.EventObject; import java.util.HashMap; import java.util.Map; @@ -39,11 +41,22 @@ public class RebateRulesBillPlugin extends AbstractBillPlugIn implements Plugin super.afterDoOperation(afterDoOperationEventArgs); String itemKey = afterDoOperationEventArgs.getOperateKey(); if (StringUtils.equals("donothing", itemKey)) { - DynamicObject dataEntity = this.getModel().getDataEntity(true); - HashMap map = new HashMap<>(); - map.put("tqq9_pur_rebate", dataEntity); - this.getView().returnDataToParent(map); - this.getView().close(); + Object name = this.getModel().getValue("name"); + Object tqq9_supplier = this.getModel().getValue("tqq9_supplier"); + Object tqq9_startdate = this.getModel().getValue("tqq9_startdate"); + Object tqq9_enddate = this.getModel().getValue("tqq9_enddate"); + Object tqq9_estimatepro = this.getModel().getValue("tqq9_estimatepro"); + Object tqq9_rebatebrand = this.getModel().getValue("tqq9_rebatebrand"); + Object tqq9_rebategoods = this.getModel().getValue("tqq9_rebategoods"); + if(name==null||tqq9_supplier==null||tqq9_startdate==null||tqq9_enddate==null||tqq9_estimatepro==null||tqq9_rebatebrand==null||tqq9_rebategoods==null){ + this.getView().showErrorNotification("请确认必录项是否为空"); + }else{ + DynamicObject dataEntity = this.getModel().getDataEntity(true); + HashMap map = new HashMap<>(); + map.put("tqq9_pur_rebate", dataEntity); + this.getView().returnDataToParent(map); + this.getView().close(); + } } } diff --git a/lc123/cloud/app/plugin/form/conm/purconmAddRebateRulesPlugin.java b/lc123/cloud/app/plugin/form/conm/purconmAddRebateRulesPlugin.java index 7cc5598..dba4fa6 100644 --- a/lc123/cloud/app/plugin/form/conm/purconmAddRebateRulesPlugin.java +++ b/lc123/cloud/app/plugin/form/conm/purconmAddRebateRulesPlugin.java @@ -52,27 +52,30 @@ public class purconmAddRebateRulesPlugin extends AbstractFormPlugin implements H @Override public void beforeDeleteRow(BeforeDeleteRowEventArgs e) { super.beforeDeleteRow(e); - int[] selectRows = e.getRowIndexs(); - DynamicObjectCollection tqq9_entryentity = this.getModel().getDataEntity(true).getDynamicObjectCollection("tqq9_entryentity"); - List rebate = new ArrayList<>(); - StringBuilder stringBuilder = new StringBuilder(); - for (int i = 0; i < selectRows.length; i++) { - int selectRow = selectRows[i]; - DynamicObject dynamicObject = tqq9_entryentity.get(selectRow); - DynamicObject tqq9_pur_rebate = dynamicObject.getDynamicObject("tqq9_pur_rebate"); - if (tqq9_pur_rebate != null) { - String name = dynamicObject.getString("tqq9_rulename"); - if (tqq9_pur_rebate.getString("status").equals("A")) { - rebate.add(tqq9_pur_rebate.getLong("id")); - } else { - this.getView().showMessage("名称为:'" + name + "'的返利规则为非暂存状态,无法删除"); - e.setCancel(true); - return; + if (e.getEntryProp().equals("tqq9_entryentity")){ + int[] selectRows = e.getRowIndexs(); + DynamicObjectCollection tqq9_entryentity = this.getModel().getDataEntity(true).getDynamicObjectCollection("tqq9_entryentity"); + List rebate = new ArrayList<>(); + StringBuilder stringBuilder = new StringBuilder(); + for (int i = 0; i < selectRows.length; i++) { + int selectRow = selectRows[i]; + DynamicObject dynamicObject = tqq9_entryentity.get(selectRow); + DynamicObject tqq9_pur_rebate = dynamicObject.getDynamicObject("tqq9_pur_rebate"); + if (tqq9_pur_rebate != null) { + String name = dynamicObject.getString("tqq9_rulename"); + if (tqq9_pur_rebate.getString("status").equals("A")) { + rebate.add(tqq9_pur_rebate.getLong("id")); + } else { + this.getView().showMessage("名称为:'" + name + "'的返利规则为非暂存状态,无法删除"); + e.setCancel(true); + return; + } } } + DeleteServiceHelper.delete("tqq9_pur_rebate", new QFilter[]{new QFilter("id", QCP.in, rebate)}); + this.getView().showMessage("返利规则删除成功"); } - DeleteServiceHelper.delete("tqq9_pur_rebate", new QFilter[]{new QFilter("id", QCP.in, rebate)}); - this.getView().showMessage("返利规则删除成功"); + } @Override diff --git a/lc123/cloud/app/plugin/form/im/AreaSelectionBillPlugin.java b/lc123/cloud/app/plugin/form/im/AreaSelectionBillPlugin.java index d229fbd..ada1be4 100644 --- a/lc123/cloud/app/plugin/form/im/AreaSelectionBillPlugin.java +++ b/lc123/cloud/app/plugin/form/im/AreaSelectionBillPlugin.java @@ -2,26 +2,16 @@ package tqq9.lc123.cloud.app.plugin.form.im; import kd.bos.bill.AbstractBillPlugIn; import kd.bos.dataentity.entity.DynamicObject; -import kd.bos.dataentity.entity.LocaleString; import kd.bos.dataentity.utils.StringUtils; -import kd.bos.entity.datamodel.events.ChangeData; -import kd.bos.entity.datamodel.events.PropertyChangedArgs; import kd.bos.form.field.BasedataEdit; -import kd.bos.form.field.ComboEdit; -import kd.bos.form.field.ComboItem; import kd.bos.form.field.events.BeforeF7SelectEvent; import kd.bos.form.field.events.BeforeF7SelectListener; 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.sdk.plugin.Plugin; -import tqq9.lc123.cloud.app.plugin.form.conm.purconmAddRebateRulesPlugin; -import java.util.ArrayList; import java.util.EventObject; -import java.util.List; /** * 表单通用插件 diff --git a/lc123/cloud/app/plugin/form/pm/PurSuggestRptFromPlugin.java b/lc123/cloud/app/plugin/form/pm/PurSuggestRptFromPlugin.java index 3cfe0ab..a0d3cd6 100644 --- a/lc123/cloud/app/plugin/form/pm/PurSuggestRptFromPlugin.java +++ b/lc123/cloud/app/plugin/form/pm/PurSuggestRptFromPlugin.java @@ -67,27 +67,27 @@ public class PurSuggestRptFromPlugin extends AbstractFormPlugin implements Plugi entryentity.clear(); } //业务归属查询 - QFilter qFilter = new QFilter("number", QCP.in, new String[]{"Org-00001", "Org-00002", "Org-00003", "Org-00004"}); + QFilter qFilter = new QFilter("number", QCP.in, new String[]{"SHLC", "BJLC", "GZLC", "CDLC"}); DynamicObject[] load = BusinessDataServiceHelper.load("bos_org", "id,number", qFilter.toArray()); - String sh = "0"; - String bj = "0"; - String gz = "0"; - String cd = "0"; + Long sh = 0L; + Long bj = 0L; + Long gz = 0L; + Long cd = 0L; for (int i = 0; load != null && i < load.length; i++) { DynamicObject dynamicObject = load[i]; String number = dynamicObject.getString("number"); switch (number) { - case "Org-00001": - sh = dynamicObject.getString("id"); + case "SHLC": + sh = dynamicObject.getLong("id"); break; - case "Org-00002": - bj = dynamicObject.getString("id"); + case "BJLC": + bj = dynamicObject.getLong("id"); break; - case "Org-00003": - gz = dynamicObject.getString("id"); + case "GZLC": + gz = dynamicObject.getLong("id"); break; - case "Org-00004": - cd = dynamicObject.getString("id"); + case "CDLC": + cd = dynamicObject.getLong("id"); break; } } @@ -113,6 +113,18 @@ public class PurSuggestRptFromPlugin extends AbstractFormPlugin implements Plugi for (DynamicObject dynamicObject : materials) { materialMap.put(dynamicObject.getLong("id"), dynamicObject); } + //商城商品 + DynamicObject[] goods = BusinessDataServiceHelper.load("tqq9_goodspackage", "id,number,name,tqq9_brand", null); + HashMap goodMap = new HashMap(); + for (DynamicObject dynamicObject : goods) { + goodMap.put(dynamicObject.getLong("id"), dynamicObject); + } + //执行采购Map + DynamicObject[] operators = BusinessDataServiceHelper.load("bd_operator", "id,operatornumber,operatorname", null); + HashMap operatorMap = new HashMap(); + for (DynamicObject dynamicObject : operators) { + operatorMap.put(dynamicObject.getLong("id"), dynamicObject); + } //组织Map DynamicObject[] adminorgs = BusinessDataServiceHelper.load("bos_adminorg", "id,number", null); HashMap adminorgMap = new HashMap(); @@ -128,64 +140,187 @@ public class PurSuggestRptFromPlugin extends AbstractFormPlugin implements Plugi warehouseSb.append(",'").append(id).append("'"); } - DataSet materialinventoryinfoDataSet = QueryServiceHelper.queryDataSet(this.getClass().getName(), - "bd_materialinventoryinfo", - "id as materialinventoryid,masterid as tqq9_sku ", + DataSet materialpurchaseinfoDataSet = QueryServiceHelper.queryDataSet(this.getClass().getName(), + "bd_materialpurchaseinfo", + "id as tqq9_purordermaterial,masterid as tqq9_material ", new QFilter[]{}, null); //商城商品 - String goodspackagesql = "/*dialect*/select t1.fid id,t1.fk_tqq9_isauto tqq9_isauto,t1.fk_tqq9_mater tqq9_sku,t1.fcreateorgid tqq9_org,\n" + - "t1.fk_tqq9_purchaser tqq9_purchaser,t1.fk_tqq9_onsale tqq9_onsale ,t1.fk_tqq9_totalupstock tqq9_totalupstock \n" + - "from tk_tqq9_goodspackage t1"; + String goodspackagesql = "/*dialect*/select t1.fid tqq9_sku,t1.fk_tqq9_isauto tqq9_isauto,t1.fk_tqq9_mater tqq9_material,t1.fk_tqq9_skuno tqq9_sku_lc,t1.fcreateorgid tqq9_org,\n" + + "t1.fk_tqq9_purchaser tqq9_purchaser,t1.fk_tqq9_onsale tqq9_onsale ,t1.fk_tqq9_totalupstock tqq9_totalupstock from tk_tqq9_goodspackage t1\n"; //即时库存表 - String realbalancesql = "/*dialect*/select '1' tqq9_isauto,t1.fmaterialid tqq9_sku,t1.forgid tqq9_org,sum(t1.fqty) tqq9_totalinventory \n" + - "from t_im_inv_realbalance t1 group by fmaterialid,forgid"; + String realbalancesql = "/*dialect*//*dialect*/select '1' tqq9_isauto,fmaterialid tqq9_material,forgid tqq9_org,sum(case when forgid=" + sh + " then fqty else 0 end) tqq9_shinventory, \n" + + "sum(case when forgid=" + bj + " then fqty else 0 end) tqq9_bjinventory,sum(case when forgid=" + gz + " then fqty else 0 end) tqq9_gzinventory,\n" + + "sum(case when forgid=" + cd + " then fqty else 0 end) tqq9_cdinventory\n" + + "from t_im_inv_realbalance group by fmaterialid,forgid"; + +// //即时库存表 +// String realbalancesql = "/*dialect*//*dialect*/select '1' tqq9_isauto,fmaterialid tqq9_material,forgid tqq9_org,sum(case when forgid='"+sh+"' then fqty else 0 end) tqq9_shinventory, \n" + +// "sum(case when forgid='"+bj+"' then fqty else 0 end) tqq9_bjinventory,sum(case when forgid='"+gz+"' then fqty else 0 end) tqq9_gzinventory,\n" + +// "sum(case when forgid='"+cd+"' then fqty else 0 end) tqq9_cdinventory\n" + +// "from t_im_inv_realbalance group by fmaterialid,forgid"; + //销售订单 - String saloutbillsql = "/*dialect*/ SELECT sum(CASE WHEN fbiztime >= DATE_TRUNC('month', CURRENT_DATE - INTERVAL '3' MONTH) AND fbiztime < DATE_TRUNC('month', CURRENT_DATE)THEN t2.fqty ELSE 0 END) / 3 AS permonthsales,\n" + - " sum(CASE WHEN fbiztime >= DATE_TRUNC('month', CURRENT_DATE - INTERVAL '2' MONTH) AND fbiztime < DATE_TRUNC('month', CURRENT_DATE)THEN t2.fqty ELSE 0 END) AS last_2month_sum,\n" + - " sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' then t2.fqty else 0 end) tqq9_totalqty,\n" + - " sum(CASE WHEN t1.fbillstatus in('A','B','C') and t2.fwarehouseid in (" + warehouseSb.substring(1) + ") then t2.fqty ELSE 0 END)tqq9_onorderinventory,t2.fmaterialid materialinventoryid, t1.forgid tqq9_org\n" + - " FROM t_im_saloutbill t1,t_im_saloutbillentry t2 WHERE t1.fid = t2.fid AND t1.fbillstatus = 'C'GROUP BY t2.fmaterialid, t1.forgid"; + String saloutbillsql = "/*dialect*/ SELECT sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + sh + " then t2.fqty else 0 end)/3 tqq9_permonthsales_sh,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + bj + " then t2.fqty else 0 end)/3 tqq9_permonthsales_bj,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + gz + " then t2.fqty else 0 end)/3 tqq9_permonthsales_gz,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + cd + " then t2.fqty else 0 end)/3 tqq9_permonthsales_cd,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + sh + " then t2.fqty else 0 end) tqq9_totalqty_sh,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + bj + " then t2.fqty else 0 end) tqq9_totalqty_bj,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + gz + " then t2.fqty else 0 end) tqq9_totalqty_gz,\n" + + "sum(case when t1.fbiztime>= CURRENT_DATE - INTERVAL '90 days' and forgid=" + cd + " then t2.fqty else 0 end) tqq9_totalqty_cd,\n" + + "t2.fk_tqq9_goodspackage tqq9_sku,t1.forgid tqq9_org\n" + + "FROM t_im_saloutbill t1,t_im_saloutbillentry t2 WHERE t1.fid = t2.fid AND t1.fbillstatus = 'C'GROUP BY t2.fk_tqq9_goodspackage,t1.forgid"; //采购订单 - String purorderbillsql = "/*dialect*/select t2.fmaterialid tqq9_sku,t1.forgid tqq9_org, sum(CASE WHEN t1.fclosestatus='A' then t1.fk_tqq9_purqty ELSE 0 END) tqq9_oninventory\n" + - "from t_pm_purorderbill t1,t_pm_purorderbillentry t2 where t1.fid=t2.fid and t1.fbillstatus='C' GROUP BY t2.fmaterialid,t1.forgid"; + String purorderbillsql = "/*dialect*/select '1' tqq9_isauto,t2.fmaterialid tqq9_purordermaterial,t1.forgid tqq9_org,\n" + + "sum(CASE WHEN t1.fclosestatus='A' and forgid=" + sh + " then t2.fqty-t3.finvqty ELSE 0 END) tqq9_inventory_sh,\n" + + "sum(CASE WHEN t1.fclosestatus='A' and forgid=" + bj + " then t2.fqty-t3.finvqty ELSE 0 END) tqq9_inventory_bj,\n" + + "sum(CASE WHEN t1.fclosestatus='A' and forgid=" + gz + " then t2.fqty-t3.finvqty ELSE 0 END) tqq9_inventory_gz,\n" + + "sum(CASE WHEN t1.fclosestatus='A' and forgid=" + cd + " then t2.fqty-t3.finvqty ELSE 0 END) tqq9_inventory_cd \n" + + "from t_pm_purorderbill t1,t_pm_purorderbillentry t2,t_pm_purorderbillentry_r t3 where t1.fid=t2.fid and t2.fid=t3.fid and t1.fbillstatus='C' GROUP BY t2.fmaterialid,t1.forgid"; -// DataSet goodspackagDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("scm"), goodspackagesql); + //占单库存-上海 + String onordersql_sh = "/*dialect*/SELECT cInvCode as tqq9_sku_lc,SUM(iQuantity) as tqq9_onorderinventory_SH from SA_SalesOrderMaster_SH ma(nolock) \n" + + "left join SA_SalesOrderDetail_SH de(nolock) on ma.somid =de.somid where Status in('新增','已审核') and cInvoiceTitle not like '%上海励齿%' \n" + + "and cInvoiceTitle not like '%北京励齿%' and cInvoiceTitle not like '%广州励齿%' and cinvcode is not null GROUP BY cInvCode"; + + //占单库存-北京 + String onordersql_bj = "/*dialect*/SELECT cInvCode as tqq9_sku_lc,SUM(iQuantity) as tqq9_onorderinventory_BJ from SA_SalesOrderMaster_BJ ma(nolock) \n" + + "left join SA_SalesOrderDetail_BJ de(nolock) on ma.somid =de.somid where Status in('新增','已审核') and cInvoiceTitle not like '%上海励齿%' \n" + + "and cInvoiceTitle not like '%北京励齿%' and cInvoiceTitle not like '%广州励齿%' and cinvcode is not null GROUP BY cInvCode"; + + //占单库存-广州 + String onordersql_gz = "/*dialect*/SELECT cInvCode as tqq9_sku_lc,SUM(iQuantity) as tqq9_onorderinventory_GZ from SA_SalesOrderMaster_GZ ma(nolock) \n" + + "left join SA_SalesOrderDetail_GZ de(nolock) on ma.somid =de.somid where Status in('新增','已审核') and cInvoiceTitle not like '%上海励齿%' \n" + + "and cInvoiceTitle not like '%北京励齿%' and cInvoiceTitle not like '%广州励齿%' and cinvcode is not null GROUP BY cInvCode"; + +// //排名-上海 +// String range_sh="/*dialect*/SELECT cInvCode as tqq9_sku_lc, CASE WHEN SUM(RowNum) = 0 THEN '其他' WHEN SUM(RowNum) <= 100 THEN '前一百' WHEN SUM(RowNum) <= 500 THEN '前五百' \n" + +// "WHEN SUM(RowNum) <= 1000 THEN '前一千' WHEN SUM(RowNum) <= 2000 THEN '前两千' END as tqq9_ranking FROM ( SELECT cInvCode, ROW_NUMBER() OVER (ORDER BY SUM(isum) DESC) as RowNum \n" + +// "FROM SA_SalesOrderMaster_SH ma(nolock) INNER JOIN SA_SalesOrderDetail_SH de(nolock) ON ma.somid = de.somid WHERE DATEDIFF(month, dInputDate,\n" + +// "GETDATE()) BETWEEN 1 AND 3 AND cInvoiceTitle NOT LIKE '%上海励齿%' AND cInvoiceTitle NOT LIKE '%北京励齿%' AND cInvoiceTitle NOT LIKE '%广州励齿%' AND Status != '草稿' \n" + +// "AND cInvCode NOT LIKE 'ZF%' GROUP BY cInvCode ) AS a WHERE a.RowNum <= 2000 GROUP BY cInvCode"; +// +// //排名-北京 +// String range_bj="/*dialect*/SELECT cInvCode as tqq9_sku_lc, CASE WHEN SUM(RowNum) = 0 THEN '其他' WHEN SUM(RowNum) <= 100 THEN '前一百' WHEN SUM(RowNum) <= 500 THEN '前五百' \n" + +// "WHEN SUM(RowNum) <= 1000 THEN '前一千' WHEN SUM(RowNum) <= 2000 THEN '前两千' END as tqq9_ranking FROM ( SELECT cInvCode, ROW_NUMBER() OVER (ORDER BY SUM(isum) DESC) as RowNum \n" + +// "FROM SA_SalesOrderMaster_SH ma(nolock) INNER JOIN SA_SalesOrderDetail_SH de(nolock) ON ma.somid = de.somid WHERE DATEDIFF(month, dInputDate,\n" + +// "GETDATE()) BETWEEN 1 AND 3 AND cInvoiceTitle NOT LIKE '%上海励齿%' AND cInvoiceTitle NOT LIKE '%北京励齿%' AND cInvoiceTitle NOT LIKE '%广州励齿%' AND Status != '草稿' \n" + +// "AND cInvCode NOT LIKE 'ZF%' GROUP BY cInvCode ) AS a WHERE a.RowNum <= 2000 GROUP BY cInvCode"; +// +// //排名-广州 +// String range_gz="/*dialect*/SELECT cInvCode as tqq9_sku_lc, CASE WHEN SUM(RowNum) = 0 THEN '其他' WHEN SUM(RowNum) <= 100 THEN '前一百' WHEN SUM(RowNum) <= 500 THEN '前五百' \n" + +// "WHEN SUM(RowNum) <= 1000 THEN '前一千' WHEN SUM(RowNum) <= 2000 THEN '前两千' END as tqq9_ranking FROM ( SELECT cInvCode, ROW_NUMBER() OVER (ORDER BY SUM(isum) DESC) as RowNum \n" + +// "FROM SA_SalesOrderMaster_SH ma(nolock) INNER JOIN SA_SalesOrderDetail_SH de(nolock) ON ma.somid = de.somid WHERE DATEDIFF(month, dInputDate,\n" + +// "GETDATE()) BETWEEN 1 AND 3 AND cInvoiceTitle NOT LIKE '%上海励齿%' AND cInvoiceTitle NOT LIKE '%北京励齿%' AND cInvoiceTitle NOT LIKE '%广州励齿%' AND Status != '草稿' \n" + +// "AND cInvCode NOT LIKE 'ZF%' GROUP BY cInvCode ) AS a WHERE a.RowNum <= 2000 GROUP BY cInvCode"; + //排名 + String rangesql = "/*dialect*/SELECT cInvCode AS tqq9_sku_lc,CASE WHEN RowNum <= 100 THEN '前一百'WHEN RowNum <= 500 THEN '前五百'WHEN RowNum <= 1000 THEN '前一千'WHEN RowNum <= 2000 THEN '前两千'ELSE '其他'END AS tqq9_ranking\n" + + "FROM (SELECT cInvCode,ROW_NUMBER() OVER (ORDER BY SUM(isum) DESC) AS RowNum FROM (SELECT cInvCode, isum FROM SA_SalesOrderMaster_SH ma (nolock)INNER JOIN SA_SalesOrderDetail_SH de (nolock) ON ma.somid = de.somid\n" + + "WHERE DATEDIFF(MONTH, dInputDate, GETDATE()) BETWEEN 1 AND 3 AND cInvoiceTitle NOT LIKE '%上海励齿%'AND Status != '草稿'AND cInvCode NOT LIKE 'ZF%'UNION ALL SELECT cInvCode, isum FROM SA_SalesOrderMaster_BJ ma (nolock)\n" + + "INNER JOIN SA_SalesOrderDetail_BJ de (nolock) ON ma.somid = de.somid WHERE DATEDIFF(MONTH, dInputDate, GETDATE()) BETWEEN 1 AND 3 AND cInvoiceTitle NOT LIKE '%北京励齿%' AND Status != '草稿' AND cInvCode NOT LIKE 'ZF%'\n" + + "UNION ALL SELECT cInvCode, isum FROM SA_SalesOrderMaster_GZ ma (nolock) INNER JOIN SA_SalesOrderDetail_GZ de (nolock) ON ma.somid = de.somid WHERE DATEDIFF(MONTH, dInputDate, GETDATE()) BETWEEN 1 AND 3\n" + + "AND cInvoiceTitle NOT LIKE '%广州励齿%'AND Status != '草稿' AND cInvCode NOT LIKE 'ZF%') AS combined GROUP BY cInvCode) AS a WHERE a.RowNum <= 2000 ORDER BY a.RowNum;"; + + + DataSet goodspackagDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("sys"), goodspackagesql); DataSet realbalanceDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("scm"), realbalancesql); DataSet saloutbillDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("scm"), saloutbillsql); DataSet purorderbillDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("scm"), purorderbillsql); - saloutbillDataSet = saloutbillDataSet.leftJoin(materialinventoryinfoDataSet).on("materialinventoryid", "materialinventoryid").select("tqq9_sku", "tqq9_org", "permonthsales", "last_2month_sum", "tqq9_totalqty", "tqq9_onorderinventory").finish(); - realbalanceDataSet = realbalanceDataSet.leftJoin(saloutbillDataSet).on("tqq9_sku", "tqq9_sku").select("tqq9_sku", "tqq9_org", "tqq9_totalinventory", "permonthsales", "last_2month_sum", "tqq9_totalqty", "tqq9_onorderinventory", "case when permonthsales<>0 then tqq9_totalinventory/permonthsales else -1 end tqq9_saledates").finish(); - realbalanceDataSet = realbalanceDataSet.leftJoin(purorderbillDataSet).on("tqq9_sku", "tqq9_sku").select("").select("tqq9_sku", "tqq9_org", "tqq9_totalqty", "tqq9_totalinventory", "tqq9_saledates", "permonthsales*0.5 tqq9_safeinventory", "tqq9_oninventory", "" + - "case when tqq9_saledates>=0 and tqq9_saledates<0.5 then '急需备货' when tqq9_saledates>0.5 and tqq9_saledates<=2 then '需备货' when tqq9_saledates>2 and tqq9_saledates<=4.5 then '不需备货' when tqq9_saledates>4.5 then '滞销' else '无' end tqq9_remark", "case when tqq9_saledates<=0.5 then last_2month_sum-tqq9_oninventory-tqq9_totalinventory else 0 end tqq9_suppleinventory", "" + - "tqq9_onorderinventory", "case when tqq9_totalinventory<>0 and tqq9_onorderinventory/tqq9_totalinventory>0.8 then '需注意' else '无' end tqq9_onorderemark").finish(); + DataSet onorder_shDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), onordersql_sh); + DataSet onorder_bjDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), onordersql_bj); + DataSet onorder_gzDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), onordersql_gz); +// DataSet range_shDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), range_sh); +// DataSet range_bjDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), range_bj); +// DataSet range_gzDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), range_gz); + DataSet rangeDataSet = DB.queryDataSet(this.getClass().getName(), DBRoute.of("lc"), rangesql); + goodspackagDataSet = goodspackagDataSet.leftJoin(realbalanceDataSet).on("tqq9_material", "tqq9_material").on("tqq9_isauto", "tqq9_isauto").on("tqq9_org", "tqq9_org").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", + "tqq9_shinventory", "tqq9_bjinventory", "tqq9_gzinventory", "tqq9_cdinventory", "case when tqq9_org= " + sh + " then tqq9_shinventory when tqq9_org= " + bj + " then tqq9_bjinventory when tqq9_org= " + gz + " then tqq9_gzinventory when tqq9_org= " + cd + " then tqq9_cdinventory else 0 end tqq9_totalinventory").finish(); + goodspackagDataSet = goodspackagDataSet.leftJoin(saloutbillDataSet).on("tqq9_sku", "tqq9_sku").on("tqq9_org", "tqq9_org").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", "tqq9_shinventory", "tqq9_bjinventory", + "tqq9_gzinventory", "tqq9_cdinventory", "tqq9_totalinventory", "tqq9_permonthsales_sh", "tqq9_permonthsales_bj", "tqq9_permonthsales_gz", "tqq9_permonthsales_cd", + "tqq9_totalqty_sh", "tqq9_totalqty_bj", "tqq9_totalqty_gz", "tqq9_totalqty_cd").finish().addField("case when tqq9_org= " + sh + " then tqq9_totalqty_sh when tqq9_org= " + bj + " then tqq9_totalqty_bj when tqq9_org= " + gz + " then tqq9_totalqty_gz when tqq9_org= " + cd + " then tqq9_totalqty_cd else 0 end", "tqq9_totalqty").addField("case when tqq9_org= " + sh + " then tqq9_permonthsales_sh when tqq9_org= " + bj + " then tqq9_permonthsales_bj when tqq9_org= " + gz + " then tqq9_permonthsales_gz when tqq9_org= " + cd + " then tqq9_permonthsales_cd else 0 end", "tqq9_permonthsales"); + purorderbillDataSet = purorderbillDataSet.leftJoin(materialpurchaseinfoDataSet).on("tqq9_purordermaterial", "tqq9_purordermaterial").select("tqq9_isauto", "tqq9_org", "tqq9_material", "tqq9_inventory_sh", "tqq9_inventory_bj", "tqq9_inventory_gz", "tqq9_inventory_cd").finish(); + goodspackagDataSet = goodspackagDataSet.leftJoin(purorderbillDataSet).on("tqq9_isauto", "tqq9_isauto").on("tqq9_org", "tqq9_org").on("tqq9_material", "tqq9_material").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", "tqq9_shinventory", "tqq9_bjinventory", + "tqq9_gzinventory", "tqq9_cdinventory", "tqq9_totalinventory", "tqq9_permonthsales_sh", "tqq9_permonthsales_bj", "tqq9_permonthsales_gz", "tqq9_permonthsales_cd", "tqq9_permonthsales", "tqq9_totalqty_sh", "tqq9_totalqty_bj", "tqq9_totalqty_gz", "tqq9_totalqty_cd", "tqq9_totalqty", "tqq9_inventory_sh", "tqq9_inventory_bj", "tqq9_inventory_gz", "tqq9_inventory_cd", + "case when tqq9_org= " + sh + " and tqq9_shinventory <> 0 and tqq9_permonthsales_sh <> 0 then tqq9_shinventory/tqq9_permonthsales_sh else -1 end tqq9_shsaledates", "case when tqq9_org= " + bj + " and tqq9_bjinventory <> 0 and tqq9_permonthsales_bj <> 0 then tqq9_bjinventory/tqq9_permonthsales_bj else -1 end tqq9_bjsaledates", + "case when tqq9_org= " + gz + " and tqq9_gzinventory <> 0 and tqq9_permonthsales_gz <> 0 then tqq9_gzinventory/tqq9_permonthsales_gz else -1 end tqq9_gzsaledates", "case when tqq9_org= " + cd + " and tqq9_cdinventory <> 0 and tqq9_permonthsales_cd <> 0 then tqq9_cdinventory/tqq9_permonthsales_cd else -1 end tqq9_cdsaledates", + "tqq9_permonthsales*0.5 tqq9_safeinventory").finish().addField("case when tqq9_org= " + sh + " then tqq9_shsaledates when tqq9_org= " + bj + " then tqq9_bjsaledates when tqq9_org= " + gz + " then tqq9_gzsaledates when tqq9_org= " + cd + " then tqq9_cdsaledates else 0 end", "tqq9_saledates").addField("case when tqq9_org= " + sh + " then tqq9_inventory_sh when tqq9_org= " + bj + " then tqq9_inventory_bj when tqq9_org= " + gz + " then tqq9_inventory_gz when tqq9_org= " + cd + " then tqq9_inventory_cd else 0 end", "tqq9_oninventory"); + goodspackagDataSet = goodspackagDataSet.leftJoin(onorder_shDataSet).on("tqq9_sku_lc", "tqq9_sku_lc").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", "tqq9_shinventory", "tqq9_bjinventory", + "tqq9_gzinventory", "tqq9_cdinventory", "tqq9_totalinventory", "tqq9_permonthsales_sh", "tqq9_permonthsales_bj", "tqq9_permonthsales_gz", "tqq9_permonthsales_cd", "tqq9_permonthsales", "tqq9_totalqty_sh", "tqq9_totalqty_bj", "tqq9_totalqty_gz", "tqq9_totalqty_cd", "tqq9_totalqty", "tqq9_inventory_sh", "tqq9_inventory_bj", "tqq9_inventory_gz", "tqq9_inventory_cd", "tqq9_oninventory", + "tqq9_shsaledates", "tqq9_bjsaledates", "tqq9_gzsaledates", "tqq9_cdsaledates", "tqq9_saledates", "tqq9_safeinventory", "tqq9_onorderinventory_SH").finish().addField("CASE WHEN tqq9_saledates = -1 THEN CASE WHEN tqq9_saledates = 0 AND tqq9_totalqty = 0 THEN '需关注' WHEN tqq9_saledates <> 0 AND tqq9_totalqty = 0 THEN '滞销'\n" + + "WHEN tqq9_totalqty <> 0 AND tqq9_saledates = 0 THEN '急需备货' END ELSE CASE WHEN tqq9_saledates <= 0.5 THEN '急需备货' WHEN tqq9_saledates > 0.5 AND tqq9_saledates <= 2 THEN '需备货'\n" + + "WHEN tqq9_saledates > 2 AND tqq9_saledates <= 4.5 THEN '不需备货' WHEN tqq9_saledates > 4.5 THEN '滞销' END END", "tqq9_remark"). + leftJoin(onorder_bjDataSet).on("tqq9_sku_lc", "tqq9_sku_lc").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", "tqq9_shinventory", "tqq9_bjinventory", + "tqq9_gzinventory", "tqq9_cdinventory", "tqq9_totalinventory", "tqq9_permonthsales_sh", "tqq9_permonthsales_bj", "tqq9_permonthsales_gz", "tqq9_permonthsales_cd", "tqq9_permonthsales", "tqq9_totalqty_sh", "tqq9_totalqty_bj", "tqq9_totalqty_gz", "tqq9_totalqty_cd", "tqq9_totalqty", "tqq9_inventory_sh", "tqq9_inventory_bj", "tqq9_inventory_gz", "tqq9_inventory_cd", "tqq9_oninventory", + "tqq9_shsaledates", "tqq9_bjsaledates", "tqq9_gzsaledates", "tqq9_cdsaledates", "tqq9_saledates", "tqq9_safeinventory", "case when tqq9_remark='急需备货' then tqq9_permonthsales*2-tqq9_oninventory-tqq9_totalinventory else null end tqq9_suppleinventory", "tqq9_onorderinventory_SH", "tqq9_onorderinventory_BJ", "tqq9_remark").finish(). + leftJoin(onorder_gzDataSet).on("tqq9_sku_lc", "tqq9_sku_lc").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", "tqq9_shinventory", "tqq9_bjinventory", + "tqq9_gzinventory", "tqq9_cdinventory", "tqq9_totalinventory", "tqq9_permonthsales_sh", "tqq9_permonthsales_bj", "tqq9_permonthsales_gz", "tqq9_permonthsales_cd", "tqq9_permonthsales", "tqq9_totalqty_sh", "tqq9_totalqty_bj", "tqq9_totalqty_gz", "tqq9_totalqty_cd", "tqq9_totalqty", "tqq9_inventory_sh", "tqq9_inventory_bj", "tqq9_inventory_gz", "tqq9_inventory_cd", "tqq9_oninventory", + "tqq9_shsaledates", "tqq9_bjsaledates", "tqq9_gzsaledates", "tqq9_cdsaledates", "tqq9_saledates", "tqq9_safeinventory", "tqq9_suppleinventory", "tqq9_onorderinventory_SH", "tqq9_onorderinventory_BJ", "tqq9_onorderinventory_GZ", "tqq9_remark").finish(); + goodspackagDataSet = goodspackagDataSet.leftJoin(rangeDataSet).on("tqq9_sku_lc", "tqq9_sku_lc").select("tqq9_sku", "tqq9_org", "tqq9_isauto", "tqq9_material", "tqq9_sku_lc", "tqq9_purchaser", "tqq9_onsale", "tqq9_totalupstock", "tqq9_shinventory", "tqq9_bjinventory", + "tqq9_gzinventory", "tqq9_cdinventory", "tqq9_totalinventory", "tqq9_permonthsales_sh", "tqq9_permonthsales_bj", "tqq9_permonthsales_gz", "tqq9_permonthsales_cd", "tqq9_permonthsales", "tqq9_totalqty_sh", "tqq9_totalqty_bj", "tqq9_totalqty_gz", "tqq9_totalqty_cd", "tqq9_totalqty", "tqq9_inventory_sh", "tqq9_inventory_bj", "tqq9_inventory_gz", "tqq9_inventory_cd", "tqq9_oninventory", + "tqq9_shsaledates", "tqq9_bjsaledates", "tqq9_gzsaledates", "tqq9_cdsaledates", "tqq9_saledates", "tqq9_remark", "tqq9_safeinventory", "tqq9_suppleinventory", "tqq9_onorderinventory_SH", "tqq9_onorderinventory_BJ", "tqq9_onorderinventory_GZ", "case when tqq9_org= " + sh + " then tqq9_onorderinventory_SH when tqq9_org= " + bj + " then tqq9_onorderinventory_BJ when tqq9_org= " + gz + " then tqq9_onorderinventory_GZ else 0 end tqq9_onorderinventory", + "case when tqq9_shsaledates > 4.5 or tqq9_shsaledates = -1 then tqq9_shinventory else 0 end tqq9_slowinv_sh", "case when tqq9_bjsaledates > 4.5 or tqq9_bjsaledates = -1 then tqq9_bjinventory else 0 end tqq9_slowinv_bj", + "case when tqq9_gzsaledates > 4.5 or tqq9_gzsaledates = -1 then tqq9_gzinventory else 0 end tqq9_slowinv_gz", "case when tqq9_cdsaledates > 4.5 or tqq9_cdsaledates = -1 then tqq9_cdinventory else 0 end tqq9_slowinv_cd", "tqq9_ranking").finish().addField("case when tqq9_onorderinventory <> 0 and tqq9_totalinventory <> 0 and tqq9_onorderinventory/tqq9_totalinventory>=0.8 then '需注意' else null end", "tqq9_onorderemark"); - realbalanceDataSet = realbalanceDataSet.where("1=1" + ((!tqq9_queryorg.isEmpty()) ? " and tqq9_org in(" + orgBuilder.substring(1) + ")" : "") + ((!tqq9_querysku.isEmpty()) ? " and tqq9_sku in(" + skuBuilder.substring(1) + ")" : "")); + goodspackagDataSet = goodspackagDataSet.where("1=1" + ((!tqq9_queryorg.isEmpty()) ? " and tqq9_org in(" + orgBuilder.substring(1) + ")" : "") + ((!tqq9_querysku.isEmpty()) ? " and tqq9_sku in(" + skuBuilder.substring(1) + ")" : "")); - DataSet copy1 = realbalanceDataSet.copy(); + DataSet copy1 = goodspackagDataSet.copy(); DynamicObjectCollection dynamicObjects = ORM.create().toPlainDynamicObjectCollection(copy1); Iterator iterator = dynamicObjects.iterator(); while (iterator.hasNext()) { DynamicObject next = iterator.next(); DynamicObject entry = new DynamicObject(entryentity.getDynamicObjectType()); - DynamicObject tqq9_sku = materialMap.get(next.getLong("tqq9_sku")); - entry.set("tqq9_sku", tqq9_sku);//sku(物料) + DynamicObject tqq9_sku = goodMap.get(next.getLong("tqq9_sku")); + DynamicObject tqq9_material = materialMap.get(next.getLong("tqq9_material")); + entry.set("tqq9_sku", tqq9_sku);//tqq9_sku + entry.set("tqq9_material", tqq9_material);//物料 entry.set("tqq9_skuname", tqq9_sku.getString("name"));//名称 entry.set("tqq9_skubrand", tqq9_sku.getDynamicObject("tqq9_brand"));//品牌 - entry.set("tqq9_unit", tqq9_sku.getDynamicObject("baseunit"));//基本单位 + entry.set("tqq9_unit", tqq9_material.getDynamicObject("baseunit"));//基本单位 entry.set("tqq9_org", adminorgMap.get(next.getLong("tqq9_org")));//业务归属(组织) - entry.set("tqq9_totalqty", next.get("tqq9_totalqty"));//合计销量 + entry.set("tqq9_purchaser", operatorMap.get(next.getLong("tqq9_purchaser")));//执行采购 + entry.set("tqq9_onsale", next.get("tqq9_onsale"));//上下架 + entry.set("tqq9_totalupstock", next.get("tqq9_totalupstock"));//需上传总库存 + entry.set("tqq9_shinventory", next.get("tqq9_shinventory"));//上海库存 + entry.set("tqq9_bjinventory", next.get("tqq9_bjinventory"));//北京库存 + entry.set("tqq9_gzinventory", next.get("tqq9_gzinventory"));//广州库存 + entry.set("tqq9_cdinventory", next.get("tqq9_cdinventory"));//成都库存 entry.set("tqq9_totalinventory", next.get("tqq9_totalinventory"));//总仓库存 + entry.set("tqq9_permonthsales_sh", next.get("tqq9_permonthsales_sh"));//上海月平均销量 + entry.set("tqq9_permonthsales_bj", next.get("tqq9_permonthsales_bj"));//北京月平均销量 + entry.set("tqq9_permonthsales_gz", next.get("tqq9_permonthsales_gz"));//广州月平均销量 + entry.set("tqq9_permonthsales_cd", next.get("tqq9_permonthsales_cd"));//成都月平均销量 + entry.set("tqq9_permonthsales", next.get("tqq9_permonthsales"));//月平均销量 + entry.set("tqq9_totalqty_sh", next.get("tqq9_totalqty_sh"));//上海合计销量 + entry.set("tqq9_totalqty_bj", next.get("tqq9_totalqty_bj"));//北京合计销量 + entry.set("tqq9_totalqty_gz", next.get("tqq9_totalqty_gz"));//广州合计销量 + entry.set("tqq9_totalqty_cd", next.get("tqq9_totalqty_cd"));//成都合计销量 + entry.set("tqq9_totalqty", next.get("tqq9_totalqty"));//合计销量 + entry.set("tqq9_shsaledates", next.get("tqq9_shsaledates"));//预计销售时间(上海) + entry.set("tqq9_bjsaledates", next.get("tqq9_bjsaledates"));//预计销售时间(北京) + entry.set("tqq9_gzsaledates", next.get("tqq9_gzsaledates"));//预计销售时间(广州) + entry.set("tqq9_cdsaledates", next.get("tqq9_cdsaledates"));//预计销售时间(成都) entry.set("tqq9_saledates", next.get("tqq9_saledates"));//预计销售时间 + entry.set("tqq9_remark", next.get("tqq9_remark"));//备货状态 entry.set("tqq9_safeinventory", next.get("tqq9_safeinventory"));//安全库存 + entry.set("tqq9_inventory_sh", next.get("tqq9_inventory_sh"));//上海在途库存 + entry.set("tqq9_inventory_bj", next.get("tqq9_inventory_bj"));//北京在途库存 + entry.set("tqq9_inventory_gz", next.get("tqq9_inventory_gz"));//广州在途库存 + entry.set("tqq9_inventory_cd", next.get("tqq9_inventory_cd"));//成都在途库存 entry.set("tqq9_oninventory", next.get("tqq9_oninventory"));//在途库存 - entry.set("tqq9_remark", next.get("tqq9_remark"));//备注 entry.set("tqq9_suppleinventory", next.get("tqq9_suppleinventory"));//待补库存 - entry.set("tqq9_onorderinventory", next.get("tqq9_onorderinventory"));//占单库存 + entry.set("tqq9_onorderinventory_SH", next.get("tqq9_onorderinventory_SH"));//上海占单库存 + entry.set("tqq9_onorderinventory_BJ", next.get("tqq9_onorderinventory_BJ"));//北京占单库存 + entry.set("tqq9_onorderinventory_GZ", next.get("tqq9_onorderinventory_GZ"));//广州占单库存 entry.set("tqq9_onorderemark", next.get("tqq9_onorderemark"));//占单库存备注 + entry.set("tqq9_slowinv_sh", next.get("tqq9_slowinv_sh"));//上海滞销库存 + entry.set("tqq9_slowinv_bj", next.get("tqq9_slowinv_bj"));//北京滞销库存 + entry.set("tqq9_slowinv_gz", next.get("tqq9_slowinv_gz"));//广州滞销库存 + entry.set("tqq9_slowinv_cd", next.get("tqq9_slowinv_cd"));//成都滞销库存 + entry.set("tqq9_ranking", next.get("tqq9_ranking"));// 排名 entryentity.add(entry); } dataEntity.set("tqq9_pursuggestrptentry", entryentity); @@ -280,10 +415,6 @@ public class PurSuggestRptFromPlugin extends AbstractFormPlugin implements Plugi DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(purapplybill.getLong("id"), "pm_purapplybill"); billShowParameter.setPkId(dynamicObject.get("id")); this.getView().showForm(billShowParameter); - - -// this.getView().showMessage("采购申请单:"+purapplybill.getString("billno")+",下推成功"); - }