Exemplo n.º 1
0
        private void migrateGenders(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("gender");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_SEX")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        ParentValueId = null,
                        Alias = r.Field<string>("NAME_TRANS"),
                        TextContentString = null,
                        IsActive = true
                    })
                .ToList();

            noms["gender"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["gender"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 2
0
        private void migrateAircraftDebtTypesFm(INomRepository repo, SqlConnection conn)
        {
            Nom nom = repo.GetNom("aircraftDebtTypesFm");

            var nomInfo = new Dictionary<string, Tuple<string, string>>()
            {
                {"PLE" , new Tuple<string,string>("ЗАЛОГ" , "Pledge"    )},
                {"DASS", new Tuple<string,string>("ЗАПОР" , "Distraint" )}
            };

            noms["aircraftDebtTypesFm"] = new Dictionary<string, NomValue>();
            foreach (var ni in nomInfo)
            {
                NomValue row = new NomValue()
                {
                    OldId = null,
                    Code = ni.Key,
                    Name = ni.Value.Item1,
                    NameAlt = ni.Value.Item2,
                    Alias = null,
                    IsActive = true,
                    ParentValueId = null,
                    TextContentString = null
                };
                noms["aircraftDebtTypesFm"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 3
0
        private void migrateAircraftOccurrenceClasses(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("aircraftOccurrenceClasses");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_SHORT_LISTS where domain = 'INCIDENT_CLASS'")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("MEANING"),
                        NameAlt = r.Field<string>("MEANING_TRANS"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["aircraftOccurrenceClasses"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["aircraftOccurrenceClasses"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 4
0
        private void migrateAircraftCatAWsFm(INomRepository repo, SqlConnection conn)
        {
            Nom nom = repo.GetNom("aircraftCatAWsFm");
            var results = conn.CreateStoreCommand(@"SELECT [Category BG], [Category EN], Code FROM CatAW")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = null,
                        Code = r.Field<string>("Code"),
                        Name = r.Field<string>("Category BG"),
                        NameAlt = r.Field<string>("Category EN"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["aircraftCatAWsFm"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                if (row.Code == "0" || row.Code == "BLANK")
                {
                    continue;
                }

                noms["aircraftCatAWsFm"][Guid.NewGuid().ToString()] = row; //no old id
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 5
0
        private void migrateAircraftClases66(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("aircraftClases66");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_CATEGORY_66")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("DESCRIPTION"),
                        NameAlt = null,
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = noms["aircraftGroup66"].ByOldId(r.Field<long?>("ID_AC_66").ToString()).NomValueId(),
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                alias = r.Field<string>("CATEGORY")
                            })
                    })
                .ToList();

            noms["aircraftClases66"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["aircraftClases66"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 6
0
        private void migrateRatingSubClasses(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("ratingSubClasses");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_SUBCLASS_ATSM")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("DESCRIPTION"),
                        NameAlt = null,
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = noms["ratingClasses"].ByOldId(r.Field<decimal>("CLASS_ID").ToString()).NomValueId(),
                        TextContentString = null
                    })
                .ToList();

            noms["ratingSubClasses"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["ratingSubClasses"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 7
0
        private void migrateSchools(INomRepository repo, OracleConnection conn)
        {
            Func<string, int?> getGradId = (oldId) => noms["graduations"].ByOldId(oldId).NomValueId();

            Nom nom = repo.GetNom("schools");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.SCHOOL")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                isPilotTraining = r.Field<string>("PILOT_TRAINING")== "Y" ? true : false,
                                graduationId = getGradId(r.Field<decimal?>("GRADUATION_ID").ToString()),
                                graduationIds = r.Field<string>("GRADUATION_ID_LIST")
                                    .Split(':')
                                    .Select(gi => getGradId(gi))
                                    .Where(gi => gi.HasValue)
                                    .Select(gi => gi.Value)
                                    .ToArray()
                            })
                    })
                    .GroupBy(r => r.Name)
                    .ToList();

            noms["schools"] = new Dictionary<string, NomValue>();
            foreach (var rows in results)
            {
                foreach (var row in rows)
                {
                    noms["schools"][row.OldId] = rows.First();
                }
                nom.NomValues.Add(rows.First());
            }
        }
Exemplo n.º 8
0
        private void migrateLim147limitations(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("lim147limitations");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_147_LIMITATION")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = noms["lim147ratings"].ByOldId(r.Field<long?>("ID_147_RATING").ToString()).NomValueId(),
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                SortOrder = r.Field<string>("SORT_ORDER"),
                            })
                    })
                .ToList();

            noms["lim147limitations"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["lim147limitations"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 9
0
        private void migrateLim147ratings(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("lim147ratings");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_147_RATING")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("SORT_ORDER"),
                        Name = r.Field<string>("RATING"),
                        NameAlt = null,
                        Alias = null,
                        IsActive = true,
                        ParentValueId = noms["lim147classes"].ByOldId(r.Field<long?>("ID_147_CLASS").ToString()).NomValueId(),
                        TextContentString = null
                    })
                .ToList();

            noms["lim147ratings"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["lim147ratings"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 10
0
        private void migrateLicenceTypeDictionary(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("licenceTypeDictionary");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.LICENCE_DICTIONARY")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = null,
                        Alias = null,
                        IsActive = true,
                        ParentValueId = noms["staffTypes"].ByOldId(r.Field<decimal?>("STAFF_TYPE_ID").ToString()).NomValueId(),
                        TextContentString = null
                    })
                .ToList();

            noms["licenceTypeDictionary"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["licenceTypeDictionary"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 11
0
        private void migrateLicenceTypes(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("licenceTypes");

            var templateNames = new Dictionary<string, string>()
            {
                { "103", "flight_licence" },
                { "161", "foreign_licence" },
                { "181", "caa_steward" },
                { "242", "student_flight_licence" },
                { "261", "coordinator" },
                { "262", "flight" },
                { "281", "atcl1" },
                { "289", "convoy" },
                { "301", "student_controller" },
                { "302", "AML_national" },
                { "321", "coordinator_simi" },
                { "323", "rvd_licence" },
                { "324", "AML_III" },
                { "328", "Pilot142_2013" },
                { "329", "CAL03_2013" },
                { "361", "pilot" },
                { "601", "AML" }
            };

            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_LICENCE_TYPE")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = noms["staffTypes"].ByOldId(r.Field<decimal?>("STAFF_TYPE_ID").ToString()).NomValueId(),
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                codeCA = r.Field<string>("CA_CODE"),
                                dateValidFrom = r.Field<DateTime?>("DATE_FROM"),
                                dateValidTo = r.Field<DateTime?>("DATE_TO"),
                                seqNo = r.Field<decimal?>("SEQ_NO"),
                                prtMaxRatingCount = r.Field<decimal?>("PRT_MAX_RATING_COUNT"),
                                prtMaxMedCertCount = r.Field<decimal?>("PRT_MAX_MED_CERT_COUNT"),
                                licenceTypeDictionaryId = noms["licenceTypeDictionary"].ByOldId(r.Field<decimal?>("LICENCE_DICTIONARY_ID").ToString()).NomValueId(),
                                licenceTypeDictionary1Id = noms["licenceTypeDictionary"].ByOldId(r.Field<decimal?>("LICENCE_DICTIONARY1_ID").ToString()).NomValueId(),
                                licenceTypeDictionary2Id = noms["licenceTypeDictionary"].ByOldId(r.Field<decimal?>("LICENCE_DICTIONARY2_ID").ToString()).NomValueId(),
                                prtPrintableDocId = r.Field<decimal?>("PRT_PRINTABLE_DOCUMENT_ID"),
                                qlfCode = r.Field<string>("LICENCE_CODE") != "FCL.CPA" ? r.Field<string>("QLF_CODE") : null,
                                templateName = templateNames[r.Field<object>("PRT_PRINTABLE_DOCUMENT_ID").ToString()],
                                caseTypeAlias = noms["staffTypes"].ByOldId(r.Field<int>("STAFF_TYPE_ID").ToString()).Alias
                            })
                    })
                .ToList();

            noms["licenceTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["licenceTypes"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 12
0
        private void migrateLicenceChangeReasons(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("licenceChangeReasons");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_LICENCE_CHANGE_REASON")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = null,
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                seqNo = r.Field<decimal?>("SEQ_NO"),
                                reasonGroup = r.Field<string>("REASON_GROUP")
                            })
                    })
                .ToList();

            noms["licenceChangeReasons"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["licenceChangeReasons"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 13
0
        private void migrateLangLevels(INomRepository repo, OracleConnection conn)
        {
            var roleAliases = new Dictionary<string, string[]>()
            {
                { "L4", new string[] { "bgCert", "engCert" } },
                { "L5", new string[] { "bgCert", "engCert" } },
                { "L6", new string[] { "bgCert", "engCert" } },
                { " L4", new string[] { "engCert" } },
                { " L5", new string[] { "engCert" } },
                { " L6", new string[] { "engCert" } },
                { "B4", new string[] { "bgCert" } },
                { "B5", new string[] { "bgCert" } },
                { "B6", new string[] { "bgCert" } },
            };

            Nom nom = repo.GetNom("langLevels");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_ENG_LANG")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("LANG_LEVEL"),
                        NameAlt = r.Field<string>("LANG_LEVEL_TRANS"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                roleAliases = roleAliases[r.Field<string>("CODE")],
                                seqNumber = r.Field<decimal?>("SEQ_NUMBER").ToString(),
                            })
                    })
                .ToList();

            noms["langLevels"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["langLevels"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 14
0
        private void migrateGroundServiceOperatorActivityTypes(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("groundServiceOperatorActivityTypes");

            var nomInfo = new Dictionary<string, Tuple<string, string>>()
            {
                { "GAS"   , new Tuple<string,string>("Наземно администриране и надзор"                           , ""    )},
                { "CS"    , new Tuple<string,string>("Обслужване на пътници"                                     , ""    )},
                { "BP"    , new Tuple<string,string>("Обработка на багажи"                                       , ""    )},
                { "CMP"   , new Tuple<string,string>("Обработка на товари и поща"                                , ""    )},
                { "ACPS"  , new Tuple<string,string>("Перонно обслужване на въздухоплавателни средства"          , ""    )},
                { "ACS"   , new Tuple<string,string>("Обслужване на въздухоплавателни средства"                  , ""    )},
                { "ACSFO" , new Tuple<string,string>("Обслужване на въздухоплавателни средства с горива и масла" , ""    )},
                { "ACTS"  , new Tuple<string,string>("Техническо обслужване на въздухоплавателни средства"       , ""    )},
                { "FOCA"  , new Tuple<string,string>("Полетни операции и администриране на екипажите"            , ""    )},
                { "GT"    , new Tuple<string,string>("Наземен транспорт"                                         , ""    )},
                { "BBS"   , new Tuple<string,string>("Обслужване на бордния бюфет"                               , ""    )}

            };

            noms["groundServiceOperatorActivityTypes"] = new Dictionary<string, NomValue>();
            foreach (var ni in nomInfo)
            {
                NomValue row = new NomValue()
                {
                    OldId = null,
                    Code = ni.Key,
                    Name = ni.Value.Item1,
                    NameAlt = ni.Value.Item2,
                    Alias = null,
                    IsActive = true,
                    ParentValueId = null,
                    TextContentString = null
                };
                noms["groundServiceOperatorActivityTypes"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 15
0
        private void migratePersonStatusTypes(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("personStatusTypes");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_SHORT_LISTS where domain = 'STATE_REASON'")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("MEANING"),
                        NameAlt = r.Field<string>("MEANING_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("CODE") != "BR" ? true : false,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["personStatusTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["personStatusTypes"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 16
0
        private void migrateLimitations66(INomRepository repo, OracleConnection conn)
        {
            var limitationTypes = new Dictionary<string, string>()
            {
                {"M", "ATSML"},
                {"N", "AMLAircrafts"},
                {"F", "FCL"},
                {"Y", "AMLCommon"}
            };

            Nom nom = repo.GetNom("limitations66");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_LIMITATIONS_66")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE").Trim(),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                type = limitationTypes[r.Field<string>("GENERAL")],
                                point = 13
                            })
                    })
                .ToList();

            noms["limitations66"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["limitations66"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 17
0
        private void migrateRatingClassGroups(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("ratingClassGroups");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_RATING_CLASS_GROUP")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = null,
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                caseTypeAlias = noms["staffTypes"].ByOldId(r.Field<decimal>("STAFF_TYPE_ID").ToString()).Alias
                            })
                    })
                .ToList();

            noms["ratingClassGroups"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["ratingClassGroups"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 18
0
        private void migrateLocationIndicators(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("locationIndicators");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_INDICATOR")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("POSITION"),
                        NameAlt = r.Field<string>("POSITION_TRANS"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                type = r.Field<string>("FLAG_YN"),
                            })
                    })
                .ToList();

            noms["locationIndicators"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["locationIndicators"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 19
0
        private void migrateRatingTypes(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("ratingTypes");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_RATING_TYPE")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                codeCA = r.Field<string>("CA_CODE"),
                                dateValidFrom = r.Field<DateTime?>("DATE_FROM"),
                                dateValidTo = r.Field<DateTime?>("DATE_TO")
                            })
                    })
                .ToList();

            noms["ratingTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["ratingTypes"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 20
0
        private void migrateOrganizationKinds(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("organizationKinds");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_SHORT_LISTS where domain = 'TYPE_ORG'")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("MEANING"),
                        NameAlt = r.Field<string>("MEANING_TRANS"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["organizationKinds"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["organizationKinds"][row.OldId] = row;
                nom.NomValues.Add(row);
            }

            var organizationFmTypes = new List<Tuple<string, string>>()
            {
                { new Tuple<string,string>("АД"  , "AD")},
                { new Tuple<string,string>("ООД" , "OOD")}
            };

            foreach (var type in organizationFmTypes)
            {
                NomValue row = new NomValue()
                {
                    OldId = null,
                    Code = type.Item2,
                    Name = type.Item1,
                    NameAlt = type.Item1,
                    Alias = null,
                    IsActive = true,
                    ParentValueId = null,
                    TextContentString = null
                };
                noms["organizationKinds"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 21
0
        private void migrateStaffTypes(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("staffTypes");
            var aliases = new Dictionary<string, string>()
            {
                { "F", "flightCrew" },
                { "T", "ovd"},
                { "G", "to_vs"},
                { "M", "to_suvd"}
            };
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_STAFF_TYPE")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        ParentValueId = null,
                        Alias = aliases[r.Field<string>("CODE")],
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                codeCA = r.Field<string>("CA_CODE")
                            }),
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false
                    })
                .ToList();

            noms["staffTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["staffTypes"][row.OldId] = row;
                nom.NomValues.Add(row);
            }

            Nom trainingStaffTypesNom = repo.GetNom("trainingStaffTypes");
            var copiedResults = results.Select(v =>
                new NomValue
                {
                    OldId = v.OldId,
                    Code = v.Code,
                    Name = v.Name,
                    NameAlt = v.NameAlt,
                    ParentValueId = v.ParentValueId,
                    Alias = v.Alias,
                    TextContentString = v.TextContentString,
                    IsActive = v.IsActive
                });

            noms["trainingStaffTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in copiedResults)
            {
                noms["trainingStaffTypes"][row.OldId] = row;
                trainingStaffTypesNom.NomValues.Add(row);
            }

            NomValue generalDocument =
                new NomValue
                {
                    NomValueId = 0,
                    Name = "Общ документ",
                    Alias = "general"
                };

            noms["trainingStaffTypes"]["0"] = generalDocument;
            trainingStaffTypesNom.NomValues.Add(generalDocument);
        }
Exemplo n.º 22
0
        private void migrateOrganizationTypes(INomRepository repo, OracleConnection oracleConection, SqlConnection sqlConnection)
        {
            Nom nom = repo.GetNom("organizationTypes");
            var orgApexTypes = oracleConection.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_FIRM_TYPE")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["organizationTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in orgApexTypes)
            {
                noms["organizationTypes"][row.OldId] = row;
                nom.NomValues.Add(row);
            }

            List<string> addedCodes = orgApexTypes.Select(a => a.Code).ToList();

            var orgFmTypes = sqlConnection.CreateStoreCommand(@"select * from OrgGrp")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = null,
                        Code = r.Field<string>("Code"),
                        Name = r.Field<string>("Group Organization"),
                        NameAlt = r.Field<string>("Group Organization"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            foreach (var row in orgFmTypes.Where(t => !addedCodes.Contains(t.Code)))
            {
                noms["organizationTypes"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 23
0
        private void migrateAircraftCategories(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("aircraftCategories");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_AC_CATEGORY")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            results.Add(new NomValue() {
                OldId = "11",
                Code = "VP",
                Name = "Мотопарапланер",
                NameAlt = "Paramotor-Trike",
                Alias = null,
                IsActive = true,
                ParentValueId = null,
                TextContentString = null
            });

            results.Add(new NomValue() {
                OldId = "12",
                Code = "GR",
                Name = "Автожир",
                NameAlt = "Gyroplane",
                Alias = null,
                IsActive = true,
                ParentValueId = null,
                TextContentString = null
            });
            noms["aircraftCategories"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["aircraftCategories"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 24
0
        private void migratePersonCheckRatingValues(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("personCheckRatingValues");

            var nomInfo = new Dictionary<string, Tuple<string, string, bool>>()
            {
                { "G", new Tuple<string,string, bool>("Добро"         , "Good"         , true)},
                { "S", new Tuple<string,string, bool>("Задоволително" , "Satisfactory" , true)},
                { "I", new Tuple<string,string, bool>("Недостатъчно"  , "Insufficient" , true)},
                { "U", new Tuple<string,string, bool>("Неприемливо"   , "Unacceptable" , true)},
                { "К", new Tuple<string,string, bool>("Компетентен"   , "Competent"    , true)},
                { "Н", new Tuple<string,string, bool>("Некомпетентен" , "Incompetent"  , true)},
                { "C", new Tuple<string,string, bool>("C"             , "C"            , false)}
            };

            noms["personCheckRatingValues"] = new Dictionary<string, NomValue>();
            int order = 0;
            foreach (var ni in nomInfo)
            {
                NomValue row = new NomValue()
                    {
                        OldId = null,
                        Code = ni.Key,
                        Name = ni.Value.Item1,
                        NameAlt = ni.Value.Item2,
                        Alias = null,
                        IsActive = ni.Value.Item3,
                        ParentValueId = null,
                        TextContentString = null,
                        Order = order++
                    };
                noms["personCheckRatingValues"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 25
0
        private void migrateAircraftCreditorsFm(INomRepository repo, SqlConnection conn)
        {
            Nom nom = repo.GetNom("aircraftCreditorsFm");
            var results = conn.CreateStoreCommand(@"select distinct t_Creditor_Name from Morts_new")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = null,
                        Code = null,
                        Name = r.Field<string>("t_Creditor_Name"),
                        NameAlt = null,
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["aircraftCreditorsFm"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["aircraftCreditorsFm"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 26
0
        private void migratePersonExperienceRoles(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("experienceRoles");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_EXPERIENCE_ROLE")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = JsonConvert.SerializeObject(
                            new
                            {
                                codeCA = r.Field<string>("CA_CODE"),
                            })
                    })
                .ToList();

            noms["experienceRoles"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["experienceRoles"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 27
0
        private void migrateAircraftLimitationsFm(INomRepository repo, SqlConnection conn)
        {
            Nom nom = repo.GetNom("aircraftLimitationsFm");
            var results = conn.CreateStoreCommand(@"
                SELECT [Code] code, [Limitation BG] name, [Limitation EN] nameAlt
                FROM [GvaAircraft].[dbo].[LimitAW]")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<string>("code"),
                        Code = r.Field<string>("code"),
                        Name = r.Field<string>("name"),
                        NameAlt = r.Field<string>("nameAlt"),
                        Alias = null,
                        IsActive = true,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["aircraftLimitationsFm"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["aircraftLimitationsFm"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 28
0
        private void migratePersonRatingModels(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("personRatingModels");

            var nomInfo = new Dictionary<string, Tuple<string, string>>()
            {
                { "P", new Tuple<string,string>("Постоянно"         , "Permanently"         )},
                { "T", new Tuple<string,string>("Временно"          , "Temporarily"         )}
            };

            noms["personRatingModels"] = new Dictionary<string, NomValue>();
            foreach (var ni in nomInfo)
            {
                NomValue row = new NomValue()
                {
                    OldId = null,
                    Code = ni.Key,
                    Name = ni.Value.Item1,
                    NameAlt = ni.Value.Item2,
                    Alias = null,
                    IsActive = true,
                    ParentValueId = null,
                    TextContentString = null
                };
                noms["personRatingModels"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 29
0
        private void migrateAircraftOperTypes(INomRepository repo, OracleConnection conn)
        {
            Nom nom = repo.GetNom("aircraftOperTypes");
            var results = conn.CreateStoreCommand(@"SELECT * FROM CAA_DOC.NM_AC_OPER")
                .Materialize(r =>
                    new NomValue
                    {
                        OldId = r.Field<object>("ID").ToString(),
                        Code = r.Field<string>("CODE"),
                        Name = r.Field<string>("NAME"),
                        NameAlt = r.Field<string>("NAME_TRANS"),
                        Alias = null,
                        IsActive = r.Field<string>("VALID_YN") == "Y" ? true : false,
                        ParentValueId = null,
                        TextContentString = null
                    })
                .ToList();

            noms["aircraftOperTypes"] = new Dictionary<string, NomValue>();
            foreach (var row in results)
            {
                noms["aircraftOperTypes"][row.OldId] = row;
                nom.NomValues.Add(row);
            }
        }
Exemplo n.º 30
0
        private void migrateEURegTypesFm(INomRepository repo, SqlConnection conn)
        {
            Nom nom = repo.GetNom("EURegTypesFm");

            var nomInfo = new Dictionary<string, Tuple<string, string>>()
            {
                { "EU"  , new Tuple<string,string>("EU"                             , "EU"                              )},
                { "EUR" , new Tuple<string,string>("EU - Restricted"                , "EU - Restricted"                 )},
                { "OD"  , new Tuple<string,string>("Old Doc"                        , "Old Doc"                         )},
                { "AN"  , new Tuple<string,string>("Annex II"                       , "Annex II"                        )},
                { "A2"  , new Tuple<string,string>("Article-2"                      , "Article-2"                       )},
                { "A1"  , new Tuple<string,string>("Article-1"                      , "Article-1"                       )},
                { "VLA" , new Tuple<string,string>("VLA"                            , "VLA"                             )},
                { "AM"  , new Tuple<string,string>("Amateur"                        , "Amateur"                         )},
                { "EXP" , new Tuple<string,string>("EXP"                            , "EXP"                             )},
                { "RU"  , new Tuple<string,string>("RU"                             , "RU"                              )},
            };

            noms["EURegTypesFm"] = new Dictionary<string, NomValue>();
            foreach (var ni in nomInfo)
            {
                NomValue row = new NomValue()
                {
                    OldId = null,
                    Code = ni.Key,
                    Name = ni.Value.Item1,
                    NameAlt = ni.Value.Item2,
                    Alias = null,
                    IsActive = true,
                    ParentValueId = null,
                    TextContentString = null
                };
                noms["EURegTypesFm"][Guid.NewGuid().ToString()] = row;
                nom.NomValues.Add(row);
            }
        }