using CoreCms.Net.Configuration; using CoreCms.Net.DTO; using CoreCms.Net.IRepository.UnitOfWork; using CoreCms.Net.IServices; using CoreCms.Net.Loging; using CoreCms.Net.Model.Entities.baifenbingfa.DistributionSendOder; using InitQ.Abstractions; using InitQ.Attributes; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace CoreCms.Net.RedisMQ { /// /// 供应商配送订单分配记录 /// public class DistributionSendOderMQ: IRedisSubscribe { private readonly IUnitOfWork _unitOfWork; public DistributionSendOderMQ(IUnitOfWork unitOfWork) { _unitOfWork= unitOfWork; } /// /// 增加一个记录 /// /// [Subscribe(RedisMessageQueueKey.AddDistributionSendOderMQ)] public async void AddDistributionSendOder(string message) { var Param = JsonConvert.DeserializeObject(message); if(Param == null) { NLogUtil.WriteAll(NLog.LogLevel.Error, LogType.RedisMessageQueue, "AddDistributionSendOder 增加一个记录 处理失败", $"转换模型失败===》 {message}"); return; } Param.createTime = DateTime.Now; Param.createBy = "系统队列"; await _unitOfWork.GetDbClient().Insertable(Param).ExecuteCommandAsync(); } /// /// 修改状态 /// /// [Subscribe(RedisMessageQueueKey.ActiveDistributionSendOderMQ)] public async void ActiveDistributionSendOder(string message) { var Param = JsonConvert.DeserializeObject(message); if (Param == null) { NLogUtil.WriteAll(NLog.LogLevel.Error, LogType.RedisMessageQueue, "ActiveDistributionSendOder 修改状态 处理失败", $"转换模型失败===》 {message}"); return; } var oder=await _unitOfWork.GetDbClient().Queryable().Where(x => x.deliveryID == Param.deliveryID && x.userID == Param.userID).FirstAsync(); oder.upDataTime = DateTime.Now; oder.upDataBy = "ActiveDistributionSendOder 队列"; oder.description = Param.Dec; oder.sendDistributionAccept= Param.SendOderActive; await _unitOfWork.GetDbClient().Updateable(Param).ExecuteCommandAsync(); } } }