♻️ Refactoring code. 动态代码主键、逻辑删除更灵活配置

This commit is contained in:
lbw committed 2022-09-08 10:00:50 +08:00
1 parent 1c7d92a4ce
commit 4a61b67350
5 files changed
+43 -8

No files matched your search

@@ -132,6 +132,16 @@ public class GenDynamicServiceImpl implements GenDynamicService {
updateApiInfo.setMethod("put");
updateApiInfo.setGroupId(id);
magicResourceService.saveFile(updateApiInfo);
ApiInfo metadataApiInfo = new ApiInfo();
metadataApiInfo.setId(id + "metadata");
String metadataScript = templates.get("template/magic/metadata.magic.vm");
metadataApiInfo.setScript(metadataScript);
metadataApiInfo.setName("元数据");
metadataApiInfo.setPath("/metadata");
metadataApiInfo.setMethod("get");
metadataApiInfo.setGroupId(id);
magicResourceService.saveFile(metadataApiInfo);
}
return templates;
@@ -30,6 +30,7 @@ public class MagicGenCodeServiceImpl implements GenCodeService {
templates.add("template/magic/del.magic.vm");
templates.add("template/magic/add.magic.vm");
templates.add("template/magic/update.magic.vm");
templates.add("template/magic/metadata.magic.vm");
return templates;
}
@@ -1,8 +1,21 @@
import response;
var data = db.${dsName}.table("${tableName}").primary("$pk.columnName").update({
id: id,
del_flag: 1
})
// 判断是否逻辑删除
var logicFlag = false
#foreach($column in $columns)
#if($column.columnName == "del_flag")
logicFlag = true
#end
#end
return response.json(data)
var result;
if(logicFlag){
result = db.${dsName}.table("${tableName}").primary("$pk.columnName").update({
"$pk.columnName": id,
del_flag: 1
})
}else{
result = db.${dsName}.table("${tableName}").where().eq("$pk.columnName", id).delete()
}
return response.json(result)
@@ -0,0 +1,4 @@
import response;
// 执行DSL 分页输出结果
return response.text("$pk.lowerAttrName")
@@ -2,10 +2,17 @@ import request;
import cn.hutool.json.JSONUtil;
import response;
// 基础查询语句
var queryDsl = db.${dsName}.table("${tableName}")
.where()
.eq("del_flag", 0)
// 判断是否逻辑删除
#foreach($column in $columns)
#if($column.columnName == "del_flag")
queryDsl = queryDsl.where().eq("del_flag", 0)
#end
#end
// 模糊查询
if (query != null) {
var jsonObj = JSONUtil.parseObj(query)
for (key in jsonObj.keySet()) {
@@ -13,5 +20,5 @@ if (query != null) {
}
}
// 执行DSL 输出结果
// 执行DSL 分页输出结果
return response.json(queryDsl.page())