Exemplo n.º 1
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderCreate(string templateId, SiteSettings settings, OrderInfo order, MemberInfo user)
        {
            TemplateMessage message = null;

            if (!string.IsNullOrWhiteSpace(user.OpenId))
            {
                string          weixinToken = settings.WeixinToken;
                TemplateMessage message2    = new TemplateMessage {
                    Url        = "",
                    TemplateId = templateId,
                    Touser     = user.OpenId
                };
                TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[5];
                TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart {
                    Name  = "first",
                    Value = "尊敬的" + order.Username + ",您的订单信息如下:"
                };
                partArray[0] = part;
                TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart {
                    Name  = "orderno",
                    Value = order.OrderId
                };
                partArray[1] = part2;
                TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
                {
                    Name  = "refundproduct",
                    Color = "#ff3300",
                    Value = "¥" + order.GetTotal().ToString("F2")
                };

                partArray[2] = part3;
                TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
                {
                    Name  = "refundno",
                    Color = "#ff3300",
                    Value = "" + order.GetNumber()
                };

                partArray[3] = part4;
                TemplateMessage.MessagePart part5 = new TemplateMessage.MessagePart
                {
                    Name  = "remark",
                    Color = "#ff3300",
                    Value = "下单时间:" + order.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")
                };

                partArray[4]  = part5;
                message2.Data = partArray;
                message       = message2;
            }
            return(message);
        }
Exemplo n.º 2
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderCreate(string templateId, SiteSettings settings, OrderInfo order, MemberInfo user)
        {
            TemplateMessage message = null;

            if (!string.IsNullOrWhiteSpace(user.OpenId))
            {
                string          weixinToken = settings.WeixinToken;
                TemplateMessage message2    = new TemplateMessage
                {
                    Url        = "",
                    TemplateId = templateId,
                    Touser     = user.OpenId
                };

                #region 读取订单详情
                StringBuilder prostr = new StringBuilder();
                foreach (LineItemInfo item in order.LineItems.Values)
                {
                    prostr.AppendFormat(",{0}", item.ItemDescription);
                }
                if (prostr.Length > 0)
                {
                    prostr.Remove(0, 1);
                }
                #endregion

                TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[] {
                    new TemplateMessage.MessagePart {
                        Name = "first", Value = "你好,你已下单成功。"
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword1", Value = order.OrderId
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword2", Value = order.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword3", Color = "#ff3300", Value = "¥" + order.GetTotal().ToString("F2")
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword4", Value = prostr.ToString()
                    },
                    new TemplateMessage.MessagePart {
                        Name = "remark", Value = "感谢您的支持."
                    }
                };
                message2.Data = partArray;
                message       = message2;
            }
            return(message);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 支付成功微信提醒
        /// </summary>
        /// <param name="context"></param>
        private void sendPaySuccessMsg(System.Web.HttpContext context)
        {
            try
            {
                context.Response.ContentType = "application/json";
                string orderId = context.Request["orderid"];
                string uid     = context.Request["uid"];
                WriteLog("进入");
                string result = string.Empty;
                WriteLog("参数:" + orderId + " " + uid);
                MemberInfo member    = MemberProcessor.GetMember(int.Parse(uid));
                OrderInfo  orderInfo = OrderHelper.GetOrderInfo(orderId);

                SiteSettings    masterSettings  = SettingsManager.GetMasterSettings(false);
                TemplateMessage templateMessage = new TemplateMessage();
                templateMessage.Url        = "";                                            //单击URL
                templateMessage.TemplateId = "Rx4a6JWjSRlIwctN0SuwGa82cjpzBnpZQWdwHz9CWQE"; //Globals.GetMasterSettings(true).WX_Template_01;// "b1_ARggaBzbc5owqmwrZ15QPj9Ksfs0p5i64C6MzXKw";//消息模板ID
                templateMessage.Touser     = member.OpenId;                                 //用户OPENID


                TemplateMessage.MessagePart[] messateParts = new TemplateMessage.MessagePart[] {
                    new TemplateMessage.MessagePart {
                        Name = "first", Value = "您好,微信支付已成功!"
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword1", Value = orderInfo.OrderId
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword2", Value = orderInfo.GetTotal().ToString("F2") + "元"
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword3", Value = orderInfo.ModeName
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword4", Value = orderInfo.PayDate.ToString()
                    },
                    new TemplateMessage.MessagePart {
                        Name = "remark", /*Color = "#FF0000"*/ Value = "多谢您的惠顾!下单成功,正在等待接单,请留意接单通知!"
                    }
                };
                templateMessage.Data = messateParts;
                TemplateApi.SendMessage(TokenApi.GetToken_Message(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret), templateMessage);
                result = "ok";
                context.Response.Write("{\"result\":\"" + result + "\"}");
            }
            catch (Exception ex)
            {
                WriteLog(ex.Message);
            }
        }
Exemplo n.º 4
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderPay(string templateId, SiteSettings settings, MemberInfo user, string orderId, decimal fee)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[5];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart {
                Name  = "first",
                Value = "您好,您的订单支付成功。"
            };
            partArray[0] = part;

            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
            {
                //Name = "orderID",
                Name  = "keyword1",
                Value = orderId
            };
            partArray[1] = part2;

            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart {
                Name  = "keyword2",
                Color = "#ff3300",
                Value = "¥" + fee.ToString("F2")
            };
            partArray[2] = part3;

            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart {
                Name  = "keyword3",
                Color = "#ff3300",
                Value = DateTime.Now.ToString()
            };
            partArray[3] = part4;

            TemplateMessage.MessagePart part5 = new TemplateMessage.MessagePart {
                Name  = "remark",
                Value = "感谢您的惠顾,联系电话:" + settings.ShopTel
            };
            partArray[4]  = part5;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 5
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderClose(string templateId, SiteSettings settings, MemberInfo user, OrderInfo order, string reason)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage
            {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[5];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
            {
                Name  = "first",
                Value = "您好,您的订单已关闭,请核对"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
            {
                Name  = "transid",
                Value = order.OrderId
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
            {
                Name  = "fee",
                Color = "#ff3300",
                Value = "¥" + order.GetTotal().ToString("F2")
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
            {
                Name  = "pay_time",
                Value = (order.PayDate.ToString() != "") ? DateTime.Parse(order.PayDate.ToString()).ToString("M月d日 HH:mm:ss") : DateTime.Parse(order.OrderDate.ToString()).ToString("M月d日 HH:mm:ss")
            };
            partArray[3] = part4;
            TemplateMessage.MessagePart part5 = new TemplateMessage.MessagePart
            {
                Name  = "remark",
                Color = "#000000",
                Value = "关闭原因:" + reason
            };
            partArray[4]  = part5;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 6
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderSend(string templateId, SiteSettings settings, MemberInfo user, OrderInfo order)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage
            {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[5];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
            {
                Name  = "first",
                Value = "您好,您的订单号已经发货"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
            {
                Name  = "keyword1",
                Value = order.OrderId
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
            {
                Name  = "keyword2",
                Value = order.ExpressCompanyName
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
            {
                Name  = "keyword3",
                Value = order.ShipOrderNumber
            };
            partArray[3] = part4;
            TemplateMessage.MessagePart part5 = new TemplateMessage.MessagePart
            {
                Name  = "remark",
                Value = ""
            };
            partArray[4]  = part5;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 7
0
        /// <summary>
        /// 微信订单支付成功消息推送
        /// </summary>
        /// <param name="templateId"></param>
        /// <param name="settings"></param>
        /// <param name="user"></param>
        /// <param name="orderId"></param>
        /// <param name="fee"></param>
        /// <returns></returns>
        private static TemplateMessage GenerateWeixinMessageWhenOrderPay(string templateId, SiteSettings settings, MemberInfo user, string orderId, decimal fee)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }

            string weixinToken = settings.WeixinToken;

            TemplateMessage templateMessage = new TemplateMessage();

            templateMessage.Url        = "";          //单击URL
            templateMessage.TemplateId = templateId;  //消息模板ID
            templateMessage.Touser     = user.OpenId; //用户OPENID

            #region 读取订单详情
            StringBuilder prostr    = new StringBuilder();
            OrderInfo     orderInfo = new OrderDao().GetOrderInfo(orderId);
            foreach (LineItemInfo item in orderInfo.LineItems.Values)
            {
                prostr.AppendFormat(",{0}", item.ItemDescription);
            }
            if (prostr.Length > 0)
            {
                prostr.Remove(0, 1);
            }
            #endregion

            TemplateMessage.MessagePart[] messateParts = new TemplateMessage.MessagePart[] {
                new TemplateMessage.MessagePart {
                    Name = "first", Value = "您好,您的订单" + orderId + "支付成功"
                },
                new TemplateMessage.MessagePart {
                    Name = "orderMoneySum", Color = "#ff3300", Value = "¥" + fee.ToString("F2")
                },
                new TemplateMessage.MessagePart {
                    Name = "orderProductName", Value = prostr.ToString()
                },
                new TemplateMessage.MessagePart {
                    Name = "remark", Value = "感谢您的支持."
                }
            };

            templateMessage.Data = messateParts;

            return(templateMessage);
        }
Exemplo n.º 8
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderSend(string templateId, SiteSettings settings, MemberInfo user, OrderInfo order)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart {
                Name  = "first",
                Value = "您好,您的货物" + order.GetProductNames() + "已交付" + order.ExpressCompanyName + ",单号:" + order.ShipOrderNumber + "。快递将会尽快送达您手上。"
            };
            partArray[0] = part;

            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart {
                Name  = "keyword1",
                Value = order.OrderId
            };
            partArray[1] = part2;

            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart {
                Name = "keyword2",
                //Value = order.ExpressCompanyName
                Value = settings.ShopTel
            };
            partArray[2] = part3;
            //TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart {
            //    Name = "keyword3",
            //    Value = order.ShipOrderNumber
            //};
            //partArray[3] = part4;

            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart {
                Name  = "remark",
                Value = "欢迎您下次光临!"
            };
            partArray[3]  = part4;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 9
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderCreateManage(string templateId, SiteSettings settings, OrderInfo order, MemberInfo user)
        {
            TemplateMessage message = null;

            if (!string.IsNullOrWhiteSpace(user.OpenId))
            {
                string          weixinToken = settings.WeixinToken;
                TemplateMessage message2    = new TemplateMessage
                {
                    Url        = "",
                    TemplateId = templateId,
                    Touser     = user.OpenId
                };
                TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
                TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
                {
                    Name  = "first",
                    Value = settings.SiteName + "平台有订单提交,请注意及时处理!"
                };
                partArray[0] = part;
                TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
                {
                    Name  = "orderID",
                    Value = order.OrderId
                };
                partArray[1] = part2;
                TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
                {
                    Name  = "orderMoneySum",
                    Color = "#ff3300",
                    Value = "¥" + order.GetTotal().ToString("F2")
                };
                partArray[2] = part3;
                TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
                {
                    Name  = "remark",
                    Value = "提交人:" + order.Username + ",提交时间:" + DateTime.Now.ToString() + ",联系方式:" + order.CellPhone
                };
                partArray[3]  = part4;
                message2.Data = partArray;
                message       = message2;
            }
            return(message);
        }
Exemplo n.º 10
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderRefund(string templateId, SiteSettings settings, MemberInfo user, string orderId, decimal amount)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage
            {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
            {
                Name  = "first",
                Value = "您好,您的订单号为" + orderId + "的订单已经退款"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
            {
                Name  = "reason",
                Value = "-"
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
            {
                Name  = "refund",
                Color = "#ff3300",
                Value = "¥" + amount.ToString("F2")
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
            {
                Name  = "remark",
                Value = ""
            };
            partArray[3]  = part4;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 11
0
        private static TemplateMessage GenerateWeixinMessageWhenFindPassword(string templateId, SiteSettings settings, MemberInfo user, string password)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage
            {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
            {
                Name  = "first",
                Value = "您好,您的账号信息如下"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
            {
                Name  = "keyword1",
                Value = user.UserName
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
            {
                Name  = "keyword2",
                Value = password
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
            {
                Name  = "remark",
                Value = "请妥善保管。"
            };
            partArray[3]  = part4;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 12
0
        private static TemplateMessage GenerateWeixinMessageWhenPasswordChange(string templateId, SiteSettings settings, MemberInfo user, string passowordType)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage
            {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
            {
                Name  = "first",
                Value = "您好"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
            {
                Name  = "productName",
                Value = passowordType + "密码"
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
            {
                Name  = "time",
                Value = DateTime.Now.ToString("M月d日 HH:mm")
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart
            {
                Name  = "remark",
                Value = ""
            };
            partArray[3]  = part4;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 13
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderCreateManage(string templateId, SiteSettings settings, OrderInfo order, MemberInfo user)
        {
            TemplateMessage message = null;

            if (!string.IsNullOrWhiteSpace(user.OpenId))
            {
                string          weixinToken = settings.WeixinToken;
                TemplateMessage message2    = new TemplateMessage
                {
                    Url        = "",
                    TemplateId = templateId,
                    Touser     = user.OpenId
                };

                TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[] {
                    new TemplateMessage.MessagePart {
                        Name = "first", Value = settings.SiteName + "平台有订单提交,请注意及时处理!"
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword1", Value = order.OrderId
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword2", Value = order.OrderDate.ToString("yyyy-MM-dd HH:mm:ss")
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword3", Color = "#ff3300", Value = "¥" + order.GetTotal().ToString("F2")
                    },
                    new TemplateMessage.MessagePart {
                        Name = "keyword4", Value = ((LineItemInfo)order.LineItems.First().Value).ItemDescription + "..."
                    },
                    new TemplateMessage.MessagePart {
                        Name = "remark", Value = "提交人:" + order.Username + ",提交时间:" + DateTime.Now.ToString() + ",联系方式:" + order.CellPhone
                    }
                };

                message2.Data = partArray;
                message       = message2;
            }
            return(message);
        }
Exemplo n.º 14
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderPay(string templateId, SiteSettings settings, MemberInfo user, string orderId, decimal fee)
        {
            if (string.IsNullOrWhiteSpace(user.OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage {
                Url        = "",
                TemplateId = templateId,
                Touser     = user.OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart {
                Name  = "first",
                Value = "您好,您的订单" + orderId + "支付成功"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart {
                Name  = "orderMoneySum",
                Color = "#ff3300",
                Value = "¥" + fee.ToString("F2")
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart {
                Name  = "orderProductName",
                Value = ""
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart {
                Name  = "remark",
                Value = ""
            };
            partArray[3]  = part4;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 15
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderCreate(string templateId, SiteSettings settings, OrderInfo order, MemberInfo user)
        {
            TemplateMessage message = null;

            if (!string.IsNullOrWhiteSpace(user.OpenId))
            {
                string          weixinToken = settings.WeixinToken;
                TemplateMessage message2    = new TemplateMessage
                {
                    Url        = "",
                    TemplateId = templateId,
                    Touser     = user.OpenId
                };
                TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[3];
                TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart
                {
                    Name  = "first",
                    Value = "您的订单已提交成功!"
                };
                partArray[0] = part;
                TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart
                {
                    Name  = "orderID",
                    Value = order.OrderId
                };
                partArray[1] = part2;
                TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
                {
                    Name  = "orderMoneySum",
                    Color = "#ff3300",
                    Value = "¥" + order.GetTotal().ToString("F2")
                };
                partArray[2]  = part3;
                message2.Data = partArray;
                message       = message2;
            }
            return(message);
        }
Exemplo n.º 16
0
        private static TemplateMessage GenerateWeixinMessageWhenDistributorReg(string templateId, SiteSettings settings, DistributorsInfo duser, string OpenId, string gradeinfoName)
        {
            if (string.IsNullOrWhiteSpace(OpenId))
            {
                return(null);
            }
            string          weixinToken = settings.WeixinToken;
            TemplateMessage message2    = new TemplateMessage {
                Url        = "",
                TemplateId = templateId,
                Touser     = OpenId
            };

            TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[4];
            TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart {
                Name  = "first",
                Value = "您好,分销商资格注册成功,信息如下"
            };
            partArray[0] = part;
            TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart {
                Name  = "keyword1",
                Value = duser.StoreName
            };
            partArray[1] = part2;
            TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart {
                Name  = "keyword2",
                Value = duser.CellPhone
            };
            partArray[2] = part3;
            TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart {
                Name  = "keyword3",
                Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
            };
            partArray[3]  = part4;
            message2.Data = partArray;
            return(message2);
        }
Exemplo n.º 17
0
        private static TemplateMessage GenerateWeixinMessageWhenOrderCreate(string templateId, SiteSettings settings, OrderInfo order, MemberInfo user)
        {
            TemplateMessage message = null;

            if (!string.IsNullOrWhiteSpace(user.OpenId))
            {
                string          weixinToken = settings.WeixinToken;
                TemplateMessage message2    = new TemplateMessage {
                    Url        = "",
                    TemplateId = templateId,
                    Touser     = user.OpenId
                };
                TemplateMessage.MessagePart[] partArray = new TemplateMessage.MessagePart[6];
                TemplateMessage.MessagePart   part      = new TemplateMessage.MessagePart {
                    Name  = "first",
                    Value = "您的订单已提交成功。"
                };
                partArray[0] = part;

                TemplateMessage.MessagePart part2 = new TemplateMessage.MessagePart {
                    //Name = "orderID",
                    Name  = "keyword1",
                    Value = order.OrderId
                };
                partArray[1] = part2;

                TemplateMessage.MessagePart part3 = new TemplateMessage.MessagePart
                {
                    //Name = "orderMoneySum",
                    Name  = "keyword2",
                    Color = "#ff3300",
                    Value = order.GetProductNames()
                };
                partArray[2] = part3;


                TemplateMessage.MessagePart part4 = new TemplateMessage.MessagePart {
                    //Name = "orderMoneySum",
                    Name  = "keyword3",
                    Color = "#ff3300",
                    Value = "¥" + order.GetTotal().ToString("F2")
                };
                partArray[3] = part4;

                TemplateMessage.MessagePart part5 = new TemplateMessage.MessagePart
                {
                    //Name = "orderMoneySum",
                    Name  = "keyword4",
                    Color = "#ff3300",
                    Value = DateTime.Now.ToString()
                };
                partArray[4] = part5;

                TemplateMessage.MessagePart part6 = new TemplateMessage.MessagePart
                {
                    Name  = "remark",
                    Value = "请您尽快完成支付,咨询电话:" + settings.ShopTel
                };
                partArray[5] = part6;

                message2.Data = partArray;
                message       = message2;
            }
            return(message);
        }
Exemplo n.º 18
0
        private void btnSendGoods_Click(object sender, System.EventArgs e)
        {
            OrderInfo orderInfo = OrderHelper.GetOrderInfo(this.orderId);

            if (orderInfo != null)
            {
                ManagerInfo currentManager = ManagerHelper.GetCurrentManager();
                if (currentManager != null)
                {
                    if (orderInfo.GroupBuyId > 0 && orderInfo.GroupBuyStatus != GroupBuyStatus.Success)
                    {
                        this.ShowMsg("当前订单为团购订单,团购活动还未成功结束,所以不能发货", false);
                    }
                    else
                    {
                        if (!orderInfo.CheckAction(OrderActions.SELLER_SEND_GOODS))
                        {
                            this.ShowMsg("当前订单状态没有付款或不是等待发货的订单,所以不能发货", false);
                        }
                        else
                        {
                            if (!this.radioShippingMode.SelectedValue.HasValue)
                            {
                                this.ShowMsg("请选择配送方式", false);
                            }
                            else
                            {
                                //if (CustomConfigHelper.Instance.BrandShow == false)
                                //{
                                //if (string.IsNullOrEmpty(this.txtShipOrderNumber.Text.Trim()) || this.txtShipOrderNumber.Text.Trim().Length > 20)
                                //{
                                //    this.ShowMsg("运单号码不能为空,在1至20个字符之间", false);
                                //}
                                //}
                                //else
                                //{
                                if (string.IsNullOrEmpty(this.expressRadioButtonList.SelectedValue))
                                {
                                    this.ShowMsg("请选择物流公司", false);
                                }
                                else
                                {
                                    ShippingModeInfo shippingMode = SalesHelper.GetShippingMode(this.radioShippingMode.SelectedValue.Value, true);

                                    orderInfo.RealShippingModeId = this.radioShippingMode.SelectedValue.Value;
                                    orderInfo.RealModeName       = shippingMode.Name;
                                    ExpressCompanyInfo info4 = ExpressHelper.FindNode(this.expressRadioButtonList.SelectedValue);
                                    if (info4 != null)
                                    {
                                        orderInfo.ExpressCompanyAbb  = info4.Kuaidi100Code;
                                        orderInfo.ExpressCompanyName = info4.Name;
                                    }
                                    orderInfo.ShipOrderNumber = this.txtShipOrderNumber.Text;
                                    if (OrderHelper.SendGoods(orderInfo))
                                    {
                                        SendNoteInfo info5 = new SendNoteInfo();
                                        info5.NoteId   = Globals.GetGenerateId();
                                        info5.OrderId  = this.orderId;
                                        info5.Operator = currentManager.UserName;
                                        info5.Remark   = "后台" + info5.Operator + "发货成功";
                                        OrderHelper.SaveSendNote(info5);
                                        MemberInfo member = MemberHelper.GetMember(orderInfo.UserId);
                                        Messenger.OrderShipping(orderInfo, member);
                                        if (!string.IsNullOrEmpty(orderInfo.GatewayOrderId) && orderInfo.GatewayOrderId.Trim().Length > 0)
                                        {
                                            if (orderInfo.Gateway == "hishop.plugins.payment.ws_wappay.wswappayrequest")
                                            {
                                                PaymentModeInfo paymentMode = SalesHelper.GetPaymentMode(orderInfo.PaymentTypeId);
                                                if (paymentMode != null)
                                                {
                                                    PaymentRequest.CreateInstance(paymentMode.Gateway, HiCryptographer.Decrypt(paymentMode.Settings), orderInfo.OrderId, orderInfo.GetTotal(), "订单发货", "订单号-" + orderInfo.OrderId, orderInfo.EmailAddress, orderInfo.OrderDate, Globals.FullPath(Globals.GetSiteUrls().Home), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentReturn_url", new object[]
                                                    {
                                                        paymentMode.Gateway
                                                    })), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentNotify_url", new object[]
                                                    {
                                                        paymentMode.Gateway
                                                    })), "").SendGoods(orderInfo.GatewayOrderId, orderInfo.RealModeName, orderInfo.ShipOrderNumber, "EXPRESS");
                                                }
                                            }
                                            if (orderInfo.Gateway == "hishop.plugins.payment.weixinrequest")
                                            {
                                                SiteSettings masterSettings = SettingsManager.GetMasterSettings(false);
                                                PayClient    client         = new PayClient(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret, masterSettings.WeixinPartnerID, masterSettings.WeixinPartnerKey, masterSettings.WeixinPaySignKey);
                                                DeliverInfo  deliver        = new DeliverInfo
                                                {
                                                    TransId    = orderInfo.GatewayOrderId,
                                                    OutTradeNo = orderInfo.OrderId,
                                                    OpenId     = MemberHelper.GetMember(orderInfo.UserId).OpenId
                                                };
                                                client.DeliverNotify(deliver);
                                            }
                                        }
                                        orderInfo.OnDeliver();
                                        if (CustomConfigHelper.Instance.IsSanzuo)    //三作咖啡特殊需求:发货时,打印小票(配送票)
                                        {
                                            //this.ShowMsgAndReUrl("发货成功", true,"ManageOrders.aspx");
                                            CloseWindowAndRedirect();
                                        }
                                        else if (CustomConfigHelper.Instance.IsProLa)   //pro辣特殊需求,发货时增加消息推送
                                        {
                                            WriteLog("进入");
                                            SiteSettings    masterSettings  = SettingsManager.GetMasterSettings(false);
                                            TemplateMessage templateMessage = new TemplateMessage();
                                            templateMessage.Url        = Request.Url.Host + "/vshop/MemberOrders.aspx?status=3"; //单击URL
                                            templateMessage.TemplateId = "pPCCurFLdpgnI0ZWpr5eFJQ5bxS7xboaEW2ScBoOY4U";          //Globals.GetMasterSettings(true).WX_Template_01;// "b1_ARggaBzbc5owqmwrZ15QPj9Ksfs0p5i64C6MzXKw";//消息模板ID
                                            templateMessage.Touser     = member.OpenId;                                          //用户OPENID
                                            string productsDes = ""; int c = 0;
                                            foreach (LineItemInfo info in orderInfo.LineItems.Values)
                                            {
                                                if (c > 3)
                                                {
                                                    break;
                                                }
                                                productsDes += info.ItemDescription + ",";
                                                c++;
                                            }
                                            productsDes = productsDes.TrimEnd(',') + "等菜品";

                                            TemplateMessage.MessagePart[] messateParts = new TemplateMessage.MessagePart[] {
                                                new TemplateMessage.MessagePart {
                                                    Name = "first", Value = "亲,您的菜品已备好,配送在途!"
                                                },
                                                new TemplateMessage.MessagePart {
                                                    Name = "keyword1", Value = "订单" + orderInfo.OrderId + "开始配送"
                                                },
                                                new TemplateMessage.MessagePart {
                                                    Name = "keyword2", Value = productsDes
                                                },
                                                new TemplateMessage.MessagePart {
                                                    Name = "remark", Color = "#FF0000", Value = "预计到达时间:" + txtArriveTime.Text                        /*orderInfo.ShipToDate*/
                                                }
                                            };
                                            templateMessage.Data = messateParts;
                                            TemplateApi.SendMessage(TokenApi.GetToken_Message(masterSettings.WeixinAppId, masterSettings.WeixinAppSecret), templateMessage);
                                            this.ShowMsg("发货成功", true);
                                        }
                                        else
                                        {
                                            this.ShowMsg("发货成功", true);
                                        }
                                    }
                                    else
                                    {
                                        this.ShowMsg("发货失败", false);
                                    }
                                }
                                //}
                            }
                        }
                    }
                }
            }
        }