///<summary> /// Obtiene una lista de la tabla RotoMix para cargar el commobox del mismo nombre "RotoMix" /// </summary> /// <returns></returns> internal RotoMixInfo ObtenerRotoMixXOrganizacionYDescripcion(int organizacionId, string Descripcion) { try { Logger.Info(); Dictionary <string, object> parameters = AuxRotomixDAL.ObtenerRotoMixXOrganizacionYDescripcion(organizacionId, Descripcion); DataSet ds = Retrieve("ProduccionFormula_ObtenerRotoMixXDescripcion", parameters); RotoMixInfo result = null; if (ValidateDataSet(ds)) { result = MapRotomixDAL.ObtenerRotoMixXOrganizacionYDescripcion(ds); } return(result); } catch (SqlException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (DataException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Metodo para Guardar/Modificar una entidad Rotomix /// </summary> /// <param name="info"></param> internal int Guardar(RotoMixInfo info) { try { Logger.Info(); var rotomixDAL = new RotomixDAL(); int result = info.RotoMixId; if (info.RotoMixId == 0) { result = rotomixDAL.Crear(info); } else { rotomixDAL.Actualizar(info); } return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Inicializa el Contexto /// </summary> private void InicializaContexto() { Contexto = new RotoMixInfo { UsuarioCreacionID = AuxConfiguracion.ObtenerUsuarioLogueado(), }; }
/// <summary> /// Método que obtiene un registro /// </summary> /// <param name="ds"></param> /// <returns></returns> internal static RotoMixInfo ObtenerPorDescripcion(DataSet ds) { try { Logger.Info(); DataTable dt = ds.Tables[ConstantesDAL.DtDatos]; RotoMixInfo entidad = (from info in dt.AsEnumerable() select new RotoMixInfo { RotoMixId = info.Field <int>("RotomixID"), Organizacion = new OrganizacionInfo { OrganizacionID = info.Field <int>("OrganizacionID"), Descripcion = info.Field <string>("Organizacion") }, Descripcion = info.Field <string>("Descripcion"), Activo = info.Field <bool>("Activo").BoolAEnum(), }).First(); return(entidad); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Metodo para Crear un registro de Rotomix /// </summary> /// <param name="info">Valores de la entidad que será creada</param> internal int Crear(RotoMixInfo info) { try { Logger.Info(); Dictionary <string, object> parameters = AuxRotomixDAL.ObtenerParametrosCrear(info); int result = Create("Rotomix_Crear", parameters); return(result); } catch (SqlException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (DataException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un registro de Rotomix /// </summary> /// <param name="descripcion">Descripción de la Rotomix</param> /// <returns></returns> internal RotoMixInfo ObtenerPorDescripcion(string descripcion) { try { Logger.Info(); Dictionary <string, object> parameters = AuxRotomixDAL.ObtenerParametrosPorDescripcion(descripcion); DataSet ds = Retrieve("Rotomix_ObtenerPorDescripcion", parameters); RotoMixInfo result = null; if (ValidateDataSet(ds)) { result = MapRotomixDAL.ObtenerPorDescripcion(ds); } return(result); } catch (SqlException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (DataException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> internal ResultadoInfo <RotoMixInfo> ObtenerPorPagina(PaginacionInfo pagina, RotoMixInfo filtro) { try { Dictionary <string, object> parameters = AuxRotomixDAL.ObtenerParametrosPorPagina(pagina, filtro); DataSet ds = Retrieve("Rotomix_ObtenerPorPagina", parameters); ResultadoInfo <RotoMixInfo> result = null; if (ValidateDataSet(ds)) { result = MapRotomixDAL.ObtenerPorPagina(ds); } return(result); } catch (SqlException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (DataException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
public List <ProduccionFormulaBatchInfo> CrearListaProduccionFormulaBatch(List <ProcesarArchivoInfo> lista, string formula, int Batch, string nombrerotomix) { var listaFormulaProduccionBatch = new List <ProduccionFormulaBatchInfo>(); var seguridad = HttpContext.Current.Session["Seguridad"] as SeguridadInfo; var formulaPL = new FormulaPL(); var formulasTodas = formulaPL.ObtenerTodos(EstatusEnum.Activo); try { //sacamos los Productos var produccionAgrupada = from w in lista where w.Formula == formula && w.Marca != "2" && w.batch == Batch group w by w.Codigo into g select new { FirstLetter = g.Key, Words = g }; foreach (var z in produccionAgrupada) { var rotomixPl = new RotomixPL(); RotoMixInfo rotoMix = rotomixPl.ObtenerRotoMixXOrganizacionYDescripcion(seguridad.Usuario.Organizacion.OrganizacionID, nombrerotomix); var produccionformulabatch = new ProduccionFormulaBatchInfo(); List <ProcesarArchivoInfo> listafltrada = lista.Where(k => k.Formula == formula && k.Codigo == z.FirstLetter && k.batch == Batch).ToList(); int cantidadReal = (from prod in listafltrada select prod.Real).Sum(); int cantidadProgramada = (from prod in listafltrada select prod.Meta).Sum(); var formulaExiste = formulasTodas.FirstOrDefault( fo => fo.Descripcion.ToUpper().Trim().Equals(formula.ToUpper().Trim(), StringComparison.InvariantCultureIgnoreCase)); if (formulaExiste == null) { formulaExiste = new FormulaInfo(); } produccionformulabatch.OrganizacionID = seguridad.Usuario.Organizacion.OrganizacionID; produccionformulabatch.Batch = Batch; produccionformulabatch.ProductoID = int.Parse(z.FirstLetter); produccionformulabatch.FormulaID = formulaExiste.FormulaId; produccionformulabatch.CantidadProgramada = cantidadProgramada; produccionformulabatch.CantidadReal = cantidadReal; produccionformulabatch.Activo = EstatusEnum.Activo; produccionformulabatch.RotomixID = rotoMix.RotoMixId; listaFormulaProduccionBatch.Add(produccionformulabatch); } } catch (Exception er) { Logger.Error(er); return(null); } return(listaFormulaProduccionBatch); }
/// <summary> /// Metodo que valida los datos para guardar /// </summary> /// <returns></returns> private bool ValidaGuardar() { bool resultado = true; string mensaje = string.Empty; try { if (string.IsNullOrWhiteSpace(txtRotomixID.Text)) { resultado = false; mensaje = Properties.Resources.RotomixEdicion_MsgRotomixIDRequerida; txtRotomixID.Focus(); } else if (Contexto.Organizacion == null || Contexto.Organizacion.OrganizacionID == 0) { resultado = false; mensaje = Properties.Resources.RotomixEdicion_MsgOrganizacionIDRequerida; skAyudaOrganizacion.AsignarFoco(); } else if (string.IsNullOrWhiteSpace(txtDescripcion.Text) || Contexto.Descripcion == string.Empty) { resultado = false; mensaje = Properties.Resources.RotomixEdicion_MsgDescripcionRequerida; txtDescripcion.Focus(); } else if (cmbActivo.SelectedItem == null) { resultado = false; mensaje = Properties.Resources.RotomixEdicion_MsgActivoRequerida; cmbActivo.Focus(); } else { int rotomixId = Extensor.ValorEntero(txtRotomixID.Text); string descripcion = txtDescripcion.Text; var rotomixPL = new RotomixPL(); RotoMixInfo rotomix = rotomixPL.ObtenerPorDescripcion(descripcion); if (rotomix != null && (rotomixId == 0 || rotomixId != rotomix.RotoMixId) && rotomix.Organizacion.OrganizacionID == Contexto.Organizacion.OrganizacionID) { resultado = false; mensaje = string.Format(Properties.Resources.RotomixEdicion_MsgDescripcionExistente, rotomix.RotoMixId); } } } catch (Exception ex) { throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } if (!string.IsNullOrWhiteSpace(mensaje)) { SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning); } return(resultado); }
/// <summary> /// Evento que se ejecuta mientras se esta cerrando la ventana /// </summary> /// <param name="e"></param> protected override void OnClosing(CancelEventArgs e) { if (confirmaSalir) { MessageBoxResult result = SkMessageBox.Show(this, Properties.Resources.Msg_CerrarSinGuardar, MessageBoxButton.YesNo, MessageImage.Question); if (result == MessageBoxResult.Yes) { Contexto = null; } else { e.Cancel = true; } } }
/// <summary> /// Obtiene una entidad Rotomix por su Id /// </summary> /// <param name="rotomixID">Obtiene una entidad Rotomix por su Id</param> /// <returns></returns> internal RotoMixInfo ObtenerPorID(int rotomixID) { try { Logger.Info(); var rotomixDAL = new RotomixDAL(); RotoMixInfo result = rotomixDAL.ObtenerPorID(rotomixID); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene una entidad por su descripción /// </summary> /// <param name="descripcion"></param> /// <returns></returns> public RotoMixInfo ObtenerPorDescripcion(string descripcion) { try { Logger.Info(); var rotomixBL = new RotomixBL(); RotoMixInfo result = rotomixBL.ObtenerPorDescripcion(descripcion); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
///<summary> /// Obtiene una lista de la tabla RotoMix para cargar el commobox del mismo nombre "RotoMix" /// </summary> /// <returns></returns> internal RotoMixInfo ObtenerRotoMixXOrganizacionYDescripcion(int organizacionId, string Descripcion) { try { Logger.Info(); var rotomixDAL = new RotomixDAL(); RotoMixInfo result = rotomixDAL.ObtenerRotoMixXOrganizacionYDescripcion(organizacionId, Descripcion); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Metodo para Guardar/Modificar una entidad Rotomix /// </summary> /// <param name="info">Representa la entidad que se va a grabar</param> public int Guardar(RotoMixInfo info) { try { Logger.Info(); var rotomixBL = new RotomixBL(); int result = rotomixBL.Guardar(info); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> internal ResultadoInfo <RotoMixInfo> ObtenerPorPagina(PaginacionInfo pagina, RotoMixInfo filtro) { try { Logger.Info(); var rotomixDAL = new RotomixDAL(); ResultadoInfo <RotoMixInfo> result = rotomixDAL.ObtenerPorPagina(pagina, filtro); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene la lista para mostrar en el grid /// </summary> private void ObtenerListaRotomix(int inicio, int limite) { try { if (ucPaginacion.ContextoAnterior != null) { bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior); if (!contextosIguales) { ucPaginacion.Inicio = 1; inicio = 1; } } var rotomixPL = new RotomixPL(); RotoMixInfo filtros = ObtenerFiltros(); var pagina = new PaginacionInfo { Inicio = inicio, Limite = limite }; ResultadoInfo <RotoMixInfo> resultadoInfo = rotomixPL.ObtenerPorPagina(pagina, filtros); if (resultadoInfo != null && resultadoInfo.Lista != null && resultadoInfo.Lista.Count > 0) { gridDatos.ItemsSource = resultadoInfo.Lista; ucPaginacion.TotalRegistros = resultadoInfo.TotalRegistros; } else { ucPaginacion.TotalRegistros = 0; ucPaginacion.AsignarValoresIniciales(); gridDatos.ItemsSource = new List <Rotomix>(); } } catch (ExcepcionGenerica) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Rotomix_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.Rotomix_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } }
/// <summary> /// Inicializa el Contexto /// </summary> private void InicializaContexto() { Contexto = new RotoMixInfo { UsuarioCreacionID = AuxConfiguracion.ObtenerUsuarioLogueado(), Organizacion = new OrganizacionInfo { TipoOrganizacion = new TipoOrganizacionInfo { TipoOrganizacionID = Services.Info.Enums.TipoOrganizacion.Ganadera.GetHashCode() }, ListaTiposOrganizacion = new List <TipoOrganizacionInfo> { new TipoOrganizacionInfo { TipoOrganizacionID = Services.Info.Enums.TipoOrganizacion.Ganadera.GetHashCode() } } } }; }
///<summary> /// Obtiene el número de batch que deberá mostrarse en el texbox "txtBatch" /// Este dato se inicializado en 1, por rotomix y por día. /// </summary> /// <returns></returns> internal static int CantidadBatch(DataSet ds) { try { Logger.Info(); DataTable dt = ds.Tables[ConstantesDAL.DtDatos]; RotoMixInfo lista = (from info in dt.AsEnumerable() select new RotoMixInfo { Contador = info.Field <int>("Batch"), }).First(); return(lista.Contador); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene parametros para crear /// </summary> /// <param name="info">Valores de la entidad</param> /// <returns></returns> internal static Dictionary <string, object> ObtenerParametrosCrear(RotoMixInfo info) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@OrganizacionID", info.Organizacion.OrganizacionID }, { "@Descripcion", info.Descripcion }, { "@Activo", info.Activo }, { "@UsuarioCreacionID", info.UsuarioCreacionID }, }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
public string ValidarCodigoRotomix(ProcesarArchivoInfo renglonArchivo) { var resultado = GetLocalResourceObject("OK").ToString(); var seguridad = HttpContext.Current.Session["Seguridad"] as SeguridadInfo; if (seguridad == null) { seguridad = new SeguridadInfo(); } var rotomixPl = new RotomixPL(); RotoMixInfo rotoMix = rotomixPl.ObtenerRotoMixXOrganizacionYDescripcion(seguridad.Usuario.Organizacion.OrganizacionID, renglonArchivo.Rotomix); if (rotoMix == null) { resultado = GetLocalResourceObject("rotomix").ToString(); } else { renglonArchivo.RotoMixID = rotoMix.RotoMixId; } return(resultado); }
/// <summary> /// Metodo para actualizar un registro de Rotomix /// </summary> /// <param name="info">Valores de la entidad que se actualizarán</param> internal void Actualizar(RotoMixInfo info) { try { Logger.Info(); Dictionary <string, object> parameters = AuxRotomixDAL.ObtenerParametrosActualizar(info); Update("Rotomix_Actualizar", parameters); } catch (SqlException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (DataException ex) { Logger.Error(ex); throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Constructor para editar una entidad Rotomix Existente /// </summary> /// <param name="rotomixInfo"></param> public RotomixEdicion(RotoMixInfo rotomixInfo) { InitializeComponent(); rotomixInfo.UsuarioModificacionID = AuxConfiguracion.ObtenerUsuarioLogueado(); Contexto = rotomixInfo; }
/// <summary> /// Obtiene parametros para obtener lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> internal static Dictionary <string, object> ObtenerParametrosPorPagina(PaginacionInfo pagina, RotoMixInfo filtro) { try { Logger.Info(); var parametros = new Dictionary <string, object> { { "@RotomixID", filtro.RotoMixId }, { "@Descripcion", filtro.Descripcion ?? string.Empty }, { "@Activo", filtro.Activo }, { "@Inicio", pagina.Inicio }, { "@Limite", pagina.Limite } }; return(parametros); } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }