Browse Source

fix:更新进销存管理模块入库订单模块代码

Eternity 5 months ago
parent
commit
4b135fd454
15 changed files with 186 additions and 85 deletions
  1. 6 2
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/controller/PutInStorageController.java
  2. 7 5
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/Storage.java
  3. 3 2
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/StorageProduct.java
  4. 33 0
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/PutInStorageBo.java
  5. 6 1
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/StorageBo.java
  6. 42 0
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/StorageListBo.java
  7. 0 47
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/StorageProductBo.java
  8. 1 8
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/vo/StorageProductVo.java
  9. 10 0
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/vo/StorageVo.java
  10. 2 4
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/mapper/PutInStorageMapper.java
  11. 12 0
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/mapper/PutInStorageProductMapper.java
  12. 26 0
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/mapstruct/NewStorageMapstruct.java
  13. 2 1
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/service/PutInStorageService.java
  14. 32 4
      ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/service/impl/PutInStorageServiceImpl.java
  15. 4 11
      ruoyi-modules/ruoyi-InventoryManagement/src/main/resources/mapper/PutInStorageMapper.xml

+ 6 - 2
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/controller/PutInStorageController.java

@@ -1,7 +1,9 @@
 package org.dromara.InventoryManagement.controller;
 
 
+import cn.dev33.satoken.annotation.SaIgnore;
 import lombok.RequiredArgsConstructor;
+import org.dromara.InventoryManagement.domain.bo.PutInStorageBo;
 import org.dromara.InventoryManagement.domain.bo.StorageBo;
 import org.dromara.InventoryManagement.domain.vo.StorageVo;
 import org.dromara.InventoryManagement.service.PutInStorageService;
@@ -11,6 +13,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.common.web.core.BaseController;
 import org.springframework.web.bind.annotation.*;
 
+@SaIgnore
 @RestController
 @RequiredArgsConstructor
 @RequestMapping("/inventoryManagement/putInStorage")
@@ -30,7 +33,8 @@ public class PutInStorageController extends BaseController {
     }
 
     @PostMapping
-    public R<Void> insert(@RequestBody StorageBo storageBo){
-        return toAjax(putInStorageService.insertInventory(storageBo));
+    public R<Void> insert(@RequestBody PutInStorageBo putInStorageBo){
+        return toAjax(putInStorageService.insertStorage(putInStorageBo));
     }
+
 }

+ 7 - 5
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/Storage.java

@@ -1,6 +1,7 @@
 package org.dromara.InventoryManagement.domain;
 
 
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -16,6 +17,7 @@ public class Storage extends TenantEntity {
     /**
      * 主键Id
      */
+    @TableId
     private int id;
 
     /**
@@ -23,11 +25,6 @@ public class Storage extends TenantEntity {
      */
     private String code;
 
-    /**
-     * 入库类型 0=采购入库,1=销售退货入库
-     */
-    private int inboundType;
-
     /**
      * 库区
      */
@@ -38,6 +35,11 @@ public class Storage extends TenantEntity {
      */
     private String status;
 
+    /**
+     * 备注
+     */
+    private String remark;
+
     /**
      * 入库单更新时间
      */

+ 3 - 2
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/StorageProduct.java

@@ -4,6 +4,7 @@ package org.dromara.InventoryManagement.domain;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.dromara.commodityManagement.domain.DiBu;
 import org.dromara.common.tenant.core.TenantEntity;
 
 import java.util.Date;
@@ -24,12 +25,12 @@ public class StorageProduct extends TenantEntity {
     private int storageId;
 
     /**
-     * 产品编号
+     * 底布Id
      */
     private int productId;
 
     /**
-     * 仓库编号
+     * 仓库Id
      */
     private int warehouseId;
 

+ 33 - 0
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/PutInStorageBo.java

@@ -0,0 +1,33 @@
+package org.dromara.InventoryManagement.domain.bo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.dromara.common.mybatis.core.domain.BaseEntity;
+
+import java.util.List;
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class PutInStorageBo extends BaseEntity {
+
+    /**
+     * 仓库Id
+     */
+    private int warehouseId;
+
+    /**
+     * 库区ID
+     */
+    private int partitionId;
+
+    /**
+     * 入库表备注
+     */
+    private String remarkStorage;
+
+    /**
+     * 入库单
+     */
+    private List<StorageListBo> storageList;
+
+}

+ 6 - 1
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/StorageBo.java

@@ -29,6 +29,11 @@ public class StorageBo extends BaseEntity {
      */
     private String status;
 
+    /**
+     * 库区
+     */
+    private int partitionId;
+
     /**
      * 入库单更新时间
      */
@@ -37,6 +42,6 @@ public class StorageBo extends BaseEntity {
     /**
      * 备注
      */
-    private String storageRemark;
+    private String remark;
 
 }

+ 42 - 0
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/StorageListBo.java

@@ -0,0 +1,42 @@
+package org.dromara.InventoryManagement.domain.bo;
+
+import lombok.Data;
+
+@Data
+public class StorageListBo {
+
+    /**
+     * 布料Id
+     */
+    private int productId;
+
+    /**
+     * 布料名称
+     */
+    private String clothName;
+
+    /**
+     * 布料颜色
+     */
+    private String clothColor;
+
+    /**
+     * 门幅
+     */
+    private String menfu;
+
+    /**
+     * 单位
+     */
+    private String unit;
+
+    /**
+     * 入库数
+     */
+    private double nums;
+
+    /**
+     * 仓库产品关联表备注
+     */
+    private String remarkStorageProduct;
+}

+ 0 - 47
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/bo/StorageProductBo.java

@@ -1,47 +0,0 @@
-package org.dromara.InventoryManagement.domain.bo;
-
-
-import io.github.linpeilie.annotations.AutoMapper;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import org.dromara.InventoryManagement.domain.StorageProduct;
-import org.dromara.common.mybatis.core.domain.BaseEntity;
-
-
-@Data
-@EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = StorageProduct.class, reverseConvertGenerate = false)
-public class StorageProductBo extends BaseEntity {
-
-    /**
-     * 主键Id
-     */
-    private int id;
-
-    /**
-     * 采购单ID
-     */
-    private int storageId;
-
-    /**
-     * 产品编号
-     */
-    private int productId;
-
-    /**
-     * 仓库编号
-     */
-    private int warehouseId;
-
-    /**
-     * 入库数
-     */
-    private double nums;
-
-    /**
-     * 备注
-     */
-    private String remark;
-
-
-}

+ 1 - 8
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/vo/StorageProductVo.java

@@ -1,15 +1,10 @@
 package org.dromara.InventoryManagement.domain.vo;
-
-
-import io.github.linpeilie.annotations.AutoMapper;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
-import org.dromara.InventoryManagement.domain.StorageProduct;
 import org.dromara.common.mybatis.core.domain.BaseEntity;
 
 @Data
 @EqualsAndHashCode(callSuper = true)
-@AutoMapper(target = StorageProduct.class)
 public class StorageProductVo extends BaseEntity {
 
     /**
@@ -23,7 +18,7 @@ public class StorageProductVo extends BaseEntity {
     private int storageId;
 
     /**
-     * 产品编号
+     * 底布Id
      */
     private int productId;
 
@@ -41,6 +36,4 @@ public class StorageProductVo extends BaseEntity {
      * 备注
      */
     private String remark;
-
-
 }

+ 10 - 0
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/domain/vo/StorageVo.java

@@ -29,6 +29,16 @@ public class StorageVo extends BaseEntity {
      */
     private String status;
 
+    /**
+     * 库区
+     */
+    private int partitionId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
     /**
      * 入库单更新时间
      */

+ 2 - 4
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/mapper/PutInStorageMapper.java

@@ -1,14 +1,12 @@
 package org.dromara.InventoryManagement.mapper;
 
 import org.apache.ibatis.annotations.Mapper;
-import org.dromara.InventoryManagement.domain.bo.StorageBo;
-import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
 import org.dromara.InventoryManagement.domain.Storage;
 import org.dromara.InventoryManagement.domain.vo.StorageVo;
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+
 
 @Mapper
 public interface PutInStorageMapper extends BaseMapperPlus<Storage, StorageVo> {
 
-    public int insertInventory(StorageBo storageBo);
-
 }

+ 12 - 0
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/mapper/PutInStorageProductMapper.java

@@ -0,0 +1,12 @@
+package org.dromara.InventoryManagement.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+import org.dromara.InventoryManagement.domain.StorageProduct;
+import org.dromara.InventoryManagement.domain.vo.StorageProductVo;
+import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
+
+
+@Mapper
+public interface PutInStorageProductMapper extends BaseMapperPlus<StorageProduct, StorageProductVo> {
+
+}

+ 26 - 0
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/mapstruct/NewStorageMapstruct.java

@@ -0,0 +1,26 @@
+package org.dromara.InventoryManagement.mapstruct;
+
+import org.dromara.InventoryManagement.domain.Storage;
+import org.dromara.InventoryManagement.domain.StorageProduct;
+import org.dromara.InventoryManagement.domain.bo.PutInStorageBo;
+import org.dromara.InventoryManagement.domain.bo.StorageListBo;
+import org.mapstruct.Mapper;
+import org.mapstruct.Mapping;
+
+/**
+ * 新增入库订单映射
+ */
+@Mapper(componentModel = "spring")
+public interface NewStorageMapstruct {
+
+    @Mapping(target = "remark", source = "putInStorageBo.remarkStorage")
+    Storage toStorage(PutInStorageBo putInStorageBo,
+                      String code);
+
+    @Mapping(target = "remark", source = "storageListBo.remarkStorageProduct")
+    @Mapping(target = "storageId", source = "storageId")
+    StorageProduct toStorageProduct(PutInStorageBo putInStorageBo,
+                                    StorageListBo storageListBo,
+                                    int storageId);
+
+}

+ 2 - 1
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/service/PutInStorageService.java

@@ -1,5 +1,6 @@
 package org.dromara.InventoryManagement.service;
 
+import org.dromara.InventoryManagement.domain.bo.PutInStorageBo;
 import org.dromara.InventoryManagement.domain.bo.StorageBo;
 import org.dromara.InventoryManagement.domain.vo.StorageVo;
 import org.dromara.common.mybatis.core.page.PageQuery;
@@ -9,5 +10,5 @@ public interface PutInStorageService {
 
     TableDataInfo<StorageVo> selectPutInStoragePageList(StorageBo storageBo, PageQuery pageQuery);
 
-    int insertInventory(StorageBo storageBo);
+    int insertStorage(PutInStorageBo putInStorageBo);
 }

+ 32 - 4
ruoyi-modules/ruoyi-InventoryManagement/src/main/java/org/dromara/InventoryManagement/service/impl/PutInStorageServiceImpl.java

@@ -3,16 +3,24 @@ package org.dromara.InventoryManagement.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import lombok.RequiredArgsConstructor;
+import org.dromara.InventoryManagement.domain.PutInStorageType;
 import org.dromara.InventoryManagement.domain.Storage;
+import org.dromara.InventoryManagement.domain.StorageProduct;
+import org.dromara.InventoryManagement.domain.bo.PutInStorageBo;
 import org.dromara.InventoryManagement.domain.bo.StorageBo;
+import org.dromara.InventoryManagement.domain.bo.StorageListBo;
 import org.dromara.InventoryManagement.domain.vo.StorageVo;
 import org.dromara.InventoryManagement.mapper.PutInStorageMapper;
+import org.dromara.InventoryManagement.mapper.PutInStorageProductMapper;
+import org.dromara.InventoryManagement.mapstruct.NewStorageMapstruct;
 import org.dromara.InventoryManagement.service.PutInStorageService;
+import org.dromara.commodityManagement.domain.DiBu;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.OrderNumberGenerator;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -22,6 +30,9 @@ import java.util.List;
 public class PutInStorageServiceImpl implements PutInStorageService {
 
     private final PutInStorageMapper putInStorageMapper;
+    private final PutInStorageProductMapper putInStorageProductMapper;
+    private final NewStorageMapstruct newStorageMapstruct;
+
 
     /**
      * 查询入库订单分页列表
@@ -40,9 +51,26 @@ public class PutInStorageServiceImpl implements PutInStorageService {
     }
 
     @Override
-    public int insertInventory(StorageBo storageBo) {
-        OrderNumberGenerator generator = OrderNumberGenerator.getInstance();
-        storageBo.setCode(generator.generateOrderNumber("YKS"));
-        return putInStorageMapper.insertInventory(storageBo);
+    @Transactional(rollbackFor = Exception.class)
+    public int insertStorage(PutInStorageBo putInStorageBo) {
+        try {
+            // 生成订单编号
+            OrderNumberGenerator generator = OrderNumberGenerator.getInstance();
+            // 入库订单表注入
+            Storage storage = newStorageMapstruct.toStorage(putInStorageBo, generator.generateOrderNumber("YKS"));
+            // 入库
+            putInStorageMapper.insert(storage);
+            System.out.println(storage);
+            // 详情表注入
+            for (StorageListBo storageListBo : putInStorageBo.getStorageList()){
+                // 关联表注入
+                StorageProduct storageProduct = newStorageMapstruct.toStorageProduct(putInStorageBo,storageListBo,storage.getId());
+                putInStorageProductMapper.insert(storageProduct);
+            }
+            return 1;
+        } catch (Exception e) {
+            throw new RuntimeException("插入入库订单失败", e);
+        }
     }
+
 }

+ 4 - 11
ruoyi-modules/ruoyi-InventoryManagement/src/main/resources/mapper/PutInStorageMapper.xml

@@ -4,16 +4,9 @@
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.dromara.InventoryManagement.mapper.PutInStorageMapper">
 
-    <insert id="insertInventory">
-        INSERT INTO fa_ykjp_storage_product (
-            warehouse_id,
-            storage_id,
-            product_id,
-            nums,
-            remark
-        )
-        values (#{warehouseId},#{storageId},#{productId},#{nums},#{remark})
-    </insert>
-
+<!--    <insert id="insert" useGeneratedKeys="true" keyProperty="id">-->
+<!--        INSERT INTO fa_ykjp_storage-->
+<!--        VALUES (#{code}, #{status}, #{otherColumn})-->
+<!--    </insert>-->
 
 </mapper>