13 小时以前 c653ef74b8b332a530f8d1b54a316d382d0647d1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
package com.ruoyi.basic.controller;
 
import com.ruoyi.basic.dto.CustomerContractRecordDto;
import com.ruoyi.basic.service.CustomerContractRecordService;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
 
/**
 * 客户合同记录Controller
 *
 * @author ruoyi
 * @date 2026-06-24
 */
@Tag(name = "客户合同记录")
@RestController
@RequestMapping("/basic/customer-contract")
@RequiredArgsConstructor
public class CustomerContractRecordController extends BaseController {
 
    private final CustomerContractRecordService customerContractRecordService;
 
    /**
     * 查询客户合同记录列表
     */
    @Operation(summary = "查询客户合同记录列表")
    @GetMapping("/list/{customerId}")
    public AjaxResult list(@PathVariable Long customerId) {
        List<CustomerContractRecordDto> list = customerContractRecordService.selectListByCustomerId(customerId);
        return AjaxResult.success(list);
    }
 
    /**
     * 获取客户合同记录详细信息
     */
    @Operation(summary = "获取客户合同记录详细信息")
    @GetMapping("/{id}")
    public AjaxResult getInfo(@PathVariable Long id) {
        return AjaxResult.success(customerContractRecordService.selectDetailById(id));
    }
 
    /**
     * 新增客户合同记录
     */
    @Operation(summary = "新增客户合同记录")
    @Log(title = "客户合同记录-新增", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody CustomerContractRecordDto dto) {
        int result = customerContractRecordService.insertCustomerContractRecord(dto);
        return toAjax(result);
    }
 
    /**
     * 修改客户合同记录
     */
    @Operation(summary = "修改客户合同记录")
    @Log(title = "客户合同记录-修改", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody CustomerContractRecordDto dto) {
        return toAjax(customerContractRecordService.updateCustomerContractRecord(dto));
    }
 
    /**
     * 删除客户合同记录
     */
    @Operation(summary = "删除客户合同记录")
    @Log(title = "客户合同记录-删除", businessType = BusinessType.DELETE)
    @DeleteMapping("/{id}")
    public AjaxResult remove(@PathVariable Long id) {
        return toAjax(customerContractRecordService.deleteCustomerContractRecord(id));
    }
 
    /**
     * 根据总合同号查询附件(供销售台账、销售报价等模块使用)
     */
    @Operation(summary = "根据总合同号查询附件")
    @GetMapping("/files/byContractNo")
    public AjaxResult getFilesByContractNo(@RequestParam String masterContractNo) {
        return AjaxResult.success(customerContractRecordService.selectFilesByMasterContractNo(masterContractNo));
    }
}