Example #1
0
        private void HeaderControlPrintButtonDisplayerRequested(object sender, Interfaces.ReferenceEventArgs e)
        {
            BaseComponent baseComponent;
            Operator      reportedOperator;
            var           reportedDetail = _currentComponent;
            var           directiveList  = new List <ComponentDirective>(_currentComponent.ComponentDirectives.ToArray());

            if (_currentComponent is BaseComponent)
            {
                baseComponent = (BaseComponent)_currentComponent;

                var parentAircraft = GlobalObjects.AircraftsCore.GetAircraftById(baseComponent.ParentAircraftId);
                var parentStore    = GlobalObjects.StoreCore.GetStoreById(baseComponent.ParentStoreId);

                reportedOperator = parentAircraft != null
                                ? GlobalObjects.CasEnvironment.Operators.First(o => o.ItemId == parentAircraft.OperatorId)
                                : parentStore.Operator;
            }
            else
            {
                baseComponent = _currentComponent.ParentBaseComponent;        //TODO:(Evgenii Babak) заменить на использование ComponentCore
                if (baseComponent == null)
                {
                    return;
                }

                var parentAircraft = GlobalObjects.AircraftsCore.GetAircraftById(baseComponent.ParentAircraftId);
                var parentStore    = GlobalObjects.StoreCore.GetStoreById(baseComponent.ParentStoreId);

                reportedOperator = parentAircraft != null
                                ? GlobalObjects.CasEnvironment.Operators.First(o => o.ItemId == parentAircraft.OperatorId)
                                : parentStore.Operator;
            }

            var caption = $"{DestinationHelper.GetDestinationObjectString(baseComponent)}. Compliance List";

            if (sender == _itemPrintReportEngineRecords)
            {
                var selection = "";
                var header    = "";
                var trust     = "";

                if (baseComponent.BaseComponentType == BaseComponentType.Frame)
                {
                    selection = "All";
                    header    = "FRAME";
                }

                if (baseComponent.BaseComponentType == BaseComponentType.LandingGear)
                {
                    selection = baseComponent.TransferRecords.GetLast().Position;
                    header    = "LANDING GEAR";
                }

                if (baseComponent.BaseComponentType == BaseComponentType.Engine)
                {
                    selection = BaseComponentType.Engine + " " + baseComponent.TransferRecords.GetLast().Position;
                    header    = "ENGINE";
                    trust     = $"Thrust: {baseComponent.Thrust}";
                }

                if (baseComponent.BaseComponentType == BaseComponentType.Apu)
                {
                    selection = BaseComponentType.Apu.ToString();
                    header    = "APU";
                }

                var builder = new ComponentTasksReportBuilderNew(header, trust);
                e.DisplayerText           = caption;
                e.TypeOfReflection        = ReflectionTypes.DisplayInNew;
                builder.DateAsOf          = DateTime.Today.ToString(new GlobalTermsProvider()["DateFormat"].ToString());
                builder.ReportedComponent = reportedDetail;
                builder.OperatorLogotype  = reportedOperator.LogoTypeWhite;
                builder.FilterSelection   = selection;
                builder.AddDirectives(directiveList.ToArray());
                builder.ForecastData = null;
                e.RequestedEntity    = new ReportScreen(builder);
            }
            else
            {
                var builder = new ComponentTasksReportBuilder();

                e.DisplayerText    = caption;
                e.TypeOfReflection = ReflectionTypes.DisplayInNew;

                builder.DateAsOf          = DateTime.Today.ToString(new GlobalTermsProvider()["DateFormat"].ToString());
                builder.ReportedComponent = reportedDetail;
                builder.OperatorLogotype  = reportedOperator.LogoTypeWhite;
                if (baseComponent.BaseComponentType == BaseComponentType.Frame)
                {
                    var selection = "All";
                    builder.FilterSelection = selection;
                    builder.AddDirectives(directiveList.ToArray());
                    builder.ForecastData = null;
                    e.RequestedEntity    = new ReportScreen(builder);
                }
                else
                {
                    var selection = "";
                    if (baseComponent.BaseComponentType == BaseComponentType.LandingGear)
                    {
                        selection = baseComponent.TransferRecords.GetLast().Position;
                    }
                    if (baseComponent.BaseComponentType == BaseComponentType.Engine)
                    {
                        selection = BaseComponentType.Engine + " " + baseComponent.TransferRecords.GetLast().Position;
                    }
                    if (baseComponent.BaseComponentType == BaseComponentType.Apu)
                    {
                        selection = BaseComponentType.Apu.ToString();
                    }
                    builder.LifelengthAircraftSinceNew =
                        GlobalObjects.CasEnvironment.Calculator.GetCurrentFlightLifelength(CurrentAircraft);
                    builder.FilterSelection = selection;
                    builder.AddDirectives(directiveList.ToArray());
                    builder.ForecastData = null;
                    e.RequestedEntity    = new ReportScreen(builder);
                }
            }
        }
Example #2
0
        private void ButtonPrintDisplayerRequested(object sender, ReferenceEventArgs e)
        {
            BaseDetail baseDetail;
            Operator   reportedOperator;
            var        reportedDetail = _currentDetail;
            var        directiveList  = new List <DetailDirective>(_currentDetail.DetailDirectives.ToArray());

            if (_currentDetail is BaseDetail)
            {
                baseDetail = (BaseDetail)_currentDetail;
                //TODO:(Evgenii Babak) нужно новое свойство OperatorId в классе Detail
                var parentAircraft = GlobalObjects.AircraftsCore.GetAircraftById(baseDetail.ParentAircraftId);
                var parentStore    = GlobalObjects.StoreCore.GetStoreById(baseDetail.ParentStoreId);
                reportedOperator = parentAircraft != null
                                       ? GlobalObjects.CasEnvironment.Operators.First(o => o.ItemId == parentAircraft.OperatorId)
                                                                           : parentStore.Operator;
            }
            else
            {
                baseDetail = _currentDetail.ParentBaseDetail;//TODO:(Evgenii Babak) заменить на использование ComponentCore
                if (baseDetail == null)
                {
                    return;
                }
                //TODO:(Evgenii Babak) нужно новое свойство OperatorId в классе Detail
                var parentAircraft = GlobalObjects.AircraftsCore.GetAircraftById(baseDetail.ParentAircraftId);
                var parentStore    = GlobalObjects.StoreCore.GetStoreById(baseDetail.ParentStoreId);
                reportedOperator = parentAircraft != null
                                       ? GlobalObjects.CasEnvironment.Operators.First(o => o.ItemId == parentAircraft.OperatorId)
                                                                           : parentStore.Operator;
            }
            var    psn = _currentDetail.PartNumber;
            string caption;

            if (baseDetail.ParentAircraftId > 0)
            {
                caption = $"{baseDetail.GetParentAircraftRegNumber()}. Component {psn}. Compliance List";
            }
            else
            {
                caption = $"{baseDetail.ParentStoreId}. Component {psn}. Compliance List";
            }

            var builder = new ComponentTasksReportBuilder();

            e.DisplayerText    = caption;
            e.TypeOfReflection = ReflectionTypes.DisplayInNew;

            builder.DateAsOf         = DateTime.Today.ToString(new GlobalTermsProvider()["DateFormat"].ToString());
            builder.ReportedDetail   = reportedDetail;
            builder.OperatorLogotype = reportedOperator.LogoTypeWhite;
            if (baseDetail.BaseDetailType == BaseDetailType.Frame)
            {
                var selection = "All";
                builder.FilterSelection = selection;
                builder.AddDirectives(directiveList.ToArray());
                builder.ForecastData = null;
                e.RequestedEntity    = new ReportScreen(builder);
            }
            else
            {
                var selection = "";
                if (baseDetail.BaseDetailType == BaseDetailType.LandingGear)
                {
                    selection = baseDetail.TransferRecords.GetLast().Position;
                }
                if (baseDetail.BaseDetailType == BaseDetailType.Engine)
                {
                    selection = BaseDetailType.Engine + " " + baseDetail.TransferRecords.GetLast().Position;
                }
                if (baseDetail.BaseDetailType == BaseDetailType.Apu)
                {
                    selection = BaseDetailType.Apu.ToString();
                }
                builder.LifelengthAircraftSinceNew =
                    GlobalObjects.CasEnvironment.Calculator.GetCurrentFlightLifelength(CurrentAircraft);
                //if (filteredDirectives.Length != notFilteredDirectives.Length)
                builder.FilterSelection = selection;
                builder.AddDirectives(directiveList.ToArray());
                builder.ForecastData = null;
                e.RequestedEntity    = new ReportScreen(builder);
            }
        }