XiaoRuby
2023-07-27 c6c30ead51b2ac1f7ffd4fb7e4b193c5d11d7bdf
inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/InspectionMaterialListController.java
@@ -1,9 +1,11 @@
package com.yuanchu.limslaboratory.controller;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.yuanchu.limslaboratory.mapper.InspectionMapper;
import com.yuanchu.limslaboratory.pojo.Inspection;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yuanchu.limslaboratory.pojo.InspectionMaterialList;
import com.yuanchu.limslaboratory.pojo.Material;
import com.yuanchu.limslaboratory.pojo.dto.InspectionMaterialListDto;
import com.yuanchu.limslaboratory.service.InspectionMaterialListService;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
@@ -12,22 +14,21 @@
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Map;
/**
 * <p>
 *  前端控制器
 * 前端控制器
 * </p>
 *
 * @author 江苏鵷雏网络科技有限公司
 * @since 2023-07-17
 */
@Api(tags = "检验模块")
@Api(tags = "检验模块-->检验单-->样品相关")
@RestController
@RequestMapping("/inspectionMaterialList")
public class InspectionMaterialListController {
@@ -35,13 +36,24 @@
    @Autowired
    InspectionMaterialListService inspectionMaterialListService;
    @ApiOperation("添加样品")
    @Resource
    InspectionMapper inspectionMapper;
    @ApiOperation("添加检验单中的检验样品")
    @PostMapping("/addInspectionMaterialList")
    public Result addInspectionMaterialList(@RequestHeader("X-Token") String token, @RequestBody InspectionMaterialList inspectionMaterialList) throws Exception {
        inspectionMaterialList.setState(1);
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
        return Result.success(inspectionMaterialListService.addInspectionMaterialList(inspectionMaterialList, ""+unmarshal.get("id")));
        //如果检验单已作废,状态为0,则无法添加样品
        Inspection inspection = inspectionMapper.selectById(inspectionMaterialList.getInspectionId());
        if (inspection.getState()==0) {
            return Result.fail("检验单已作废无法添加检验样品");
        }
        else {
            inspectionMaterialList.setState(1);
            Object object = RedisUtil.get(token);
            Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
            inspectionMaterialListService.addInspectionMaterialList(inspectionMaterialList, "" + unmarshal.get("id"));
            return Result.success();
        }
    }
    @ApiOperation("删除样品")
@@ -50,25 +62,26 @@
    })
    @PostMapping("/delInspectionMaterialList")
    public Result delInspectionMaterialList(int inspectionMaterialListId) {
        return Result.success(inspectionMaterialListService.delInspectionMaterialListByInsId(inspectionMaterialListId));
        inspectionMaterialListService.delInspectionMaterialListByInsId(inspectionMaterialListId);
        return Result.success();
    }
    @ApiOperation("根据Id查询样品信息")
    @ApiOperation("根据样品Id查询样品信息")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "inspectionMaterialListId", value = "样品ID", dataTypeClass = Integer.class, required = true),
            @ApiImplicitParam(name = "inspectionId", value = "样品ID", dataTypeClass = String.class, required = true),
    })
    @PostMapping("/selectInspectionMaterialListById")
    public Result selectInspectionMaterialListById(int inspectionMaterialListId) throws Exception {
        return Result.success(inspectionMaterialListService.getById(inspectionMaterialListId));
    @GetMapping("/selectInspectionMaterialListById/{inspectionId}")
    public Result selectInspectionMaterialListById(@PathVariable String inspectionId) {
        return Result.success(inspectionMaterialListService.list(new QueryWrapper<InspectionMaterialList>().eq("inspection_id", inspectionId).eq("state", 1)));
    }
    @ApiOperation("修改样品信息")
    @ApiOperation("根据样品id修改样品信息")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "inspectionMaterialListId", value = "样品ID", dataTypeClass = Integer.class, required = true),
    })
    @PutMapping("/updateInspectionMaterialList/{inspectionMaterialListId}")
    public Result updateInspectionMaterialList(@PathVariable Integer inspectionMaterialListId, @RequestBody InspectionMaterialList inspectionMaterialList) throws Exception {
        return Result.success(inspectionMaterialListService.updateInspectionMaterialList(inspectionMaterialListId,inspectionMaterialList));
    public Result updateInspectionMaterialList(@PathVariable Integer inspectionMaterialListId, @RequestBody InspectionMaterialListDto inspectionMaterialListDto) {
        inspectionMaterialListService.updateInspectionMaterialList(inspectionMaterialListId, inspectionMaterialListDto);
        return Result.success();
    }
}