From 4b323702f65f308c8bd7ea382f15ab22221174f5 Mon Sep 17 00:00:00 2001 From: Yangwl <1726150332@qq.com> Date: Wed, 14 Aug 2024 19:28:12 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E4=BC=81=E4=B8=9A=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/mes/controller/H5ApiController.java | 36 +++++ .../src/main/java/com/op/mes/domain/H5.java | 149 ++++++++++++++++++ .../java/com/op/mes/mapper/H5ApiMapper.java | 21 +++ .../java/com/op/mes/service/H5ApiService.java | 9 ++ .../op/mes/service/impl/H5ApiServiceImpl.java | 31 ++++ .../main/resources/mapper/mes/H5ApiMapper.xml | 133 ++++++++++++++++ 6 files changed, 379 insertions(+) create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/controller/H5ApiController.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/domain/H5.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/mapper/H5ApiMapper.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/service/H5ApiService.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/service/impl/H5ApiServiceImpl.java create mode 100644 op-modules/op-mes/src/main/resources/mapper/mes/H5ApiMapper.xml diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/H5ApiController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/H5ApiController.java new file mode 100644 index 00000000..d636154c --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/H5ApiController.java @@ -0,0 +1,36 @@ +package com.op.mes.controller; + + +import com.op.mes.domain.H5; +import com.op.mes.service.H5ApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.validation.constraints.Max; +import java.util.List; + +/** + * H5接口 + * + * @author ruoyi + * @date 2024-07-04 + */ +@RestController +@RequestMapping("/h5") +public class H5ApiController { + + @Autowired + private H5ApiService h5ApiService; + + @GetMapping("/dailyProductDetil") + public List
list(H5 h5) + { + String workTime=h5.getFeedbackTime(); + List
list = h5ApiService.dailyProductDetil(workTime); + return list; + } + +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/H5.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/H5.java new file mode 100644 index 00000000..ca066f06 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/H5.java @@ -0,0 +1,149 @@ +package com.op.mes.domain; + +public class H5 { + private String workOrderCode; + private String lineName; + private String productName; + private String category; + private String specifications; + private String StandardStaffing; + private String actualEmployment; + private String productionDuration; + private int planProduction; + private int production; + private String hourlyProduction; + private String standardEfficiency; + private String actualEfficiency; + private String efficiencyAcRate; + private String feedbackTime; + private String parentOrder; + + + public int getPlanProduction() { + return planProduction; + } + + public void setPlanProduction(int planProduction) { + this.planProduction = planProduction; + } + + public String getWorkOrderCode() { + return workOrderCode; + } + + public void setWorkOrderCode(String workOrderCode) { + this.workOrderCode = workOrderCode; + } + + public String getParentOrder() { + return parentOrder; + } + + public void setParentOrder(String parentOrder) { + this.parentOrder = parentOrder; + } + + public String getFeedbackTime() { + return feedbackTime; + } + + public void setFeedbackTime(String feedbackTime) { + this.feedbackTime = feedbackTime; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getProductName() { + return productName; + } + + public void setProductName(String productName) { + this.productName = productName; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getSpecifications() { + return specifications; + } + + public void setSpecifications(String specifications) { + this.specifications = specifications; + } + + public String getStandardStaffing() { + return StandardStaffing; + } + + public void setStandardStaffing(String standardStaffing) { + StandardStaffing = standardStaffing; + } + + public String getActualEmployment() { + return actualEmployment; + } + + public void setActualEmployment(String actualEmployment) { + this.actualEmployment = actualEmployment; + } + + public String getProductionDuration() { + return productionDuration; + } + + public void setProductionDuration(String productionDuration) { + this.productionDuration = productionDuration; + } + + public int getProduction() { + return production; + } + + public void setProduction(int production) { + this.production = production; + } + + public String getHourlyProduction() { + return hourlyProduction; + } + + public void setHourlyProduction(String hourlyProduction) { + this.hourlyProduction = hourlyProduction; + } + + public String getStandardEfficiency() { + return standardEfficiency; + } + + public void setStandardEfficiency(String standardEfficiency) { + this.standardEfficiency = standardEfficiency; + } + + public String getActualEfficiency() { + return actualEfficiency; + } + + public void setActualEfficiency(String actualEfficiency) { + this.actualEfficiency = actualEfficiency; + } + + public String getEfficiencyAcRate() { + return efficiencyAcRate; + } + + public void setEfficiencyAcRate(String efficiencyAcRate) { + this.efficiencyAcRate = efficiencyAcRate; + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/H5ApiMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/H5ApiMapper.java new file mode 100644 index 00000000..a5eff258 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/H5ApiMapper.java @@ -0,0 +1,21 @@ +package com.op.mes.mapper; + +import com.op.mes.domain.H5; + +import java.util.List; + +public interface H5ApiMapper { + /** + * 查询母单报工信息 + * @param h5 + * @return + */ + public List
selectMesLineProdceList(H5 h5); + + /** + * 查询子单报工信息 + * @param h5 + * @return + */ + public List
selectMesLineProsdceLists(H5 h5); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/H5ApiService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/H5ApiService.java new file mode 100644 index 00000000..a5c9a692 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/H5ApiService.java @@ -0,0 +1,9 @@ +package com.op.mes.service; + +import com.op.mes.domain.H5; + +import java.util.List; + +public interface H5ApiService { + List
dailyProductDetil(String workTime); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/H5ApiServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/H5ApiServiceImpl.java new file mode 100644 index 00000000..ee937e5a --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/H5ApiServiceImpl.java @@ -0,0 +1,31 @@ +package com.op.mes.service.impl; + + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.mes.domain.H5; +import com.op.mes.mapper.H5ApiMapper; +import com.op.mes.service.H5ApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Service +public class H5ApiServiceImpl implements H5ApiService { + @Autowired + private H5ApiMapper h5ApiMapper; + + + @Override + @DS("#header.poolName") + public List
dailyProductDetil(String workTime) { + //查询当天的生产情况 + H5 h5=new H5(); + h5.setFeedbackTime(workTime); + //母单报工信息 + List
h5List=h5ApiMapper.selectMesLineProdceList(h5); + return h5List; + } +} diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/H5ApiMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/H5ApiMapper.xml new file mode 100644 index 00000000..b5e0bb6d --- /dev/null +++ b/op-modules/op-mes/src/main/resources/mapper/mes/H5ApiMapper.xml @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + + + + + + + From db35521ca68da449acdfa73b22527a7989fa740e Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 15 Aug 2024 00:06:41 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E5=BA=93=E5=AD=98=E6=A3=80=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/open/controller/OpenController.java | 1 + .../java/com/op/open/service/OpenService.java | 3 - .../op/open/service/impl/OpenServiceImpl.java | 5 + .../QcCheckTaskInventoryController.java | 18 ++- .../com/op/quality/domain/OACheckTaskDTO.java | 104 ++++++++++++++++++ .../service/IQcCheckTaskInventoryService.java | 3 + .../service/IQcStaticTableService.java | 2 + .../impl/QcCheckTaskInventoryServiceImpl.java | 16 ++- 8 files changed, 146 insertions(+), 6 deletions(-) create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/domain/OACheckTaskDTO.java 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 6a1acdf5..97a431b3 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 @@ -1,5 +1,6 @@ package com.op.open.controller; +import com.alibaba.fastjson2.JSONObject; import com.baomidou.dynamic.datasource.DynamicRoutingDataSource; import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DataSourceProperty; import com.op.common.core.domain.R; diff --git a/op-modules/op-open/src/main/java/com/op/open/service/OpenService.java b/op-modules/op-open/src/main/java/com/op/open/service/OpenService.java index 6b4caf76..8baf0832 100644 --- a/op-modules/op-open/src/main/java/com/op/open/service/OpenService.java +++ b/op-modules/op-open/src/main/java/com/op/open/service/OpenService.java @@ -1,13 +1,10 @@ package com.op.open.service; -import com.op.common.core.domain.R; import com.op.common.core.web.domain.AjaxResult; import com.op.system.api.domain.device.EquRepairOrderDTO; import com.op.system.api.domain.dto.WCSDTO; import com.op.system.api.domain.dto.WechartDTO; import com.op.system.api.domain.mes.BaseProductDTO; -import com.op.system.api.domain.mes.MesReportWorkDTO; -import com.op.system.api.domain.quality.QcCheckTaskDTO; import com.op.system.api.domain.quality.QcCheckTaskProduceDTO; import java.util.List; diff --git a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java index b257dbf8..ddadec85 100644 --- a/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java +++ b/op-modules/op-open/src/main/java/com/op/open/service/impl/OpenServiceImpl.java @@ -37,10 +37,15 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.util.*; +import java.util.concurrent.CompletableFuture; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskInventoryController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskInventoryController.java index 51a46608..252af4e1 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskInventoryController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckTaskInventoryController.java @@ -5,11 +5,14 @@ import java.time.format.DateTimeFormatter; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.alibaba.fastjson2.JSONObject; import com.op.common.core.domain.R; import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.StringUtils; +import com.op.quality.domain.OACheckTaskDTO; import com.op.quality.domain.QcCheckTaskIncome; -import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -141,4 +144,17 @@ public class QcCheckTaskInventoryController extends BaseController { qcCheckTaskInventoryService.createCCTask(); return R.ok(); } + + //给oa提供的发起库存检验接口 + @PostMapping("/createCCTaskFromOA") + public AjaxResult createCCTaskFromOA(@RequestBody OACheckTaskDTO dto) { + logger.info("oa发起库存检验参数"+ JSONObject.toJSONString(dto)); + if(StringUtils.isBlank(dto.getFactoryCode())){ + error("[factoryCode is null]"); + } + if(CollectionUtils.isEmpty(dto.getDetail())){ + error("[detail is null]"); + } + return qcCheckTaskInventoryService.createCCTaskFromOA(dto); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/OACheckTaskDTO.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/OACheckTaskDTO.java new file mode 100644 index 00000000..7056e29b --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/OACheckTaskDTO.java @@ -0,0 +1,104 @@ +package com.op.quality.domain; + +import com.op.common.core.web.domain.BaseEntity; + +import java.util.List; + +/** + * oa 发起库存检验 + * + * @author Open Platform + * @date 2023-10-31 + */ +public class OACheckTaskDTO extends BaseEntity { + private static final long serialVersionUID = 1L; + //申请单号 + private String applNo; + /** + * 检测人工号 + */ + private String checkManCode; + /** + * 检测人姓名 + */ + private String checkManName; + /** + * QC主管工号 + **/ + private String qcMgr; + /** + * 质量主管工号 + **/ + private String zlMgr; + + private String factoryCode; + + private int taskNum; + + public int getTaskNum() { + return taskNum; + } + + public void setTaskNum(int taskNum) { + this.taskNum = taskNum; + } + + //任务明细 + private List detail; + + public String getFactoryCode() { + return factoryCode; + } + + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + public String getApplNo() { + return applNo; + } + + public void setApplNo(String applNo) { + this.applNo = applNo; + } + + public String getCheckManCode() { + return checkManCode; + } + + public void setCheckManCode(String checkManCode) { + this.checkManCode = checkManCode; + } + + public String getCheckManName() { + return checkManName; + } + + public void setCheckManName(String checkManName) { + this.checkManName = checkManName; + } + + public String getQcMgr() { + return qcMgr; + } + + public void setQcMgr(String qcMgr) { + this.qcMgr = qcMgr; + } + + public String getZlMgr() { + return zlMgr; + } + + public void setZlMgr(String zlMgr) { + this.zlMgr = zlMgr; + } + + public List getDetail() { + return detail; + } + + public void setDetail(List detail) { + this.detail = detail; + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskInventoryService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskInventoryService.java index 6fc0e402..4abf3a12 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskInventoryService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckTaskInventoryService.java @@ -3,6 +3,7 @@ package com.op.quality.service; import java.util.List; import com.op.common.core.web.domain.AjaxResult; +import com.op.quality.domain.OACheckTaskDTO; import com.op.quality.domain.QcCheckTaskIncome; import com.op.quality.domain.QcCheckTaskInventory; @@ -64,4 +65,6 @@ public interface IQcCheckTaskInventoryService { List getPutInOrder(QcCheckTaskInventory qcCheckTaskInventory); AjaxResult createCCTask(); + + AjaxResult createCCTaskFromOA(OACheckTaskDTO dto); } 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 08bae2c2..19c902d8 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 @@ -49,4 +49,6 @@ public interface IQcStaticTableService { QcStaticTable getDLTableCPKInfo(QcStaticTable qcStaticTable); List getProjectList(String checkType); + + QcStaticTable getTableHzTitle(QcStaticTable qcStaticTable); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskInventoryServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskInventoryServiceImpl.java index 56da41be..29433e74 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskInventoryServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskInventoryServiceImpl.java @@ -28,8 +28,6 @@ import com.op.system.api.RemoteUserService; import com.op.system.api.domain.SysNoticeGroup; import com.op.system.api.domain.SysUser; import com.op.system.api.domain.dto.WechartDTO; -import com.op.system.api.domain.mes.ProOrderWorkorderDTO; -import com.op.system.api.domain.quality.QcUserMaterialDTO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -386,6 +384,20 @@ public class QcCheckTaskInventoryServiceImpl implements IQcCheckTaskInventorySer return success(); } + @Override + public AjaxResult createCCTaskFromOA(OACheckTaskDTO dto) { + List dtos = dto.getDetail(); + int m=0; + for(QcCheckTaskInventory ccTask:dtos){ + ccTask.setAttr1(dto.getApplNo());//申请编码 + ccTask.setCheckType("checkTypeCC");//库存检验 + ccTask.setFactoryCode(dto.getFactoryCode()); + m += insertQcCheckTaskInventory(ccTask); + } + logger.info("++++++++++++oa发起仓库检验任务生成" + m + "++++++++++++++"); + return success(); + } + public void createCCFunc(String poolName){ DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key QcCheckTaskInventory qoPutIn = new QcCheckTaskInventory(); From 18cbab3c497ea13d2fc2eb202a41ac1561dd6414 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 15 Aug 2024 00:10:01 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=8A=A5=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/QcStaticTableController.java | 9 ++++++++- .../com/op/quality/domain/QcStaticTable.java | 18 ++++++++++++++++++ .../op/quality/mapper/QcStaticTableMapper.java | 4 ++++ .../service/impl/QcStaticTableServiceImpl.java | 17 +++++++++++++++++ .../mapper/quality/QcStaticTableMapper.xml | 8 ++++++++ 5 files changed, 55 insertions(+), 1 deletion(-) 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 16fd477a..1afabfbe 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 @@ -487,5 +487,12 @@ public class QcStaticTableController extends BaseController { } } } - + /** + * 定量值分析--表头--产品名称 + **/ + @GetMapping("/getTableHzTitle") + @Log(title = "检验分类汇总", businessType = BusinessType.QUERY) + public QcStaticTable getTableHzTitle(QcStaticTable qcStaticTable) { + return qcStaticTableService.getTableHzTitle(qcStaticTable); + } } 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 a3618395..87f6447d 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 @@ -110,6 +110,24 @@ public class QcStaticTable extends BaseEntity { private String[] projectNoArray; private BigDecimal upperDiff; private BigDecimal downDiff; + private List columns1; + private List columns2; + + public List getColumns1() { + return columns1; + } + + public void setColumns1(List columns1) { + this.columns1 = columns1; + } + + public List getColumns2() { + return columns2; + } + + public void setColumns2(List columns2) { + this.columns2 = columns2; + } public String getIncomeTimeStr() { return incomeTimeStr; 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 5de6c48b..9707784a 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 @@ -81,4 +81,8 @@ public interface QcStaticTableMapper { QcStaticTable getUpAndDown(QcStaticTable qcStaticTable); @MapKey("detailId") Map defectMap(QcStaticTable qcStaticTable); + + List getTableHzTitle(QcStaticTable qcStaticTable); + + List getTableHzTitle2(QcStaticTable qcStaticTable); } 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 75131a86..00430ee2 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 @@ -783,6 +783,23 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { return qcStaticTableMapper.getProjectList(checkType); } + @Override + @DS("#header.poolName") + public QcStaticTable getTableHzTitle(QcStaticTable qcStaticTable) { + QcStaticTable dto = new QcStaticTable(); + qcStaticTable.setDataType("unqualified_remark"); + qcStaticTable.setRemark("checkTypeCP"); + List cols1 = qcStaticTableMapper.getTableHzTitle(qcStaticTable); + if(CollectionUtils.isEmpty(cols1)){ + return dto; + } + dto.setColumns1(cols1); + List cols2 = qcStaticTableMapper.getTableHzTitle2(qcStaticTable); + + dto.setColumns2(cols2); + return dto; + } + private List getHourProductionTitle(QcStaticTable qcStaticTable) { // 返回的日期集合 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 88166b58..2a64281d 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 @@ -490,4 +490,12 @@ where qctd.del_flag = '0' and qct.order_no = #{orderNo} GROUP by qctd.belong_to,qctd.belong_to_detail + + From fe71c70edb68e05fce572390d85b7035bdfd1438 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 15 Aug 2024 09:19:17 +0800 Subject: [PATCH 4/5] bug --- .../service/impl/QcInterfaceServiceImpl.java | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java index 06758278..d9d000fb 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java @@ -210,50 +210,50 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { qcInterface.setYmd(nowYMD); Map dtoMap = new HashMap<>(); - qcInterface.setYmdType("dd"); - QcInterface hz0 = qcInterfaceMapper.getProduceHz1(qcInterface); - if (hz0 != null) { - dtoMap.put("todayPro", hz0.getQuality().replaceAll("\\..*", "")); - }else{ - dtoMap.put("todayPro", "0"); - } - QcInterface hz1 = qcInterfaceMapper.getProduceHz(qcInterface); - if (hz1 != null) { - dtoMap.put("todaySample", hz1.getSampleQuality().replaceAll("\\..*", "")); - dtoMap.put("todayNoOk", hz1.getNoOkQuality().replaceAll("\\..*", "")); - BigDecimal tOkRate = (new BigDecimal(hz1.getSampleQuality()) - .subtract(new BigDecimal(hz1.getNoOkQuality())) - ) - .multiply(new BigDecimal(100)) - .divide(new BigDecimal(hz1.getSampleQuality()), 2, RoundingMode.HALF_UP); - dtoMap.put("todayOkRate", tOkRate + "%"); - } - - qcInterface.setYmdType("mm"); - QcInterface hz20 = qcInterfaceMapper.getProduceHz1(qcInterface); - if (hz20 != null) { - dtoMap.put("monthPro", hz20.getQuality().replaceAll("\\..*", "")); - }else{ - dtoMap.put("monthPro", "0"); - } - QcInterface hz2 = qcInterfaceMapper.getProduceHz(qcInterface); - if (hz2 != null) { - dtoMap.put("monthNoOk", hz2.getNoOkQuality().replaceAll("\\..*", "")); - BigDecimal tOkRate2 = (new BigDecimal(hz2.getSampleQuality()) - .subtract(new BigDecimal(hz2.getNoOkQuality())) - ) - .multiply(new BigDecimal(100)) - .divide(new BigDecimal(hz2.getSampleQuality()), 2, RoundingMode.HALF_UP); - dtoMap.put("monthOkRate", tOkRate2 + "%"); - } -// /**质量看板测试开始**/ -// dtoMap.put("todayPro", "3800"); -// dtoMap.put("todaySample", "50"); -// dtoMap.put("todayNoOk", "2"); -// dtoMap.put("todayOkRate", "96.00%"); -// dtoMap.put("monthPro", "83600"); -// dtoMap.put("monthNoOk", "30"); -// dtoMap.put("monthOkRate", "99.96%"); +// qcInterface.setYmdType("dd"); +// QcInterface hz0 = qcInterfaceMapper.getProduceHz1(qcInterface); +// if (hz0 != null) { +// dtoMap.put("todayPro", hz0.getQuality().replaceAll("\\..*", "")); +// }else{ +// dtoMap.put("todayPro", "0"); +// } +// QcInterface hz1 = qcInterfaceMapper.getProduceHz(qcInterface); +// if (hz1 != null) { +// dtoMap.put("todaySample", hz1.getSampleQuality().replaceAll("\\..*", "")); +// dtoMap.put("todayNoOk", hz1.getNoOkQuality().replaceAll("\\..*", "")); +// BigDecimal tOkRate = (new BigDecimal(hz1.getSampleQuality()) +// .subtract(new BigDecimal(hz1.getNoOkQuality())) +// ) +// .multiply(new BigDecimal(100)) +// .divide(new BigDecimal(hz1.getSampleQuality()), 2, RoundingMode.HALF_UP); +// dtoMap.put("todayOkRate", tOkRate + "%"); +// } +// +// qcInterface.setYmdType("mm"); +// QcInterface hz20 = qcInterfaceMapper.getProduceHz1(qcInterface); +// if (hz20 != null) { +// dtoMap.put("monthPro", hz20.getQuality().replaceAll("\\..*", "")); +// }else{ +// dtoMap.put("monthPro", "0"); +// } +// QcInterface hz2 = qcInterfaceMapper.getProduceHz(qcInterface); +// if (hz2 != null) { +// dtoMap.put("monthNoOk", hz2.getNoOkQuality().replaceAll("\\..*", "")); +// BigDecimal tOkRate2 = (new BigDecimal(hz2.getSampleQuality()) +// .subtract(new BigDecimal(hz2.getNoOkQuality())) +// ) +// .multiply(new BigDecimal(100)) +// .divide(new BigDecimal(hz2.getSampleQuality()), 2, RoundingMode.HALF_UP); +// dtoMap.put("monthOkRate", tOkRate2 + "%"); +// } + /**质量看板测试开始**/ + dtoMap.put("todayPro", "3800"); + dtoMap.put("todaySample", "50"); + dtoMap.put("todayNoOk", "2"); + dtoMap.put("todayOkRate", "96.00%"); + dtoMap.put("monthPro", "83600"); + dtoMap.put("monthNoOk", "30"); + dtoMap.put("monthOkRate", "99.96%"); // /**质量看板测试结束**/ return dtoMap; } From b298ed613676e8eb17e798c2fa12109b59765a11 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 15 Aug 2024 09:55:15 +0800 Subject: [PATCH 5/5] bug2 --- .../service/impl/QcInterfaceServiceImpl.java | 97 ++++++++++--------- .../mapper/quality/QcInterfaceMapper.xml | 10 +- 2 files changed, 62 insertions(+), 45 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java index d9d000fb..321d0a73 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java @@ -210,50 +210,59 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { qcInterface.setYmd(nowYMD); Map dtoMap = new HashMap<>(); -// qcInterface.setYmdType("dd"); -// QcInterface hz0 = qcInterfaceMapper.getProduceHz1(qcInterface); -// if (hz0 != null) { -// dtoMap.put("todayPro", hz0.getQuality().replaceAll("\\..*", "")); -// }else{ -// dtoMap.put("todayPro", "0"); -// } -// QcInterface hz1 = qcInterfaceMapper.getProduceHz(qcInterface); -// if (hz1 != null) { -// dtoMap.put("todaySample", hz1.getSampleQuality().replaceAll("\\..*", "")); -// dtoMap.put("todayNoOk", hz1.getNoOkQuality().replaceAll("\\..*", "")); -// BigDecimal tOkRate = (new BigDecimal(hz1.getSampleQuality()) -// .subtract(new BigDecimal(hz1.getNoOkQuality())) -// ) -// .multiply(new BigDecimal(100)) -// .divide(new BigDecimal(hz1.getSampleQuality()), 2, RoundingMode.HALF_UP); -// dtoMap.put("todayOkRate", tOkRate + "%"); -// } -// -// qcInterface.setYmdType("mm"); -// QcInterface hz20 = qcInterfaceMapper.getProduceHz1(qcInterface); -// if (hz20 != null) { -// dtoMap.put("monthPro", hz20.getQuality().replaceAll("\\..*", "")); -// }else{ -// dtoMap.put("monthPro", "0"); -// } -// QcInterface hz2 = qcInterfaceMapper.getProduceHz(qcInterface); -// if (hz2 != null) { -// dtoMap.put("monthNoOk", hz2.getNoOkQuality().replaceAll("\\..*", "")); -// BigDecimal tOkRate2 = (new BigDecimal(hz2.getSampleQuality()) -// .subtract(new BigDecimal(hz2.getNoOkQuality())) -// ) -// .multiply(new BigDecimal(100)) -// .divide(new BigDecimal(hz2.getSampleQuality()), 2, RoundingMode.HALF_UP); -// dtoMap.put("monthOkRate", tOkRate2 + "%"); -// } - /**质量看板测试开始**/ - dtoMap.put("todayPro", "3800"); - dtoMap.put("todaySample", "50"); - dtoMap.put("todayNoOk", "2"); - dtoMap.put("todayOkRate", "96.00%"); - dtoMap.put("monthPro", "83600"); - dtoMap.put("monthNoOk", "30"); - dtoMap.put("monthOkRate", "99.96%"); + qcInterface.setYmdType("dd"); + QcInterface hz0 = qcInterfaceMapper.getProduceHz1(qcInterface); + if (hz0 != null) { + dtoMap.put("todayPro", hz0.getQuality().replaceAll("\\..*", "")); + }else{ + dtoMap.put("todayPro", "0"); + } + QcInterface hz1 = qcInterfaceMapper.getProduceHz(qcInterface); + if (hz1 != null) { + dtoMap.put("todaySample", hz1.getSampleQuality().replaceAll("\\..*", "")); + dtoMap.put("todayNoOk", hz1.getNoOkQuality().replaceAll("\\..*", "")); + if(!hz1.getSampleQuality().equals("0.00")){ + BigDecimal tOkRate = (new BigDecimal(hz1.getSampleQuality()) + .subtract(new BigDecimal(hz1.getNoOkQuality())) + ) + .multiply(new BigDecimal(100)) + .divide(new BigDecimal(hz1.getSampleQuality()), 2, RoundingMode.HALF_UP); + dtoMap.put("todayOkRate", tOkRate + "%"); + }else{ + dtoMap.put("todayOkRate", "0%"); + } + + } + + qcInterface.setYmdType("mm"); + QcInterface hz20 = qcInterfaceMapper.getProduceHz1(qcInterface); + if (hz20 != null) { + dtoMap.put("monthPro", hz20.getQuality().replaceAll("\\..*", "")); + }else{ + dtoMap.put("monthPro", "0"); + } + QcInterface hz2 = qcInterfaceMapper.getProduceHz(qcInterface); + if (hz2 != null) { + dtoMap.put("monthNoOk", hz2.getNoOkQuality().replaceAll("\\..*", "")); + if(!hz2.getSampleQuality().equals("0.00")){ + BigDecimal tOkRate2 = (new BigDecimal(hz2.getSampleQuality()) + .subtract(new BigDecimal(hz2.getNoOkQuality())) + ) + .multiply(new BigDecimal(100)) + .divide(new BigDecimal(hz2.getSampleQuality()), 2, RoundingMode.HALF_UP); + dtoMap.put("monthOkRate", tOkRate2 + "%"); + }else{ + dtoMap.put("monthOkRate", "0%"); + } + } +// /**质量看板测试开始**/ +// dtoMap.put("todayPro", "3800"); +// dtoMap.put("todaySample", "50"); +// dtoMap.put("todayNoOk", "2"); +// dtoMap.put("todayOkRate", "96.00%"); +// dtoMap.put("monthPro", "83600"); +// dtoMap.put("monthNoOk", "30"); +// dtoMap.put("monthOkRate", "99.96%"); // /**质量看板测试结束**/ return dtoMap; } diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml index 0f334024..119013bb 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml @@ -180,7 +180,15 @@ from qc_check_task_detail qctd left join qc_check_task qct on qctd.belong_to = qct.record_id where qct.type_code = #{typeCode} and qctd.status = 'N' - and CONVERT(varchar(10),qct.income_time, 120) = SUBSTRING(#{ymd},0,11) + + and CONVERT(varchar(4),qct.income_time, 120) = SUBSTRING(#{ymd},0,5) + + + and CONVERT(varchar(7),qct.income_time, 120) = SUBSTRING(#{ymd},0,8) + + + and CONVERT(varchar(10),qct.income_time, 120) = SUBSTRING(#{ymd},0,11) + order by qctd.update_time desc