Exemple #1
0
 public ActionResult Retract(int fChatId)
 {
     //查詢筆記資料夾
     CChatFactory.fn聊聊更新(fChatId);
     //查詢指定筆記內容
     return(new ApiResult());
 }
Exemple #2
0
        public ActionResult Read(int fMemberTo)
        {
            CMember member = (CMember)Session[CMemberSession.Session_Login_User];//會員

            //查詢筆記資料夾
            CChatFactory.fn聊聊已讀更新(fMemberTo, member);
            //查詢指定筆記內容
            return(new ApiResult());
        }
Exemple #3
0
        public ActionResult Search(int fMemberTo)
        {
            CMember member = (CMember)Session[CMemberSession.Session_Login_User];//會員
            //查詢筆記資料夾
            var mlschat = CChatFactory.fn聊聊個人查詢(member, fMemberTo).Select(n => n).ToList();

            //查詢指定筆記內容

            return(new ContentResult()
            {
                ContentEncoding = Encoding.UTF8,
                Content = JsonSerializer.Serialize(mlschat),
                ContentType = "json"
            });
        }
Exemple #4
0
        public ActionResult Insert()
        {
            int     i      = Convert.ToInt32(HttpContext.Request.Form["fMemberTo"]);
            string  m      = HttpContext.Request.Form["fMessage"];
            CMember member = (CMember)Session[CMemberSession.Session_Login_User];//會員
            CChat   c      = new CChat();

            c.fSubmitDateTime = DateTime.UtcNow.AddHours(08);
            c.fMessage        = m;
            c.fIsRead         = false;
            c.fIsRetract      = false;
            c.fMemberFrom     = member.fMemberId;
            c.fMemberTo       = i;
            c.fProductId      = 0;
            CChatFactory.fn聊聊新增(c);
            GlobalHost.ConnectionManager.GetHubContext <ChatHub>().Clients.Group(i.ToString()).newMessage(member.fMemberId, m, DateTime.UtcNow.AddHours(08), 0);
            return(new ApiResult());
        }
        public ActionResult ProductIndex(int ProductId)
        {
            if (Session[CMemberSession.Session_Login_User] == null)
            {
                return(RedirectToAction("../Member/Login"));
            }
            CMember member     = (CMember)Session[CMemberSession.Session_Login_User];
            var     lsChatBeau = CChatFactory.fn聊聊查詢(member).Select(n => new { from = n.fMemberFrom, to = n.fMemberTo, time = n.fSubmitDateTime }).OrderByDescending(n => n.time).Distinct().ToList();
            List <CChatBeauViewModel> lsChatBeauVM = new List <CChatBeauViewModel>();

            ViewBag.ProductId = ProductId;
            foreach (var q in lsChatBeau)
            {
                if (q.from == member.fMemberId)
                {
                    var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.to).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
                    if (lsChatBeauVM.Any(n => n.BeauId == q.to) == false)
                    {
                        lsChatBeauVM.Add(new CChatBeauViewModel()
                        {
                            Beau   = w.Single().surname + w.Single().name,
                            BeauId = q.to,
                            MyID   = q.from
                        });
                    }
                }
                else
                {
                    var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.from).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
                    if (lsChatBeauVM.Any(n => n.BeauId == q.from) == false)
                    {
                        lsChatBeauVM.Add(new CChatBeauViewModel()
                        {
                            Beau   = w.Single().surname + w.Single().name,
                            BeauId = q.from,
                            MyID   = q.to
                        });
                    }
                }
            }
            return(View(lsChatBeauVM));
        }
        //會員個人聊天商城通知-------------------------------------------------------------\\
        public ActionResult MemberMessage()
        {
            CMember member123  = Session[CMemberSession.Session_Login_User] as CMember;
            var     SelectChat = CChatFactory.fn聊聊查詢(member123);
            List <CMemberMessageViewModel> MemberMessageVM = new List <CMemberMessageViewModel>();

            foreach (var i in SelectChat)
            {
                if (i.fMemberTo == member123.fMemberId)
                {
                    MemberMessageVM.Add(new CMemberMessageViewModel()
                    {
                        fMemberFrom     = i.fMemberFrom,
                        fMessage        = i.fMessage,
                        fSubmitDateTime = i.fSubmitDateTime.ToString()
                    });
                }
            }
            int Count = MemberMessageVM.Count();

            return(PartialView(MemberMessageVM));
        }
Exemple #7
0
        //登入後主畫面-------------------------------------------------------------------------------\\
        public ActionResult MyHome(string name, string id, CNotice c)
        {
            CMember member = Session[CMemberSession.Session_Login_User] as CMember;

            //創造一組亂數字串不重複的訂單編號
            var str     = "123456789ABCDEFGHIJKLMNPQRSTUVWXYZabcdefhijklmnorstuvwxz";
            var next    = new Random();
            var builder = new StringBuilder();

            for (var i = 0; i < 10; i++)
            {
                builder.Append(str[next.Next(0, str.Length)]);
            }

            //MerchantID(不可變動),MerchantTradeNo(亂數訂單編號),MerchantTradeDate(抓取當前日期時間)
            int    MerchantID        = 2000132;
            var    MerchantTradeNo   = builder;
            string MerchantTradeDate = DateTime.UtcNow.AddHours(08).ToString("yyyy/MM/dd hh:mm:ss");
            /*tring ReturnUrl = "https://localhost:44300/Home/MyHome?id=" + MerchantTradeNo;*/
            string ReturnUrl   = "https://noteledge.azurewebsites.net/Home/MyHome?id=" + MerchantTradeNo;
            string ProductName = "Notedge尊爵鑽石豪華VIP頂級會員";
            int    Amount      = 99;
            //把需要的資料作串接
            string Url = "HashKey=5294y06JbISpM5x9&ChoosePayment=ALL&ChooseSubPayment=&ClientBackURL=" + ReturnUrl + "&EncryptType=1&ItemName="
                         + ProductName
                         + "&MerchantID="
                         + MerchantID
                         + "&MerchantTradeDate="
                         + MerchantTradeDate
                         + "&MerchantTradeNo="
                         + MerchantTradeNo
                         + "&PaymentType=aio&ReturnURL=" + ReturnUrl + "&StoreID=&TotalAmount=" + Amount + "&TradeDesc=建立全金流測試訂單&HashIV=v77hoKGq4kWxNNIS";
            //串接好的資料轉成Encoded
            var Encoded = System.Web.HttpUtility.UrlEncode(Url);
            //Encoded 轉成 小寫 encoded
            var encoded = Encoded.ToLower();
            //呼叫sha256_hash(encoded)轉換成SHA256 在轉換大寫
            string SHA256 = sha256_hash(encoded).ToUpper();

            //把資料傳到前端
            ViewBag.MerchantID        = MerchantID;
            ViewBag.MerchantTradeNo   = MerchantTradeNo;
            ViewBag.MerchantTradeDate = MerchantTradeDate;
            ViewBag.SHA256            = SHA256;
            ViewBag.Url         = ReturnUrl;
            ViewBag.ProductName = ProductName;
            ViewBag.Amount      = Amount;


            if (id != null)
            {
                List <CMember> SelecteMember = CMemberFactory.fn會員查詢();
                CMember        cMember       = SelecteMember.FirstOrDefault(n => n.fMemberId == member.fMemberId);
                cMember.fIsVIP      = true;
                cMember.fMoneyPoint = cMember.fMoneyPoint + 500;
                CMemberFactory.fn會員更新(cMember);
                //成為VIP新增通知----------------------------------------------------------------------\\
                c.fNoticeDatetime = DateTime.UtcNow.AddHours(08);
                c.fNoticeContent  = cMember.fFirstName + cMember.fLastName + "您已成為Notedge尊爵鑽石豪華VIP頂級會員";
                c.fCategoryType   = "系統";
                c.fLink           = "連結";
                c.fMemberId       = member.fMemberId;
                CNoticeFactory.fn通知訊息新增(member, c);
                Session[CMemberSession.Session_Login_User] = cMember;

                if (Session[CMemberSession.Session_Login_User] == null && name == null)
                {
                    Session[CMemberSession.Session_Login_User] = null;
                    return(RedirectToAction("../Home/Index"));
                }
                else
                {
                    ViewBag.name = name;
                    return(View("../Home/MyHome", "_Layout"));
                }
            }
            if (Session[CMemberSession.Session_Login_User] == null && name == null)
            {
                Session[CMemberSession.Session_Login_User] = null;
                return(RedirectToAction("../Home/Index"));
            }
            else
            {
                if (name == null)
                {
                    var            SelectNoticess = CNoticeFactory.fn通知訊息查詢(member).Where(n => n.fCategoryType == "銷售" || n.fCategoryType == "評價留言").OrderByDescending(n => n.fNoticeDatetime);
                    var            SelectChats    = CChatFactory.fn聊聊查詢(member).Where(n => n.fMemberTo == member.fMemberId).OrderByDescending(n => n.fSubmitDateTime);
                    int            MCounts        = SelectChats.Count();
                    int            SCounts        = SelectNoticess.Count();
                    CMemberMessage memberMessage  = new CMemberMessage();

                    if (Session[CMemberSession.Session_Message_Count] == null)
                    {
                        memberMessage.MessageBell = MCounts;
                        Session[CMemberSession.Session_Message_Count] = memberMessage;
                    }
                    if (Session[CMemberSession.Session_sale_Count] == null)
                    {
                        memberMessage.SaleBell = SCounts;
                        Session[CMemberSession.Session_sale_Count] = memberMessage;
                    }
                    return(View("../Home/MyHome", "_Layout"));
                }
                else
                {
                    ViewBag.name = name;
                    return(View("../Home/MyHome", "_Layout"));
                }
            }
        }
        // GET: Chat
        public ActionResult Index(int?productid, int?sellerid, string message)
        {
            if (Session[CMemberSession.Session_Login_User] == null)
            {
                return(RedirectToAction("../Member/Login"));
            }
            CMember member = (CMember)Session[CMemberSession.Session_Login_User];

            if (productid == null || productid == 0)
            {
                var lsChatBeau = CChatFactory.fn聊聊查詢(member).Select(n => new { from = n.fMemberFrom, to = n.fMemberTo, time = n.fSubmitDateTime }).OrderByDescending(n => n.time).Distinct().ToList();
                var lsChat     = CChatFactory.fn聊聊查詢(member).Select(n => n).ToList();
                List <CChatViewModel>     lsChatVM     = new List <CChatViewModel>();
                List <CChatBeauViewModel> lsChatBeauVM = new List <CChatBeauViewModel>();

                foreach (var q in lsChatBeau)
                {
                    if (q.from == member.fMemberId)
                    {
                        var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.to).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
                        var e = CChatFactory.fn聊聊未讀查詢(q.from, q.to).ToList();
                        if (lsChatBeauVM.Any(n => n.BeauId == q.to) == false)
                        {
                            lsChatBeauVM.Add(new CChatBeauViewModel()
                            {
                                Beau   = w.Single().surname + w.Single().name,
                                BeauId = q.to,
                                MyID   = q.from,
                                nRead  = e.Single().fProductId
                            });
                        }
                    }
                    else
                    {
                        var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.from).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
                        var e = CChatFactory.fn聊聊未讀查詢(q.from, q.to).ToList();
                        if (lsChatBeauVM.Any(n => n.BeauId == q.from) == false)
                        {
                            lsChatBeauVM.Add(new CChatBeauViewModel()
                            {
                                Beau   = w.Single().surname + w.Single().name,
                                BeauId = q.from,
                                MyID   = q.to,
                                nRead  = e.Single().fProductId
                            });
                        }
                    }
                }
                return(View(lsChatBeauVM));
            }
            else
            {
                CChat c = new CChat();
                c.fSubmitDateTime = DateTime.UtcNow.AddHours(08);
                c.fMessage        = message;
                c.fIsRead         = false;
                c.fIsRetract      = false;
                c.fMemberFrom     = member.fMemberId;
                c.fMemberTo       = Convert.ToInt32(sellerid);
                c.fProductId      = Convert.ToInt32(productid);
                CChatFactory.fn聊聊新增(c);
                GlobalHost.ConnectionManager.GetHubContext <ChatHub>().Clients.Group(sellerid.ToString()).newMessage(member.fMemberId, message, DateTime.UtcNow.AddHours(08), Convert.ToInt32(productid));
                var lsChatBeau = CChatFactory.fn聊聊查詢(member).Select(n => new { from = n.fMemberFrom, to = n.fMemberTo, time = n.fSubmitDateTime }).OrderByDescending(n => n.time).Distinct().ToList();
                var lsChat     = CChatFactory.fn聊聊查詢(member).Select(n => n).ToList();
                List <CChatViewModel>     lsChatVM     = new List <CChatViewModel>();
                List <CChatBeauViewModel> lsChatBeauVM = new List <CChatBeauViewModel>();

                foreach (var q in lsChatBeau)
                {
                    if (q.from == member.fMemberId)
                    {
                        var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.to).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
                        if (lsChatBeauVM.Any(n => n.BeauId == q.to) == false)
                        {
                            lsChatBeauVM.Add(new CChatBeauViewModel()
                            {
                                Beau   = w.Single().surname + w.Single().name,
                                BeauId = q.to,
                                MyID   = q.from
                            });
                        }
                    }
                    else
                    {
                        var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.from).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
                        if (lsChatBeauVM.Any(n => n.BeauId == q.from) == false)
                        {
                            lsChatBeauVM.Add(new CChatBeauViewModel()
                            {
                                Beau   = w.Single().surname + w.Single().name,
                                BeauId = q.from,
                                MyID   = q.to
                            });
                        }
                    }
                }
                return(View(lsChatBeauVM));
            }


            //foreach (var q in lsChat)
            //{
            //    var p = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.fMemberFrom ).Select(n => new { surname = n.fFirstName,name = n.fLastName}).ToList();
            //    var o = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.fMemberTo).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
            //    if(q.fMemberFrom == member.fMemberId)
            //    {
            //        var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.fMemberTo).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
            //        lsChatVM.Add(new CChatViewModel()
            //        {
            //            beau = w.Single().surname+w.Single().name,
            //            beauId = q.fMemberTo,
            //            fromchatname = p.Single().surname + p.Single().name,
            //            tochatname = o.Single().surname + o.Single().name,
            //            fChatId = q.fChatId,
            //            fSubmitDateTime = q.fSubmitDateTime,
            //            fMessage = q.fMessage,
            //            fIsRead = q.fIsRead,
            //            fIsRetract = q.fIsRetract,
            //            fMemberFrom = q.fMemberFrom,
            //            fMemberTo = q.fMemberTo,
            //            fProductId = q.fProductId
            //        });
            //    }
            //    else
            //    {
            //        var w = CMemberFactory.fn會員查詢().Where(t => t.fMemberId == q.fMemberFrom).Select(n => new { surname = n.fFirstName, name = n.fLastName }).ToList();
            //        lsChatVM.Add(new CChatViewModel()
            //        {
            //            beau = w.Single().surname + w.Single().name,
            //            beauId = q.fMemberFrom,
            //            fromchatname = p.Single().surname + p.Single().name,
            //            tochatname = o.Single().surname + o.Single().name,
            //            fChatId = q.fChatId,
            //            fSubmitDateTime = q.fSubmitDateTime,
            //            fMessage = q.fMessage,
            //            fIsRead = q.fIsRead,
            //            fIsRetract = q.fIsRetract,
            //            fMemberFrom = q.fMemberFrom,
            //            fMemberTo = q.fMemberTo,
            //            fProductId = q.fProductId
            //        });
            //    }

            //}
        }