Exemplo n.º 1
0
        public ActionResult GroupCert(decimal sigId)
        {
            var sig = GroupCertService.CreateOrExists(sigId);

            if (!sig.Item1 && sig.Item2 == null)
            {
                return(NotFound());
            }
            var engCertErrorText  = GroupCertService.CreateOrExistsEng(sigId, sig.Item2);
            var isEngVendorExists = GroupCertService.IsVendorCertExist(sigId, false);
            var isRuVendorExists  = GroupCertService.IsVendorCertExist(sigId, true);
            var courseTC          = StudentInGroupRepository.GetValues(sigId, x => x.Group.Course_TC);
            var nextCourseTCs     = CourseService.GetNextCourseTCs(_.List(courseTC)).JoinWith(",");
            var course            = CourseService.GetAllCourseNames().GetValueOrDefault(courseTC.Trim());

            if (course == null)
            {
                return(NotFound());
            }
            var isCertExists = GroupCertService.IsCertExist(sigId, true);

            return(BaseViewWithTitle("Документ об окончании обучения",
                                     new PagePart(H.b[Html.CourseLink(course)].ToString()),
                                     new PagePart(H.h3["В связи с техническими работами на сайте электронные варианты документов временно недоступны. Приносим извинения за доставленные неудобства"].ToString()),
                                     isEngVendorExists ? new PagePart(GetCertView(Images.GroupCertEng(sigId, true, false), sigId, true,
                                                                                  true, false)) : null,
                                     isRuVendorExists ? new PagePart(GetCertView(Images.GroupCertEng(sigId, true, true), sigId,
                                                                                 true, true, true)) : null,
                                     new PagePart(engCertErrorText ?? GetCertView(Images.GroupCertEng(sigId, false, false), sigId, true)),
                                     isCertExists ? new PagePart(GetCertView(Images.GroupCertEng(sigId, false, true), sigId, true, ru: true)) : null,
                                     new PagePart(
                                         Html.Action <GroupController>(c =>
                                                                       c.ForCourseTCList(nextCourseTCs, false, GroupTitleType.GroupCert)))
                                     ));
        }
Exemplo n.º 2
0
//		public ActionResult DownloadCertVendor(decimal sigId) {
//			if (sigId <= UserImages.MaxCertSigId) {
//				return NotFound();
//			}
//			var fileSys = UserImages.GetGroupCertVendorFileSys(sigId);
//			if (!System.IO.File.Exists(fileSys)) {
//				return NotFound();
//			}
//			return new DownloadResult("Certificate.png", fileSys);
//		}

        public ActionResult DownloadCert(decimal sigId, bool eng, bool vendor, bool ru)
        {
            if (sigId <= UserImages.MaxCertSigId)
            {
                return(NotFound());
            }
            var group = StudentInGroupRepository.GetValues(sigId, x => x.Group);
            var hd    = true;

            if (eng)
            {
                var sig = GroupCertService.GetFullSig(sigId);
                GroupCertService.CreateOrExistsEng(sigId, sig, hd);
            }
            var fileSys = group.IsSem
                                ? UserImages.GetWebinarCertFileSys(sigId)
                                :(eng ? UserImages.GetGroupCertEngFileSys(sigId, hd, vendor, ru) : UserImages.GetGroupCertFileSys(sigId));

            if (!System.IO.File.Exists(fileSys))
            {
                return(NotFound());
            }

            return(new DownloadResult("Certificate.png", fileSys));
        }
Exemplo n.º 3
0
        public StudentInGroup GetFullSig(decimal sigId)
        {
            StudentInGroupRepository.LoadWith(b => b.Load(x => x.Group, x => x.Student).And <Group>(x => x.Course, x => x.Teacher));
            var sig = StudentInGroupRepository.GetByPK(sigId);

            return(sig);
        }
Exemplo n.º 4
0
 bool CheckCannotAddMessageToClub(MessageSection section)
 {
     return(section != null && section.IsGraduateClubOrChildren &&
            !User.InRole(Role.ForumAdmin | Role.Trainer | Role.Employee | Role.ContentManager) &&
            !StudentInGroupRepository.GetAll(x =>
                                             x.Student_ID == User.Student_ID && !CourseTC.SemSrt.Contains(x.Group.Course_TC) &&
                                             BerthTypes.AllPaidForCourses.Contains(x.BerthType_TC)).Any());
 }
Exemplo n.º 5
0
        public ActionResult GroupCerts()
        {
            StudentInGroupRepository.LoadWith(b => b.Load(x => x.Group).And <Group>(x => x.Course));
            var sigIds = CertificateService.GetAll(x => x.StudentInGroup.Student_ID ==
                                                   User.Student_ID.GetValueOrDefault()).Select(x => x.StudentInGroup_ID).ToList();
            var sigs = StudentInGroupRepository
                       .GetAll(sig =>
                               sig.Student_ID == User.Student_ID &&
                               (
                                   sig.CertGiven ||
                                   FinalExamMarks.MOCert.Contains(sig.FinalExamMark_TC) ||
                                   sigIds.Contains(sig.StudentInGroup_ID)) &&
                               (sig.Group.Course_TC == CourseTC.Itil ||
                                !AuthorizationTypes.WithoutMOCert.ToList().Contains(sig.Group.Course.AuthorizationType_TC ?? "")) &&
                               BerthTypes.AllForCert.Contains(sig.BerthType_TC) &&
                               sig.Group.DateEnd <= DateTime.Today
                               )
                       .OrderByDescending(x => x.Group.DateEnd)
                       .ToList();
//      var types = CertTypes.ForCert.ToList();
//			var certs = CertificateService.GetAll(x => sigIds.Contains(x.StudentInGroup_ID)
//				&& types.Contains(x.CertType_TC)).OrderByDescending(x => x.DateEnd).ToList();

            var model = new CertificateListVM()
            {
                List = sigs
            };
            var enterEngName = string.IsNullOrWhiteSpace(User.EngFullName)
                                ? H.Div("attention2")[
                H.p["Для отображения  сертификата международного образца необходимо  зайти в  раздел {0} и  заполнить  поле  «Полное имя на английском языке». После этого в разделе «Мои сертификаты» появится Ваш сертификат  международного образца.".FormatWith(Url.Profile().EditProfile("«Редактировать профиль»"))]]
                                : null;
            var view = InlineBaseView.New(model, x =>
                                          x.Model.List.Any()
                                        ? (object)H.div[enterEngName,
                                                        H.table[
                                                            H.Head(
                                                                "Дата окончания обучения",
                                                                "Название курса",
                                                                "Сертификат"
                                                                ),
                                                            x.Model.List.Select(c => H.Row(
                                                                                    c.Group.DateEnd.DefaultString(),
                                                                                    c.Group.Course.NameOfficial ?? c.Group.Course.Name,
                                                                                    x.Url.Graduate().GroupCert(c.StudentInGroup_ID, "Открыть")
                                                                                    ))].Class("table")]
                                        : H.b["Вы еще не закончили ни один курс"]);

            return(BaseViewWithModel(view, model));
        }