update README.md

This commit is contained in:
izory 2021-09-26 17:27:31 +08:00
commit 48e14b4d4f
32 changed files with 175 additions and 185 deletions

View File

@ -5,7 +5,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ZR.Common.Extension
namespace Infrastructure.Extensions
{
public static partial class Extensions
{

View File

@ -7,7 +7,7 @@ using System.Text;
using System.Threading.Tasks;
//using Newtonsoft.Json;
namespace ZR.Common.Extension
namespace Infrastructure.Extensions
{
public static partial class Extensions
{

View File

@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ZR.Common.Extension
namespace Infrastructure.Extensions
{
public static partial class Extensions
{

View File

@ -5,7 +5,7 @@ using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace ZR.Common.Extension
namespace Infrastructure.Extensions
{
public static class LinqExtensions
{

View File

@ -5,7 +5,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ZR.Common.Extension
namespace Infrastructure.Extensions
{
public static partial class Extensions
{

View File

@ -1,10 +1,10 @@
using System;
using Infrastructure.Extensions;
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.Text;
using ZR.Common.Extension;
namespace ZR.Common
namespace Infrastructure
{
public class ComputerHelper
{

View File

@ -2,7 +2,7 @@
using System.Collections.Generic;
using System.Text;
namespace ZR.Common
namespace Infrastructure
{
public class DateTimeHelper
{

View File

@ -4,7 +4,7 @@ using System.IO;
using System.Security.Cryptography;
using System.Text;
namespace ZR.Common
namespace Infrastructure
{
public class FileUtil
{

View File

@ -4,7 +4,7 @@ using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
namespace ZR.Common
namespace Infrastructure
{
public class HttpHelper
{

View File

@ -3,7 +3,7 @@ using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
namespace ZR.Common
namespace Infrastructure
{
public class ShellHelper
{

142
README.md
View File

@ -9,15 +9,18 @@
* 权限认证使用Jwt支持多终端认证系统。
* 支持加载动态权限菜单,多方式轻松权限控制
> 如果对您有帮助点击右上角⭐Star⭐关注 ,感谢支持开源!
```
如果对您有帮助您可以点右上角⭐Star⭐ 收藏一下 ,这样作者才有继续免费下去的动力,谢谢!~
```
## 🍿在线体验
体验地址http://www.izhaorui.cn:8080/
管理员admin
密 码123456
**由于是个人项目,资金有限,体验服是低配,请大家爱惜,轻戳,不胜感激!!!**
- 体验地址http://www.izhaorui.cn:8080/
- 管理员admin
- 密 码123456
```
由于是个人项目,资金有限,体验服是低配,请大家爱惜,轻戳,不胜感激!!!
```
## 🍁前端技术
Vue版前端技术栈 基于vue、vuex、vue-router 、vue-cli 、axios 和 element-ui前端采用vscode工具开发
@ -34,86 +37,93 @@ Vue版前端技术栈 基于vue、vuex、vue-router 、vue-cli 、axios 和 e
## 🍄快速启动
需要安装VS2019最新版、npm或yarn最新版
准备工作将document文件夹下面的admin.sql脚本导入到数据库中修改ZR.Admin.WebApi项目里面配置文件中的conn_zrAdmin数据库连接字符串以及DbType选择对应的数据库类型目前仅支持MySQL、SQL server
启动后台打开项目根目录的startup.bat即可启动数据库默认MySQL
启动前端打开ZR.Vue文件夹运行npm install命令再运行npm run serve启动
浏览器访问http://localhost:8887 默认前端端口为8887后台端口为8888
- 准备工作将document文件夹下面的xxx.sql脚本导入到数据库中修改appsettings.json配置文件里面中的conn_zrAdmin数据库连接字符串以及conn_zrAdmin_Type选择对应的数据库类型目前仅支持MySQL、SQL server
- 启动后台打开项目根目录的startup.bat即可启动或者打开ZRAdmin.sln解决方案直接运行F5)即可启动
- 启动前端打开ZR.Vue文件夹运行npm install命令下载安装依赖再运行npm run serve启动
- 浏览器访问http://localhost:8887 默认前端端口为8887后台端口为8888
## 🍖内置功能
1. [X] 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
2. [X] 部门管理:配置系统组织机构(公司、部门、小组),树结构展现。
3. [X] 岗位管理:配置系统用户所属担任职务。
4. [X] 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
5. [X] 角色管理:角色菜单权限分配。
6. [X] 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
7. [ ] 参数管理:对系统动态配置常用参数。
8. [X] 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
9. [X] 登录日志:系统登录日志记录查询包含登录异常。
10. [ ] 在线用户:当前系统中活跃用户状态监控。
11. [X] 系统接口使用swagger生成相关api接口文档。
12. [X] 服务监控监视当前系统CPU、内存、磁盘、堆栈等相关信息。
13. [X] 在线构建器拖动表单元素生成相应的VUE代码。
14. [X] 任务系统基于Quartz.NET定时任务执行。
15. [X] 文章管理:可以写文章记录。
16. [X] 代码生成:可以一键生成前后端代码(.cs、.vue、.js),自定义配置前端展示控件、让开发更快捷高效。
1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现。
3. 岗位管理:配置系统用户所属担任职务。
4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
5. 角色管理:角色菜单权限分配。
6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
6. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
7. 登录日志:系统登录日志记录查询包含登录异常。
8. 系统接口使用swagger生成相关api接口文档。
9. 服务监控监视当前系统CPU、内存、磁盘、堆栈等相关信息。
10. 在线构建器拖动表单元素生成相应的VUE代码。
11. 任务系统基于Quartz.NET定时任务执行。
12. 文章管理:可以写文章记录。
13. 代码生成:可以一键生成前后端代码(.cs、.vue、.js、sql),自定义配置前端展示控件、让开发更快捷高效。
## 项目结构
ZRAdmin解决方案包含
## 🍻项目结构
ZR.Service[服务层类库]提供WebApi接口调用
```
- ZR.Service[服务层类库]提供WebApi接口调用
- ZR.Repository[仓库层类库]:方便提供有执行存储过程的操作;
- ZR.Model[实体层类库],提供项目中的数据库表、数据传输对象;
- ZR.Admin.WebApi[webapi接口]为Vue版或其他三方系统提供接口服务。
- ZR.Vue[前端UI]vue版本UI层。
- ZR.Tasks[定时任务类库]:提供项目定时任务实现功能;
- ZR.CodeGenerator[代码生成功能],包含代码生成的模板、方法、代码生成的下载。
```
## ⚡ 近期计划
ZR.Tasks[定时任务类库]:提供项目定时任务实现功能;
- [ ] 参数管理
- [ ] 在线用户
- [ ] 文件管理
- [ ] 邮件发送
- [ ] 集成微信开发
ZR.Repository[仓库层类库]:方便提供有执行存储过程的操作;
ZR.Model[实体层类库],提供项目中的数据库表、数据传输对象;
ZR.CodeGenerator[代码生成功能],包含代码生成的模板、方法、代码生成的下载。
ZR.Admin.WebApi[webapi接口]为Vue版或其他三方系统提供接口服务。
ZR.Vue[前端UI]vue版本UI层。
DataBase是最新数据库备份文件目前支持MS SQL Server和MySql。
## 📖 帮助文档
👉快捷部署到Linux文档
- [本地md文件](./document/nginx部署文档.md "代码生成")
👉代码生成器使用教程:
- [本地md文件](./document/代码生成器使用.md "代码生成")
## 🍎演示图
<table>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/1.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/2.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/1.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/2.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/3.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/4.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/3.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/4.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/5.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/6.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/5.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/6.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/7.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/8.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/7.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/8.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/9.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/10.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/9.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/10.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/11.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/12.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/11.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/12.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/13.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/14.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/13.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/14.png"/></td>
</tr>
<tr>
<td><img src="https://www.izhaorui.cn/images/zradmin/15.png"/></td>
<td><img src="https://www.izhaorui.cn/images/zradmin/16.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/15.png"/></td>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/16.png"/></td>
</tr>
<tr>
<td><img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/17.png"/></td>
</tr>
</table>
@ -127,17 +137,17 @@ DataBase是最新数据库备份文件目前支持MS SQL Server和MySql。
## 💐 特别鸣谢
- 👉Ruoyi.vue[Ruoyi](http://www.ruoyi.vip/)
- 👉SqlSugarhttps://gitee.com/dotnetchina/SqlSugar
- 👉SqlSugar[SqlSugar](https://gitee.com/dotnetchina/SqlSugar)
## 🍻参与贡献
- Fork 本项目
- 新建 Feat_xxx 分支
- 提交代码
- 新建 Pull Request
## 联系作者
## 😎联系作者
QQ599854767
## 🎀捐赠
如果这个项目对您有所帮助,请扫下方二维码打赏一杯咖啡。
<img src="https://www.izhaorui.cn/static/pay.jpg"/>
<img src="https://gitee.com/izory/ZrAdminNetCore/raw/master/document/images/pay.jpg"/>
## 源码地址
[Gitee码云中国](https://gitee.com/izory/ZrAdminNetCore)
[Github](https://github.com/izhaorui/ZrAdmin.NET)

View File

@ -9,6 +9,7 @@ using ZR.Admin.WebApi.Filters;
using ZR.Common;
using Infrastructure.Enums;
using ZR.Service.System.IService;
using Infrastructure;
namespace ZR.Admin.WebApi.Controllers.System
{

View File

@ -58,7 +58,7 @@ import {
del{ModelTypeName},
update{ModelTypeName},
get{ModelTypeName}
} from '@/api/{fileClassName}.js'
} from '@/api/{fileClassName}.js';
export default {
name: '{ModelTypeName}',

View File

@ -29,12 +29,12 @@ namespace ZR.CodeGenerator
sb.AppendLine($" }},");
}
//有下拉框选项初列表查询数据
if (dbFieldInfo.HtmlType == GenConstants.HTML_SELECT && !string.IsNullOrEmpty(dbFieldInfo.DictType))
if ((dbFieldInfo.HtmlType == GenConstants.HTML_SELECT || dbFieldInfo.HtmlType == GenConstants.HTML_RADIO) && !string.IsNullOrEmpty(dbFieldInfo.DictType))
{
sb.AppendLine(@$" // {dbFieldInfo.ColumnComment}字典翻译");
sb.AppendLine($" {columnName}Format(row, column) {{");
sb.AppendLine(@$" return this.selectDictLabel(this.{columnName}Options, row.{columnName});");
sb.Append(@" },");
sb.AppendLine(@" },");
}
return sb.ToString();
@ -74,7 +74,7 @@ namespace ZR.CodeGenerator
public static string GetModelRequired(GenTableColumn dbFieldInfo)
{
string str = "";
if (!dbFieldInfo.IsRequired && (dbFieldInfo.CsharpType == "int" || dbFieldInfo.CsharpType == "long" || dbFieldInfo.CsharpType == "DateTime"))
if (!dbFieldInfo.IsRequired && (CodeGeneratorTool.IsNumber(dbFieldInfo.ColumnType) || dbFieldInfo.CsharpType == "DateTime"))
{
str = "?";
}
@ -104,7 +104,7 @@ namespace ZR.CodeGenerator
public static string GetQueryDtoProperty(GenTableColumn dbFieldInfo)
{
string QueryDtoContent = "";
if (dbFieldInfo.IsQuery && !GenConstants.inputDtoNoField.Any(f => f.Replace("_", "").ToLower().Contains(dbFieldInfo.CsharpField.ToLower().Replace("_", ""))))
if (dbFieldInfo.IsQuery && !GenConstants.inputDtoNoField.Any(f => f.ToLower().Contains(dbFieldInfo.CsharpField.ToLower())))
{
QueryDtoContent += $" public {dbFieldInfo.CsharpType} {dbFieldInfo.CsharpField} {{ get; set; }}\r\n";
}
@ -120,7 +120,7 @@ namespace ZR.CodeGenerator
string labelDisabled = dbFieldInfo.IsPk ? ":disabled=\"true\"" : "";
string placeHolder = dbFieldInfo.IsIncrement ? "" : $"请输入{labelName}";
StringBuilder sb = new StringBuilder();
if (GenConstants.inputDtoNoField.Any(f => f.Replace("_", "").ToLower().Contains(dbFieldInfo.CsharpField.ToLower().Replace("_", ""))))
if (GenConstants.inputDtoNoField.Any(f => f.ToLower().Contains(dbFieldInfo.CsharpField.ToLower())))
{
return sb.ToString();
}
@ -194,7 +194,7 @@ namespace ZR.CodeGenerator
if (dbFieldInfo.HtmlType == GenConstants.HTML_DATETIME)
{
sb.AppendLine(" <el-form-item label=\"时间\">");
sb.AppendLine(" <el-date-picker v-model=\"dateRange\" size=\"small\" value-format=\"yyyy-MM-dd\" type=\"daterange\" range-separator=\"-\" start-placeholder=\"开始日期\" end-placeholder=\"结束日期\"></el-date-picker>");
sb.AppendLine(" <el-date-picker v-model=\"timeRange\" size=\"small\" value-format=\"yyyy-MM-dd\" type=\"daterange\" range-separator=\"-\" start-placeholder=\"开始日期\" end-placeholder=\"结束日期\"></el-date-picker>");
sb.AppendLine(" </el-form-item>");
}
else

View File

@ -4,6 +4,7 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using ZR.CodeGenerator.Model;
using ZR.Model.System.Generate;
@ -57,6 +58,9 @@ namespace ZR.CodeGenerator
replaceDto.ViewsFileName = FirstLowerCase(replaceDto.ModelTypeName);
replaceDto.Author = tableInfo.FunctionAuthor;
StringBuilder sb1 = new StringBuilder();
StringBuilder sb2 = new StringBuilder();
//循环表字段信息
foreach (GenTableColumn dbFieldInfo in listField)
{
@ -86,14 +90,15 @@ namespace ZR.CodeGenerator
//{
// replaceDto.Querycondition += $"predicate = predicate.And(m => m.{dbFieldInfo.CsharpField}.Contains(parm.Name));";
//}
if ((dbFieldInfo.HtmlType == GenConstants.HTML_SELECT || dbFieldInfo.HtmlType == GenConstants.HTML_RADIO) && !string.IsNullOrEmpty(dbFieldInfo.DictType))
{
replaceDto.VueDataContent += $" // {dbFieldInfo.ColumnComment}选项列表\n";
replaceDto.VueDataContent += $" {FirstLowerCase(dbFieldInfo.CsharpField)}Options: [],\n";
sb1.AppendLine($" // {dbFieldInfo.ColumnComment}选项列表");
sb1.AppendLine($" {FirstLowerCase(dbFieldInfo.CsharpField)}Options: [],");
replaceDto.MountedMethod += $" this.getDicts(\"{dbFieldInfo.DictType}\").then((response) => {{\n";
replaceDto.MountedMethod += $" this.{FirstLowerCase(dbFieldInfo.CsharpField)}Options = response.data;\n";
replaceDto.MountedMethod += " })\n";
sb2.AppendLine($" this.getDicts(\"{dbFieldInfo.DictType}\").then((response) => {{");
sb2.AppendLine($" this.{FirstLowerCase(dbFieldInfo.CsharpField)}Options = response.data;");
sb2.AppendLine(" })");
}
replaceDto.QueryProperty += CodeGenerateTemplate.GetQueryDtoProperty(dbFieldInfo);
@ -105,6 +110,9 @@ namespace ZR.CodeGenerator
replaceDto.InputDtoProperty += CodeGenerateTemplate.GetDtoProperty(dbFieldInfo);
replaceDto.VueQueryFormHtml += CodeGenerateTemplate.GetQueryFormHtml(dbFieldInfo);
}
replaceDto.VueDataContent = sb1.ToString();
replaceDto.MountedMethod = sb2.ToString();
replaceDto.PKName = PKName;
replaceDto.PKType = PKType;
@ -201,7 +209,7 @@ namespace ZR.CodeGenerator
.Replace("{Author}", replaceDto.Author)
.Replace("{DateTime}", replaceDto.AddTime);
//generateDto.GenCodes.Add(new GenCode(2, "数据传输实体类", fullPath, content));
generateDto.GenCodes.Add(new GenCode(2, "数据传输实体类", fullPath, content));
}
#endregion
@ -255,7 +263,7 @@ namespace ZR.CodeGenerator
.Replace("{Author}", replaceDto.Author)
.Replace("{DateTime}", replaceDto.AddTime);
//generateDto.GenCodes.Add(new GenCode(4, "接口层", fullPath, content));
generateDto.GenCodes.Add(new GenCode(4, "接口层", fullPath, content));
}
/// <summary>

View File

@ -16,7 +16,7 @@ namespace ZR.CodeGenerator
/// <summary>
/// InputDto输入实体是不包含字段
/// </summary>
public static readonly string[] inputDtoNoField = new string[] { "createTime", "updateTime", "addtime" };
public static readonly string[] inputDtoNoField = new string[] { "createTime", "updateTime", "addtime", "create_time", "update_time" };
/// <summary>
/// 图片字段
/// </summary>

View File

@ -11,7 +11,7 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.0.3.4" />
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.0.4" />
</ItemGroup>
<ItemGroup>

View File

@ -12,7 +12,7 @@
<ItemGroup>
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="Npoi.Mapper" Version="3.5.1" />
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.0.3.4" />
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.0.4" />
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />
</ItemGroup>

View File

@ -13,7 +13,7 @@
<PackageReference Include="Microsoft.Extensions.Options" Version="5.0.0" />
<PackageReference Include="MySql.Data" Version="8.0.25" />
<PackageReference Include="NETCore.Encrypt" Version="2.0.9" />
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.0.3.4" />
<PackageReference Include="SqlSugarCoreNoDrive" Version="5.0.4" />
</ItemGroup>
<ItemGroup>

View File

@ -1,11 +1,11 @@
using Infrastructure.Attribute;
using System.Collections.Generic;
using ZR.Common;
using ZR.Model;
using ZR.Model.System.Dto;
using ZR.Model.System;
using ZR.Repository.System;
using ZR.Service.System.IService;
using Infrastructure;
namespace ZR.Service.System
{

View File

@ -1,59 +0,0 @@
import request from '@/utils/request'
/**
* 代码生成测试表分页查询
* @param {查询条件} data
*/
export function listGendemo(query) {
return request({
url: 'business/Gendemo/list',
method: 'get',
params: query,
})
}
/**
* 新增代码生成测试表
* @param data
*/
export function addGendemo(data) {
return request({
url: 'business/Gendemo',
method: 'post',
data: data,
})
}
/**
* 修改代码生成测试表
* @param data
*/
export function updateGendemo(data) {
return request({
url: 'business/Gendemo',
method: 'PUT',
data: data,
})
}
/**
* 获取代码生成测试表详情
* @param {Id} 代码生成测试表Id
*/
export function getGendemo(id) {
return request({
url: 'business/Gendemo/' + id,
method: 'get'
})
}
/**
* 删除
* @param {主键} pid
*/
export function delGendemo(pid) {
return request({
url: 'business/Gendemo/' + pid,
method: 'delete'
})
}

View File

@ -56,7 +56,7 @@
</div>
<div class="body">
<span class="tip">如果觉得有用你可以请作者喝杯咖啡表示鼓励</span>
<img src="http://www.izhaorui.cn/static/pay.jpg" alt="donate" width="100%" />
<img src="http://ss.izhaorui.cn/pay.jpg" alt="donate" width="100%" />
</div>
</el-card>
</el-col>

View File

@ -19,7 +19,7 @@
<el-button type="danger" :disabled="multiple" plain icon="el-icon-delete" @click="handleDelete" size="mini" v-hasPermi="['tool:gen:delete']">删除</el-button>
</el-col>
</el-row>
<el-table ref="gridtable" v-loading="tableloading" :data="tableData" border @selection-change="handleSelectionChange" highlight-current-row height="500px">
<el-table ref="gridtable" v-loading="tableloading" :data="tableData" border @selection-change="handleSelectionChange" highlight-current-row height="480px">
<el-table-column type="selection" align="center" width="55"></el-table-column>
<el-table-column label="序号" type="index" width="50" align="center">
<template slot-scope="scope">
@ -45,7 +45,7 @@
<!-- 预览界面 -->
<el-dialog :title="preview.title" :visible.sync="preview.open" width="80%" top="5vh" append-to-body>
<el-tabs v-model="preview.activeName">
<el-tab-pane v-for="(item, key) in preview.data" :label="item.title" :name="item.type.toString()" :key="key">
<el-tab-pane v-for="(item, key) in preview.data" :label="item.title" :name="key.toString()" :key="key">
<pre v-html="highlightedCode(item.content)">
</pre>
</el-tab-pane>
@ -115,7 +115,7 @@ export default {
open: false,
title: "代码预览",
data: {},
activeName: "1",
activeName: "0",
},
showGenerate: false,
checkedCodeGenerateForm: [1, 2, 3, 4, 5, 6, 7, 8],
@ -199,10 +199,10 @@ export default {
var seachdata = {
tableId: this.currentSelected.tableId,
tableName: this.currentSelected.name,
genFiles: this.checkedCodeGenerateForm,
genCodeFiles: this.checkedCodeGenerateForm,
coverd: this.coverd,
dbType: this.dbType,
queryColumn: this.checkedQueryColumn,
// queryColumn: this.checkedQueryColumn,
};
console.log(JSON.stringify(seachdata));

View File

@ -27,44 +27,47 @@
<param name="data"></param>
<returns></returns>
</member>
<member name="T:ZR.Admin.WebApi.Controllers.UserInfoController">
<member name="T:ZR.Admin.WebApi.Controllers.GendemoController">
<summary>
代码自动生成
代码生成演示Controller
@author zhaorui
@date 2021-09-24
</summary>
</member>
<member name="F:ZR.Admin.WebApi.Controllers.UserInfoController._UserInfoService">
<member name="F:ZR.Admin.WebApi.Controllers.GendemoController._GendemoService">
<summary>
用户信息接口
代码生成演示接口
</summary>
</member>
<member name="M:ZR.Admin.WebApi.Controllers.UserInfoController.QueryUserInfo(ZR.Model.Dto.UserInfoQueryDto)">
<member name="M:ZR.Admin.WebApi.Controllers.GendemoController.QueryGendemo(ZR.Model.Dto.GendemoQueryDto)">
<summary>
查询用户信息列表
查询代码生成演示列表
</summary>
<returns></returns>
</member>
<member name="M:ZR.Admin.WebApi.Controllers.UserInfoController.GetUserInfo(System.Int32)">
<member name="M:ZR.Admin.WebApi.Controllers.GendemoController.GetGendemo(System.Int32)">
<summary>
查询用户信息详情
查询代码生成演示详情
</summary>
<param name="Luid"></param>
<param name="Id"></param>
<returns></returns>
</member>
<member name="M:ZR.Admin.WebApi.Controllers.UserInfoController.AddUserInfo(ZR.Model.Dto.UserInfoDto)">
<member name="M:ZR.Admin.WebApi.Controllers.GendemoController.AddGendemo(ZR.Model.Dto.GendemoDto)">
<summary>
添加用户信息
添加代码生成演示
</summary>
<returns></returns>
</member>
<member name="M:ZR.Admin.WebApi.Controllers.UserInfoController.UpdateUserInfo(ZR.Model.Dto.UserInfoDto)">
<member name="M:ZR.Admin.WebApi.Controllers.GendemoController.UpdateGendemo(ZR.Model.Dto.GendemoDto)">
<summary>
更新用户信息
更新代码生成演示
</summary>
<returns></returns>
</member>
<member name="M:ZR.Admin.WebApi.Controllers.UserInfoController.DeleteUserInfo(System.String)">
<member name="M:ZR.Admin.WebApi.Controllers.GendemoController.DeleteGendemo(System.String)">
<summary>
删除用户信息
删除代码生成演示
</summary>
<returns></returns>
</member>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 KiB

After

Width:  |  Height:  |  Size: 6.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

After

Width:  |  Height:  |  Size: 6.6 MiB

BIN
document/images/15-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 MiB

BIN
document/images/17.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 MiB

BIN
document/images/pay.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 KiB

Binary file not shown.

View File

@ -0,0 +1,9 @@
## nginx部署文档.md
1. 拷贝zradmin.ini文件代码到nginx配置文件http模块中
2. 在nginx安装目录中的html目录中创建文件夹zradmin_vue
3. 发布ZR.Admin.WebApi项目并部署到服务器中启动
4. 发布ZR.Vue项目并拷贝dist文件中的代码到刚刚创建的zradmin_vue中
5. 浏览器中访问 http://localhost:8080
注意服务器防火墙的设置开放8080 端口

View File

@ -0,0 +1,18 @@
## 代码生成器使用教程
### 修改配置文件appsettings.json
```
"gen": {
"conn": "server=127.0.0.1;user=zr;pwd=abc;database={database}",
"dbType": 0, //MySql = 0, SqlServer = 1
"autoPre": true, //自动去除表前缀
"author": "zr",
"tablePrefix": "sys_" //"表前缀(生成类名不会包含表前缀,多个用","分隔)",
}
```
修改conn数据库连接字符串其中{database}为动态要替换的数据库名
<img src="http://ss.izhaorui.cn/zradmin/15-1.png"/>
👉视频教程:
- [观看视频](http://ss.izhaorui.cn/zradmin/%E4%BB%A3%E7%A0%81%E7%94%9F%E6%88%90%E6%BC%94%E7%A4%BA202109250747.mp4)