using cylsg.Core; using cylsg.Model.ECTEModel; using EzCoreNet.Redis; using EzInitqMessageDef; using EzWechat; using Furion; using Furion.FriendlyException; using InitQ.Abstractions; using InitQ.Attributes; using MapsterMapper; using Models; using Newtonsoft.Json; using SqlSugar; using StackExchange.Profiling.Internal; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace EzInitQ { /// /// 川印 消息队列处理函数 /// public class CY_MessageServiser: IRedisSubscribe { /// /// 川印厂商ID /// public Guid firmId => new Guid("88B49967-D590-452C-93C6-0049A75FA5FF"); /// /// 司机问题反馈 分发问题 /// /// [Subscribe(InitQMessages.CYOSDeiverWentiFankuai)] public async void CYOSDeiverWentiFanKui(string msg) { ISqlSugarClient _OAsqlSugarClient = App.GetService().AsTenant().GetConnection("ECTESTOADB"); var userdata = JsonConvert.DeserializeObject(msg); if(userdata ==null) throw Oops.Oh($"队列CYOSDeiverWentiFankuai 处理失败,请检查消息格式++++++++{msg}"); if(userdata.OA_DeliverPlanPaicheID==null) throw Oops.Oh($"队列CYOSDeiverWentiFankuai 处理失败,没有获取到派车ID+++++++++{msg}"); //var DbC = new BaseRepository(); var data= await _OAsqlSugarClient.Queryable().Includes(x=>x.Driver).Where(x=>x.Keyid==userdata.OA_DeliverPlanPaicheID).FirstAsync(); if(data==null) throw Oops.Oh($"队列CYOSDeiverWentiFankuai 处理失败,没有获取到派车信息+++++++++{msg}"); if(data.Driver==null) { throw Oops.Oh($"队列CYOSDeiverWentiFankuai 处理失败,没有获取到司机信息+++++++++{msg}"); } //var WorkReminderDb = new BaseRepository(); //订单ID var SellerOrderId = await _OAsqlSugarClient.Queryable().Where(x => x.DeliverPlanPaicheid == data.Keyid).Select(x=>x.SellerOrderId).FirstAsync(); string? orderDocumentName = null; if (SellerOrderId != null) orderDocumentName = await _OAsqlSugarClient.Queryable().Where(x => x.SellerOrderId == SellerOrderId).Select(x => x.DocumentName).FirstAsync(); //创建人 var creerter = await _OAsqlSugarClient.Queryable().Where(x => x.MemberId == data.Creater).Select(x => x.Name).FirstAsync(); if(creerter!=null) { await _OAsqlSugarClient.Insertable(new OA_WorkReminder { Content = $" 派送:{data.CompanyName} 地址:{data.Dizhi}, {data.Remark??""} {orderDocumentName??""}。 送货反馈:{userdata.WenTi}", RemenderObject = creerter, Remender = data.Driver.Name, RemenderTime= userdata.CreateTime }).ExecuteCommandAsync(); } //派车任务 var PaiCheRenwu= await _OAsqlSugarClient.Queryable().Includes(x=>x.SentStaff).Where(x=>x.DeliverPlanPaicheId==data.Keyid).FirstAsync(); if(PaiCheRenwu!=null) { await _OAsqlSugarClient.Insertable(new OA_WorkReminder { Content = $" 派送:{data.CompanyName} 地址:{data.Dizhi}, {data.Remark ?? ""} {orderDocumentName ?? ""}。 送货反馈:{userdata.WenTi}", Remender = data.Driver.Name , RemenderObject = PaiCheRenwu?.SentStaff?.Name??"", RemenderTime = userdata.CreateTime }).ExecuteCommandAsync(); } if (data.Zerenren!=null) { //var zherenrenDb = new BaseRepository(); var zherenren = await _OAsqlSugarClient.Queryable().Where(x=>x.Keyid==data.Zerenren&&x.FirmId== firmId).Select(x=>x.Name).FirstAsync(); if(zherenren!=null) { await _OAsqlSugarClient.Insertable(new OA_WorkReminder { Content = $" 派送:{data.CompanyName} 地址:{data.Dizhi}, {data.Remark ?? ""} {orderDocumentName ?? ""}。 送货反馈:{userdata.WenTi}", RemenderObject = zherenren, Remender = data.Driver.Name, RemenderTime = userdata.CreateTime }).ExecuteCommandAsync(); } } } } }