admin
2022-03-25 17055fd8d36504b79a5def28f5d4b4740faf012d
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
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
package org.yeshi.utils.generater.vo.admin.controller;
 
import org.yeshi.utils.StringUtil;
import org.yeshi.utils.generater.entity.ClassInfo;
import org.yeshi.utils.generater.entity.admin.AdminGeneraterInfo;
import org.yeshi.utils.generater.util.EntityUtil;
 
/**
 * @author Administrator
 * @title: FormAddInfo
 * @description: 构建新增的实体类
 * @date 2021/9/26 10:07
 */
public class AdminControllerInfoVO {
 
    private String packageName;
    private String mapping;
    private ClassInfo entity;
    private ClassInfo service;
    private ClassInfo query;
    private boolean jsonp;
    //主键类型
    private String identifyIdType;
 
    //名称
    private String controllerName;
 
    private boolean add;
    private boolean update;
    private boolean delete;
 
 
    public static class Builder {
        private AdminGeneraterInfo generaterInfo;
        //包名
        private String packageName;
        //后台查询DTO
        private ClassInfo query;
        //
        private ClassInfo service;
 
 
        public Builder setAdminInfo(AdminGeneraterInfo generaterInfo) {
            this.generaterInfo = generaterInfo;
            return this;
        }
 
        public Builder setPackageName(String packageName) {
            this.packageName = packageName;
            return this;
        }
 
        public Builder setQueryVO(ClassInfo query) {
            this.query = query;
            return this;
        }
 
        public Builder setService(ClassInfo service) {
            this.service = service;
            return this;
        }
 
        public AdminControllerInfoVO build() throws Exception {
            if (generaterInfo == null) {
                throw new Exception("generaterInfo不能为空");
            }
            if (StringUtil.isNullOrEmpty(packageName)) {
                throw new Exception("包名不能为空");
            }
            if (query == null) {
                throw new Exception("查询条件不能为空");
            }
            if (service == null) {
                throw new Exception("服务不能为空");
            }
 
            AdminControllerInfoVO vo = new AdminControllerInfoVO();
            vo.setMapping(generaterInfo.getControllerData().mapping());
            vo.setEntity(new ClassInfo(generaterInfo.getEntity().getSimpleName(), generaterInfo.getEntity().getName()));
            vo.setJsonp(generaterInfo.getControllerData().jsonp());
            vo.setPackageName(packageName);
            vo.setQueryVO(query);
            vo.setService(service);
            vo.setAdd(generaterInfo.getAddFormRows() != null && generaterInfo.getAddFormRows().size() > 0);
            vo.setUpdate(generaterInfo.getUpdateFormRows() != null && generaterInfo.getUpdateFormRows().size() > 0 && generaterInfo.getControllerData().edit());
            vo.setDelete(generaterInfo.getControllerData().delete());
 
            vo.setIdentifyIdType(EntityUtil.getIdentifyId(generaterInfo.getEntity()).getType().getSimpleName());
            vo.setControllerName(vo.getEntity().getName() + "AdminController");
            return vo;
        }
 
 
    }
 
    public String getPackageName() {
        return packageName;
    }
 
    public void setPackageName(String packageName) {
        this.packageName = packageName;
    }
 
    public String getMapping() {
        return mapping;
    }
 
    public void setMapping(String mapping) {
        this.mapping = mapping;
    }
 
    public ClassInfo getEntity() {
        return entity;
    }
 
    public void setEntity(ClassInfo entity) {
        this.entity = entity;
    }
 
    public ClassInfo getService() {
        return service;
    }
 
    public void setService(ClassInfo service) {
        this.service = service;
    }
 
    public ClassInfo getQuery() {
        return query;
    }
 
    public void setQueryVO(ClassInfo query) {
        this.query = query;
    }
 
    public void setQuery(ClassInfo query) {
        this.query = query;
    }
 
    public boolean isJsonp() {
        return jsonp;
    }
 
    public void setJsonp(boolean jsonp) {
        this.jsonp = jsonp;
    }
 
    public String getIdentifyIdType() {
        return identifyIdType;
    }
 
    public void setIdentifyIdType(String identifyIdType) {
        this.identifyIdType = identifyIdType;
    }
 
    public String getControllerName() {
        return controllerName;
    }
 
    public void setControllerName(String controllerName) {
        this.controllerName = controllerName;
    }
 
    public boolean isAdd() {
        return add;
    }
 
    public void setAdd(boolean add) {
        this.add = add;
    }
 
    public boolean isUpdate() {
        return update;
    }
 
    public void setUpdate(boolean update) {
        this.update = update;
    }
 
    public boolean isDelete() {
        return delete;
    }
 
    public void setDelete(boolean delete) {
        this.delete = delete;
    }
}