Browse Source

道和银行接口 生成仓单号接口修改
2022年7月28日17点36分

纪新园 3 years ago
parent
commit
2ff1af8df0

+ 1 - 1
ruoyi-plugin/src/main/java/com/ruoyi/ccb/domain/FindDeviceData.java

@@ -13,7 +13,7 @@ public class FindDeviceData {
     /**
     /**
      * 设备数据
      * 设备数据
      */
      */
-    private List<DevicesDetail> deviceId;
+    private List<String> deviceId;
 
 
     /**
     /**
      * 数据接入url
      * 数据接入url

+ 19 - 14
ruoyi-plugin/src/main/java/com/ruoyi/ccb/service/impl/CcbHttpServiceImpl.java

@@ -215,23 +215,27 @@ public class CcbHttpServiceImpl implements CcbHttpService {
     public PledgeR generateWrNumber(Pledge pledge) {
     public PledgeR generateWrNumber(Pledge pledge) {
         System.out.println(pledge);
         System.out.println(pledge);
         List<CargoDetail> cargos = pledge.getCargos();
         List<CargoDetail> cargos = pledge.getCargos();
-        List<String> billNoList = cargos.stream()
-                .map(CargoDetail::getBlNumber)
-                .collect(Collectors.toList());
-
-        AjaxResult result = ccbService.lockStock(pledge.getUserName(), billNoList, true);
+        int count = 0;
+        for (CargoDetail cargosDetail:cargos) {
+            String wrNumber = ccbService.generateWrNumber(pledge.getUserName(), cargosDetail.getBlNumber(), true);
+            if (ObjectUtil.isNotNull(wrNumber)){
+                cargosDetail.setWrNumber(wrNumber);
+                count++;
+            }else{
+                cargosDetail.setWrNumber("");
+            }
+        }
 
 
         PledgeR pledgeR = new PledgeR();
         PledgeR pledgeR = new PledgeR();
         pledgeR.setUserName(pledge.getUserName());
         pledgeR.setUserName(pledge.getUserName());
         pledgeR.setUscc(pledge.getUscc());
         pledgeR.setUscc(pledge.getUscc());
         pledgeR.setNewUserName(pledge.getNewUserName());
         pledgeR.setNewUserName(pledge.getNewUserName());
         pledgeR.setNewUserNameUscc(pledge.getNewUserNameUscc());
         pledgeR.setNewUserNameUscc(pledge.getNewUserNameUscc());
-        if ((int) result.get("code") != 200) {
+        if (count != cargos.size()) {
             pledgeR.setResult("N");
             pledgeR.setResult("N");
-            pledgeR.setReason((String) result.get("msg"));
+            pledgeR.setReason("生成仓单号失败");
         } else {
         } else {
             pledgeR.setResult("Y");
             pledgeR.setResult("Y");
-            cargos.forEach(cargo -> cargo.setWrNumber(cargo.getBlNumber()));
         }
         }
         pledgeR.setCargos(cargos);
         pledgeR.setCargos(cargos);
         return pledgeR;
         return pledgeR;
@@ -677,11 +681,11 @@ public class CcbHttpServiceImpl implements CcbHttpService {
     @Override
     @Override
     public FindDeviceData findDeviceData(String deviceId) {
     public FindDeviceData findDeviceData(String deviceId) {
         List<DevicesDetail> devicesDetailList = DevicesDetail.date();
         List<DevicesDetail> devicesDetailList = DevicesDetail.date();
-        List<DevicesDetail> devicesDetail = devicesDetailList.stream().filter(item -> item.getDeviceId().equals(deviceId)).collect(Collectors.toList());
-
+        List<String> devicesDetail = devicesDetailList.stream().map(DevicesDetail::getDeviceId).collect(Collectors.toList());
+        List<String> deviceIds = devicesDetail.stream().filter(item -> item.equals(deviceId)).collect(Collectors.toList());
         FindDeviceData findDeviceData = new FindDeviceData();
         FindDeviceData findDeviceData = new FindDeviceData();
         findDeviceData.setUrl("");
         findDeviceData.setUrl("");
-        findDeviceData.setDeviceId(devicesDetail);
+        findDeviceData.setDeviceId(deviceIds);
         return findDeviceData;
         return findDeviceData;
     }
     }
 
 
@@ -694,11 +698,11 @@ public class CcbHttpServiceImpl implements CcbHttpService {
     @Override
     @Override
     public FindDeviceData findDeviceHistoryData(HistoryData historyData) {
     public FindDeviceData findDeviceHistoryData(HistoryData historyData) {
         List<DevicesDetail> devicesDetailList = DevicesDetail.date();
         List<DevicesDetail> devicesDetailList = DevicesDetail.date();
-        List<DevicesDetail> devicesDetail = devicesDetailList.stream().filter(item -> item.getDeviceId().equals(historyData.getDeviceId())).collect(Collectors.toList());
-
+        List<String> devicesDetail = devicesDetailList.stream().map(DevicesDetail::getDeviceId).collect(Collectors.toList());
+        List<String> deviceIds = devicesDetail.stream().filter(item -> item.equals(historyData.getDeviceId())).collect(Collectors.toList());
         FindDeviceData findDeviceData = new FindDeviceData();
         FindDeviceData findDeviceData = new FindDeviceData();
         findDeviceData.setUrl("");
         findDeviceData.setUrl("");
-        findDeviceData.setDeviceId(devicesDetail);
+        findDeviceData.setDeviceId(deviceIds);
         return findDeviceData;
         return findDeviceData;
     }
     }
 
 
@@ -722,6 +726,7 @@ public class CcbHttpServiceImpl implements CcbHttpService {
             item.setfCntqty(1L);
             item.setfCntqty(1L);
             item.setWarehouseNo(cargo.getWarehouseNo());
             item.setWarehouseNo(cargo.getWarehouseNo());
             item.setShelvesNo(cargo.getShelvesName());
             item.setShelvesNo(cargo.getShelvesName());
+            item.setType(cargo.getCargoType());
 
 
             if (ObjectUtil.isNotNull(cargo.getNumber())) {
             if (ObjectUtil.isNotNull(cargo.getNumber())) {
                 item.setfPlanqty(cargo.getNumber());
                 item.setfPlanqty(cargo.getNumber());

+ 7 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/mapper/TWhgenlegMapper.java

@@ -281,4 +281,11 @@ public interface TWhgenlegMapper {
      * @return
      * @return
      */
      */
     List<Map<String, Object>> selectQueryAssets(@Param("blNumber")String blNumber, @Param("corpId")Long corpId, @Param("wrNumber")String wrNumber, @Param("cargoType")String cargoType);
     List<Map<String, Object>> selectQueryAssets(@Param("blNumber")String blNumber, @Param("corpId")Long corpId, @Param("wrNumber")String wrNumber, @Param("cargoType")String cargoType);
+
+    /**
+     * 通过提单号查询入库编号
+     * @param billNo 提单号
+     * @return  入库单号
+     */
+    String selectfOriginalbillno(@Param("billNo")String billNo);
 }
 }

+ 13 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehousebillsitems.java

@@ -382,6 +382,11 @@ public class TWarehousebillsitems extends BaseEntity {
 
 
     private String cargoName;
     private String cargoName;
 
 
+    /**
+     * 商品类别
+     */
+    private String type;
+
     public String getCargoName() {
     public String getCargoName() {
         return cargoName;
         return cargoName;
     }
     }
@@ -396,6 +401,14 @@ public class TWarehousebillsitems extends BaseEntity {
 
 
     private String shelvesNo;
     private String shelvesNo;
 
 
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
     public String getfElabel() {
     public String getfElabel() {
         return fElabel;
         return fElabel;
     }
     }

+ 12 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/IWarehouseBillsCcbService.java

@@ -108,4 +108,16 @@ public interface IWarehouseBillsCcbService {
      * @return  结果
      * @return  结果
      */
      */
     int cargosRF(TWhgenleg stock, String userName);
     int cargosRF(TWhgenleg stock, String userName);
+
+    /**
+     * 锁定库存
+     *
+     * @param belongTo 归属人
+     * @param billNo 提单号
+     * @param isWrNumber 是否仓单编号请求
+     * @return 结果
+     */
+    String generateWrNumber(String belongTo, String billNo, boolean isWrNumber);
+
+
 }
 }

+ 58 - 15
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/WarehouseBillsCcbServiceImpl.java

@@ -9,10 +9,10 @@ import com.ruoyi.basicData.mapper.TCorpsMapper;
 import com.ruoyi.basicData.mapper.TGoodsMapper;
 import com.ruoyi.basicData.mapper.TGoodsMapper;
 import com.ruoyi.basicData.mapper.TWarehouseMapper;
 import com.ruoyi.basicData.mapper.TWarehouseMapper;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.core.domain.entity.TWarehouse;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.reportManagement.domain.TWhgenleg;
 import com.ruoyi.reportManagement.domain.TWhgenleg;
 import com.ruoyi.reportManagement.mapper.TWhgenlegMapper;
 import com.ruoyi.reportManagement.mapper.TWhgenlegMapper;
+import com.ruoyi.system.mapper.SysDictDataMapper;
 import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
 import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
 import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitems;
 import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitems;
 import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitemsElabel;
 import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitemsElabel;
@@ -55,6 +55,8 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
 
 
     private final TWhgenlegMapper stockMapper;
     private final TWhgenlegMapper stockMapper;
 
 
+    private final SysDictDataMapper sysDictData;
+
     @Override
     @Override
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     public AjaxResult inAndOutStock(String billType, List<TWarehousebillsitems> items) {
     public AjaxResult inAndOutStock(String billType, List<TWarehousebillsitems> items) {
@@ -68,12 +70,26 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
             TGoods goods = goodsMapper.getGoodsByNo(item.getCargoNo());
             TGoods goods = goodsMapper.getGoodsByNo(item.getCargoNo());
             TGoods goods1 = new TGoods();
             TGoods goods1 = new TGoods();
             if (ObjectUtil.isNull(goods)) {
             if (ObjectUtil.isNull(goods)) {
-//                String[] arr = item.getCargoName().split(":");
+                String type = "";
+                if (item.getType().contains("橡胶")) {
+                    type = "橡胶";
+                } else if (item.getType().contains("棉花")) {
+                    type = "棉花";
+                } else if (item.getType().contains("钢铁")) {
+                    type = "钢铁";
+                } else {
+                    type = "无";
+                }
+                String dictValue = sysDictData.selectDictValue("data_goods_category", type);
+                if (ObjectUtil.isNotNull(dictValue)) {
+                    goods1.setfTypeid(Long.getLong(dictValue));
+                } else {
+                    goods1.setfTypeid(999l);
+                }
                 goods1.setfName(item.getCargoName());
                 goods1.setfName(item.getCargoName());
                 goods1.setfNo(item.getCargoNo());
                 goods1.setfNo(item.getCargoNo());
                 goodsMapper.insertTGoods(goods1);
                 goodsMapper.insertTGoods(goods1);
-//                return AjaxResult.error("商品不存在!");
-            }else{
+            } else {
                 goods1.setfId(goods.getfId());
                 goods1.setfId(goods.getfId());
             }
             }
 
 
@@ -127,6 +143,7 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
             bill.setfItemsStatus(2L);
             bill.setfItemsStatus(2L);
             bill.setfBsdate(bsDate);
             bill.setfBsdate(bsDate);
             bill.setfBstime(bsDate);
             bill.setfBstime(bsDate);
+            bill.setfProductName(item.getCargoName());
 
 
             if ("SJRK".equals(billType)) {
             if ("SJRK".equals(billType)) {
                 String bsCorpNo = serialServiceImpl.getCorpNo(corp.getfId(), bsDate);
                 String bsCorpNo = serialServiceImpl.getCorpNo(corp.getfId(), bsDate);
@@ -214,13 +231,14 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
     @Override
     @Override
     public AjaxResult lockStock(String belongTo, List<String> billNoList, boolean isWrNumber) {
     public AjaxResult lockStock(String belongTo, List<String> billNoList, boolean isWrNumber) {
         billNoList.forEach(billNo -> {
         billNoList.forEach(billNo -> {
+            String fOriginalbillno = stockMapper.selectfOriginalbillno(billNo);
             TWhgenleg stock = new TWhgenleg();
             TWhgenleg stock = new TWhgenleg();
             stock.setfOriginalbillno(billNo);
             stock.setfOriginalbillno(billNo);
             stock.setLockStatus(1);
             stock.setLockStatus(1);
             stock.setBelongTo(belongTo);
             stock.setBelongTo(belongTo);
             stock.setLockTime(new Date());
             stock.setLockTime(new Date());
             if (isWrNumber) {
             if (isWrNumber) {
-                stock.setWrNumber(billNo);
+                stock.setWrNumber(fOriginalbillno);
             }
             }
             stockMapper.changeBelongTo(stock);
             stockMapper.changeBelongTo(stock);
         });
         });
@@ -259,18 +277,18 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
      *
      *
      * @param blNumber 提单号
      * @param blNumber 提单号
      * @param corpName 客户名
      * @param corpName 客户名
-     * @param billNo 保管凭证号
+     * @param billNo   保管凭证号
      * @return 库存列表
      * @return 库存列表
      */
      */
     @Override
     @Override
-    public List<Map<String, Object>> selectBlNumber(String blNumber, String corpName,String billNo) {
+    public List<Map<String, Object>> selectBlNumber(String blNumber, String corpName, String billNo) {
         // 获取客户信息
         // 获取客户信息
         TCorps corp = corpMapper.getCorpByName(corpName);
         TCorps corp = corpMapper.getCorpByName(corpName);
         //判断该客户是否存在
         //判断该客户是否存在
         if (ObjectUtil.isNull(corp)) {
         if (ObjectUtil.isNull(corp)) {
             return Collections.emptyList();
             return Collections.emptyList();
         }
         }
-        return stockMapper.selectBlNumber(blNumber, corp.getfId(),billNo);
+        return stockMapper.selectBlNumber(blNumber, corp.getfId(), billNo);
     }
     }
 
 
     @Override
     @Override
@@ -281,16 +299,17 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
         if (ObjectUtil.isNull(corp)) {
         if (ObjectUtil.isNull(corp)) {
             return Collections.emptyList();
             return Collections.emptyList();
         }
         }
-        return stockMapper.selectBlNumberPage(blNumber, corp.getfId(),billNo,pageNo,pageSize);
+        return stockMapper.selectBlNumberPage(blNumber, corp.getfId(), billNo, pageNo, pageSize);
     }
     }
 
 
 
 
     /**
     /**
      * 查询用户资产
      * 查询用户资产
+     *
      * @param blNumber  提单号
      * @param blNumber  提单号
      * @param userName  客户名称
      * @param userName  客户名称
-     * @param wrNumber   仓单编号
-     * @param cargoType  物料编号
+     * @param wrNumber  仓单编号
+     * @param cargoType 物料编号
      * @return
      * @return
      */
      */
     @Override
     @Override
@@ -301,14 +320,15 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
         if (ObjectUtil.isNull(corp)) {
         if (ObjectUtil.isNull(corp)) {
             return Collections.emptyList();
             return Collections.emptyList();
         }
         }
-        return stockMapper.selectQueryAssets(blNumber, corp.getfId(),wrNumber,cargoType);
+        return stockMapper.selectQueryAssets(blNumber, corp.getfId(), wrNumber, cargoType);
     }
     }
 
 
     /**
     /**
      * 跌价补货-修改仓单编号以及质押归属人
      * 跌价补货-修改仓单编号以及质押归属人
-     * @param stock   修改信息
-     * @param userName  客户
-     * @return  结果
+     *
+     * @param stock    修改信息
+     * @param userName 客户
+     * @return 结果
      */
      */
     @Override
     @Override
     public int cargosRF(TWhgenleg stock, String userName) {
     public int cargosRF(TWhgenleg stock, String userName) {
@@ -317,4 +337,27 @@ public class WarehouseBillsCcbServiceImpl implements IWarehouseBillsCcbService {
         stock.setfCorpid(corp.getfId());
         stock.setfCorpid(corp.getfId());
         return stockMapper.changeBelongTo(stock);
         return stockMapper.changeBelongTo(stock);
     }
     }
+
+    /**
+     * 锁定库存
+     *
+     * @param belongTo   归属人
+     * @param billNo     提单号
+     * @param isWrNumber 是否仓单编号请求
+     * @return 结果
+     */
+    @Override
+    public String generateWrNumber(String belongTo, String billNo, boolean isWrNumber) {
+        String fOriginalbillno = stockMapper.selectfOriginalbillno(billNo);
+        TWhgenleg stock = new TWhgenleg();
+        stock.setfOriginalbillno(billNo);
+        stock.setLockStatus(1);
+        stock.setBelongTo(belongTo);
+        stock.setLockTime(new Date());
+        if (isWrNumber) {
+            stock.setWrNumber(fOriginalbillno);
+        }
+        stockMapper.changeBelongTo(stock);
+        return fOriginalbillno;
+    }
 }
 }

+ 3 - 0
ruoyi-warehouse/src/main/resources/mapper/reportManagement/TWhgenlegMapper.xml

@@ -1557,6 +1557,9 @@
             <if test="cargoType != null and cargoType != ''">and t2.f_no = #{cargoType}</if>
             <if test="cargoType != null and cargoType != ''">and t2.f_no = #{cargoType}</if>
         </where>
         </where>
     </select>
     </select>
+    <select id="selectfOriginalbillno" resultType="java.lang.String">
+        select f_originalbillno from t_whgenleg where f_mblno = #{billNo} LIMIT 1
+    </select>
     <update id="changeBelongTo" parameterType="TWhgenleg">
     <update id="changeBelongTo" parameterType="TWhgenleg">
         update t_whgenleg
         update t_whgenleg
         <trim prefix="SET" suffixOverrides=",">
         <trim prefix="SET" suffixOverrides=",">