huminmin
8 天以前 0378df1167bff05e209a22ad91f6d01a6e316902
增加采购退货单列表和新增接口
已添加2个文件
已重命名1个文件
已修改6个文件
114 ■■■■■ 文件已修改
doc/20260306_create_purchase_return_orders.sql 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/controller/PurchaseReturnOrdersController.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/dto/PurchaseReturnOrderDto.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/pojo/PurchaseReturnOrders.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/service/PurchaseReturnOrdersService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/service/impl/PurchaseReturnOrdersServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/vo/PurchaseReturnOrderVo.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
doc/20260306_create_purchase_return_orders.sql
ÎļþÃû´Ó doc/20260306_craete_purchase_return_orders.sql ÐÞ¸Ä
@@ -12,9 +12,13 @@
    prepared_user_id   bigint  not null default 0 comment '制单人id',
    return_user_id     bigint  not null default 0 comment '退料人id',
    purchase_ledger_id bigint  not null default 0 comment '采购订单id',
    total_discount_amount decimal(10, 2) null comment '整单折扣额',
    total_discount_rate   decimal(10, 2) null comment '整单折扣率',
    total_amount decimal(10,2) null comment '成交金额',
    remark             text null comment '备注',
    create_time        datetime null comment '录入时间',
    update_time        datetime null comment '更新时间',
    index              idx_supplier_id (supplier_id),
    index              idx_purchase_ledger_id (purchase_ledger_id),
    index              idx_project_id (project_id)
);
src/main/java/com/ruoyi/purchase/controller/PurchaseReturnOrdersController.java
@@ -1,7 +1,16 @@
package com.ruoyi.purchase.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.utils.OrderUtils;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.projectManagement.mapper.RolesMapper;
import com.ruoyi.purchase.dto.PurchaseReturnOrderDto;
import com.ruoyi.purchase.mapper.PurchaseReturnOrdersMapper;
import com.ruoyi.purchase.service.PurchaseReturnOrdersService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
@@ -14,5 +23,25 @@
@RestController
@RequestMapping("/purchaseReturnOrders")
public class PurchaseReturnOrdersController {
    @Autowired
    private PurchaseReturnOrdersService purchaseReturnOrdersService;
    @Autowired
    private PurchaseReturnOrdersMapper purchaseReturnOrdersMapper;
    @GetMapping("/listPage")
    public AjaxResult listPage(Page page, PurchaseReturnOrderDto purchaseReturnOrderDto) {
        return AjaxResult.success(purchaseReturnOrdersService.listPage(page, purchaseReturnOrderDto));
    }
    // æ–°å¢ž
    @Log(title = "采购退货单", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    public AjaxResult add(@RequestBody PurchaseReturnOrderDto purchaseReturnOrderDto) throws Exception {
        if (purchaseReturnOrderDto.getIsDefaultNo()) {
            purchaseReturnOrderDto.setNo(OrderUtils.countTodayByCreateTime(purchaseReturnOrdersMapper, "CGTL"));
        }
        return AjaxResult.success(purchaseReturnOrdersService.save(purchaseReturnOrderDto));
    }
}
src/main/java/com/ruoyi/purchase/dto/PurchaseReturnOrderDto.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,10 @@
package com.ruoyi.purchase.dto;
import com.ruoyi.purchase.pojo.PurchaseReturnOrders;
import lombok.Data;
@Data
public class PurchaseReturnOrderDto extends PurchaseReturnOrders {
    // æ˜¯å¦ä½¿ç”¨ç³»ç»Ÿå•号
    private Boolean isDefaultNo;
}
src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java
@@ -1,8 +1,12 @@
package com.ruoyi.purchase.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.purchase.pojo.PurchaseReturnOrders;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.purchase.vo.PurchaseReturnOrderVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
 * <p>
@@ -14,5 +18,5 @@
 */
@Mapper
public interface PurchaseReturnOrdersMapper extends BaseMapper<PurchaseReturnOrders> {
    IPage<PurchaseReturnOrderVo> listPage(Page page, @Param("params") PurchaseReturnOrders purchaseReturnOrder);
}
src/main/java/com/ruoyi/purchase/pojo/PurchaseReturnOrders.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -61,6 +62,15 @@
    @ApiModelProperty("备注")
    private String remark;
    @ApiModelProperty("'整单折扣额'")
    private BigDecimal totalDiscountAmount;
    @ApiModelProperty("'整单折扣率'")
    private BigDecimal totalDiscountRate;
    @ApiModelProperty("'成交金额'")
    private BigDecimal totalAmount;
    @ApiModelProperty("录入时间")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;
src/main/java/com/ruoyi/purchase/service/PurchaseReturnOrdersService.java
@@ -1,7 +1,11 @@
package com.ruoyi.purchase.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.purchase.dto.PurchaseReturnOrderDto;
import com.ruoyi.purchase.pojo.PurchaseReturnOrders;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.purchase.vo.PurchaseReturnOrderVo;
/**
 * <p>
@@ -12,5 +16,5 @@
 * @since 2026-03-06 11:44:38
 */
public interface PurchaseReturnOrdersService extends IService<PurchaseReturnOrders> {
    IPage<PurchaseReturnOrderVo> listPage(Page page, PurchaseReturnOrderDto purchaseReturnOrderDto);
}
src/main/java/com/ruoyi/purchase/service/impl/PurchaseReturnOrdersServiceImpl.java
@@ -1,9 +1,14 @@
package com.ruoyi.purchase.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.purchase.dto.PurchaseReturnOrderDto;
import com.ruoyi.purchase.pojo.PurchaseReturnOrders;
import com.ruoyi.purchase.mapper.PurchaseReturnOrdersMapper;
import com.ruoyi.purchase.service.PurchaseReturnOrdersService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.purchase.vo.PurchaseReturnOrderVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
@@ -16,5 +21,11 @@
 */
@Service
public class PurchaseReturnOrdersServiceImpl extends ServiceImpl<PurchaseReturnOrdersMapper, PurchaseReturnOrders> implements PurchaseReturnOrdersService {
    @Autowired
    private PurchaseReturnOrdersMapper purchaseReturnOrdersMapper;
    @Override
    public IPage<PurchaseReturnOrderVo> listPage(Page page, PurchaseReturnOrderDto purchaseReturnOrderDto) {
        return purchaseReturnOrdersMapper.listPage(page, purchaseReturnOrderDto);
    }
}
src/main/java/com/ruoyi/purchase/vo/PurchaseReturnOrderVo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package com.ruoyi.purchase.vo;
import com.ruoyi.purchase.pojo.PurchaseReturnOrders;
public class PurchaseReturnOrderVo extends PurchaseReturnOrders {
    //供应商名称
    private String supplierName;
    // é‡‡è´­åˆåŒå·
    private String purchaseContractNumber;
    //退料人姓名
    private String returnUserName;
     //制单人姓名
    private String createUserName;
}
src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml
@@ -19,4 +19,21 @@
        <result column="update_time" property="updateTime" />
    </resultMap>
    <select id="listPage" resultType="com.ruoyi.purchase.vo.PurchaseReturnOrderVo">
        SELECT
        pro.*,
        sm.supplier_name as supplierName,
        pl.purchase_contract_number as purchaseContractNumber,
        su.user_name as returnUserName,
        su1.user_name as createUserName
        FROM purchase_return_orders pro
        LEFT JOIN supplier_manage sm ON pro.supplier_id = sm.id
        LEFT JOIN purchase_ledger pl ON pl.id = pro.purchase_ledger_id
        LEFT JOIN sys_user su ON su.user_id = pro.return_user_id
        LEFT JOIN sys_user su1 ON su1.user_id = pro.prepared_user_id
        where 1=1
        <if test="params.no != null and params.no != '' ">
            AND pro.no LIKE CONCAT('%',#{params.no},'%')
        </if>
    </select>
</mapper>