liyong
4 天以前 37b697351e8e0a9200eee1276c4081c07588dc10
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package com.ruoyi.purchase.controller;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.utils.poi.ExcelUtil;
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 com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.purchase.dto.TicketRegistrationDto;
import com.ruoyi.purchase.pojo.ProductRecord;
import com.ruoyi.purchase.pojo.TicketRegistration;
import com.ruoyi.purchase.service.IProductRecordService;
import com.ruoyi.purchase.service.ITicketRegistrationService;
import com.ruoyi.sales.service.ICommonFileService;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
 
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
 
/**
 * 来票登记Controller
 *
 * @author ruoyi
 * @date 2025-05-13
 */
@RestController
@RequestMapping("/purchase/registration")
@AllArgsConstructor
public class TicketRegistrationController extends BaseController {
 
    private ITicketRegistrationService ticketRegistrationService;
 
    private ICommonFileService commonFileService;
 
    private IProductRecordService productRecordService;
 
    /**
     * 查询来票登记列表
     */
    @GetMapping("/list")
    public TableDataInfo list(TicketRegistration ticketRegistration) {
        startPage();
        List<TicketRegistration> list = ticketRegistrationService.selectTicketRegistrationList(ticketRegistration);
        return getDataTable(list);
    }
 
    /**
     * 导出来票登记列表
     */
    @Log(title = "来票登记", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, TicketRegistration ticketRegistration) {
        List<TicketRegistration> list = ticketRegistrationService.selectTicketRegistrationList(ticketRegistration);
        ExcelUtil<TicketRegistration> util = new ExcelUtil<TicketRegistration>(TicketRegistration.class);
        util.exportExcel(response, list, "来票登记数据");
    }
 
    /**
     * 查询来票登记和产品父子列表
     */
    @GetMapping("/getRegistrationById")
    public TicketRegistrationDto getRegistrationById(TicketRegistrationDto ticketRegistrationDto) {
        return ticketRegistrationService.getRegistrationById(ticketRegistrationDto);
    }
 
    /**
     * 新增修改来票登记
     */
    @Log(title = "来票登记", businessType = BusinessType.INSERT)
    @PostMapping("/addOrUpdateRegistration")
    public AjaxResult addOrUpdateRegistration(@RequestBody TicketRegistrationDto ticketRegistrationDto) throws IOException {
        return toAjax(ticketRegistrationService.addOrUpdateRegistration(ticketRegistrationDto));
    }
 
    /**
     * 删除来票登记
     */
    @Log(title = "来票登记", businessType = BusinessType.DELETE)
    @DeleteMapping("/delRegistration")
    public AjaxResult delRegistration(@RequestBody Long[] ids) {
        return toAjax(ticketRegistrationService.delRegistration(ids));
    }
 
    @PostMapping("/upload")
    public AjaxResult uploadFile(MultipartFile file, Long id, String type) {
        try {
            return AjaxResult.success(commonFileService.uploadFile(file, id, type));
        } catch (Exception e) {
            return AjaxResult.error(e.getMessage());
        }
    }
 
    /**
     * 查询产品信息开票记录列表
     */
    @GetMapping("/productRecordList")
    public List<ProductRecord> productRecordList(TicketRegistrationDto ticketRegistrationDto) {
        List<ProductRecord> list = productRecordService.selectProductRecordList(ticketRegistrationDto);
        return list;
    }
 
    /**
     * 分页查询产品信息开票记录列表
     */
    @GetMapping("/productRecordPage")
    public AjaxResult productRecordPage(Page page, TicketRegistrationDto ticketRegistrationDto) {
        IPage<ProductRecord> list = productRecordService.productRecordPage(page,ticketRegistrationDto);
        return AjaxResult.success(list);
    }
 
    /**
     * 查询发票号
     */
    @GetMapping("/getTicketNo")
    public AjaxResult getTicketNo(TicketRegistrationDto ticketRegistrationDto) {
        return AjaxResult.success(ticketRegistrationService.getTicketNo(ticketRegistrationDto));
    }
 
    /**
     * 查询来票登记列表
     */
    @GetMapping("/listPage")
    public IPage<TicketRegistration> listPage(Page page, TicketRegistration ticketRegistration) {
        return ticketRegistrationService.selectTicketRegistrationListPage(page,ticketRegistration);
    }
}