public ShopIssueViewModel GetIssue(Guid Id)
        {
            TicketHubContext context = new TicketHubContext();
            var issueRepo            = new GenericRepository <Issue>(context);
            var item = issueRepo.GetAll().First((x) => x.Id == Id);

            var entity = new ShopIssueViewModel
            {
                Id            = item.Id,
                shopId        = item.ShopId,
                ImgPath       = item.ImgPath,
                Title         = item.Title,
                Memo          = item.Memo,
                OriginalPrice = item.OriginalPrice,
                DiscountPrice = item.DiscountPrice,
                Amount        = item.Amount,
                IssuedDate    = item.IssuedDate,
                ReleasedDate  = item.ReleasedDate,
                ClosedDate    = (DateTime)item.ClosedDate,
                IssuerId      = item.IssuerId,
                Status        = (DateTime.Compare(item.ReleasedDate, DateTime.Now) > 0) ?
                                ((DateTime.Compare((DateTime)item.ClosedDate, DateTime.Now) < 0) ? "已下架" : "上架") : "未上架"
            };

            return(entity);
        }
Example #2
0
        public ActionResult ChangeInfoData(string Id, string UserName, string Sex, string Email, string PhoneNumber)
        {
            using (var _context = TicketHubContext.Create())
            {
                var user = _context.Users.Find(Id);

                user.UserName    = UserName;
                user.Sex         = Sex;
                user.Email       = Email;
                user.PhoneNumber = PhoneNumber;

                _context.SaveChanges();

                var info = new CustomerInfoViewModel()
                {
                    Id          = user.Id,
                    Email       = user.Email,
                    PhoneNumber = user.PhoneNumber,
                    UserName    = user.UserName,
                    Sex         = user.Sex
                };

                return(Json(info, JsonRequestBehavior.AllowGet));
            }
        }
Example #3
0
 public ActionResult DeleteFromFavoriteList(string ShopId, string UserId)
 {
     using (var _context = TicketHubContext.Create())
     {
         var ShopGUID = Guid.Parse(ShopId);
         var entity   = (from x in _context.UserFavoriteShop
                         where x.ShopId == ShopGUID && x.UserId == UserId
                         select x).FirstOrDefault();
         _context.UserFavoriteShop.Remove(entity);
         _context.SaveChanges();
     }
     return(Content("Deleted"));
 }
        public OperationResult Update(ShopIssueViewModel input)
        {
            var result = new OperationResult();

            try
            {
                TicketHubContext context = new TicketHubContext();
                var issueRepo            = new GenericRepository <Issue>(context);
                //var user = System.Web.HttpContext.Current.User.Identity.GetUserId();
                //var employee = employeeRepo.GetAll().Where((x) => x.UserId == user).FirstOrDefault();

                var entity = new Issue
                {
                    Id            = input.Id,
                    Title         = input.Title,
                    Memo          = input.Memo,
                    OriginalPrice = input.OriginalPrice,
                    DiscountPrice = input.DiscountPrice,
                    DiscountRatio = input.OriginalPrice / input.DiscountPrice,
                    Amount        = input.Amount,
                    IssuedDate    = DateTime.Now,
                    ReleasedDate  = input.ReleasedDate,
                    ClosedDate    = input.ClosedDate,
                    IssuerId      = "6a2b0a3d-9de5-470d-8519-3bba75de4246",            //IssuerId = user,
                    ShopId        = Guid.Parse("2298405e-54f4-ea11-9700-cb781453451a") //ShopId = employee.ShopId
                };

                if (input.ImgFile != null)
                {
                    var imgurService = new ImgurService();
                    entity.ImgPath = imgurService.UploadImgur(input.ImgFile);
                }
                else
                {
                    entity.ImgPath = input.ImgPath;
                }

                issueRepo.Update(entity);
                context.SaveChanges();

                result.Success = true;
            }
            catch (Exception ex)
            {
                result.Success = false;
                result.Message = ex.ToString();
            }

            return(result);
        }
Example #5
0
 public ActionResult AddToFavoriteList(string ShopId, string UserId)
 {
     using (var _context = TicketHubContext.Create())
     {
         _context.UserFavoriteShop.Add(new UserFavoriteShop
         {
             ShopId    = Guid.Parse(ShopId),
             UserId    = UserId,
             AddedDate = DateTime.Now
         });
         _context.SaveChanges();
     }
     return(Json(ShopId, JsonRequestBehavior.AllowGet));
 }
        public DataTableViewModel GetAllOrders()
        {
            var result  = new List <PlatformOrderViewModel>();
            var context = new TicketHubContext();

            var orderRepository       = new GenericRepository <Order>(context);
            var orderDetailRepository = new GenericRepository <OrderDetail>(context);

            var temp = from o in orderRepository.GetAll()
                       join od in orderDetailRepository.GetAll()
                       on o.Id equals od.OrderId
                       select new
            {
                Id        = o.Id,
                OrderDate = o.OrderedDate,
                UserId    = o.UserId,
                UserName  = o.User.UserName,
                Price     = od.Price,
            };

            var group = from t in temp
                        group t by new { t.Id, t.OrderDate, t.UserId, t.UserName } into g
                select new PlatformOrderViewModel
            {
                Id         = g.Key.Id,
                UserId     = g.Key.UserId,
                OrderDate  = g.Key.OrderDate,
                UserName   = g.Key.UserName,
                TotalPrice = g.Sum(x => x.Price)
            };

            DataTableViewModel table = new DataTableViewModel();

            table.data = new List <List <string> >();

            foreach (var item in group)
            {
                List <string> dataInstance = new List <string>();

                dataInstance.Add(item.Id.ToString());
                dataInstance.Add(item.UserId);
                dataInstance.Add(item.UserName);
                dataInstance.Add(item.TotalPrice.ToString());

                table.data.Add(dataInstance);
            }

            return(table);
        }
Example #7
0
        public DataTableViewModel GetUsersTableData()
        {
            TicketHubContext context = new TicketHubContext();
            GenericRepository <TicketHubUser> repository = new GenericRepository <TicketHubUser>(context);

            IQueryable <TicketHubUser> memberList = repository.GetAll();
            DataTableViewModel         table      = new DataTableViewModel();

            table.data = new List <List <string> >();

            foreach (var item in memberList)
            {
                List <string> dataInstance = new List <string>();

                dataInstance.Add(item.Id);
                dataInstance.Add(item.UserName);
                dataInstance.Add(item.PhoneNumber ?? "null");
                dataInstance.Add(item.PasswordHash);

                table.data.Add(dataInstance);
            }
            return(table);
        }
Example #8
0
        public DataTableViewModel GetShopsTableData()
        {
            TicketHubContext         context    = new TicketHubContext();
            GenericRepository <Shop> repository = new GenericRepository <Shop>(context);
            IQueryable <Shop>        shopList   = repository.GetAll();
            DataTableViewModel       table      = new DataTableViewModel();

            table.data = new List <List <string> >();

            foreach (var item in shopList)
            {
                List <string> dataInstance = new List <string>();

                dataInstance.Add(item.Id.ToString());
                dataInstance.Add(item.ShopName);
                dataInstance.Add(item.Email);
                dataInstance.Add(item.Phone);
                dataInstance.Add(item.AppliedDate.ToString());
                dataInstance.Add(item.ModifiedDate.ToString());

                table.data.Add(dataInstance);
            }
            return(table);
        }
        public ShopIssueListViewModel GetAll(int?order)
        {
            var result = new ShopIssueListViewModel();

            result.Items = new List <ShopIssueViewModel>();
            TicketHubContext                context         = new TicketHubContext();
            GenericRepository <Issue>       issueRepo       = new GenericRepository <Issue>(context);
            GenericRepository <OrderDetail> orderDetailRepo = new GenericRepository <OrderDetail>(context);

            var issues = from i in issueRepo.GetAll()
                         select new ShopIssueViewModel
            {
                ImgPath       = i.ImgPath,
                Title         = i.Title,
                Id            = i.Id,
                DiscountPrice = i.DiscountPrice,
                Status        = (DateTime.Compare(i.ReleasedDate, DateTime.Now) > 0) ?
                                ((DateTime.Compare((DateTime)i.ClosedDate, DateTime.Now) < 0) ? "已下架" : "上架") : "未上架",
                IssuedDate   = i.IssuedDate,
                ReleasedDate = i.ReleasedDate,
                //SalesAmount =
                //   (from i2 in issueRepo.GetAll()
                //   join od in orderDetailRepo.GetAll() on i.Id equals od.IssueId
                //   group i2 by i2.IssuerId into iod
                //   where i.Id == iod.Key
                //   select new { salesamount = (int)iod.Sum((x) => x.Amount) })
            };

            switch (order)
            {
            //case 1:
            //    issues = issues.OrderByDescending(i => i.SalesAmount);
            //    break;
            case 2:
                issues = issues.OrderBy(i => i.ReleasedDate);
                break;

            case 3:
                issues = issues.OrderByDescending(i => i.Id);
                break;

            default:
                issues = issues.OrderByDescending(i => i.DiscountPrice);
                break;
            }

            //foreach (var item in issues)
            //{
            //    var p = new ShopIssueViewModel()
            //    {
            //        ImgPath = item.ImgPath,
            //        Title = item.Title,
            //        Id = item.Id,
            //        DiscountPrice = item.DiscountPrice,
            //        Status = (DateTime.Compare(item.ReleasedDate, DateTime.Now) > 0) ?
            //                ((DateTime.Compare((DateTime)item.ClosedDate, DateTime.Now) < 0) ? "已下架" : "上架") : "未上架",
            //        IssuedDate = item.IssuedDate
            //    };

            //    result.Items.Add(p);
            //}

            result.Items = issues.ToList();
            return(result);
        }