Ejemplo n.º 1
0
        public JsonResult IdCardRequest(IDCardRequest iDCardRequest)
        {
            try
            {
                DBManager db = new DBManager("CustomerServicePortal");
                foreach (var item in iDCardRequest.iDCardType_Quantities)
                {
                    string Commandtext = "Fill_IDCardRequestDetails";
                var parameters = new List<IDbDataParameter>();
                parameters.Add(db.CreateParameter("@SSN", iDCardRequest.EMSSN, DbType.String));
                parameters.Add(db.CreateParameter("@RequestNotes", iDCardRequest.RquestNotes, DbType.String));
                parameters.Add(db.CreateParameter("@Name", iDCardRequest.Name, DbType.String));
                parameters.Add(db.CreateParameter("@Gender", iDCardRequest.Gender, DbType.String));
               
                parameters.Add(db.CreateParameter("@Requester", User.Identity.Name, DbType.String));

               
                    parameters.Add(db.CreateParameter("@IDCardType",item.IDCardType, DbType.String));
                    parameters.Add(db.CreateParameter("@IDCardQuantity",item.IDCardQuantity, DbType.String));
                    db.Insert(Commandtext, CommandType.StoredProcedure, parameters.ToArray());
                }
                

            }
            catch (Exception EX)
            {
                return Json(false, JsonRequestBehavior.AllowGet);
              
            }
            return Json(true, JsonRequestBehavior.AllowGet);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 身份证识别
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public async Task <IDCardResponse> DetectAsync(IDCardRequest request)
        {
            Throws.ArgumentNullException(request, nameof(request));
            Throws.ArgumentNullException(request.ImgUrl, nameof(request.ImgUrl));
            try
            {
                var httpClient = this._options.HttpClient;

                var httpRequest = BuildHttpRequestMessage(request);

                var response = await httpClient.RequestJsonAsync <TencentOCRResponse>(httpRequest);

                var    result     = response.Result_List.First();
                var    resultData = result.Data;
                var    validDate  = resultData.Valid_date.Default("").Split('-');
                string startDate  = null;
                string endDate    = null;
                if (validDate?.Length == 2)
                {
                    startDate = validDate[0];
                    endDate   = validDate[1];
                }
                return(new IDCardResponse
                {
                    Success = result.Code == 0,
                    Message = result.Message,
                    Result = new IDCard
                    {
                        //正面
                        Address = resultData.Address,
                        Birth = resultData.Birth,
                        Id = resultData.Id,
                        Name = resultData.Name,
                        Nation = resultData.Nation,
                        Gender = EnumObject.GetNullableEnumFromDescription <Gender>(resultData.Sex),
                        //反面
                        Authority = resultData.Authority,
                        StartDate = startDate,
                        EndDate = endDate
                    }
                });
            }
            catch (Exception ex)
            {
                return(new IDCardResponse
                {
                    Success = false,
                    Message = ex.Message
                });
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 身份证识别
        /// </summary>
        /// <param name='request'></param>
        /// <returns></returns>
        public async Task <IDCardResponse> DetectAsync(IDCardRequest request)
        {
            Throws.ArgumentNullException(request, nameof(request));
            Throws.ArgumentNullException(request.ImgUrl, nameof(request.ImgUrl));

            try
            {
                var httpClient = this._options.HttpClient;

                var httpRequest = await BuildHttpRequestMessage(request);

                var response = await httpClient.RequestJsonAsync <AliyunOCRResponse>(httpRequest);

                var result = response
                             .Outputs
                             .FirstOrDefault()
                             .OutputValue
                             .DataValue;

                return(new IDCardResponse
                {
                    Success = result.Success,
                    Result = new IDCard
                    {
                        //正面
                        Id = result.Num,
                        Address = result.Address,
                        Birth = result.Birth,
                        Name = result.Name,
                        Nation = result.Nationality,
                        Gender = EnumObject.GetNullableEnumFromDescription <Gender>(result.Sex),
                        //反面
                        Authority = result.Issue,
                        StartDate = result.Start_date,
                        EndDate = result.End_date
                    }
                });
            }
            catch (Exception ex)
            {
                return(new IDCardResponse
                {
                    Success = false,
                    Message = ex.Message
                });
            }
        }
Ejemplo n.º 4
0
        public ActionResult RequestIDCardHtml(string SSN,string Name,string Gender)
        {
            IDCardRequest iDCardRequest = new IDCardRequest();
            string viewContent = "";
            try
            {
                iDCardRequest.EMSSN = SSN;
                iDCardRequest.Gender = Gender;
                iDCardRequest.Name = Name;
                viewContent = ConvertViewToString("_RequestIdCardPartialView", iDCardRequest);
            }
            catch (Exception ex)
            {

                throw;
            }

            return Json(new { viewContent = viewContent }, JsonRequestBehavior.AllowGet);
        }
Ejemplo n.º 5
0
        private HttpRequestMessage BuildHttpRequestMessage(IDCardRequest request)
        {
            var httpRequest = new HttpRequestMessage(HttpMethod.Post, _options.Apiurl);

            httpRequest.Headers.Authorization = new AuthenticationHeaderValue("Basic", BuildSignature());

            var requestJson = new
            {
                appid     = this._options.AppId,
                bucket    = this._options.Bucket,
                cart_type = (int)request.Type,
                url_list  = new List <string>
                {
                    request.ImgUrl
                }
            }.ToJson();

            httpRequest.Content = new StringContent(requestJson, Encoding.UTF8, "application/json");

            return(httpRequest);
        }
Ejemplo n.º 6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        private async Task <HttpRequestMessage> BuildHttpRequestMessage(IDCardRequest request)
        {
            var httpRequest = new HttpRequestMessage(HttpMethod.Post, this._options.Url);

            httpRequest.Headers.Authorization = new AuthenticationHeaderValue("APPCODE", this._options.Appcode);

            var httpClient = this._options.HttpClient;
            var imageBytes = await httpClient.GetByteArrayAsync(request.ImgUrl);

            var imageBase64 = imageBytes.GetBase64();

            var requestJson = new
            {
                inputs = new List <object>
                {
                    new
                    {
                        image = new
                        {
                            dataType  = 50,
                            dataValue = imageBase64
                        },
                        configure = new
                        {
                            dataType  = 50,
                            dataValue = new
                            {
                                side = request.Type.ToString().ToLower()
                            }
                        }
                    }
                }
            }.ToJson();

            httpRequest.Content = new StringContent(requestJson, Encoding.UTF8, "application/json");

            return(httpRequest);
        }