Esempio n. 1
0
        /// <summary>
        /// Возвращает условие того деталь принадлежит базовому агрегату
        /// </summary>
        /// <param name="directiveType"></param>
        /// <returns></returns>
        public static ICommonFilter GetWhereStatement(DirectiveType directiveType)
        {
            if (directiveType == null)
            {
                throw new ArgumentNullException("directiveType", "must be not null");
            }
            if (DirectiveType.GetDirectiveTypeById(directiveType.ItemId) == DirectiveType.Unknown)
            {
                throw new ArgumentException("unknown directive type", "directiveType");
            }

            ICommonFilter state;

            if (directiveType == DirectiveType.All)
            {
                DirectiveType[] s =
                { DirectiveType.AirworthenessDirectives,
                  DirectiveType.DamagesRequiring,
                  DirectiveType.EngineeringOrders,
                  DirectiveType.OutOfPhase,
                  DirectiveType.SB };

                state = new CommonFilter <DirectiveType>(Directive.DirectiveTypeProperty, FilterType.In, s);
            }
            else if (directiveType == DirectiveType.EngineeringOrders)
            {
                state =
                    new CommonFilter <string>($@" (directives.EngineeringOrders <> '' 
                                      or directives.EngineeringOrderFileID > 0 
                                      or directives.DirectiveType = {directiveType.ItemId})");
            }
            else if (directiveType == DirectiveType.ModificationStatus)
            {
                state = new CommonFilter <DirectiveWorkType>(Directive.WorkTypeProperty, DirectiveWorkType.Modification);
            }
            else if (directiveType == DirectiveType.SB)
            {
                //state =
                //    new CommonFilter<string>(string.Format(@"((directives.ServiceBulletinNo <> ''
                //                                           or directives.ServiceBulletinFileID > 0 )
                //                                           and directives.DirectiveType = {0})", directiveType.ItemId));
                //TODO: Было так но потом захотели sb в ad перемещать
                state = new CommonFilter <string>($@"(directives.ServiceBulletinNo <> '' 
				                                           or directives.ServiceBulletinFileID > 0 
				                                           or directives.DirectiveType = {directiveType.ItemId})"                );
            }
            else
            {
                //state = new CommonFilter<DirectiveType>(Directive.DirectiveTypeProperty, directiveType);
                state =
                    new CommonFilter <string>($@"(directives.Title != 'N/A'
                                                           and directives.DirectiveType = {directiveType.ItemId})");
            }
            return(state);
        }
Esempio n. 2
0
        public static ICommonFilter GetWhereStatementForAll(DirectiveType directiveType, string text, string paragraph)
        {
            if (directiveType == null)
            {
                throw new ArgumentNullException("directiveType", "must be not null");
            }
            if (DirectiveType.GetDirectiveTypeById(directiveType.ItemId) == DirectiveType.Unknown)
            {
                throw new ArgumentException("unknown directive type", "directiveType");
            }

            ICommonFilter state;

            state =
                new CommonFilter <string>(string.Format($@"(directives.Title != 'N/A' and directives.Title like '%{text}%' and directives.Paragraph like '%{paragraph}%'
                                                           and directives.DirectiveType = {directiveType.ItemId})"));
            return(state);
        }
Esempio n. 3
0
        public async Task <IActionResult> Sb([FromRoute] int aircraftId, int directiveType)
        {
            var view = await _directiveRepository.GetDirectives(aircraftId, DirectiveType.GetDirectiveTypeById(directiveType));

            return(View(view));
        }