houjie
2023-09-01 25bea9b16d66e9ae716997601d01319db55e258b
 库存: 仓库版本控制
已修改2个文件
178 ■■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseMapper.xml 136 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/spare/controller/SparesPartInventoryController.java
@@ -206,6 +206,11 @@
                List<SparesPartInventory> list = ExcelImportUtil.importExcel(file.getInputStream(), SparesPartInventory.class, params);
                long start = System.currentTimeMillis();
                for (int i = 0; i < list.size(); i++) {
                    Supplier supplierId = null;
                    Unit unitById = null;
                    Warehouse warehouseId = null;
                    WarehouseArea warehouseAreaId = null;
                    WarehouseLocation warehouseLocationId = null;
                    SparesPartInventory sparesPartInventory = list.get(i);
                    sparesPartInventory.setSparePartId(mainId);
                    String mainUnitName = sparesPartInventory.getMainUnitId();
@@ -213,11 +218,27 @@
                    String warehouseName = sparesPartInventory.getWarehouseId();
                    String warehouseAreaName = sparesPartInventory.getWarehouseAreaId();
                    String warehouseLocationName = sparesPartInventory.getWarehouseLocationId();
                    Supplier supplierId = supplierService.getByName(supplierName);
                    Unit unitById = unitService.getUnitByName(mainUnitName);
                    Warehouse warehouseId = warehouseService.getByName(warehouseName);
                    WarehouseArea warehouseAreaId = warehouseAreaService.getByName(warehouseAreaName);
                    WarehouseLocation warehouseLocationId = warehouseLocationService.getByName(warehouseLocationName);
                    if (supplierName != null) {
                        supplierId = supplierService.getByName(supplierName);
                    }
                    if (mainUnitName != null) {
                        unitById = unitService.getUnitByName(mainUnitName);
                    }
                    if (warehouseName != null) {
                        warehouseId = warehouseService.getByName(warehouseName);
                    }
                    if (warehouseAreaName != null) {
                        warehouseAreaId = warehouseAreaService.getByName(warehouseAreaName);
                    }
                    if (warehouseLocationName != null) {
                        warehouseLocationId = warehouseLocationService.getByName(warehouseLocationName);
                    }
                    if (!StringUtils.isNotEmpty(sparesPartInventory.getBatchNum()))
                        return Result.error("文件导入失败: 第" + (i + 1) + "行批次号不能为空");
                    if (sparesPartInventory.getMainQuantity() <= 0)
                        return Result.error("文件导入失败: 第" + (i + 1) + "行数量不能为小于等于0");
                    if (!StringUtils.isNotEmpty(unitById.getId()))
                        return Result.error("文件导入失败: 第" + (i + 1) + "行单位不存在");
                    if (!StringUtils.isNotEmpty(supplierId.getId()))
@@ -226,17 +247,14 @@
                        return Result.error("文件导入失败: 第" + (i + 1) + "行仓库不存在");
                    if (!StringUtils.isNotEmpty(warehouseAreaId.getId()))
                        return Result.error("文件导入失败: 第" + (i + 1) + "行库区不存在");
                    if (!StringUtils.isNotEmpty(warehouseLocationId.getId()))
                        return Result.error("文件导入失败: 第" + (i + 1) + "行库位不存在");
                   /* if (!StringUtils.isNotEmpty(warehouseLocationId.getId()))
                        return Result.error("文件导入失败: 第" + (i + 1) + "行库位不存在");*/
                    list.get(i).setMainUnitId(unitById.getId());
                    list.get(i).setSupplierId(supplierId.getId());
                    list.get(i).setSupplierId(warehouseId.getId());
                    list.get(i).setSupplierId(warehouseAreaId.getId());
                    list.get(i).setSupplierId(warehouseLocationId.getId());
                    if (!StringUtils.isNotEmpty(sparesPartInventory.getBatchNum()))
                        return Result.error("文件导入失败: 第" + (i + 1) + "行批次号不能为空");
                    if (sparesPartInventory.getMainQuantity() <= 0)
                        return Result.error("文件导入失败: 第" + (i + 1) + "行数量不能为小于等于0");
                 /*   list.get(i).setSupplierId(warehouseLocationId.getId());*/
                }
                sparesPartInventoryService.saveBatch(list);
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseMapper.xml
@@ -2,91 +2,93 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.base.mapper.WarehouseMapper">
    <select id="getWarehouseList" resultType="Map">
        select
            t1.id id,
            t1.code code,
            t1.name name,
            t1.status status,
            t1.version version,
            t2.version_status versionStatus,
            t1.data_version_id dataVersionId,
            t1.create_by createBy,
            t1.create_time createTime,
            t1.update_by updateBy,
            t1.update_time updateTime,
            t1.del_flag delFlag,
            t1.remark remark,
            t1.enterprise_id enterpriseId
        select t1.id              id,
               t1.code            code,
               t1.name            name,
               t1.status          status,
               t1.version         version,
               t2.version_status  versionStatus,
               t1.data_version_id dataVersionId,
               t1.create_by       createBy,
               t1.create_time     createTime,
               t1.update_by       updateBy,
               t1.update_time     updateTime,
               t1.del_flag        delFlag,
               t1.remark          remark,
               t1.enterprise_id   enterpriseId
        from mom_base_warehouse t1
                 left join (select * from mom_sys_data_version where business_type='仓库管理' and del_flag=0) t2
                 left join (select * from mom_sys_data_version where business_type = '仓库管理' and del_flag = 0) t2
                           on t1.data_version_id = t2.id
        where t1.version=#{version}
        and t1.enterprise_id=#{enterpriseId}
        and t1.del_flag = 0
        where t1.version = #{version}
          and t1.enterprise_id = #{enterpriseId}
          and t1.del_flag = 0
    </select>
    <select id="getAllVersion" resultType="Integer">
        select
            version
        select version
        from mom_base_warehouse
        where del_flag = 0
    </select>
    <select id="getUsableList" resultType="org.jeecg.modules.base.entity.Warehouse">
        select
        t1.id id,
        t1.code code,
        t1.name name,
        t1.status status,
        t1.version version,
        t1.data_version_id dataVersionId,
        t1.create_by createBy,
        t1.create_time createTime,
        t1.update_by updateBy,
        t1.update_time updateTime,
        t1.del_flag delFlag,
        t1.remark remark,
        t1.enterprise_id enterpriseId
        select t1.id              id,
               t1.code            code,
               t1.name            name,
               t1.status          status,
               t1.version         version,
               t1.data_version_id dataVersionId,
               t1.create_by       createBy,
               t1.create_time     createTime,
               t1.update_by       updateBy,
               t1.update_time     updateTime,
               t1.del_flag        delFlag,
               t1.remark          remark,
               t1.enterprise_id   enterpriseId
        from mom_base_warehouse t1
        left join (select * from mom_sys_data_version where business_type='仓库管理' and del_flag=0) t2
        on t1.data_version_id = t2.id
        where t2.version_status='2'
        and t1.del_flag=0
                 left join (select * from mom_sys_data_version where business_type = '仓库管理' and del_flag = 0) t2
                           on t1.data_version_id = t2.id
        where t2.version_status = '2'
          and t1.del_flag = 0
    </select>
    <select id="getLastUsableList"  resultType="org.jeecg.modules.base.entity.Warehouse">
    select
        t1.id id,
        t1.code code,
        t1.name name,
        t1.status status,
        t1.version version,
        t1.data_version_id dataVersionId,
        t1.create_by createBy,
        t1.create_time createTime,
        t1.update_by updateBy,
        t1.update_time updateTime,
        t1.del_flag delFlag,
        t1.remark remark,
        t1.enterprise_id enterpriseId
    <select id="getLastUsableList" resultType="org.jeecg.modules.base.entity.Warehouse">
        select t1.id              id,
               t1.code            code,
               t1.name            name,
               t1.status          status,
               t1.version         version,
               t1.data_version_id dataVersionId,
               t1.create_by       createBy,
               t1.create_time     createTime,
               t1.update_by       updateBy,
               t1.update_time     updateTime,
               t1.del_flag        delFlag,
               t1.remark          remark,
               t1.enterprise_id   enterpriseId
        from mom_base_warehouse t1
    left join
    (select * from mom_sys_data_version where business_type='仓库管理' and del_flag=0) t2
    on t1.data_version_id = t2.id
    where t1.del_flag = 0
    and
    t2.is_last_usable='1'
</select>
                 left join
             (select * from mom_sys_data_version where business_type = '仓库管理' and del_flag = 0) t2
             on t1.data_version_id = t2.id
        where t1.del_flag = 0
          and t2.is_last_usable = '1'
    </select>
    <select id="getVersionStatusByVersion" resultType="String">
        select
            t2.version_status versionStatus
        select t2.version_status versionStatus
        from mom_base_warehouse t1
                 left join (select * from mom_sys_data_version where business_type='仓库管理' and del_flag=0) t2
                 left join (select * from mom_sys_data_version where business_type = '仓库管理' and del_flag = 0) t2
                           on t1.data_version_id = t2.id
        where t1.version = #{version}
          and t1.del_flag=0
          and t1.del_flag = 0
    </select>
    <select id="getByName" resultType="org.jeecg.modules.base.entity.Warehouse">
        select * from  mom_base_warehouse  where name = #{name} and del_flag = 0
        SELECT
            t1.*
        FROM
            mom_base_warehouse t1
                left join mom_sys_data_version t2 on t1.data_version_id = t2.id
        where t2.version_status = '2' and t1.del_flag = 0   and t1.name = #{name}
    </select>
</mapper>