浏览代码

仓库业务->修改快速出库、入库接口

caifc 3 年之前
父节点
当前提交
406ca62c9a

+ 20 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/basicData/domain/GoodsVO.java

@@ -0,0 +1,20 @@
+package com.ruoyi.basicData.domain;
+
+import lombok.Data;
+
+/**
+ * @author caifc
+ * @date 2021-11-16 16:49
+ */
+@Data
+public class GoodsVO extends TGoods {
+    private static final long serialVersionUID = 1L;
+
+
+    private String fMarks;
+
+
+    private Long fBusinessType;
+
+
+}

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

@@ -162,7 +162,7 @@ public class TWarehousebillsitems extends BaseEntity {
      * 尺码
      */
     @Excel(name = "尺码")
-    private BigDecimal fVolumn;
+    private BigDecimal fVolumn = BigDecimal.ZERO;
 
     /**
      * 毛重

+ 3 - 2
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/vo/WarehouseBillsVO.java

@@ -1,5 +1,6 @@
 package com.ruoyi.warehouseBusiness.domain.vo;
 
+import com.ruoyi.basicData.domain.GoodsVO;
 import com.ruoyi.basicData.domain.TCorps;
 import com.ruoyi.common.core.domain.entity.TWarehouse;
 import com.ruoyi.reportManagement.domain.vo.WhgenlegVO;
@@ -27,8 +28,8 @@ public class WarehouseBillsVO extends TWarehouseBills {
     private List<TWarehouse> warehouseList;
 
     /**
-     * 库存总帐查询
+     * 库存总帐查询商品信息
      */
-    private List<WhgenlegVO> whgenlegVOList;
+    private List<GoodsVO> goodsVOList;
 
 }

+ 40 - 15
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseBillsServiceImpl.java

@@ -9,10 +9,7 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.ruoyi.approvalFlow.domain.AuditItems;
 import com.ruoyi.approvalFlow.mapper.AuditItemsMapper;
 import com.ruoyi.approvalFlow.service.impl.AuditItemsServiceImpl;
-import com.ruoyi.basicData.domain.TCorps;
-import com.ruoyi.basicData.domain.TFees;
-import com.ruoyi.basicData.domain.TGoods;
-import com.ruoyi.basicData.domain.TWarehouseArea;
+import com.ruoyi.basicData.domain.*;
 import com.ruoyi.basicData.mapper.*;
 import com.ruoyi.basicData.service.impl.TWarehouseServiceImpl;
 import com.ruoyi.common.config.RuoYiConfig;
@@ -33,7 +30,6 @@ import com.ruoyi.quotation.domain.TSeaprice;
 import com.ruoyi.quotation.mapper.TSeapriceMapper;
 import com.ruoyi.reportManagement.domain.TWareHouseItemsExcel;
 import com.ruoyi.reportManagement.domain.TWhgenleg;
-import com.ruoyi.reportManagement.domain.vo.WhgenlegVO;
 import com.ruoyi.reportManagement.mapper.TWhgenlegMapper;
 import com.ruoyi.shipping.domain.*;
 import com.ruoyi.shipping.excel.DeriveInventoryExcel;
@@ -7184,15 +7180,25 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             tWhgenleg.setfWarehouseid(warehousebillsDTO.getWarehouseId());
             List<TWhgenleg> tWhgenlegs = tWhgenlegMapper.selectTWhgenlegList(tWhgenleg);
             if (CollectionUtils.isNotEmpty(tWhgenlegs)) {
-                List<WhgenlegVO> voList = new ArrayList<>();
-                tWhgenlegs.forEach(vo -> {
-                    WhgenlegVO whgenlegVO = new WhgenlegVO();
-                    whgenlegVO.setfMarks(vo.getfMarks());
-                    whgenlegVO.setfGoodsid(vo.getfGoodsid());
-                    whgenlegVO.setfBusinessType(vo.getfBusinessType());
-                    voList.add(whgenlegVO);
-                });
-                billsVO.setWhgenlegVOList(voList);
+
+                List<Long> goodsIds = tWhgenlegs.stream().filter(l -> Objects.nonNull(l.getfGoodsid())).map(TWhgenleg::getfGoodsid).distinct()
+                        .collect(toList());
+                if (CollectionUtils.isNotEmpty(goodsIds)) {
+                    List<TGoods> goodsList = tGoodsMapper.selectByIds(goodsIds);
+                    List<GoodsVO> voList = new ArrayList<>();
+
+                    goodsList.forEach(vo -> {
+//                        TGoods goods = goodsList.stream().filter(li -> Objects.equals(vo.getfGoodsid(), li.getfId())).findFirst()
+//                                .orElseThrow(() -> new WarehouseException("商品信息找不到"));
+                        GoodsVO goodsVO = new GoodsVO();
+                        goodsVO.setfId(vo.getfId());
+                        goodsVO.setfName(vo.getfName());
+//                        goodsVO.setFMarks(vo.getfMarks());
+//                        goodsVO.setFBusinessType(vo.getfBusinessType());
+                        voList.add(goodsVO);
+                    });
+                    billsVO.setGoodsVOList(voList);
+                }
                 return AjaxResult.success(billsVO);
             }
         }
@@ -7226,7 +7232,16 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         // 遍历进行入库、出库确认
         List<TWarehousebillsitems> itemList = warehousebillsDTO.getWarehousebillsitemsList();
         int line = 1;
+        Long qty = 0L;
+        BigDecimal volumn = BigDecimal.ZERO;
+        BigDecimal netweight = BigDecimal.ZERO;
+        BigDecimal grossweight = BigDecimal.ZERO;
         for (TWarehousebillsitems li : itemList) {
+            qty +=li.getfQty();
+            volumn = volumn.add(li.getfVolumn());
+            netweight = netweight.add(li.getfNetweight());
+            grossweight = grossweight.add(li.getfGrossweight());
+            grossweight = grossweight.add(li.getfGrossweight());
             // 如果业务时间超出当前时间则不允许
             if (li.getfBsdate().after(new Date())) {
                 throw new WarehouseException("业务日期不得超出当前日期");
@@ -7242,6 +7257,16 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 line++;
             }
         }
+        warehousebillsDTO.setfPlanqty(qty);
+        warehousebillsDTO.setfPlanvolumn(volumn);
+        warehousebillsDTO.setfPlannetweight(netweight);
+        warehousebillsDTO.setfPlangrossweight(grossweight);
+        warehousebillsDTO.setfQty(qty);
+        warehousebillsDTO.setfVolumn(volumn);
+        warehousebillsDTO.setfNetweight(netweight);
+        warehousebillsDTO.setfGrossweight(grossweight);
+        tWarehouseBillsMapper.updateTWarehousebills(warehousebillsDTO);
+
         return AjaxResult.success();
     }
 
@@ -7304,7 +7329,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         }
         // 查询总账是否存在
         TWhgenleg tWhgenle = queryTWhgenleg(warehousebillsDTO, item, goods.getIfCntrno());
-        if (Objects.nonNull(tWhgenle) && item.getfBsdate().before(warehousebillsDTO.getfChargedate())) {
+        if (Objects.nonNull(tWhgenle) && item.getfBsdate().before(item.getfChargedate())) {
             throw new WarehouseException("出库明细第" + line + "行业务日期不得超出库存总帐日期");
         }
         if (Objects.isNull(tWhgenle)) {

+ 5 - 5
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsMapper.xml

@@ -110,7 +110,7 @@
         <result property="fGrade"    column="f_grade" />
         <result property="fDeliveryDetails"  column="f_delivery_details" />
         <result property="fSalesmanId"  column="f_salesman_id"  />
-        <result property="fItemstatus"  column="f_itemstatus" />
+        <result property="fItemstatus"  column="f_items_status" />
         <result property="fUpdeteStatus"    column="f_updete_status"/>
         <result property="fSubmitUpdate"    column="f_submit_update"/>
         <result property="fDeleteStatus"    column="f_delete_status"/>
@@ -130,7 +130,7 @@
         f_consigneeattn, f_consigneetel, f_insurance, f_insuranceamt, f_closedate, f_docmentdate, f_vslid, f_voyid, f_typeid, f_paymode, f_laneid, f_cntval,
         free_container_date, f_business_attribution, f_supervision_unit, f_declaration_elements, f_part_number, f_ifinspection, f_value, f_weighing_date,
         f_ifsampling, send_sample_date, f_ifweight_recovery, weight_recovery_date, warehouse_status, f_times ,f_date_changed, f_chargetype,f_weigh_weight,
-        f_predict_branch,f_grade,f_delivery_details,f_salesman_id,f_itemstatus,f_updete_status, f_submit_update, f_delete_status,f_remarks_fees,f_cargo_planning,
+        f_predict_branch,f_grade,f_delivery_details,f_salesman_id,f_items_status,f_updete_status, f_submit_update, f_delete_status,f_remarks_fees,f_cargo_planning,
         f_arrival_status,f_dismount_status from t_warehousebills
     </sql>
 
@@ -905,7 +905,7 @@
             <if test="fGrade != null">f_grade,</if>
             <if test="fDeliveryDetails != null">f_delivery_details,</if>
             <if test="fSalesmanId != null">f_salesman_id,</if>
-            <if test="fItemstatus != null">f_itemstatus,</if>
+            <if test="fItemstatus != null">f_items_status,</if>
             <if test="fUpdeteStatus != null">f_updete_status,</if>
             <if test="fSubmitUpdate != null">f_submit_update,</if>
             <if test="fDeleteStatus != null">f_delete_status,</if>
@@ -1137,7 +1137,7 @@
             <if test="fGrade != null">f_grade = #{fGrade},</if>
             <if test="fDeliveryDetails != null">f_delivery_details = #{fDeliveryDetails},</if>
             <if test="fSalesmanId != null">f_salesman_id = #{fSalesmanId},</if>
-            <if test="fItemstatus != null">f_itemstatus = #{fItemstatus},</if>
+            <if test="fItemstatus != null">f_items_status = #{fItemstatus},</if>
             <if test="fUpdeteStatus != null">f_updete_status = #{fUpdeteStatus},</if>
             <if test="fSubmitUpdate != null">f_submit_update = #{fSubmitUpdate},</if>
             <if test="fDeleteStatus != null">f_delete_status = #{fDeleteStatus},</if>
@@ -1257,7 +1257,7 @@
             <if test="fGrade != null">f_grade = #{fGrade},</if>
             <if test="fDeliveryDetails != null">f_delivery_details = #{fDeliveryDetails},</if>
             <if test="fSalesmanId != null">f_salesman_id = #{fSalesmanId},</if>
-            <if test="fItemstatus != null">f_itemstatus = #{fItemstatus},</if>
+            <if test="fItemstatus != null">f_items_status = #{fItemstatus},</if>
             <if test="fUpdeteStatus != null">f_updete_status = #{fUpdeteStatus},</if>
             <if test="fSubmitUpdate != null">f_submit_update = #{fSubmitUpdate},</if>
             <if test="fDeleteStatus != null">f_delete_status = #{fDeleteStatus},</if>