token解析变更

This commit is contained in:
李鹏军 2024-06-25 17:53:56 +08:00
parent c63bf09c08
commit 47ea3b8f82
2 changed files with 60 additions and 7 deletions

View File

@ -6,6 +6,7 @@ using SJZY.Track.Domain.Aggregates.OrderAggregate;
using SJZY.Track.Domain.Aggregates.TrackPushAggregate; using SJZY.Track.Domain.Aggregates.TrackPushAggregate;
using SJZY.Track.Domain.Consts; using SJZY.Track.Domain.Consts;
using SJZY.UserCenter.HttpApi.Services; using SJZY.UserCenter.HttpApi.Services;
using Volo.Abp.Http.Client.DynamicProxying;
namespace SJZY.Track.Application.Services.ProvideServices; namespace SJZY.Track.Application.Services.ProvideServices;
@ -19,14 +20,17 @@ public class TrackPushService : ApplicationService
private readonly IOrderRepository _orderRepository; private readonly IOrderRepository _orderRepository;
private readonly ICapPublisher _capPublisher; private readonly ICapPublisher _capPublisher;
private readonly ITrackPushRecordsRepository _trackPushRecordsRepository; private readonly ITrackPushRecordsRepository _trackPushRecordsRepository;
private readonly IHttpClientProxy<IRequestCurrentUserService> _requestCurrentUserService;
public TrackPushService(IOrderRepository orderRepository public TrackPushService(IOrderRepository orderRepository
, ICapPublisher capPublisher , ICapPublisher capPublisher
, ITrackPushRecordsRepository trackPushRecordsRepository) , ITrackPushRecordsRepository trackPushRecordsRepository,
IHttpClientProxy<IRequestCurrentUserService> requestCurrentUserService)
{ {
_orderRepository = orderRepository; _orderRepository = orderRepository;
_capPublisher = capPublisher; _capPublisher = capPublisher;
_trackPushRecordsRepository = trackPushRecordsRepository; _trackPushRecordsRepository = trackPushRecordsRepository;
_requestCurrentUserService = requestCurrentUserService;
} }
/// <summary> /// <summary>
@ -50,6 +54,15 @@ public class TrackPushService : ApplicationService
throw new BusinessException(message: "一个订单都不存在"); throw new BusinessException(message: "一个订单都不存在");
} }
var userInfo = await _requestCurrentUserService.Service.GetCurrentUserBasicInfoAsync();
if (userInfo.Code != "200" || userInfo.Data is null)
{
//TODO: log || ex
throw new BusinessException(message: $"调用用户中心,获取用户信息失败:{userInfo?.Msg}");
}
var name = userInfo.Data.UserName;
foreach (var group in orders.GroupBy(x => new { x.SubSystemId, x.CustomId })) foreach (var group in orders.GroupBy(x => new { x.SubSystemId, x.CustomId }))
{ {
var trackPushEvent = new TrackPushEvent var trackPushEvent = new TrackPushEvent
@ -59,7 +72,7 @@ public class TrackPushService : ApplicationService
CustomId = group.Key.CustomId, CustomId = group.Key.CustomId,
OrderIds = group.Select(x => x.Id).ToArray(), OrderIds = group.Select(x => x.Id).ToArray(),
TrackCode = input.TrackCode, TrackCode = input.TrackCode,
OperationMan = CurrentUserRequest.CurrentUser.Name, OperationMan = name,
}; };
await _capPublisher.PublishAsync(GlobalConst.TrackManualPushSubscribe, trackPushEvent); await _capPublisher.PublishAsync(GlobalConst.TrackManualPushSubscribe, trackPushEvent);

View File

@ -7,6 +7,7 @@ using SJZY.Track.Domain.Aggregates.TrackDetailsAggregate;
using SJZY.Track.Domain.Consts; using SJZY.Track.Domain.Consts;
using SJZY.Track.Domain.Queries; using SJZY.Track.Domain.Queries;
using SJZY.UserCenter.HttpApi.Services; using SJZY.UserCenter.HttpApi.Services;
using Volo.Abp.Http.Client.DynamicProxying;
namespace SJZY.Track.Application.Services.ProvideServices; namespace SJZY.Track.Application.Services.ProvideServices;
@ -20,14 +21,17 @@ public partial class TrackService : ApplicationService, ITrackService
private readonly IOrderRepository _orderRepository; private readonly IOrderRepository _orderRepository;
private readonly IProvideQueries _provideQueries; private readonly IProvideQueries _provideQueries;
private readonly ICapPublisher _capPublisher; private readonly ICapPublisher _capPublisher;
private readonly IHttpClientProxy<IRequestCurrentUserService> _requestCurrentUserService;
public TrackService(IOrderRepository orderRepository, IProvideQueries provideQueries, ICapPublisher capPublisher, public TrackService(IOrderRepository orderRepository, IProvideQueries provideQueries, ICapPublisher capPublisher,
ITrackDetailsRepository trackDetailsRepository) ITrackDetailsRepository trackDetailsRepository,
IHttpClientProxy<IRequestCurrentUserService> requestCurrentUserService)
{ {
_orderRepository = orderRepository; _orderRepository = orderRepository;
_provideQueries = provideQueries; _provideQueries = provideQueries;
_provideQueries = provideQueries; _provideQueries = provideQueries;
_capPublisher = capPublisher; _capPublisher = capPublisher;
_requestCurrentUserService = requestCurrentUserService;
_trackDetailsRepository = trackDetailsRepository; _trackDetailsRepository = trackDetailsRepository;
} }
@ -50,6 +54,15 @@ public partial class TrackService : ApplicationService, ITrackService
throw new BusinessException(message: $"订单:{input.OrderNo}不存在"); throw new BusinessException(message: $"订单:{input.OrderNo}不存在");
} }
var userInfo = await _requestCurrentUserService.Service.GetCurrentUserBasicInfoAsync();
if (userInfo.Code != "200" || userInfo.Data is null)
{
//TODO: log || ex
throw new BusinessException(message: $"调用用户中心,获取用户信息失败:{userInfo?.Msg}");
}
var name = userInfo.Data.UserName;
// 新增/更新轨迹 // 新增/更新轨迹
var @event = ObjectMapper.Map<UpsertTrackInput, TrackUpsertEvent>(input); var @event = ObjectMapper.Map<UpsertTrackInput, TrackUpsertEvent>(input);
@event.SubSystemId = order.SubSystemId; @event.SubSystemId = order.SubSystemId;
@ -63,7 +76,7 @@ public partial class TrackService : ApplicationService, ITrackService
CustomId = order.CustomId CustomId = order.CustomId
} }
}; };
@event.OperationMan = CurrentUserRequest.CurrentUser.Name; @event.OperationMan = name;
await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event); await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event);
return new UnifyResultDto(true, true); return new UnifyResultDto(true, true);
} }
@ -89,6 +102,15 @@ public partial class TrackService : ApplicationService, ITrackService
x.Id, x.OrderNo, x.SubSystemId, x.CustomId x.Id, x.OrderNo, x.SubSystemId, x.CustomId
}); });
var userInfo = await _requestCurrentUserService.Service.GetCurrentUserBasicInfoAsync();
if (userInfo.Code != "200" || userInfo.Data is null)
{
//TODO: log || ex
throw new BusinessException(message: $"调用用户中心,获取用户信息失败:{userInfo?.Msg}");
}
var name = userInfo.Data.UserName;
foreach (var group in orders.GroupBy(x => x.SubSystemId)) foreach (var group in orders.GroupBy(x => x.SubSystemId))
{ {
// 新增/更新轨迹 // 新增/更新轨迹
@ -107,7 +129,7 @@ public partial class TrackService : ApplicationService, ITrackService
TrackPlace = input.TrackPlace, TrackPlace = input.TrackPlace,
TrackTime = input.TrackTime!.Value, TrackTime = input.TrackTime!.Value,
TrackTimeZone = input.TrackTimeZone!.Value, TrackTimeZone = input.TrackTimeZone!.Value,
OperationMan = CurrentUserRequest.CurrentUser.Name OperationMan = name
}; };
await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event); await _capPublisher.PublishAsync(GlobalConst.TrackUpsertSubscribe, @event);
} }
@ -143,13 +165,22 @@ public partial class TrackService : ApplicationService, ITrackService
throw new BusinessException(message: "没有一个轨迹代码是可删的"); throw new BusinessException(message: "没有一个轨迹代码是可删的");
} }
var userInfo = await _requestCurrentUserService.Service.GetCurrentUserBasicInfoAsync();
if (userInfo.Code != "200" || userInfo.Data is null)
{
//TODO: log || ex
throw new BusinessException(message: $"调用用户中心,获取用户信息失败:{userInfo?.Msg}");
}
var name = userInfo.Data.UserName;
// 删除轨迹 // 删除轨迹
var @event = new TrackDeleteEvent var @event = new TrackDeleteEvent
{ {
OrderIds = new[] { order.Id }, OrderIds = new[] { order.Id },
TrackCodes = codes.Select(x => x.TrackCode).ToList(), TrackCodes = codes.Select(x => x.TrackCode).ToList(),
SubSystemId = order.SubSystemId, SubSystemId = order.SubSystemId,
OperationMan = CurrentUserRequest.CurrentUser.Name OperationMan = name
}; };
await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event); await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
@ -182,6 +213,15 @@ public partial class TrackService : ApplicationService, ITrackService
throw new BusinessException(message: "没有一个轨迹代码是可删的"); throw new BusinessException(message: "没有一个轨迹代码是可删的");
} }
var userInfo = await _requestCurrentUserService.Service.GetCurrentUserBasicInfoAsync();
if (userInfo.Code != "200" || userInfo.Data is null)
{
//TODO: log || ex
throw new BusinessException(message: $"调用用户中心,获取用户信息失败:{userInfo?.Msg}");
}
var name = userInfo.Data.UserName;
// 删除轨迹 // 删除轨迹
foreach (var group in codes.GroupBy(x => x.OrderId)) foreach (var group in codes.GroupBy(x => x.OrderId))
{ {
@ -190,7 +230,7 @@ public partial class TrackService : ApplicationService, ITrackService
OrderIds = group.Select(x => x.OrderId).ToArray(), OrderIds = group.Select(x => x.OrderId).ToArray(),
TrackCodes = input.TrackCodes, TrackCodes = input.TrackCodes,
SubSystemId = orders.First(x => x.Id == group.Key).SubSystemId, SubSystemId = orders.First(x => x.Id == group.Key).SubSystemId,
OperationMan = CurrentUserRequest.CurrentUser.Name OperationMan = name
}; };
await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event); await _capPublisher.PublishAsync(GlobalConst.TrackDeleteSubscribe, @event);
} }