Esempio n. 1
0
        public CustomerModel GetById(long id)
        {
            TblCustomer obj = _repository.GetById(id);

            return(obj == null ? new CustomerModel() : Map(obj));
        }
Esempio n. 2
0
 private CustomerModel Map(TblCustomer unit)
 {
     return(_mapper.Map <CustomerModel>(unit));
 }
 public TblCustomer AddCustomer(TblCustomer customer)
 {
     throw new NotImplementedException();
 }
Esempio n. 4
0
        public ResponseModel Create(UserDto userNew, string password, string UserIDLogin)
        {
            ResponseModel res = (new ResponseModel
            {
                Data = "",
                Status = "200",
                Message = ""
            });

            var context = _httpContextAccessor.HttpContext;

            if (userNew.TypeOfAccount == "Private" || userNew.TypeOfAccount == "Test")
            {
                Guid g = Guid.NewGuid();

                var tbluser = new TblUsers
                {
                    UserName         = userNew.UserName,
                    FamilyName       = userNew.FamilyName,
                    GivenName        = userNew.GivenName,
                    TypeOfAccount    = userNew.TypeOfAccount,
                    Email            = userNew.Email,
                    ContactByEmail   = userNew.ContactByEmail,
                    EncryptionActive = userNew.EncryptionActive,
                    DeletedOn        = null,
                    Cid    = g.ToString(),
                    RoleId = userNew.RoleID
                };
                var cpn = new TblCustomer()
                {
                    Cid      = tbluser.Cid,
                    Name     = tbluser.UserName,
                    CreateOn = DateTime.UtcNow
                };
                try
                {
                    // validation
                    if (string.IsNullOrWhiteSpace(password))
                    {
                        res.Data    = "";
                        res.Status  = "500";
                        res.Message = "Password is required";
                        return(res);
                    }
                    if (_context.TblUsers.Any(x => x.UserName == userNew.UserName && x.DeletedOn == null))
                    {
                        res.Data    = "";
                        res.Status  = "500";
                        res.Message = "Username \"" + userNew.UserName + "\" is already taken";
                        return(res);
                    }
                    byte[] passwordHash, passwordSalt;
                    CreatePasswordHash(password, out passwordHash, out passwordSalt);

                    tbluser.PasswordHash = passwordHash;
                    tbluser.PasswordSalt = passwordSalt;

                    _context.TblCustomer.Add(cpn);
                    _context.TblUsers.Add(tbluser);
                    _context.SaveChanges();
                    //res.Data = tbluser;
                }
                catch (Exception ex)
                {
                    res.Data    = "";
                    res.Status  = "500";
                    res.Message = ex.Message;
                }
            }
            if (userNew.TypeOfAccount == "Commercial")
            {
                Guid g = Guid.NewGuid();

                var tbluser = new TblUsers
                {
                    UserName         = userNew.UserName,
                    FamilyName       = userNew.FamilyName,
                    GivenName        = userNew.GivenName,
                    TypeOfAccount    = userNew.TypeOfAccount,
                    Email            = userNew.Email,
                    ContactByEmail   = userNew.ContactByEmail,
                    EncryptionActive = userNew.EncryptionActive,
                    DeletedOn        = null,
                    Cid    = g.ToString(),
                    RoleId = userNew.RoleID
                };
                var cpn = new TblCustomer()
                {
                    Cid      = tbluser.Cid,
                    Name     = userNew.Name,
                    Address  = userNew.Address,
                    Status   = userNew.Status,
                    CreateOn = DateTime.UtcNow,
                };
                try
                {
                    // validation
                    if (string.IsNullOrWhiteSpace(password))
                    {
                        res.Data    = "";
                        res.Status  = "500";
                        res.Message = "Password is required";
                        return(res);
                    }
                    if (_context.TblUsers.Any(x => x.UserName == userNew.UserName && x.DeletedOn == null))
                    {
                        res.Data    = "";
                        res.Status  = "500";
                        res.Message = "Username \"" + userNew.UserName + "\" is already taken";
                        return(res);
                    }
                    byte[] passwordHash, passwordSalt;
                    CreatePasswordHash(password, out passwordHash, out passwordSalt);

                    tbluser.PasswordHash = passwordHash;
                    tbluser.PasswordSalt = passwordSalt;

                    _context.TblCustomer.Add(cpn);
                    _context.TblUsers.Add(tbluser);
                    _context.SaveChanges();
                    //res.Data = tbluser;
                }
                catch (Exception ex)
                {
                    res.Data    = "";
                    res.Status  = "500";
                    res.Message = ex.Message;
                }
            }
            return(res);
        }
Esempio n. 5
0
 public ActionResult AddNewCustomer(TblCustomer newCustomer)
 {
     DbStockEntities.TblCustomer.Add(newCustomer);
     DbStockEntities.SaveChanges();
     return(RedirectToAction("Index"));
 }
Esempio n. 6
0
        /// <summary>
        /// Adds the customer asynchronous to database.
        /// </summary>
        /// <param name="customer">The customer.</param>
        /// <returns></returns>
        /// <exception cref="NotImplementedException"></exception>
        public async Task <bool> AddCustomerAsync(CustomerVM customer)
        {
            if (customer.Id == 0)
            {
                Random      _random     = new Random();
                TblCustomer customerNew = new TblCustomer()
                {
                    CustomerNumber = _random.Next(0, 1000000).ToString(),
                    LastVisit      = DateTime.Now
                };
                TblCustomer currentCustomer = _customerRepository.AddCustomer(customerNew);
                TblMaster1  master1         = new TblMaster1()
                {
                    Salutation          = customer.Salutation,
                    Ta                  = customer.Ta,
                    Tb                  = customer.Tb,
                    SalutationInLetters = customer.SalutationInLetters,
                    FirstName           = customer.FirstName,
                    AdditionalAddress   = customer.AdditionalAddress,
                    AdditionalAddress2  = customer.AdditionalAddress2,
                    AdditionalAddress3  = customer.AdditionalAddress3,
                    MatchCode           = customer.MatchCode,
                    Street              = customer.Street,
                    Country             = customer.Country,
                    Zip                 = customer.Zip,
                    City                = customer.City,
                    DateOfBirth         = customer.BirthDate,
                    AddressOrigin       = customer.AddressOrigin,
                    CustomerState       = customer.CustomerState,
                    CustomerName        = customer.CustomerName,
                    CustomerNavigation  = currentCustomer
                };
                TblMaster2 master2 = new TblMaster2()
                {
                    CustomerInformation = customer.CustomerInformation,
                    CustomerCategory    = customer.CustomerCategory,
                    LegalForm           = customer.LegalForm,
                    Email              = customer.Email,
                    Vat                = customer.Vat,
                    ReferenceText      = customer.ReferenceText,
                    CustomerNavigation = currentCustomer,
                    CustomerType       = customer.CustomerType
                };
                TblFainformation fainformation = new TblFainformation()
                {
                    MethodOfGeneralPayment = customer.MethodOfGeneralPayment,
                    CreditLimit            = customer.CreditLimit,
                    MethodOfVehiclePayment = customer.MethodOfVehiclePayment,
                    CreditBlocking         = customer.CreditBlocking,
                    TermsOfGeneralPayment  = customer.TermsOfGeneralPayment,
                    OpenBalance            = customer.OpenBalance,
                    TermsOfVehiclePayment  = customer.TermsOfVehiclePayment,
                    Solvency           = customer.Solvency,
                    DebtorNumber       = customer.DebtorNumber,
                    BankInstitute      = customer.BankInstitute,
                    BankCode           = customer.BankCode,
                    AccountNumber      = customer.AccountNumber,
                    BankCollection     = customer.BankCollection,
                    CustomerNavigation = currentCustomer
                };
                TblConsultant consultant = new TblConsultant()
                {
                    SalesConsultant      = customer.SalesConsultant,
                    AfterSalesConsultant = customer.AfterSalesConsultant,
                    PartsSalesAssistance = customer.PartsSalesAssistance,
                    CustomerNavigation   = currentCustomer
                };
                var result1 = await _customerRepository.AddMaster1(master1);

                var result2 = await _customerRepository.AddMaster2(master2);

                var result3 = await _customerRepository.AddFAInformation(fainformation);

                var result4 = await _customerRepository.AddConsultant(consultant);

                return(result1 && result2 && result3 && result4);
            }
            else
            {
                //Edit logic here
                return(false);
            }
        }