Browse Source

代码生成修改

skyline 1 year ago
parent
commit
8d8025116a

+ 67 - 70
car-wash-admin/src/main/java/com/kym/admin/utils/CommJdbcCodeGenerator.java

@@ -2,8 +2,8 @@ package com.kym.admin.utils;
 
 import cn.hutool.core.io.IoUtil;
 import com.google.common.collect.ImmutableMap;
-import com.kym.common.utils.CommUtil;
 import com.kym.JacksonUtil;
+import com.kym.common.utils.CommUtil;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.velocity.VelocityContext;
@@ -14,11 +14,7 @@ import java.io.File;
 import java.io.FileWriter;
 import java.io.StringWriter;
 import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 
 /**
@@ -33,33 +29,22 @@ public class CommJdbcCodeGenerator {
 
     private static DBHelper db;
 
-
-    private void closeDb() {
-        if (null != db) {
-            db.closeDb();
-        }
-    }
-
-    private void openDb() throws Exception {
-        db = new DBHelper();
-        db.open("jdbc:mysql://121.40.98.15:3307/car-wash?serverTimezone=Asia/Shanghai", "root", "KuaiyuMan/*-");
-    }
-
     public static void main(String[] args) {
         CodeGeneratorParam param = new CodeGeneratorParam();
-        param.setTableName("t_banner");
-        param.setBasePackage("com.kym.admin");
-
-
+        var basePath = "D://快与慢充电桩/code/car-wash-java";
+//        var basePath = "/home/zuy/02.code/wash";
+        param.setModule("admin");
+        param.setTableName("t_wash_user");
+        param.setBasePackage("com.kym");
 
 
         List<Map<String, String>> pathList = new ArrayList<>();
         //修改代码输出路径
-        pathList.add(ImmutableMap.of("vm", "Controller.java.vm", "output", "/home/zuy/02.code/wash/car-wash-admin/src/main/java/com/kym/admin/controller"));
-        pathList.add(ImmutableMap.of("vm", "Service.java.vm", "output", "/home/zuy/02.code/wash/car-wash-service/src/main/java/com/kym/service/admin/"));
-        pathList.add(ImmutableMap.of("vm", "ServiceImpl.java.vm", "output", "/home/zuy/02.code/wash/car-wash-service/src/main/java/com/kym/service/admin/impl"));
-//        pathList.add(ImmutableMap.of("vm", "DAO.java.vm", "output", "/home/zuy/02.code/wash/car-wash-service/src/main/java/com/kym/dao"));
-        pathList.add(ImmutableMap.of("vm", ".java.vm", "output", "/home/zuy/02.code/wash/car-wash-entity/src/main/java/com/kym/entity/admin"));
+        pathList.add(ImmutableMap.of("vm", "Controller.java.vm", "output", "%s/car-wash-%s/src/main/java/com/kym/%s/controller".formatted(basePath, param.getModule(), param.getModule())));
+        pathList.add(ImmutableMap.of("vm", "Service.java.vm", "output", "%s/car-wash-service/src/main/java/com/kym/service/%s".formatted(basePath, param.getModule())));
+        pathList.add(ImmutableMap.of("vm", "ServiceImpl.java.vm", "output", "%s/car-wash-service/src/main/java/com/kym/service/%s/impl".formatted(basePath, param.getModule())));
+        pathList.add(ImmutableMap.of("vm", "DAO.java.vm", "output", "%s/car-wash-service/src/main/java/com/kym/dao/%s".formatted(basePath, param.getModule())));
+        pathList.add(ImmutableMap.of("vm", ".java.vm", "output", "%s/car-wash-entity/src/main/java/com/kym/entity/%s".formatted(basePath, param.getModule())));
 //        pathList.add(ImmutableMap.of("vm", "listvue.vm", "output", "src/main/java/com/kym/admin/controller/"));
 //        pathList.add(ImmutableMap.of("vm", "dialog.vm", "output", "src/main/java/com/kym/admin/controller/"));
 //        pathList.add(ImmutableMap.of("vm", "drawer.vm", "output", "src/main/java/com/kym/admin/controller/"));
@@ -67,6 +52,30 @@ public class CommJdbcCodeGenerator {
         new CommJdbcCodeGenerator().generate(param);
     }
 
+    public static String getFirstLowCase(String name) {
+        StringBuilder sbr = new StringBuilder();
+        char[] chars = name.toCharArray();
+        for (int i = 0; i < chars.length; i++) {
+            if (i == 0) {
+                sbr.append(Character.toLowerCase(chars[i]));
+            } else {
+                sbr.append(chars[i]);
+            }
+        }
+        return sbr.toString();
+    }
+
+    private void closeDb() {
+        if (null != db) {
+            db.closeDb();
+        }
+    }
+
+    private void openDb() throws Exception {
+        db = new DBHelper();
+        db.open("jdbc:mysql://121.40.98.15:3307/car-wash?serverTimezone=Asia/Shanghai", "root", "KuaiyuMan/*-");
+    }
+
     /**
      * 数据表列表
      *
@@ -87,7 +96,6 @@ public class CommJdbcCodeGenerator {
         return Collections.emptyList();
     }
 
-
     private String getPojoName(String name) {
         StringBuilder result = new StringBuilder();
         if (name.startsWith("t_")) {
@@ -110,19 +118,6 @@ public class CommJdbcCodeGenerator {
         return result.toString();
     }
 
-    public static String getFirstLowCase(String name) {
-        StringBuilder sbr = new StringBuilder();
-        char[] chars = name.toCharArray();
-        for (int i = 0; i < chars.length; i++) {
-            if (i == 0) {
-                sbr.append(Character.toLowerCase(chars[i]));
-            } else {
-                sbr.append(chars[i]);
-            }
-        }
-        return sbr.toString();
-    }
-
     private String getPojoFieldName(String name) {
         StringBuilder result = new StringBuilder();
         char[] chars = name.toCharArray();
@@ -164,7 +159,7 @@ public class CommJdbcCodeGenerator {
 
             }
         } catch (Exception e) {
-           e.printStackTrace();
+            e.printStackTrace();
         }
     }
 
@@ -185,38 +180,38 @@ public class CommJdbcCodeGenerator {
             varVo.setTableName(CommUtil.null2String(dataMap.get("tablename")));
             varVo.setTableComment(CommUtil.null2String(dataMap.get("tablecomment")));
 
-            System.out.println("generate list:\n"+ JacksonUtil.toJSONString(varVo));
+            System.out.println("generate list:\n" + JacksonUtil.toJSONString(varVo));
 
-        //table meta
-        StringBuilder sbr = new StringBuilder("insert into t_permission (name,pid,perm,level) values ");
-        String[] premissionLabel = {"list", "list", "modify", "remove", "add", "status"};
-        StringBuilder rb = new StringBuilder("insert into t_permission (name,pid,perm,level) values (\'").append(varVo.getTableComment()).append("\',0,\'").append(getFirstLowCase(getPojoName(varVo.getTableName()))).append(".list\',0)");
-        System.out.println("===============================\n");
-        System.out.println(rb.toString() );
+            //table meta
+            StringBuilder sbr = new StringBuilder("insert into t_permission (name,pid,perm,level) values ");
+            String[] premissionLabel = {"list", "list", "modify", "remove", "add", "status"};
+            StringBuilder rb = new StringBuilder("insert into t_permission (name,pid,perm,level) values (\'").append(varVo.getTableComment()).append("\',0,\'").append(getFirstLowCase(getPojoName(varVo.getTableName()))).append(".list\',0)");
+            System.out.println("===============================\n");
+            System.out.println(rb.toString());
 //        System.out.println(rb + " RETURNING id;");
-                System.out.println("SELECT @parentId := LAST_INSERT_ID();");
-
-
-        // permission SQL
-        for (int i = 0; i < premissionLabel.length; i++) {
-            String pn = varVo.getTableComment();
-            if (i == 1) {
-                pn = "查看";
-            } else if (i == 2) {
-                pn = "编辑";
-            } else if (i == 3) {
-                pn = "删除";
-            } else if (i == 4) {
-                pn = "新增";
-            }
-            if (i == 0) {
-            } else {
-                sbr.append("(\'").append(pn).append("\',@parentId,\'").append(getFirstLowCase(getPojoName(varVo.getTableName()))).append(".").append(premissionLabel[i]).append("\',1),");
+            System.out.println("SELECT @parentId := LAST_INSERT_ID();");
+
+
+            // permission SQL
+            for (int i = 0; i < premissionLabel.length; i++) {
+                String pn = varVo.getTableComment();
+                if (i == 1) {
+                    pn = "查看";
+                } else if (i == 2) {
+                    pn = "编辑";
+                } else if (i == 3) {
+                    pn = "删除";
+                } else if (i == 4) {
+                    pn = "新增";
+                }
+                if (i == 0) {
+                } else {
+                    sbr.append("(\'").append(pn).append("\',@parentId,\'").append(getFirstLowCase(getPojoName(varVo.getTableName()))).append(".").append(premissionLabel[i]).append("\',1),");
+                }
             }
-        }
 
-        System.out.println(sbr.substring(0, sbr.length() - 1));
-        System.out.println("\n===============================");
+            System.out.println(sbr.substring(0, sbr.length() - 1));
+            System.out.println("\n===============================");
 
             List<Map<String, Object>> tableVarList = new ArrayList<>();
             String tableSql = "select column_name,data_type,character_maximum_length,column_comment from information_schema.columns" + " where  table_name = '" + varVo.getTableName() + "'";
@@ -249,6 +244,7 @@ public class CommJdbcCodeGenerator {
             context.put("pojoName", pojoName);
             context.put("lowPojoName", pojoName.toLowerCase());
             context.put("firstLowPojoName", pojoName.substring(0, 1).toLowerCase() + pojoName.substring(1));
+            context.put("module", param.getModule());
             context.put("basePackage", param.getBasePackage());
             context.put("dollar", "$");
             context.put("datetime", LocalDateTime.now().toString());
@@ -275,6 +271,7 @@ public class CommJdbcCodeGenerator {
     public static class CodeGeneratorParam {
         private long databaseId;
         private String basePackage;
+        private String module;
         private String tableName;
         private List<Long> plainTemplateIdList;
         private boolean permSQL;

+ 6 - 5
car-wash-admin/src/main/resources/tmpl/.java.vm

@@ -1,12 +1,13 @@
-package ${basePackage}.entity.po;
+package ${basePackage}.entity.${module};
 
-import com.png.jdbc.BasicQuery;
-import com.png.jdbc.annotations.*;
-import com.png.jdbc.BasicEntity;
 
+
+import com.kym.jdbc.BasicQuery;
+import com.kym.jdbc.annotations.*;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.io.Serializable;
 import java.util.Date;
 
 /**
@@ -131,4 +132,4 @@ public class ${pojoName} implements Serializable{
 #end
     //endregion
     }
-    }
+    }

+ 7 - 9
car-wash-admin/src/main/resources/tmpl/Controller.java.vm

@@ -1,5 +1,9 @@
-package ${basePackage}.controller;
+package ${basePackage}.${module}.controller;
 
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import com.kym.common.R;
+import com.kym.common.annotation.SysLog;
+import com.kym.common.controller.IController;
 import jakarta.validation.Valid;
 import jakarta.annotation.Resource;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -28,7 +32,6 @@ public class ${pojoName}Controller extends IController {
      *
      * @param ${firstLowPojoName} 新增${pojoComment}
      * @return Res
-     * @author   ${datetime}
      */
     @SaCheckPermission(value = "${firstLowPojoName}.add")
     @PostMapping("add")
@@ -40,8 +43,7 @@ public class ${pojoName}Controller extends IController {
 
     /**
      * ${pojoComment}编辑
-     *@return Res
-     *  @author   ${datetime}
+     * @return Res
      */
     @SaCheckPermission(value = "${firstLowPojoName}.modify")
     @PostMapping("modify")
@@ -55,7 +57,6 @@ public class ${pojoName}Controller extends IController {
      * ${pojoComment}查询接口
      *
      * @return Res
-     * @author   ${datetime}
      */
     @SaCheckPermission(value = "${firstLowPojoName}.list")
     @PostMapping("list")
@@ -69,7 +70,6 @@ public class ${pojoName}Controller extends IController {
      * ${pojoComment}查询详情接口
      *
      * @return Res
-     * @author   ${datetime}
      */
     @SaCheckPermission(value = "${firstLowPojoName}.list")
     @GetMapping("detail/{id}")
@@ -83,7 +83,6 @@ public class ${pojoName}Controller extends IController {
      * ${pojoComment}变更状态接口
      *
      * @return Res
-     * @author   ${datetime}
      */
     @SaCheckPermission(value = "${firstLowPojoName}.modify")
     @GetMapping("status/{id}/{status}")
@@ -97,11 +96,10 @@ public class ${pojoName}Controller extends IController {
      * ${pojoComment}删除接口
      *
      * @return Res
-     * @author   ${datetime}
      */
     @SaCheckPermission(value = "${firstLowPojoName}.remove")
     @GetMapping("remove/{id}")
-    @SysLog(desc = "${pojoComment}删除")
+    @SysLog(value = "${pojoComment}删除")
     public R<?> remove(@PathVariable long id) {
         return resp((t) -> ${firstLowPojoName}Service.remove(id));
     }

+ 2 - 2
car-wash-admin/src/main/resources/tmpl/DAO.java.vm

@@ -1,6 +1,6 @@
-package ${basePackage}.entity.po;
+package ${basePackage}.dao.${module};
 
-import com.png.dao.DbHandler;
+import com.kym.dao.DbHandler;
 import org.springframework.stereotype.Component;
 
 /**

+ 5 - 8
car-wash-admin/src/main/resources/tmpl/Service.java.vm

@@ -1,13 +1,10 @@
-package ${basePackage}.service;
+package ${basePackage}.service.${module};
 
-import com.kym.common.enumeration.MsgEnum;
-import com.kym.common.exception.BizException;
-import com.kym.common.page.Res;
+import com.kym.common.R;
 import com.kym.jdbc.Bean;
 
-import ${basePackage}.entity.po.${pojoName};
-import ${basePackage}.entity.po.${pojoName}.${pojoName}Info;
-import ${basePackage}.entity.po.${pojoName}.${pojoName}BasicQuery;
+import ${basePackage}.entity.${module}.${pojoName}.${pojoName}Info;
+import ${basePackage}.entity.${module}.${pojoName}.${pojoName}BasicQuery;
 
 
 /**
@@ -48,4 +45,4 @@ public interface  ${pojoName}Service {
      */
      void modify(${pojoName}Info ${firstLowPojoName});
 
-}
+}

+ 25 - 20
car-wash-admin/src/main/resources/tmpl/ServiceImpl.java.vm

@@ -1,22 +1,27 @@
-package ${basePackage}.service;
+package ${basePackage}.service.${module}.impl;
 
-import com.kym.common.enumeration.MsgEnum;
-import com.kym.common.exception.BizException;
-import com.kym.common.page.Res;
+import com.kym.common.R;
+import com.kym.entity.${module}.${pojoName};
+import com.kym.common.utils.CommUtil;
+import com.kym.dao.${module}.${pojoName}DAO;
 import com.kym.jdbc.Bean;
-
-import ${basePackage}.entity.po.${pojoName};
-import ${basePackage}.entity.po.${pojoName}.${pojoName}Info;
-import ${basePackage}.entity.po.${pojoName}.${pojoName}BasicQuery;
+import com.kym.common.constant.ResponseEnum;
+import com.kym.service.IService;
+import com.kym.service.${module}.${pojoName}Service;
+import jakarta.annotation.Resource;
+import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import ${basePackage}.entity.${module}.${pojoName}.${pojoName}Info;
+import ${basePackage}.entity.${module}.${pojoName}.${pojoName}BasicQuery;
+
 
 /**
 * ${pojoComment}业务类
 * @date ${datetime}
 */
 @Service("${firstLowPojoName}Service")
-public class ${pojoName}Service extends IService implements ${pojoName}Service{
+public class ${pojoName}ServiceImpl extends IService implements ${pojoName}Service{
 
 @Resource
 private  ${pojoName}DAO ${firstLowPojoName}DAO;
@@ -57,7 +62,7 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
     public long add(${pojoName}Info ${firstLowPojoName}) {
     ${firstLowPojoName}DAO.checkUniqueValue(${pojoName}.class,oBuilder().eq(${pojoName}::getName, ${firstLowPojoName}.getName()),${pojoName}::getName,${firstLowPojoName}.getId());
     long ret = ${firstLowPojoName}DAO.insert(${firstLowPojoName});
-    CommUtil.asserts(ret>0, MsgEnum.DB_ERROR);
+    CommUtil.asserts(ret>0, ResponseEnum.DB_ERROR);
 
     super.afterAdd(ret);
     return ret;
@@ -67,10 +72,10 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
     * 物理删除${pojoComment}
     */
     @Transactional(rollbackFor = Exception.class)
-    public Res remove(long id) {
+    public R<?> remove(long id) {
     ${firstLowPojoName}DAO.delete(${pojoName}.class,id);
     super.afterRemove(id);
-    return Res.success();
+    return R.success();
     }
 
     /**
@@ -80,7 +85,7 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
     public void modify(${pojoName}Info ${firstLowPojoName}) {
     ${pojoName}Info oldBean = ${firstLowPojoName}DAO.selectOneExist(${pojoName}Info.class, ${firstLowPojoName}.getId());
     int ret = ${firstLowPojoName}DAO.update(${firstLowPojoName});
-    CommUtil.asserts(ret>0, MsgEnum.DB_ERROR);
+    CommUtil.asserts(ret>0, ResponseEnum.DB_ERROR);
     super.afterModify(oldBean,${firstLowPojoName});
     }
 
@@ -93,7 +98,7 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
         public int addCategory(${pojoName}Category category) {
         ${firstLowPojoName}DAO.checkUniqueValue(${pojoName}Category.class,oBuilder().eq(${pojoName}Category::getName, category.getName()),${pojoName}Category::getName,category.getId());
         int ret = ${firstLowPojoName}DAO.insert(category);
-        CommUtil.asserts(ret>0, MsgEnum.DB_ERROR);
+        CommUtil.asserts(ret>0, ResponseEnum.DB_ERROR);
         super.afterAdd(ret);
         return ret;
         }
@@ -102,8 +107,8 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
         /**
         * ${pojoComment}分类分页查询
         */
-        public Res listCategory(${pojoName}Category.${pojoName}CategoryBasicQuery query) {
-        return Res.succ(${firstLowPojoName}DAO.selectPageList(query));
+        public R<?> listCategory(${pojoName}Category.${pojoName}CategoryBasicQuery query) {
+        return R.succ(${firstLowPojoName}DAO.selectPageList(query));
         }
 
 
@@ -124,7 +129,7 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
         public void modifyCategory(${pojoName}Category category) {
         ${pojoName} old = ${firstLowPojoName}DAO.selectOneExist(${pojoName}.class,id);
         int ret =${firstLowPojoName}DAO.update(category);
-        CommUtil.asserts(ret>0, MsgEnum.DB_ERROR);
+        CommUtil.asserts(ret>0, ResponseEnum.DB_ERROR);
         super.afterModify(old,category);
         }
 
@@ -152,15 +157,15 @@ public Bean<${pojoName}Info>list(${pojoName}BasicQuery query) {
         //子分类
         int subCategoryCount = ${firstLowPojoName}DAO.selectCount(${pojoName}Category.class, oBuilder().eq(${pojoName}Category::getPid, categoryId));
         if (subCategoryCount > 0) {
-        throw new BizException(MsgEnum.SYSTEM_ERROR.code, "有子分类存在,请先删除子分类再操作");
+        throw new BizException(ResponseEnum.SYSTEM_ERROR.code, "有子分类存在,请先删除子分类再操作");
         }
         int typeCount = ${firstLowPojoName}DAO.selectCount(${pojoName}.class,oBuilder().eq(${pojoName}.class::getCategoryId,categoryId));
         if(typeCount>0){
-        throw new BizException(MsgEnum.SYSTEM_ERROR.code,"此分类下有${pojoComment},请解除分类关系或删除后再删除");
+        throw new BizException(ResponseEnum.SYSTEM_ERROR.code,"此分类下有${pojoComment},请解除分类关系或删除后再删除");
         }
         ${firstLowPojoName}DAO.delete(${pojoName}Category.class,categoryId);
 
         super.afterRemove(categoryId);
         }
     #end
-    }
+    }

+ 4 - 4
car-wash-admin/src/main/resources/tmpl/listvue.vm

@@ -93,7 +93,7 @@
     const state = reactive({
         formQuery: {},
         pageQuery: {
-            pageIndex: 1,
+            pageNum: 1,
             pageSize: 10,
             total: 0
         },
@@ -178,7 +178,7 @@
 
     // 监听双向绑定 modelValue 的变化
     // watch(
-    //         () => state.pageIndex,
+    //         () => state.pageNum,
     //         () => {
     //
     //         }
@@ -223,7 +223,7 @@
     // 初始化表格数据
     const loadData = (refresh: boolean = false) => {
         if (refresh) {
-            state.pageQuery.pageIndex = 1;
+            state.pageQuery.pageNum = 1;
         }
         state.tableData.loading = true;
             $body(`/${firstLowPojoName}/list`, {...state.formQuery, ...state.pageQuery}).then((res: any) => {
@@ -259,4 +259,4 @@
     // defineExpose({
     //     loadData,
     // });
-</script>
+</script>

+ 2 - 0
car-wash-common/src/main/java/com/kym/common/constant/ResponseEnum.java

@@ -20,6 +20,8 @@ public enum ResponseEnum implements BusinessExceptionAssert {
     HTTP_STATUS_403(403, "no authorities"),
     HTTP_STATUS_500(500, "server error"),
 
+    DB_ERROR(999, "数据异常"),
+
 
     // 微信小程序
     WX_MP_LOGIN_ERROR(301, "微信登录异常"),

+ 1 - 2
car-wash-entity/src/main/java/com/kym/entity/common/PageBean.java

@@ -81,11 +81,10 @@ public class PageBean<T> extends PageSerializable<T> {
 
     public PageBean<T> setList(PageBean<?> pageBean){
         this.total = pageBean.total;
-        this.pageNum = pageBean.pageNum;
         this.pageSize = pageBean.pageSize;
         this.pageNum = pageBean.pageNum;
         this.size = pageBean.size;
         this.extraData = pageBean.extraData;
         return this;
     }
-}
+}