コード例 #1
0
        public void InsertCash(TCashMst objTCashMst)
        {
            try
            {
                pl_objSqlCommand = new SqlCommand("dbo.UP_CASH_NT_INS", pl_objSqlCon);
                pl_objSqlCommand.CommandType = CommandType.StoredProcedure;

                pl_objSqlCommand.Parameters.AddWithValue("@pi_strUserID", objTCashMst.UserID);
                pl_objSqlCommand.Parameters.AddWithValue("@pi_strUserName", objTCashMst.UserName);
                pl_objSqlCommand.Parameters.AddWithValue("@pi_strCashAttrCode", objTCashMst.OrderNo);
                pl_objSqlCommand.Parameters.AddWithValue("@pi_strTID", objTCashMst.TID);
                pl_objSqlCommand.Parameters.AddWithValue("@pi_strCID", objTCashMst.CID);

                pl_objSqlCommand.Parameters.AddWithValue("@pi_intPayAmt", objTCashMst.PayAmt);
                pl_objSqlCommand.Parameters.AddWithValue("@pi_strPGCode", objTCashMst.PGCode);

                pl_objSqlCon.Open();
                pl_objSqlCommand.ExecuteNonQuery();

                return;
            }
            catch (Exception pl_objExp)
            {
                Console.WriteLine(pl_objExp);
                return;
            }
            finally
            {
                pl_objSqlCon.Close();
            }
        }
コード例 #2
0
        //-----------------------------------------------------------------------------------------
        // Description    : Callback URL로 반환된 결제 결과 받아오기 (json)
        //                - 결제가 성공한 경우 callback_url로 결제 결과가 반환됩니다. (json)
        //                - 전달받은 Callback URL 을 통해서 결과값을 받아서 가맹점에 맞는 충전, 구매 등의 로직을 수행하도록 합니다.
        //-----------------------------------------------------------------------------------------
        public ActionResult POQCallback()
        {
            StreamReader objStreamReader = new StreamReader(Request.GetBufferlessInputStream(), Encoding.GetEncoding("utf-8"));
            string       strResponse     = objStreamReader.ReadToEnd();

            objStreamReader.Close();

            //-- Callback URL로 반환된 결제 결과 받기
            if (string.IsNullOrEmpty(strResponse))
            {
                Response.Write("{\"code\":9999, \"message\":\"Response data is empty\"}");
            }
            //-- JSON 파싱
            PayResult objJsonData = JsonConvert.DeserializeObject <PayResult>(strResponse);

            string strResponseCode = "{\"code\":0, \"message\":\"success\"}";

            POQResp objRespData = JsonConvert.DeserializeObject <POQResp>(strResponseCode);

            if (objRespData.code.Equals(0))
            {
                TCashMst objTCashMst = new TCashMst();

                objTCashMst.UserID   = objJsonData.user_id;                    //--가맹점 결제자(회원) 아이디(email, 영문 및 숫자 가능)
                objTCashMst.UserName = objJsonData.user_name;                  //--가맹점 결제자(회원) 이름
                objTCashMst.OrderNo  = objJsonData.order_no;                   //--가맹점의 주문 번호
                objTCashMst.TID      = objJsonData.tid;                        //--결제고유번호

                objTCashMst.CID    = objJsonData.cid;                          //--승인번호
                objTCashMst.PayAmt = objJsonData.amount;                       //--결제요청 금액
                objTCashMst.PGCode = objJsonData.pgcode;                       //--결제요청한 pg명
                string strPayHash = objJsonData.payhash;                       //--파라메터 검증을 위한 SHA256 hash 값 SHA256(user_id +amount + tid +결제용 API Key) * 일부 결제 수단은 전달되지 않습니다.(가상계좌 등)
                objCashDao.InsertCash(objTCashMst);

                return(RedirectToAction("POQCallback", "Home"));
            }
            else
            {
                return(RedirectToAction("POQCancel", "Home"));
            }
        }