소스 검색

update 代码修改

wks 4 달 전
부모
커밋
b69075cb17

+ 5 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/domain/bo/ShipmentOrderBo.java

@@ -19,6 +19,11 @@ import lombok.EqualsAndHashCode;
 @EqualsAndHashCode(callSuper = true)
 @EqualsAndHashCode(callSuper = true)
 @AutoMapper(target = ShipmentOrder.class, reverseConvertGenerate = false)
 @AutoMapper(target = ShipmentOrder.class, reverseConvertGenerate = false)
 public class ShipmentOrderBo extends BaseOrderBo<ShipmentOrderDetailBo> {
 public class ShipmentOrderBo extends BaseOrderBo<ShipmentOrderDetailBo> {
+    /**
+     * 任务单号
+     */
+    private String taskId;
+
     /**
     /**
      * 入库类型
      * 入库类型
      */
      */

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

@@ -27,7 +27,7 @@ public class ShipmentOrder extends BaseOrder {
     /**
     /**
      * 任务单号
      * 任务单号
      */
      */
-    private Long taskId;
+    private String taskId;
 
 
     /**
     /**
      * 业务订单号
      * 业务订单号

+ 4 - 1
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/domain/vo/ItemSkuVo.java

@@ -107,5 +107,8 @@ public class ItemSkuVo implements Serializable {
      */
      */
     private UnitConfigBo unitConfig;
     private UnitConfigBo unitConfig;
 
 
-
+    /**
+     * 数量
+     */
+    private Integer quantity = 0;
 }
 }

+ 5 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/domain/vo/ShipmentOrderVo.java

@@ -19,6 +19,11 @@ import lombok.EqualsAndHashCode;
 @AutoMapper(target = ShipmentOrder.class)
 @AutoMapper(target = ShipmentOrder.class)
 public class ShipmentOrderVo extends BaseOrderVo<ShipmentOrderDetailVo> {
 public class ShipmentOrderVo extends BaseOrderVo<ShipmentOrderDetailVo> {
 
 
+    /**
+     * 任务id
+     */
+    private String taskId;
+
     /**
     /**
      * 入库类型
      * 入库类型
      */
      */

+ 10 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/mapper/WmsBomItemMapper.java

@@ -3,6 +3,9 @@ package com.ruoyi.wms.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.wms.domain.entity.WmsBomItem;
 import com.ruoyi.wms.domain.entity.WmsBomItem;
 
 
+import java.util.List;
+import java.util.Map;
+
 /**
 /**
  * @author Administrator
  * @author Administrator
  * @description 针对表【wms_bom_item(bom 清单)】的数据库操作Mapper
  * @description 针对表【wms_bom_item(bom 清单)】的数据库操作Mapper
@@ -11,6 +14,13 @@ import com.ruoyi.wms.domain.entity.WmsBomItem;
  */
  */
 public interface WmsBomItemMapper extends BaseMapper<WmsBomItem> {
 public interface WmsBomItemMapper extends BaseMapper<WmsBomItem> {
 
 
+    /**
+     *
+     * @param list
+     * @return
+     */
+    Map<Long, Integer> getByIdCount(List<Long> list);
+    
 }
 }
 
 
 
 

+ 7 - 1
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/mapper/WmsTaskDetailsMapper.java

@@ -27,7 +27,13 @@ public interface WmsTaskDetailsMapper extends BaseMapper<WmsTaskDetails> {
      */
      */
     Page<TaskDetailsVo> details(Page<TaskDetailsVo> page, @Param("bo") TaskDetailsDto bo);
     Page<TaskDetailsVo> details(Page<TaskDetailsVo> page, @Param("bo") TaskDetailsDto bo);
 
 
-    List<WmsTaskDetailsEditVo> getByTaskId(String id);
+    /**
+     *
+     * @param id
+     * @return
+     */
+    List<WmsTaskDetailsEditVo> getByTaskId(Long id);
+
 }
 }
 
 
 
 

+ 10 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/ItemSkuService.java

@@ -15,6 +15,7 @@ import com.ruoyi.wms.domain.bo.ItemSkuBo;
 import com.ruoyi.wms.domain.bo.UnitAuxiliaryBo;
 import com.ruoyi.wms.domain.bo.UnitAuxiliaryBo;
 import com.ruoyi.wms.domain.bo.UnitConfigBo;
 import com.ruoyi.wms.domain.bo.UnitConfigBo;
 import com.ruoyi.wms.domain.entity.ItemSku;
 import com.ruoyi.wms.domain.entity.ItemSku;
+import com.ruoyi.wms.domain.entity.WmsBomItem;
 import com.ruoyi.wms.domain.entity.WmsUnitAuxiliary;
 import com.ruoyi.wms.domain.entity.WmsUnitAuxiliary;
 import com.ruoyi.wms.domain.entity.WmsUnitConfig;
 import com.ruoyi.wms.domain.entity.WmsUnitConfig;
 import com.ruoyi.wms.domain.vo.BaseOrderDetailVo;
 import com.ruoyi.wms.domain.vo.BaseOrderDetailVo;
@@ -45,6 +46,8 @@ public class ItemSkuService extends ServiceImpl<ItemSkuMapper, ItemSku> {
 
 
     private final WmsUnitConfigService wmsUnitConfigService;
     private final WmsUnitConfigService wmsUnitConfigService;
 
 
+    private final WmsBomItemService wmsBomItemService;
+
     /**
     /**
      * 查询sku信息
      * 查询sku信息
      */
      */
@@ -65,6 +68,13 @@ public class ItemSkuService extends ServiceImpl<ItemSkuMapper, ItemSku> {
     public TableDataInfo<ItemSkuMapVo> queryPageList(ItemSkuBo bo, PageQuery pageQuery) {
     public TableDataInfo<ItemSkuMapVo> queryPageList(ItemSkuBo bo, PageQuery pageQuery) {
         //开始查sku
         //开始查sku
         IPage<ItemSkuMapVo> result = itemSkuMapper.selectByBo(pageQuery.build(), bo);
         IPage<ItemSkuMapVo> result = itemSkuMapper.selectByBo(pageQuery.build(), bo);
+
+        List<Long> list = result.getRecords().stream().map(ItemSkuMapVo::getSkuId).toList();
+        Map<Long, Integer> count = wmsBomItemService.getByIdCount(list);
+        result.getRecords().stream().forEach(itemSku -> {
+            Integer i = count.get(itemSku.getSkuId()) == null ? 0 : count.get(itemSku.getSkuId());
+            itemSku.getItemSku().setQuantity(i);
+        });
         return TableDataInfo.build(result);
         return TableDataInfo.build(result);
     }
     }
 
 

+ 10 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/WmsBomItemService.java

@@ -3,6 +3,9 @@ package com.ruoyi.wms.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.wms.domain.entity.WmsBomItem;
 import com.ruoyi.wms.domain.entity.WmsBomItem;
 
 
+import java.util.List;
+import java.util.Map;
+
 /**
 /**
  * @author Administrator
  * @author Administrator
  * @description 针对表【wms_bom_item(bom 清单)】的数据库操作Service
  * @description 针对表【wms_bom_item(bom 清单)】的数据库操作Service
@@ -10,4 +13,11 @@ import com.ruoyi.wms.domain.entity.WmsBomItem;
  */
  */
 public interface WmsBomItemService extends IService<WmsBomItem> {
 public interface WmsBomItemService extends IService<WmsBomItem> {
 
 
+    /**
+     * 获取每个sku 物料清单数量
+     *
+     * @param list sku id 列表
+     * @return sku id 映射 数量
+     */
+    Map<Long, Integer> getByIdCount(List<Long> list);
 }
 }

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

@@ -24,7 +24,7 @@ public interface WmsBomVersionService extends IService<WmsBomVersion> {
      */
      */
     default void existsByVersion(String version) {
     default void existsByVersion(String version) {
         WmsBomVersion wmsBomVersion = lambdaQuery().eq(WmsBomVersion::getVersion, version).one();
         WmsBomVersion wmsBomVersion = lambdaQuery().eq(WmsBomVersion::getVersion, version).one();
-        Assert.notNull(wmsBomVersion, "BOM版本号重复");
+        Assert.isNull(wmsBomVersion, "BOM版本号重复");
     }
     }
 
 
     /**
     /**

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

@@ -32,5 +32,5 @@ public interface WmsTaskDetailsService extends IService<WmsTaskDetails> {
      * @param id 任务id
      * @param id 任务id
      * @return 任务列表
      * @return 任务列表
      */
      */
-    List<WmsTaskDetailsEditVo> getByTaskId(String id);
+    List<WmsTaskDetailsEditVo> getByTaskId(Long id);
 }
 }

+ 7 - 0
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/impl/WmsBomItemServiceImpl.java

@@ -6,6 +6,9 @@ import com.ruoyi.wms.mapper.WmsBomItemMapper;
 import com.ruoyi.wms.service.WmsBomItemService;
 import com.ruoyi.wms.service.WmsBomItemService;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
+import java.util.List;
+import java.util.Map;
+
 /**
 /**
  * @author Administrator
  * @author Administrator
  * @description 针对表【wms_bom_item(bom 清单)】的数据库操作Service实现
  * @description 针对表【wms_bom_item(bom 清单)】的数据库操作Service实现
@@ -15,6 +18,10 @@ import org.springframework.stereotype.Service;
 public class WmsBomItemServiceImpl extends ServiceImpl<WmsBomItemMapper, WmsBomItem>
 public class WmsBomItemServiceImpl extends ServiceImpl<WmsBomItemMapper, WmsBomItem>
     implements WmsBomItemService {
     implements WmsBomItemService {
 
 
+    @Override
+    public Map<Long, Integer> getByIdCount(List<Long> list) {
+        return this.baseMapper.getByIdCount(list);
+    }
 }
 }
 
 
 
 

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

@@ -30,7 +30,7 @@ public class WmsTaskDetailsServiceImpl extends ServiceImpl<WmsTaskDetailsMapper,
     }
     }
 
 
     @Override
     @Override
-    public List<WmsTaskDetailsEditVo> getByTaskId(String id) {
+    public List<WmsTaskDetailsEditVo> getByTaskId(Long id) {
         return this.baseMapper.getByTaskId(id);
         return this.baseMapper.getByTaskId(id);
     }
     }
 }
 }

+ 7 - 3
ruoyi-admin-wms/src/main/java/com/ruoyi/wms/service/impl/WmsTaskServiceImpl.java

@@ -56,11 +56,13 @@ public class WmsTaskServiceImpl extends ServiceImpl<WmsTaskMapper, WmsTask>
     public void addTask(TaskAddDto taskAddDto) {
     public void addTask(TaskAddDto taskAddDto) {
         // 生成任务单
         // 生成任务单
         WmsTask wmsTask = buildWmsTask(taskAddDto);
         WmsTask wmsTask = buildWmsTask(taskAddDto);
+        Integer reduce = taskAddDto.getTaskItemSkuDtoList().stream().map(TaskItemSkuDto::getQuantity).reduce(0, Integer::sum);
+        wmsTask.setQuantity(reduce);
+        save(wmsTask);
 
 
         // 添加明细信息
         // 添加明细信息
         List<WmsTaskDetails> wmsTaskDetails = buildWmsTaskDetails(taskAddDto.getTaskItemSkuDtoList(), wmsTask.getId());
         List<WmsTaskDetails> wmsTaskDetails = buildWmsTaskDetails(taskAddDto.getTaskItemSkuDtoList(), wmsTask.getId());
         wmsTask.setQuantity(wmsTaskDetails.size());
         wmsTask.setQuantity(wmsTaskDetails.size());
-        save(wmsTask);
         wmsTaskDetailsService.saveBatch(wmsTaskDetails);
         wmsTaskDetailsService.saveBatch(wmsTaskDetails);
     }
     }
 
 
@@ -113,7 +115,7 @@ public class WmsTaskServiceImpl extends ServiceImpl<WmsTaskMapper, WmsTask>
                     shipmentOrder = new ShipmentOrder();
                     shipmentOrder = new ShipmentOrder();
                     shipmentOrder.setId(IdWorker.getId());
                     shipmentOrder.setId(IdWorker.getId());
                     shipmentOrder.setOrderNo(OrderNoGenerator.generateCK());
                     shipmentOrder.setOrderNo(OrderNoGenerator.generateCK());
-                    shipmentOrder.setTaskId(wmsTask.getId());
+                    shipmentOrder.setTaskId(String.valueOf(wmsTask.getId()));
                     shipmentOrder.setWarehouseId(inventory.getWarehouseId());
                     shipmentOrder.setWarehouseId(inventory.getWarehouseId());
                     shipmentOrder.setOrderStatus(ServiceConstants.ShipmentOrderStatus.PENDING);
                     shipmentOrder.setOrderStatus(ServiceConstants.ShipmentOrderStatus.PENDING);
                     shipmentOrderMap.putIfAbsent(warehouseId, shipmentOrder);
                     shipmentOrderMap.putIfAbsent(warehouseId, shipmentOrder);
@@ -223,7 +225,7 @@ public class WmsTaskServiceImpl extends ServiceImpl<WmsTaskMapper, WmsTask>
     @Override
     @Override
     public WmsTaskEditVo editQuery(String id) {
     public WmsTaskEditVo editQuery(String id) {
         WmsTask wmsTask = this.getById(id);
         WmsTask wmsTask = this.getById(id);
-        List<WmsTaskDetailsEditVo> wmsTaskDetailsEditVos = wmsTaskDetailsService.getByTaskId(id);
+        List<WmsTaskDetailsEditVo> wmsTaskDetailsEditVos = wmsTaskDetailsService.getByTaskId(wmsTask.getId());
         return WmsTaskEditVo.builder()
         return WmsTaskEditVo.builder()
             .wmsTask(wmsTask)
             .wmsTask(wmsTask)
             .wmsTaskDetailsEditVo(wmsTaskDetailsEditVos)
             .wmsTaskDetailsEditVo(wmsTaskDetailsEditVos)
@@ -249,6 +251,8 @@ public class WmsTaskServiceImpl extends ServiceImpl<WmsTaskMapper, WmsTask>
     private WmsTaskDetails buildWmsTaskDetails(TaskItemSkuDto taskItemSkuDto, Long taskId) {
     private WmsTaskDetails buildWmsTaskDetails(TaskItemSkuDto taskItemSkuDto, Long taskId) {
         return WmsTaskDetails.builder()
         return WmsTaskDetails.builder()
             .taskId(taskId)
             .taskId(taskId)
+            .versionId(taskItemSkuDto.getVersionId())
+            .quantity(taskItemSkuDto.getQuantity())
             .itemSkuId(taskItemSkuDto.getTaskItemSkuId())
             .itemSkuId(taskItemSkuDto.getTaskItemSkuId())
             .build();
             .build();
     }
     }

+ 8 - 5
ruoyi-admin-wms/src/main/resources/mapper/wms/ItemSkuMapper.xml

@@ -40,11 +40,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
 
     <select id="selectByBo" resultMap="itemSkuMapVo">
     <select id="selectByBo" resultMap="itemSkuMapVo">
         select
         select
-            sku.id as sku_id,
-            sku.*,
-            item.id as item_id,
-            item.unit as item_unit,
-            item.*
+        sku.id as sku_id,
+        sku.*,
+        item.id as item_id,
+        item.unit as item_unit,
+        item.*
         from wms_item_sku sku
         from wms_item_sku sku
         inner join wms_item item on sku.item_id=item.id
         inner join wms_item item on sku.item_id=item.id
         inner join wms_item_category category on item.item_category=category.id
         inner join wms_item_category category on item.item_category=category.id
@@ -64,6 +64,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="bo.barcode != null and bo.barcode != ''">
             <if test="bo.barcode != null and bo.barcode != ''">
                 and sku.barcode like concat('%', #{bo.barcode}, '%')
                 and sku.barcode like concat('%', #{bo.barcode}, '%')
             </if>
             </if>
+            <if test="bo.itemType != null and bo.itemType != ''">
+                and item.item_type = #{bo.itemType}
+            </if>
             <if test="bo.itemCategory != null and bo.itemCategory != ''">
             <if test="bo.itemCategory != null and bo.itemCategory != ''">
                 and (category.id=#{bo.itemCategory} or category.parent_id=#{bo.itemCategory})
                 and (category.id=#{bo.itemCategory} or category.parent_id=#{bo.itemCategory})
             </if>
             </if>

+ 9 - 0
ruoyi-admin-wms/src/main/resources/mapper/wms/WmsBomItemMapper.xml

@@ -13,4 +13,13 @@
     <sql id="Base_Column_List">
     <sql id="Base_Column_List">
         id,version_id,item_id
         id,version_id,item_id
     </sql>
     </sql>
+
+    <select id="getByIdCount" resultType="java.util.Map">
+        select * from wms_bom_item
+        where item_sku_id in
+        <foreach collection="list" item="id" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </select>
+    
 </mapper>
 </mapper>