public virtual GrabadorCarrier Grabar(TDto ODto, Usuario Usuario, string empresa = "") { //var antes = DateTime.Now; if (Usuario == null) { Usuario = new Usuario(); Usuario.Nombre = "Anonymous"; } GrabadorCarrier grabadorhel = new GrabadorCarrier(); if (ODto != null) { ParameterOverride[] para = { new ParameterOverride("empresa", empresa), new ParameterOverride("entidad", typeof(TEntidad).Name.ToLower()) }; var grabador = (IGrabadorDTO <TEntidad, TDto>)FabricaNegocios.Instancia.Resolver(typeof(IGrabadorDTO <TEntidad, TDto>), para); if (grabador == null) { grabadorhel.setError(true); grabadorhel.setMensaje("No se pudo guardar.\nCódigo de error: 0xSABM_G"); } else { grabadorhel = grabador.Grabar(ODto, Usuario); } } else { grabadorhel.setError(true); grabadorhel.setMensaje("No se pudo guardar.\nCódigo de error: 0xSABM_ODtoNull"); //necesito mejor descripcion del error. } return(grabadorhel); }
public Core.DTO.Carriers.GrabadorCarrier GrabarLista(List <DTO.Preventa.CoordenadaCliente> coordenadasClientes, Usuario usuario, string empresa) { var gc = new List <GrabadorCarrier>(); foreach (var item in coordenadasClientes) { gc.Add(this.Grabar(item, usuario, empresa)); } var gcGeneral = new GrabadorCarrier(); foreach (var item in gc) { if (item.getError()) { if (gcGeneral.getMensaje() == string.Empty) { gcGeneral.setMensaje(item.getMensaje()); } else { gcGeneral.setMensaje(gcGeneral.getMensaje() + item.getMensaje()); } gcGeneral.setError(true); } } if (gcGeneral.getMensaje() == string.Empty) { gcGeneral.setMensaje("Grabado Correctamente."); } return(gcGeneral); }
public virtual GrabadorCarrier Grabar(TDto dto, Usuario Usuario) { GrabadorCarrier ok = new GrabadorCarrier(); var oDto = dto as DTO.DTOBase; var mapeadorUsuario = FabricaNegocios.Instancia.Resolver <MapeadorGenerico <Inteldev.Core.Modelo.Usuarios.Usuario, Inteldev.Core.DTO.Usuarios.Usuario> >(); if (mapeadorUsuario == null) { ok.setError(true); ok.setMensaje("Error al grabar.\nCódigo de error: 0xGDTO_RMU"); } else { var usuario = mapeadorUsuario.DtoToEntidad(Usuario); if (this.Mapeador == null) { ok.setError(true); ok.setMensaje("Error al grabar.\nCódigo de error: 0xGDTO_MNull"); } else { var entidad = this.Mapeador.DtoToEntidad(dto); if (oDto.Id > 0) { ok = this.GrabadorEntidad.GrabarExistente(entidad, usuario); } else { ok = this.GrabadorEntidad.GrabarNuevo(entidad, usuario); ok.setId(entidad.Id); } if (!ok.getError()) { this.GrabadorEntidad.GuardarCambios(); ok = this.GrabarEnFox(entidad, usuario.Nombre, ok); } } } return(ok); }
public GrabadorCarrier GrabarEnFox(TEntidad entidad, string usuario, GrabadorCarrier ok) { var oFox = FabricaNegocios._Resolver <IGrabadorFox <TEntidad> >(); if (oFox != null) { oFox.Usuario = usuario; this.Buscador.CargarEntidadesRelacionadas = CargarRelaciones.CargarTodo; entidad = this.Buscador.BuscarSimple(entidad.Id); try { oFox.Grabar(entidad); } catch (Exception ex) { ok.setError(true); ok.setMensaje(ok.getMensaje() + "\n¡ATENCIÓN!\nOcurrió un error al grabar de Fox, pero en Fixius se grabó correctamente.\nSi es un ALTA, no intente grabar nuevamente.\nContactese con el departamento de Sistemas.\n\nInformación del error: " + ex.Message); } } return(ok); }