Ejemplo n.º 1
0
        public ICollection <CashFoundDto> GetCashFounds(int cashRegisterId, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = string.Empty;

                    var cashFounds = dbContext.CashFounds.Where(c => c.CashRegisterId == cashRegisterId).ToList();

                    var cashFoundsDto = new List <CashFoundDto>();

                    foreach (var cashFound in cashFounds)
                    {
                        cashFoundsDto.Add(new CashFoundDto(cashFound));
                    }

                    return(cashFoundsDto);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 2
0
        public CashFoundDto SaveCashFound(CashFoundDto cashFoundDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = string.Empty;

                    CashFound cashFound = new CashFound
                    {
                        UserId         = cashFoundDto.User.Id,
                        CashRegisterId = cashFoundDto.CashRegister.Id,
                        Quantity       = cashFoundDto.Quantity,
                        RegisterDate   = DateTime.Now
                    };

                    dbContext.Entry(cashFound).State = EntityState.Added;
                    dbContext.CashFounds.Add(cashFound);

                    if (dbContext.SaveChanges() > 0)
                    {
                        cashFoundDto.Id = cashFound.Id;
                        return(cashFoundDto);
                    }

                    message = "No se pudo agregar el fondo de caja.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo agregar el fondo de caja. {e.Message}";
                return(null);
            }
        }
Ejemplo n.º 3
0
        public CashFoundDto GetCashFound(int cashRegisterId, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = string.Empty;

                    var cashfound = dbContext.CashFounds.LastOrDefault(c => c.CashRegisterId == cashRegisterId);

                    if (cashfound != null)
                    {
                        var cashFoundDto = new CashFoundDto(cashfound);
                        return(cashFoundDto);
                    }

                    return(new CashFoundDto());
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
Ejemplo n.º 4
0
        public bool DeleteCashRegister(CashRegisterDto cashRegisterDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var cashRegister = dbContext.CashRegisters.Find(cashRegisterDto.Id);

                    if (cashRegister == null)
                    {
                        message = "Caja no encontrada.";
                        return(false);
                    }

                    cashRegister.IsActive = false;

                    dbContext.Entry(cashRegister).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        message = "";
                        return(true);
                    }

                    message = "No se pudo eliminar la caja.";
                    return(false);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(false);
            }
        }
Ejemplo n.º 5
0
        public BrandDto UpdateBrand(BrandDto brandDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    var brand = dbContext.Brands.Find(brandDto.Id);

                    if (brand == null)
                    {
                        message = "Marca no encontrada.";
                        return(null);
                    }

                    brand.Name = brandDto.Name;

                    dbContext.Entry(brand).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        return(brandDto);
                    }

                    message = "No se pudo actualizar la marca.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 6
0
        public CashRegisterDto UpdateCashRegister(CashRegisterDto cashRegisterDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    var cashRegister = dbContext.CashRegisters.Find(cashRegisterDto.Id);

                    if (cashRegister == null)
                    {
                        message = "Caja no encontrada.";
                        return(null);
                    }

                    cashRegister.Name = cashRegisterDto.Name;

                    dbContext.Entry(cashRegister).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        return(cashRegisterDto);
                    }

                    message = "No se pudo actualizar la caja.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 7
0
        public BrandDto AddBrand(BrandDto brandDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";

                    Brand brand = new Brand
                    {
                        Name     = brandDto.Name,
                        IsActive = true
                    };

                    dbContext.Entry(brand).State = EntityState.Added;
                    dbContext.Brands.Add(brand);

                    if (dbContext.SaveChanges() > 0)
                    {
                        brandDto.Id = brand.Id;
                        return(brandDto);
                    }

                    message = "No se pudo agregar la marca.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 8
0
        public bool DeleteBrand(BrandDto brandDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var brand = dbContext.Brands.Find(brandDto.Id);

                    if (brand == null)
                    {
                        message = "Marca no encontrada.";
                        return(false);
                    }

                    brand.IsActive = false;

                    dbContext.Entry(brand).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        message = "";
                        return(true);
                    }

                    message = "No se pudo eliminar la marca.";
                    return(false);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(false);
            }
        }
Ejemplo n.º 9
0
        public bool DeleteUser(UserDto userDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var user = dbContext.Users.Find(userDto.Id);

                    if (user == null)
                    {
                        message = "Usuario no encontrado.";
                        return(false);
                    }

                    user.IsActive = false;
                    user.Roles.Clear();

                    dbContext.Entry(user).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        message = "";
                        return(true);
                    }

                    message = "No se pudo eliminar el usario.";
                    return(false);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(false);
            }
        }
Ejemplo n.º 10
0
        public bool DeleteVendor(VendorDto vendorDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var vendor = dbContext.Vendors.Find(vendorDto.Id);

                    if (vendor == null)
                    {
                        message = "Proveedor no encontrado.";
                        return(false);
                    }

                    vendor.IsActive = false;

                    dbContext.Entry(vendor).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        message = "";
                        return(true);
                    }

                    message = "No se pudo eliminar el proveedor.";
                    return(false);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo eliminar el proveedor. {e.Message}";
                return(false);
            }
        }
Ejemplo n.º 11
0
        public StoreDto AddStore(StoreDto storeDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";

                    Store store = new Store
                    {
                        Name     = storeDto.Name,
                        Address  = storeDto.Address,
                        Phone    = storeDto.Phone,
                        IsActive = true
                    };

                    dbContext.Entry(store).State = EntityState.Added;
                    dbContext.Stores.Add(store);

                    if (dbContext.SaveChanges() > 0)
                    {
                        storeDto.Id = store.Id;
                        return(storeDto);
                    }

                    message = "No se pudo agregar la sucursal.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 12
0
        public bool DeleteCustomer(CustomerDto customerDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var customer = dbContext.Customers.Find(customerDto.Id);

                    if (customer == null)
                    {
                        message = "Cliente no encontrado.";
                        return(false);
                    }

                    customer.IsActive = false;

                    dbContext.Entry(customer).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        message = "";
                        return(true);
                    }

                    message = "No se pudo eliminar el cliente.";
                    return(false);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo eliminar el cliente. {e.Message}";
                return(false);
            }
        }
Ejemplo n.º 13
0
        public IEnumerable <BrandDto> GetBrands()
        {
            using (PosRiContext dbContext = new PosRiContext())
            {
                var brands    = dbContext.Brands.Where(u => u.IsActive).ToList();
                var brandsDto = new List <BrandDto>();

                foreach (var brand in brands)
                {
                    brandsDto.Add(new BrandDto(brand));
                }

                return(brandsDto);
            }
        }
Ejemplo n.º 14
0
        public IEnumerable <CashRegisterDto> GetCashRegisters()
        {
            using (PosRiContext dbContext = new PosRiContext())
            {
                var cashRegisters    = dbContext.CashRegisters.Where(u => u.IsActive).ToList();
                var cashRegistersDto = new List <CashRegisterDto>();

                foreach (var cashRegister in cashRegisters)
                {
                    cashRegistersDto.Add(new CashRegisterDto(cashRegister));
                }

                return(cashRegistersDto);
            }
        }
Ejemplo n.º 15
0
        public IEnumerable <UserDto> GetUsers()
        {
            using (PosRiContext dbContext = new PosRiContext())
            {
                var users    = dbContext.Users.Where(u => u.IsActive).ToList();
                var usersDto = new List <UserDto>();

                foreach (var user in users)
                {
                    usersDto.Add(new UserDto(user));
                }

                return(usersDto);
            }
        }
Ejemplo n.º 16
0
        public IEnumerable <StoreDto> GetStores()
        {
            using (PosRiContext dbContext = new PosRiContext())
            {
                var stores    = dbContext.Stores.Where(u => u.IsActive).ToList();
                var storesDto = new List <StoreDto>();

                foreach (var store in stores)
                {
                    storesDto.Add(new StoreDto(store));
                }

                return(storesDto);
            }
        }
Ejemplo n.º 17
0
        public UserDto UpdateUser(UserDto userDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    var user = dbContext.Users.Find(userDto.Id);

                    if (user == null)
                    {
                        message = "Usuario no encontrado.";
                        return(null);
                    }

                    List <int> rolesId = userDto.Roles.Select(r => r.Id).ToList();
                    var        roles   = dbContext.Roles.Where(r => rolesId.Contains(r.Id)).ToList();

                    user.Roles.Clear();
                    user.Roles = roles;

                    user.Name     = userDto.Name;
                    user.Username = userDto.Username;
                    user.Birthday = userDto.Birthday;
                    user.HireDate = userDto.HireDate;

                    if (!string.IsNullOrEmpty(userDto.Password))
                    {
                        user.Password = userDto.Password;
                    }

                    dbContext.Entry(user).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        return(userDto);
                    }

                    message = "No se pudo actualizar el usuario.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 18
0
        public VendorDto UpdateVendor(VendorDto vendorDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    var vendor = dbContext.Vendors.Find(vendorDto.Id);

                    if (vendor == null)
                    {
                        message = "Proveedor no encontrado.";
                        return(null);
                    }

                    vendor.Brands.Clear();

                    var idBrands = vendorDto.Brands.Select(b => b.Id).ToList();

                    var brands = dbContext.Brands.Where(b => idBrands.Contains(b.Id)).ToList();

                    vendor.Name    = vendorDto.Name;
                    vendor.Address = vendorDto.Address;
                    vendor.City    = vendorDto.City;
                    vendor.Email   = vendorDto.Email;
                    vendor.Phone   = vendorDto.Phone;
                    vendor.Rfc     = vendorDto.Rfc;
                    vendor.StateId = vendorDto.State.Id;
                    vendor.Brands  = brands;

                    dbContext.Entry(vendor).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        return(vendorDto);
                    }

                    message = "No se pudo actualizar el proveedor.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo actualizar el proveedor. {e.Message}";
                return(null);
            }
        }
Ejemplo n.º 19
0
        public VendorDto AddVendor(VendorDto vendorDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";

                    var idBrands = vendorDto.Brands.Select(b => b.Id).ToList();

                    var brands = dbContext.Brands.Where(b => idBrands.Contains(b.Id)).ToList();

                    Vendor vendor = new Vendor
                    {
                        Name         = vendorDto.Name,
                        Address      = vendorDto.Address,
                        City         = vendorDto.City,
                        CreationDate = DateTime.Now,
                        Phone        = vendorDto.Phone,
                        Email        = vendorDto.Email,
                        Rfc          = vendorDto.Email,
                        IsActive     = true,
                        StateId      = vendorDto.State.Id,
                        Brands       = brands
                    };

                    dbContext.Entry(vendor).State = EntityState.Added;
                    dbContext.Vendors.Add(vendor);

                    if (dbContext.SaveChanges() > 0)
                    {
                        vendorDto.Id = vendor.Id;
                        return(vendorDto);
                    }

                    message = "No se pudo agregar el proveedor.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo agregar el proveedor. {e.Message}";
                return(null);
            }
        }
Ejemplo n.º 20
0
        public bool IsValid(MethodTypes httpMethod, StoreDto storeDto, out string message)
        {
            message = "";
            switch (httpMethod)
            {
            case MethodTypes.Post:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    if (dbContext.Stores.Any(u => u.IsActive &&
                                             u.Name.Equals(storeDto.Name,
                                                           StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe una sucursal llamada {storeDto.Name}.";
                        return(false);
                    }
                }
                break;
            }

            case MethodTypes.Put:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var store = dbContext.Stores.Find(storeDto.Id);
                    if (store == null)
                    {
                        message = "Sucursal no encontrada.";
                        return(false);
                    }

                    if (dbContext.Stores.Any(u => u.IsActive && u.Id != storeDto.Id &&
                                             u.Name.Equals(storeDto.Name,
                                                           StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe una sucursal llamada {storeDto.Name}.";
                        return(false);
                    }
                }
                break;
            }
            }
            return(true);
        }
Ejemplo n.º 21
0
        public bool IsValid(MethodTypes httpMethod, BrandDto brandDto, out string message)
        {
            message = "";
            switch (httpMethod)
            {
            case MethodTypes.Post:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    if (dbContext.Brands.Any(u => u.IsActive &&
                                             u.Name.Equals(brandDto.Name,
                                                           StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe una marca llamada {brandDto.Name}.";
                        return(false);
                    }
                }
                break;
            }

            case MethodTypes.Put:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var brand = dbContext.Brands.Find(brandDto.Id);
                    if (brand == null)
                    {
                        message = "Marca no encontrada.";
                        return(false);
                    }

                    if (dbContext.Brands.Any(u => u.IsActive && u.Id != brandDto.Id &&
                                             u.Name.Equals(brandDto.Name,
                                                           StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe una marca llamada {brandDto.Name}.";
                        return(false);
                    }
                }
                break;
            }
            }
            return(true);
        }
Ejemplo n.º 22
0
        public bool IsValid(MethodTypes httpMethod, VendorDto vendorDto, out string message)
        {
            message = "";
            switch (httpMethod)
            {
            case MethodTypes.Post:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    if (dbContext.Vendors.Any(u => u.IsActive &&
                                              u.Name.Equals(vendorDto.Name,
                                                            StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe un provedeor con el nombre {vendorDto.Name}.";
                        return(false);
                    }
                }
                break;
            }

            case MethodTypes.Put:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var vendor = dbContext.Vendors.Find(vendorDto.Id);
                    if (vendor == null)
                    {
                        message = "Proveedor no encontrado.";
                        return(false);
                    }

                    if (dbContext.Vendors.Any(u => u.IsActive && u.Id != vendorDto.Id &&
                                              u.Name.Equals(vendorDto.Name,
                                                            StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe un proveedor con el nombre {vendorDto.Name}.";
                        return(false);
                    }
                }
                break;
            }
            }
            return(true);
        }
Ejemplo n.º 23
0
        public bool IsValid(MethodTypes httpMethod, CashRegisterDto cashRegisterDto, out string message)
        {
            message = "";
            switch (httpMethod)
            {
            case MethodTypes.Post:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    if (dbContext.CashRegisters.Any(u => u.IsActive &&
                                                    u.Name.Equals(cashRegisterDto.Name,
                                                                  StringComparison.CurrentCultureIgnoreCase) && u.StoreId == cashRegisterDto.Store.Id))
                    {
                        message = $"Ya existe una caja llamada {cashRegisterDto.Name}.";
                        return(false);
                    }
                }
                break;
            }

            case MethodTypes.Put:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var cashRegister = dbContext.CashRegisters.Find(cashRegisterDto.Id);
                    if (cashRegister == null)
                    {
                        message = "Caja no encontrada.";
                        return(false);
                    }

                    if (dbContext.CashRegisters.Any(u => u.IsActive && u.Id != cashRegisterDto.Id &&
                                                    u.Name.Equals(cashRegisterDto.Name,
                                                                  StringComparison.CurrentCultureIgnoreCase) && u.StoreId == cashRegisterDto.Store.Id))
                    {
                        message = $"Ya existe una caja llamada {cashRegisterDto.Name}.";
                        return(false);
                    }
                }
                break;
            }
            }
            return(true);
        }
Ejemplo n.º 24
0
        public bool IsValid(MethodTypes httpMethod, CustomerDto customerDto, out string message)
        {
            message = "";
            switch (httpMethod)
            {
            case MethodTypes.Post:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    if (dbContext.Customers.Any(u => u.IsActive &&
                                                u.Name.Equals(customerDto.Name,
                                                              StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe un cliente con el nombre {customerDto.Name}.";
                        return(false);
                    }
                }
                break;
            }

            case MethodTypes.Put:
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var customer = dbContext.Customers.Find(customerDto.Id);
                    if (customer == null)
                    {
                        message = "Cliente no encontrado.";
                        return(false);
                    }

                    if (dbContext.Customers.Any(u => u.IsActive && u.Id != customerDto.Id &&
                                                u.Name.Equals(customerDto.Name,
                                                              StringComparison.CurrentCultureIgnoreCase)))
                    {
                        message = $"Ya existe un cliente con el nombre {customerDto.Name}.";
                        return(false);
                    }
                }
                break;
            }
            }
            return(true);
        }
Ejemplo n.º 25
0
        public CashRegisterDto AddCashRegister(CashRegisterDto cashRegisterDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = string.Empty;

                    CashRegister cashRegister = new CashRegister
                    {
                        Name     = cashRegisterDto.Name,
                        IsActive = true
                    };

                    CashFound cashFound = new CashFound
                    {
                        CashRegister = cashRegister,
                        Quantity     = 0,
                        RegisterDate = DateTime.Now,
                        //UserId = cashRegisterDto.User.Id
                    };

                    dbContext.Entry(cashRegister).State = EntityState.Added;
                    dbContext.Entry(cashFound).State    = EntityState.Added;
                    dbContext.CashRegisters.Add(cashRegister);
                    dbContext.CashFounds.Add(cashFound);

                    if (dbContext.SaveChanges() > 0)
                    {
                        cashRegisterDto.Id = cashRegister.Id;
                        return(cashRegisterDto);
                    }

                    message = "No se pudo agregar la caja.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo agregar la caja. {e.Message}";
                return(null);
            }
        }
Ejemplo n.º 26
0
        public IEnumerable <CustomerDto> GetCustomers()
        {
            using (PosRiContext dbContext = new PosRiContext())
            {
                var customers = dbContext.Customers
                                .Where(u => u.IsActive)
                                .Include(u => u.State)
                                .ToList();

                var customersDto = new List <CustomerDto>();

                foreach (var customer in customers)
                {
                    customersDto.Add(new CustomerDto(customer));
                }

                return(customersDto);
            }
        }
Ejemplo n.º 27
0
        public IEnumerable <VendorDto> GetVendors()
        {
            using (PosRiContext dbContext = new PosRiContext())
            {
                var vendors = dbContext.Vendors
                              .Where(u => u.IsActive)
                              .Include(u => u.State)
                              .Include(v => v.Brands)
                              .ToList();

                var vendorsDto = new List <VendorDto>();

                foreach (var vendor in vendors)
                {
                    vendorsDto.Add(new VendorDto(vendor));
                }

                return(vendorsDto);
            }
        }
Ejemplo n.º 28
0
        public UserDto AddUser(UserDto userDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    List <int> rolesId = userDto.Roles.Select(r => r.Id).ToList();
                    var        roles   = dbContext.Roles.Where(r => rolesId.Contains(r.Id)).ToList();
                    User       user    = new User
                    {
                        Name     = userDto.Name,
                        Password = userDto.Password,
                        Username = userDto.Username,
                        Birthday = userDto.Birthday,
                        HireDate = userDto.HireDate,
                        Roles    = roles,
                        IsActive = true
                    };

                    dbContext.Entry(user).State = EntityState.Added;
                    dbContext.Users.Add(user);

                    if (dbContext.SaveChanges() > 0)
                    {
                        userDto.Id       = user.Id;
                        userDto.Password = string.Empty;
                        return(userDto);
                    }

                    message = "No se pudo agregar el usuario.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }
Ejemplo n.º 29
0
        public CustomerDto AddCustomer(CustomerDto customerDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";

                    Customer customer = new Customer
                    {
                        Name         = customerDto.Name,
                        Address      = customerDto.Address,
                        City         = customerDto.City,
                        CreationDate = DateTime.Now,
                        Phone        = customerDto.Phone,
                        Email        = customerDto.Email,
                        Rfc          = customerDto.Email,
                        IsActive     = true,
                        StateId      = customerDto.State.Id
                    };

                    dbContext.Entry(customer).State = EntityState.Added;
                    dbContext.Customers.Add(customer);

                    if (dbContext.SaveChanges() > 0)
                    {
                        customerDto.Id = customer.Id;
                        return(customerDto);
                    }

                    message = "No se pudo agregar el cliente.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo agregar el cliente. {e.Message}";
                return(null);
            }
        }
Ejemplo n.º 30
0
        public CustomerDto UpdateCustomer(CustomerDto customerDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    var customer = dbContext.Customers.Find(customerDto.Id);

                    if (customer == null)
                    {
                        message = "Cliente no encontrado.";
                        return(null);
                    }

                    customer.Name    = customerDto.Name;
                    customer.Address = customerDto.Address;
                    customer.City    = customerDto.City;
                    customer.Email   = customerDto.Email;
                    customer.Phone   = customerDto.Phone;
                    customer.Rfc     = customerDto.Rfc;
                    customer.StateId = customerDto.State.Id;

                    dbContext.Entry(customer).State = EntityState.Modified;

                    if (dbContext.SaveChanges() > 0)
                    {
                        return(customerDto);
                    }

                    message = "No se pudo actualizar el cliente.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = $"No se pudo actualizar el cliente. {e.Message}";
                return(null);
            }
        }