陈薪名 2 years ago
parent
commit
5c192f5607
  1. 7
      be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/TokenService.cs
  2. 26
      be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/Users/SfsUserAppService.cs
  3. 6
      be/Hosts/Basedata.Host/Win_in.Sfs.Basedata.HttpApi.Host/BasedataHttpApiHostModule.cs
  4. 15
      be/Hosts/Basedata.Host/Win_in.Sfs.Basedata.HttpApi.Host/Win_in.Sfs.Basedata.HttpApi.Host.csproj
  5. 4
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Win_in.Sfs.Wms.Pda.Host.csproj
  6. 2
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/ProductionLines/Inputs/ProductionLineImportInput.cs
  7. 4
      be/Modules/Shared/src/Win_in.Sfs.Shared.Application/ExportAndImport/ClosedXmlExportImportService.cs
  8. 30
      be/Modules/Shared/src/Win_in.Sfs.Shared.Application/SfsCrudWithDetailsAppServiceBase.cs
  9. 2
      be/Modules/Shared/src/Win_in.Sfs.Shared.Host/ModuleBase.cs

7
be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/TokenService.cs

@ -3,9 +3,11 @@ using System.ComponentModel.DataAnnotations;
using System.Net.Http;
using System.Threading.Tasks;
using IdentityModel.Client;
using IdentityServer4.Models;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Volo.Abp;
using Volo.Abp.Application.Services;
namespace Win_in.Sfs.Auth.Tokens;
@ -46,6 +48,11 @@ public class TokenService : ApplicationService
Password = model.Password
}).ConfigureAwait(false);
Console.WriteLine($"Result:${(result.IsError ? result.ErrorDescription : result.AccessToken)}");
if (result.RefreshToken == null)
{
throw new UserFriendlyException("用户名或密码错误");
}
return new JsonResult(new {
result.TokenType,
result.AccessToken,

26
be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/Users/SfsUserAppService.cs

@ -1,6 +1,8 @@
using System;
using System.Threading.Tasks;
using IdentityModel;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp;
using Volo.Abp.Account;
@ -88,10 +90,26 @@ public class SfsUserAppService : ApplicationService, ISfsUserAppService
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("change-password/{userId}")]
public virtual async Task ChangePasswordAsync(Guid userId,ChangePasswordInput input)
public virtual async Task ChangePasswordAsync(Guid userId, ChangePasswordInput input)
{
var user=await _userManager.GetByIdAsync(userId);
var ttt = user.PasswordHash;
var t=await _userManager.ResetPasswordAsync(user, input.CurrentPassword, input.NewPassword);
var user = await _userManager.GetByIdAsync(userId).ConfigureAwait(false);
_userManager.PasswordValidators.Clear();
var t=await _userManager.ChangePasswordAsync(user, input.CurrentPassword, input.NewPassword);
}
/// <summary>
/// 重置密码
/// </summary>
/// <param name="userId"></param>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("reset-password/{userId}")]
[AllowAnonymous]
public virtual async Task ReSetPasswordAsync(Guid userId)
{
var user =await _userManager.GetByIdAsync(userId).ConfigureAwait(false);
await _userManager.RemovePasswordAsync(user);
_userManager.PasswordValidators.Clear();
await _userManager.AddPasswordAsync(user, "000000");
}
}

6
be/Hosts/Basedata.Host/Win_in.Sfs.Basedata.HttpApi.Host/BasedataHttpApiHostModule.cs

@ -1,3 +1,4 @@
using System;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Volo.Abp;
@ -19,6 +20,7 @@ using Volo.Abp.Modularity;
using Volo.Abp.PermissionManagement.EntityFrameworkCore;
using Volo.Abp.SettingManagement.EntityFrameworkCore;
using Volo.Abp.Swashbuckle;
using Volo.Abp.Timing;
using Volo.Abp.Users;
using Win_in.Sfs.Basedata.Application;
using Win_in.Sfs.Basedata.Domain;
@ -69,6 +71,10 @@ public class BasedataHttpApiHostModule : ModuleBase<BasedataHttpApiHostModule>
ConfigureAuditing();
//
ConfigureBlobStoring();
Configure<AbpClockOptions>(options =>
{
options.Kind = DateTimeKind.Local;
});
}
public override void PostConfigureServices(ServiceConfigurationContext context)

15
be/Hosts/Basedata.Host/Win_in.Sfs.Basedata.HttpApi.Host/Win_in.Sfs.Basedata.HttpApi.Host.csproj

@ -36,6 +36,21 @@
<ProjectReference Include="..\..\..\Modules\Shared\src\Win_in.Sfs.Shared.Host\Win_in.Sfs.Shared.Host.csproj" />
</ItemGroup>
<ItemGroup>
<Compile Update="Properties\Resources.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Update="Properties\Resources.resx">
<Generator>PublicResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<PackageReference Update="Fody" Version="6.6.4">
<PrivateAssets>all</PrivateAssets>

4
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Win_in.Sfs.Wms.Pda.Host.csproj

@ -54,8 +54,8 @@
</None>
</ItemGroup>
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
<!--<Target Name="PostBuild" AfterTargets="PostBuildEvent">
<Exec Command="if $(ConfigurationName) == Release (powershell Compress-Archive -Path '$(TargetDir)Win_in*.dll','$(TargetDir)Win_in*.pdb' -DestinationPath '$(SolutionDir)Output\PdaHost.zip' -Force)" />
</Target>
</Target>-->
</Project>

2
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/ProductionLines/Inputs/ProductionLineImportInput.cs

@ -14,7 +14,7 @@ public class ProductionLineImportInput : SfsBaseDataImportInputBase
/// 编码
/// </summary>
[Key]
[Display(Name = "物品代码")]
[Display(Name = "生产线代码")]
[Required(ErrorMessage = "物品代码是必填项")]
public string Code { get; set; }

4
be/Modules/Shared/src/Win_in.Sfs.Shared.Application/ExportAndImport/ClosedXmlExportImportService.cs

@ -22,10 +22,10 @@ namespace Win_in.Sfs.Shared.Application;
public class ClosedXmlExportImportService : IExportImportService
{
public string ContentType => "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
public FileContentResult Export<TModel>(List<TModel> list, bool includeAuditedProperties = false, string detailsProptyName = null)
{
using (var fallbackFontStream = Assembly.GetExecutingAssembly().GetManifestResourceStream($"{Assembly.GetExecutingAssembly().FullName}.Resources.calibril.ttf"))
using (var fallbackFontStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(Assembly.GetExecutingAssembly().GetName().Name +".Resources.calibril.ttf"))
{
LoadOptions.DefaultGraphicEngine = DefaultGraphicEngine.CreateWithFontsAndSystemFonts(fallbackFontStream);
}

30
be/Modules/Shared/src/Win_in.Sfs.Shared.Application/SfsCrudWithDetailsAppServiceBase.cs

@ -8,11 +8,15 @@ using System.Linq.Expressions;
using System.Text.Json;
using System.Threading;
using System.Threading.Tasks;
using DocumentFormat.OpenXml.Math;
using DocumentFormat.OpenXml.Spreadsheet;
using EFCore.BulkExtensions;
using JetBrains.Annotations;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
using Microsoft.Net.Http.Headers;
using Volo.Abp;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
@ -324,8 +328,30 @@ public abstract class SfsCrudWithDetailsAppServiceBase<TEntity, TEntityDto, TReq
var result = await ImportInternalAsync(requestInput, inputFileBytes).ConfigureAwait(false);
var bytes = result.FileContents;
result.FileContents = null;
HttpContextAccessor.HttpContext.Response.Headers.Add("X-Response", JsonSerializer.Serialize(new { result.ExceptionMessage, result.FileName, result.FileCode, result }));
return new FileContentResult(bytes, ExportImportService.ContentType) { FileDownloadName = result.FileName };
HttpContextAccessor.HttpContext.Response.Headers.AccessControlExposeHeaders="X-Response";
HttpContextAccessor.HttpContext.Response.Headers.Add("X-Response",
JsonSerializer.Serialize(new { result.ExceptionMessage, result.FileName, result.FileCode, result }));
var resultAction = new TestResult(bytes, ExportImportService.ContentType) { FileDownloadName = result.FileName };
resultAction.errorNum = result.ErrorNum;
resultAction.successNum = resultAction.successNum;
return resultAction;
}
public class TestResult: FileContentResult
{
public byte[]_bytes { get; set; }
public int errorNum { get; set; }
public int successNum { get; set; }
public TestResult([NotNull] byte[] fileContents, [NotNull] string contentType) : base(fileContents, contentType)
{
}
public TestResult([NotNull] byte[] fileContents, [NotNull] MediaTypeHeaderValue contentType) : base(fileContents, contentType)
{
}
}
/// <summary>

2
be/Modules/Shared/src/Win_in.Sfs.Shared.Host/ModuleBase.cs

@ -255,7 +255,7 @@ public abstract class ModuleBase<T> : AbpModule where T : AbpModule
.ToArray()
)
//.AllowAnyOrigin()//允许所有跨域
.WithAbpExposedHeaders()
//.WithAbpExposedHeaders()
.SetIsOriginAllowedToAllowWildcardSubdomains()
.AllowAnyHeader()
.AllowAnyMethod()

Loading…
Cancel
Save