コード例 #1
0
        // POST: api/BankSale
        public HttpResponseMessage Post([FromBody] SaleRequest saleRequest)
        {
            //json formatında data gelcek
            //formatlıcak
            //dbye token oluşturup kayıt atcak

            SaleResponse saleResponse = new SaleResponse();

            SalePersistence sp       = new SalePersistence();
            long            bankguid = 0;

            bankguid = sp.insertTransaction(saleRequest);

            //token algorihm

            string token_data = new Utilities().generateToken(saleRequest, bankguid.ToString());

            sp.updateTransactionTokenByGuid(token_data, bankguid);
            saleResponse.token_data = token_data;

            JObject payLoad = new JObject(
                new JProperty("error_code", "0000000"),
                new JProperty("error_desc", "Basarili"),
                new JProperty("token_data", saleResponse.token_data),
                new JProperty("bank_transaction_guid", bankguid)
                );

            return(new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(payLoad.ToString())
            });
        }
コード例 #2
0
        // POST: api/Sale

        public async System.Threading.Tasks.Task <JObject> PostAsync([FromBody] SaleRequest saleRequest)

        {
            // Merchant Tableti tarafından POST edilen transaction bilgilerini al.

            // DB'ye bekleniyor statusunde kayıt at.

            // BankBE'ye aynı bilgileri POST'et.

            SalePersistence sp = new SalePersistence();

            long mrcguid = 0;

            mrcguid = sp.insertTransaction(saleRequest);



            using (HttpClient client = new HttpClient())

            {
                //string serviceUrl = "http://192.168.1.101:50461/api/BankSale";

                //string serviceUrl = "https://posnetict.yapikredi.com.tr/BankBE/api/BankSale";

                string serviceUrl = "http://zehraisilyilmaz.com/BankBE/api/BankSale";

                client.DefaultRequestHeaders.Clear();

                var username = "******";

                var password = "******";

                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.UTF8.GetBytes($"{username}:{password}")));



                JObject payLoad = new JObject(

                    new JProperty("merchant_no", saleRequest.merchant_no),

                    new JProperty("terminal_no", saleRequest.terminal_no),

                    new JProperty("amount", saleRequest.amount),

                    new JProperty("merchant_transaction_guid", mrcguid)

                    );



                var httpContent = new StringContent(payLoad.ToString(), Encoding.UTF8, "application/json");



                using (HttpResponseMessage response = await client.PostAsync(serviceUrl, httpContent))

                {
                    try

                    {
                        response.EnsureSuccessStatusCode();

                        // Handle success
                    }

                    catch (HttpRequestException e)

                    {
                        // Handle failure
                    }

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

                    JObject json = JObject.Parse(responseBody);

                    //gelen response daki bank_transaction_guid i where guid i mrcguid olanla dbde update et,tokendatayıda update et şekerim



                    SaleResponse resp = new SaleResponse();

                    resp.token_data = json["token_data"].ToString();

                    resp.bank_transaction_guid = (long)json["bank_transaction_guid"];

                    sp.updateTransactionfromBank(mrcguid, resp);



                    JObject jsonResponse = new JObject(

                        new JProperty("token_data", resp.token_data)

                        );



                    return(jsonResponse);
                }
            }
        }