コード例 #1
0
ファイル: BrandManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #2
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);
            }
        }
コード例 #3
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);
            }
        }
コード例 #4
0
ファイル: StoreManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #5
0
ファイル: CustomerManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #6
0
ファイル: BrandManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #7
0
ファイル: VendorManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #8
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);
            }
        }
コード例 #9
0
ファイル: BrandManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #10
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);
            }
        }
コード例 #11
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);
            }
        }
コード例 #12
0
ファイル: VendorManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #13
0
ファイル: VendorManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #14
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);
            }
        }
コード例 #15
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);
            }
        }
コード例 #16
0
        public static void Seed(PosRiContext dbContext)
        {
            dbContext.States.AddOrUpdate(
                s => s.Id,
                new State(1, "Aguascalientes"),
                new State(2, "Baja California"),
                new State(3, "Baja California Sur"),
                new State(4, "Campeche"),
                new State(5, "Coahuila de Zaragoza"),
                new State(6, "Colima"),
                new State(7, "Chiapas"),
                new State(8, "Chihuahua"),
                new State(9, "Distrito Federal"),
                new State(10, "Durango"),
                new State(11, "Guanajuato"),
                new State(12, "Guerrero"),
                new State(13, "Hidalgo"),
                new State(14, "Jalisco"),
                new State(15, "México"),
                new State(16, "Michoacán de Ocampo"),
                new State(17, "Morelos"),
                new State(18, "Nayarit"),
                new State(19, "Nuevo León"),
                new State(20, "Oaxaca de Juárez"),
                new State(21, "Puebla"),
                new State(22, "Querétaro"),
                new State(23, "Quintana Roo"),
                new State(24, "San Luis Potosí"),
                new State(25, "Sinaloa"),
                new State(26, "Sonora"),
                new State(27, "Tabasco"),
                new State(28, "Tamaulipas"),
                new State(29, "Tlaxcala"),
                new State(30, "Veracruz de Ignacio de la Llave"),
                new State(31, "Yucatán"),
                new State(32, "Zacatecas")
                );

            dbContext.SaveChanges();
        }
コード例 #17
0
ファイル: CustomerManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #18
0
ファイル: CustomerManager.cs プロジェクト: ricesqgue/posri
        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);
            }
        }
コード例 #19
0
ファイル: StoreManager.cs プロジェクト: ricesqgue/posri
        public bool DeleteStore(StoreDto storeDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    var store = dbContext.Stores.Find(storeDto.Id);

                    if (store == null)
                    {
                        message = "Sucursal no encontrada.";
                        return(false);
                    }

                    store.IsActive = false;

                    foreach (var storeCashRegister in store.CashRegisters)
                    {
                        storeCashRegister.IsActive = false;
                        dbContext.Entry(storeCashRegister).State = EntityState.Modified;
                    }

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

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

                    message = "No se pudo eliminar la sucursal.";
                    return(false);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(false);
            }
        }
コード例 #20
0
ファイル: StoreManager.cs プロジェクト: ricesqgue/posri
        public StoreDto UpdateStore(StoreDto storeDto, out string message)
        {
            try
            {
                using (PosRiContext dbContext = new PosRiContext())
                {
                    message = "";
                    var store = dbContext.Stores.Find(storeDto.Id);

                    if (store == null)
                    {
                        message = "Sucursal no encontrada.";
                        return(null);
                    }

                    store.Name    = storeDto.Name;
                    store.Address = store.Address;
                    store.Phone   = store.Phone;

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

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

                    message = "No se pudo actualizar la sucursal.";
                    return(null);
                }
            }
            catch (Exception e)
            {
                message = e.Message;
                return(null);
            }
        }