zhitong.yu
7 天以前 7fc9c42987a13c1d8d2159591a5803e70518827f
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
package com.hxzk.gps.controller.Person;
 
import cn.dev33.satoken.annotation.SaCheckLogin;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.hxzk.gps.controller.Person.Results.PersonResult;
import com.hxzk.gps.controller.Person.dto.PersonTreeTableDto;
import com.hxzk.gps.controller.Role.Results.AddRoleDto;
import com.hxzk.gps.entity.Person.TbPerson;
import com.hxzk.gps.entity.Tag.TbTag;
import com.hxzk.gps.result.ResultList;
import com.hxzk.gps.service.Person.TbPersonService;
import com.hxzk.gps.util.AuToComplete;
import com.hxzk.gps.util.GetUser.UserInfoUtil;
import com.hxzk.gps.util.Result.ReturnMessage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.stereotype.Controller;
 
import java.util.List;
import java.util.stream.Collectors;
 
/**
 * <p>
 *  前端控制器
 *  人员管理
 * </p>
 *
 * @author YuZhiTong
 * @since 2025-05-16
 */
@RestController
@RequestMapping("/Person")
@Api(tags="终端管理")
public class TbPersonController {
    @Autowired
    TbPersonService personService;
 
 
    @ApiOperation(value = "平台人员列表接口", notes = "该接口提供了平台终端的信息查询功能")
    @PostMapping("FindPersonInfo")
    public PersonResult FindPersonInfo(@RequestBody PersonTreeTableDto personTreeTableDto){
        return personService.FindPersonInfo(personTreeTableDto);
    }
    @SaCheckLogin
    @ApiOperation(value = "平台车辆列表接口", notes = "该接口提供了平台车辆的信息查询功能")
    @PostMapping("FindCarInfo")
    public PersonResult FindCarInfo(@RequestBody PersonTreeTableDto personTreeTableDto){
        return personService.FindCarInfo(personTreeTableDto);
    }
    @SaCheckLogin
    @ApiOperation(value = "平台物资列表接口", notes = "该接口提供了平台物资的信息查询功能")
    @PostMapping("FindMaterialsInfo")
    public PersonResult FindMaterialsInfo(@RequestBody PersonTreeTableDto personTreeTableDto){
        return personService.FindMaterialsInfo(personTreeTableDto);
    }
    @SaCheckLogin
    @PostMapping("PersonPosition")
    public ResultList PersonPosition(){
        return personService.PersonPosition();
    }
 
 
    @ApiOperation(value = "平台实时人员位置接口", notes = "该接口提供了平台实时人员位置功能")
    @PostMapping("RealPosition")
    public ResultList RealPosition(){
        return personService.RealPosition();
    }
 
    @ApiOperation(value = "平台平面二维实时人员位置接口", notes = "该接口提供了平台实时人员位置功能")
    @PostMapping("RealPosition2D")
    public ResultList RealPosition2D(){
        return personService.RealPosition2D();
    }
    @SaCheckLogin
    @ApiOperation(value = "平台根据姓名或者编号获取信息接口", notes = "该接口提供了平台根据姓名或者编号获取信息功能")
    @PostMapping("FindOnePersonInfo")
    public TbPerson FindOnePersonInfo(@RequestBody TbPerson person){
        QueryWrapper<TbPerson> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("p_tagid", person.getPTagid()).or().eq("p_name", person.getPTagid());
        return personService.getBaseMapper().selectOne(queryWrapper);
    }
 
    /*
     * 人员名称自动补全
     * */
    @SaCheckLogin
    @PostMapping("PersonNameAutocomplete")
    public List<AuToComplete> PersonNameAutocomplete(){
        QueryWrapper<TbPerson> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("company", UserInfoUtil.getUserCompany());
        List<TbPerson> PersonList = personService.getBaseMapper().selectList(queryWrapper);
        List<AuToComplete> addCustomerList = PersonList.stream()
                .map(person -> {
                    AuToComplete addCustomer = new AuToComplete();
                    addCustomer.setValue(person.getPName());
                    addCustomer.setLink(person.getPTagid());
                    return addCustomer;
                })
                .collect(Collectors.toList());
 
        return addCustomerList;
    }
 
    @SaCheckLogin
    @ApiOperation(value = "终端新增接口", notes = "该接口提供了平台终端新增功能")
    @PostMapping("add")
    public ReturnMessage add(@RequestBody TbPerson person){
        return personService.add(person);
    }
 
    @SaCheckLogin
    @ApiOperation(value = "终端修改接口", notes = "该接口提供了平台终端修改功能")
    @PostMapping("update")
    public ReturnMessage update(@RequestBody TbPerson person){
        return personService.update(person);
    }
 
    @SaCheckLogin
    @ApiOperation(value = "终端删除接口", notes = "该接口提供了平台终端删除功能")
    @PostMapping("delete")
    public ReturnMessage delete(@RequestBody TbPerson person){
        return personService.delete(person);
    }
}