public DocumentoDTO AddNewDocument(DocumentoDTO documentoDTO, int idEmpresa, int idSector) { try { Console.WriteLine("[DocumentosService] -> insertando nuevo documento"); Documento documento = ModelMapper.Map(documentoDTO); documento.EmpresaId = idEmpresa; documento.SectorId = idSector; int idInserted = 0; Console.WriteLine("[DocumentosService] -> insertando documento: " + documento.ToString()); using (DocumentosDbContext db = new DocumentosDbContext()) { EntityEntry <Documento> result = db.Documentos.Add(documento); db.SaveChanges(); idInserted = result.Entity.DocumentoId; } if (idInserted == 0) { Console.WriteLine("[DocumentosService] -> operacion fallida"); return(null); } documentoDTO.DocumentoId = idInserted; documentoDTO.Fecha = documento.Fecha.ToString(); } catch (Exception exception) { Console.WriteLine("[DocumentosService] -> se produjo un error error en acceso a la base de datos"); throw new DocumentosDatabaseException("Se produjo un error error en acceso a la base de datos", exception); } // Armado de objeto respuesta no tiene que afectar el flujo, ya que se insertó registro en DB try{ documentoDTO.Empresa = loginService.getNombreEmpresaBy(idEmpresa); documentoDTO.Sector = loginService.getNombreSectorBy(idSector, idEmpresa); } catch (Exception exception) { Console.WriteLine("[DocumentosService] -> error al obtener nombre para respuesta: " + exception.Message); } Console.WriteLine("[DocumentosService] -> se registro documento con id" + documentoDTO.DocumentoId); return(documentoDTO); }
public int AddNewSectorInEmpresa(int idEmpresa, Sector sector) { Console.WriteLine("[EmpresasService] -> buscando empresa"); Empresa valid = FindEmpresaBy(idEmpresa); if (valid == null || valid.Nombre == null) { Console.WriteLine("[EmpresasService] -> no existe empresa id = " + idEmpresa); return(-99); } int idGenerated = 0; try{ sector.EmpresaId = idEmpresa; Console.WriteLine("[EmpresasService] -> insertando nuevo sector"); using (DocumentosDbContext db = new DocumentosDbContext()) { EntityEntry <Sector> result = db.Sectores.Add(sector); db.SaveChanges(); idGenerated = result.Entity.SectorId; } } catch (Exception exception) { Console.WriteLine("[EmpresasService] -> se produjo un error error en el proceso con la base de datos"); throw new DocumentosDatabaseException("Se produjo un error error en el proceso con la base de datos", exception); } if (idGenerated == 0) { Console.WriteLine("[EmpresasService] -> no se completo proceso"); } Console.WriteLine("[EmpresasService] -> se registro nuevo sector con id: " + idGenerated); return(idGenerated); }
public int AddNewEmpresa(Empresa empresa) { int idGenerated = 0; try{ Console.WriteLine("[EmpresasService] -> insertando nueva empresa"); using (DocumentosDbContext db = new DocumentosDbContext()) { EntityEntry <Empresa> result = db.Empresas.Add(empresa); db.SaveChanges(); idGenerated = result.Entity.EmpresaId; } } catch (Exception exception) { Console.WriteLine("[EmpresasService] -> se produjo un error error en el proceso con la base de datos"); throw new DocumentosDatabaseException("Se produjo un error error en el proceso con la base de datos", exception); } if (idGenerated == 0) { Console.WriteLine("[EmpresasService] -> no se completo proceso"); } Console.WriteLine("[EmpresasService] -> se registro nueva empresa con id: " + idGenerated); return(idGenerated); }
public EmpresaDTO ModifyEmpresa(int idEmpresa, Empresa empresa) { Console.WriteLine("[EmpresasService] -> buscando empresa con id: " + idEmpresa); Empresa valid = FindEmpresaBy(idEmpresa); if (valid == null || valid.Nombre == null) { Console.WriteLine("[EmpresasService] -> no existe empresa id = " + idEmpresa); return(null); } Console.WriteLine("[EmpresasService] -> actualizando empresa..."); try{ if (empresa.Nombre != null) { valid.Nombre = empresa.Nombre; } if (empresa.Direccion != null) { valid.Direccion = empresa.Direccion; } if (empresa.Telefono != null) { valid.Telefono = empresa.Telefono; } if (empresa.Web != null) { valid.Web = empresa.Web; } using (DocumentosDbContext db = new DocumentosDbContext()) { EntityEntry <Empresa> result = db.Empresas.Update(valid); db.SaveChanges(); valid = result.Entity; } return(ModelMapper.Map(valid)); } catch (Exception exception) { Console.WriteLine("[EmpresasService] -> se produjo un error error en el proceso con la base de datos"); throw new DocumentosDatabaseException("Se produjo un error error en el proceso con la base de datos", exception); } }
public int DeleteDocumento(string number) { try { List <Documento> toDelete = null; using (DocumentosDbContext db = new DocumentosDbContext()){ toDelete = db.Documentos.Where(d => d.Numero == number).ToList(); } if (toDelete.Count == 0) { Console.WriteLine("[DocumentosService] -> no se encontraron registro a eliminar"); return(0); } using (DocumentosDbContext db = new DocumentosDbContext()) { db.Documentos.RemoveRange(toDelete); db.SaveChanges(); } Console.WriteLine("[DocumentosService] -> registros eliminados: " + toDelete.Count); return(toDelete.Count); } catch (Exception exception) { Console.WriteLine("[DocumentosService] -> se produjo un error error en acceso a la base de datos"); throw new DocumentosDatabaseException("Se produjo un error error en acceso a la base de datos", exception); } }
public EmpresaDTO DeleteEmpresa(int idEmpresa) { Console.WriteLine("[EmpresasService] -> buscando empresa con id: " + idEmpresa); Empresa reg = FindEmpresaBy(idEmpresa); if (reg == null || reg.Nombre == null) { Console.WriteLine("[EmpresasService] -> no hay empresas con id: " + idEmpresa); return(null); } Console.WriteLine("[EmpresasService] -> se va a eliminar: " + reg.ToString()); try{ EmpresaDTO deleted = new EmpresaDTO(); using (DocumentosDbContext db = new DocumentosDbContext()){ EntityEntry <Empresa> result = db.Empresas.Remove(reg); db.SaveChanges(); deleted = ModelMapper.Map(result.Entity); } return(deleted); } catch (Exception exception) { Console.WriteLine("[EmpresasService] -> se produjo un error error en el proceso con la base de datos"); throw new DocumentosDatabaseException("Se produjo un error error en el proceso con la base de datos", exception); } }