package com.yuanchu.limslaboratory.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.limslaboratory.pojo.Specifications; import com.yuanchu.limslaboratory.pojo.Standards; import com.yuanchu.limslaboratory.service.SpecificationsService; import com.yuanchu.limslaboratory.utils.JackSonUtil; import com.yuanchu.limslaboratory.utils.MyUtil; import com.yuanchu.limslaboratory.utils.RedisUtil; import com.yuanchu.limslaboratory.vo.ListSpecificationsInformation; import com.yuanchu.limslaboratory.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; /** *

* 前端控制器 *

* * @author 江苏鵷雏网络科技有限公司 * @since 2023-07-11 */ @Api(tags = "标准库-->型号-->产品规格操作") @RestController @RequestMapping("/specifications") public class SpecificationsController { @Autowired private SpecificationsService specificationsService; @ApiOperation("标准库-->产品规格") @PostMapping("/add") public Result addSpecificationsInformation(@RequestHeader("X-Token") String token,@RequestBody Specifications specifications) throws Exception { Object object = RedisUtil.get(token); Map unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class); specifications.setUserId((Integer) unmarshal.get("id")); Integer isStandardsSuccess = specificationsService.addSpecificationsInformation(specifications); if (isStandardsSuccess == 1) { return Result.success("添加【"+ specifications.getName() +"】成功!"); } return Result.fail("添加【"+ specifications.getName() +"】失败!"); } @ApiOperation("标准库-->根据型号查询产品规格") @ApiImplicitParams(value = { @ApiImplicitParam(name = "pageNo", value = "起始页", dataTypeClass = Integer.class, required = true), @ApiImplicitParam(name = "pageSize", value = "每一页数量", dataTypeClass = Integer.class, required = true), @ApiImplicitParam(name = "specificationsName", value = "规格名称", dataTypeClass = String.class), @ApiImplicitParam(name = "serialNumberId", value = "型号ID", dataTypeClass = String.class), }) @GetMapping("/list") public Result listSpecificationsInformation(Integer pageNo, Integer pageSize, String specificationsName, String serialNumberId){ IPage pageList= specificationsService.listSpecificationsInformation(specificationsName,serialNumberId,new Page(pageNo, pageSize)); Map map = new HashMap<>(); map.put("row", pageList.getRecords()); map.put("total", pageList.getTotal()); return Result.success(map); } }