From 83d29a1d0259aa18ccf0eebd7747b0fe1b66ac31 Mon Sep 17 00:00:00 2001 From: zds <2388969634@qq.com> Date: Wed, 19 Oct 2022 17:57:45 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AutoformulaServiceImpl.java | 170 ++++++++++++++++-- .../org/nl/wms/pf/wql/QPF_AUTOFORMULA01.wql | 1 + 2 files changed, 153 insertions(+), 18 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java index 9a53b198..61e2f5bc 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/service/impl/AutoformulaServiceImpl.java @@ -20,6 +20,7 @@ import org.nl.wql.core.bean.WQLObject; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.*; import java.util.concurrent.atomic.AtomicReference; @@ -81,6 +82,9 @@ public class AutoformulaServiceImpl implements AutoformulaService { double new_qty = workorder_qty; //纯粉重量 double net_qty = workorder_qty; + //rf最高开单重量 + HashMap rf_plan_map = new HashMap(); + if(waste_limit_down==0 && waste_limit_up==0){//不添加软废 //新料配粉环节 JSONObject ret = this.autoCalculationBy01_xinliao(json); @@ -129,6 +133,7 @@ public class AutoformulaServiceImpl implements AutoformulaService { for(int i=0;i= sum_ivt_qty){ + jo.put("can_qty",sum_ivt_qty); + }else{ + jo.put("can_qty",can_qty); + } + ivts.add(jo); + } } if(ivts.size()!=0){ //软废纯粉库存总量 @@ -145,7 +164,13 @@ public class AutoformulaServiceImpl implements AutoformulaService { for(int i=0;i rf_plan_map = new HashMap(); //1.需添加软废 if(waste_limit_down==100 || waste_limit_up== 100){ throw new BadRequestException("软废含量上限或下限不能等于100%!"); @@ -1620,7 +1655,22 @@ public class AutoformulaServiceImpl implements AutoformulaService { .addParam("quality_scode","02") .addParam("flag","22") .process().getResultJSONArray(0); - ivts.addAll(now_ivts); + double add_rate = MaterialSet.getDouble("add_rate"); + for(int j=0;j= sum_ivt_qty){ + jo.put("can_qty",sum_ivt_qty); + }else{ + jo.put("can_qty",can_qty); + } + ivts.add(jo); + } } if(ivts.size()!=0){ //软废纯粉库存总量 @@ -1628,7 +1678,7 @@ public class AutoformulaServiceImpl implements AutoformulaService { JSONArray ivts_new = new JSONArray(); for(int i=0;i=waste_limit_down_weight){ - Number rf_left_weight = waste_limit_up_weight;; + Number rf_left_weight = waste_limit_up_weight; //需配软废总重 double rf_total_weight = 0; //需配软废纯粉总重 @@ -1659,7 +1709,8 @@ public class AutoformulaServiceImpl implements AutoformulaService { for(int i=0;i rf_plan_map = new HashMap(); + if(waste_limit_up!=0){//添加软废 //R下 double waste_limit_down_weight = workorder_qty * waste_limit_down/100.0; @@ -2869,7 +2939,23 @@ public class AutoformulaServiceImpl implements AutoformulaService { .addParam("workorder_id",workorder_id) .addParam("flag","22") .process().getResultJSONArray(0); - ivts.addAll(now_ivts); + double add_rate = MaterialSet.getDouble("add_rate"); + for(int j=0;j= sum_ivt_qty){ + jo.put("can_qty",sum_ivt_qty); + }else{ + jo.put("can_qty",can_qty); + } + + ivts.add(jo); + } } if(ivts.size()!=0){ //软废纯粉库存总量 @@ -2877,10 +2963,17 @@ public class AutoformulaServiceImpl implements AutoformulaService { JSONArray ivts_new = new JSONArray(); for(int i=0;i rf_plan_map = new HashMap(); //获取可分配的软废集合 JSONArray MaterialSets = WQL.getWO("QPF_AUTOFORMULA01") .addParam("material_id",material_id) @@ -3171,7 +3275,23 @@ public class AutoformulaServiceImpl implements AutoformulaService { .addParam("workorder_id",workorder_id) .addParam("flag","22") .process().getResultJSONArray(0); - ivts.addAll(now_ivts); + double add_rate = MaterialSet.getDouble("add_rate"); + for(int j=0;j= sum_ivt_qty){ + jo.put("can_qty",sum_ivt_qty); + }else{ + jo.put("can_qty",can_qty); + } + ivts.add(jo); + } } if(ivts.size()!=0){ //1.计算配粉所需重量环节 @@ -3211,10 +3331,11 @@ public class AutoformulaServiceImpl implements AutoformulaService { JSONArray ivts_new = new JSONArray(); for(int i=0;i doubles = new ArrayList(); doubles.add(ivt_qty); + doubles.add(can_left_qty); //doubles集合 HashMap doubles_map = new HashMap(); //获取软废Bom @@ -3294,6 +3424,10 @@ public class AutoformulaServiceImpl implements AutoformulaService { //进行集合排序 Collections.sort(doubles); double rf_up_formula_qty = doubles.get(0); + + can_jo.put("can_left_qty",can_left_qty-rf_up_formula_qty); + rf_plan_map.put(rf_material_id,can_jo); + //计算不需要移库的添加剂 doubles_map.forEach((key,fi_bomdtl)->{ String fi_bomdtl_material_id = fi_bomdtl.getString("material_id"); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_AUTOFORMULA01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_AUTOFORMULA01.wql index dfab8008..78f7cf28 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_AUTOFORMULA01.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pf/wql/QPF_AUTOFORMULA01.wql @@ -339,6 +339,7 @@ WHERE 1 = 1 and producmaterialext.net_rate>0 + and ProductMaterialSet.add_rate>0 OPTION 输入.material_id <> "" ProductMaterialSet.material_id = 输入.material_id ENDOPTION From 1b39d95647352cf85087e55ea319671ef13edb5a Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Wed, 19 Oct 2022 19:52:44 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../statistics/service/impl/StatisticalReportServiceImpl.java | 2 +- .../org/nl/wms/statistics/wql/statistical_report_query_01.wql | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java index 5f738a7f..34187b70 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java @@ -175,7 +175,7 @@ public class StatisticalReportServiceImpl implements StatisticalReportService { jo7.put(material_id, String.format("%.3f",safe_qty)); //8、采购缺口:库存+待检+在途+最低储备-排产量 - double buy_qty = bom_qty - (now_ivt + noqty + notqty + safe_qty); + double buy_qty = bom_qty - (now_ivt + noin_qty + notqty + safe_qty); jo8.put(material_id, String.format("%.3f",buy_qty)); //6、覆盖日期:物料库存可坚持到哪一天:库存现存量减每天需求量,哪天<0,取前一天 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql index 7be95c9e..7d9d7e5e 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql @@ -486,7 +486,7 @@ UNION ALL SELECT - wo.planstart_time AS planstart_date, + LEFT(wo.planstart_time,10) AS planstart_date, COUNT(wo.workorder_id) AS product_num, MAX(ext.old_mark) AS old_mark, SUM(wo.workorder_qty) AS product_weight, From f44ff84e5543165d3eeaecb85031a86a1cf7b3af Mon Sep 17 00:00:00 2001 From: zds <2388969634@qq.com> Date: Thu, 20 Oct 2022 12:52:54 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/pa/rest/PerformancemstController.java | 10 +++++++++ .../wms/pa/service/PerformancemstService.java | 7 +++++++ .../impl/PerformancemstServiceImpl.java | 11 ++++++++++ .../rest/PowderOrderQueryController.java | 8 +++++++ .../service/PowderOrderQueryService.java | 9 ++++++++ .../impl/PowderOrderQueryServiceImpl.java | 21 +++++++++++++------ .../src/views/wms/pa/workloadstat/index.vue | 2 +- .../views/wms/pdm/produce/mouthtask/index.vue | 2 +- .../wms/pdm/produce/producetask/index.vue | 2 +- .../views/wms/pdm/produce/workorder/index.vue | 8 ++++++- .../wms/statistics/powderOrderQuery/index.vue | 2 +- 11 files changed, 71 insertions(+), 11 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/rest/PerformancemstController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/rest/PerformancemstController.java index f734fe66..0e439381 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/rest/PerformancemstController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/rest/PerformancemstController.java @@ -16,9 +16,13 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.*; + +import java.io.IOException; import java.util.Map; import lombok.extern.slf4j.Slf4j; +import javax.servlet.http.HttpServletResponse; + /** * @author Liuxy * @date 2021-12-28 @@ -48,6 +52,12 @@ public class PerformancemstController { return new ResponseEntity<>(performancemstService.workLoadStatQuery(whereJson,page),HttpStatus.OK); } + @ApiOperation("导出数据") + @GetMapping(value = "/workloadstat/download") + public void download(HttpServletResponse response, @RequestParam Map whereJson) throws IOException { + performancemstService.download(whereJson, response); + } + @PostMapping @Log("新增工作量汇报") @ApiOperation("新增工作量汇报") diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/PerformancemstService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/PerformancemstService.java index 1282931c..13d0bb22 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/PerformancemstService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/PerformancemstService.java @@ -94,4 +94,11 @@ public interface PerformancemstService { * 获取工作量统计表表头 */ JSONArray getHeader(); + + /** + * 导出数据 + * + * @param whereJson / + */ + void download(Map whereJson, HttpServletResponse response) throws IOException; } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/impl/PerformancemstServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/impl/PerformancemstServiceImpl.java index 68dc79a9..255095e5 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/impl/PerformancemstServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pa/service/impl/PerformancemstServiceImpl.java @@ -16,6 +16,7 @@ import lombok.extern.slf4j.Slf4j; import org.nl.exception.BadRequestException; import org.nl.modules.security.service.dto.JwtUserDto; import org.nl.modules.system.util.CodeUtil; +import org.nl.utils.FileUtil; import org.nl.utils.SecurityUtils; import org.nl.wms.pa.Enum.TestStatusEnum; import org.nl.wms.pa.service.PerformancemstService; @@ -27,7 +28,10 @@ import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -317,4 +321,11 @@ public class PerformancemstServiceImpl implements PerformancemstService { return jsonArrResult; } + @Override + @Transactional(rollbackFor = Exception.class) + public void download(Map whereJson, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + FileUtil.downloadExcel(list, response); + } + } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/rest/PowderOrderQueryController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/rest/PowderOrderQueryController.java index a4ab2184..d4cef9a3 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/rest/PowderOrderQueryController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/rest/PowderOrderQueryController.java @@ -14,6 +14,8 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.Map; /** @@ -41,4 +43,10 @@ public class PowderOrderQueryController { public ResponseEntity getHeader() { return new ResponseEntity<>(powderOrderQueryService.getHeader(), HttpStatus.OK); } + + @ApiOperation("导出数据") + @GetMapping(value = "/download") + public void download(HttpServletResponse response, @RequestParam Map whereJson) throws IOException { + powderOrderQueryService.download(whereJson, response); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/PowderOrderQueryService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/PowderOrderQueryService.java index 0af66ea5..b92aa09d 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/PowderOrderQueryService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/PowderOrderQueryService.java @@ -3,6 +3,8 @@ package org.nl.wms.statistics.service; import com.alibaba.fastjson.JSONArray; import org.springframework.data.domain.Pageable; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.Map; public interface PowderOrderQueryService { @@ -19,4 +21,11 @@ public interface PowderOrderQueryService { * 获取表头 */ JSONArray getHeader(); + + /** + * 导出数据 + * + * @param whereJson / + */ + void download(Map whereJson, HttpServletResponse response) throws IOException; } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java index 37840653..9b0a50d0 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/PowderOrderQueryServiceImpl.java @@ -1,12 +1,16 @@ package org.nl.wms.statistics.service.impl; +import cn.hutool.core.date.DateUnit; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import org.nl.utils.FileUtil; import org.nl.wms.basedata.master.constant.MaterOptTypeEnum; import org.nl.wms.basedata.master.service.ClassstandardService; import org.nl.wms.statistics.service.PowderOrderQueryService; @@ -15,9 +19,11 @@ import org.nl.wql.core.bean.WQLObject; import org.nl.wql.util.WqlUtil; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; -import java.util.HashMap; -import java.util.Map; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.*; @Service @RequiredArgsConstructor @@ -112,10 +118,6 @@ public class PowderOrderQueryServiceImpl implements PowderOrderQueryService { jsonResult4.put("prop",json.getString("material_id")); jsonResult4.put("label","物料" + NumberUtil.add(String.valueOf(i), "1") + ""); jsonResultArr.add(jsonResult4); -// JSONObject jsonResult5 = new JSONObject(); -// jsonResult5.put("prop",json.getString("material_code")+""); -// jsonResult5.put("label","物料编码"); -// jsonResultArr.add(jsonResult5); JSONObject jsonResult6 = new JSONObject(); jsonResult6.put("prop",json.getString("material_id")+"pcsn"); jsonResult6.put("label","批次"); @@ -149,4 +151,11 @@ public class PowderOrderQueryServiceImpl implements PowderOrderQueryService { return jsonResultArr; } + + @Override + @Transactional(rollbackFor = Exception.class) + public void download(Map whereJson, HttpServletResponse response) throws IOException { + List> list = new ArrayList<>(); + FileUtil.downloadExcel(list, response); + } } diff --git a/mes/qd/src/views/wms/pa/workloadstat/index.vue b/mes/qd/src/views/wms/pa/workloadstat/index.vue index 67149739..13b12f9f 100644 --- a/mes/qd/src/views/wms/pa/workloadstat/index.vue +++ b/mes/qd/src/views/wms/pa/workloadstat/index.vue @@ -84,7 +84,7 @@ export default { add: false, edit: false, del: false, - download: false, + download: true, reset: true } }) diff --git a/mes/qd/src/views/wms/pdm/produce/mouthtask/index.vue b/mes/qd/src/views/wms/pdm/produce/mouthtask/index.vue index d9885cc2..049816aa 100644 --- a/mes/qd/src/views/wms/pdm/produce/mouthtask/index.vue +++ b/mes/qd/src/views/wms/pdm/produce/mouthtask/index.vue @@ -160,7 +160,7 @@ - + diff --git a/mes/qd/src/views/wms/pdm/produce/producetask/index.vue b/mes/qd/src/views/wms/pdm/produce/producetask/index.vue index 15971861..aa48dbae 100644 --- a/mes/qd/src/views/wms/pdm/produce/producetask/index.vue +++ b/mes/qd/src/views/wms/pdm/produce/producetask/index.vue @@ -174,7 +174,7 @@ - + diff --git a/mes/qd/src/views/wms/pdm/produce/workorder/index.vue b/mes/qd/src/views/wms/pdm/produce/workorder/index.vue index 57fbcefa..8df515c2 100644 --- a/mes/qd/src/views/wms/pdm/produce/workorder/index.vue +++ b/mes/qd/src/views/wms/pdm/produce/workorder/index.vue @@ -226,6 +226,7 @@ size="mini" :data="crud.data" style="width: 100%;" + :max-height="590" :highlight-current-row="true" @selection-change="mySelectionChange" > @@ -308,7 +309,12 @@ export default { name: 'workorder', components: { ChangeDialog, ViewDialog, AddDialog, crudOperation, rrOperation, udOperation, pagination }, cruds() { - return CRUD({ title: '工令', idField: 'workorder_id', url: 'api/workorder', crudMethod: { ...workorder }, + return CRUD({ title: '工令', + props: { + // 每页数据条数 + size: 20 + }, + idField: 'workorder_id', url: 'api/workorder', crudMethod: { ...workorder }, optShow: { add: true, edit: false, diff --git a/mes/qd/src/views/wms/statistics/powderOrderQuery/index.vue b/mes/qd/src/views/wms/statistics/powderOrderQuery/index.vue index be3a2fa9..6501ee15 100644 --- a/mes/qd/src/views/wms/statistics/powderOrderQuery/index.vue +++ b/mes/qd/src/views/wms/statistics/powderOrderQuery/index.vue @@ -118,7 +118,7 @@ export default { add: false, edit: false, del: false, - download: false, + download: true, reset: true } }) From 22deae4b647d4257590be77d9254963dc53abda3 Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Thu, 20 Oct 2022 16:18:34 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mes/qd/src/views/wms/sch/task/index.vue | 14 +++++++------- .../src/views/wms/statistics/materPlan/index.vue | 12 +++++++----- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/mes/qd/src/views/wms/sch/task/index.vue b/mes/qd/src/views/wms/sch/task/index.vue index 18850094..a819bcfd 100644 --- a/mes/qd/src/views/wms/sch/task/index.vue +++ b/mes/qd/src/views/wms/sch/task/index.vue @@ -147,7 +147,7 @@ @selection-change="crud.selectionChangeHandler" > - + @@ -205,7 +205,7 @@ @@ -234,8 +234,8 @@ export default { return CRUD({ title: '任务', url: 'api/task', - idField: 'taskdtl_id', - sort: 'taskdtl_id,desc', + idField: 'task_id', + sort: 'task_id,desc', crudMethod: { ...crudTask }, query: { task_code:'',vehicle_code:'',start_point_code:'',next_point_code:'',task_type:'',taskdtl_type:'',finished_type:'',task_status:"" @@ -253,7 +253,7 @@ export default { return { viewDialogVisible: false, fullscreen: false, - taskdtl_id: '', + task_id: '', currentComponent: '', openParam: {}, create_time: [], @@ -336,7 +336,7 @@ export default { return } const data = { - taskdtl_id: command.row.taskdtl_id, + task_id: command.row.task_id, method_name: method_name } crudTask.operation(data).then(res => { @@ -347,7 +347,7 @@ export default { }) }, view(row) { - this.taskdtl_id = row.taskdtl_id + this.task_id = row.task_id switch (row.task_type) { case '01':// 入库 this.fullscreen = true diff --git a/mes/qd/src/views/wms/statistics/materPlan/index.vue b/mes/qd/src/views/wms/statistics/materPlan/index.vue index fcd16f96..e32e9810 100644 --- a/mes/qd/src/views/wms/statistics/materPlan/index.vue +++ b/mes/qd/src/views/wms/statistics/materPlan/index.vue @@ -11,7 +11,7 @@ label-width="80px" label-suffix=":" > - + @@ -30,9 +30,10 @@ style="width: 100%;" @selection-change="crud.selectionChangeHandler" > - + @@ -45,9 +46,10 @@ style="width: 100%;" @selection-change="crud.selectionChangeHandler" > - + From 88e0fded1511c2b5e205d9ce32bd743a162e0ee9 Mon Sep 17 00:00:00 2001 From: "ZHOUZ\\Noble'lift" <1014987728@qq.com> Date: Thu, 20 Oct 2022 19:56:12 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/StatisticalReportServiceImpl.java | 53 ++++++++++--------- .../wql/statistical_report_query_01.wql | 8 +++ .../views/wms/statistics/materPlan/index.vue | 23 +++++++- 3 files changed, 57 insertions(+), 27 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java index 34187b70..b3eec987 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/service/impl/StatisticalReportServiceImpl.java @@ -115,7 +115,7 @@ public class StatisticalReportServiceImpl implements StatisticalReportService { //1、库存现存量:现有库存 - 开单领料重量 JSONObject mater_ivt = WQL.getWO("statistical_report_query_01").addParam("flag", "4").addParam("material_id", material_id).process().uniqueResult(0); //查询开单领料重量 - JSONObject form_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "5").addParam("material_id", material_id).addParam("begin_time",begin_time).addParam("end_time",end_time).process().uniqueResult(0); + JSONObject form_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "5").addParam("material_id", material_id).process().uniqueResult(0); double now_ivt = 0; double need_qty = 0; @@ -126,15 +126,15 @@ public class StatisticalReportServiceImpl implements StatisticalReportService { need_qty = form_qty.getDoubleValue("qty"); } BigDecimal canuse_num = NumberUtil.sub(now_ivt - need_qty); - jo1.put(material_id, String.format("%.3f",canuse_num)); + jo1.put(material_id, String.format("%.3f", canuse_num)); //2、排产需求量(未开单的工令重量+排产未生成工令日计划重量)根据bom计算需要多少原料库存重量: - JSONObject nedd_mater = WQL.getWO("statistical_report_query_01").addParam("flag", "6").addParam("material_id", material_id).addParam("begin_time",begin_time).addParam("end_time",end_time).process().uniqueResult(0); + JSONObject nedd_mater = WQL.getWO("statistical_report_query_01").addParam("flag", "6").addParam("material_id", material_id).addParam("begin_time", begin_time).addParam("end_time", end_time).process().uniqueResult(0); double bom_qty = 0; if (ObjectUtil.isNotEmpty(nedd_mater)) { bom_qty = nedd_mater.getDoubleValue("qty"); } - jo2.put(material_id, String.format("%.3f",bom_qty)); + jo2.put(material_id, String.format("%.3f", bom_qty)); //3、待检入库量:sum(此物料未确认的到货单的单据数-入库数) JSONObject num_jo = WQL.getWO("statistical_report_query_01").addParam("flag", "7").addParam("material_id", material_id).process().uniqueResult(0); @@ -158,13 +158,13 @@ public class StatisticalReportServiceImpl implements StatisticalReportService { notqty = 0; } } - jo4.put(material_id, String.format("%.3f",noin_qty)); + jo4.put(material_id, String.format("%.3f", noin_qty)); //4、合同在途:订单量-到货量 - jo6.put(material_id, String.format("%.3f",notqty)); + jo6.put(material_id, String.format("%.3f", notqty)); //5、库/需差额量 :库存现存量-排产需求量 - jo3.put(material_id, String.format("%.3f",(Double.parseDouble(canuse_num + "") - bom_qty))); + jo3.put(material_id, String.format("%.3f", (Double.parseDouble(canuse_num + "") - bom_qty))); //7、最低储备定额:物料的安全库存量下限 JSONObject safe_jo = WQLObject.getWQLObject("ST_IVT_MaterialSafeIvt").query("material_id = '" + material_id + "'").uniqueResult(0); @@ -172,29 +172,29 @@ public class StatisticalReportServiceImpl implements StatisticalReportService { if (ObjectUtil.isNotEmpty(safe_jo)) { safe_qty = safe_jo.getDoubleValue("safe_ivt_down"); } - jo7.put(material_id, String.format("%.3f",safe_qty)); + jo7.put(material_id, String.format("%.3f", safe_qty)); //8、采购缺口:库存+待检+在途+最低储备-排产量 - double buy_qty = bom_qty - (now_ivt + noin_qty + notqty + safe_qty); - jo8.put(material_id, String.format("%.3f",buy_qty)); + double buy_qty = bom_qty + safe_qty - (canuse_num.doubleValue() + noin_qty + notqty); + jo8.put(material_id, String.format("%.3f", buy_qty)); //6、覆盖日期:物料库存可坚持到哪一天:库存现存量减每天需求量,哪天<0,取前一天 for (int j = 1; j <= betweenDay; j++) { DateTime newDate = DateUtil.offsetDay(date1, j); //查询该物料当天的需求量 - JSONObject today_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "8").addParam("material_id", material_id).addParam("begin_time",newDate).process().uniqueResult(0); + JSONObject today_qty = WQL.getWO("statistical_report_query_01").addParam("flag", "8").addParam("material_id", material_id).addParam("begin_time", newDate.toString().substring(0, 10) + "%").process().uniqueResult(0); double need_weight = 0; - if (ObjectUtil.isNotEmpty(today_qty)){ + if (ObjectUtil.isNotEmpty(today_qty)) { need_weight = today_qty.getDoubleValue("qty"); } - if (now_ivt materPlanDtlQuery(Map whereJson) { String begin_time = MapUtil.getStr(whereJson, "begin_time"); String end_time = MapUtil.getStr(whereJson, "end_time"); + String org_id = MapUtil.getStr(whereJson, "org_id"); //查询日期内的排产日计划物料信息 - JSONArray jsonArr = WQL.getWO("statistical_report_query_01").addParam("flag", "9").addParam("begin_time",begin_time).addParam("end_time",end_time).process().getResultJSONArray(0); + JSONArray jsonArr = WQL.getWO("statistical_report_query_01").addParam("flag", "9").addParam("begin_time", begin_time).addParam("end_time", end_time).addParam("org_id", org_id).process().getResultJSONArray(0); JSONArray rows = new JSONArray(); for (int i = 0; i < jsonArr.size(); i++) { JSONObject row = jsonArr.getJSONObject(i); String material_code = row.getString("material_code"); - JSONObject bom = WQLObject.getWQLObject("md_pd_productbom").query("material_id = '"+row.get("material_id")+"'").uniqueResult(0); - if (ObjectUtil.isEmpty(bom)){ - throw new BadRequestException("未查询到该产品 "+material_code+" 对应BOM信息"); + JSONObject bom = WQLObject.getWQLObject("md_pd_productbom").query("material_id = '" + row.get("material_id") + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(bom)) { + throw new BadRequestException("未查询到该产品 " + material_code + " 对应BOM信息"); } - row.put("1",row.getString("planstart_date")); - row.put("2",row.getString("old_mark")); - row.put("3",row.getString("product_num")); + row.put("1", row.getString("planstart_date")); + row.put("2", row.getString("old_mark")); + row.put("3", row.getString("product_num")); //查询该物料对应的bom明细 - JSONArray bom_dtl = WQLObject.getWQLObject("md_pd_productbomdtl").query("bom_id = '"+bom.getString("bom_id")+"'").getResultJSONArray(0); + JSONArray bom_dtl = WQLObject.getWQLObject("md_pd_productbomdtl").query("bom_id = '" + bom.getString("bom_id") + "'").getResultJSONArray(0); for (int j = 0; j < bom_dtl.size(); j++) { JSONObject dtl = bom_dtl.getJSONObject(j); double standard_rate = dtl.getDoubleValue("standard_rate"); double qty = standard_rate * row.getDoubleValue("product_weight") * 0.01; - row.put(dtl.getString("material_id"),String.format("%.3f",qty)); + row.put(dtl.getString("material_id"), String.format("%.3f", qty)); } rows.add(row); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql index 7d9d7e5e..aa1cbac6 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/statistics/wql/statistical_report_query_01.wql @@ -27,6 +27,7 @@ 输入.create_mode TYPEAS s_string 输入.bill_status TYPEAS s_string 输入.material_id TYPEAS s_string + 输入.org_id TYPEAS s_string [临时表] @@ -474,6 +475,7 @@ mps_bd_productdailyplan plan LEFT JOIN md_me_producmaterialext ext ON ext.material_id = plan.material_id LEFT JOIN md_me_materialbase materialbase ON materialbase.material_id = plan.material_id + LEFT JOIN sys_dept dept ON dept.`code` = plan.plan_org_code WHERE plan.status = '01' OPTION 输入.begin_time <> "" @@ -482,6 +484,9 @@ OPTION 输入.end_time <> "" plan.planstart_date <= 输入.end_time ENDOPTION + OPTION 输入.org_id <> "" + dept.dept_id = 输入.org_id + ENDOPTION UNION ALL @@ -505,6 +510,9 @@ ENDOPTION OPTION 输入.end_time <> "" wo.planstart_time <= 输入.end_time + ENDOPTION + OPTION 输入.org_id <> "" + wo.org_id = 输入.org_id ENDOPTION GROUP BY planstart_time,wo.material_id diff --git a/mes/qd/src/views/wms/statistics/materPlan/index.vue b/mes/qd/src/views/wms/statistics/materPlan/index.vue index e32e9810..76e5b633 100644 --- a/mes/qd/src/views/wms/statistics/materPlan/index.vue +++ b/mes/qd/src/views/wms/statistics/materPlan/index.vue @@ -14,6 +14,23 @@ + + + + + @@ -69,6 +86,7 @@ import crudInspectionsheetmst from '@/api/wms/ql/inspectionsheetmst' import { download } from '@/api/data' import { downloadFile } from '@/utils' import Date from '@/utils/datetime' +import workorder from '@/api/wms/pdm/workorder' const start = new Date() export default { @@ -98,6 +116,7 @@ export default { cols: [], cols2: [], dtlList: [], + Depts: [], statusList: [], permission: {}, rules: {} @@ -106,7 +125,9 @@ export default { beforeCreate() { }, created() { - + workorder.getDepts().then(res => { + this.Depts = res + }) }, methods: { // 钩子:在获取表格数据之前执行,false 则代表不获取数据 From a161a8982deb912e4451c1448378f69a490a3b89 Mon Sep 17 00:00:00 2001 From: zds <2388969634@qq.com> Date: Thu, 20 Oct 2022 20:42:46 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/nl/wms/pdm/service/impl/DailyplanServiceImpl.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/DailyplanServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/DailyplanServiceImpl.java index 3bed4152..c6aba6f6 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/DailyplanServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pdm/service/impl/DailyplanServiceImpl.java @@ -457,11 +457,8 @@ public class DailyplanServiceImpl implements DailyplanService { if (StrUtil.isNotEmpty(query.getString("nowstart_date"))) { String nowstart_date2 = query.getString("nowstart_date").substring(0,10); Date date2 = DateUtil.parse(nowstart_date2); - //指定日期小于最晚的日计划日期 - if(date2.getTime() >= date.getTime()){ - nowstart_date = nowstart_date2; - date = date2; - } + nowstart_date = nowstart_date2; + date = date2; } }