Exemplo n.º 1
0
        public JsonResult ChangeStatus(LoyalityCardViewModel model)
        {
            Response response;
            var      currentUser = GetAuthenticatedUser();

            try
            {
                using (var db = new KiaGalleryContext())
                {
                    var cardList = db.LoyalityCard.Where(x => model.idList.Any(y => y == x.Id)).ToList();
                    foreach (var item in cardList)
                    {
                        if (model.cardStatus == LoyalityCardStatus.SendToBranch)
                        {
                            item.BranchId = model.branchId;
                        }
                        item.CardStatus   = model.cardStatus;
                        item.ModifyUserId = currentUser.Id;
                        item.ModifyDate   = DateTime.Now;
                        item.Ip           = Request.UserHostAddress;

                        var log = new LoyalityCardLog()
                        {
                            LoyalityCardId = item.Id,
                            CardStatus     = model.cardStatus,
                            CreateUserId   = currentUser.Id,
                            CreateDate     = DateTime.Now,
                            Ip             = Request.UserHostAddress
                        };
                        db.LoyalityCardLog.Add(log);
                    }
                    db.SaveChanges();
                }
                response = new Response()
                {
                    status  = 200,
                    message = " وضعیت کارت به " + Enums.GetTitle(model.cardStatus) + " تغییر یافت. "
                };
            }
            catch (Exception ex)
            {
                response = Core.GetExceptionResponse(ex);
            }
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 2
0
        public JsonResult Save(LoyalityCardViewModel model)
        {
            Response response;
            var      currentUser = GetAuthenticatedUser();

            try
            {
                using (var db = new KiaGalleryContext())
                {
                    if (model.id > 0)
                    {
                    }
                    else
                    {
                        List <string> codeList = new List <string>();
                        for (int i = 1; i <= model.count; i++)
                        {
                            string code;
                            while (true)
                            {
                                code = RandomString(8);
                                LoyalityCard loyalityCard = db.LoyalityCard.FirstOrDefault(x => x.Code == code);
                                if (loyalityCard == null && codeList.Count(x => x == code) == 0)
                                {
                                    break;
                                }
                            }
                            codeList.Add(code);
                            var entity = new LoyalityCard()
                            {
                                Code         = code,
                                CardType     = model.cardType,
                                CardStatus   = LoyalityCardStatus.Register,
                                CreateUserId = currentUser.Id,
                                ModifyUserId = currentUser.Id,
                                CreateDate   = DateTime.Now,
                                ModifyDate   = DateTime.Now,
                                Ip           = Request.UserHostAddress
                            };
                            var log = new LoyalityCardLog()
                            {
                                LoyalityCard = entity,
                                CardStatus   = LoyalityCardStatus.Register,
                                CreateUserId = currentUser.Id,
                                CreateDate   = DateTime.Now,
                                Ip           = Request.UserHostAddress
                            };
                            db.LoyalityCardLog.Add(log);
                            db.LoyalityCard.Add(entity);
                            var barcode = new Barcode(code, TypeBarcode.Code128C);
                            var bar128  = barcode.Encode(TypeBarcode.Code128C, code, 886, 142);

                            string serverPath = Server.MapPath("~/Upload/LoyalityCard/");
                            if (!Directory.Exists(serverPath))
                            {
                                Directory.CreateDirectory(serverPath);
                            }
                            bar128.Save(serverPath + code + ".jpg");
                        }
                    }
                    db.SaveChanges();
                }
                response = new Response()
                {
                    status  = 200,
                    message = "کارت با موفقیت ایجاد شد."
                };
            }
            catch (Exception ex)
            {
                response = Core.GetExceptionResponse(ex);
            }
            return(Json(response, JsonRequestBehavior.AllowGet));
        }