package com.yuanchu.mom.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.mom.annotation.CustomClazzName;
import com.yuanchu.mom.annotation.ValueAuth;
import com.yuanchu.mom.annotation.ValueClassify;
import com.yuanchu.mom.dto.ProcurementSuppliesListDto;
import com.yuanchu.mom.mapper.ProcurementSuppliesListMapper;
import com.yuanchu.mom.mapper.SupplierManagementMapper;
import com.yuanchu.mom.mapper.UserMapper;
import com.yuanchu.mom.pojo.ProcurementSuppliesList;
import com.yuanchu.mom.pojo.SupplierManagement;
import com.yuanchu.mom.pojo.User;
import com.yuanchu.mom.service.ProcurementSuppliesListService;
import com.yuanchu.mom.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
/**
*
* 服务与供应商 耗材列表 前端控制器
*
*
* @author 芯导软件(江苏)有限公司
* @since 2024-11-15 04:04:32
*/
@Api(tags = "服务和供应品采购耗材")
@RestController
@RequestMapping("/procurementSuppliesList")
//@CustomClazzName(name = "资源要求",index = 8)
public class ProcurementSuppliesListController {
@Autowired
private ProcurementSuppliesListService procurementSuppliesListService;
@Autowired
private ProcurementSuppliesListMapper listMapper;
@Autowired
private UserMapper userMapper;
@Autowired
private SupplierManagementMapper supplierManagementMapper;
@ValueClassify("服务和供应品采购")
@ApiOperation(value = "分页查询")
@GetMapping("/procurementSuppliesList")
public Result> procurementSuppliesList(Page page, ProcurementSuppliesListDto list) {
return Result.success(procurementSuppliesListService.selectList(page, list));
}
@ValueAuth
@ApiOperation(value = "根据id查询耗材")
@GetMapping("/selectProcurementSuppliesListById")
public Result selectProcurementSuppliesListById(Integer id) {
ProcurementSuppliesList procurementSuppliesStore = listMapper.selectById(id);
ProcurementSuppliesListDto dto = new ProcurementSuppliesListDto();
BeanUtils.copyProperties(procurementSuppliesStore, dto);
User user = userMapper.selectById(procurementSuppliesStore.getPersonInCharge());
User updateUser = userMapper.selectById(procurementSuppliesStore.getUpdateUser());
SupplierManagement supplierManagement = supplierManagementMapper.selectById(procurementSuppliesStore.getSupplier());
dto.setPersonInChargeName(user.getName());
dto.setUpdateUserName(updateUser.getName());
dto.setSupplierName(supplierManagement.getSupplierName());
return Result.success(dto);
}
@ValueClassify("服务和供应品采购")
@ApiOperation(value = "新增耗材")
@PostMapping("/addProcurementSuppliesList")
public Result addProcurementSuppliesList(@RequestBody ProcurementSuppliesListDto dto) {
return Result.success(procurementSuppliesListService.addProcurementSuppliesList(dto));
}
@ValueClassify("服务和供应品采购")
@ApiOperation(value = "编辑耗材")
@PostMapping("/updateProcurementSuppliesList")
public Result updateProcurementSuppliesList(@RequestBody ProcurementSuppliesListDto dto) {
return Result.success(procurementSuppliesListService.updateProcurementSuppliesList(dto));
}
@ValueClassify("服务和供应品采购")
@ApiOperation(value = "删除耗材")
@PostMapping("/deleteProcurementSuppliesList")
public Result deleteProcurementSuppliesList(@RequestBody ProcurementSuppliesListDto dto) {
return Result.success(listMapper.deleteById(dto.getId()));
}
@ValueClassify("服务和供应品采购")
@ApiOperation(value = "导出耗材列表")
@PostMapping("/exportProcurementSuppliesList/{parentId}")
public void exportProcurementSuppliesList( @PathVariable Integer parentId ,HttpServletResponse response) throws Exception {
procurementSuppliesListService.exportProcurementSuppliesList(parentId,response);
}
}