Commit 0b25eb1c2a080854681dce2456788aa93d541f33

Authored by YunaiV
1 parent eb3d0386

继续完善 index.vue.vm 模板 = = 睡觉~~~

ruoyi-generator/src/main/resources/vm/js/api.js.vm renamed to ruoyi-ui/src/api/tool/testDemo.js
1   -import request from '@/utils/request'
2   -
3   -// 查询${functionName}列表
4   -export function list${BusinessName}(query) {
5   - return request({
6   - url: '/${moduleName}/${businessName}/list',
7   - method: 'get',
8   - params: query
9   - })
10   -}
11   -
12   -// 查询${functionName}详细
13   -export function get${BusinessName}(${pkColumn.javaField}) {
14   - return request({
15   - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
16   - method: 'get'
17   - })
18   -}
19   -
20   -// 新增${functionName}
21   -export function add${BusinessName}(data) {
22   - return request({
23   - url: '/${moduleName}/${businessName}',
24   - method: 'post',
25   - data: data
26   - })
27   -}
28   -
29   -// 修改${functionName}
30   -export function update${BusinessName}(data) {
31   - return request({
32   - url: '/${moduleName}/${businessName}',
33   - method: 'put',
34   - data: data
35   - })
36   -}
37   -
38   -// 删除${functionName}
39   -export function del${BusinessName}(${pkColumn.javaField}) {
40   - return request({
41   - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
42   - method: 'delete'
43   - })
44   -}
45   -
46   -// 导出${functionName}
47   -export function export${BusinessName}(query) {
48   - return request({
49   - url: '/${moduleName}/${businessName}/export',
50   - method: 'get',
51   - params: query
52   - })
53   -}
54 1 \ No newline at end of file
  2 +import request from '@/utils/request'
  3 +
  4 +// 创建字典类型
  5 +export function createTestDemo(data) {
  6 + return request({
  7 + url: '/tool/test-demo/create',
  8 + method: 'post',
  9 + data: data
  10 + })
  11 +}
  12 +
  13 +// 更新字典类型
  14 +export function updateTestDemo(data) {
  15 + return request({
  16 + url: '/tool/test-demo/update',
  17 + method: 'put',
  18 + data: data
  19 + })
  20 +}
  21 +
  22 +
  23 +// 删除字典类型
  24 +export function deleteTestDemo(id) {
  25 + return request({
  26 + url: '/tool/test-demo/delelte?id=' + id,
  27 + method: 'delete'
  28 + })
  29 +}
  30 +
  31 +// 获得字典类型
  32 +export function getTestDemo(id) {
  33 + return request({
  34 + url: '/tool/test-demo/get?id=' + id,
  35 + method: 'get'
  36 + })
  37 +}
  38 +
  39 +// 获得字典类型分页
  40 +export function getTestDemoPage(query) {
  41 + return request({
  42 + url: '/tool/test-demo/page',
  43 + method: 'get',
  44 + params: query
  45 + })
  46 +}
  47 +
  48 +// 导出字典类型 Excel
  49 +export function exportTestDemoExcel(query) {
  50 + return request({
  51 + url: '/tool/test-demo/export-excel',
  52 + method: 'get',
  53 + params: query,
  54 + reponseBody: 'blob'
  55 + })
  56 +}
... ...
src/main/java/cn/iocoder/dashboard/modules/tool/service/codegen/impl/ToolCodegenEngine.java
... ... @@ -81,6 +81,8 @@ public class ToolCodegenEngine {
81 81 // Vue
82 82 .put(vueTemplatePath("views/index.vue"),
83 83 vueFilePath("views/${table.moduleName}/${table.businessName}/index.vue"))
  84 + .put(vueTemplatePath("api/api.js"),
  85 + vueFilePath("api/${table.moduleName}/${classNameVar}.js"))
84 86 // SQL
85 87 .build();
86 88  
... ... @@ -163,6 +165,7 @@ public class ToolCodegenEngine {
163 165 filePath = StrUtil.replace(filePath, "${table.moduleName}", table.getModuleName());
164 166 filePath = StrUtil.replace(filePath, "${table.businessName}", table.getBusinessName());
165 167 filePath = StrUtil.replace(filePath, "${table.className}", table.getClassName());
  168 + filePath = StrUtil.replace(filePath, "${classNameVar}", (String) bindingMap.get("classNameVar"));
166 169 return filePath;
167 170 }
168 171  
... ...
src/main/resources/codegen/vue/api/api.js.vm
1 1 import request from '@/utils/request'
  2 +#set ($baseURL = "/${table.moduleName}/${simpleClassName_strikeCase}")
2 3  
3   -// 查询${functionName}列表
4   -export function list${BusinessName}(query) {
  4 +// 创建${table.classComment}
  5 +export function create${simpleClassName}(data) {
5 6 return request({
6   - url: '/${moduleName}/${businessName}/list',
7   - method: 'get',
8   - params: query
  7 + url: '${baseURL}/create',
  8 + method: 'post',
  9 + data: data
9 10 })
10 11 }
11 12  
12   -// 查询${functionName}详细
13   -export function get${BusinessName}(${pkColumn.javaField}) {
  13 +// 更新${table.classComment}
  14 +export function update${simpleClassName}(data) {
14 15 return request({
15   - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
16   - method: 'get'
  16 + url: '${baseURL}/update',
  17 + method: 'put',
  18 + data: data
17 19 })
18 20 }
19 21  
20   -// 新增${functionName}
21   -export function add${BusinessName}(data) {
  22 +
  23 +// 删除${table.classComment}
  24 +export function delete${simpleClassName}(id) {
22 25 return request({
23   - url: '/${moduleName}/${businessName}',
24   - method: 'post',
25   - data: data
  26 + url: '${baseURL}/delelte?id=' + id,
  27 + method: 'delete'
26 28 })
27 29 }
28 30  
29   -// 修改${functionName}
30   -export function update${BusinessName}(data) {
  31 +// 获得${table.classComment}
  32 +export function get${simpleClassName}(id) {
31 33 return request({
32   - url: '/${moduleName}/${businessName}',
33   - method: 'put',
34   - data: data
  34 + url: '${baseURL}/get?id=' + id,
  35 + method: 'get'
35 36 })
36 37 }
37 38  
38   -// 删除${functionName}
39   -export function del${BusinessName}(${pkColumn.javaField}) {
  39 +// 获得${table.classComment}分页
  40 +export function get${simpleClassName}Page(query) {
40 41 return request({
41   - url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
42   - method: 'delete'
  42 + url: '${baseURL}/page',
  43 + method: 'get',
  44 + params: query
43 45 })
44 46 }
45 47  
46   -// 导出${functionName}
47   -export function export${BusinessName}(query) {
  48 +// 导出${table.classComment} Excel
  49 +export function export${simpleClassName}Excel(query) {
48 50 return request({
49   - url: '/${moduleName}/${businessName}/export',
  51 + url: '${baseURL}/export-excel',
50 52 method: 'get',
51   - params: query
  53 + params: query,
  54 + reponseBody: 'blob'
52 55 })
53   -}
54 56 \ No newline at end of file
  57 +}
... ...
src/main/resources/codegen/vue/views/index.vue.vm
... ... @@ -111,14 +111,17 @@
111 111 </el-form-item>
112 112 #end
113 113 #elseif($column.htmlType == "imageUpload")## 图片上传
  114 + #set ($hasImageUploadColumn = true)
114 115 <el-form-item label="${comment}">
115 116 <imageUpload v-model="form.${javaField}"/>
116 117 </el-form-item>
117 118 #elseif($column.htmlType == "fileUpload")## 文件上传
  119 + #set ($hasFileUploadColumn = true)
118 120 <el-form-item label="${comment}">
119 121 <fileUpload v-model="form.${javaField}"/>
120 122 </el-form-item>
121 123 #elseif($column.htmlType == "editor")## 文本编辑器
  124 + #set ($hasEditorColumn = true)
122 125 <el-form-item label="${comment}">
123 126 <editor v-model="form.${javaField}" :min-height="192"/>
124 127 </el-form-item>
... ... @@ -176,46 +179,28 @@
176 179 </template>
177 180  
178 181 <script>
179   -import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName}, export${BusinessName} } from "@/api/${moduleName}/${businessName}";
180   -#foreach($column in $columns)
181   -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "imageUpload")
  182 +import { create${simpleClassName}, update${simpleClassName}, delete${simpleClassName}, get${simpleClassName}, get${simpleClassName}Page, export${simpleClassName}Excel } from "@/api/${table.moduleName}/${classNameVar}";
  183 +#if ($hasImageUploadColumn)
182 184 import ImageUpload from '@/components/ImageUpload';
183   -#break
184   -#end
185 185 #end
186   -#foreach($column in $columns)
187   -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "fileUpload")
  186 +#if ($hasFileUploadColumn)
188 187 import FileUpload from '@/components/FileUpload';
189   -#break
190 188 #end
191   -#end
192   -#foreach($column in $columns)
193   -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
  189 +#if ($hasEditorColumn)
194 190 import Editor from '@/components/Editor';
195   -#break
196   -#end
197 191 #end
198 192  
199 193 export default {
200   - name: "${BusinessName}",
  194 + name: "${simpleClassName}",
201 195 components: {
202   -#foreach($column in $columns)
203   -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "imageUpload")
  196 +#if ($hasImageUploadColumn)
204 197 ImageUpload,
205   -#break
206   -#end
207 198 #end
208   -#foreach($column in $columns)
209   -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "fileUpload")
  199 +#if ($hasFileUploadColumn)
210 200 FileUpload,
211   -#break
212   -#end
213 201 #end
214   -#foreach($column in $columns)
215   -#if($column.insert && !$column.superColumn && !$column.pk && $column.htmlType == "editor")
  202 +#if ($hasEditorColumn)
216 203 Editor,
217   -#break
218   -#end
219 204 #end
220 205 },
221 206 data() {
... ... @@ -232,63 +217,37 @@ export default {
232 217 title: "",
233 218 // 是否显示弹出层
234 219 open: false,
235   -#foreach ($column in $columns)
236   -#set($parentheseIndex=$column.columnComment.indexOf("("))
237   -#if($parentheseIndex != -1)
238   -#set($comment=$column.columnComment.substring(0, $parentheseIndex))
239   -#else
240   -#set($comment=$column.columnComment)
241   -#end
242   -#if(${column.dictType} != '')
243   - // $comment字典
244   - ${column.javaField}Options: [],
245   -#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
246   -#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
247   - // $comment时间范围
  220 + #foreach ($column in $columns)## 时间范围
  221 + #if ($column.htmlType == "datetime" && $column.listOperationCondition == "BETWEEN")
  222 + #set ($AttrName = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
248 223 dateRange${AttrName}: [],
249   -#end
250   -#end
  224 + #end
  225 + #end
251 226 // 查询参数
252 227 queryParams: {
253 228 pageNo: 1,
254 229 pageSize: 10,
255   -#foreach ($column in $columns)
256   -#if($column.query)
257   - $column.javaField: null#if($velocityCount != $columns.size()),#end
258   -
259   -#end
260   -#end
  230 + #foreach ($column in $columns)
  231 + #if ($column.listOperation && $column.listOperationCondition != 'BETWEEN')
  232 + $column.javaField: null,
  233 + #end
  234 + #end
261 235 },
262 236 // 表单参数
263 237 form: {},
264 238 // 表单校验
265 239 rules: {
266   -#foreach ($column in $columns)
267   -#if($column.required)
268   -#set($parentheseIndex=$column.columnComment.indexOf("("))
269   -#if($parentheseIndex != -1)
270   -#set($comment=$column.columnComment.substring(0, $parentheseIndex))
271   -#else
272   -#set($comment=$column.columnComment)
273   -#end
274   - $column.javaField: [
275   - { required: true, message: "$comment不能为空", trigger: #if($column.htmlType == "select")"change"#else"blur"#end }
276   - ]#if($velocityCount != $columns.size()),#end
277   -
278   -#end
279   -#end
  240 + #foreach ($column in $columns)
  241 + #if (($column.createOperation || $column.updateOperation) && !$column.nullable && !${column.primaryKey})## 创建或者更新操作 && 要求非空 && 非主键
  242 + #set($comment=$column.columnComment)
  243 + $column.javaField: [{ required: true, message: "${comment}不能为空", trigger: #if($column.htmlType == "select")"change"#else"blur"#end }],
  244 + #end
  245 + #end
280 246 }
281 247 };
282 248 },
283 249 created() {
284 250 this.getList();
285   -#foreach ($column in $columns)
286   -#if(${column.dictType} != '')
287   - this.getDicts("${column.dictType}").then(response => {
288   - this.${column.javaField}Options = response.data;
289   - });
290   -#end
291   -#end
292 251 },
293 252 methods: {
294 253 /** 查询${functionName}列表 */
... ... @@ -379,6 +338,8 @@ export default {
379 338 submitForm() {
380 339 this.#[[$]]#refs["form"].validate(valid => {
381 340 if (valid) {
  341 + return;
  342 + }
382 343 #foreach ($column in $columns)
383 344 #if($column.htmlType == "checkbox")
384 345 this.form.$column.javaField = this.form.${column.javaField}.join(",");
... ... @@ -402,7 +363,7 @@ export default {
402 363 },
403 364 /** 删除按钮操作 */
404 365 handleDelete(row) {
405   - const ${pkColumn.javaField}s = row.${pkColumn.javaField} || this.ids;
  366 + const ${pkColumn.javaField}s = row.${pkColumn.javaField};
406 367 this.$confirm('是否确认删除${functionName}编号为"' + ${pkColumn.javaField}s + '"的数据项?', "警告", {
407 368 confirmButtonText: "确定",
408 369 cancelButtonText: "取消",
... ...