智慧保安后台管理-外网项目备份
钟日健
2026-06-01 62eb499b0c969f246d3245d1429a97da4de1ce28
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
 
package org.springblade.modules.securityapply.controller;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.securityapply.entity.SecurityApply;
import org.springblade.modules.securityapply.service.SecurityApplyService;
import org.springblade.modules.securityapply.vo.SecurityApplyVO;
import org.springframework.web.bind.annotation.*;
 
import java.util.Date;
import java.util.List;
 
/**
 * 保安员证申诉控制器
 * @author zhongrj
 * @since 2022-03-03
 */
@RestController
@AllArgsConstructor
@RequestMapping("/securityApply")
public class SecurityApplyController extends BladeController {
 
    private final SecurityApplyService securityApplyService;
 
    /**
     * 详情
     * @param securityApply
     * @return
     */
    @GetMapping("/detail")
    public R<SecurityApply> detail(SecurityApply securityApply) {
        SecurityApply detail = securityApplyService.getOne(Condition.getQueryWrapper(securityApply));
        return R.data(detail);
    }
 
    /**
     * 分页
     * @param query
     * @param securityApply
     * @return
     */
    @GetMapping("/list")
    public R<IPage<SecurityApply>> list(SecurityApply securityApply, Query query) {
        IPage<SecurityApply> pages = securityApplyService.page(Condition.getPage(query), Condition.getQueryWrapper(securityApply));
        return R.data(pages);
    }
 
    /**
     * 自定义分页
     * @param securityApply
     * @param query
     * @return
     */
    @GetMapping("/page")
    public R<IPage<SecurityApplyVO>> page(SecurityApplyVO securityApply, Query query) {
        IPage<SecurityApplyVO> pages = securityApplyService.selectSecurityApplyPage(Condition.getPage(query), securityApply);
        return R.data(pages);
    }
 
    /**
     * 新增
     * @param securityApply
     * @return
     */
    @PostMapping("/save")
    public R save(@RequestBody SecurityApply securityApply) {
        //判断是否已经申请过(审核通过,待审核)
        SecurityApply securityApply1 = new SecurityApply();
        securityApply1.setAuditStatus(1);
        securityApply1.setNumber(securityApply.getNumber());
        securityApply1.setUserId(securityApply.getUserId());
        List<SecurityApply> list1 = securityApplyService.list(Condition.getQueryWrapper(securityApply1));
        if (list1.size()>0){
            throw new ServiceException("当前人员已经提交申请,审核已通过,请勿重复申请!");
        }
 
        SecurityApply securityApply2 = new SecurityApply();
        securityApply2.setAuditStatus(3);
        securityApply2.setNumber(securityApply.getNumber());
        securityApply2.setUserId(securityApply.getUserId());
        List<SecurityApply> list2 = securityApplyService.list(Condition.getQueryWrapper(securityApply2));
 
        if (list2.size()>0){
            throw new ServiceException("当前人员已经提交申请,待审核中,请勿重复申请!");
        }
        //设置时间
        securityApply.setCreateTime(new Date());
        //待审核
        securityApply.setAuditStatus(3);
        //返回
        return R.data(securityApplyService.save(securityApply));
    }
 
 
    /**
     * 修改
     * @param securityApply
     * @return
     */
    @PostMapping("/update")
    public R update(@RequestBody SecurityApply securityApply) {
        //修改并返回
        return R.data(securityApplyService.updateById(securityApply));
    }
 
    /**
     * 新增或修改
     * @param securityApply
     * @return
     */
    @PostMapping("/submit")
    public R submit(@RequestBody SecurityApply securityApply) {
        return R.status(securityApplyService.saveOrUpdate(securityApply));
    }
 
 
    /**
     * 删除
     */
    @PostMapping("/remove")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
        return R.status(securityApplyService.removeByIds(Func.toLongList(ids)));
    }
 
    /**
     * 审核
     * @param securityApply
     * @return
     */
    @PostMapping("/audit")
    public R audit(@RequestBody SecurityApply securityApply) {
        securityApply.setAuditTime(new Date());
        //修改并返回
        return R.data(securityApplyService.audit(securityApply));
    }
 
 
    /**
     * 批量审核
     * @param securityApply
     * @return
     */
    @PostMapping("/batchAudit")
    public R batchAudit(@RequestBody SecurityApplyVO securityApply) {
        securityApply.setAuditTime(new Date());
        //修改并返回
        return R.data(securityApplyService.batchAudit(securityApply));
    }
 
}