Ejemplo n.º 1
0
        public AuthResponse RegisterGraduate(GraduateRegisterVM graduate)
        {
            var dbUser  = this._repository.Users.FindByLoginPassword(graduate.User.Login.Login, graduate.User.Login.Password);
            var context = new AuthResponse();

            if (dbUser == null)
            {
                var entity         = this._mapper.Map <Graduate>(graduate);
                var journal        = new GraduateJournal();
                var educationPhase = new EducationPhase();
                var attestaion     = new Attestation();
                attestaion.DepartmentProtocol = new Protocol();
                attestaion.CommissionProtocol = new Protocol();
                educationPhase.Attestations.Add(attestaion);

                journal.EducationYears.Add(educationPhase);
                journal.RationalInfo.Protocol = new Protocol();
                journal.WorkPlans.Add(new WorkPlan());

                entity.GraduateJournals.Add(journal);
                entity.User.RoleId = this.GetOrAddRole(RoleNames.Graduate);

                this._repository.Graduates.Add(entity);
                this._repository.Save();

                context.User                 = this._mapper.Map <UserContext>(entity.User);
                context.User.Role            = RoleNames.Graduate;
                context.User.SpecifiedUserId = entity.GraduateId;

                return(context);
            }

            context.Alert = Config.LoginExist;
            return(context);
        }
Ejemplo n.º 2
0
        public byte[] Convert(GraduateJournal journal)
        {
            string templatePath = this.GetInputTemplatePath();
            string outputPath   = this.GetOutputTemplatePath(journal.GraduateId ?? 0);

            if (File.Exists(outputPath))
            {
                File.Delete(outputPath);
            }

            File.Copy(templatePath, outputPath);

            var tablesContent = new Content();

            tablesContent.Tables.Add(this.GenerateExamsContent(journal.ExamsData));
            tablesContent.Tables.Add(this.GenerateCalendarPlan(journal.EducationYears.FirstOrDefault().CalendarStages));

            using (var outputDoc = new TemplateProcessor(outputPath).SetRemoveContentControls(true))
            {
                outputDoc.FillContent(this.GenerateCommonDataContent(journal));
                outputDoc.FillContent(this.GenerateRationalInfo(journal.RationalInfo));
                outputDoc.FillContent(this.GenerateThesisPlan(journal.ThesisPlan));
                outputDoc.FillContent(this.GenerateWorkPlan(journal.WorkPlans.FirstOrDefault()));
                outputDoc.FillContent(this.GenerateEducationPhaseContent(journal.EducationYears.FirstOrDefault()));
                outputDoc.FillContent(this.GenerateAttestation(journal.EducationYears.FirstOrDefault().Attestations.FirstOrDefault()));

                outputDoc.FillContent(tablesContent);
                outputDoc.SaveChanges();
            }

            return(File.ReadAllBytes(outputPath));
        }
Ejemplo n.º 3
0
 protected virtual Content GenerateCommonDataContent(GraduateJournal journal)
 {
     return(new Content(
                new FieldContent("EducationForm", this.EducationFormToString(journal.Graduate?.EducationForm ?? EducationForm.DAILY)),
                new FieldContent("UserFullName", this.ConvertToFullName(journal.Graduate?.User) ?? ""),
                new FieldContent("SpecialtyName", journal.Graduate.Specialty?.Title ?? ""),
                new FieldContent("StartEducationDate", journal.Graduate.StartEducationDate?.ToShortDateString() ?? ""),
                new FieldContent("FinishEducationDate", journal.Graduate.FinishEducationDate?.ToShortDateString() ?? ""),
                new FieldContent("AdviserFullName", this.ConvertToFullName(journal.Graduate?.ScienceAdviser?.User) ?? ""),
                new FieldContent("DepartmentHeadSign", journal.Graduate?.Specialty?.Department?.Head ?? ""),
                new FieldContent("DepartmentFullName", journal.Graduate?.Specialty?.Department?.Name ?? ""),
                new FieldContent("ScienceWorkerSign", journal.Graduate?.Specialty?.Department?.Faculty?.University?.ScientificTrainingHead ?? ""),
                new FieldContent("AdviserSign", this.ConvertToSignName(journal.Graduate?.ScienceAdviser?.User) ?? ""),
                new FieldContent("GraduateSign", this.ConvertToSignName(journal.Graduate?.User) ?? "")
                ));
 }