Ejemplo n.º 1
0
        public ActionResult RatingOrder(string OrderGuid, int?OrderStatus, string Description)
        {
            shOrderService _order = new shOrderService();
            shOrder        order  = _order.FindByKey(OrderGuid);

            OrderStatus = C.Core.Common.OrderStatus.DaGiaoHang_DaXacNhan.GetHashCode();

            string MemberGuid = null;

            if (User.Identity.GetMemberLogin() != null)
            {
                MemberGuid = User.Identity.GetMemberLogin().MemberGuid;
            }
            shOrderHistoryService _orderHistory = new shOrderHistoryService();
            shOrderHistory        orderHistory  = _orderHistory.Insert_Update(
                null,
                order.OrderGuid,
                OrderStatus,
                MemberGuid,
                Description,
                null,
                true,
                DateTime.Now);

            order.OrderStatus = OrderStatus;
            _order.Update(order);

            if (Request.IsAjaxRequest())
            {
                return(Json("OK", JsonRequestBehavior.AllowGet));
            }

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 2
0
        public ActionResult OrderStatus(string OrderGuid, int?Status, string Description)
        {
            shOrderService _order = new shOrderService();
            shOrder        order  = _order.FindByKey(OrderGuid);

            using (var context = new ShopOnlineDb())
            {
                using (var dbContextTransaction = context.Database.BeginTransaction())
                {
                    try
                    {
                        if (order != null)
                        {
                            shOrderHistoryService _orderHistory = new shOrderHistoryService();

                            // 1. Hủy đơn hàng
                            int UserId = 0;
                            if (User.Identity.GetUserLogin() != null)
                            {
                                UserId = User.Identity.GetUserLogin().Userid;
                            }

                            string         MemberGuid   = null;
                            shOrderHistory orderHistory = _orderHistory.Insert_Update(
                                null,
                                order.OrderGuid,
                                order.OrderStatus,
                                MemberGuid,
                                Description,
                                UserId,
                                true,
                                DateTime.Now);

                            order.OrderStatus = C.Core.Common.OrderStatus.HuyDonHang.GetHashCode();
                            _order.Update(order);

                            // 2. Thông báo cho member đơn hàng hủy
                            shMemberService _member   = new shMemberService();
                            shMember        member    = _member.FindByKey(order.MemberGuid);
                            int             MemberId  = member != null ? member.MemberId : 0;
                            ThongBaoService _thongbao = new ThongBaoService();
                            _thongbao.InsertOrUpdate(
                                null,
                                "Thông báo đơn hàng bị hủy",
                                "Đơn hàng của bạn đã bị hủy. Nếu có thắc mắc vui lòng liên hệ với quản trị viên để biết thêm chi tiết",
                                null,
                                UserId,
                                MemberId,
                                DateTime.Now,
                                false,
                                Config.THONG_BAO_DA_XU_LY_DON_HANG,
                                null
                                );

                            // 3. gửi email thông báo hủy đơn hàng

                            string noidungdonhang = EmailHelper.NoiDungDonHang(order, new List <CartItem>());
                            string noidungEmail   = EmailHelper.NoiDungMailThongBaoHuyDatHang(noidungdonhang);
                            EmailHelper.ThongBaoEmailDonHangMoiToiNguoiDatHang(member.Email, noidungEmail);
                        }

                        dbContextTransaction.Commit();
                    }
                    catch (Exception ex)
                    {
                        dbContextTransaction.Rollback();
                    }
                }
            }


            if (Request.IsAjaxRequest())
            {
                return(Json("OK", JsonRequestBehavior.AllowGet));
            }

            return(RedirectToAction("Index"));
        }