Browse Source

采购单:审核增加检查最小包装数的提示

zhoudw 7 years ago
parent
commit
9af0550b32

+ 1 - 2
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/controller/PurchaseController.java

@@ -94,8 +94,7 @@ public class PurchaseController {
      */
     @PostMapping("/audit")
     public Result audit(@RequestBody PurchaseFormDTO formData) {
-        DocBaseDTO audit = purchaseService.audit(formData);
-        return Result.success(audit);
+        return purchaseService.audit(formData);
     }
 
     /**

+ 2 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/ProdIODetailMapper.java

@@ -36,4 +36,6 @@ public interface ProdIODetailMapper extends CommonBaseMapper<ProdIODetail> {
     void calcProdOut(@Param("pi_id") Long pi_id);
 
     void getDefaultWarehouseByProduct(@Param("pi_id") Long pi_id);
+
+    String checkzxbzs(Long id);
 }

+ 3 - 1
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/PurchaseService.java

@@ -71,7 +71,9 @@ public interface PurchaseService extends CommonBaseService<PurchaseMapper, Purch
      * @param formData
      * @return
      */
-    DocBaseDTO audit(PurchaseFormDTO formData);
+    Result audit(PurchaseFormDTO formData);
+
+
 
     /**
     * @Description 批量审核

+ 9 - 5
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java

@@ -206,7 +206,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
 
     @Override
     @Transactional
-    public DocBaseDTO audit(PurchaseFormDTO formData) {
+    public Result audit(PurchaseFormDTO formData) {
         Long id = null;
         DocBaseDTO baseDTO = null;
         if (null != formData) {
@@ -215,9 +215,9 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
                 baseDTO = saveFormData(formData);
                 id = baseDTO.getId();
             }
-            singleAudit(id);
+            return singleAudit(id);
         }
-        return baseDTO;
+        return Result.error("数据为空");
     }
 
     @Override
@@ -467,7 +467,11 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         return Result.success(baseDTO);
     }
 
-    private void singleAudit(Long id) {
+    private Result singleAudit(Long id) {
+        DocBaseDTO docBaseDTO = getBaseDTOById(id);
+        Result result = Result.success(docBaseDTO);
+        //检查最小包装数
+        result.setMessage(prodIODetailMapper.checkzxbzs(id));
         Purchase purchase = new Purchase();
         //生成更新对象
         purchase.setId(id);
@@ -479,9 +483,9 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         purchaseMapper.updateByPrimaryKeySelective(purchase);
         //更新最新采购单价
         productApi.updateLatestPurchasePrice(id);
-        DocBaseDTO docBaseDTO = getBaseDTOById(id);
         //日志
         messageLogService.audit(docBaseDTO);
+        return result;
     }
 
     private void singleUnAudit(Long id) {

+ 6 - 0
applications/purchase/purchase-server/src/main/resources/mapper/ProdIODetailMapper.xml

@@ -760,5 +760,11 @@
     where pd_piid = #{pi_id,jdbcType=INTEGER};
   </update>
 
+  <select id="checkzxbzs" parameterType="long" resultType="string">
+    select GROUP_CONCAT(CONCAT(PD_DETNO,'行',PD_PRODCODE,'物料采购数量不是最小包装数',round(pr_zxbzs,0),'的整数倍')) from purchasedetail left join product on PD_PRODID = pr_id
+    where
+    MOD(PD_QTY,pr_zxbzs)=0 and
+    PD_PUID = #{id,jdbcType=INTEGER};
+  </select>
 
 </mapper>