feat: 完成合并

This commit is contained in:
陈淳
2023-02-22 19:21:21 +08:00
parent 49acf0c7c9
commit 8639372513
30 changed files with 61 additions and 43 deletions

View File

@@ -7,10 +7,10 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Cike.AutoApi" Version="1.0.7" />
<PackageReference Include="Microsoft.AspNetCore.Cors" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="6.0.13" />
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="6.0.0" />
<PackageReference Include="NET.AutoApi" Version="1.0.5" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
</ItemGroup>

View File

@@ -1,5 +1,4 @@
using NET.AutoWebApi.Helper;
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Principal;

View File

@@ -122,7 +122,7 @@ namespace Yi.Framework.Ddd.Services
/// <param name="id"></param>
/// <returns></returns>
/// <exception cref="ArgumentNullException"></exception>
public async Task<bool> DeleteAsync(string id)
public virtual async Task<bool> DeleteAsync(string id)
{
if (id is null)
{

View File

@@ -1,16 +1,16 @@
using NET.AutoWebApi.Setting;
using Yi.Framework.Ddd.Services;
using Yi.Framework.Ddd.Dtos;
using Yi.Framework.Core.Attributes;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using Cike.AutoWebApi.Setting;
namespace Yi.Framework.OperLogManager
{
/// <summary>
/// OperationLog服务实现
/// </summary>
[AppService]
//[AppService]
public class OperationLogService : CrudAppService<OperationLogEntity, OperationLogGetListOutputDto, long, OperationLogGetListInputVo>,
IOperationLogService, IAutoApiService
{

View File

@@ -15,17 +15,21 @@ namespace Yi.Framework.OperLogManager
public void ConfigureServices(IServiceCollection services, ConfigureServicesContext context)
{
services.AddControllers(options => {
services.AddControllers(options =>
{
options.Filters.Add<GlobalOperLogAttribute>();
});
services.AddAutoApiService(opt =>
{
//NETServiceTest所在程序集添加进动态api配置
opt.CreateConventional(typeof(YiFrameworkOperLogManagerModule).Assembly, option => option.RootPath = string.Empty);
//services.AddAutoApiService(opt =>
//{
// //NETServiceTest所在程序集添加进动态api配置
// opt.CreateConventional(typeof(YiFrameworkOperLogManagerModule).Assembly, option => option.RootPath = string.Empty);
//});
});
services.AddSingleton<GlobalOperLogAttribute>();
services.AddTransient<OperationLogService>();
services.AddTransient<IOperationLogService, OperationLogService>();
}
}
}

View File

@@ -1,5 +1,5 @@
using #NameSpaces#.Application.Contracts.#ModelName#;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using #NameSpaces#.Application.Contracts.#ModelName#.Dtos;
using #NameSpaces#.Domain.#ModelName#.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.Template.Application.Contracts.School;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.Template.Application.Contracts.School.Dtos;
using Yi.Template.Domain.School.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.Exhibition;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Application.Contracts.Exhibition.Dtos;
using Yi.BBS.Domain.Exhibition.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.Forum;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Application.Contracts.Forum.Dtos;
using Yi.BBS.Domain.Forum.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.Forum;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Application.Contracts.Forum.Dtos;
using Yi.BBS.Domain.Forum.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.Forum;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Application.Contracts.Forum.Dtos;
using Yi.BBS.Domain.Forum.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.Forum;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Application.Contracts.Forum.Dtos;
using Yi.BBS.Domain.Forum.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.Forum;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Application.Contracts.Forum.Dtos;
using Yi.BBS.Domain.Forum.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.GlobalSetting;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Domain.GlobalSetting.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.BBS.Application.Contracts.GlobalSetting;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.BBS.Domain.GlobalSetting.Entities;
using Yi.Framework.Ddd.Services;
using Microsoft.AspNetCore.Mvc;

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Dictionary;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Dictionary.Dtos;
using Yi.RBAC.Domain.Dictionary.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Dictionary;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Dictionary.Dtos;
using Yi.RBAC.Domain.Dictionary.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -4,7 +4,7 @@ using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using SqlSugar;
using System;
using System.Collections.Generic;

View File

@@ -1,11 +1,12 @@
using Yi.RBAC.Application.Contracts.Identity;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Identity.Dtos;
using Yi.RBAC.Domain.Identity.Entities;
using Yi.Framework.Ddd.Services;
using Yi.Framework.Ddd.Dtos;
using SqlSugar;
using Microsoft.AspNetCore.Mvc;
using Cike.AutoWebApi.Setting;
namespace Yi.RBAC.Application.Identity
{

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Identity;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Identity.Dtos;
using Yi.RBAC.Domain.Identity.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Identity;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Identity.Dtos;
using Yi.RBAC.Domain.Identity.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Identity;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Identity.Dtos;
using Yi.RBAC.Domain.Identity.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Identity;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Identity.Dtos;
using Yi.RBAC.Domain.Identity.Entities;
using Yi.Framework.Ddd.Services;
@@ -14,6 +14,7 @@ using Microsoft.AspNetCore.Mvc;
using Yi.Framework.Auth.JwtBearer.Authorization;
using Yi.RBAC.Application.Contracts.Identity.Dtos.User;
using Yi.Framework.Core.CurrentUsers;
using Yi.Framework.OperLogManager;
namespace Yi.RBAC.Application.Identity
{
@@ -72,6 +73,7 @@ namespace Yi.RBAC.Application.Identity
/// <param name="input"></param>
/// <returns></returns>
/// <exception cref="UserFriendlyException"></exception>
[OperLog("添加用户", OperEnum.Insert)]
public async override Task<UserGetOutputDto> CreateAsync(UserCreateInputVo input)
{
if (string.IsNullOrEmpty(input.Password))
@@ -116,6 +118,7 @@ namespace Yi.RBAC.Application.Identity
/// <param name="id"></param>
/// <param name="input"></param>
/// <returns></returns>
[OperLog("更新用户", OperEnum.Update)]
public async override Task<UserGetOutputDto> UpdateAsync(long id, UserUpdateInputVo input)
{
if (await _repository.IsAnyAsync(u => input.UserName!.Equals(u.UserName) && !id.Equals(u.Id)))
@@ -145,6 +148,7 @@ namespace Yi.RBAC.Application.Identity
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[OperLog("更新个人信息", OperEnum.Update)]
public async Task<UserGetOutputDto> UpdateProfileAsync(ProfileUpdateInputVo input)
{
var entity = await _repository.GetByIdAsync(_currentUser.Id);
@@ -161,6 +165,7 @@ namespace Yi.RBAC.Application.Identity
/// <param name="state"></param>
/// <returns></returns>
[Route("/api/user/{id}/{state}")]
[OperLog("更新用户状态", OperEnum.Update)]
public async Task<UserGetOutputDto> UpdateStateAsync([FromRoute] long id, [FromRoute] bool state)
{
var entity = await _repository.GetByIdAsync(id);
@@ -170,7 +175,13 @@ namespace Yi.RBAC.Application.Identity
}
entity.State = state;
await _repository.UpdateAsync(entity);
return await MapToGetOutputDtoAsync(entity);
}
[OperLog("删除用户", OperEnum.Delete)]
public override Task<bool> DeleteAsync(string id)
{
return base.DeleteAsync(id);
}
}
}

View File

@@ -1,5 +1,5 @@
using Microsoft.AspNetCore.Mvc;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using SqlSugar;
using System;
using System.Collections.Generic;

View File

@@ -1,5 +1,5 @@
using Yi.RBAC.Application.Contracts.Setting;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.RBAC.Application.Contracts.Setting.Dtos;
using Yi.RBAC.Domain.Setting.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -1,4 +1,4 @@
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using System;
using System.Collections.Generic;
using System.Linq;

View File

@@ -29,13 +29,16 @@ namespace Yi.RBAC.Web
opt.JsonSerializerOptions.Converters.Add(new DateTimeJsonConverter("yyyy-MM-dd HH:mm:ss"));
});
services.AddAutoApiService(opt =>
{
//NETServiceTest所在程序集添加进动态api配置
opt.CreateConventional(typeof(YiRBACApplicationModule).Assembly, option => option.RootPath = string.Empty);
opt.CreateConventional(AssemblyHelper.GetAllLoadAssembly(), option => option.RootPath = string.Empty);
});
//添加swagger
services.AddSwaggerServer<YiRBACApplicationModule>();
}

View File

@@ -1,5 +1,5 @@
using Yi.Template.Application.Contracts.School;
using NET.AutoWebApi.Setting;
using Cike.AutoWebApi.Setting;
using Yi.Template.Application.Contracts.School.Dtos;
using Yi.Template.Domain.School.Entities;
using Yi.Framework.Ddd.Services;

View File

@@ -34,8 +34,8 @@
/>
</el-select>
</el-form-item>
<el-form-item label="状态" prop="isDeleted">
<el-select v-model="queryParams.isDeleted" placeholder="日志状态" clearable style="width: 240px">
<el-form-item label="状态" prop="state">
<el-select v-model="queryParams.state" placeholder="日志状态" clearable style="width: 240px">
<el-option v-for="dict in sys_common_status" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select>
@@ -100,9 +100,9 @@
<el-table-column label="请求方式" align="center" prop="requestMethod" />
<el-table-column label="操作人员" align="center" prop="operUser" :show-overflow-tooltip="true" sortable="custom" :sort-orders="['descending', 'ascending']" width="100" />
<el-table-column label="主机" align="center" prop="operIp" width="130" :show-overflow-tooltip="true" />
<el-table-column label="操作状态" align="center" prop="isDeleted">
<el-table-column label="操作状态" align="center" prop="state">
<template #default="scope">
<dict-tag :options="sys_common_status" :value="scope.row.isDeleted" />
<dict-tag :options="sys_common_status" :value="scope.row.state" />
</template>
</el-table-column>
<el-table-column label="操作日期" align="center" prop="createTime" sortable="custom" :sort-orders="['descending', 'ascending']" width="180">
@@ -163,7 +163,7 @@
<el-form-item label="操作时间:">{{ parseTime(form.createTime) }}</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="异常信息:" v-if="form.isDeleted === 1">{{ form.errorMsg }}</el-form-item>
<el-form-item label="异常信息:" v-if="form.state === 1">{{ form.errorMsg }}</el-form-item>
</el-col>
</el-row>
</el-form>
@@ -202,7 +202,7 @@ const data = reactive({
title: undefined,
operUser: undefined,
operType: undefined,
isDeleted: undefined
state: undefined
}
});