elkers
10 天以前 3a1efe863c0cf30683870c204fb9b55ff6c35500
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
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.host.controller.base;
 
import com.nanjing.water.common.ExecutedResult;
import com.nanjing.water.common.PagerResult;
import com.nanjing.water.common.util.ParameterUtil;
import com.nanjing.water.common.validator.ParameterValidateResult;
import com.nanjing.water.common.validator.ParameterValidator;
import com.nanjing.water.entity.request.ReqListId;
import com.nanjing.water.entity.request.sysdicttype.ReqCreateSysDictType;
import com.nanjing.water.entity.request.sysdicttype.ReqModifySysDictType;
import com.nanjing.water.entity.search.SearchSysDictType;
import com.nanjing.water.host.BasicController;
import com.nanjing.water.repository.vo.SysDictTypeVO;
import com.nanjing.water.service.SysDictTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
 
/**
 * 03.字典类型
 * @author lin.liu
 * @order 03
 */
@RestController
@RequestMapping(value = "sysDictType")
public class SysDictTypeController extends BasicController {
    @Autowired
    private SysDictTypeService service;
 
    /**
     * 创建[字典类型表]
     * @author lin.liu
     */
    @PostMapping(value = "create")
    public ExecutedResult<Long> create(@RequestBody ReqCreateSysDictType request) {
        //#region 参数验证
        ParameterValidator validator = new ParameterValidator()
                // 非空
                //.addNotNullOrEmpty(ParameterUtil.named("名称"), request.getName())
                // 限制最大长度
                //.addLengthMax(ParameterUtil.named("名称"), request.getName(), ConstantFactory.LENGTH_MAX50)
                ;
        ParameterValidateResult result = validator.validate();
        if (result.getIsFiled()) {
            return failed(result.getErrorMsg());
        }
        //#endregion
        return this.service.create(request);
    }
 
    /**
     * 编辑[字典类型表]
     * @author lin.liu
     */
    @PostMapping(value = "modify")
    public ExecutedResult<String> modify(@RequestBody ReqModifySysDictType request) {
        //#region 参数验证
        ParameterValidator validator = new ParameterValidator()
                // 必须大于0
                .addGreater(ParameterUtil.named("[字典类型表]id"), request.getId(), 0L)
                // 非空
                //.addNotNullOrEmpty(ParameterUtil.named("名称"), request.getName())
                // 限制最大长度
                //.addLengthMax(ParameterUtil.named("名称"), request.getName(), ConstantFactory.LENGTH_MAX50)
                ;
        ParameterValidateResult result = validator.validate();
        if (result.getIsFiled()) {
            return failed(result.getErrorMsg());
        }
        //#endregion
        return this.service.modify(request);
    }
 
    /**
     * 获取[字典类型表]
     * @author lin.liu
     */
    @GetMapping(value = "get/{id}")
    public ExecutedResult<SysDictTypeVO> get(@PathVariable Long id) {
        return this.service.get(id);
    }
 
    /**
     * 根据id删除[字典类型表]
     * @author zr
     * @description 根据id删除[字典类型表]
     */
    @PostMapping(value = "remove/{id}")
    ExecutedResult<String> remove(@PathVariable Long id){
        return this.service.remove(id);
    }
 
    /**
     * 根据id批量删除字典类型
     */
    @PostMapping(value = "removeList")
    public ExecutedResult<String> removeList(@RequestBody ReqListId request) {
        return service.removeList(request.getListId());
    }
 
    /**
     * 根据id批量获取[字典类型表]
     * @author zr
     * @description 根据id批量获取[字典类型表]
     */
    @PostMapping(value = "getList")
    public ExecutedResult<List<SysDictTypeVO>> getList(@RequestBody ReqListId request) {
        return this.service.getList(request.getListId());
    }
 
    /**
     * 查询[字典类型表]
     * @author lin.liu
     * @description 查询[字典类型表]
     */
    @PostMapping(value = "search")
    public ExecutedResult<PagerResult<SysDictTypeVO>> search(@RequestBody SearchSysDictType request) {
        return this.service.search(request);
    }
}