zhangyuewww 2 роки тому
батько
коміт
62f7e67b24

+ 2 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/TradeWarehouseReceiptAppl.java

@@ -271,6 +271,8 @@ public class TradeWarehouseReceiptAppl extends BaseModel<TradeWarehouseReceiptAp
 
     @TableField(exist = false)
     private List<TradeWarehouseReceiptAppl> tradeWarehouseReceiptAppls;
+    @TableField(exist = false)
+    private List<WarehouseInOutInfo> warehouseInOutInfoList;
 
     @Override
     protected Serializable pkVal() {

+ 13 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/WarehouseInOutInfo.java

@@ -252,6 +252,14 @@ public class WarehouseInOutInfo extends BaseModel<WarehouseInOutInfo> {
      * 退库勾选标识(0未勾选1已勾选2已退库)
      */
     private String returnTickFlag;
+    /**
+     * 所属仓单
+     */
+    private String warehouseReceipt;
+    /**
+     * 绑定仓单(0未绑定1已绑定)
+     */
+    private String binded;
     /**
      * 附件地址
      */
@@ -518,6 +526,11 @@ public class WarehouseInOutInfo extends BaseModel<WarehouseInOutInfo> {
      */
     @TableField(exist = false)
     private Double grainPrice;
+    /**
+     * 货权所属
+     */
+    @TableField(exist = false)
+    private String cargoRights;
 
 
     @Override

+ 23 - 21
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/CargoTitleDetailsServiceImpl.java

@@ -379,9 +379,31 @@ public class CargoTitleDetailsServiceImpl extends ServiceImpl<CargoTitleDetailsM
                 cargoPositionDetails.setId(IdGenerator.generateUUID());
                 cargoPositionDetails.setInfoId(cargoTitleDetails.getId());
                 cargoPositionDetailsService.insert(cargoPositionDetails);
+                WarehousingOrder warehousingOrder = new WarehousingOrder();
+                warehousingOrder.setId(IdGenerator.generateUUID());
+                warehousingOrder.setCompId(cargoTitleDetails.getCompId());
+                warehousingOrder.setBaseId(cargoTitleDetails.getBaseId());
+                warehousingOrder.setContractNo(cargoTitleDetails.getOutContractNo());
+                warehousingOrder.setWarehouseName(cargoTitleDetails.getWarehouseName());
+                warehousingOrder.setInType("货转");
+                warehousingOrder.setGoodsName(cargoTitleDetails.getGoodsName());
+                warehousingOrder.setGoodsSource(cargoTitleDetails.getContractSeller());
+                warehousingOrder.setInWarehouseWeight(cargoTitleDetails.getTransferOutWeight());
+                warehousingOrder.setAvgCost(cargoTitleDetails.getAvgCost());
+                warehousingOrder.setCustomer(cargoTitleDetails.getContractSeller());
+                warehousingOrder.setSurplusWeight(cargoTitleDetails.getTransferOutWeight());
+                warehousingOrder.setAmountNotPayable(cargoTitleDetails.getAmountNotPayable());
+                warehousingOrder.setGrainFund(cargoTitleDetails.getAmountNotPayable());
+                warehousingOrder.setIssuingTime(new Date());
+                warehousingOrder.setCustomerName(cargoTitleDetails.getPayee());
+                warehousingOrder.setBankCard(cargoTitleDetails.getAccountNumber());
+                warehousingOrder.setBankDeposit(cargoTitleDetails.getBank());
+                warehousingOrder.setBankDepositBranch(cargoTitleDetails.getBankBranch());
+                warehousingOrderService.insert(warehousingOrder);
                 WarehouseInOutInfo warehouseInOutInfo = new WarehouseInOutInfo();
                 warehouseInOutInfo.setId(IdGenerator.generateUUID());
                 warehouseInOutInfo.setBaseId(cargoTitleDetails.getBaseId());
+                warehouseInOutInfo.setOrderId(warehousingOrder.getId());
                 warehouseInOutInfo.setWarehouseName(cargoTitleDetails.getWarehouseName());
                 warehouseInOutInfo.setPositionId(cargoPositionDetails.getPositionId());
                 warehouseInOutInfo.setBinNumber(cargoPositionDetails.getBinNumber());
@@ -395,6 +417,7 @@ public class CargoTitleDetailsServiceImpl extends ServiceImpl<CargoTitleDetailsM
                 warehouseInOutInfo.setStatus(StatusEnum.SUBMITTED.getName());
                 warehouseInOutInfo.setInOutDate(new Date());
                 warehouseInOutInfo.setInOutType("货权转入");
+                warehouseInOutInfo.setCost(Float.valueOf(String.valueOf(warehousingOrder.getAvgCost())));
                 warehouseInOutInfo.setContractNo(cargoTitleDetails.getOutContractNo());
                 warehouseInOutInfoService.insert(warehouseInOutInfo);
                 WarehouseInOutDetail warehouseInOutDetail = new WarehouseInOutDetail();
@@ -434,27 +457,6 @@ public class CargoTitleDetailsServiceImpl extends ServiceImpl<CargoTitleDetailsM
                 stockPurchaseReceiptReport.setStatus(StatusEnum.NOT_COLLECTION_PAY.getName());
                 stockPurchaseReceiptReportService.insert(stockPurchaseReceiptReport);
             }
-            WarehousingOrder warehousingOrder = new WarehousingOrder();
-            warehousingOrder.setId(IdGenerator.generateUUID());
-            warehousingOrder.setCompId(cargoTitleDetails.getCompId());
-            warehousingOrder.setBaseId(cargoTitleDetails.getBaseId());
-            warehousingOrder.setContractNo(cargoTitleDetails.getOutContractNo());
-            warehousingOrder.setWarehouseName(cargoTitleDetails.getWarehouseName());
-            warehousingOrder.setInType("货转");
-            warehousingOrder.setGoodsName(cargoTitleDetails.getGoodsName());
-            warehousingOrder.setGoodsSource(cargoTitleDetails.getContractSeller());
-            warehousingOrder.setInWarehouseWeight(cargoTitleDetails.getTransferOutWeight());
-            warehousingOrder.setAvgCost(cargoTitleDetails.getAvgCost());
-            warehousingOrder.setCustomer(cargoTitleDetails.getContractSeller());
-            warehousingOrder.setSurplusWeight(cargoTitleDetails.getTransferOutWeight());
-            warehousingOrder.setAmountNotPayable(cargoTitleDetails.getAmountNotPayable());
-            warehousingOrder.setGrainFund(cargoTitleDetails.getAmountNotPayable());
-            warehousingOrder.setIssuingTime(new Date());
-            warehousingOrder.setCustomerName(cargoTitleDetails.getPayee());
-            warehousingOrder.setBankCard(cargoTitleDetails.getAccountNumber());
-            warehousingOrder.setBankDeposit(cargoTitleDetails.getBank());
-            warehousingOrder.setBankDepositBranch(cargoTitleDetails.getBankBranch());
-            warehousingOrderService.insert(warehousingOrder);
         }
         this.insert(cargoTitleDetails);
         return "ok";

+ 10 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/TradeWarehouseReceiptApplServiceImpl.java

@@ -20,6 +20,7 @@ import com.yh.saas.plugin.yiliangyiyun.service.INewWorkflowService;
 import com.yh.saas.plugin.yiliangyiyun.service.ITradeWarehouseReceiptApplService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.yh.saas.plugin.yiliangyiyun.service.IWarehouseBaseInfoService;
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehouseInOutInfoService;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -46,6 +47,8 @@ public class TradeWarehouseReceiptApplServiceImpl extends ServiceImpl<TradeWareh
     private INewWorkflowService workflowService;
     @Autowired
     private IWarehouseBaseInfoService warehouseBaseInfoService;
+    @Autowired
+    private IWarehouseInOutInfoService warehouseInOutInfoService;
     @SofaReference
     private ICommonRoleResourceService roleResourceService;
 
@@ -149,6 +152,13 @@ public class TradeWarehouseReceiptApplServiceImpl extends ServiceImpl<TradeWareh
         tradeWarehouseReceiptAppl.setStatusFlag(StatusEnum.TO_BE_REVIEWED.getFlag());
         tradeWarehouseReceiptAppl.setStatus(StatusEnum.TO_BE_REVIEWED.getName());
 
+        if (!CollectionUtils.isEmpty(tradeWarehouseReceiptAppl.getWarehouseInOutInfoList())){
+            for (WarehouseInOutInfo warehouseInOutInfo:tradeWarehouseReceiptAppl.getWarehouseInOutInfoList()){
+                warehouseInOutInfo.setWarehouseReceipt(tradeWarehouseReceiptAppl.getBillNo());
+                warehouseInOutInfo.setBinded("1");
+                warehouseInOutInfoService.updateById(warehouseInOutInfo);
+            }
+        }
         // 操作主表数据
         this.insert(tradeWarehouseReceiptAppl);
 //

+ 1 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/WarehouseInOutInfoServiceImpl.java

@@ -2871,6 +2871,7 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
         pageView.put("pageSize", warehouseInOutInfo.getPageSize());
         pageView.put("currentPage", warehouseInOutInfo.getCurrentPage());
         pageView.put("phone", warehouseInOutInfo.getPhone());
+        pageView.put("binded", warehouseInOutInfo.getBinded());
         // 查询记录总数
         Integer dataCount = baseMapper.getCountByCondition(pageView);
         List<WarehouseInOutInfo> dataList = baseMapper.getListByCondition(pageView);

+ 4 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/WarehousingOrderServiceImpl.java

@@ -2600,6 +2600,8 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
 
                 Double afterCost = 0d;
                 String goodsName = warehousingOrderList.get(0).getGoodsName().replace("(潮粮)", "");
+                //折干入库单id
+                String orderId="";
                 for (WarehousingOrder warehousingOrder1 : warehousingOrderList) {
                     if ("采购入库".equals(warehousingOrder1.getInType())){
                         List<WarehouseInOutInfo> warehouseInOutInfoList=warehouseInOutInfoService.selectList(new EntityWrapper<WarehouseInOutInfo>()
@@ -2621,6 +2623,7 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
                     this.updateById(warehousingOrder1);
                     WarehousingOrder warehousingOrder2 = new WarehousingOrder();
                     warehousingOrder2.setId(IdGenerator.generateUUID());
+                    orderId=warehousingOrder2.getId();
                     warehousingOrder2.setCompId(warehousingOrder1.getCompId());
                     warehousingOrder2.setBaseId(warehousingOrder1.getBaseId());
                     warehousingOrder2.setIdentifyId(warehousingOrder1.getIdentifyId());
@@ -2704,6 +2707,7 @@ public class WarehousingOrderServiceImpl extends ServiceImpl<WarehousingOrderMap
                 WarehouseInOutInfo warehouseInOutInfo1 = new WarehouseInOutInfo();
                 warehouseInOutInfo1.setId(IdGenerator.generateUUID());
                 warehouseInOutInfo1.setBaseId(warehouseInOutInfo.getBaseId());
+                warehouseInOutInfo1.setOrderId(orderId);
                 warehouseInOutInfo1.setWarehouseName(warehouseInOutInfo.getWarehouseName());
                 warehouseInOutInfo1.setPositionId(warehousingOrder.getAfterPositionId());
                 warehouseInOutInfo1.setBinNumber(warehousingOrder.getAfterBinNo());

+ 8 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/WarehouseInOutInfoMapper.xml

@@ -20,6 +20,9 @@
                 AND w.in_out_flag = '2'
             </if>
         </if>
+        <if test="binded != null and binded != ''">
+            AND w.binded = #{binded}
+        </if>
         <if test="pcFlag != null and pcFlag != ''">
             <if test="pcFlag == 1">
                 AND w.base_id = #{baseId}
@@ -128,6 +131,7 @@
         w.type,
         w.deduction_weight as deductionWeight,
         case when w.goods_name like '%潮粮%' then w.pure_weight else w.net_weight end as pureWeight,
+        case when w.in_out_type = '收购入库' then q.customer_name else w.contract_no end as cargoRights,
         w.deduction_amount as deductionAmount,
         w.back_office as backOffice,
         w.self_loading as selfLoading,
@@ -136,6 +140,7 @@
         c.comp_name as companyName,
         c.comp_imo as taxRegistrationNo,
         w.solid_grain_water as solidGrainWater,
+        w.cost,
         IFNULL(q.quality_inspector,d.quality_inspector) as qualityInspector,
         IFNULL(q.re_inspector,q.quality_inspector) as reInspector
         FROM warehouse_in_out_info w
@@ -154,6 +159,9 @@
                 AND w.in_out_flag = '2'
             </if>
         </if>
+        <if test="binded != null and binded != ''">
+            AND w.binded = #{binded}
+        </if>
         <if test="pcFlag != null and pcFlag != ''">
             <if test="pcFlag == 1">
                 AND w.base_id = #{baseId}