Beispiel #1
0
        internal List <Info.Info.CorralInfo> ObtenerCorralesPorTipoCorral(Info.Info.TipoCorralInfo tc, int organizacionID)
        {
            try
            {
                Logger.Info();

                var query = da.Tabla <Info.Info.CorralInfo>();
                query = tc != null?query.Where(e => e.TipoCorralId == tc.TipoCorralID) : query;

                query = query.Where(e => e.OrganizacionId == organizacionID);

                return(query.ToList());
            }
            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);
            }
        }
Beispiel #2
0
        internal List <Info.Info.CorralInfo> ObtenerCorralesConLoteActivoPorTipoCorralSinEnfermeriaAsignada(Info.Info.TipoCorralInfo tipoCorral, int organizacionId)
        {
            try
            {
                Logger.Info();
                var lotes = da.Tabla <Info.Info.LoteInfo>().Where(e => e.Activo == Info.Enums.EstatusEnum.Activo);
                var query = da.Tabla <Info.Info.CorralInfo>();
                query = tipoCorral != null?query.Where(e => e.TipoCorralId == tipoCorral.TipoCorralID) : query;

                query = query.Where(e => e.OrganizacionId == organizacionId);
                query = query.Join(lotes, e => e.CorralID, e => e.CorralID, (a, b) => a);

                var tblEnfermeriaCorral = da.Tabla <Info.Info.EnfermeriaCorralInfo>();

                query = (from corral in query
                         join enfermeriaCorral in tblEnfermeriaCorral on corral.CorralID equals enfermeriaCorral.CorralID into defaults
                         from enfermeriaDefault in defaults.DefaultIfEmpty()
                         where enfermeriaDefault == null || enfermeriaDefault.Activo == EstatusEnum.Inactivo
                         select corral).Distinct();

                var corralesActivos = from corral in query
                                      join enfermeriaCorral in tblEnfermeriaCorral on corral.CorralID equals
                                      enfermeriaCorral.CorralID
                                      where enfermeriaCorral.Activo == EstatusEnum.Activo
                                      select corral;

                List <Info.Info.CorralInfo> listaCorrales        = query.ToList();
                List <Info.Info.CorralInfo> listaCorralesActivos = corralesActivos.ToList();

                return(ObtenerListaFinal(listaCorrales, listaCorralesActivos));
            }
            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);
            }
        }