11 changed files with 205 additions and 4 deletions
@ -0,0 +1,32 @@ |
|||||
|
using BBWYB.Server.Business; |
||||
|
using BBWYB.Server.Model.Dto; |
||||
|
using Microsoft.AspNetCore.Authentication.JwtBearer; |
||||
|
using Microsoft.AspNetCore.Authorization; |
||||
|
using Microsoft.AspNetCore.Mvc; |
||||
|
|
||||
|
namespace BBWYB.Server.API.Controllers |
||||
|
{ |
||||
|
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)] |
||||
|
public class OrderMessageController : BaseApiController |
||||
|
{ |
||||
|
private OrderMessageBusiness orderMessageBusiness; |
||||
|
|
||||
|
public OrderMessageController(IHttpContextAccessor httpContextAccessor, OrderMessageBusiness orderMessageBusiness) : base(httpContextAccessor) |
||||
|
{ |
||||
|
this.orderMessageBusiness = orderMessageBusiness; |
||||
|
} |
||||
|
|
||||
|
[HttpPost] |
||||
|
public void AddOrderMessage([FromBody] AddOrderMessageRequest request) |
||||
|
{ |
||||
|
var token = GetToken(); |
||||
|
orderMessageBusiness.AddOrderMessage(request, token); |
||||
|
} |
||||
|
|
||||
|
[HttpGet("{orderId}")] |
||||
|
public IList<OrderMessageResponse> GetOrderMessageList([FromRoute] string orderId) |
||||
|
{ |
||||
|
return orderMessageBusiness.GetOrderMessageList(orderId); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,32 @@ |
|||||
|
using BBWYB.Common.Http; |
||||
|
using BBWYB.Common.Log; |
||||
|
using BBWYB.Common.Models; |
||||
|
using BBWYB.Server.Model.Dto; |
||||
|
using Newtonsoft.Json; |
||||
|
using Yitter.IdGenerator; |
||||
|
|
||||
|
namespace BBWYB.Server.Business |
||||
|
{ |
||||
|
public class MDSBusiness : BaseBusiness, IDenpendency |
||||
|
{ |
||||
|
private RestApiService restApiService; |
||||
|
public MDSBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator, RestApiService restApiService) : base(fsql, nLogManager, idGenerator) |
||||
|
{ |
||||
|
this.restApiService = restApiService; |
||||
|
} |
||||
|
|
||||
|
public UserInfoResponse GetUserInfo(string token) |
||||
|
{ |
||||
|
var httpResult = restApiService.SendRequest("http://mdsapi.qiyue666.com/", "TaskList/User/GetUserInfo", null, new Dictionary<string, string>() |
||||
|
{ |
||||
|
{ "Authorization",token} |
||||
|
}, HttpMethod.Get); |
||||
|
if (httpResult.StatusCode != System.Net.HttpStatusCode.OK) |
||||
|
throw new BusinessException($"获取用户信息失败 {httpResult.Content}"); |
||||
|
var response = JsonConvert.DeserializeObject<ApiResponse<UserInfoResponse>>(httpResult.Content); |
||||
|
if (!response.Success) |
||||
|
throw new BusinessException($"获取用户信息失败 {response.Msg}"); |
||||
|
return response.Data; |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,47 @@ |
|||||
|
using BBWYB.Common.Log; |
||||
|
using BBWYB.Common.Models; |
||||
|
using BBWYB.Server.Model.Db; |
||||
|
using BBWYB.Server.Model.Dto; |
||||
|
using Yitter.IdGenerator; |
||||
|
|
||||
|
namespace BBWYB.Server.Business |
||||
|
{ |
||||
|
public class OrderMessageBusiness : BaseBusiness, IDenpendency |
||||
|
{ |
||||
|
private MDSBusiness mdsBusiness; |
||||
|
|
||||
|
public OrderMessageBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator, MDSBusiness mdsBusiness) : base(fsql, nLogManager, idGenerator) |
||||
|
{ |
||||
|
this.mdsBusiness = mdsBusiness; |
||||
|
} |
||||
|
|
||||
|
public void AddOrderMessage(AddOrderMessageRequest request, string token) |
||||
|
{ |
||||
|
if (string.IsNullOrEmpty(request.Message) || |
||||
|
string.IsNullOrEmpty(request.OrderId) || |
||||
|
string.IsNullOrEmpty(request.OrderSn) || |
||||
|
request.ShopId == null || |
||||
|
request.ShopId == 0) |
||||
|
throw new BusinessException("留言信息不完整"); |
||||
|
|
||||
|
var user = mdsBusiness.GetUserInfo(token); |
||||
|
var om = new OrderMessage() |
||||
|
{ |
||||
|
Id = idGenerator.NewLong(), |
||||
|
CreateTime = DateTime.Now, |
||||
|
CreatorId = user.Id, |
||||
|
CreatorName = user.UserName, |
||||
|
Message = request.Message, |
||||
|
OrderId = request.OrderId, |
||||
|
OrderSn = request.OrderSn, |
||||
|
ShopId = request.ShopId |
||||
|
}; |
||||
|
fsql.Insert(om).ExecuteAffrows(); |
||||
|
} |
||||
|
|
||||
|
public IList<OrderMessageResponse> GetOrderMessageList(string orderId) |
||||
|
{ |
||||
|
return fsql.Select<OrderMessage>().Where(om => om.OrderId == orderId).ToList<OrderMessageResponse>(); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
using FreeSql.DataAnnotations; |
||||
|
|
||||
|
namespace BBWYB.Server.Model.Db |
||||
|
{ |
||||
|
|
||||
|
[Table(Name = "ordermessage", DisableSyncStructure = true)] |
||||
|
public partial class OrderMessage |
||||
|
{ |
||||
|
|
||||
|
[Column(IsPrimary = true)] |
||||
|
public long Id { get; set; } |
||||
|
|
||||
|
[Column(DbType = "datetime")] |
||||
|
public DateTime? CreateTime { get; set; } |
||||
|
|
||||
|
[Column(StringLength = 50)] |
||||
|
public string CreatorId { get; set; } |
||||
|
|
||||
|
[Column(StringLength = 50)] |
||||
|
public string CreatorName { get; set; } |
||||
|
|
||||
|
[Column(StringLength = 500)] |
||||
|
public string Message { get; set; } |
||||
|
|
||||
|
[Column(StringLength = 50)] |
||||
|
public string OrderId { get; set; } |
||||
|
|
||||
|
[Column(StringLength = 50)] |
||||
|
public string OrderSn { get; set; } |
||||
|
|
||||
|
public long? ShopId { get; set; } |
||||
|
|
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
namespace BBWYB.Server.Model.Dto |
||||
|
{ |
||||
|
public class AddOrderMessageRequest |
||||
|
{ |
||||
|
public DateTime? CreateTime { get; set; } |
||||
|
|
||||
|
public string Message { get; set; } |
||||
|
|
||||
|
public string OrderId { get; set; } |
||||
|
|
||||
|
public string OrderSn { get; set; } |
||||
|
|
||||
|
public long? ShopId { get; set; } |
||||
|
} |
||||
|
} |
@ -0,0 +1,11 @@ |
|||||
|
namespace BBWYB.Server.Model.Dto |
||||
|
{ |
||||
|
public class UserInfoResponse |
||||
|
{ |
||||
|
public string Id { get; set; } |
||||
|
|
||||
|
public string UserName { get; set; } |
||||
|
|
||||
|
//其余字段需要用到的时候再扩充
|
||||
|
} |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
using BBWYB.Server.Model.Db; |
||||
|
|
||||
|
namespace BBWYB.Server.Model.Dto |
||||
|
{ |
||||
|
public class OrderMessageResponse : OrderMessage |
||||
|
{ |
||||
|
} |
||||
|
} |
Loading…
Reference in new issue