最后修复最大深度问题
This commit is contained in:
@@ -30,7 +30,8 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
||||
private RabbitMQInvoker _rabbitMQInvoker;
|
||||
private CacheClientDB _cacheClientDB;
|
||||
private IRoleService _roleService;
|
||||
public AccountController(ILogger<UserController> logger, IUserService userService, IMenuService menuService,RabbitMQInvoker rabbitMQInvoker,CacheClientDB cacheClientDB, IRoleService roleService)
|
||||
private IHttpContextAccessor _httpContext;
|
||||
public AccountController(ILogger<UserController> logger, IUserService userService, IMenuService menuService,RabbitMQInvoker rabbitMQInvoker,CacheClientDB cacheClientDB, IRoleService roleService, IHttpContextAccessor httpContext)
|
||||
{
|
||||
_logger = logger;
|
||||
_userService = userService;
|
||||
@@ -38,6 +39,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
||||
_rabbitMQInvoker = rabbitMQInvoker;
|
||||
_cacheClientDB = cacheClientDB;
|
||||
_roleService = roleService;
|
||||
_httpContext = httpContext;
|
||||
}
|
||||
|
||||
|
||||
@@ -94,6 +96,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
||||
//设置默认头像
|
||||
var setting = JsonHelper.StrToObj<SettingDto>(_cacheClientDB.Get<string>(RedisConst.key));
|
||||
_user.icon = setting.InitIcon;
|
||||
_user.ip = _httpContext.HttpContext.Request.Headers["X-Real-IP"].FirstOrDefault();//通过上下文获取ip
|
||||
//设置默认角色
|
||||
if (string.IsNullOrEmpty(setting.InitRole))
|
||||
{
|
||||
@@ -117,6 +120,10 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
||||
[HttpPost]
|
||||
public async Task<Result> SendSMS(string SMSAddress)
|
||||
{
|
||||
if (string.IsNullOrEmpty(SMSAddress))
|
||||
{
|
||||
return Result.Error("请输入电话号码");
|
||||
}
|
||||
SMSAddress = SMSAddress.Trim();
|
||||
if (!await _userService.PhoneIsExsit(SMSAddress))
|
||||
{
|
||||
|
||||
@@ -58,7 +58,7 @@ namespace Yi.Framework.Service
|
||||
|
||||
public async Task<List<menu>> GetTopMenuByUserId(int userId)
|
||||
{
|
||||
var user_data = await _DbRead.Set<user>().Include(u => u.roles).ThenInclude(u => u.menus).FirstOrDefaultAsync();
|
||||
var user_data = await _DbRead.Set<user>().Include(u => u.roles).ThenInclude(u => u.menus).Where(u=>u.id==userId).FirstOrDefaultAsync();
|
||||
List<menu> menuList = new();
|
||||
user_data.roles.ForEach(u =>
|
||||
{
|
||||
|
||||
@@ -16,7 +16,8 @@ namespace Yi.Framework.Service
|
||||
public async Task<List<role>> GetRolesByUserId(int userId)
|
||||
{
|
||||
var user_data =await _Db.Set<user>().Include(u => u.roles).Where(u => u.id==userId).FirstOrDefaultAsync();
|
||||
var roleList = user_data.roles.Where(u=>u.is_delete==Normal).ToList();
|
||||
var roleList = user_data.roles.Where(u=>u.is_delete==Normal).ToList();
|
||||
roleList.ForEach(u => u.users = null);
|
||||
return roleList;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using Autofac;
|
||||
using Autofac.Extras.DynamicProxy;
|
||||
using Castle.DynamicProxy;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Mvc.ApplicationParts;
|
||||
using Microsoft.AspNetCore.Mvc.Controllers;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
@@ -36,11 +37,11 @@ namespace Yi.Framework.WebCore.Utility
|
||||
|
||||
containerBuilder.RegisterType<DbContextFactory>().As<IDbContextFactory>().InstancePerDependency().EnableInterfaceInterceptors();
|
||||
|
||||
|
||||
|
||||
containerBuilder.RegisterType< HttpContextAccessor>().As<IHttpContextAccessor>().SingleInstance();
|
||||
|
||||
|
||||
///反射注入服务层及接口层
|
||||
|
||||
///反射注入服务层及接口层
|
||||
var assemblysServices = GetDll( "Yi.Framework.Service.dll");
|
||||
containerBuilder.RegisterAssemblyTypes(assemblysServices)
|
||||
.AsImplementedInterfaces()
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
</v-text-field>
|
||||
</v-col>
|
||||
<v-col cols="3">
|
||||
<app-btn @click="sendSMS" class="mb-1 mt-1">验证码</app-btn>
|
||||
<v-btn color="secondary" @click="sendSMS" class="mb-1 mt-1" :disabled="is_en">验证码</v-btn>
|
||||
</v-col>
|
||||
</v-row>
|
||||
<v-text-field
|
||||
@@ -113,6 +113,7 @@ import accoutAPI from "../api/accountApi";
|
||||
export default {
|
||||
methods: {
|
||||
sendSMS() {
|
||||
this.is_en=true
|
||||
accoutAPI.SendSMS(this.form.phone).then(resp=>{
|
||||
if (resp.status) {
|
||||
this.$dialog.notify.success(resp.msg, {
|
||||
@@ -171,6 +172,7 @@ export default {
|
||||
],
|
||||
isPasswordVisible: false,
|
||||
code: "",
|
||||
is_en:false,
|
||||
form: {
|
||||
phone: "",
|
||||
username: "",
|
||||
|
||||
Reference in New Issue
Block a user