package com.ruoyi.purchase.controller;
|
|
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("/getTicketNo")
|
public AjaxResult getTicketNo(TicketRegistrationDto ticketRegistrationDto) {
|
return AjaxResult.success(ticketRegistrationService.getTicketNo(ticketRegistrationDto));
|
}
|
}
|