wks пре 4 месеци
родитељ
комит
feeb6c081d

+ 1 - 1
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/domain/bo/ItemSkuBo.java

@@ -113,7 +113,7 @@ public class ItemSkuBo extends BaseEntity {
      * @see com.ruoyi.wms.domain.constant.ItemType
      * 商品类型
      */
-    private String itemType;
+    private Integer skuType;
 
 
     private Long itemBrand;

+ 1 - 1
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/domain/entity/ItemSku.java

@@ -39,7 +39,7 @@ public class ItemSku extends BaseEntity {
      * @see com.ruoyi.wms.domain.constant.ItemType
      * 商品类型
      */
-    private Integer itemType;
+    private Integer skuType;
 
     /**
      * 条码

+ 2 - 2
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/ItemService.java

@@ -127,7 +127,7 @@ public class ItemService  {
         validateBoBeforeSave(bo);
         Item item = MapstructUtils.convert(bo, Item.class);
         itemMapper.insert(item);
-        itemSkuService.setItemId(bo.getSku(), item.getId());
+        itemSkuService.setItemId(bo.getSku(), item.getId(), Integer.valueOf(item.getItemType()));
         itemSkuService.saveOrUpdateBatchByBo(bo.getSku(), true);
     }
 
@@ -140,7 +140,7 @@ public class ItemService  {
     public void updateByForm(ItemBo bo) {
         validateBoBeforeSave(bo);
         itemMapper.updateById(MapstructUtils.convert(bo, Item.class));
-        itemSkuService.setItemId(bo.getSku(), bo.getId());
+        itemSkuService.setItemId(bo.getSku(), bo.getId(), bo.getItemType());
         itemSkuService.saveOrUpdateBatchByBo(bo.getSku(), false);
     }
 

+ 2 - 1
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/ItemSkuService.java

@@ -228,11 +228,12 @@ public class ItemSkuService extends ServiceImpl<ItemSkuMapper, ItemSku> {
 
     }
 
-    public void setItemId(List<ItemSkuBo> itemSkuList, Long itemId) {
+    public void setItemId(List<ItemSkuBo> itemSkuList, Long itemId, Integer itemType) {
         for (ItemSkuBo itemSkuBo : itemSkuList) {
             if (StrUtil.isBlank(itemSkuBo.getBarcode())) {
                 itemSkuBo.setItemId(itemId);
             }
+            itemSkuBo.setSkuType(itemType);
         }
     }
 

+ 5 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/impl/WmsBomVersionServiceImpl.java

@@ -1,6 +1,7 @@
 package com.ruoyi.wms.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.exception.base.BaseException;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.wms.domain.dto.BomAddDto;
 import com.ruoyi.wms.domain.dto.BomItemSkuDto;
@@ -49,6 +50,10 @@ public class WmsBomVersionServiceImpl extends ServiceImpl<WmsBomVersionMapper, W
         // 保存版本信息
         save(bomVersion);
 
+        if (bomAddDto.getBomItemSkuList() == null || bomAddDto.getBomItemSkuList().isEmpty()) {
+            throw new BaseException("添加物料不能为空");
+        }
+
         List<Long> list = bomAddDto.getBomItemSkuList().stream().map(BomItemSkuDto::getBomItemSkuId).toList();
         Map<Long, Map<String, WmsUnitAuxiliaryDto>> unitAuxiliaryMap = wmsUnitConfigService.getBySkuId(list);
 

+ 1 - 1
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/impl/WmsFinishedProductCostServiceImpl.java

@@ -48,7 +48,7 @@ public class WmsFinishedProductCostServiceImpl extends ServiceImpl<WmsFinishedPr
             BigDecimal cose = sku.getBaseUnitCost().multiply(itemSku.getBaseQuantity());
             return WmsFinishedSkuCost.builder()
                 .productId(wmsTaskDetails.getId())
-                .itemType(sku.getItemType())
+                .itemType(sku.getSkuType())
                 .itemSkuId(itemSku.getItemSkuId())
                 .cost(cose)
                 .build();

+ 4 - 3
ruoyi-admin-wms/src/main/resources/mapper/wms/WmsBomItemMapper.xml

@@ -15,12 +15,13 @@
     </sql>
 
     <select id="getByIdCount" resultType="com.ruoyi.wms.domain.dto.WmsBomItemCount">
-        select item_sku_id as sku_id, count(*) as count from wms_bom_item
-        where item_sku_id in
+        select wbv.item_sku_id as sku_id, count(*) as count from wms_bom_item wbi
+        left join wms_bom_version wbv on wbi.version_id = wbv.id
+        where wbv.item_sku_id in
         <foreach collection="list" item="id" open="(" separator="," close=")">
             #{id}
         </foreach>
-        group by item_sku_id
+        group by wbv.item_sku_id
     </select>
 
 

+ 1 - 1
ruoyi-admin-wms/src/main/resources/mapper/wms/WmsBomVersionMapper.xml

@@ -32,7 +32,7 @@
         left join wms_item item on sku.item_id = item.id
         <where>
             <if test='bomListQueryDto.skuItemId != null and bomListQueryDto.skuItemId != ""'>
-                and wbi.item_sku_id = #{bomListQueryDto.skuItemId}
+                and wbv.item_sku_id = #{bomListQueryDto.skuItemId}
             </if>
             <if test='bomListQueryDto.bomVersionId != null and bomListQueryDto.bomVersionId != ""'>
                 and wbi.version_id = #{bomListQueryDto.bomVersionId}