Esempio n. 1
0
        public async Task <tblCard_API> GetByCardNumberOrCardNo(HttpRequestMessage request, string key)
        {
            var obj = _tblCard.GetCardByCardNumberOrCardNo(key);
            //Trả lại response
            var model = new tblCard_API()
            {
                CardNo      = obj.CardNo,
                CardNumber  = obj.CardNumber,
                Plate       = obj.Plate1,
                VehicleName = obj.VehicleName1,
                //CustomerId = obj.CustomerID,
                ExpireDate   = obj.ExpireDate,
                RegisterDate = obj.DateRegister
            };

            return(await Task.FromResult(model));
        }
Esempio n. 2
0
        /// <summary>
        /// create card
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="cardId"></param>
        /// <returns></returns>
        private MessageReport create_card(tblCard_API obj, string cardId)
        {
            var modelCreate = new tblCard()
            {
                CardID           = Guid.NewGuid(),
                CardNo           = obj.CardNo,
                CardNumber       = obj.CardNumber.Trim(),
                CardGroupID      = obj.CardGroupID,
                CustomerID       = "",
                AccessLevelID    = "",
                ChkRelease       = false,
                ImportDate       = DateTime.Now,
                DateRegister     = obj.RegisterDate,
                DateRelease      = null,
                ExpireDate       = obj.ExpireDate,
                DateActive       = DateTime.Now,
                Description      = "",
                IsDelete         = false,
                IsLock           = false,
                Plate1           = obj.Plate,
                Plate2           = String.Empty,
                Plate3           = String.Empty,
                VehicleName1     = obj.VehicleName,
                VehicleName2     = String.Empty,
                VehicleName3     = String.Empty,
                AccessExpireDate = Convert.ToDateTime("2099/12/31"),
                DateCancel       = DateTime.Now,
                isAutoCapture    = false,
                IsLost           = false
            };

            var result = _tblCard.Create(modelCreate);

            cardId = modelCreate.CardID.ToString();
            return(result);
        }
Esempio n. 3
0
        public async Task <MessageReport> Update(tblCard_API obj)
        {
            var result = new MessageReport(false, "Có lỗi xảy ra");

            #region valid
            string Err = String.Empty;
            if ((String.IsNullOrEmpty(obj.CardNo) || String.IsNullOrWhiteSpace(obj.CardNo)) ||
                (String.IsNullOrEmpty(obj.CardNumber) || String.IsNullOrWhiteSpace(obj.CardNumber)) ||
                String.IsNullOrEmpty(obj.CardGroupID))
            {
                if (String.IsNullOrEmpty(obj.CardNo) || String.IsNullOrWhiteSpace(obj.CardNo))
                {
                    Err = "Vui lòng nhập CardNo";
                }
                if (String.IsNullOrEmpty(obj.CardNumber) || String.IsNullOrWhiteSpace(obj.CardNumber))
                {
                    Err += String.IsNullOrEmpty(Err) ? "Vui lòng nhập CardNumber" : ", Vui lòng nhập CardNumber";
                }
                if (String.IsNullOrEmpty(obj.CardGroupID))
                {
                    Err += String.IsNullOrEmpty(Err) ? " Vui lòng nhập nhóm thẻ" : ", Vui lòng nhập nhóm thẻ";
                }
            }
            if (String.IsNullOrEmpty(obj.ExpireDate.ToString()))
            {
                Err += String.IsNullOrEmpty(Err) ? " Vui lòng nhập ngày hết hạn" : ", Vui lòng nhập ngày hết hạn";
            }

            if (String.IsNullOrEmpty(obj.RegisterDate.ToString()))
            {
                Err += String.IsNullOrEmpty(Err) ? " Vui lòng nhập ngày đăng ký" : ", Vui lòng nhập ngày đăng ký";
            }

            if (String.IsNullOrEmpty(obj.CustomerName))
            {
                Err += String.IsNullOrEmpty(Err) ? " Vui lòng nhập tên khách hàng" : ", Vui lòng nhập tên khách hàng";
            }

            if (!String.IsNullOrEmpty(Err))
            {
                result.isSuccess = false;
                result.Message   = Err;
                return(await Task.FromResult(result));
            }
            #endregion

            var    objCustomer = _tblCustomer.GetByNameOrAdd(obj.CustomerName, obj.CustomerAdd);
            string customerID  = String.Empty;
            if (objCustomer == null)
            {
                //check CustomerGroup
                var CustomerGroupObj = new tblCustomerGroup();
                CustomerGroupObj = _tblCustomerGroup.GetByName("Nhóm khách hàng Api");
                if (CustomerGroupObj == null)
                {
                    var objCusGrp = new tblCustomerGroup()
                    {
                        CustomerGroupID   = Guid.NewGuid(),
                        CustomerGroupName = "Nhóm khách hàng Api",
                        ParentID          = "0",
                        CustomerGroupCode = null,
                        Description       = "Nhóm khách hàng tạo từ Api",
                        Inactive          = false,
                        SortOrder         = _tblCustomerGroup.GetAll().Max(n => n.SortOrder) + 1,
                        Ordering          = _tblCustomerGroup.GetAll().Max(n => n.Ordering) + 1,
                        IsCompany         = false,
                        Tax = null
                    };

                    var resultCusRgp = _tblCustomerGroup.Create(objCusGrp);
                    if (resultCusRgp.isSuccess == false)
                    {
                        result.isSuccess = false;
                        result.Message   = "tạo mới nhóm khách hàng không thành công vui lòng kiểm tra lại";
                        return(await Task.FromResult(result));
                    }
                    else
                    {
                        CustomerGroupObj = objCusGrp;
                    }
                }
                //create customer
                var objCus = new tblCustomer()
                {
                    CustomerID        = Guid.NewGuid(),
                    CustomerCode      = "Api_" + Guid.NewGuid().ToString(),
                    CustomerName      = obj.CustomerName,
                    Address           = obj.CustomerAdd,
                    IDNumber          = null,
                    Mobile            = null,
                    CustomerGroupID   = CustomerGroupObj.CustomerGroupID.ToString(),
                    Description       = "Khách hàng tạo từ Api",
                    EnableAccount     = false,
                    Account           = null,
                    Password          = null,
                    Avatar            = null,
                    Inactive          = false,
                    SortOrder         = _tblCustomer.GetAll().Max(n => n.SortOrder) + 1,
                    CompartmentId     = null,
                    AccessLevelID     = "",
                    Finger1           = "",
                    Finger2           = "",
                    DevPass           = "",
                    UserIDofFinger    = 0,
                    AccessExpireDate  = Convert.ToDateTime("2099/12/31"),
                    ContractStartDate = null,
                    ContractEndDate   = null,
                    AddressUnsign     = null,
                };
                var resultCus = _tblCustomer.Create(objCus);
                if (resultCus.isSuccess == false)
                {
                    result.isSuccess = false;
                    result.Message   = "Tạo mới khách hàng không thành công vui lòng kiểm tra lại";
                    return(await Task.FromResult(result));
                }
                else
                {
                    customerID = objCus.CustomerID.ToString();
                }
            }

            #region update create card
            var    http   = String.Empty;
            string cardId = String.Empty;
            //if (String.IsNullOrWhiteSpace(obj.CardNumber))
            //{
            //    result = create_card(obj, cardId);
            //    if (result.isSuccess == true)
            //    {
            //        cardId = cardId;
            //        http = "POST";
            //    }
            //}
            //else
            //{
            var model = _tblCard.GetByCardNumber_Id(obj.CardNumber);
            if (model != null)     //update
            {
                if (model.CardNumber != obj.CardNumber)
                {
                    Err += String.IsNullOrEmpty(Err) ? " Mã thẻ đã tồn tại" : ", Mã thẻ đã tồn tại";
                }
                else
                {
                    model.CardNo           = obj.CardNo;
                    model.CardNumber       = obj.CardNumber.Trim();
                    model.CardGroupID      = obj.CardGroupID;
                    model.CustomerID       = "";//objCustomer.CustomerID;
                    model.AccessLevelID    = "";
                    model.ChkRelease       = false;
                    model.ImportDate       = DateTime.Now;
                    model.DateRegister     = obj.RegisterDate;
                    model.DateRelease      = null;
                    model.ExpireDate       = obj.ExpireDate;
                    model.DateActive       = DateTime.Now;
                    model.Description      = String.Empty;
                    model.IsDelete         = false;
                    model.IsLock           = false;
                    model.Plate1           = obj.Plate;
                    model.Plate2           = String.Empty;
                    model.Plate3           = String.Empty;
                    model.VehicleName1     = obj.VehicleName;
                    model.VehicleName2     = String.Empty;
                    model.VehicleName3     = String.Empty;
                    model.AccessExpireDate = Convert.ToDateTime("2099/12/31");
                    model.DateCancel       = DateTime.Now;
                    model.isAutoCapture    = false;
                    model.IsLock           = false;
                    result = _tblCard.Update(model);
                    http   = "PUT";
                    cardId = model.CardID.ToString();
                }
            }
            else
            {
                result = create_card(obj, cardId);
                if (result.isSuccess == true)
                {
                    cardId = cardId;
                    http   = "POST";
                }
            }
            //}
            #endregion

            // Create Log
            var objLog = new tblCardSubmitEvent()
            {
                Id               = Guid.NewGuid().ToString(),
                CardId           = cardId,
                CardNo           = obj.CardNo,
                CardNumberBefore = null,//Đợi KH
                CardNumberSave   = obj.CardNumber,
                CardGroupId      = obj.CardGroupID,
                Plate            = obj.Plate,
                VehicleName      = obj.VehicleName,
                DateExpired      = obj.ExpireDate,
                DateRegisted     = obj.RegisterDate,
                SubmitMessage    = result.Message,
                SubmitStatus     = result.isSuccess ? 1 : 0,
                HTTP             = http,
                DateCreated      = DateTime.UtcNow
            };

            _tblLog.Create(objLog);
            //Trả lại response
            return(await Task.FromResult(result));
        }