Ejemplo n.º 1
0
        public async Task <CardInfoResponseModel> ByCID(SmartCardInfo smartCardInfo)
        {
            CheckCardModel cardModel = new CheckCardModel
            {
                ReferenceNo  = "DO100120200707161630123", // Todo Fix Ref between system
                BranchNumber = "889",
                TerminalId   = "T15000015",
                PID          = smartCardInfo.PID,
                CID          = smartCardInfo.CID,
                Bp1No        = smartCardInfo.Bp1No,
                NameTh       = smartCardInfo.NameTh,
                SurenameTh   = smartCardInfo.SurenameTh,
                DateOfBirth  = smartCardInfo.DateOfBirth,
                LaserNo      = smartCardInfo.LaserNo
            };
            CardInfoResponseModel resTxKey = new CardInfoResponseModel();

            try
            {
                var           client  = clientFactory.CreateClient();
                StringContent content = new StringContent(JsonConvert.SerializeObject(cardModel), Encoding.UTF8, "application/json");
                using var response = await client.PostAsync("http://w2wasdho126:9090/api/checkcardstatus/bycid", content);

                string apiResponse = await response.Content.ReadAsStringAsync();

                resTxKey = JsonConvert.DeserializeObject <CardInfoResponseModel>(apiResponse);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }
            return(resTxKey);
        }
Ejemplo n.º 2
0
        public async Task <EkycTxKeyModel> CheckCardStatus(SmartCardInfo smartCardInfo)
        {
            CardInfoResponseModel cardInfoResponse = new CardInfoResponseModel();

            // Call Dopa WsService
            // Select mode: 3 => Dipship, 5=> Non-Dipship
            switch (smartCardInfo.Mode)
            {
            case "3":
                // Call ByCID
                cardInfoResponse = await checkCardStatusService.ByCID(smartCardInfo);

                break;

            case "5":
                // Call ByLaser
                cardInfoResponse = await checkCardStatusService.ByLaser(smartCardInfo);

                break;
            }

            EkycTxKeyModel txKeyModel = new EkycTxKeyModel
            {
                applicationNo     = "2020051900010001",
                serviceType       = "Account Opening",
                mode              = cardInfoResponse.Data.Mode,
                subMode           = "Y",
                idCard            = smartCardInfo.PID,
                titleNameTh       = smartCardInfo.PrefixNameTh,
                firstNameTh       = smartCardInfo.NameTh,
                middleNameTh      = smartCardInfo.MiddlenameTh,
                lastNameTh        = smartCardInfo.SurenameTh,
                titleNameEn       = smartCardInfo.PrefixNameEn,
                firstNameEn       = smartCardInfo.NameEn,
                middleNameEn      = smartCardInfo.MiddlenameEn,
                lastNameEn        = smartCardInfo.SurenameEn,
                chipImage         = Convert.ToBase64String(smartCardInfo.Image),
                staffId           = "P5170",
                staffName         = "Pornchai",
                overrideStaffId   = "",
                overrideStaffName = "",
                branchCode        = "889",
                branceName        = "สาทร",
                remark            = "",
                dopaResultCode    = cardInfoResponse.Data.StatusCode,
                dopaResultDesc    = cardInfoResponse.Data.Desc
            };

            return(txKeyModel);
        }
Ejemplo n.º 3
0
        public async Task <CardInfoResponseModel> ByLaser(SmartCardInfo smartCardInfo)
        {
            CardInfoResponseModel resModel = new CardInfoResponseModel();

            try
            {
                var           client  = clientFactory.CreateClient();
                StringContent content = new StringContent(JsonConvert.SerializeObject(smartCardInfo), Encoding.UTF8, "application/json");
                using var response = await client.PostAsync("http://172.20.6.226:8080/ekyc-app/api/ekyc-result", content);

                string apiResponse = await response.Content.ReadAsStringAsync();

                resModel = JsonConvert.DeserializeObject <CardInfoResponseModel>(apiResponse);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            return(resModel);
        }