Fixiaobai
2023-09-06 8abe275e36823f1065300af45e1f7a9a68f549a7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package com.yuanchu.limslaboratory.controller;
 
 
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuanchu.limslaboratory.annotation.AuthHandler;
import com.yuanchu.limslaboratory.pojo.EquipmentPoint;
import com.yuanchu.limslaboratory.pojo.dto.UpdateEquipmentPointDto;
import com.yuanchu.limslaboratory.service.EquipmentPointService;
import com.yuanchu.limslaboratory.utils.JackSonUtil;
import com.yuanchu.limslaboratory.utils.MyUtil;
import com.yuanchu.limslaboratory.utils.RedisUtil;
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 javax.validation.constraints.NotNull;
import java.util.*;
 
/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author 江苏鵷雏网络科技有限公司
 * @since 2023-07-20
 */
@Api(tags = "实验室-->1、设备台账-->3、设备码点")
@RestController
@RequestMapping("/equipment-point")
public class EquipmentPointController {
 
    @Autowired
    private EquipmentPointService equipmentPointService;
 
    @ApiOperation("添加设备码点")
    @PostMapping("/add")
    @AuthHandler
    public Result<?> addEquipmentPointInformation(@RequestHeader("X-Token") String token, @RequestBody List<EquipmentPoint> equipmentPoints) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
        equipmentPoints.forEach(e->{
            e.setUserId((Integer) unmarshal.get("id"));
            e.setCreateTime(new Date());
            e.setUpdateTime(new Date());
        });
        if(equipmentPointService.addEquipmentPointInformation(equipmentPoints)>0){
           return Result.success("添加成功");
        }
       return Result.fail("添加失败");
    }
 
    @ApiOperation("根据仪器Id查询对应设备码点数据")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "InstrumentId", value = "仪器模块Id", dataTypeClass = String.class, required = true)
    })
    @GetMapping("/list")
    @AuthHandler
    public Result<?> getListEquipmentPointInformation(String InstrumentId) {
        List<Map<String, Object>> list = equipmentPointService.getListEquipmentPointInformation(InstrumentId);
        list.forEach(l->{
            l.put("instrumentId",null);
        });
        return Result.success(list);
    }
 
    @ApiOperation("根据码点Id删除数据")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "equipmentPointId", value = "设备码点Id", dataTypeClass = Integer.class, required = true)
    })
    @DeleteMapping("/delete")
    @AuthHandler
    public Result<?> deleteEquipmentPointInformation(Integer equipmentPointId) {
        Integer isDeleteSuccess = equipmentPointService.deleteEquipmentPointInformation(equipmentPointId);
        if (isDeleteSuccess == 1){
            return Result.success("删除成功!");
        }
        return Result.fail("删除失败!");
    }
 
    @ApiOperation("根据码点Id更新数据")
    @PutMapping("/update")
    @AuthHandler
    public Result<?> updateEquipmentPointInformation(@RequestHeader("X-Token") String token, @RequestBody UpdateEquipmentPointDto updateEquipmentPointDto) throws Exception {
        Object object = RedisUtil.get(token);
        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
        EquipmentPoint equipmentPoint = JackSonUtil.unmarshal(JackSonUtil.marshal(updateEquipmentPointDto), EquipmentPoint.class);
        equipmentPoint.setUserId((Integer) unmarshal.get("id"));
        Integer isUpdateSuccess = equipmentPointService.updateEquipmentPointInformation(equipmentPoint);
        if (isUpdateSuccess == 1){
            return Result.success("更新成功!");
        }
        return Result.fail("更新失败!");
    }
}