コード例 #1
0
        private static void FillMilitaryInfo(priz priz, MilitaryInfo militaryInfo)
        {
            priz.l_n = militaryInfo.PersonalNumber.Value;

            priz.v_b = militaryInfo.Billet.BilletNumber.Value;
            if (militaryInfo.Billet.IsHaveSecretAccess)
            {
                priz.f_access = militaryInfo.Billet.SecretAccess.AccessForm.ToAccessFormString();
                priz.n_access = militaryInfo.Billet.SecretAccess.SecretAccessNumber;
                priz.d_access = militaryInfo.Billet.SecretAccess.IssueDate.ToString(DateConstants.RecruitDateFormat);
            }

            priz.ppo            = militaryInfo.ProficiencyCard.ProficiencyCategory.ToProficiencyCategoryString();
            priz.pp_appointment = militaryInfo.ProficiencyCard.OfficialStatus.ToOfficialStatusString();
            priz.npu            = militaryInfo.ProficiencyCard.NervouslyPsychologicalStability.ToNervouslyPsychologicalStatusString();
            priz.ops            = militaryInfo.ProficiencyCard.GeneralPsychologicalStability.ToGeneralPsychologicalStatusString();

            priz.vus_va      = militaryInfo.Speciality;
            priz.destination = militaryInfo.TeamMode;
        }
コード例 #2
0
        public Envelope(PassportInfo passportInfo,
                        MilitaryInfo militaryInfo,
                        CivilInfo civilInfo,
                        Contacts contacts,
                        FamilyInfo familyInfo,
                        DriverInfo driverInfo = null)
        {
            if (passportInfo == null)
            {
                throw new ArgumentNullException(nameof(passportInfo));
            }

            if (militaryInfo == null)
            {
                throw new ArgumentNullException(nameof(passportInfo));
            }

            if (civilInfo == null)
            {
                throw new ArgumentNullException(nameof(passportInfo));
            }

            if (contacts == null)
            {
                throw new ArgumentNullException(nameof(passportInfo));
            }

            if (familyInfo == null)
            {
                throw new ArgumentNullException(nameof(passportInfo));
            }

            PassportInfo = passportInfo;
            MilitaryInfo = militaryInfo;
            CivilInfo    = civilInfo;
            Contacts     = contacts;
            FamilyInfo   = familyInfo;
            DriverInfo   = driverInfo;
        }
コード例 #3
0
        public void MilitaryInfoTest()
        {
            var personalNumber = new Code("ВС 052572");
            var billetNumber   = new Code("АН 2281488");
            var accessForm     = AccessForm.First;
            var number         = "1488";
            var issueDate      = new DateTime(2017, 1, 1);
            var secretAccess   = new SecretAccess(accessForm, number, issueDate);
            var militaryBillet = new MilitaryBillet(billetNumber, secretAccess);

            var proficiencyCategory = ProficiencyCategory.Second;
            var officialStatus      = OfficialStatus.Driver;
            var nervously           = NervouslyPsychologicalStatus.Satisfactory;
            var general             = GeneralPsychologicalStatus.High;
            var proficiencyCard     = new ProficiencyCardInfo(proficiencyCategory, officialStatus, nervously, general);

            var speciality = MilitaryInfo.NoSpeciality;
            var teamMode   = "К-220А";

            var militaryInfo = new MilitaryInfo(personalNumber, militaryBillet, proficiencyCard, speciality, teamMode);

            Assert.AreEqual(personalNumber, militaryInfo.PersonalNumber);

            Assert.AreEqual(billetNumber, militaryInfo.Billet.BilletNumber);
            Assert.IsTrue(militaryInfo.Billet.IsHaveSecretAccess);
            Assert.AreEqual(accessForm, militaryInfo.Billet.SecretAccess.AccessForm);
            Assert.AreEqual(number, militaryInfo.Billet.SecretAccess.SecretAccessNumber);
            Assert.AreEqual(issueDate, militaryInfo.Billet.SecretAccess.IssueDate);

            Assert.AreEqual(proficiencyCategory, militaryInfo.ProficiencyCard.ProficiencyCategory);
            Assert.AreEqual(officialStatus, militaryInfo.ProficiencyCard.OfficialStatus);
            Assert.AreEqual(general, militaryInfo.ProficiencyCard.GeneralPsychologicalStability);
            Assert.AreEqual(nervously, militaryInfo.ProficiencyCard.NervouslyPsychologicalStability);

            Assert.AreEqual(speciality, militaryInfo.Speciality);
            Assert.AreEqual(teamMode, militaryInfo.TeamMode);
        }
コード例 #4
0
        private static void FillMilitaryInfo(PRIZ priz, MilitaryInfo militaryInfo)
        {
            priz.LN_SER = militaryInfo.PersonalNumber.Serie;
            priz.LN_NUM = militaryInfo.PersonalNumber.Number;

            priz.S_V_BIL = militaryInfo.Billet.BilletNumber.Serie;
            priz.N_V_BIL = militaryInfo.Billet.BilletNumber.Number;

            if (militaryInfo.Billet.IsHaveSecretAccess)
            {
                var af = militaryInfo.Billet.SecretAccess.AccessForm;
                priz.F_DOP = af != AccessForm.None ? (int?)af : null;

                priz.N_DOP = militaryInfo.Billet.SecretAccess.SecretAccessNumber;
                priz.D_DOP = militaryInfo.Billet.SecretAccess.IssueDate;
            }

            priz.PROF_P = militaryInfo.ProficiencyCard.ProficiencyCategory.ToProficiencyCategoryString();
            priz.NPU    = militaryInfo.ProficiencyCard.NervouslyPsychologicalStability.ToNervouslyPsychologicalStatusString();
            priz.OPS    = militaryInfo.ProficiencyCard.GeneralPsychologicalStability.ToGeneralPsychologicalStatusString();

            priz.SPEC     = militaryInfo.Speciality;
            priz.REZH_KOM = militaryInfo.TeamMode;
        }
コード例 #5
0
 public override int GetHashCode()
 {
     return(PassportInfo.GetHashCode() ^ MilitaryInfo.GetHashCode() ^
            CivilInfo.GetHashCode() ^ Contacts.GetHashCode() ^
            FamilyInfo.GetHashCode() ^ DriverInfo.GetHashCode());
 }