diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/wms/wmsReportWork.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/wms/wmsReportWork.java index 95396223..921c8ee1 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/wms/wmsReportWork.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/wms/wmsReportWork.java @@ -51,7 +51,7 @@ public class wmsReportWork extends BaseEntity { private String SAPstatus; private String SAPmessage; /** 生产工单编码 */ - + //已经过账的值 private String SAPquantity; public String getSAPquantity() { diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java index 9b2a8cb3..03531d04 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesReportWorkController.java @@ -1,5 +1,6 @@ package com.op.mes.controller; +import java.io.IOException; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -23,6 +24,7 @@ import com.op.mes.domain.*; import com.op.mes.domain.dto.LineChartDto; import com.op.mes.domain.dto.LineChartSeriesDto; import com.op.mes.domain.dto.SysFactoryDto; +import com.op.mes.domain.vo.DynamicColumnVo; import com.op.system.api.domain.DataSourcePropertyDTO; import com.op.system.api.domain.SysUser; import com.op.system.api.domain.device.EquEquipmentDTO; @@ -147,12 +149,12 @@ public class MesReportWorkController extends BaseController { @RequiresPermissions("mes:reportWork:edit") @PutMapping("/reportSap") public AjaxResult reportSap(@RequestBody MesReportWork mesReportWork) { - R r = mesReportWorkService.reportSap(mesReportWork); - if(r.getCode()==200){ - return AjaxResult.success(); - }else{ - return AjaxResult.error("报工失败:"+r.getMsg()); - } + R r = mesReportWorkService.reportSap(mesReportWork); + if(r.getCode()==200){ + return AjaxResult.success(); + }else{ + return AjaxResult.error("报工失败:"+r.getMsg()); + } } /** @@ -384,124 +386,175 @@ public class MesReportWorkController extends BaseController { } } - /** - * 查询人员列表 - */ - @GetMapping("/getMesListUser") - public TableDataInfo getMesListUser(SysUser sysUser) { - startPage(); - List list = mesReportWorkService.getMesListUser(sysUser); - return getDataTable(list); + @GetMapping("/getMachineProductionList") + public List> getMachineProductionList(MesMachineReport mesMachineReport) { + List proNames = this.getMachineProductionTitle(mesMachineReport); + mesMachineReport.setProductNames(proNames); + List> list = mesReportWorkService.getMachineProductionList(mesMachineReport); + return list; } - /** - * 查询工单列表 - */ - @GetMapping("/getMesListWorkOrder") - public TableDataInfo getMesListWorkOrder(ProOrderWorkorderDTO proOrderWorkorderDTO) { - startPage(); - List list = mesReportWorkService.getMesListWorkOrder(proOrderWorkorderDTO); - return getDataTable(list); + @GetMapping("/getMachineProductionTitle") + public List getMachineProductionTitle(MesMachineReport mesMachineReport) { + List list = mesReportWorkService.getMachineProductionTitle(mesMachineReport); + return list; } - /** - * 查询工线体列表 - */ - @GetMapping("/getMesListEquip") - public TableDataInfo getMesListEquip(EquEquipmentDTO equEquipmentDTO) { - startPage(); - List list = mesReportWorkService.getMesListEquip(equEquipmentDTO); - return getDataTable(list); - } + @PostMapping("/getMachineProductionExport") + public void getMachineProductionExport(HttpServletResponse response,MesMachineReport mesMachineReport) { + List proNames = this.getMachineProductionTitle(mesMachineReport); + mesMachineReport.setProductNames(proNames); + List> list = mesReportWorkService.getMachineProductionList(mesMachineReport); - @PutMapping("/getBatchList") - public List getBatchList(@RequestBody ProOrderWorkorder ProOrderWorkorder) { - return mesReportWorkService.getBatchList(ProOrderWorkorder); - } + String title = "表主题"; + ArrayList excelCols = new ArrayList<>(); + excelCols.add(new ExcelCol("日期","date",20)); + for (DynamicColumnVo column : proNames) { + excelCols.add(new ExcelCol(column.getLabel(), column.getCode(), 20)); + } + excelCols.add(new ExcelCol("总产量","totalQuantity",20)); - /**获取母子报工记录(废弃)---改为:2.0查询各级报工详细列表**/ - @RequiresPermissions("mes:reportWork:report") - @GetMapping("/getReportList") - public List getReportList(MesReportWork mesReportWork) { - List rlist = mesReportWorkService.getReportList(mesReportWork); - return rlist; - } + String titleName = "成型机产量统计报表"; + SXSSFWorkbook workbook = null; - /**2.0查询各级报工详细列表**/ - @RequiresPermissions("mes:reportWork:report") - @GetMapping("/getAllLevelReportList") - public List getAllLevelReportList(MesReportWork mesReportWork) { - List rlist = mesReportWorkService.getAllLevelReportList(mesReportWork); - return rlist; + try { + //设置响应头 + response.setHeader("Content-disposition", + "attachment; filename="+ titleName); + response.setContentType("application/octet-stream;charset=UTF-8"); + ServletOutputStream outputStream = response.getOutputStream(); + //调用工具类 + workbook = ExcelMapUtil.initWorkbook(titleName, null, excelCols, list); + workbook.write(outputStream); + } catch (IOException e) { + e.printStackTrace(); + }finally { + if (workbook!=null){ + workbook.dispose(); + } + } } - @PostMapping("/submitReportPS") - public AjaxResult submitReportPS(@RequestBody List mesReportWorks) { - return toAjax(mesReportWorkService.submitReportPS(mesReportWorks)); - } + /** + * 查询人员列表 + */ + @GetMapping("/getMesListUser") + public TableDataInfo getMesListUser(SysUser sysUser) { + startPage(); + List list = mesReportWorkService.getMesListUser(sysUser); + return getDataTable(list); + } - @GetMapping("/getPrepareList") - public List getPrepareList(MesPrepareDetail mesPrepareDetail) { - List rlist = mesReportWorkService.getPrepareList(mesPrepareDetail); - return rlist; - } + /** + * 查询工单列表 + */ + @GetMapping("/getMesListWorkOrder") + public TableDataInfo getMesListWorkOrder(ProOrderWorkorderDTO proOrderWorkorderDTO) { + startPage(); + List list = mesReportWorkService.getMesListWorkOrder(proOrderWorkorderDTO); + return getDataTable(list); + } - /**获取报工打印信息**/ - @PutMapping("/getPutInOrderList") - public AjaxResult getPutInOrderList(@RequestBody MesReportWork mesReportWorks) { - return success(mesReportWorkService.getPutInOrderList(mesReportWorks)); - } + /** + * 查询工线体列表 + */ + @GetMapping("/getMesListEquip") + public TableDataInfo getMesListEquip(EquEquipmentDTO equEquipmentDTO) { + startPage(); + List list = mesReportWorkService.getMesListEquip(equEquipmentDTO); + return getDataTable(list); + } - public static void main(String args[]){ - DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:00:00"); - try { - Date start = dateFormat.parse("2023-10-12 09:00:00"); - Date end = dateFormat.parse("2023-10-13 18:00:00"); + @PutMapping("/getBatchList") + public List getBatchList(@RequestBody ProOrderWorkorder ProOrderWorkorder) { + return mesReportWorkService.getBatchList(ProOrderWorkorder); + } - Calendar tempStart = Calendar.getInstance(); - tempStart.setTime(start); + /**获取母子报工记录(废弃)---改为:2.0查询各级报工详细列表**/ + @RequiresPermissions("mes:reportWork:report") + @GetMapping("/getReportList") + public List getReportList(MesReportWork mesReportWork) { + List rlist = mesReportWorkService.getReportList(mesReportWork); + return rlist; + } - Calendar tempEnd = Calendar.getInstance(); - tempEnd.setTime(end); - while (tempStart.before(tempEnd)) { - System.out.println(dateFormat.format(tempStart.getTime())); - tempStart.add(Calendar.HOUR_OF_DAY, 1); + /**2.0查询各级报工详细列表**/ + @RequiresPermissions("mes:reportWork:report") + @GetMapping("/getAllLevelReportList") + public List getAllLevelReportList(MesReportWork mesReportWork) { + List rlist = mesReportWorkService.getAllLevelReportList(mesReportWork); + return rlist; + } + + @PostMapping("/submitReportPS") + public AjaxResult submitReportPS(@RequestBody List mesReportWorks) { + return toAjax(mesReportWorkService.submitReportPS(mesReportWorks)); + } + + @GetMapping("/getPrepareList") + public List getPrepareList(MesPrepareDetail mesPrepareDetail) { + List rlist = mesReportWorkService.getPrepareList(mesPrepareDetail); + return rlist; + } + + /**获取报工打印信息**/ + @PutMapping("/getPutInOrderList") + public AjaxResult getPutInOrderList(@RequestBody MesReportWork mesReportWorks) { + return success(mesReportWorkService.getPutInOrderList(mesReportWorks)); + } + + public static void main(String args[]){ + DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:00:00"); + try { + Date start = dateFormat.parse("2023-10-12 09:00:00"); + Date end = dateFormat.parse("2023-10-13 18:00:00"); + + Calendar tempStart = Calendar.getInstance(); + tempStart.setTime(start); + + Calendar tempEnd = Calendar.getInstance(); + tempEnd.setTime(end); + while (tempStart.before(tempEnd)) { + System.out.println(dateFormat.format(tempStart.getTime())); + tempStart.add(Calendar.HOUR_OF_DAY, 1); + } + } catch (ParseException e) { + e.printStackTrace(); } - } catch (ParseException e) { - e.printStackTrace(); } - } - /**获取最新领料单**/ - @PostMapping("/getNewPrepareData") - public List getNewPrepareData(@RequestBody MesPrepareDetail mesPrepareDetail) { - return mesReportWorkService.getNewPrepareData(mesPrepareDetail); - } + + /**获取最新领料单**/ + @PostMapping("/getNewPrepareData") + public List getNewPrepareData(@RequestBody MesPrepareDetail mesPrepareDetail) { + return mesReportWorkService.getNewPrepareData(mesPrepareDetail); + } /**删除新增的报工物料组成**/ - @DeleteMapping("/deleteBomRowNow/{id}") - public AjaxResult deleteBomRowNow(@PathVariable String id) { - return toAjax(mesReportWorkService.deleteBomRowNow(id)); - } + @DeleteMapping("/deleteBomRowNow/{id}") + public AjaxResult deleteBomRowNow(@PathVariable String id) { + return toAjax(mesReportWorkService.deleteBomRowNow(id)); + } //获取仓库下拉列表 - @GetMapping("/getWarehouseList") - public List getWarehouseList(MesReportWorkConsume workConsume) { - List rlist = mesReportWorkService.getWarehouseList(workConsume); - return rlist; - } - @PostMapping("/addDatasource") - public R addDatasource(@RequestBody DataSourcePropertyDTO dto){ - DataSourceProperty dataSourceProperty = new DataSourceProperty(); - BeanUtils.copyProperties(dto,dataSourceProperty); - dynamicDatasourceCreator.createDynamicDataSource(dataSourceProperty); - return R.ok(); - } + @GetMapping("/getWarehouseList") + public List getWarehouseList(MesReportWorkConsume workConsume) { + List rlist = mesReportWorkService.getWarehouseList(workConsume); + return rlist; + } - @PostMapping("/removeDatasource") - public R removeDatasource(@RequestBody DataSourcePropertyDTO dto){ - DataSourceProperty dataSourceProperty = new DataSourceProperty(); - BeanUtils.copyProperties(dto,dataSourceProperty); - dynamicRoutingDataSource.removeDataSource(dataSourceProperty.getPoolName()); - return R.ok(); - } + @PostMapping("/addDatasource") + public R addDatasource(@RequestBody DataSourcePropertyDTO dto){ + DataSourceProperty dataSourceProperty = new DataSourceProperty(); + BeanUtils.copyProperties(dto,dataSourceProperty); + dynamicDatasourceCreator.createDynamicDataSource(dataSourceProperty); + return R.ok(); + } + + @PostMapping("/removeDatasource") + public R removeDatasource(@RequestBody DataSourcePropertyDTO dto){ + DataSourceProperty dataSourceProperty = new DataSourceProperty(); + BeanUtils.copyProperties(dto,dataSourceProperty); + dynamicRoutingDataSource.removeDataSource(dataSourceProperty.getPoolName()); + return R.ok(); + } } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesMachineReport.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesMachineReport.java new file mode 100644 index 00000000..462be6c6 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesMachineReport.java @@ -0,0 +1,97 @@ +package com.op.mes.domain; + +import com.op.common.core.web.domain.BaseEntity; +import com.op.mes.domain.vo.DynamicColumnVo; + +import java.util.List; + +/** + * 成型机产量统计报表实体类 + * @date 2024-4-22 + */ +public class MesMachineReport extends BaseEntity { + private static final long serialVersionUID = 1L; + + private String productCode; //产品编码 + private String productName; //产品名称 + private String quantity; //数量 + private String unit; //单位 + private String ymd; //年月日 + private String productDateStart; //查询开始时间 + private String productDateEnd; //查询结束时间 + private String pduCode; //数据唯一键 + + private List productNames; //产品名称列表 + + public String getProductCode() { + return productCode; + } + + public void setProductCode(String productCode) { + this.productCode = productCode; + } + + public String getProductName() { + return productName; + } + + public void setProductName(String productName) { + this.productName = productName; + } + + public String getQuantity() { + return quantity; + } + + public void setQuantity(String quantity) { + this.quantity = quantity; + } + + public String getUnit() { + return unit; + } + + public void setUnit(String unit) { + this.unit = unit; + } + + public String getYmd() { + return ymd; + } + + public void setYmd(String ymd) { + this.ymd = ymd; + } + + public String getProductDateStart() { + return productDateStart; + } + + public void setProductDateStart(String productDateStart) { + this.productDateStart = productDateStart; + } + + public String getProductDateEnd() { + return productDateEnd; + } + + public void setProductDateEnd(String productDateEnd) { + this.productDateEnd = productDateEnd; + } + + public List getProductNames() { + return productNames; + } + + public void setProductNames(List productNames) { + this.productNames = productNames; + } + + public String getPduCode() { + return pduCode; + } + + public void setPduCode(String pduCode) { + this.pduCode = pduCode; + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/DynamicColumnVo.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/DynamicColumnVo.java new file mode 100644 index 00000000..d63ae59a --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/DynamicColumnVo.java @@ -0,0 +1,25 @@ +package com.op.mes.domain.vo; + + +public class DynamicColumnVo { + + private String label; + + private String code; + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java index b7c9cd2d..2e9ea33c 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java @@ -155,4 +155,6 @@ public interface MesReportWorkMapper { List getLineProData(MesReportWork dto); List getProductProData(MesReportWork dto); + + List getMachineProductionList(MesMachineReport mesMachineReport); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java index a3f37b90..d7ec54e8 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesReportWorkService.java @@ -2,6 +2,7 @@ package com.op.mes.service; import java.util.HashMap; import java.util.List; +import java.util.Map; import com.op.common.core.domain.R; import com.op.common.core.web.domain.AjaxResult; @@ -9,6 +10,7 @@ import com.op.mes.domain.*; import com.op.mes.domain.dto.LineChartDto; import com.op.mes.domain.dto.LineChartSeriesDto; import com.op.mes.domain.dto.SysFactoryDto; +import com.op.mes.domain.vo.DynamicColumnVo; import com.op.system.api.domain.SysUser; import com.op.system.api.domain.device.EquEquipmentDTO; import com.op.system.api.domain.dto.MesPrepareDetailDTO; @@ -82,6 +84,7 @@ public interface IMesReportWorkService { LineChartDto getLineChartData(MesReportProduction mesReportProduction); List getHourProductionList(MesHourReport mesHourReport); + List> getMachineProductionList(MesMachineReport mesMachineReport); List getProShifts(); @@ -122,4 +125,6 @@ public interface IMesReportWorkService { List getProductProData(MesReportWork dto); LineChartDto getMonthProData(MesReportProduction mesReportProduction); + + List getMachineProductionTitle(MesMachineReport mesMachineReport); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java index 03f5eccd..ed119994 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java @@ -4,10 +4,14 @@ import java.math.BigDecimal; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; +import java.util.stream.Collectors; import com.alibaba.fastjson2.JSONArray; import com.baomidou.dynamic.datasource.annotation.DS; +import com.google.common.collect.Lists; import com.op.common.core.domain.R; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.ServletUtils; @@ -16,6 +20,7 @@ import com.op.mes.domain.*; import com.op.mes.domain.dto.LineChartDto; import com.op.mes.domain.dto.LineChartSeriesDto; import com.op.mes.domain.dto.SysFactoryDto; +import com.op.mes.domain.vo.DynamicColumnVo; import com.op.mes.service.IWCSInterfaceService; import com.op.system.api.RemoteSapService; import com.op.system.api.domain.SysUser; @@ -51,6 +56,7 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { @Autowired private IWCSInterfaceService iWCSInterfaceService; + /** * 查询报工报表 * @@ -540,6 +546,99 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { return hourPros; } + @Override + @DS("#header.poolName") + public List getMachineProductionTitle(MesMachineReport mesMachineReport) { + // 开始日期 + String start = mesMachineReport.getProductDateStart(); + String end = mesMachineReport.getProductDateEnd(); + // 查询出来时间区间 + List listDate = getDateInterval(start,end); + + //查询sql数据 + List data = mesReportWorkMapper.getMachineProductionList(mesMachineReport); + //根据产品编码分组 + Map> map = data.stream().collect(Collectors.groupingBy(MesMachineReport::getProductCode)); + + //产品名称列表 + List dynamicColumn = new ArrayList<>(); + map.forEach((k,v) -> { + DynamicColumnVo dynamicColumnVo = new DynamicColumnVo(); + String productNameSet = v.stream() + .map(MesMachineReport::getProductName) + .distinct() + .collect(Collectors.joining(", ")); + + dynamicColumnVo.setCode(k); + dynamicColumnVo.setLabel(productNameSet); + dynamicColumn.add(dynamicColumnVo); + }); + return dynamicColumn; + } + + @Override + @DS("#header.poolName") + public List> getMachineProductionList(MesMachineReport mesMachineReport) { + // 开始日期 + String start = mesMachineReport.getProductDateStart(); + String end = mesMachineReport.getProductDateEnd(); + // 查询出来时间区间 + List listDate = getDateInterval(start,end); + List allProducts = mesMachineReport.getProductNames(); + + List dbMProductList = mesReportWorkMapper.getMachineProductionList(mesMachineReport); + + List> results = listDate.stream() + .map(date -> { + Map row = new HashMap<>(); + row.put("date", date); + + //对于每个日期,收集该日期下所有产品的产量数据 + Map dailyProductQuantities = dbMProductList.stream() + .filter(MesMachineReport -> MesMachineReport.getYmd().equals(date)) + .collect(Collectors.toMap( + MesMachineReport::getProductCode, + MesMachineReport::getQuantity + )); + + // 遍历所有产品,如果dailyProduct不存在此产品,添加产品,产量设为空 + for (DynamicColumnVo product : allProducts) { + String productCode = product.getCode(); + dailyProductQuantities.putIfAbsent(productCode, "0"); + } + + row.putAll(dailyProductQuantities); + + // 计算并添加当日总产量 + int totalQuantity = dailyProductQuantities.values().stream() + .mapToInt(Integer::parseInt) + .sum(); + row.put("totalQuantity", totalQuantity); + + return row; + }).collect(Collectors.toList()); + + return results; + } + + private List getDateInterval(String start, String end) { + DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + List dateList = Lists.newArrayList(); + + LocalDate localStart = LocalDate.parse(start,fmt); + LocalDate localEnd = LocalDate.parse(end,fmt); + + LocalDate nextDate = localStart; + + do { + String nextDateStr = nextDate.format(fmt); + dateList.add(nextDateStr); + nextDate = nextDate.plusDays(1); + }while (nextDate.compareTo(localEnd) <= 0); + return dateList; + + } + /**两个日期之间的所有日期**/ public static List getDays(String startTime,String endTime) { @@ -618,9 +717,8 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { } - public static void main(String[] args) { - Calendar calendar = Calendar.getInstance(); + Calendar calendar = Calendar.getInstance(); Date now = calendar.getTime(); calendar.set(Calendar.DAY_OF_MONTH, 1); Date firstDayOfMonth = calendar.getTime(); diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml index b9bb770b..77110d0e 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml @@ -740,6 +740,38 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" GROUP BY pow.product_code,pow.product_name + + insert into mes_report_work diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java index d6c81823..165685f1 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java @@ -323,12 +323,6 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { @DS("#header.poolName") public List getReportList(wmsReportWork mesReportWork) { List rlist = wmsProductPutMapper.getReportList(mesReportWork); -// //加上已经过账的数量reportCode work_order batch_number batch -// for (wmsReportWork wmsReportWork: -// rlist) { -// String SAPquantity= wmsProductPutMapper.selectWmsProductPutNum(wmsReportWork); -// wmsReportWork.setSAPquantity(SAPquantity); -// } return rlist; } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml index 80963fd3..c1c0bbb7 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml @@ -310,7 +310,8 @@ mes_report_work.product_name productName, CONVERT(date, GETDATE()) AS productDate, wms_product_put.SAP_status SAPstatus, - wms_product_put.SAP_message SAPmessage + wms_product_put.SAP_message SAPmessage, + CASE WHEN wms_product_put.SAP_status = 1 THEN wms_product_put.put_quantity ELSE 0 END AS SAPquantity FROM mes_report_work LEFT JOIN pro_order_workorder ON mes_report_work.workorder_code= pro_order_workorder.workorder_code @@ -326,10 +327,7 @@ mes_report_work.end_report - - -