From 4e661cabe876540025063a113f355e4620be0f6c Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Tue, 15 Oct 2024 18:09:04 +0800 Subject: [PATCH 1/5] =?UTF-8?q?cpk=E5=88=86=E6=9E=90=E6=8A=A5=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/system/api/domain/mes/ProLine.java | 93 +++++++++++++ .../system/api/domain/quality/ChartDTO.java | 39 +++++- .../ProOrderWorkorderController.java | 2 +- .../controller/QcStaticTableController.java | 43 +++++- .../java/com/op/quality/domain/QcCPKInfo.java | 20 ++- .../quality/mapper/QcStaticTableMapper.java | 9 +- .../service/IQcStaticTableService.java | 5 +- .../impl/QcStaticTableServiceImpl.java | 124 ++++++++++++++---- .../mapper/quality/QcStaticTableMapper.xml | 60 ++++++++- 9 files changed, 361 insertions(+), 34 deletions(-) create mode 100644 op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java new file mode 100644 index 000000000..486f25833 --- /dev/null +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java @@ -0,0 +1,93 @@ +package com.op.system.api.domain.mes; + +//线体成型机类 +public class ProLine { + private String key; + private String label; + private String lineCode; + private String lineName; + private Long efficiency; + private String dh; + private String factoryDh; + private String umrez; + + public String getUmrez() { + return umrez; + } + + public void setUmrez(String umrez) { + this.umrez = umrez; + } + + public String getFactoryDh() { + return factoryDh; + } + + public void setFactoryDh(String factoryDh) { + this.factoryDh = factoryDh; + } + + public Long getEfficiency() { + return efficiency; + } + + public void setEfficiency(Long efficiency) { + this.efficiency = efficiency; + } + + public String getDh() { + return dh; + } + + public void setDh(String dh) { + this.dh = dh; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + @Override + public String toString() { + return "ProLine{" + + "key='" + key + '\'' + + ", label='" + label + '\'' + + '}'; + } + + public String getKey() { + return key; + } + + public void setKey(String key) { + this.key = key; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public ProLine(String key, String label) { + this.key = key; + this.label = label; + } + + public ProLine() { + } +} diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/ChartDTO.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/ChartDTO.java index c070aa2ee..8cc3049bd 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/ChartDTO.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/quality/ChartDTO.java @@ -14,10 +14,47 @@ import java.util.List; * @author zxl * @date 2023-07-18 */ -public class ChartDTO { +public class ChartDTO{ private String name; private String type; private List data; + private Label label; + + public static class Label{ + private Boolean show; + private String position; + public Label(Boolean show,String position) { + this.show = show; + this.position = position; + } + public void setShow(Boolean show) { + this.show = show; + } + + public Boolean getShow() { + return show; + } + + public String getPosition() { + return position; + } + + public void setPosition(String position) { + this.position = position; + } + } + + public Label getLabel() { + return label; + } + + public void setLabel(Label label) { + this.label = label; + } + + public ChartDTO() { + this.label = new Label(true,"top"); + } public String getType() { return type; diff --git a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java index ea57ee58c..9d6f77c1c 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java @@ -303,7 +303,7 @@ public class ProOrderWorkorderController extends BaseController { newBatch.setWorkorderCode(workorderCode); return toAjax(proOrderWorkorderService.deleteWorkOrderBatch(newBatch)); } - + /**获取线体**/ @GetMapping("/getProdLineList") public List getProdLineList() { return proOrderWorkorderService.getProdLineList(); diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java index ba6bd2885..2fa86accc 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java @@ -15,6 +15,7 @@ import com.op.common.core.domain.ExcelCol; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.poi.ExcelMapUtil; import com.op.quality.domain.*; +import com.op.system.api.domain.mes.ProLine; import com.op.system.api.domain.quality.ChartDTO; import com.op.system.api.domain.quality.ChartSeriesDTO; import com.op.system.api.domain.quality.FactoryDto; @@ -651,6 +652,12 @@ public class QcStaticTableController extends BaseController { } } } + + @GetMapping("/getProdLineList") + public List getProdLineList() { + return qcStaticTableService.getProdLineList(); + } + /** * cpk分析--表头 **/ @@ -664,7 +671,41 @@ public class QcStaticTableController extends BaseController { **/ @GetMapping("/getTableCPKList") @Log(title = "CPK分析报表-表格数据", businessType = BusinessType.QUERY) - public List getTableCPKList(QcCPKInfo qcCPKInfo) { + public QcCPKInfo getTableCPKList(QcCPKInfo qcCPKInfo) { return qcStaticTableService.getTableCPKList(qcCPKInfo); } + @PostMapping("/exportCPKList") + public void exportCPKList(HttpServletResponse response,QcCPKInfo qcCPKInfo) { + List list = qcStaticTableService.getTableCPKList(qcCPKInfo).getTableData(); + + + QcCPKInfo titleCols = qcStaticTableService.getTableCPKTitle(qcCPKInfo); + List title2Cols = titleCols.getTitleCol1(); + String titleRow1 = "CPK明细报表"; + //表格结构数据 + ArrayList excelCols = new ArrayList<>(); + excelCols.add(new ExcelCol("CPK品类", "cpkTypeName", 30)); + for (int n = 0; n < title2Cols.size(); n++) { + excelCols.add(new ExcelCol(title2Cols.get(n), "date" + (n+1), 20)); + } + excelCols.add(new ExcelCol("平均值", "cpkAvg", 30)); + String titleName = "CPK明细"; + SXSSFWorkbook workbook = null; + try { + //设置响应头 + response.setHeader("Content-disposition", + "attachment; filename=" + titleName); + response.setContentType("application/octet-stream;charset=UTF-8"); + ServletOutputStream outputStream = response.getOutputStream(); + //调用工具类 + workbook = ExcelMapUtil.initWorkbook(titleName, titleRow1, excelCols, list); + workbook.write(outputStream); + } catch (Exception e) { + e.printStackTrace(); + } finally { + if (workbook != null) { + workbook.dispose(); + } + } + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCPKInfo.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCPKInfo.java index cf4507774..994a6926e 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCPKInfo.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCPKInfo.java @@ -17,7 +17,6 @@ import java.util.List; */ public class QcCPKInfo extends BaseEntity { private static final long serialVersionUID = 1L; - private List titleCol1; private String checkType; private String projectId; @@ -40,6 +39,25 @@ public class QcCPKInfo extends BaseEntity { private BigDecimal upperDiff; private BigDecimal downDiff; + List tableData; + List echartData; + + public List getTableData() { + return tableData; + } + + public void setTableData(List tableData) { + this.tableData = tableData; + } + + public List getEchartData() { + return echartData; + } + + public void setEchartData(List echartData) { + this.echartData = echartData; + } + public BigDecimal getUpperDiff() { return upperDiff; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java index 04b9232dc..68149dfd8 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java @@ -5,6 +5,7 @@ import java.util.List; import java.util.Map; import com.op.quality.domain.*; +import com.op.system.api.domain.mes.ProLine; import com.op.system.api.domain.quality.FactoryDto; import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Mapper; @@ -107,7 +108,13 @@ public interface QcStaticTableMapper { String getActualValues(QcCPKInfo qcCPKInfo); List getDlMxList(QcCPKInfo qcCPKInfo); - List getDLData(QcStaticTable qcStaticTable); + @MapKey("yearMonth") + Map getDLData(QcCPKInfo qcCPKInfo); List getCpkTypeList(QcCPKInfo qcCPKInfo); + + List getProdLineList(); + + @MapKey("yearMonth") + Map getDLDataDay(QcCPKInfo qcCPKInfo); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java index 76e6db170..47b1bd968 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java @@ -8,6 +8,7 @@ import com.op.quality.domain.QcCPKInfo; import com.op.quality.domain.QcCheckDetail; import com.op.quality.domain.QcCheckType; import com.op.quality.domain.QcStaticTable; +import com.op.system.api.domain.mes.ProLine; import com.op.system.api.domain.quality.ChartSeriesDTO; import com.op.system.api.domain.quality.FactoryDto; @@ -74,5 +75,7 @@ public interface IQcStaticTableService { List getDLTableMXList(QcCPKInfo qcCPKInfo); QcCPKInfo getTableCPKTitle(QcCPKInfo qcCPKInfo); - List getTableCPKList(QcCPKInfo qcCPKInfo); + QcCPKInfo getTableCPKList(QcCPKInfo qcCPKInfo); + + List getProdLineList(); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java index 33fa2c0a3..98f14a1e3 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java @@ -1,6 +1,7 @@ package com.op.quality.service.impl; import java.math.BigDecimal; +import java.math.RoundingMode; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -17,6 +18,7 @@ import com.baomidou.dynamic.datasource.annotation.DS; import com.op.common.core.utils.StringUtils; import com.op.quality.domain.*; import com.op.quality.mapper.QMSFileMapper; +import com.op.system.api.domain.mes.ProLine; import com.op.system.api.domain.quality.ChartDTO; import com.op.system.api.domain.quality.ChartSeriesDTO; import com.op.system.api.domain.quality.FactoryDto; @@ -189,6 +191,8 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { return qcStaticTableMapper.getXJDetail(qcStaticTable); } + + /** * 只适用测量值格式:["1.0.389","2.0.397","3.0.385","4.0.402"] * @param qcCPKInfo @@ -1253,8 +1257,8 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { public QcCPKInfo getTableCPKTitle(QcCPKInfo qcCPKInfo) { QcCPKInfo dto = new QcCPKInfo(); List colName1 = null; - if("week".equals(qcCPKInfo.getTableType())){//周报 - + if("day".equals(qcCPKInfo.getTableType())){//周报 + colName1 = this.getDayOfYear(qcCPKInfo.getYmArrayStart(),qcCPKInfo.getYmArrayEnd()); }else{//月报 colName1 = this.getMonthByMonth(qcCPKInfo.getYmArrayStart(),qcCPKInfo.getYmArrayEnd()); } @@ -1264,36 +1268,93 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { } @Override @DS("#header.poolName") - public List getTableCPKList(QcCPKInfo qcCPKInfo) { + public QcCPKInfo getTableCPKList(QcCPKInfo qcCPKInfo) { + QcCPKInfo resultDto = new QcCPKInfo(); + //表头数据 List colNameArray = null; - if("week".equals(qcCPKInfo.getTableType())){//周报 - + //数据列//cpkType,'-',q.ymdms + Map mxMapData = null; + List cpkTypeList = cpkTypeList = qcStaticTableMapper.getCpkTypeList(qcCPKInfo); + if("day".equals(qcCPKInfo.getTableType())){//日报 + colNameArray = this.getDayOfYear(qcCPKInfo.getYmArrayStart(),qcCPKInfo.getYmArrayEnd()); + mxMapData = qcStaticTableMapper.getDLDataDay(qcCPKInfo); }else{//月报 colNameArray = this.getMonthByMonth(qcCPKInfo.getYmArrayStart(),qcCPKInfo.getYmArrayEnd()); + mxMapData = qcStaticTableMapper.getDLData(qcCPKInfo); } List mapData = new ArrayList(); - //列表数据 - //主列 - List cpkTypeList = qcStaticTableMapper.getCpkTypeList(qcCPKInfo); - //数据列 - List dxData = qcStaticTableMapper.getDlMxList(qcCPKInfo); - + List echartData = new ArrayList<>(); HashMap dmap = null; - for(QcCPKInfo cpkInfo:dxData){ -// dmap = new HashMap(); -// double USL = dto.getUpperDiff().doubleValue(); -// double LSL = dto.getDownDiff().doubleValue(); -// double cpk = calculateCpk(data,USL,LSL); -// BigDecimal cpkVal = new BigDecimal(Double.toString(cpk)).setScale(2, BigDecimal.ROUND_HALF_UP); -// for(int m=0;m serisedata = new ArrayList<>(); + + double USL = cpkT.getUpperDiff().doubleValue(); + double LSL = cpkT.getDownDiff().doubleValue(); + dmap.put("cpkTypeName",cpkT.getCpkTypeName()); + int monthNum = 0;//有数据的月份 + BigDecimal monthSum = BigDecimal.ZERO; + for(int m=0;m actArray0 = Arrays.asList(actArrayStr.split(",")); + List actArray = new ArrayList<>(); + for(String avg:actArray0){ + if(avg.matches(".*\\..*\\..*")){ + actArray.add(avg.substring(2)); + }else{ + actArray.add(avg); + } + } + double[] data = actArray.stream() + .mapToDouble(Double::parseDouble) // 将String转换为double + .toArray(); // 转换为double数组 ; + + double cpk = calculateCpk(data,USL,LSL); + BigDecimal cpkVal = new BigDecimal(Double.toString(cpk)).setScale(2, BigDecimal.ROUND_HALF_UP); + String index = (m+1)+""; + dmap.put("date"+index,cpkVal); + monthSum = monthSum.add(cpkVal); + ++monthNum; + + serisedata.add(cpkVal.doubleValue()); + }else{ + String index = (m+1)+""; + dmap.put("date"+index,"0"); + dmap.put("cpkAvg","0"); + + serisedata.add(0.0); + } + } + + edata.setData(serisedata); + + if(monthNum>0){ + BigDecimal avgBD = monthSum.divide(new BigDecimal(monthNum),2,RoundingMode.HALF_UP); + dmap.put("cpkAvg",avgBD.toString()); + } mapData.add(dmap); + echartData.add(edata); } - //List myObjectList = convertList(mapData); - return mapData; + resultDto.setTableData(mapData); + resultDto.setEchartData(echartData); + return resultDto; + } + + @Override + @DS("#header.poolName") + public List getProdLineList() { + return qcStaticTableMapper.getProdLineList(); } //获取指定范围内得月份输出格式yyyy-mm @@ -1311,6 +1372,23 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { } return months; } + //获取指定年的周数 + private List getDayOfYear(String startM,String endM){ + String dateFormat = "yyyy-MM-dd"; + DateTimeFormatter formatter = DateTimeFormatter.ofPattern(dateFormat); + LocalDate startDate = LocalDate.parse(startM, formatter); + LocalDate endDate = LocalDate.parse(endM, formatter); + + List dateList = new ArrayList<>(); + LocalDate currentDate = startDate; + + while (!currentDate.isAfter(endDate)) { + dateList.add(currentDate.format(formatter)); + currentDate = currentDate.plusDays(1); + } + + return dateList; + } public static void main(String args[]){ String ymd = "1、0.4016"; System.out.println(ymd.substring(2)); diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml index fe20515d8..3085b9ecc 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml @@ -464,8 +464,7 @@ + + + From d3b0dcf26b7a02739e27493facc64786ded45c4d Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Tue, 15 Oct 2024 21:11:46 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E7=BA=BF=E4=BD=93=E4=BA=A7=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/op/mes/domain/MesLine.java | 9 +++++++++ .../src/main/java/com/op/mes/mapper/MesLineMapper.java | 4 ++++ .../com/op/mes/service/impl/MesLineServiceImpl.java | 10 +++++++++- .../src/main/resources/mapper/mes/MesLineMapper.xml | 6 ++++++ 4 files changed, 28 insertions(+), 1 deletion(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java index 97ae9ce69..6dbc45d1f 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java @@ -35,6 +35,7 @@ public class MesLine extends BaseEntity { * 线体名称 */ private String lineName; + private String sapCode; /** * 标准用人 @@ -84,6 +85,14 @@ public class MesLine extends BaseEntity { private BigDecimal standarXl;//标准效率 private BigDecimal actXl;//实际效率 + public String getSapCode() { + return sapCode; + } + + public void setSapCode(String sapCode) { + this.sapCode = sapCode; + } + public BigDecimal getHourEfficiency() { return hourEfficiency; } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesLineMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesLineMapper.java index c578bd0d0..5b18a1736 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesLineMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesLineMapper.java @@ -1,9 +1,11 @@ package com.op.mes.mapper; import java.util.List; +import java.util.Map; import com.op.mes.domain.MesLine; import com.op.mes.domain.MesLineProduct; +import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Mapper; /** @@ -75,4 +77,6 @@ public interface MesLineMapper { int insertLineProduct(MesLine mesLine); void updateLineProduct(MesLine mesLine); + @MapKey("sapCode") + Map getEquMap(); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesLineServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesLineServiceImpl.java index f683ea815..c6a47a7da 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesLineServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesLineServiceImpl.java @@ -4,6 +4,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import com.baomidou.dynamic.datasource.annotation.DS; @@ -91,7 +92,8 @@ public class MesLineServiceImpl implements IMesLineService { @Override @DS("#header.poolName") public List selectMesLineList(MesLine mesLine) { - return mesLineMapper.selectMesLineList(mesLine); + List dtos = mesLineMapper.selectMesLineList(mesLine); + return dtos; } /** @@ -219,11 +221,17 @@ public class MesLineServiceImpl implements IMesLineService { @Transactional public AjaxResult importOrder(List mesLineList) { + Map equMap = mesLineMapper.getEquMap(); + for(MesLine mesLineProduct:mesLineList){ String factoryCode = ServletUtils.getRequest().getHeader("PoolName").replace("ds_",""); mesLineProduct.setFactoryCode(factoryCode); mesLineProduct.setCreateBy(SecurityUtils.getUsername()); mesLineProduct.setCreateTime(DateUtils.getNowDate()); + MesLine mesEqu = equMap.get(mesLineProduct.getLineCode()); + if(mesEqu != null){ + mesLineProduct.setLineCode(mesEqu.getLineCode()); + } } // 数据校验 diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml index 633026fb0..28b0c5898 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml @@ -227,5 +227,11 @@ where del_flag = '0' and line_code = #{lineCode} and product_code = #{productCode} + From 9f5836d2397bd389ea6beef0301ae2687074fea9 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Tue, 15 Oct 2024 21:53:07 +0800 Subject: [PATCH 3/5] oa --- .../quality/service/impl/QcCheckUnqualifiedServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java index abd0cc8b9..5b0db16c4 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java @@ -201,7 +201,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService mainObject.append("\"SQR\":"+"\""+task.getSqr()+"\"");//申请人-- mainObject.append(",\"CQ\":"+task.getOaFactory());//厂区-- mainObject.append(",\"LLLB\":"+task.getMaterialType());//来料类别【0、1】 - mainObject.append(",\"MATNR\":"+"\""+task.getMaterialCode()+"\"");//物料编码 + mainObject.append(",\"MATNR\":"+"\""+task.getMaterialCode().replace("0000000","")+"\"");//物料编码 mainObject.append(",\"MAKTX\":"+"\""+task.getMaterialName()+"\"");//物料名称 mainObject.append(",\"suppliernum\":"+"\""+task.getSupplierCode()+"\"");//供应商编码 mainObject.append(",\"supplier\":"+"\""+task.getSupplierName()+"\"");//供应商名称 @@ -262,7 +262,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService detailObject.append("\"colNames\":\"PROCODE,PRONAME,SCCODE,SCTOTAL,BJDATE,JYCODE,JYDATE,JYRESULT,CPCYS,JYBHGMS\""); detailObject.append(",\"details\":["); - detailObject.append("{\"PROCODE\":\""+detailInfo.getMaterialCode()+"\"},");//产品编码 + detailObject.append("{\"PROCODE\":\""+detailInfo.getMaterialCode().replace("0000000","")+"\"},");//产品编码 detailObject.append("{\"PRONAME\":\""+detailInfo.getMaterialName()+"\"},");//产品名称 detailObject.append("{\"SCCODE\":\""+detailInfo.getIncomeBatchNo()+"\"},");//批次号 detailObject.append("{\"SCTOTAL\":\""+detailInfo.getQuality()+"\"},");//数量 @@ -348,7 +348,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService StringBuffer mainObject = new StringBuffer(); mainObject.append("{"); mainObject.append("\"CPMC\":"+"\""+detailInfo.getMaterialName()+"\"");//产品名称 - mainObject.append(",\"CPBM\":"+"\""+detailInfo.getMaterialCode()+"\"");//产品编码 + mainObject.append(",\"CPBM\":"+"\""+detailInfo.getMaterialCode().replace("0000000","")+"\"");//产品编码 mainObject.append(",\"SQBM\":"+"\""+task.getSqbm()+"\"");//0品质保障部 mainObject.append(",\"SQR\":"+"\""+task.getSqr()+"\"");//申请人:默认当前用户 mainObject.append(",\"SQSJ\":"+"\""+DateUtils.parseDateToStr("yyyy-MM-dd",detailInfo.getCheckTime())+"\"");//申请时间 From 393983493a0ee2bc2d50202b91d9e4dee4a5089e Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Tue, 15 Oct 2024 21:57:20 +0800 Subject: [PATCH 4/5] oa --- .../service/impl/QcCheckUnqualifiedServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java index 5b0db16c4..cfb868f5b 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckUnqualifiedServiceImpl.java @@ -201,7 +201,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService mainObject.append("\"SQR\":"+"\""+task.getSqr()+"\"");//申请人-- mainObject.append(",\"CQ\":"+task.getOaFactory());//厂区-- mainObject.append(",\"LLLB\":"+task.getMaterialType());//来料类别【0、1】 - mainObject.append(",\"MATNR\":"+"\""+task.getMaterialCode().replace("0000000","")+"\"");//物料编码 + mainObject.append(",\"MATNR\":"+"\""+task.getMaterialCode().substring(7)+"\"");//物料编码 mainObject.append(",\"MAKTX\":"+"\""+task.getMaterialName()+"\"");//物料名称 mainObject.append(",\"suppliernum\":"+"\""+task.getSupplierCode()+"\"");//供应商编码 mainObject.append(",\"supplier\":"+"\""+task.getSupplierName()+"\"");//供应商名称 @@ -262,7 +262,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService detailObject.append("\"colNames\":\"PROCODE,PRONAME,SCCODE,SCTOTAL,BJDATE,JYCODE,JYDATE,JYRESULT,CPCYS,JYBHGMS\""); detailObject.append(",\"details\":["); - detailObject.append("{\"PROCODE\":\""+detailInfo.getMaterialCode().replace("0000000","")+"\"},");//产品编码 + detailObject.append("{\"PROCODE\":\""+detailInfo.getMaterialCode().substring(7)+"\"},");//产品编码 detailObject.append("{\"PRONAME\":\""+detailInfo.getMaterialName()+"\"},");//产品名称 detailObject.append("{\"SCCODE\":\""+detailInfo.getIncomeBatchNo()+"\"},");//批次号 detailObject.append("{\"SCTOTAL\":\""+detailInfo.getQuality()+"\"},");//数量 @@ -348,7 +348,7 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService StringBuffer mainObject = new StringBuffer(); mainObject.append("{"); mainObject.append("\"CPMC\":"+"\""+detailInfo.getMaterialName()+"\"");//产品名称 - mainObject.append(",\"CPBM\":"+"\""+detailInfo.getMaterialCode().replace("0000000","")+"\"");//产品编码 + mainObject.append(",\"CPBM\":"+"\""+detailInfo.getMaterialCode().substring(7)+"\"");//产品编码 mainObject.append(",\"SQBM\":"+"\""+task.getSqbm()+"\"");//0品质保障部 mainObject.append(",\"SQR\":"+"\""+task.getSqr()+"\"");//申请人:默认当前用户 mainObject.append(",\"SQSJ\":"+"\""+DateUtils.parseDateToStr("yyyy-MM-dd",detailInfo.getCheckTime())+"\"");//申请时间 @@ -377,4 +377,8 @@ public class QcCheckUnqualifiedServiceImpl implements IQcCheckUnqualifiedService logger.info("流程Id 113455:"+ JSONObject.toJSONString(oaR)); return oaR; } + public static void main(String args[]){ + String ss = "000000010101065500"; + System.out.println(ss.substring(7)); + } } From e33b29e3495e92ad1b2db5b5deccf7b3e81e3908 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Wed, 16 Oct 2024 11:47:13 +0800 Subject: [PATCH 5/5] oa --- .../api/domain/mes/{ProLine.java => ProLineDTO.java} | 6 +++--- .../main/java/com/op/open/controller/OpenController.java | 2 ++ .../resources/mapper/plan/ProOrderWorkorderMapper.xml | 2 ++ .../op/quality/controller/QcStaticTableController.java | 9 ++------- .../java/com/op/quality/mapper/QcStaticTableMapper.java | 5 ++--- .../com/op/quality/service/IQcStaticTableService.java | 4 ++-- .../quality/service/impl/QcStaticTableServiceImpl.java | 5 ++--- .../resources/mapper/quality/QcStaticTableMapper.xml | 2 +- 8 files changed, 16 insertions(+), 19 deletions(-) rename op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/{ProLine.java => ProLineDTO.java} (94%) diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLineDTO.java similarity index 94% rename from op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java rename to op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLineDTO.java index 486f25833..b120308a8 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLine.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/mes/ProLineDTO.java @@ -1,7 +1,7 @@ package com.op.system.api.domain.mes; //线体成型机类 -public class ProLine { +public class ProLineDTO { private String key; private String label; private String lineCode; @@ -83,11 +83,11 @@ public class ProLine { this.label = label; } - public ProLine(String key, String label) { + public ProLineDTO(String key, String label) { this.key = key; this.label = label; } - public ProLine() { + public ProLineDTO() { } } diff --git a/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java b/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java index 5569f5710..cd75c5692 100644 --- a/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java +++ b/op-modules/op-open/src/main/java/com/op/open/controller/OpenController.java @@ -115,6 +115,8 @@ public class OpenController extends BaseController { if (StringUtils.isBlank(qcCheckTaskProduce.getFactoryCode())) { return error("[factoryCode]不能为空"); } + //工单未 + //添加检测任务 int flag = openService.insertQcCheckTaskProduce(qcCheckTaskProduce); if(flag != -100){ diff --git a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml index d360464f4..c3aaa907b 100644 --- a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml +++ b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml @@ -99,6 +99,7 @@ and pow.del_flag = '0' + order by pow.product_date desc - select equipment_code lineCode,equipment_name lineName from base_equipment where del_flag = '0' and equipment_type_code = 'equ_type_bzx'