gongchunyi
昨天 e3de4be3084d4fe159b5c928b749fbd5d01db25e
feat: 出库台账、库存管理、原材料出库领用都添加净重显示
已修改4个文件
78 ■■■■ 文件已修改
src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/stock/pojo/StockOutRecord.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/stock/StockInventoryMapper.xml 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/stock/dto/StockInRecordDto.java
@@ -3,6 +3,8 @@
import com.ruoyi.stock.pojo.StockInRecord;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class StockInRecordDto extends StockInRecord {
@@ -26,4 +28,6 @@
    //现存量
    private String currentStock;
    //现净重
    private BigDecimal currentWeight;
}
src/main/java/com/ruoyi/stock/pojo/StockOutRecord.java
@@ -76,4 +76,7 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime weighingDate;
    @ApiModelProperty("净重")
    private BigDecimal netWeight;
}
src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -93,6 +93,7 @@
        stockOutRecordDto.setRecordType(stockInventoryDto.getRecordType());
        stockInventoryDto.setWeighingDate(stockInventoryDto.getWeighingDate());
        stockOutRecordDto.setStockOutNum(stockInventoryDto.getQualitity());
        stockOutRecordDto.setNetWeight(stockInventoryDto.getNetWeight());
        stockOutRecordDto.setProductModelId(stockInventoryDto.getProductModelId());
        stockOutRecordDto.setType("0");
        stockOutRecordService.add(stockOutRecordDto);
src/main/resources/mapper/stock/StockInventoryMapper.xml
@@ -42,9 +42,6 @@
            <if test="ew.qualitity != null">
                qualitity = qualitity - #{ew.qualitity},
            </if>
            <if test="ew.netWeight != null">
                net_weight = net_weight - #{ew.netWeight},
            </if>
            <if test="ew.version != null">
                version = version + 1,
            </if>
@@ -55,10 +52,12 @@
        </set>
        where product_model_id = #{ew.productModelId} and qualitity >= #{ew.qualitity}
    </update>
    <select id="pagestockInventory" resultType="com.ruoyi.stock.dto.StockInventoryDto">
        select
        si.id,
        COALESCE(sir.total_net_weight, 0) as net_weight,
        -- 当前净重 = 入库净重 - 出库净重
        (COALESCE(sir.total_net_weight,0) - COALESCE(sor.total_net_weight,0)) as net_weight,
        si.qualitity,
        COALESCE(si.locked_quantity, 0) as locked_quantity,
        si.product_model_id,
@@ -73,10 +72,12 @@
        p.product_name,
        p1.product_name as parent_name,
        p1.id as parent_id
        from stock_inventory si
        left join product_model pm on si.product_model_id = pm.id
        left join product p on pm.product_id = p.id
        left join product p1 on p.parent_id = p1.id
        -- 入库净重
        left join (
        select
        product_model_id,
@@ -84,6 +85,15 @@
        from stock_in_record
        group by product_model_id
        ) sir on si.product_model_id = sir.product_model_id
        -- 出库净重
        left join (
        select
        product_model_id,
        sum(net_weight) as total_net_weight
        from stock_out_record
        group by product_model_id
        ) sor on si.product_model_id = sor.product_model_id
        <where>
            1=1
            <if test="ew.parentId != null and ew.parentId !=''">
@@ -94,6 +104,7 @@
            </if>
        </where>
    </select>
    <select id="listStockInventoryExportData" resultType="com.ruoyi.stock.execl.StockInventoryExportData">
        select si.qualitity,
        pm.model,
@@ -111,18 +122,53 @@
            and p.product_name like concat('%',#{ew.productName},'%')
        </if>
    </select>
    <select id="stockInventoryPage" resultType="com.ruoyi.stock.dto.StockInRecordDto">
        select sir.*,si.qualitity as current_stock,
        select
        sir.*,
        si.qualitity as current_stock,
        pm.model,
        pm.unit,
        p.product_name,
        su.nick_name as create_by
        from
        stock_in_record sir
        left join stock_inventory si on sir.product_model_id = si.product_model_id
        left join product_model pm on sir.product_model_id = pm.id
        left join product p on pm.product_id = p.id
        left join sys_user su on sir.create_user = su.user_id
        su.nick_name as create_by,
        -- 当前净重 = 入库净重 - 出库净重
        IFNULL(inWeight.total_in_weight,0) - IFNULL(outWeight.total_out_weight,0) as current_weight
        from stock_in_record sir
        left join stock_inventory si
        on sir.product_model_id = si.product_model_id
        left join product_model pm
        on sir.product_model_id = pm.id
        left join product p
        on pm.product_id = p.id
        left join sys_user su
        on sir.create_user = su.user_id
        -- 入库净重统计
        left join (
        select
        product_model_id,
        sum(net_weight) as total_in_weight
        from stock_in_record
        group by product_model_id
        ) inWeight
        on sir.product_model_id = inWeight.product_model_id
        -- 出库净重统计
        left join (
        select
        product_model_id,
        sum(net_weight) as total_out_weight
        from stock_out_record
        group by product_model_id
        ) outWeight
        on sir.product_model_id = outWeight.product_model_id
        <where>
            <if test="ew.reportDate != null">
                and sir.create_time >= #{ew.reportDate}