'开发进度暂存'

This commit is contained in:
sulu 2023-11-17 08:40:24 +08:00
parent 0a6ce62d9a
commit eff9386228
6 changed files with 70 additions and 11 deletions

View File

@ -1,12 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk.Worker">
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>dotnet-WorkerService1-16724269-88FF-4E7A-9946-5155FD173413</UserSecretsId>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<RootNamespace>WorkerService1</RootNamespace>
</PropertyGroup>
<ItemGroup>

View File

@ -0,0 +1,26 @@
using Microsoft.AspNetCore.Mvc;
using WorkerService1.Dto;
using WorkerService1.Dto.QueryRequest;
using WorkerService1.Services;
namespace WorkerService1.Controllers;
[ApiController]
[Route("api/[controller]")]
public class UserController : ControllerBase
{
public UserController()
{
}
[HttpGet("Pages")]
public async Task<IActionResult> GetPageList([FromQuery] UserQuery request,
[FromServices] SpiderServices spiderServices)
{
var res = await spiderServices.GetUsers(request);
return Ok(res);
}
}

View File

@ -0,0 +1,10 @@
namespace WorkerService1.Dto;
public class PageRequest
{
public string Search { get; set; }
public int Page { get; set; }
public int PageSize { get; set; }
public string Sort { get; set; }
public bool IsAsc { get; set; }
}

View File

@ -0,0 +1,9 @@
namespace WorkerService1.Dto;
public class PageResponse<T>
{
public int Total { get; set; }
public int Page { get; set; }
public int PageSize { get; set; }
public List<T> Data { get; set; }
}

View File

@ -3,19 +3,36 @@ using WorkerService1.Dto.Configuration;
using WorkerService1.Services;
var builder = Host.CreateApplicationBuilder(args);
var builder = WebApplication.CreateBuilder(args);
var config = new ConfigurationManager()
.AddJsonFile("appsettings.json", false, true)
.Build();
builder.Services.AddCors(x =>
{
x.AddPolicy("AllowAllOrigin", builder =>
{
builder
.SetIsOriginAllowed(_ => true)
.AllowAnyMethod()
.AllowAnyHeader();
});
});
builder.Services.AddSingleton<IConfiguration>(config);
builder.Services.Configure<ClientOptions>(config.GetSection("ClientOptions"));
builder.Services.AddHttpClient();
builder.Services.AddMemoryCache();
builder.Services.AddLogging();
builder.Services.AddMvcCore();
builder.Services.AddSingleton<SpiderServices>();
#if !DEBUG
builder.Services.AddHostedService<Worker>();
builder.Services.AddHostedService<CloseWorker>();
#endif
var host = builder.Build();
host.Run();
var app = builder.Build();
app.UseCors("AllowAllOrigin");
app.MapControllers();
app.Run();

View File

@ -32,7 +32,6 @@ public class SpiderServices
.GetRequiredService<IOptionsMonitor<ClientOptions>>();
public async Task<SpiderResponse<LoginResultData>> Login()
{
using var client = _httpClientFactory.CreateClient();
@ -152,7 +151,7 @@ public class SpiderServices
// {"pageNo":1,"pageSize":20,"condition":{"roleIds":["a2e267c0-d88d-4ecb-a4b5-d904e85dfbb6"],"enabled":"null"}}
public async Task<SpiderResponse<Data>> GetUsers()
public async Task<SpiderResponse<Data>> GetUsers(UserQuery? query = null)
{
var token = await GetToken();
using var client = _httpClientFactory.CreateClient();
@ -161,7 +160,7 @@ public class SpiderServices
client.DefaultRequestHeaders.Add("client-app-id", "megcity-web");
client.DefaultRequestHeaders.Add("module-alias", "pending-forward");
client.DefaultRequestHeaders.Add("module-source", "megcity-web");
var request = new UserQuery();
var request = query ?? new UserQuery();
var userPath = OptionsMonitor.CurrentValue.GetUserUrl;
var response = await client.PostAsync(userPath,
new StringContent(JsonSerializer.Serialize(request), Encoding.UTF8, "application/json"));