From 62fc5e6991ae6453c95e86ff1a2cf9ee6c67436c Mon Sep 17 00:00:00 2001 From: pangyang <475446853@qq.com> Date: Tue, 17 Mar 2026 14:58:00 +0800 Subject: [PATCH] =?UTF-8?q?erp=E5=AE=A1=E7=90=86=E5=8D=95=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../quality/pojo/dto/PpmReportDetailDTO.java | 162 ++++++++++++++++++ .../controller/ReviewSheetController.java | 31 +++- .../quality/mapper/ReviewSheetMapper.java | 5 +- .../desk/quality/mapper/ReviewSheetMapper.xml | 27 +++ .../quality/service/IReviewSheetService.java | 6 +- .../service/impl/ReviewSheetServiceImpl.java | 26 ++- 6 files changed, 243 insertions(+), 14 deletions(-) create mode 100644 blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/dto/PpmReportDetailDTO.java diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/dto/PpmReportDetailDTO.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/dto/PpmReportDetailDTO.java new file mode 100644 index 00000000..fbadff5f --- /dev/null +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/quality/pojo/dto/PpmReportDetailDTO.java @@ -0,0 +1,162 @@ +package org.springblade.desk.quality.pojo.dto; + +import lombok.Data; + +/** + * @ClassName PpmReportDetailModel + * @Description: 出厂不合格率明细模型 + * @Author cdl + * @Date 2023/12/08 13:37 + * @Version 1.0 + * 注意:本内容仅限于内部传阅,禁止外泄及用于其他的商业目的 + */ +@Data +public class PpmReportDetailDTO { + /** + * 班组 + */ + private String tsName; + /** + * 审理单号 + */ + private String sheetNo; + /** + * 审理单类型 + */ + private String billmodel; + /** + * 审理单状态 + */ + private String status; + /** + * 发生单位 + */ + private String deptcode; + /** + * 物料号 + */ + private String prtno; + /** + * 物料名称 + */ + private String name; + /** + * 型号 + */ + private String type; + /** + * 质量等级 + */ + private String qstandno; + /** + * 批次号 + */ + private String lotno; + /** + * 总数量 + */ + private String cntt; + /** + * 不合格数 + */ + private String cntn; + /** + * 检验员 + */ + private String checker; + /** + * 检验日期 + */ + private String checkdate; + /** + * 归档日期 + */ + private String finishdate; + /** + * 责任部门 + */ + private String layer1; + /** + * 审理单开始时间 + */ + private String judgestart; + /** + * + */ + private String opinion; + /** + * 审理级别 + */ + private String userlevel; + /** + * 审理意见 + */ + private String dispose; + /** + * 审理人 + */ + private String usercode; + /** + * 返修数 + */ + private String p6layer3; + /** + * 返工数 + */ + private String p6layer4; + /** + * 报废数 + */ + private String p6layer5; + /** + * 订单号 + */ + private String sono; + /** + * 完工数 + */ + private String avlqty; + /** + * 完工日期 + */ + private String date1; + /** + * 责任零件 + */ + private String p5layer1; + /** + * 责任批次 + */ + private String p5layer3; + /** + * 发生工序 + */ + private String process; + /** + * 发生工序名称 + */ + private String processName; + /** + * 上级编号 + */ + private String precode; + /** + * 返修路线 + */ + private String reworkLine; + /** + * 故障描述 + */ + private String memo; + + private String code; + private String useproc; + private String useseq; + private String redodeptcode; + private String p1remark; + private String disposename; + private String p2layer1; + private String chker; + + +} diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/ReviewSheetController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/ReviewSheetController.java index d03724cf..0fe80621 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/ReviewSheetController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/controller/ReviewSheetController.java @@ -28,6 +28,7 @@ import org.springblade.core.tool.utils.Func; import org.springblade.desk.basic.util.ExcelExtUtil; import org.springblade.desk.quality.constant.QAModuleConst; import org.springblade.desk.quality.excel.ReviewSheetExcel; +import org.springblade.desk.quality.pojo.dto.PpmReportDetailDTO; import org.springblade.desk.quality.pojo.entity.ReviewDuty; import org.springblade.desk.quality.pojo.entity.ReviewFault; import org.springblade.desk.quality.pojo.entity.ReviewSheet; @@ -198,11 +199,35 @@ public class ReviewSheetController extends BladeController { /** * [生产处置单] list分页 */ +// @PostMapping("/listErp") +// @ApiOperationSupport(order = 20) +// @Operation(summary = "Erplist分页", description = "传入ReviewSheet Obj") +// public R> listErp(@Valid @RequestBody ReviewSheetErpSearch search, +// @RequestBody Query query) { +// log.info("ReviewSheetErpSearch = {}", search); +//// Map demo = new HashMap(); +//// // todo: mapper +//// QueryWrapper qw = Condition.getQueryWrapper(demo, ReviewSheet.class); +//// qw.eq(ReviewSheet.COL_BIZ_TYPE, ReviewSheetConst.BizType.T_ERP); +//// IPage pages = service.page(Condition.getPage(query), qw); +//// IPage pagesVO = ReviewSheetErpWrapper.build().pageVO(pages); +//// pagesVO.getRecords() +//// .stream() +//// .peek(service::setErpVOValue) +//// .collect(Collectors.toList()); +//// return R.data(pagesVO); +// if(null == search.getRsCode() && null == search.getDutyPart() && null == search.getDutyBatNo()){ +// search.setRsCode("########################"); +// } +// IPage pagesVO = service.listErp(Condition.getPage(query), search); +// return R.data(pagesVO); +// } + @PostMapping("/listErp") @ApiOperationSupport(order = 20) @Operation(summary = "Erplist分页", description = "传入ReviewSheet Obj") - public R> listErp(@Valid @RequestBody ReviewSheetErpSearch search, - @RequestBody Query query) { + public R> listErp(@Valid @RequestBody ReviewSheetErpSearch search, + @RequestBody Query query) { log.info("ReviewSheetErpSearch = {}", search); // Map demo = new HashMap(); // // todo: mapper @@ -218,7 +243,7 @@ public class ReviewSheetController extends BladeController { if(null == search.getRsCode() && null == search.getDutyPart() && null == search.getDutyBatNo()){ search.setRsCode("########################"); } - IPage pagesVO = service.listErp(Condition.getPage(query), search); + IPage pagesVO = service.listErp(Condition.getPage(query), search); return R.data(pagesVO); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.java index 90eac3bc..9f7ea484 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.java @@ -9,11 +9,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import org.springblade.desk.quality.excel.ReviewSheetExcel; import org.springblade.desk.quality.pojo.entity.ReviewSheet; -import org.springblade.desk.quality.pojo.request.InspectionTaskSearch; import org.springblade.desk.quality.pojo.request.ReviewSheetErpSearch; import org.springblade.desk.quality.pojo.request.ReviewSheetInitSearch; import org.springblade.desk.quality.pojo.request.ReviewSheetRedoScrapSearch; import org.springblade.desk.quality.pojo.vo.*; +import org.springblade.desk.quality.pojo.dto.PpmReportDetailDTO; import java.util.List; @@ -58,4 +58,7 @@ public interface ReviewSheetMapper extends BaseMapper { List listErp(IPage page, @Param("q") ReviewSheetErpSearch search); + + List listErpNew(IPage page, + @Param("q") ReviewSheetErpSearch search); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.xml b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.xml index abdc9a6e..622ab03c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.xml +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/mapper/ReviewSheetMapper.xml @@ -278,6 +278,7 @@ LEFT JOIN BS_PROCESS_SET ps ON wp.ORDERS = ps.CODE -- 外协厂商 oem LEFT JOIN BS_OEM oem ON wp.OC_ID = oem.ID + left join QA_REVIEW_DUTY du on rs.ID = du.REVIEW_SHEET_ID WHERE ( rs.IS_DELETED = 0 -- AND wp.IS_DELETED = 0 @@ -312,6 +313,32 @@ AND rs.PART_CODE = #{q.batchNo} + + + and rs.Id in (select REVIEW_SHEET_ID from QA_REVIEW_DUTY where DUTY_PART like concat(concat('%', #{q.dutyPart}),'%')) + + + + and rs.Id in (select REVIEW_SHEET_ID from QA_REVIEW_DUTY where DUTY_BATCH like concat(concat('%', #{q.dutyBatNo}),'%')) + + ORDER BY rs.ID DESC + + diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewSheetService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewSheetService.java index c372a20f..1b0c5dd9 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewSheetService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/IReviewSheetService.java @@ -14,7 +14,7 @@ import org.springblade.desk.quality.pojo.request.ReviewSheetErpSearch; import org.springblade.desk.quality.pojo.request.ReviewSheetInitSearch; import org.springblade.desk.quality.pojo.request.ReviewSheetRedoScrapSearch; import org.springblade.desk.quality.pojo.vo.*; - +import org.springblade.desk.quality.pojo.dto.PpmReportDetailDTO; import java.util.List; /** @@ -93,7 +93,7 @@ public interface IReviewSheetService extends EnBaseService { */ List getQcReviewSheetList(String partCode, String batchNo); - List reviewFormMess(JSONObject data); + List reviewFormMess(JSONObject data); /** *

方法描述: 通过返工单查询生产处置单

@@ -146,5 +146,5 @@ public interface IReviewSheetService extends EnBaseService { IPage listReviewRedoScrap(IPage page, ReviewSheetRedoScrapSearch search); - IPage listErp(IPage page, ReviewSheetErpSearch search); + IPage listErp(IPage page, ReviewSheetErpSearch search); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewSheetServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewSheetServiceImpl.java index 11ff02c1..60a6e10c 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewSheetServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/ReviewSheetServiceImpl.java @@ -27,7 +27,6 @@ import org.springblade.desk.basic.constant.BaseRequest; import org.springblade.desk.basic.constant.BaseValue; import org.springblade.desk.basic.service.en.impl.EnBaseServiceImpl; import org.springblade.desk.basic.util.IdUtil; -import org.springblade.desk.produce.pojo.entity.WorkPlan; import org.springblade.desk.produce.service.IWorkPlanService; import org.springblade.desk.quality.constant.InspectionTaskConst; import org.springblade.desk.quality.constant.ReviewSheetConst; @@ -56,7 +55,7 @@ import org.springblade.system.pojo.entity.UserInfo; import org.springframework.http.HttpEntity; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; - +import org.springblade.desk.quality.pojo.dto.PpmReportDetailDTO; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @@ -263,7 +262,7 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl reviewFormMess(JSONObject data) { + public List reviewFormMess(JSONObject data) { // todo: return List.of(); } @@ -545,10 +544,23 @@ public class ReviewSheetServiceImpl extends EnBaseServiceImpl listErp(IPage page, ReviewSheetErpSearch search) { - List listVO = baseMapper.listErp(page, search); - for (ReviewSheetErpVO oneVO : listVO) { - setErpVOValue(oneVO); + public IPage listErp(IPage page, ReviewSheetErpSearch search) { + List listVO = baseMapper.listErpNew(page, search); + for (PpmReportDetailDTO oneVO : listVO) { + oneVO.setSheetNo(oneVO.getCode()); + oneVO.setP5layer1(oneVO.getP5layer1()); + oneVO.setP5layer3(oneVO.getP5layer3()); + oneVO.setProcess(oneVO.getUseproc()); + oneVO.setProcessName(oneVO.getUseseq()); + oneVO.setPrecode(oneVO.getPrecode()); + oneVO.setReworkLine(oneVO.getRedodeptcode()); + oneVO.setMemo(oneVO.getP1remark()); + oneVO.setDispose(oneVO.getDisposename()); + oneVO.setDeptcode(oneVO.getDeptcode()); + oneVO.setLayer1(oneVO.getP2layer1()); + oneVO.setUsercode(oneVO.getChker()); + oneVO.setPrtno(oneVO.getPrtno()); + oneVO.setLotno(oneVO.getLotno()); } return page.setRecords(listVO); }