Browse Source

采购单获取编号

guq 7 years ago
parent
commit
4204395a1b

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

@@ -103,11 +103,12 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         purchase.setCreatorId(userId);
         purchase.setCreateTime(new Date());
 
+        //编号校验
+        pu_code = pushMaxnubmer(pu_code, pu_id);
+        purchase.setPu_code(pu_code);
+        saveDTO.setCode(pu_code);
         //判断更新与保存动作
         if (!StringUtils.isEmpty(pu_id)) {
-            //更新编号校验
-            Integer count = purchaseMapper.validateCodeWhenUpdate(pu_code, pu_id);
-
             //更新主表
             purchaseMapper.updateByPrimaryKeySelective(purchase);
             //添加从表传输对象
@@ -133,8 +134,6 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
             return saveDTO;
         }
 
-        //插入编号校验
-        Integer count = purchaseMapper.validateCodeWhenInsert(pu_code);
         //插入操作
         purchaseMapper.insertSelective(purchase);
         pu_id = purchase.getId();
@@ -182,8 +181,10 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     @Override
     public void batchAudit(BatchDealBaseDTO baseDTOs) {
         if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
-                baseDTOs.getBaseDTOs().size() == 0)
+                baseDTOs.getBaseDTOs().size() == 0) {
             return;
+        }
+
         String validate = purchaseMapper.validateAudit(baseDTOs.getBaseDTOs());
         if (!StringUtils.isEmpty(validate)) {
             throw new BizException(500, "存在已审核单据,单据编号:" + validate);
@@ -196,8 +197,10 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     @Override
     public void batchDelete(BatchDealBaseDTO baseDTOs) {
         if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
-                baseDTOs.getBaseDTOs().size() == 0)
+                baseDTOs.getBaseDTOs().size() == 0) {
             return;
+        }
+
         for (DocBaseDTO base : baseDTOs.getBaseDTOs()) {
             singleDelete(base.getId());
         }
@@ -218,8 +221,10 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     @Override
     public void batchUnAudit(BatchDealBaseDTO baseDTOs) {
         if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
-                baseDTOs.getBaseDTOs().size() == 0)
+                baseDTOs.getBaseDTOs().size() == 0) {
             return;
+        }
+
         String msg = purchaseMapper.validateBatchUnAudit(baseDTOs.getBaseDTOs());
         if (null != msg) {
             throw new BizException(500, "存在未审核单据,单据编号:" + msg);
@@ -241,13 +246,16 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
     @Override
     public void openPurchase(long id) {
         List<PurchaseDetail> purchaseDetailList = purchasedetailMapper.selectByFK(id);
-        int partTurnCount = 0,turnCount = 0;            //部分入库、全部入库
+        //部分入库、全部入库
+        int partTurnCount = 0,turnCount = 0;
         if(purchaseDetailList != null && purchaseDetailList.size() > 0){
             for(PurchaseDetail purchaseDetail : purchaseDetailList){
-                if(purchaseDetail.getPd_acceptqty() >= purchaseDetail.getPd_qty()){     //入库数大于等于采购数
+                //入库数大于等于采购数
+                if(purchaseDetail.getPd_acceptqty() >= purchaseDetail.getPd_qty()){
                     turnCount++;
-                }else if(purchaseDetail.getPd_acceptqty() > 0 && purchaseDetail.getPd_acceptqty() < purchaseDetail.getPd_qty()){    //     0 < 入库数 < 采购数
+                    //     0 < 入库数 < 采购数
                     partTurnCount++;
+                }else if(purchaseDetail.getPd_acceptqty() > 0 && purchaseDetail.getPd_acceptqty() < purchaseDetail.getPd_qty()){
                 }
             }
             //构造更新对象
@@ -311,4 +319,17 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         }
         return list;
     }
+
+    /**
+    * @Description: 检验获取并更新单号
+    * @Param: [code, id]
+    * @return: java.lang.String
+    * @Author: guq
+    * @Date: 2018/10/19
+    */
+    private String pushMaxnubmer(String code, Long id) {
+        Integer count = id != null ?  purchaseMapper.validateCodeWhenUpdate(code, id) :
+                purchaseMapper.validateCodeWhenInsert(code);
+        return maxnumberService.pushMaxnubmer(count, code, "Purchase");
+    }
 }