ejs文件
    import models from ‘../models’;
    import dayjs from “dayjs”;
    import { RESULT_SUCCESS, RESULT_ERROR } from ‘../constants/ResponseCode’;
    import { sqlAppent } from “../util/sqlAppent”;

    //添加
    export const add = async (param)=>{
    await models.<%=tableName%>.create({
    <% columns.forEach(item=>{ %>
    item:param.<%=item%>,
    <% })%>
    })
    return { code: RESULT_SUCCESS, msg: “添加成功” };
    }

    js代码
    import fs from ‘fs’;
    import path from ‘path’;
    import Sequelize from ‘sequelize’;
    import config from ‘@config/database’;
    import ejs from ‘ejs’;

    let sequelize = new Sequelize(config.managerServer.database, config.managerServer.username, config.managerServer.password, config.managerServer);

    /**

    • 自动生成service层
    • @param {string} tableName 表名称
    • @param {boolean} override 是否覆盖原文件
      */
      export const autoCreateService = async (tableName, columns, override = false) => {
      // 模板路径
      const serviceTemplate = fs.readFileSync(path.resolve(process.cwd(), ‘app’, ‘template’, ‘server.ejs’)).toString();
      // service 目录
      const SERVICE_DIR = path.resolve(process.cwd(), ‘app’, ‘service’);
      // 生成service的文件路径
      let serviceFile = path.resolve(SERVICE_DIR, tableName + ‘.js’);
      if (fs.existsSync(serviceFile)) {
      console.log(“文件已存在”);
      return;
      }
      // 查询表字段信息
      let sql = SHOW FULL columns FROM lx_file;
      let data = await sequelize.query(sql, {
      type: sequelize.QueryTypes.SELECT
      });
      let key = “”;
      // 字段数据处理
      data = data.map(item => {
      if (item.Key == “PRI”) {
      key = item.Field;
      }
      return item.Field;
      });
      columns = data;
      // 根据模板渲染数据
      let result = ejs.render(serviceTemplate, {
      tableName: tableName,
      columns: columns,
      key: key
      });
      fs.writeFileSync(serviceFile, result);
      console.log(“生成service成功”);
      };