buhuazhen
7 天以前 47291cc9294a0d31ab61acf13f82c36ba061cb91
feat(approve): 在审批记录中添加发货数量信息

- 修改ApproveProcessServiceImpl,在审批记录的理由中追加发货数量
- 调整SalesLedgerProductMapper.xml,修正分组字段为sales_ledger_product_id并关联对应字段
- 扩展ShippingInfoDto,新增quantity属性用于数量展示
- 修改ShippingInfoMapper.xml,增加对quantity字段的查询支持和对应查询条件完善
已修改4个文件
20 ■■■■■ 文件已修改
src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/sales/dto/ShippingInfoDto.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/sales/SalesLedgerProductMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/sales/ShippingInfoMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
@@ -43,15 +43,13 @@
import org.springframework.util.StringUtils;
import java.io.IOException;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
@Service
@@ -199,6 +197,8 @@
                    ShippingInfo shippingInfo = shippingInfoMapper.selectOne(new LambdaQueryWrapper<ShippingInfo>()
                            .eq(ShippingInfo::getShippingNo, shippingNo)
                            .last("limit 1"));
                    record.setApproveReason(record.getApproveReason() + "-发货数量:" + Optional.ofNullable(shippingInfo.getPartSendAmount()).orElse(BigDecimal.ZERO).stripTrailingZeros()
                            .toPlainString());
                    if (shippingInfo != null) {
                        // 使用发货台账的 销售台账ID 去查附件
                        allFiles = commonFileMapper.selectList(new LambdaQueryWrapper<CommonFile>()
src/main/java/com/ruoyi/sales/dto/ShippingInfoDto.java
@@ -7,6 +7,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
@@ -33,4 +34,6 @@
    private String productName;
    private BigDecimal quantity;
}
src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
@@ -17,11 +17,10 @@
        LEFT JOIN stock_inventory t2 ON T1.product_model_id = t2.product_model_id
        LEFT JOIN (
        SELECT sales_ledger_id,
        SELECT sales_ledger_product_id,
        sum(part_send_amount) as part_send_amount
        FROM shipping_info
        GROUP BY sales_ledger_id
        ) as t3 on t3.sales_ledger_id = T1.sales_ledger_id
        GROUP BY sales_ledger_product_id) as t3 on t3.sales_ledger_product_id = T1.id
        <where>
            <if test="salesLedgerProduct.salesLedgerId != null">
                AND T1.sales_ledger_id = #{salesLedgerProduct.salesLedgerId}
src/main/resources/mapper/sales/ShippingInfoMapper.xml
@@ -13,6 +13,7 @@
        s.shipping_no,
        s.type,
        s.status,
        slp.quantity,
        s.create_time,
        s.update_time,
        s.create_user,
@@ -36,6 +37,9 @@
        <if test="req.salesLedgerId != null">
            AND s.sales_ledger_id = #{req.salesLedgerId}
        </if>
        <if test="req.salesLedgerProductId != null">
            AND slp.id = #{req.salesLedgerProductId}
        </if>
        <if test="req.shippingCarNumber != null and req.shippingCarNumber != ''">
            AND s.shipping_car_number LIKE CONCAT('%',#{req.shippingCarNumber},'%')
        </if>