Browse Source

添加客户存货编号生成方法

阿伏兔 4 years ago
parent
commit
2d1ba2cbf2

+ 46 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/BillnoSerialServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ruoyi.warehouseBusiness.service.impl;
 
+import com.ruoyi.basicData.domain.TCorps;
+import com.ruoyi.basicData.mapper.TCorpsMapper;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.warehouseBusiness.domain.BillnoDel;
 import com.ruoyi.warehouseBusiness.domain.BillnoSerial;
@@ -22,11 +24,20 @@ import java.util.List;
 @Service
 public class BillnoSerialServiceImpl implements IBillnoSerialService {
     @Autowired
+    private TCorpsMapper tCorpsMapper;
+
+    @Autowired
     private BillnoDelMapper billnoDelMapper;
 
     @Autowired
     private BillnoSerialMapper billnoSerialMapper;
 
+    /**
+     * 获取业务编号
+     * @param billType  编号类型(SJRK(入库) SJCK(实际出库) CKDB(调拨) HQZY(货权转移))
+     * @param time      入库时间
+     * @return  结果
+     */
     public String getBillNo(String billType, Date time) {
         String billNo = null;
         BillnoDel billnoDel = new BillnoDel();
@@ -71,6 +82,41 @@ public class BillnoSerialServiceImpl implements IBillnoSerialService {
     }
 
     /**
+     *  获取客户存货编号
+     * @param corpId    客户id
+     * @param time      时间
+     * @return  结果
+     */
+    public String getCorpNo(long corpId, Date time) {
+        String corpNo = null;
+        String yyyy = DateFormatUtils.format(time, "yyyy");
+        TCorps corps = tCorpsMapper.selectTCorpsById(corpId);
+        corpNo = corps.getfNo() + yyyy;
+        BillnoSerial billnoSerial = new BillnoSerial();
+        billnoSerial.setBillType("corpNo");
+        billnoSerial.setBillPrefix(yyyy);
+        BillnoSerial billnoSerials = billnoSerialMapper.selectBillnoSerial(billnoSerial);
+        if (StringUtils.isNotNull(billnoSerials)) {
+            billnoSerials.setSerial(billnoSerials.getSerial() + 1);
+            billnoSerialMapper.updateBillnoSerial(billnoSerials);
+            if (billnoSerials.getSerial() <= 9) {
+                corpNo = corpNo + "000" + billnoSerials.getSerial();
+            } else if (billnoSerials.getSerial() <= 99) {
+                corpNo = corpNo + "00" + billnoSerials.getSerial();
+            } else if (billnoSerials.getSerial() <= 999) {
+                corpNo = corpNo + "0" + billnoSerials.getSerial();
+            } else if (billnoSerials.getSerial() <= 9999) {
+                corpNo = corpNo + billnoSerials.getSerial();
+            }
+        } else {
+            billnoSerial.setSerial(1);
+            billnoSerialMapper.insertBillnoSerial(billnoSerial);
+            corpNo = corpNo + "0001";
+        }
+        return corpNo;
+    }
+
+    /**
      * 查询客户存货编号流水号
      *
      * @param id 客户存货编号流水号ID