public void CouponsUpcomingExpiredMessage(string CouponType, string CouponCode, string EffectiveData, string FailData, string OpenID, LoggingSessionInfo loggingSessionInfo) { var CommonBLL = new JIT.CPOS.BS.BLL.WX.CommonBLL(); var WXTMConfigData = new WXTMConfigBLL(loggingSessionInfo).QueryByEntity(new WXTMConfigEntity() { TemplateIdShort = "OPENTM206623166", CustomerId = loggingSessionInfo.ClientID, IsDelete = 0 }, null).FirstOrDefault(); var Data = new JIT.CPOS.BS.Entity.WX.CouponsUpcomingExpired(); Data.first = new DataInfo() { value = WXTMConfigData.FirstText, color = WXTMConfigData.FirstColour }; Data.keyword1 = new DataInfo() { value = CouponType, color = WXTMConfigData.Colour1 }; //券类型 Data.keyword2 = new DataInfo() { value = CouponCode, color = WXTMConfigData.Colour1 }; //券码 Data.keyword3 = new DataInfo() { value = EffectiveData, color = WXTMConfigData.Colour1 }; //生效日期 Data.keyword4 = new DataInfo() { value = FailData, color = WXTMConfigData.Colour1 }; //失效日期 Data.remark = new DataInfo() { value = WXTMConfigData.RemarkText, color = WXTMConfigData.RemarkColour }; // return SendMatchWXTemplateMessage(WXTMConfigData.TemplateID, null, null, null, null, null, null, Data, null, "1", OpenID, null, loggingSessionInfo); //下面往redis里存入数据 var response = RedisOpenAPI.Instance.CCCouponToBeExpired().SetCouponToBeExpired(new CC_CouponToBeExpired { CustomerID = loggingSessionInfo.ClientID, ConfigData = new CC_ConfigData { LogSession = loggingSessionInfo.JsonSerialize(), OpenID = OpenID, TemplateID = WXTMConfigData.TemplateID, // VipID = VipID }, CouponToBeExpiredData = new CC_CouponToBeExpiredData { first = new CC_DataInfo { value = Data.first.value, color = Data.first.color }, keyword1 = new CC_DataInfo { value = Data.keyword1.value, color = Data.keyword1.color }, keyword2 = new CC_DataInfo { value = Data.keyword2.value, color = Data.keyword2.color }, keyword3 = new CC_DataInfo { value = Data.keyword3.value, color = Data.keyword3.color }, keyword4 = new CC_DataInfo { value = Data.keyword4.value, color = Data.keyword4.color }, remark = new CC_DataInfo { value = Data.remark.value, color = Data.remark.color } } }); //如果往缓存redis里写入不成功,还是按照原来的老方法直接发送** if (response.Code != ResponseCode.Success) { CommonBLL.SendMatchWXTemplateMessage(WXTMConfigData.TemplateID, null, null, null, null, null, null, Data, null, "1", OpenID, null, loggingSessionInfo); new RedisXML().RedisReadDBCount("CouponsUpcomingExpired", "优惠券即将过期通知", 2); } else { new RedisXML().RedisReadDBCount("CouponsUpcomingExpired", "优惠券即将过期通知", 1); } //return CommonBLL.SendMatchWXTemplateMessage(WXTMConfigData.TemplateID, CommonData, null, null, null, null, "8", OpenID, VipID, loggingSessionInfo); }
//读取缓存的job /// <summary> /// 订单未支付-发送微信模板消息 /// </summary> public void ProcessCouponToBeExpiredMsgGetMsg() { // var numCount = 100; var commonBLL = new CommonBLL(); // var customerIDs = CustomerBLL.Instance.GetCustomerList();//获取所有商户 foreach (var customer in customerIDs) { // var count = RedisOpenAPI.Instance.CCCouponToBeExpired().GetCouponToBeExpiredLength(new CC_CouponToBeExpired { CustomerID = customer.Key }); if (count.Code != ResponseCode.Success) { continue; } if (count.Result <= 0) { continue; } // if (count.Result < numCount) { numCount = Convert.ToInt32(count.Result); } // for (var i = 0; i < numCount; i++) { // var response = RedisOpenAPI.Instance.CCCouponToBeExpired().GetCouponToBeExpired(new CC_CouponToBeExpired { CustomerID = customer.Key }); if (response.Code == ResponseCode.Success) { var templateID = response.Result.ConfigData.TemplateID; var openID = response.Result.ConfigData.OpenID; var vipID = response.Result.ConfigData.VipID; var loggingSessionInfo = CustomerBLL.Instance.GetBSLoggingSession(customer.Key, "1"); //response.Result.ConfigData.LogSession.JsonDeserialize<LoggingSessionInfo>(); var Data = new JIT.CPOS.BS.Entity.WX.CouponsUpcomingExpired { first = new DataInfo { value = response.Result.CouponToBeExpiredData.first.value, color = response.Result.CouponToBeExpiredData.first.color }, keyword1 = new DataInfo { value = response.Result.CouponToBeExpiredData.keyword1.value, color = response.Result.CouponToBeExpiredData.keyword1.color }, keyword2 = new DataInfo { value = response.Result.CouponToBeExpiredData.keyword2.value, color = response.Result.CouponToBeExpiredData.keyword2.color }, keyword3 = new DataInfo { value = response.Result.CouponToBeExpiredData.keyword3.value, color = response.Result.CouponToBeExpiredData.keyword3.color }, keyword4 = new DataInfo { value = response.Result.CouponToBeExpiredData.keyword4.value, color = response.Result.CouponToBeExpiredData.keyword4.color }, remark = new DataInfo { value = response.Result.CouponToBeExpiredData.remark.value, color = response.Result.CouponToBeExpiredData.remark.color } }; commonBLL.SendMatchWXTemplateMessage(templateID, null, null, null, null, null, null, Data, null, "1", openID, null, loggingSessionInfo); } } } }