Ejemplo n.º 1
0
        public ActionResult AddFeedbackproduct(Feedbackproduct feedbackproduct)
        {
            if (TryUpdateModel(feedbackproduct, new string[] { "Feedbackproductname" }) && ModelState.IsValid)
            {
                feedbackproduct.Feedbackproductid = Guid.NewGuid();
                feedbackproduct.Uuid       = Guid.NewGuid();
                feedbackproduct.Createdate = DateTime.Now;
                feedbackproduct.Updatedate = DateTime.Now;
                feedbackproductService.Create(feedbackproduct);
                foreach (Feedbackdetail feedbackdetail in feedbackproduct.Feedbackdetail)
                {
                    feedbackdetail.Setid             = Guid.NewGuid();
                    feedbackdetail.Feedbackproductid = feedbackproduct.Feedbackproductid;
                    feedbackdetailService.Create(feedbackdetail);
                }
                feedbackproductService.SaveChanges();

                IEnumerable <Members> member = membersService.Get();
                foreach (Members thismember in member)
                {
                    Memberauthorization memberauth = new Memberauthorization();
                    memberauth.Id                = Guid.NewGuid();
                    memberauth.Memberid          = thismember.Memberid;
                    memberauth.Feedbackproductid = feedbackproduct.Feedbackproductid;
                    memberauth.Checked           = true;
                    memberauthorizationService.Create(memberauth);
                }
                memberauthorizationService.SaveChanges();
            }
            return(RedirectToAction("Feedbackproduct"));
        }
Ejemplo n.º 2
0
        public ActionResult EditFeedbackproduct(Guid Feedbackproductid, ICollection <Feedbackdetail> Feedbackdetail)
        {
            Feedbackproduct feedbackproduct = feedbackproductService.GetByID(Feedbackproductid);

            if (TryUpdateModel(feedbackproduct, new string[] { "Feedbackproductname" }) && ModelState.IsValid)
            {
                //更新產品價格
                foreach (Feedbackdetail new_feedbackdetail in Feedbackdetail)
                {
                    if (feedbackproduct.Feedbackdetail.ToList().Exists(a => a.Setid == new_feedbackdetail.Setid))
                    {
                        Feedbackdetail feedbackdetail = feedbackproduct.Feedbackdetail.Where(a => a.Setid == new_feedbackdetail.Setid).FirstOrDefault();
                        feedbackdetail.Money = new_feedbackdetail.Money;
                    }
                    else
                    {
                        new_feedbackdetail.Setid             = Guid.NewGuid();
                        new_feedbackdetail.Feedbackproductid = Feedbackproductid;
                        feedbackproduct.Feedbackdetail.Add(new_feedbackdetail);
                    }
                }
                feedbackproductService.Update(feedbackproduct);
                feedbackproductService.SaveChanges();
            }
            return(RedirectToAction("Feedbackproduct"));
        }
Ejemplo n.º 3
0
        public ActionResult DeleteFeedbackproduct(Guid productid, int p)
        {
            Feedbackproduct feedbackproduct = feedbackproductService.GetByID(productid);

            feedbackproductService.Delete(feedbackproduct);
            feedbackproductService.SaveChanges();
            return(RedirectToAction("Feedbackproduct", new { p = p }));
        }
Ejemplo n.º 4
0
        public ActionResult EditFeedbackproduct(Guid productid, int p)
        {
            ViewBag.pageNumber = p;
            Feedbackproduct           feedbackproduct = feedbackproductService.GetByID(productid);
            IEnumerable <Memberlevel> Levelname       = memberlevelService.Get();

            ViewBag.Levelname = Levelname;
            return(View(feedbackproduct));
        }
Ejemplo n.º 5
0
        /*** 更新會員互惠列表 ***/
        public JsonResult UpdateAccount(string Id, string Ordernumber, string Memberid, string FacebookCookie, int AccountStatus, string Facebookid)
        {
            if (Id == "heo_order")
            {
                IEnumerable <Memberlevel> memberlevel = memberlevelService.Get().Where(a => a.Isenable == 1);                                              // 撈除了真人以外的層級
                Order           order           = orderService.Get().Where(a => a.Ordernumber == Ordernumber).FirstOrDefault();                            // 該訂單的詳細資料
                Members         member          = membersService.GetByID(Guid.Parse(Memberid));                                                            // 該會員的詳細資料
                Feedbackproduct feedbackproduct = feedbackproductService.Get().Where(a => a.Feedbackproductname.Contains(order.Service)).FirstOrDefault(); // 該訂單之產品資料
                if (AccountStatus == 0 || AccountStatus == 1)                                                                                              // 帳號需驗證、帳密錯誤、更改密碼
                {
                    /**** 將登入失敗寫入資料庫 ****/
                    Memberloginrecord Memberloginrecord = new Memberloginrecord();
                    Memberloginrecord.Memberid   = Guid.Parse(Memberid);
                    Memberloginrecord.Status     = 2;
                    Memberloginrecord.Createdate = DateTime.Now;
                    memberloginrecordService.Create(Memberloginrecord);
                    memberloginrecordService.SaveChanges();
                    /**** 寫入TXT檔 *****/
                    using (StreamWriter sw = new StreamWriter(@"C:\Users\wadmin\Desktop\HEO_order.txt", true))
                    {
                        sw.Write("HEO訂單問題回報 會員帳號:" + member.Account + "登入有問題(密碼更改or帳密錯誤)");
                        sw.Write(Environment.NewLine);
                        sw.Write(DateTime.Now);
                        sw.Write(Environment.NewLine);
                    }
                }
                else if (AccountStatus == 2)     // 按讚成功
                {
                    /*** 改訂單剩餘人數 ***/
                    order.Remains -= 1;
                    orderService.SpecificUpdate(order, new string[] { "Remains" });
                    orderService.SaveChanges();
                    /**** 將登入成功寫入資料庫 ****/
                    Memberloginrecord Memberloginrecord = new Memberloginrecord();
                    Memberloginrecord.Memberid   = Guid.Parse(Memberid);
                    Memberloginrecord.Status     = 1;
                    Memberloginrecord.Createdate = DateTime.Now;
                    memberloginrecordService.Create(Memberloginrecord);
                    memberloginrecordService.SaveChanges();
                }
                else if (AccountStatus == 3)    // 找不到讚的位置
                {
                    /***** 寄信給我 ****/
                    order.OrderStatus = 3;      //訂單改為失敗
                    orderService.SpecificUpdate(order, new string[] { "OrderStatus" });
                    orderService.SaveChanges();
                    /**** 寫入TXT檔 *****/
                    using (StreamWriter sw = new StreamWriter(@"C:\Users\wadmin\Desktop\HEO_order.txt", true))
                    {
                        sw.Write("HEO訂單問題回報 訂單編號:" + order.Ordernumber + "有問題," + member.Account + "(找不到讚的位置)");
                        sw.Write(Environment.NewLine);
                        sw.Write(DateTime.Now);
                        sw.Write(Environment.NewLine);
                    }
                }
                else    // 已按過讚
                {
                    /**** 寫入TXT檔 *****/
                    using (StreamWriter sw = new StreamWriter(@"C:\Users\wadmin\Desktop\HEO_order.txt", true))
                    {
                        sw.Write("HEO訂單問題回報 訂單編號:" + order.Ordernumber + "有問題," + member.Account + "(已按過讚)");
                        sw.Write(Environment.NewLine);
                        sw.Write(DateTime.Now);
                        sw.Write(Environment.NewLine);
                    }
                }
                if (order.Ordernumber.Contains("heo"))
                {
                    /*** HEO內部下單 ***/
                    /*** 更新會員的FacebookId ***/
                    member.Facebookid = Facebookid;
                    /*** 更新會員的Cookie *****/
                    member.Facebookcookie = FacebookCookie;
                    membersService.SpecificUpdate(member, new string[] { "Facebookcookie", "Facebookid" });
                    /*** 將會員寫到該訂單的互惠會員列表 ***/
                    Orderfaceooklist orderfacebooklist = new Orderfaceooklist();
                    orderfacebooklist.Memberid          = member.Memberid;
                    orderfacebooklist.Feedbackproductid = feedbackproduct.Feedbackproductid;
                    orderfacebooklist.Facebookaccount   = member.Account;
                    orderfacebooklist.Orderid           = order.Orderid;
                    orderfacebooklist.Createdate        = DateTime.Now;
                    orderfacebooklist.Updatedate        = DateTime.Now;
                    //orderfacebooklistService.Create(orderfacebooklist);
                    member.Orderfaceooklist.Add(orderfacebooklist);
                    membersService.SaveChanges();
                    return(this.Json("Success"));
                }
                else
                {
                    /**** HDZ餵來的訂單 ****/
                    /*** 更新訂單成本及判斷該會員的層級,並且撥對應的回饋金給該會員 ****/
                    if (member.Is_import == 0)           // 判斷該會員非後台匯入的會員
                    {
                        if (member.Isreal == true)       // 判斷該會員是否為真人
                        {
                            order.Cost           += 1.0 * Convert.ToDouble(feedbackproduct.Feedbackdetail.FirstOrDefault(a => a.Memberlevel.Levelname == "真人").Money);
                            member.Feedbackmoney += order.Cost;
                        }
                        else
                        {
                            foreach (Memberlevel level in memberlevel)
                            {
                                if (member.Memberlevel.Levelname == level.Levelname)
                                {
                                    order.Cost += 1.0 * Convert.ToDouble(feedbackproduct.Feedbackdetail.FirstOrDefault(a => a.Memberlevel.Levelname == level.Levelname).Money);
                                }
                            }
                        }
                    }

                    orderService.SpecificUpdate(order, new string[] { "Cost" });
                    /*** 將會員寫到該訂單的互惠會員列表 ***/
                    Orderfaceooklist orderfacebooklist = new Orderfaceooklist();
                    orderfacebooklist.Memberid          = member.Memberid;
                    orderfacebooklist.Feedbackproductid = feedbackproduct.Feedbackproductid;
                    orderfacebooklist.Facebookaccount   = member.Account;
                    orderfacebooklist.Orderid           = order.Orderid;
                    orderfacebooklist.Createdate        = DateTime.Now;
                    orderfacebooklist.Updatedate        = DateTime.Now;
                    order.Orderfaceooklist.Add(orderfacebooklist);
                    orderService.SaveChanges();
                    // orderfacebooklistService.Create(orderfacebooklist);
                    /*** 判斷該會員的層級,並且撥對應的回饋金給該會員 ***/
                    if (member.Is_import == 0)           // 判斷該會員非後台匯入的會員
                    {
                        if (member.Isreal == true)       // 判斷該會員是否為真人
                        {
                            member.Feedbackmoney += Convert.ToInt32(feedbackproduct.Feedbackdetail.FirstOrDefault(a => a.Memberlevel.Levelname == "真人").Money);
                        }
                        else
                        {
                            member.Feedbackmoney += Convert.ToInt32(feedbackproduct.Feedbackdetail.FirstOrDefault(a => a.Levelid == member.Levelid).Money);
                        }
                    }
                    /*** 更新該會員的FacebookId ***/
                    member.Facebookid = Facebookid;
                    /*** 更新該會員的Cookie *****/
                    member.Facebookcookie = FacebookCookie;
                    membersService.SpecificUpdate(member, new string[] { "Facebookcookie", "Feedbackmoney", "Facebookid" });
                    membersService.SaveChanges();
                    return(this.Json("Success"));
                }
            }
            else
            {
                string status = "Error";
                return(this.Json(status));
            }
        }
Ejemplo n.º 6
0
        /*** Service要帳密 ***/
        public JsonResult GetAccount(string Id, int number, string Ordernumber)
        {
            if (Id == "heo_order")
            {
                Setting         setting         = settingService.Get().FirstOrDefault();
                Order           order           = orderService.Get().Where(a => a.Ordernumber == Ordernumber).FirstOrDefault();                                                                                                   // 撈訂單的詳細資料
                Feedbackproduct feedbackproduct = feedbackproductService.Get().Where(a => a.Feedbackproductname.Contains(order.Service)).FirstOrDefault();                                                                        // 撈訂單產品的詳細資料
                IEnumerable <Orderfaceooklist> orderfacebookList = orderfacebooklistService.Get().Where(a => a.Order.Ordernumber == Ordernumber);                                                                                 // 撈訂單之前的按讚名單紀錄
                IEnumerable <Order>            old_order         = orderService.Get().Where(x => x.Ordernumber != order.Ordernumber).Where(c => c.Service == feedbackproduct.Feedbackproductname).Where(a => a.Url == order.Url); // 撈所有訂單裡網址為訂單的資料
                List <get_old_member>          MemberList        = new List <get_old_member>();
                /**** 判斷訂單是不是HEO內部的單 ***/
                if (order.Ordernumber.Contains("heo"))
                {
                    /*** 先將自己給排除掉 ****/
                    MemberList.Add(
                        new get_old_member
                    {
                        Memberid = order.Members.Memberid
                    });
                }
                /**** 將這張單的按讚列表的人排除掉 *****/
                if (orderfacebookList.Count() > 0)
                {
                    foreach (Orderfaceooklist thisorderfacebookList in orderfacebookList)
                    {
                        MemberList.Add(
                            new get_old_member
                        {
                            Memberid = Guid.Parse(thisorderfacebookList.Memberid.ToString())
                        }
                            );
                    }
                }
                /*** 將同網址的訂單的按站讚列表的人排除掉 ****/
                if (old_order.Count() > 0)
                {
                    foreach (Order thisold_order in old_order)
                    {
                        IEnumerable <Orderfaceooklist> oldorderfacebooklist = orderfacebooklistService.Get().Where(a => a.Orderid == thisold_order.Orderid);
                        foreach (Orderfaceooklist thisoldorderfaceooklist in oldorderfacebooklist)
                        {
                            MemberList.Add(
                                new get_old_member
                            {
                                Memberid = Guid.Parse(thisoldorderfaceooklist.Memberid.ToString())
                            }
                                );
                        }
                    }
                }

                Guid VipLevelid = memberlevelService.Get().Where(a => a.Levelname == "VIP").FirstOrDefault().Levelid;   // VIP層級的ID

                if (order.Ordernumber.Contains("heo"))
                {
                    /*** HEO內部下的訂單 ***/
                    List <get_member> AccountList = new List <get_member>();
                    /*** 先撈前台登入、仿前台登入的使用者 ***/
                    IEnumerable <Members> members = membersService.Get().Where(s => s.Is_import == 0 || s.Is_import == 2).Where(c => c.Levelid != VipLevelid).Where(x => x.Lastdate <= Now).Where(a => a.Logindate >= Now).Where(c => c.Memberloginrecord.OrderByDescending(a => a.Createdate).FirstOrDefault().Status == 1).OrderBy(x => x.Lastdate);       // 撈層級非VIP的帳號詳細資料
                    if (members != null)
                    {
                        foreach (Members thismembers in members)
                        {
                            bool used = false;
                            int  loop;
                            for (loop = 0; loop < MemberList.Count(); loop++)
                            {
                                if (thismembers.Memberid.Equals(MemberList[loop].Memberid))
                                {
                                    used = true;
                                }
                            }
                            if (used == false)
                            {
                                AccountList.Add(
                                    new get_member
                                {
                                    memberid        = thismembers.Memberid,
                                    account         = thismembers.Account,
                                    password        = thismembers.Password,
                                    useragent_phone = thismembers.Useragent_phone,
                                    facebookcookie  = thismembers.Facebookcookie,
                                }
                                    );
                                used = false;
                            }
                        }
                        foreach (get_member entity in AccountList.Take(number))
                        {
                            /*** 將此會員更新下次互惠時間 ****/
                            Members member = membersService.GetByID(entity.memberid);
                            member.Lastdate = Now + (int)setting.Time;
                            membersService.SpecificUpdate(member, new string[] { "Lastdate" });
                        }
                        membersService.SaveChanges();
                        return(this.Json(AccountList.Take(number), JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        /*** 前台沒人可以抓了,改抓機器人 ***/
                        IEnumerable <Members> Botmembers = membersService.Get().Where(s => s.Is_import == 1).Where(x => x.Lastdate <= Now).Where(c => c.Memberloginrecord.OrderByDescending(a => a.Createdate).FirstOrDefault().Status != 2).OrderBy(x => x.Lastdate);
                        if (members != null)
                        {
                            bool used = false;
                            foreach (Members thismembers in Botmembers)
                            {
                                int loop;
                                for (loop = 0; loop < MemberList.Count(); loop++)
                                {
                                    if (thismembers.Memberid.Equals(MemberList[loop].Memberid))
                                    {
                                        used = true;
                                    }
                                }
                                if (used == false)
                                {
                                    AccountList.Add(
                                        new get_member
                                    {
                                        memberid        = thismembers.Memberid,
                                        account         = thismembers.Account,
                                        password        = thismembers.Password,
                                        useragent_phone = thismembers.Useragent_phone,
                                        facebookcookie  = thismembers.Facebookcookie,
                                    }
                                        );
                                    used = false;
                                }
                            }
                            if (AccountList.Count() < number)
                            {
                                return(this.Json("數量不足", JsonRequestBehavior.AllowGet));
                            }
                            else
                            {
                                foreach (get_member entity in AccountList.Take(number))
                                {
                                    /*** 將此會員更新下次互惠時間 ****/
                                    Members member = membersService.GetByID(entity.memberid);
                                    member.Lastdate = Now + (int)setting.Time;
                                    membersService.SpecificUpdate(member, new string[] { "Lastdate" });
                                }
                                membersService.SaveChanges();
                                return(this.Json(AccountList.Take(number), JsonRequestBehavior.AllowGet));
                            }
                        }
                        else
                        {
                            return(this.Json("數量不足", JsonRequestBehavior.AllowGet));
                        }
                    }
                }
                else
                {
                    /*** HDZ餵來的訂單 ***/
                    IEnumerable <Members> members = membersService.Get().Where(x => x.Lastdate <= Now).Where(b => b.Memberloginrecord.OrderByDescending(x => x.Createdate).FirstOrDefault().Status != 2).Where(s => s.Memberauthorization.Where(q => q.Feedbackproductid == feedbackproduct.Feedbackproductid).FirstOrDefault().Checked == true).OrderBy(x => x.Lastdate);
                    if (members != null)
                    {
                        List <get_member> AccountList = new List <get_member>();
                        bool used_accoount            = false;
                        foreach (Members thismembers in members)
                        {
                            int loop;
                            if (MemberList.Count() > 0)
                            {
                                for (loop = 0; loop < MemberList.Count(); loop++)
                                {
                                    if ((thismembers.Memberid.Equals(MemberList[loop].Memberid)) == true)
                                    {
                                        used_accoount = true;
                                    }
                                }
                            }

                            if (!used_accoount)
                            {
                                AccountList.Add(
                                    new get_member
                                {
                                    memberid        = thismembers.Memberid,
                                    account         = thismembers.Account,
                                    password        = thismembers.Password,
                                    useragent_phone = thismembers.Useragent_phone,
                                    facebookcookie  = thismembers.Facebookcookie,
                                }
                                    );
                            }
                            used_accoount = false;
                        }

                        /*** 可用人數小於該訂單所需人數 ***/
                        if (AccountList.Count < number)
                        {
                            return(this.Json("數量不足", JsonRequestBehavior.AllowGet));
                        }
                        else
                        {
                            foreach (get_member entity in AccountList.Take(number))
                            {
                                /*** 將此會員更新下次互惠時間 ****/
                                Members member = membersService.GetByID(entity.memberid);
                                member.Lastdate = Now + (int)setting.Time;
                                membersService.SpecificUpdate(member, new string[] { "Lastdate" });
                            }
                        }

                        membersService.SaveChanges();
                        return(this.Json(AccountList.Take(number), JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        return(this.Json("數量不足", JsonRequestBehavior.AllowGet));
                    }
                }
            }
            else
            {
                string status = "Error";
                return(this.Json(status, JsonRequestBehavior.AllowGet));
            }
        }