public ActionResult Create(tblCardSubmit tblCard, HttpPostedFileBase FileUpload, string key, string cardgroups, string customergroups, string active, string fromdate, string todate, string isCheckByTime = "0", bool SaveAndCountinue = false)
        {
            ViewBag.CardGroups          = GetListCardGroup();
            ViewBag.lcustomergroups     = GetMenuList();
            ViewBag.CardGroups          = GetListCardGroup();
            ViewBag.lcustomergroups     = GetMenuList();
            ViewBag.keyValue            = key;
            ViewBag.cardgroupsValue     = cardgroups;
            ViewBag.customergroupsValue = customergroups;
            ViewBag.activeValue         = active;
            ViewBag.fromdateValue       = fromdate;
            ViewBag.todateValue         = todate;
            ViewBag.isCheckByTimeValue  = isCheckByTime;
            if (!ModelState.IsValid)
            {
                return(View(tblCard));
            }
            // valid thẻ
            if ((string.IsNullOrEmpty(tblCard.CardNo) || string.IsNullOrWhiteSpace(tblCard.CardNo)) || (string.IsNullOrWhiteSpace(tblCard.CardNumber) || string.IsNullOrEmpty(tblCard.CardNumber)) || (string.IsNullOrWhiteSpace(tblCard.CardNumber)))
            {
                if ((string.IsNullOrEmpty(tblCard.CardNo) || string.IsNullOrWhiteSpace(tblCard.CardNo)))
                {
                    ModelState.AddModelError("", "Hãy nhập lại mã thẻ");
                }
                if ((string.IsNullOrWhiteSpace(tblCard.CardNumber) || string.IsNullOrEmpty(tblCard.CardNumber)))
                {
                    ModelState.AddModelError("", "Hãy nhập lại Số thẻ ");
                }
                if (string.IsNullOrWhiteSpace(tblCard.CardNumber))
                {
                    ModelState.AddModelError("", "NHập lại ID ");
                }
                return(View(tblCard));
            }

            // check mã thẻ có tồn tại k
            var cardNumber = _itblCardService.GetByCardNumber(tblCard.CardNumber.Trim());

            if (cardNumber != null)
            {
                ModelState.AddModelError("CardNumber", "mã thẻ đã tồn tại");
                return(View(tblCard));
            }

            // map
            var map = new tblCard()
            {
                CardID      = Guid.NewGuid(),
                CardNo      = tblCard.CardNo,
                CardNumber  = tblCard.CardNumber.Trim(),
                CardGroupID = tblCard.CardGroupID,

                CustomerID = GetOrSetCustomer(tblCard, FileUpload),



                AccessLevelID    = "",
                ChkRelease       = false,
                ImportDate       = DateTime.Now,
                DateRegister     = Convert.ToDateTime(tblCard.DtpDateRegisted),
                DateRelease      = Convert.ToDateTime(tblCard.DtpDateReleased),
                ExpireDate       = Convert.ToDateTime(tblCard.DtpDateExpired),
                DateActive       = Convert.ToDateTime(tblCard.DtpDateActive),
                Description      = !string.IsNullOrWhiteSpace(tblCard.CardDescription) ? tblCard.CardDescription : "",
                IsDelete         = false,
                IsLock           = tblCard.CardInActive,
                Plate1           = tblCard.Plate1,
                Plate2           = tblCard.Plate2,
                Plate3           = tblCard.Plate3,
                VehicleName1     = tblCard.VehicleName1,
                VehicleName2     = tblCard.VehicleName2,
                VehicleName3     = tblCard.VehicleName3,
                DVT              = tblCard.DVT,
                AccessExpireDate = Convert.ToDateTime("2099/12/31"),
                DateCancel       = DateTime.Now,

                isAutoCapture = tblCard.IsAutoCapture
            };

            //thực hiện thêm mới
            var result = _itblCardService.Create(map);

            if (result.isSuccess)
            {
                return(RedirectToAction("Index", new { key = key, cardgroups = cardgroups, customergroups = customergroups, fromdate = fromdate, todate = todate, active = active, isCheckByTime = isCheckByTime, selectedId = tblCard.CardID }));
            }
            else
            {
                ModelState.AddModelError("", result.Message);
                return(View(tblCard));
            }
        }