修改代码生成演示

This commit is contained in:
不做码农 2021-11-27 20:00:13 +08:00
parent 2cc6e1d0ec
commit 4595a01b78
8 changed files with 106 additions and 55 deletions

View File

@ -15,6 +15,7 @@ using ZR.Admin.WebApi.Extensions;
using ZR.Admin.WebApi.Filters; using ZR.Admin.WebApi.Filters;
using ZR.Common; using ZR.Common;
using Infrastructure.Extensions; using Infrastructure.Extensions;
using System.Linq;
namespace ZR.Admin.WebApi.Controllers namespace ZR.Admin.WebApi.Controllers
{ {
@ -22,11 +23,11 @@ namespace ZR.Admin.WebApi.Controllers
/// 代码生成演示Controller /// 代码生成演示Controller
/// ///
/// @author zr /// @author zr
/// @date 2021-11-24 /// @date 2021-11-27
/// </summary> /// </summary>
[Verify] [Verify]
[Route("business/Gendemo")] [Route("business/Gendemo")]
public class GendemoController : BaseController public class GendemoController: BaseController
{ {
/// <summary> /// <summary>
/// 代码生成演示接口 /// 代码生成演示接口
@ -51,6 +52,11 @@ namespace ZR.Admin.WebApi.Controllers
//TODO 自己实现搜索条件查询语法参考Sqlsugar默认查询所有 //TODO 自己实现搜索条件查询语法参考Sqlsugar默认查询所有
//predicate = predicate.And(m => m.Name.Contains(parm.Name)); //predicate = predicate.And(m => m.Name.Contains(parm.Name));
predicate = predicate.AndIF(parm.Id > 0, m => m.Id == parm.Id);
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.Name), m => m.Name.Contains(parm.Name));
predicate = predicate.AndIF(parm.ShowStatus > 0, m => m.ShowStatus != parm.ShowStatus);
predicate = predicate.AndIF(parm.BeginTime != null, it => it.AddTime >= parm.BeginTime);
predicate = predicate.AndIF(parm.EndTime != null, it => it.AddTime <= parm.EndTime);
var response = _GendemoService.GetPages(predicate.ToExpression(), parm); var response = _GendemoService.GetPages(predicate.ToExpression(), parm);
@ -66,7 +72,7 @@ namespace ZR.Admin.WebApi.Controllers
[ActionPermissionFilter(Permission = "business:gendemo:query")] [ActionPermissionFilter(Permission = "business:gendemo:query")]
public IActionResult GetGendemo(int Id) public IActionResult GetGendemo(int Id)
{ {
var response = _GendemoService.GetId(Id); var response = _GendemoService.GetFirst(x => x.Id == Id);
return SUCCESS(response); return SUCCESS(response);
} }

View File

@ -27,6 +27,10 @@ namespace ZR.Model.Dto
/// </summary> /// </summary>
public class GendemoQueryDto: PagerInfo public class GendemoQueryDto: PagerInfo
{ {
public int Id { get; set; }
public string Name { get; set; }
public int ShowStatus { get; set; }
public DateTime AddTime { get; set; }
public DateTime? BeginTime { get; set; } public DateTime? BeginTime { get; set; }
public DateTime? EndTime { get; set; } public DateTime? EndTime { get; set; }

View File

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using SqlSugar;
namespace ZR.Model.Models namespace ZR.Model.Models
{ {
@ -7,7 +8,7 @@ namespace ZR.Model.Models
/// 代码生成演示,数据实体对象 /// 代码生成演示,数据实体对象
/// ///
/// @author zr /// @author zr
/// @date 2021-11-24 /// @date 2021-11-27
/// </summary> /// </summary>
[SqlSugar.SugarTable("gen_demo")] [SqlSugar.SugarTable("gen_demo")]
[SqlSugar.Tenant("0")] [SqlSugar.Tenant("0")]
@ -17,7 +18,7 @@ namespace ZR.Model.Models
/// 描述 :自增id /// 描述 :自增id
/// 空值 :False /// 空值 :False
/// </summary> /// </summary>
[SqlSugar.SugarColumn(IsPrimaryKey = true, IsIdentity = true)] [SqlSugar.SugarColumn(IsPrimaryKey = false, IsIdentity = true)]
public int Id { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 描述 :名称 /// 描述 :名称

View File

@ -2,7 +2,6 @@ using System;
using Infrastructure.Attribute; using Infrastructure.Attribute;
using ZR.Repository.System; using ZR.Repository.System;
using ZR.Model.Models; using ZR.Model.Models;
using SqlSugar;
namespace ZR.Repository namespace ZR.Repository
{ {
@ -10,15 +9,11 @@ namespace ZR.Repository
/// 代码生成演示仓储接口的实现 /// 代码生成演示仓储接口的实现
/// ///
/// @author zr /// @author zr
/// @date 2021-11-24 /// @date 2021-11-27
/// </summary> /// </summary>
[AppService(ServiceLifetime = LifeTime.Transient)] [AppService(ServiceLifetime = LifeTime.Transient)]
public class GendemoRepository : BaseRepository<Gendemo> public class GendemoRepository : BaseRepository<Gendemo>
{ {
public GendemoRepository()
{
}
#region #region
#endregion #endregion
} }

View File

@ -1,6 +1,5 @@
using Infrastructure; using Infrastructure;
using Infrastructure.Attribute; using Infrastructure.Attribute;
using SqlSugar;
using ZR.Model.Models; using ZR.Model.Models;
using ZR.Repository; using ZR.Repository;
@ -10,7 +9,7 @@ namespace ZR.Service.Business
/// 代码生成演示Service业务层处理 /// 代码生成演示Service业务层处理
/// ///
/// @author zr /// @author zr
/// @date 2021-11-24 /// @date 2021-11-27
/// </summary> /// </summary>
[AppService(ServiceType = typeof(IGendemoService), ServiceLifetime = LifeTime.Transient)] [AppService(ServiceType = typeof(IGendemoService), ServiceLifetime = LifeTime.Transient)]
public class GendemoService : BaseService<Gendemo>, IGendemoService public class GendemoService : BaseService<Gendemo>, IGendemoService

View File

@ -7,7 +7,7 @@ namespace ZR.Service.Business
/// 代码生成演示service接口 /// 代码生成演示service接口
/// ///
/// @author zr /// @author zr
/// @date 2021-11-24 /// @date 2021-11-27
/// </summary> /// </summary>
public interface IGendemoService: IBaseService<Gendemo> public interface IGendemoService: IBaseService<Gendemo>
{ {

View File

@ -1,9 +1,9 @@
import request from '@/utils/request' import request from '@/utils/request'
/** /**
* 代码生成演示分页查询 * 代码生成演示分页查询
* @param {查询条件} data * @param {查询条件} data
*/ */
export function listGendemo(query) { export function listGendemo(query) {
return request({ return request({
url: 'business/Gendemo/list', url: 'business/Gendemo/list',
@ -13,9 +13,9 @@ export function listGendemo(query) {
} }
/** /**
* 新增代码生成演示 * 新增代码生成演示
* @param data * @param data
*/ */
export function addGendemo(data) { export function addGendemo(data) {
return request({ return request({
url: 'business/Gendemo', url: 'business/Gendemo',
@ -25,9 +25,9 @@ export function addGendemo(data) {
} }
/** /**
* 修改代码生成演示 * 修改代码生成演示
* @param data * @param data
*/ */
export function updateGendemo(data) { export function updateGendemo(data) {
return request({ return request({
url: 'business/Gendemo', url: 'business/Gendemo',
@ -37,9 +37,9 @@ export function updateGendemo(data) {
} }
/** /**
* 获取代码生成演示详情 * 获取代码生成演示详情
* @param {Id} 代码生成演示Id * @param {Id} 代码生成演示Id
*/ */
export function getGendemo(id) { export function getGendemo(id) {
return request({ return request({
url: 'business/Gendemo/' + id, url: 'business/Gendemo/' + id,
@ -48,12 +48,20 @@ export function getGendemo(id) {
} }
/** /**
* 删除 * 删除
* @param {主键} pid * @param {主键} pid
*/ */
export function delGendemo(pid) { export function delGendemo(pid) {
return request({ return request({
url: 'business/Gendemo/' + pid, url: 'business/Gendemo/' + pid,
method: 'delete' method: 'delete'
}) })
} }
// 导出
export function exportGendemo(query) {
return request({
url: 'business/Gendemo/export',
method: 'get',
params: query
})
}

View File

@ -2,6 +2,18 @@
<div class="app-container"> <div class="app-container">
<!-- :model属性用于表单验证使用 比如下面的el-form-item prop属性用于对表单值进行验证操作 --> <!-- :model属性用于表单验证使用 比如下面的el-form-item prop属性用于对表单值进行验证操作 -->
<el-form :model="queryParams" label-position="left" inline ref="queryForm" :label-width="labelWidth" v-show="showSearch" @submit.native.prevent> <el-form :model="queryParams" label-position="left" inline ref="queryForm" :label-width="labelWidth" v-show="showSearch" @submit.native.prevent>
<el-form-item label="自增id" :label-width="labelWidth">
<el-input v-model.number="queryParams.id"/>
</el-form-item>
<el-form-item label="名称" :label-width="labelWidth">
<el-input v-model="queryParams.name"/>
</el-form-item>
<el-form-item label="显示状态" :label-width="labelWidth">
<el-input v-model.number="queryParams.showStatus"/>
</el-form-item>
<el-form-item label="时间">
<el-date-picker v-model="timeRange" size="small" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</el-form-item>
<el-row class="mb8" style="text-align:center"> <el-row class="mb8" style="text-align:center">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
@ -55,9 +67,13 @@
<!-- 添加或修改菜单对话框 --> <!-- 添加或修改菜单对话框 -->
<el-dialog :title="title" :lock-scroll="false" :visible.sync="open" > <el-dialog :title="title" :lock-scroll="false" :visible.sync="open" >
<el-form ref="form" :model="form" :rules="rules" :label-width="formLabelWidth"> <el-form ref="form" :model="form" :rules="rules" :label-width="formLabelWidth">
<el-row>
<el-col :span="12">
<el-form-item label="名称" :label-width="labelWidth" prop="name"> <el-form-item label="名称" :label-width="labelWidth" prop="name">
<el-input v-model="form.name" placeholder="请输入名称" /> <el-input v-model="form.name" placeholder="请输入名称" />
</el-form-item> </el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="图片" :label-width="labelWidth" prop="icon"> <el-form-item label="图片" :label-width="labelWidth" prop="icon">
<el-upload class="avatar-uploader" name="file" action="/api/upload/saveFile/" :show-file-list="false" :on-success="handleUploadIconSuccess" :before-upload="beforeFileUpload"> <el-upload class="avatar-uploader" name="file" action="/api/upload/saveFile/" :show-file-list="false" :on-success="handleUploadIconSuccess" :before-upload="beforeFileUpload">
<img v-if="form.icon" :src="form.icon" class="icon"> <img v-if="form.icon" :src="form.icon" class="icon">
@ -65,29 +81,43 @@
</el-upload> </el-upload>
<el-input v-model="form.icon" placeholder="请上传文件或手动输入文件地址"></el-input> <el-input v-model="form.icon" placeholder="请上传文件或手动输入文件地址"></el-input>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="显示状态" :label-width="labelWidth" prop="showStatus"> <el-form-item label="显示状态" :label-width="labelWidth" prop="showStatus">
<el-select v-model="form.showStatus"> <el-select v-model="form.showStatus">
<el-option v-for="item in showStatusOptions" :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option> <el-option v-for="item in showStatusOptions" :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="用户性别" :label-width="labelWidth" prop="sex"> <el-form-item label="用户性别" :label-width="labelWidth" prop="sex">
<el-select v-model="form.sex"> <el-radio-group v-model="form.sex">
<el-option v-for="item in sexOptions" :key="item.dictValue" :label="item.dictLabel" :value="parseInt(item.dictValue)"></el-option> <el-radio v-for="item in sexOptions" :key="item.dictValue" :label="parseInt(item.dictValue)">{{item.dictLabel}}</el-radio>
</el-select> </el-radio-group>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="排序" :label-width="labelWidth" prop="sort"> <el-form-item label="排序" :label-width="labelWidth" prop="sort">
<el-input-number v-model.number="form.sort" placeholder="请输入排序" /> <el-input-number v-model.number="form.sort" placeholder="请输入排序" />
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开始时间" :label-width="labelWidth" prop="beginTime"> <el-form-item label="开始时间" :label-width="labelWidth" prop="beginTime">
<el-date-picker v-model="form.beginTime" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期时间"> </el-date-picker> <el-date-picker v-model="form.beginTime" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期时间"> </el-date-picker>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="结束时间" :label-width="labelWidth" prop="endTime"> <el-form-item label="结束时间" :label-width="labelWidth" prop="endTime">
<el-date-picker v-model="form.endTime" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期时间"> </el-date-picker> <el-date-picker v-model="form.endTime" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" placeholder="选择日期时间"> </el-date-picker>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注" :label-width="labelWidth" prop="remark"> <el-form-item label="备注" :label-width="labelWidth" prop="remark">
<editor v-model="form.remark" :min-height="200" /> <editor v-model="form.remark" :min-height="200" />
</el-form-item> </el-form-item>
</el-col>
</el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer" v-if="btnSubmitVisible"> <div slot="footer" class="dialog-footer" v-if="btnSubmitVisible">
<el-button @click="cancel"> </el-button> <el-button @click="cancel"> </el-button>
@ -110,7 +140,7 @@ import Editor from '@/components/Editor';
export default { export default {
name: 'Gendemo', name: "Gendemo",
components: { Editor }, components: { Editor },
data() { data() {
return { return {
@ -214,7 +244,7 @@ export default {
// //
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id); this.ids = selection.map((item) => item.id);
this.single = selection.length!=1 this.single = selection.length !=1
this.multiple = !selection.length; this.multiple = !selection.length;
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */
@ -268,14 +298,22 @@ export default {
if (valid) { if (valid) {
console.log(JSON.stringify(this.form)); console.log(JSON.stringify(this.form));
if (this.form.id != undefined || this.title === '修改数据') { if (this.form.id != undefined || this.title === "修改数据") {
updateGendemo(this.form).then((res) => { updateGendemo(this.form).then((res) => {
if (!res.data) {
this.msgError("修改失败");
return;
}
this.msgSuccess("修改成功"); this.msgSuccess("修改成功");
this.open = false; this.open = false;
this.getList(); this.getList();
}); });
} else { } else {
addGendemo(this.form).then((res) => { addGendemo(this.form).then((res) => {
if (!res.data) {
this.msgError("新增失败");
return;
}
this.msgSuccess("新增成功"); this.msgSuccess("新增成功");
this.open = false; this.open = false;
this.getList(); this.getList();