예제 #1
0
        public ActionResult Index()
        {
            int orgID  = int.Parse(DESEncrypt.Decrypt(ViewBag.EnOrgID));
            var member = MemberData.GetMember();

            if (member != null)
            {
                ViewBag.NickName    = member.NickName;
                ViewBag.HeaderImage = member.HeaderImage;
            }
            IDictionary <string, object> dict = new Dictionary <string, object>();

            dict.Add("OrgID", orgID);
            dict.Add("DonationID", Constants.DonationID.GDX1);
            StringBuilder where = new StringBuilder();
            where.AppendFormat("OrgID=@OrgID and DonationID=@DonationID and IsPay='1'", orgID, (int)Constants.DonationType.Shop1);
            IList <decimal> counts = orderBLL.GetCount(where.ToString(), dict);

            ViewBag.RecordCount = counts[0];
            ViewBag.TotalMoney  = counts[1];

            string     url  = Request.Url.AbsoluteUri;
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo share = port.GetShareInfo(url);

            share.Title       = string.Format("{0}在线功德箱", "净名寺");
            share.Link        = url;
            share.Image       = Request.Url.Scheme + "://" + Request.Url.Authority + "/Content/Org/JMS/logo.jpg";
            share.Content     = "欢迎转发分享,功德无量";
            ViewBag.ShareInfo = share;
            return(View());
        }
예제 #2
0
        public ActionResult Index()
        {
            int orgID = int.Parse(DESEncrypt.Decrypt(ViewBag.EnOrgID));

            StringBuilder where = new StringBuilder();
            where.AppendFormat("orders.OrgID={0} and orders.OrderType={1} and orders.IsPay='1'", orgID, (int)Constants.DonationType.Shop1);
            IList <decimal> counts = orderBLL.GetCount(where.ToString());

            ViewBag.RecordCount = counts[0];
            ViewBag.TotalMoney  = counts[1];
            string     url  = Request.Url.AbsoluteUri;
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo share = port.GetShareInfo(url);

            share.Title       = string.Format("{0}广种福田", "净名寺");
            share.Link        = url;
            share.Image       = Request.Url.Scheme + "://" + Request.Url.Authority + "/Content/Org/JMS/logo.jpg";
            share.Content     = "欢迎转发分享,功德无量";
            ViewBag.ShareInfo = share;
            var member = MemberData.GetMember();

            if (member != null)
            {
                ViewBag.NickName    = member.NickName;
                ViewBag.HeaderImage = member.HeaderImage;
            }

            //大梁A 9918ac35 - a983 - 40c8 - 822a - 2a71d4866c0f
            var dla = goodsBLL.GetModel("9918ac35-a983-40c8-822a-2a71d4866c0f");

            ViewBag.dla      = dla.Balance + dla.Frozen;
            ViewBag.dlaCount = dla.Amount - dla.Balance - dla.Frozen;
            //大梁B 3a2a9ebe-9900-4ede-966f-23e343c09445
            var dlb = goodsBLL.GetModel("3a2a9ebe-9900-4ede-966f-23e343c09445");

            ViewBag.dlb      = dlb.Balance + dlb.Frozen;
            ViewBag.dlbCount = dlb.Amount - dlb.Balance - dlb.Frozen;
            //副梁A fbc6178f-ba45-4376-b0e1-fe22c36d564b
            var fla = goodsBLL.GetModel("fbc6178f-ba45-4376-b0e1-fe22c36d564b");

            ViewBag.fla      = fla.Balance + fla.Frozen;
            ViewBag.flaCount = fla.Amount - fla.Balance - fla.Frozen;
            //副梁B e49e5b82-83ce-417d-8591-aa216e195099
            var flb = goodsBLL.GetModel("e49e5b82-83ce-417d-8591-aa216e195099");

            ViewBag.flb      = flb.Balance + flb.Frozen;
            ViewBag.flbCount = flb.Amount - flb.Balance - flb.Frozen;
            //佛像 e540dac1-171f-4b75-a852-612de07a9550
            var fx = goodsBLL.GetModel("e540dac1-171f-4b75-a852-612de07a9550");

            ViewBag.fx      = fx.Balance + fx.Frozen;
            ViewBag.fxCount = fx.Amount - fx.Balance - fx.Frozen;

            return(View());
        }
예제 #3
0
        public JsonResult SignShared(string url)
        {
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo      share = port.GetShareInfo(url);
            JavaScriptSerializer a     = new JavaScriptSerializer();

            return(GetSucceedResult(new {
                ShareInfo = share
            }, null));
        }
예제 #4
0
        public ActionResult List()
        {
            string     url  = Request.Url.AbsoluteUri;
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo share = port.GetShareInfo(url);

            share.Title       = string.Format("{0}日行一善", "净名寺");
            share.Link        = url;
            share.Image       = Request.Url.Scheme + "://" + Request.Url.Authority + "/Content/Org/JMS/logo.jpg";
            share.Content     = "欢迎转发分享,功德无量";
            ViewBag.ShareInfo = share;
            return(View());
        }
예제 #5
0
        public ActionResult Order(string id)
        {
            Model.TD_Donation_Info model = donationBLL.GetModel(id);
            string     url  = Request.Url.AbsoluteUri;
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo share = port.GetShareInfo(url);

            share.Title       = string.Format("{0}项目捐款", "净名寺");
            share.Link        = url;
            share.Image       = Request.Url.Scheme + "://" + Request.Url.Authority + "/Content/Org/JMS/logo.jpg";
            share.Content     = "欢迎转发分享,功德无量";
            ViewBag.ShareInfo = share;
            return(View(model));
        }
예제 #6
0
        public JsonResult CreateMenu()
        {
            string where = string.Format("OrgID={0}", 1);
            IList <Model.TD_WeiXin_Menu> list = menuBLL.GetList(where, null, null);
            WeiXinMenus menus   = GetTree(list);
            WeiXinPort  port    = new WeiXinPort();
            string      message = port.CreateMenu(menus);

            if (string.IsNullOrEmpty(message))
            {
                return(GetSucceedResult(1, "发布成功"));
            }
            else
            {
                return(GetErrorResult(message));
            }
        }
예제 #7
0
        private ActionResult ResponseMessage()
        {
            WeiXinPort port = new WeiXinPort();

            port.Subscribe += (openID) => {
                DateTime now = DateTime.Now;
                Model.TD_WeiXin_Member member = memberBLL.GetModelByOpenID(openID);
                if (member == null)
                {
                    ThirdPortUserInfo userInfo = port.GetUserInfo(openID);
                    member             = new Model.TD_WeiXin_Member();
                    member.MemberID    = Guid.NewGuid().ToString();
                    member.NickName    = userInfo.nickname;
                    member.Sex         = (short)userInfo.sex;
                    member.Country     = userInfo.country;
                    member.Province    = userInfo.province;
                    member.City        = userInfo.city;
                    member.OpenID      = userInfo.openid;
                    member.HeaderImage = userInfo.headimgurl;
                    member.CreateTime  = now;
                    member.IsFocused   = "1";
                    member.FocusTime   = now;
                    member.OrgID       = int.Parse(DESEncrypt.Decrypt(Request["oid"]));
                    memberBLL.Add(member);
                }
                else
                {
                    member.IsFocused = "1";
                    member.FocusTime = now;
                    memberBLL.Update(member);
                }
            };
            port.UnSubscribe += (openID) => {
                DateTime now = DateTime.Now;
                Model.TD_WeiXin_Member member = memberBLL.GetModelByOpenID(openID);
                if (member != null)
                {
                    member.IsFocused   = "0";
                    member.UnFocusTime = now;
                    memberBLL.Update(member);
                }
            };
            string response = port.ProcessMessage(Request.InputStream);

            return(Content(response));
        }
예제 #8
0
        public ActionResult Detail(string m)
        {
            decimal money = 0;

            if (m == "r")
            {
                Random random = new Random();
                int    r1     = random.Next(1, 100);
                if (r1 % 10 == 7 ||
                    r1 % 10 == 8 ||
                    r1 % 10 == 9)
                {
                    money = r1 + (decimal)0.88;
                }
                else
                {
                    int r2 = random.Next(1, 100);
                    if (r2 > 50)
                    {
                        money = r1 + (decimal)0.68;
                    }
                    else
                    {
                        money = r1 + (decimal)0.66;
                    }
                }
            }
            else
            {
                money = decimal.Parse(m);
            }
            ViewBag.Money = money;
            string     url  = Request.Url.AbsoluteUri;
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo share = port.GetShareInfo(url);

            share.Title       = string.Format("{0}日行一善", "净名寺");
            share.Link        = url;
            share.Image       = Request.Url.Scheme + "://" + Request.Url.Authority + "/Content/Org/JMS/logo.jpg";
            share.Content     = "欢迎转发分享,功德无量";
            ViewBag.ShareInfo = share;
            return(View());
        }
예제 #9
0
        public ActionResult Index()
        {
            int orgID = int.Parse(DESEncrypt.Decrypt(ViewBag.EnOrgID));

            StringBuilder where = new StringBuilder();
            where.AppendFormat("orders.OrgID={0} and orders.OrderType={1} and orders.IsPay='1'", orgID, (int)Constants.DonationType.Shop1);
            IList <decimal> counts = orderBLL.GetCount(where.ToString());

            ViewBag.RecordCount = counts[0];
            ViewBag.TotalMoney  = counts[1];
            string     url  = Request.Url.AbsoluteUri;
            WeiXinPort port = new WeiXinPort();

            port.InitSignature(url);
            ThirdSharedInfo share = port.GetShareInfo(url);

            share.Title       = string.Format("{0}广种福田", "净名寺");
            share.Link        = url;
            share.Image       = Request.Url.Scheme + "://" + Request.Url.Authority + "/Content/Org/JMS/logo.jpg";
            share.Content     = "欢迎转发分享,功德无量";
            ViewBag.ShareInfo = share;
            return(View());
        }
예제 #10
0
        public ActionResult PayForShop(string orderid, string url)
        {
            var member = MemberData.GetMember();
            var now    = DateTime.Now;

            if (string.IsNullOrEmpty(orderid))
            {
                return(GotoErrorResult("未找到该订单"));
            }
            Model.TD_Shop_Order model = shopOrderBLL.GetModel(orderid);
            if (model == null)
            {
                return(GotoErrorResult("未找到该订单"));
            }
            if (model.Status == (int)Constants.OrderStatus.Cancel)
            {
                return(GotoErrorResult("订单已取消"));
            }
            if (model.IsPay == "0")
            {
                bool exists = weiXinPayBLL.OrderIsPay(model.OrderID, 1);
                if (exists)
                {
                    return(GotoErrorResult("订单已微信支付,请联系平台"));
                }
                string     ip   = Request.UserHostAddress;
                WeiXinPort port = new WeiXinPort();
                try
                {
                    port.InitSignature(HttpContext.Request.Url.AbsoluteUri);
                    string domain = Request.Url.Scheme + "://" + Request.Url.Authority;
                    port.InitPaySignature(model.OrderID.ToString(), model.RealPrice.Value, member.OpenID, domain, ip);
                    if (!string.IsNullOrEmpty(port.ErrorMessage))
                    {
                        return(GotoErrorResult(port.ErrorMessage));
                    }
                    Model.TD_Order_WeiXinPay weiXinPay = new Model.TD_Order_WeiXinPay();
                    weiXinPay.OrderID   = model.OrderID.ToString();
                    weiXinPay.Timestamp = port.Timestamp;
                    weiXinPay.NonceStr  = port.NonceStr;
                    weiXinPay.Package   = port.Package;
                    weiXinPay.Status    = 0;
                    weiXinPay.PayTime   = now;
                    weiXinPayBLL.Add(weiXinPay);
                    ViewBag.ThirdPortConfig = new ThirdSharedInfo()
                    {
                        AppID        = port.AppID,
                        NonceStr     = port.NonceStr,
                        Timestamp    = port.Timestamp,
                        Package      = port.Package,
                        SignType     = port.SignType,
                        Signature    = port.Signature,
                        PaySignature = port.PaySignature
                    };
                }
                catch
                { }
                ViewBag.BackURL = HttpUtility.UrlEncode(url);
                return(View(model));
            }
            else
            {
                return(GotoErrorResult("订单状态有误"));
            }
        }
예제 #11
0
        private bool CheckSignature(string signature, string timestamp, string nonce)
        {
            WeiXinPort port = new WeiXinPort();

            return(port.CheckSignature(signature, timestamp, nonce));
        }