package com.ruoyi.basic.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.basic.dto.SupplierManageDto; import com.ruoyi.basic.pojo.SupplierManage; import com.ruoyi.basic.service.ISupplierService; 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.domain.R; import jakarta.servlet.http.HttpServletResponse; import lombok.AllArgsConstructor; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.List; @RestController @RequestMapping("/system/supplier") @AllArgsConstructor public class SupplierManageController { private ISupplierService supplierService; /** * 供应商新增 * @param supplierManage * @return */ @PostMapping("/add") public R add(@RequestBody SupplierManage supplierManage) { supplierService.saveSupplier(supplierManage); return R.ok(); } /** * 供应商删除 * @param ids * @return */ @DeleteMapping("/del") public R delSupplier(@RequestBody List ids) { if(CollectionUtils.isEmpty(ids)){ return R.fail("请选择至少一条数据"); } supplierService.delSupplier(ids); return R.ok(); } /** * 供应商详情 * @param id * @return */ @GetMapping("/{id}") public R supplierDetail(@PathVariable("id") Integer id) { return R.ok(supplierService.supplierDetail(id)); } /** * 供应商修改 * @param supplierManage * @return */ @PostMapping("/update") public R update(@RequestBody SupplierManage supplierManage) { supplierService.supplierUpdate(supplierManage); return R.ok(); } /** * 供应商管理分页查询 * @param page * @param supplierManageDto * @return */ @GetMapping("/listPage") public R supplierListPage(Page page, SupplierManageDto supplierManageDto) { return R.ok(supplierService.supplierListPage(page, supplierManageDto)); } /** * 供应商导出 * @param response * @param supplierManageDto */ @PostMapping("/export") public void supplierExport(HttpServletResponse response,SupplierManageDto supplierManageDto) { supplierService.supplierExport(response, supplierManageDto); } @PostMapping("/downloadTemplate") @Log(title = "供应商-下载模板", businessType = BusinessType.EXPORT) public void downloadTemplate(HttpServletResponse response) { ExcelUtil util = new ExcelUtil(SupplierManage.class); util.importTemplateExcel(response, "供应商档案模板"); } /** * 供应商导入 */ @PostMapping("/import") @Log(title = "供应商导入", businessType = BusinessType.IMPORT) public R importData(MultipartFile file) { Boolean b = supplierService.importData(file); if (b) { return R.ok("导入成功"); } return R.fail("导入失败"); } /** * 供应商选项接口 * @return */ @GetMapping("/getOptions") public R getOptions() { return R.ok(supplierService.list()); } }