inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsOrderMapper.java
@@ -29,6 +29,8 @@ @Mapper public interface InsOrderMapper extends BaseMapper<InsOrder> { int updateInspectionOrderEntrustCode(@Param("orderId") Integer orderId, @Param("entrustCode") String entrustCode); Integer selectQualityMonitorEvaluatorId(@Param("orderId") Integer orderId); inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsSampleReceiptServiceImpl.java
@@ -133,10 +133,25 @@ receipt.setReceiveUserId(SecurityUtils.getUserId().intValue()); receipt.setReceiveTime(LocalDateTime.now()); receiptMapper.updateById(receipt); InsOrder currentOrder = insOrderMapper.selectById(receipt.getInsOrderId()); if (currentOrder == null || StringUtils.isBlank(currentOrder.getEntrustCode())) { throw new ErrorException("委托编号不存在,不能作废"); } String originalCode = currentOrder.getEntrustCode(); String voidCode = originalCode + "-zf"; int suffix = 2; // 同一原编号可能经历多次下单、拒收,保留每张作废单的唯一编号。 while (insOrderMapper.selectCount(Wrappers.<InsOrder>lambdaQuery() .eq(InsOrder::getEntrustCode, voidCode) .ne(InsOrder::getId, currentOrder.getId())) > 0) { voidCode = originalCode + "-" + suffix++ + "-zf"; } InsOrder order = new InsOrder(); order.setId(receipt.getInsOrderId()); order.setId(currentOrder.getId()); order.setEntrustCode(voidCode); order.setState(5); insOrderMapper.updateById(order); insOrderMapper.updateInspectionOrderEntrustCode(order.getId(), voidCode); } private void ensurePending(InsSampleReceipt receipt) { inspect-server/src/main/java/com/ruoyi/inspect/vo/InsOrderPrintingVo.java
@@ -22,6 +22,9 @@ @Schema(description = "生产单位") private String production; @Schema(description = "样品外观") private String sampleStatus; @Schema(description = "规格型号") private String sampleModel; inspect-server/src/main/resources/mapper/InsOrderMapper.xml
@@ -3,6 +3,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.inspect.mapper.InsOrderMapper"> <update id="updateInspectionOrderEntrustCode"> UPDATE cnas_inspection_order SET entrust_code = #{entrustCode} WHERE ins_order_id = #{orderId} </update> <select id="selectQualityMonitorEvaluatorId" resultType="java.lang.Integer"> SELECT cqmd.evaluator_user_id @@ -433,6 +438,7 @@ from (select io2.id insOrderId, io2.sample_view, io2.production, io2.sample_status, io2.sample_date, GROUP_CONCAT(DISTINCT isa.model SEPARATOR ' ') AS sample_model, io2.prepare_user,