示例#1
0
 public yuOrderViewModel(TOrder p, TCupon pCupon, TMember pMember, TOrderStatus pOrderStatus)
 {
     iv_Order     = p;
     CCupon       = pCupon;
     CMember      = pMember;
     COrderStatus = pOrderStatus;
 }
        public void orderCancel(int?id)
        {
            if (id != null)
            {
                TOrder         l_order被修改  = db.TOrders.FirstOrDefault(n => n.COrderId == id);
                TMember        l_member被修改 = db.TMembers.FirstOrDefault(n => n.CMemberId == l_order被修改.CMemberId);
                TCupon         l_cupon被修改  = db.TCupons.FirstOrDefault(n => n.CCuponId == l_order被修改.CCuponId);
                TCuponCategory p折扣金額       = db.TCuponCategories.FirstOrDefault(n => n.CCuponCategoryId == l_cupon被修改.CCuponCategoryId);


                IEnumerable <TOrderDetail> table = null;
                table = db.TOrderDetails.Where(n => n.COrderId == id);

                List <TOrderDetail> list = new List <TOrderDetail>();
                foreach (var item in table)
                {
                    list.Add(item);
                }
                decimal p總價 = 0;
                decimal p價格 = 0;
                int     p數量 = 0;
                int     pID = 0;
                for (int i = 0; i < list.Count(); i++)
                {
                    //消費金額
                    p價格  = list[i].CPriceAtTheTime.Value;
                    p數量  = list[i].CQuantity.Value;
                    p總價 += (p價格 * p數量);

                    //產品庫存
                    pID = list[i].CProductId;
                    TProduct l_product被修改 = db.TProducts.FirstOrDefault(n => n.CProductId == pID);
                    l_product被修改.CQuantity += p數量;
                }

                if (l_order被修改.CPayTypeId.Value == 1)
                {
                    //無折扣
                    if (l_order被修改.CCuponId.Value == 1)
                    {
                        l_order被修改.COrderStatusId = 3;
                        l_member被修改.CDeposit     += p總價;
                    }
                    //有折扣
                    else
                    {
                        l_order被修改.COrderStatusId = 3;
                        l_member被修改.CDeposit     += (p總價 - p折扣金額.CCutPrice.Value);
                        l_cupon被修改.CBeUsed        = 0;
                    }
                }
                else
                {
                    l_order被修改.COrderStatusId = 3;
                }
                db.SaveChanges();
            }
        }
示例#3
0
        public void saveDepositResult(ViewModelForOPay returnData)
        {
            DateTime         now          = DateTime.Now;
            擺腹BuyFoodContext dbcontext    = new 擺腹BuyFoodContext();
            TMember          changeTarget = dbcontext.TMembers.FirstOrDefault(n => n.CMemberId == int.Parse(returnData.StoreID));

            if (returnData.RtnCode == 1)
            {
                TDeposit result = new TDeposit
                {
                    CMemberId        = int.Parse(returnData.StoreID),
                    CDepositTime     = now,
                    CDepositAmount   = returnData.TradeAmt,
                    CDepositRecordNo = returnData.MerchantTradeNo
                };
                dbcontext.TDeposits.Add(result);
                changeTarget.CDeposit += returnData.TradeAmt;

                int couponCategory = 0;
                switch (returnData.TradeAmt)
                {
                case 1000:
                    couponCategory = 2;
                    break;

                case 2000:
                    couponCategory = 4;
                    break;

                case 5000:
                    couponCategory = 7;
                    break;

                default:
                    break;
                }
                if (couponCategory != 0)
                {
                    string dsCode = "";
                    while (dsCode == "")
                    {
                        bool   check   = false;
                        string newCode = (new ShareFunction()).產生亂數(6);
                        var    data    = dbcontext.TCupons;
                        foreach (var item in data)
                        {
                            if (item.CDiscountCode == newCode)
                            {
                                check = true;
                                break;
                            }
                        }
                        if (!check)
                        {
                            dsCode = newCode;
                        }
                    }
                    TCupon newCoupon = new TCupon
                    {
                        CCuponCategoryId = couponCategory,
                        CMenberId        = int.Parse(returnData.StoreID),
                        CDiscountCode    = dsCode,
                        CValidDate       = now.AddDays(60),
                        CReceivedTime    = now
                    };
                    dbcontext.TCupons.Add(newCoupon);
                }
                dbcontext.SaveChanges();
            }
            string EmailContent = returnData.RtnCode == 1 ?
                                  $"已成功於{now.ToString("yyyy/MM/dd")}加值共{returnData.TradeAmt}擺腹幣" :
                                  $"加值失敗,請重新加值並確認付款內容。";

            (new ShareFunction()).sendGrid(changeTarget.CEmail, changeTarget.CName, "通知-加值結果", EmailContent);
        }
示例#4
0
        public JsonResult CreateNewMember([FromBody] CCustomerCreateViewModel newMember)
        {
            擺腹BuyFoodContext db = new 擺腹BuyFoodContext();

            var check信箱 = from n in db.TMembers
                          select n.CEmail;

            var check手機 = from n in db.TMembers
                          select n.CPhone;

            if (check信箱.Any(n => n == newMember.CEmail) == true)
            {
                return(Json("EmailRepeat"));
            }
            else if (check手機.Any(n => n == newMember.CPhone) == true)
            {
                return(Json("PhoneRepeat"));
            }
            else
            {
                string 邀請碼 = shareFun.產生亂數(6);


                newMember.CBlackList      = 0;
                newMember.CFreezeCount    = 0;
                newMember.CDeposit        = 0;
                newMember.CRegisteredTime = DateTime.Now;
                newMember.COpenMember     = 0;


                var check邀請碼 = from n in db.TMembers
                               select n.CReferrerCode;

                //抓推薦人
                if (!string.IsNullOrEmpty(newMember.code))
                {
                    var 抓推薦人 = from n in db.TMembers
                               where n.CReferrerCode == newMember.code
                               select n.CMemberId;

                    int[] 推薦人ID = 抓推薦人.ToArray();
                    newMember.CReferrerID = 推薦人ID[0];
                }
                else
                {
                    newMember.CReferrerID = null;
                }

                //防止邀請碼重複
                while (check邀請碼.Any(n => n == 邀請碼) == true)
                {
                    邀請碼 = shareFun.產生亂數(6);
                }

                newMember.CReferrerCode = 邀請碼;

                db.TMembers.Add(newMember.member);
                db.SaveChanges();

                //註冊折價卷
                var 新增註冊折價卷 = from n in db.TMembers
                              where n.CMemberId == newMember.CMemberID
                              select n.CReferrerId;

                int?[] 邀請人ID = 新增註冊折價卷.ToArray();


                if (邀請人ID[0] != null)
                {
                    TCupon 新增邀請人折價卷 = new TCupon
                    {
                        CCuponCategoryId = 2,
                        CMenberId        = (int)邀請人ID[0],
                        CBeUsed          = 0,
                        CDiscountCode    = shareFun.產生亂數(6),
                        CReceivedTime    = DateTime.Now,
                        CValidDate       = DateTime.Now.AddDays(60)
                    };
                    TCupon 新增新會員折價卷 = new TCupon
                    {
                        CCuponCategoryId = 3,
                        CMenberId        = newMember.CMemberID,
                        CBeUsed          = 0,
                        CDiscountCode    = shareFun.產生亂數(6),
                        CReceivedTime    = DateTime.Now,
                        CValidDate       = DateTime.Now.AddDays(60)
                    };
                    db.TCupons.Add(新增邀請人折價卷);
                    db.TCupons.Add(新增新會員折價卷);
                    db.SaveChanges();
                }

                //密碼雜湊
                TMember add密碼雜湊 = (from n in db.TMembers
                                   where n.CMemberId == newMember.CMemberID
                                   select n).FirstOrDefault();

                SHA1 sha1 = SHA1.Create();

                string 雜湊密碼 = shareFun.GetHash(sha1, add密碼雜湊.CPassword);

                add密碼雜湊.CPassword = 雜湊密碼;
                db.SaveChanges();

                string val信件內容 = "歡迎加入BuyFood,請點擊以下連結以開通帳號 \n" + CDictionary.LOCAL_WEBSITES + "/Customer/memberConfirm?ID=" + add密碼雜湊.CMemberId;

                shareFun.sendGrid(add密碼雜湊.CEmail, add密碼雜湊.CName, "BuyFood帳號開通認證信", val信件內容);

                return(Json(true));
            }
        }
示例#5
0
        public JsonResult CreateNewFacebookMember([FromBody] CCustomerCreateViewModel newMember)
        {
            擺腹BuyFoodContext db = new 擺腹BuyFoodContext();

            var check信箱 = from n in db.TMembers
                          select n.CEmail;

            var check手機 = from n in db.TMembers
                          select n.CPhone;

            if (check信箱.Any(n => n == newMember.CEmail) == true)
            {
                return(Json("EmailRepeat"));
            }
            else if (check手機.Any(n => n == newMember.CPhone) == true)
            {
                return(Json("PhoneRepeat"));
            }
            else
            {
                string 邀請碼 = shareFun.產生亂數(6);


                newMember.CBlackList      = 0;
                newMember.CFreezeCount    = 0;
                newMember.CDeposit        = 0;
                newMember.CRegisteredTime = DateTime.Now;
                newMember.COpenMember     = 1;


                var check邀請碼 = from n in db.TMembers
                               select n.CReferrerCode;

                //抓推薦人
                if (!string.IsNullOrEmpty(newMember.code))
                {
                    var 抓推薦人 = from n in db.TMembers
                               where n.CReferrerCode == newMember.code
                               select n.CMemberId;

                    int[] 推薦人ID = 抓推薦人.ToArray();
                    newMember.CReferrerID = 推薦人ID[0];
                }
                else
                {
                    newMember.CReferrerID = null;
                }

                //防止邀請碼重複
                while (check邀請碼.Any(n => n == 邀請碼) == true)
                {
                    邀請碼 = shareFun.產生亂數(6);
                }

                newMember.CReferrerCode = 邀請碼;

                db.TMembers.Add(newMember.member);
                db.SaveChanges();

                //註冊折價卷
                var 新增註冊折價卷 = from n in db.TMembers
                              where n.CMemberId == newMember.CMemberID
                              select n.CReferrerId;

                int?[] 邀請人ID = 新增註冊折價卷.ToArray();


                if (邀請人ID[0] != null)
                {
                    TCupon 新增邀請人折價卷 = new TCupon
                    {
                        CCuponCategoryId = 2,
                        CMenberId        = (int)邀請人ID[0],
                        CBeUsed          = 0,
                        CReceivedTime    = DateTime.Now,
                        CValidDate       = DateTime.Now.AddDays(60)
                    };
                    TCupon 新增新會員折價卷 = new TCupon
                    {
                        CCuponCategoryId = 3,
                        CMenberId        = newMember.CMemberID,
                        CBeUsed          = 0,
                        CReceivedTime    = DateTime.Now,
                        CValidDate       = DateTime.Now.AddDays(60)
                    };
                    db.TCupons.Add(新增邀請人折價卷);
                    db.TCupons.Add(新增新會員折價卷);
                    db.SaveChanges();
                }

                return(Json(true));
            }
        }