Преглед на файлове

校验是否存在SAP订单号和物料重复数据

v_HuilingDeng преди 3 години
родител
ревизия
e625de156a

+ 6 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/controller/console/QrPackageController.java

@@ -76,4 +76,10 @@ public class QrPackageController {
         qrPackageService.downloadQrPackage(downloadQrPackageReq, response);
     }
 
+    @ApiOperation("校验是否存在SAP订单号和物料重复数据")
+    @PostMapping("/validSAPOrderNoAndMaterial")
+    public BaseResponse validSAPOrderNoAndMaterial(@Validated @RequestBody ValidSAPOrderNoAndMaterialReq req) {
+        return BaseResponse.create(qrPackageService.validSAPOrderNoAndMaterial(req));
+    }
+
 }

+ 27 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/req/ValidSAPOrderNoAndMaterialReq.java

@@ -0,0 +1,27 @@
+package com.abi.qms.platform.dto.req;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+/**
+ * @author Eurus
+ * @date 2021/5/19 20:16
+ * @Description: 校验是否存在SAP订单号和物料重复数据 入参
+ */
+@Data
+@ApiModel
+public class ValidSAPOrderNoAndMaterialReq implements Serializable{
+
+    @NotNull(message = "物料名称为空")
+    @ApiModelProperty(value = "物料id")
+    private Long materialId;
+
+    @NotEmpty(message = "SAP单号为空")
+    @ApiModelProperty("SAP单号")
+    private String sapOrderNo;
+}

+ 37 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/dto/res/ValidSAPOrderNoAndMaterialRes.java

@@ -0,0 +1,37 @@
+package com.abi.qms.platform.dto.res;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.ToString;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author Eurus
+ * @date 2021/5/19 20:20
+ * @Description: 校验是否存在SAP订单号和物料重复数据 出参
+ */
+@Data
+@ApiModel
+public class ValidSAPOrderNoAndMaterialRes implements Serializable {
+
+    @ApiModelProperty("码包bean列表")
+    private List<PackageBean> packageBeanList;
+
+    /**
+     * 码包bean
+     */
+    @Data
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ToString
+    @ApiModel(value = "ValidSAPOrderNoAndMaterialRes_PackageBean")
+    public static class PackageBean implements Serializable {
+        @ApiModelProperty(value = "码包id")
+        private Long id;
+    }
+}

+ 2 - 2
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/infrastructure/mq/GenerateCodeConsumer.java

@@ -131,12 +131,12 @@ public class GenerateCodeConsumer {
 
 		// 申请数量、批次号、创建时间、重复次数
 		Long qrNumber = qrPackageVo.getQrNumber();
-		String batchNumber = qrPackageVo.getBatchNumber();
+//		String batchNumber = qrPackageVo.getBatchNumber();
 		LocalDateTime localDateTime = LocalDateTime.now();
 		int repeatTimes = 0;
 
 		// 循环生成码
-		loopGenerateCode(qrRepertoryColumnList, qrRepertoryId, urlMap, qrRepertorySerialNumberMap, qrNumber, batchNumber, localDateTime, repeatTimes);
+//		loopGenerateCode(qrRepertoryColumnList, qrRepertoryId, urlMap, qrRepertorySerialNumberMap, qrNumber, batchNumber, localDateTime, repeatTimes);
 
 		// 更新码库流水号
 		if (!qrRepertorySerialNumberMap.isEmpty()) {

+ 8 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/QrPackageService.java

@@ -5,6 +5,7 @@ import com.abi.qms.platform.dao.entity.QrPackage;
 import com.abi.qms.platform.dto.req.*;
 import com.abi.qms.platform.dto.res.GetQrPackageDetailRes;
 import com.abi.qms.platform.dto.res.ListQrPackageRes;
+import com.abi.qms.platform.dto.res.ValidSAPOrderNoAndMaterialRes;
 
 import javax.servlet.http.HttpServletResponse;
 import java.io.File;
@@ -64,4 +65,11 @@ public interface QrPackageService {
 	 * 码生成失败回滚
 	 */
 	void failedRollback(QrPackage qrPackage);
+
+	/**
+	 * 校验是否存在SAP订单号和物料重复数据
+	 * @param req
+	 * @return
+	 */
+	ValidSAPOrderNoAndMaterialRes validSAPOrderNoAndMaterial(ValidSAPOrderNoAndMaterialReq req);
 }

+ 1 - 1
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/FactoryServiceImpl.java

@@ -210,7 +210,7 @@ public class FactoryServiceImpl implements FactoryService {
             qrPackageQuery.eq("is_delete", 0);
             List<QrPackage> qrPackages = qrPackageMapper.selectList(qrPackageQuery);
             if(CollectionUtil.isNotEmpty(qrPackages)){
-                throw  new BusinessException("供应商" + factory.getFactoryName() + "已与码包" + qrPackages.get(0).getName()+ "绑定,请解绑后再停用。");
+                throw  new BusinessException("供应商" + factory.getFactoryName() + "已与码包" + qrPackages.get(0).getId()+ "绑定,请解绑后再停用。");
             }
 
             //2-修改状态

+ 14 - 0
abi-cloud-qr-platform-server/src/main/java/com/abi/qms/platform/service/impl/QrPackageServiceImpl.java

@@ -15,6 +15,7 @@ import com.abi.qms.platform.dao.vo.result.QrPackageVO;
 import com.abi.qms.platform.dto.req.*;
 import com.abi.qms.platform.dto.res.GetQrPackageDetailRes;
 import com.abi.qms.platform.dto.res.ListQrPackageRes;
+import com.abi.qms.platform.dto.res.ValidSAPOrderNoAndMaterialRes;
 import com.abi.qms.platform.infrastructure.mq.GenerateCodeConsumer;
 import com.abi.qms.platform.infrastructure.util.AssertUtil;
 import com.abi.qms.platform.infrastructure.util.PageUtil;
@@ -282,4 +283,17 @@ public class QrPackageServiceImpl implements QrPackageService {
 		QrPackage qrPackageUpdate = new QrPackage().setId(qrPackage.getId()).setGenerateStatus(QrPackageGenerateStatusEnum.GENERATE_FAIL.getCode());
 		qrPackageMapper.updateById(qrPackageUpdate);
 	}
+
+	@Override
+	public ValidSAPOrderNoAndMaterialRes validSAPOrderNoAndMaterial(ValidSAPOrderNoAndMaterialReq req) {
+		QueryWrapper<QrPackage> qrPackageQuery = new QueryWrapper<>();
+		qrPackageQuery.eq("material_id", req.getMaterialId());
+		qrPackageQuery.eq("sap_order_no", req.getSapOrderNo());
+		qrPackageQuery.eq("is_delete", 0);
+		List<QrPackage> qrPackages = qrPackageMapper.selectList(qrPackageQuery);
+		ValidSAPOrderNoAndMaterialRes validSAPOrderNoAndMaterialRes = new ValidSAPOrderNoAndMaterialRes();
+		List<ValidSAPOrderNoAndMaterialRes.PackageBean> packageBeans = PojoConverterUtils.copyList(qrPackages, ValidSAPOrderNoAndMaterialRes.PackageBean.class);
+		validSAPOrderNoAndMaterialRes.setPackageBeanList(packageBeans);
+		return validSAPOrderNoAndMaterialRes;
+	}
 }