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)); }
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)); }