From 4a94e29ebaafe130430848a42935d86f777794c2 Mon Sep 17 00:00:00 2001
From: wws <18630710203@163.com>
Date: Fri, 5 Jan 2024 17:28:24 +0800
Subject: [PATCH 1/3] =?UTF-8?q?PDA=E8=AF=A6=E6=83=85=E8=AE=BE=E5=A4=87?=
=?UTF-8?q?=E5=90=8D=E7=A7=B0=E6=98=BE=E7=A4=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../mapper/device/EquOperationMapper.xml | 8 ++-
.../mapper/device/EquOrderMapper.xml | 52 +++++++++++++++++--
2 files changed, 53 insertions(+), 7 deletions(-)
diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml
index 14afae5ca..981c7e2ba 100644
--- a/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml
+++ b/op-modules/op-device/src/main/resources/mapper/device/EquOperationMapper.xml
@@ -105,13 +105,17 @@
-
\ No newline at end of file
From a91af79c92def20ffd6ac2ded4bc9faa0a755293 Mon Sep 17 00:00:00 2001
From: zhaoxiaolin
Date: Fri, 5 Jan 2024 21:28:38 +0800
Subject: [PATCH 3/3] =?UTF-8?q?=E4=B8=8D=E8=89=AF=E7=8E=87=E7=BB=9F?=
=?UTF-8?q?=E8=AE=A1=E6=8A=A5=E8=A1=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/QcStaticTableController.java | 24 ++++++++++
.../com/op/quality/domain/QcStaticTable.java | 9 ++++
.../quality/mapper/QcStaticTableMapper.java | 5 ++
.../service/IQcStaticTableService.java | 5 ++
.../impl/QcStaticTableServiceImpl.java | 47 +++++++++++++++++--
.../mapper/quality/QcStaticTableMapper.xml | 30 ++++++++++++
6 files changed, 115 insertions(+), 5 deletions(-)
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 17aaa5bfc..81c22991d 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
@@ -11,6 +11,7 @@ import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse;
import com.op.common.core.utils.DateUtils;
+import com.op.quality.domain.QcCheckType;
import com.op.system.api.domain.quality.ChartDTO;
import com.op.system.api.domain.quality.ChartSeriesDTO;
import com.op.system.api.domain.quality.FactoryDto;
@@ -228,6 +229,10 @@ public class QcStaticTableController extends BaseController {
return qcStaticTableService.getWorkcenterList(factoryDto);
}
+ @GetMapping("/getCheckTypeList/{typeCode}")
+ public List getCheckTypeList(@PathVariable("typeCode") String typeCode) {
+ return qcStaticTableService.getCheckTypeList(typeCode);
+ }
/**
* 巡检记录报表
*/
@@ -266,4 +271,23 @@ public class QcStaticTableController extends BaseController {
ChartSeriesDTO dto = qcStaticTableService.getXJChartData(qcStaticTable);
return dto;
}
+
+ /**质检不良率统计**/
+ @RequiresPermissions("quality:qcProduceAnalysis:list")
+ @GetMapping("/getQmsRateTable")
+ public TableDataInfo getQmsRateTable(QcStaticTable qcStaticTable) {
+ //默认时间范围T 00:00:00~T+1 00:00:00
+ if(StringUtils.isEmpty(qcStaticTable.getYmArrayStart())){
+ LocalDate date = LocalDate.now();
+ DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+ String ymStr = dtf.format(date);
+ qcStaticTable.setYmArrayStart(ymStr);
+ qcStaticTable.setYmArrayEnd(ymStr);
+ }
+
+ startPage();
+ List list = qcStaticTableService.getQmsRateTable(qcStaticTable);
+ return getDataTable(list);
+ }
+
}
diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java
index 66155a454..a230152f5 100644
--- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java
+++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java
@@ -86,6 +86,15 @@ public class QcStaticTable extends BaseEntity {
private String column200210;
private String startDateStr;
private String endDateStr;
+ private String checkType;
+
+ public String getCheckType() {
+ return checkType;
+ }
+
+ public void setCheckType(String checkType) {
+ this.checkType = checkType;
+ }
public String getStartDateStr() {
return startDateStr;
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 d6dea4e39..17afffb63 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
@@ -3,6 +3,7 @@ package com.op.quality.mapper;
import java.util.List;
import java.util.Map;
+import com.op.quality.domain.QcCheckType;
import com.op.quality.domain.QcStaticTable;
import com.op.system.api.domain.quality.FactoryDto;
import org.apache.ibatis.annotations.MapKey;
@@ -51,4 +52,8 @@ public interface QcStaticTableMapper {
List getLegendData(QcStaticTable qcStaticTable);
@MapKey("ymdms")
Map getXJMapData(QcStaticTable qcStaticTable);
+
+ List getQmsRateTable(QcStaticTable qcStaticTable);
+
+ List getCheckTypeList(String typeCode);
}
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 e769347cc..17196687e 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
@@ -3,6 +3,7 @@ package com.op.quality.service;
import java.util.List;
import java.util.Map;
+import com.op.quality.domain.QcCheckType;
import com.op.quality.domain.QcStaticTable;
import com.op.system.api.domain.quality.ChartSeriesDTO;
import com.op.system.api.domain.quality.FactoryDto;
@@ -36,4 +37,8 @@ public interface IQcStaticTableService {
List getXJCheckTableDetail(QcStaticTable qcStaticTable);
ChartSeriesDTO getXJChartData(QcStaticTable qcStaticTable);
+
+ List getQmsRateTable(QcStaticTable qcStaticTable);
+
+ List getCheckTypeList(String typeCode);
}
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 d70717243..7d9de9279 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
@@ -4,15 +4,11 @@ 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.baomidou.dynamic.datasource.annotation.DS;
-import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils;
-import com.op.quality.domain.QcCheckTaskIncome;
+import com.op.quality.domain.QcCheckType;
import com.op.system.api.domain.quality.ChartDTO;
import com.op.system.api.domain.quality.ChartSeriesDTO;
import com.op.system.api.domain.quality.FactoryDto;
@@ -319,6 +315,45 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService {
return seriesDTO;
}
+ @Override
+ @DS("#header.poolName")
+ public List getQmsRateTable(QcStaticTable qcStaticTable) {
+ List dtos = qcStaticTableMapper.getQmsRateTable(qcStaticTable);
+ for(QcStaticTable dto:dtos){
+ if(StringUtils.isEmpty(dto.getOrderNo())){
+ dto.setOrderNo("-");
+ }
+ if(StringUtils.isEmpty(dto.getIncomeBatchNo())){
+ dto.setIncomeBatchNo("-");
+ }
+ if(StringUtils.isEmpty(dto.getMaterialCode())){
+ dto.setMaterialCode("-");
+ }
+ if(StringUtils.isEmpty(dto.getMaterialCode())){
+ dto.setMaterialCode("-");
+ }
+ if(StringUtils.isEmpty(dto.getMaterialName())){
+ dto.setMaterialName("-");
+ }
+
+ if(StringUtils.isNotBlank(dto.getSampleQuality())&&!"0.00".equals(dto.getSampleQuality())){
+ BigDecimal noOkRate = new BigDecimal(dto.getNoOkNums())
+ .multiply(new BigDecimal(100))
+ .divide(new BigDecimal(dto.getSampleQuality()),2,BigDecimal.ROUND_HALF_UP);
+ dto.setNoOkNumRate(noOkRate.toString()+"%");
+ }else{
+ dto.setNoOkNumRate("-");
+ }
+ }
+ return dtos;
+ }
+
+ @Override
+ @DS("#header.poolName")
+ public List getCheckTypeList(String typeCode) {
+ return qcStaticTableMapper.getCheckTypeList(typeCode);
+ }
+
private List getHourProductionTitle(QcStaticTable qcStaticTable) {
// 返回的日期集合
@@ -349,4 +384,6 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService {
return dayHours;
}
+
+
}
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 1078b7ab1..ce0a96b82 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
@@ -182,4 +182,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and qct.material_code like concat('%',#{materialCode},'%')
group by qct.supplier_code,qct.supplier_name,CONVERT(VARCHAR(2), qct.check_time, 108)
+
+ select qct.supplier_code supplierCode,
+ qct.supplier_name supplierName,
+ qct.order_no orderNo, qct.unit,
+ qct.income_batch_no,
+ qct.material_code,qct.material_name,
+ sum(quality) quality,
+ sum(qct.sample_quality) sampleQuality,
+ sum(qct.noOk_quality) noOkNums
+ from qc_check_task qct
+ where qct.del_flag = '0'
+ and qct.order_no = #{orderNo}
+ and qct.income_batch_no like concat('%',#{incomeBatchNo},'%')
+ and qct.material_code like concat('%',#{materialCode},'%')
+ and qct.supplier_code = #{supplierCode}
+ and qct.type_code = #{typeCode}
+ and qct.check_type = #{checkType}
+ and CONVERT(varchar(10),qct.income_time, 120) >= CONVERT(varchar(10),#{ymArrayStart}, 120)
+ and CONVERT(varchar(10),#{ymArrayEnd}, 120)>=CONVERT(varchar(10),qct.income_time, 120)
+ group by qct.supplier_code,qct.supplier_name
+ ,qct.order_no,qct.unit
+ ,qct.income_batch_no
+ ,qct.material_code,qct.material_name
+
+
+ select order_code checkType,
+ check_name checkName
+ from qc_check_type
+ where del_flag = '0' and type_code= #{typeCode}
+