Ejemplo n.º 1
0
        public ActionResult Index(int?page)
        {
            int pageIndex = PagingHelper.GetPageIndex(page);

            CertificateSearchModel q = new CertificateSearchModel();

            ICertificateService ss = new CertificateService(Settings.Default.db);

            q.StaffActNr = this.Request.QueryString["nr"];
            IPagedList <Certificate> certfs = ss.Search(q).ToPagedList(pageIndex, Settings.Default.pageSize);

            ViewBag.Query = q;

            CertificateInfoModel info = ss.GetCertificateInfo(q);

            ViewBag.Info = info;

            //get staff info
            string        staffNr = this.Request.QueryString["nr"];
            IStaffService sts     = new StaffService(Settings.Default.db);

            Staff stfModel = sts.FindByNr(staffNr);

            ViewBag.StfModel = stfModel;


            return(View(certfs));
        }
        public JsonResult GetCertificateInfoConfirmedRequest(Guid currentMarkerId)
        {
            CertificateInfoModel model = new CertificateInfoModel();

            Guid token = CheckSessionAuthState(CurrentUser, _authService);

            if (token == Guid.Empty)
            {
                model.Status       = MainStatus.Failed;
                model.SystemLogoff = true;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }



            GetCertificateInfoResponse response = _markerService.GetCertificateInfoByLogin(currentMarkerId, token);

            if (response.Error != null)
            {
                model.Error = response.Error;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }

            if (response.Status == MainStatus.Failed || response.Status == MainStatus.NeedRelogin || response.Status == MainStatus.NeedSmsConfirmation)
            {
                model.Status = response.Status;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }

            model.ShowingInfo = response.CertInfoDictionary;
            model.Status      = response.Status;
            return(Json(model, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 3
0
        public CertificateInfoModel GetCertificateInfo(CertificateSearchModel searchModel)
        {
            CertificateInfoModel     info    = new CertificateInfoModel();
            DataContext              dc      = new DataContext(this.DbString);
            ICertificateRepository   rep     = new CertificateRepository(dc);
            IQueryable <Certificate> results = rep.Search(searchModel);

            info.certificateCount = dc.Context.GetTable <Certificate>().Where(c => c.id.Equals(results.Count() > 0 ? results.First().id : -1)).Count();

            return(info);
        }
Ejemplo n.º 4
0
        public CertificateInfoModel GetInfo(X509Certificate2 cert)
        {
            CertificateInfoModel certificateInfo = new CertificateInfoModel()
            {
                IssuerName   = cert.GetNameInfo(X509NameType.SimpleName, true),
                OwnerName    = cert.GetNameInfo(X509NameType.SimpleName, false),
                SerialNumber = cert.SerialNumber,
                NotBefore    = cert.NotBefore.ToShortDateString(),
                NotAfter     = cert.NotAfter.ToShortDateString()
            };

            certificateInfo.KeyAlgorithmName = cert.PublicKey.EncodedKeyValue.Oid.FriendlyName;
            certificateInfo.ContainerName    = GetCertificateContextProperty(cert).pwszContainerName;

            return(certificateInfo);
        }
        /// <summary>
        /// Возвращаем инфу для показа пользователю
        /// </summary>
        /// <param name="currentMarkerId"></param>
        /// <returns></returns>
        public JsonResult GetCertificateInfo(Guid currentMarkerId)
        {
            CertificateInfoModel model = new CertificateInfoModel();

            Guid token = CheckSessionAuthState(CurrentUser, _authService);

            if (token == Guid.Empty)
            {
                model.Status       = MainStatus.Failed;
                model.SystemLogoff = true;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }


            if (Session[currentMarkerId.ToString()] == null)
            {
                model.Status = MainStatus.NeedRelogin;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }
            MarkerActivationBase markerActivationBase = Session[currentMarkerId.ToString()] as MarkerActivationBase;

            GetCertificateInfoResponse response = _markerService.GetCertificateInfo(markerActivationBase.PhpSessionStream, token);

            if (response.Error != null)
            {
                model.Error = response.Error;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }

            if (response.Status == MainStatus.Failed || response.Status == MainStatus.NeedRelogin || response.Status == MainStatus.NeedSmsConfirmation)
            {
                model.Status = response.Status;
                return(Json(model, JsonRequestBehavior.AllowGet));
            }
            markerActivationBase.LoadCertificateXML(response.CertificateXML, Session);
            model.ShowingInfo = response.CertInfoDictionary;
            model.Status      = response.Status;
            return(Json(model, JsonRequestBehavior.AllowGet));
        }