Esempio n. 1
0
        /// <summary>
        /// Возвращает строку запроса на получение всех повреждений воздушного судна
        /// </summary>
        /// <param name="aircraftId">Id ВС, диретивы которого необходимо получить</param>
        /// <param name="filters">Фильтры для Maintenance Directives</param>
        /// <param name="loadChild">Загружать дочерние элементы</param>
        /// <param name="getDeleted">Загружать недействительные записи</param>
        /// <returns></returns>
        public static List <DbQuery> GetAircraftDamageItemSelectQuery(int aircraftId,
                                                                      ICommonFilter[] filters = null,
                                                                      bool loadChild          = false,
                                                                      bool getDeleted         = false)
        {
            var componentIn = ComponentQueries.GetSelectQueryPrimaryColumnOnly(aircraftId);
            var allFilters  = new List <ICommonFilter> {
                new CommonFilter <string>(Directive.ParentBaseComponentProperty, FilterType.In, new[] { componentIn })
            };

            if (filters != null && filters.Any())
            {
                allFilters.AddRange(filters);
            }
            var qrs = BaseQueries.GetSelectQueryWithWhereAll <DamageItem>(allFilters.ToArray(), loadChild, getDeleted);

            return(qrs);
        }
Esempio n. 2
0
        /// <summary>
        /// Возвращает строку запроса на получение всех облуживания воздушного судна
        /// </summary>
        /// <param name="aircraftId">Id ВС, диретивы которого необходимо получить</param>
        /// <param name="filters">Фильтры для Maintenance Directives</param>
        /// <param name="loadChild">Загружать дочерние элементы</param>
        /// <param name="getDeleted">Загружать недействительные записи</param>
        /// <returns></returns>
        public static List <DbQuery> GetAircraftDirectivesSelectQuery(int aircraftId, ICommonFilter[] filters = null, bool loadChild = false, bool getDeleted = false)
        {
            //string detailIn =
            //    BaseQueries.GetSelectQueryColumnOnly<Detail>(BaseEntityObject.ItemIdProperty, new[] {DetailQueries.GetWhereStatement(aircraft)});
            var componentIn = $@"(select ItemId 
                                               from dbo.Components 
                                               where dbo.Components.IsDeleted = 0 and {ComponentQueries.GetWhereStatement(aircraftId).Values[0]})";
            var allFilters  = new List <ICommonFilter> {
                new CommonFilter <string>(ComponentDirective.ComponentIdProperty, FilterType.In, new[] { componentIn })
            };

            if (filters != null && filters.Length > 0)
            {
                allFilters.AddRange(filters);
            }
            return(BaseQueries.GetSelectQueryWithWhereAll <ComponentDirective>(allFilters.ToArray(), loadChild, getDeleted));
        }