diff --git a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/controller/QcPDAController.java b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/controller/QcPDAController.java index c7e7346..49b6b4a 100644 --- a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/controller/QcPDAController.java +++ b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/controller/QcPDAController.java @@ -1,6 +1,7 @@ package org.dromara.qms.controller; +import cn.dev33.satoken.annotation.SaCheckPermission; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.satoken.utils.LoginHelper; @@ -57,15 +58,6 @@ public class QcPDAController { //PDA业务Service private final IQcPDAService qcPDAService; - /** - * 查询不合格品评审记录(PDA查询页面) - */ - @GetMapping("/unqualifiedRecordList") - public TableDataInfo getUnqualifiedRecordList(QcUnqualifiedRecordBo bo, PageQuery pageQuery) { - return qcUnqualifiedRecordService.queryPageList(bo, pageQuery); - } - - /* /** * 验证评审结果是否有效 * 实现评审结果的五种处置方式验证:流转、报废、让步接收、返工、退货 @@ -132,4 +124,41 @@ public class QcPDAController { return qcInspectionResultService.queryList(bo); } + /** + * PDA分页查询不合格品待评审任务 + * @param bo + * @param pageQuery + * @return + */ + @GetMapping("/getUnqualifiedReviewList") + public TableDataInfo getUnqualifiedReviewList(QcUnqualifiedReviewBo bo, PageQuery pageQuery) { + return qcUnqualifiedReviewService.queryPageList(bo, pageQuery); + } + + /** + * PDA查询不合格品评审任务详情 + * @param bo + * @return + */ + @GetMapping("/getUnqualifiedRecordList") + public List getUnqualifiedRecordList(QcUnqualifiedRecordBo bo) { + return qcUnqualifiedRecordService.queryList(bo); + } + + /** + * 不合格评审处理-开始评审 + * @param dispositionType + * @param reviewIds + * @return + */ + @GetMapping("/handleUnqualified/{dispositionType}/{reviewIds}") + public R handleUnqualified(@PathVariable("dispositionType") String dispositionType , @PathVariable("reviewIds") Long[] reviewIds) { + Boolean result = qcPDAService.handleUnqualified(dispositionType, reviewIds); + if (result != null && result) { + return R.ok(true); + } else { + return R.fail("不合格评审处理失败"); + } + } + } diff --git a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/IQcPDAService.java b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/IQcPDAService.java index 5fb2249..e32f6a7 100644 --- a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/IQcPDAService.java +++ b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/IQcPDAService.java @@ -1,8 +1,10 @@ package org.dromara.qms.service; +import jakarta.validation.Valid; import org.dromara.pda.api.model.bo.GenerateInspectionTaskBo; import org.dromara.qms.domain.bo.QcInspectionMainBo; +import org.dromara.qms.domain.bo.QcUnqualifiedReviewBo; /** * PDA接口Service接口 @@ -22,4 +24,11 @@ public interface IQcPDAService { */ Boolean submitInspection(QcInspectionMainBo bo); + /** + * 不合格评审处理-开始评审 + * @param dispositionType + * @param reviewIds + * @return + */ + Boolean handleUnqualified(String dispositionType, Long[] reviewIds); } diff --git a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java index a9fd776..7b5cc21 100644 --- a/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java +++ b/ruoyi-modules/hwmom-qms/src/main/java/org/dromara/qms/service/impl/QcPDAServiceImpl.java @@ -15,9 +15,7 @@ import org.dromara.pda.api.model.bo.GenerateInspectionTaskBo; import org.dromara.qms.domain.bo.QcInspectionResultBo; import org.dromara.qms.domain.bo.QcInspectionTemplateBo; import org.dromara.qms.domain.bo.QcTemplateItemBo; -import org.dromara.qms.domain.vo.QcInspectionMainVo; -import org.dromara.qms.domain.vo.QcInspectionTemplateVo; -import org.dromara.qms.domain.vo.QcTemplateItemVo; +import org.dromara.qms.domain.vo.*; import org.dromara.qms.service.*; import org.dromara.system.api.RemoteCodeRuleService; import org.springframework.beans.BeanUtils; @@ -28,7 +26,6 @@ import org.springframework.transaction.annotation.Transactional; import org.dromara.common.satoken.utils.LoginHelper; import org.dromara.qms.domain.bo.QcUnqualifiedReviewBo; import org.dromara.qms.domain.bo.QcUnqualifiedRecordBo; -import org.dromara.qms.domain.vo.QcInspectionResultVo; import org.dromara.common.core.utils.MapstructUtils; import java.math.BigDecimal; @@ -92,7 +89,7 @@ public class QcPDAServiceImpl implements IQcPDAService { String materialCode = planDetail.getMaterialCode(); QcInspectionTemplateBo templateBo = new QcInspectionTemplateBo(); templateBo.setMaterialCode(materialCode); -// templateBo.setQcInspectionType(); + templateBo.setQcInspectionType(bo.getQcInspectionType()); List templateVos = qcInspectionTemplateService.queryList(templateBo); if (templateVos.size() != 1) { throw new ServiceException("此物料无可用检测模板!"); @@ -297,4 +294,33 @@ public class QcPDAServiceImpl implements IQcPDAService { // 方法执行成功返回true return true; } + + /** + * 不合格评审处理-开始评审 + * @param dispositionType + * @param reviewIds + * @return + */ + @Override + public Boolean handleUnqualified(String dispositionType, Long[] reviewIds) { + for (Long reviewId : reviewIds) { + QcUnqualifiedReviewVo reviewVo = qcUnqualifiedReviewService.queryById(reviewId); + if (StringUtils.isNull(reviewVo)) { + throw new ServiceException("未找到不合格评审ID"); + } + if (StringUtils.isNotEmpty(reviewVo.getReviewResult()) ) { + throw new ServiceException("此不合格评审单已评审"); + } + QcUnqualifiedReviewBo reviewBo = new QcUnqualifiedReviewBo(); + reviewBo.setReviewId(reviewId); + reviewBo.setReviewResult(dispositionType); + reviewBo.setReviewer(LoginHelper.getUsername()); + reviewBo.setReviewStartTime(new Date()); + qcUnqualifiedReviewService.updateByBo(reviewBo); + //集成工作流 + } + return true; + } + + }