fix 人事范围调用处理

This commit is contained in:
2024-01-10 11:44:59 +08:00
parent 21e945727b
commit cd31e3fc58
22 changed files with 195 additions and 59 deletions

View File

@@ -23,6 +23,7 @@
<ItemGroup>
<ProjectReference Include="..\Dlhis.Common.Api\Dlhis.Common.Api.csproj" />
<ProjectReference Include="..\Dlhis.Entity\Dlhis.Entity.csproj" />
<ProjectReference Include="..\Dlhis.User.Api\Dlhis.User.Api.csproj" />
</ItemGroup>
</Project>

View File

@@ -1,5 +1,6 @@
using Dlhis.Basic.Organization.Response;
using Dlhis.Basic.Organization.Services;
using Dlhis.User.Api.Response;
using Kurisu.AspNetCore.MVC;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
@@ -27,7 +28,7 @@ public class WerksController : ControllerBase
/// </summary>
/// <returns></returns>
[HttpGet("list")]
public async Task<List<WerkResponse>> GetListAsync()
public async Task<List<TenantResponse>> GetListAsync()
{
return await _werkService.GetListAsync();
}
@@ -37,7 +38,7 @@ public class WerksController : ControllerBase
/// </summary>
/// <returns></returns>
[HttpGet("current")]
public async Task<WerkResponse> GetCurrentAsync()
public async Task<TenantResponse> GetCurrentAsync()
{
return await _werkService.GetCurrentAsync();
}

View File

@@ -1,23 +0,0 @@
using SqlSugar;
namespace Dlhis.Basic.Organization.Response;
public class WerkResponse
{
public long Id { get; set; }
/// <summary>
/// 代号
/// </summary>
public string Code { get; set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 是否可见
/// </summary>
public bool Visible { get; set; }
}

View File

@@ -1,10 +1,10 @@
using Dlhis.Basic.Organization.Response;
using Dlhis.User.Api.Response;
namespace Dlhis.Basic.Organization.Services;
public interface IWerkService : IScopeDependency
{
Task<List<WerkResponse>> GetListAsync();
Task<List<TenantResponse>> GetListAsync();
Task<WerkResponse> GetCurrentAsync();
Task<TenantResponse> GetCurrentAsync();
}

View File

@@ -1,34 +1,38 @@
using Dlhis.Basic.Organization.Response;
using Dlhis.Entity.Basic.Entity;
using Dlhis.User.Api;
using Dlhis.User.Api.Response;
using Kurisu.AspNetCore.Utils.Extensions;
using Kurisu.Core.Result;
using Kurisu.Core.User.Abstractions;
using Kurisu.SqlSugar.Services;
namespace Dlhis.Basic.Organization.Services.Implements;
public class WerkService : IWerkService
{
private readonly IDbContext _dbContext;
private readonly ICurrentUser _currentUser;
private readonly ITenantApi _tenantApi;
public WerkService(IDbContext dbContext, ICurrentUser currentUser)
public WerkService(ICurrentUser currentUser, ITenantApi tenantApi)
{
_dbContext = dbContext;
_currentUser = currentUser;
_tenantApi = tenantApi;
}
public async Task<List<WerkResponse>> GetListAsync()
public async Task<List<TenantResponse>> GetListAsync()
{
return await _dbContext.Queryable<WerkEntity>()
.Select<WerkResponse>()
.ToListAsync();
var tenantResult = await _tenantApi.GetTenantsAsync();
(tenantResult.Code == ApiStateCode.Success).ThrowIfFalse(tenantResult.Msg);
var tenants = tenantResult.Data;
return tenants;
}
public async Task<WerkResponse> GetCurrentAsync()
public async Task<TenantResponse> GetCurrentAsync()
{
var tenant = _currentUser.GetStringTenantId();
return await _dbContext.Queryable<WerkEntity>()
.Where(x => x.Code == tenant)
.Select<WerkResponse>()
.FirstAsync();
var tenantResult = await _tenantApi.GetTenantsAsync();
(tenantResult.Code == ApiStateCode.Success).ThrowIfFalse(tenantResult.Msg);
var tenants = tenantResult.Data;
return tenants.FirstOrDefault(x => x.Code == tenant);
}
}

View File

@@ -19,7 +19,10 @@ public class SqlSugarPack : BaseAppPack
#if DEBUG
using var scope = app.ApplicationServices.CreateScope();
var db = scope.ServiceProvider.GetService<ISqlSugarClient>();
var tables = App.ActiveTyps.Where(x => x.IsDefined(typeof(SugarTable), false)).ToArray();
var tables = App.ActiveTyps.Where(x => x.IsDefined(typeof(SugarTable), false))
.Where(x => !x.IsDefined(typeof(SkipScanAttribute), false))
.ToArray();
db.DbMaintenance.CreateDatabase();
db.CodeFirst.InitTables(tables);
#endif

View File

@@ -6,7 +6,8 @@
}
},
"InternalRequest": {
"CommonRequestUrl": "http://localhost:5001"
"CommonRequestUrl": "http://localhost:5001",
"UserRequestUrl": "http://localhost:5004"
},
"SwaggerOptions": {
"Enable": true,

View File

@@ -7,7 +7,8 @@
},
"AllowedHosts": "*",
"InternalRequest": {
"CommonRequestUrl": "http://common"
"CommonRequestUrl": "http://common",
"UserRequestUrl": "http://user"
},
"SqlSugarOptions": {
"DefaultConnectionString": "server=192.168.199.124;port=3306;userid=root;password=dlhis123;database=yikatong;charset=utf8mb4;",