public void logOrder(m_LogOrder log) { using (var conn = new OracleConnection(Database.conString)) { try { conn.Open(); using (var cmd = new OracleCommand(SqlCmd.Log.logOrder, conn) { CommandType = CommandType.Text }) { cmd.Parameters.Add("cust_no", log.cust_no); cmd.Parameters.Add("con_no", log.con_no); cmd.Parameters.Add("order_no", log.order_no); cmd.Parameters.Add("trans_no", log.trans_no); cmd.Parameters.Add("channel_id", log.channel_id); cmd.Parameters.Add("pay_amt", log.pay_amt); cmd.Parameters.Add("trans_amt", log.trans_amt); cmd.Parameters.Add("device_id", log.device_id); cmd.Parameters.Add("tel", log.tel); cmd.Parameters.Add("note", log.note); cmd.Parameters.Add("ip_addr", log.ip_addr); cmd.ExecuteNonQuery(); cmd.Dispose(); } } finally { conn.Close(); conn.Dispose(); } } //oracle = new Database(); //List<OracleParameter> parameter = new List<OracleParameter> //{ // new OracleParameter("cust_no", log.cust_no), // new OracleParameter("con_no", log.con_no), // new OracleParameter("order_no", log.order_no), // new OracleParameter("trans_no", log.trans_no), // new OracleParameter("channel_id", log.channel_id), // new OracleParameter("pay_amt", log.pay_amt), // new OracleParameter("trans_amt", log.trans_amt), // new OracleParameter("device_id", log.device_id), // new OracleParameter("tel", log.tel), // new OracleParameter("note", log.note), // new OracleParameter("ip_addr", log.ip_addr) //}; //oracle.SqlExecuteWithParams(SqlCmd.Log.logOrder, parameter); //oracle.OracleDisconnect(); }
public IHttpActionResult PostNewPayment2([FromBody] PaymentReq value) { var setting = (AppSettingsSection)WebConfigurationManager.OpenWebConfiguration("~").GetSection("appSettings"); var appService = setting.Settings["AppService"].Value; var paymentService = setting.Settings["PaymentService"].Value; if (appService == "False" || paymentService == "False") { return(Unauthorized()); } value.IPAddress = HttpContext.Current.Request.UserHostAddress; string clientHostname = HttpContext.Current.Request.UserHostName; string url = HttpContext.Current.Request.Path; try { //value.OrderNo = "test001"; value.Description = "testAPI"; string strAmt = value.Amount.ToString(); strAmt = strAmt.Insert(strAmt.Length - 2, "."); value.PayAmt = double.Parse(strAmt); mlog = new m_LogReq(); if (!ModelState.IsValid) { return(BadRequest("Invalid parameter!")); } user = new User(); var cust = user.getProfileById(value.CustomerId); if (cust != null) { var contract = user.findContract(value.CustomerId, value.ContractNo); if (contract != null) { if (value.PayAmt <= (contract.BAL_AMT - contract.DISC_AMT)) { Payment payment = new Payment(); PaymentRes res = payment.createPayment(value); if (res == null) { //mlogOrder = new m_LogOrder(); //mlogOrder.cust_no = value.CustomerId; //mlogOrder.con_no = value.ContractNo; //mlogOrder.channel_id = value.ChannelCode; //mlogOrder.pay_amt = value.PayAmt; //mlogOrder.trans_amt = value.Amount; //mlogOrder.device_id = value.DeviceId; //mlogOrder.tel = value.PhoneNumber; //mlogOrder.note = "ระบบขัดข้อง ไม่สามารถทำรายการได้"; //mlogOrder.ip_addr = value.IPAddress; //log.logOrder(mlogOrder); monitor.sendMessage(url, clientHostname, value, new { request_status = "FAILURE", desc = "Internal server error / Invalid parameter!", data = res }); return(Ok(new { code = 500, message = "ระบบขัดข้อง ไม่สามารถทำรายการได้", data = res })); } else { monitor.sendMessage(url, clientHostname, value, new { request_status = "SUCCESS", desc = "Requested to Payment Gateway", data = res }); return(Ok(new { code = 200, message = "สร้างรายการชำระเงินสำเร็จ", data = res })); } } else { mlogOrder = new m_LogOrder(); mlogOrder.cust_no = value.CustomerId; mlogOrder.con_no = value.ContractNo; mlogOrder.channel_id = value.ChannelCode; mlogOrder.pay_amt = value.PayAmt; mlogOrder.trans_amt = value.Amount; mlogOrder.device_id = value.DeviceId; mlogOrder.tel = value.PhoneNumber; mlogOrder.note = "จำนวนเงินที่ต้องการชำระมากกว่ายอดคงเหลือหลังจากที่หักส่วนลดแล้ว"; mlogOrder.ip_addr = value.IPAddress; log.logOrder(mlogOrder); //mlog.cust_no = value.CustomerId; //mlog.device_id = value.DeviceId; //mlog.ip_addr = value.IPAddress; //mlog.note = "จำนวนเงินที่ต้องการชำระมากกว่ายอดคงเหลือหลังจากที่หักส่วนลดแล้ว"; //mlog.url = "api/authen/newpayment2"; //log.logRequest(mlog); monitor.sendMessage(url, clientHostname, value, new { request_status = "FAILURE", desc = "จำนวนเงินที่ต้องการชำระมากกว่ายอดคงเหลือหลังจากที่หักส่วนลดแล้ว", data = string.Empty }); return(Ok(new { code = 400, message = "จำนวนเงินที่ต้องการชำระมากกว่ายอดคงเหลือหลังจากที่หักส่วนลดแล้ว", data = contract })); } } else { mlogOrder = new m_LogOrder(); mlogOrder.cust_no = value.CustomerId; mlogOrder.con_no = value.ContractNo; mlogOrder.channel_id = value.ChannelCode; mlogOrder.pay_amt = value.PayAmt; mlogOrder.trans_amt = value.Amount; mlogOrder.device_id = value.DeviceId; mlogOrder.tel = value.PhoneNumber; mlogOrder.note = "ไม่พบสัญญาของลูกค้า"; mlogOrder.ip_addr = value.IPAddress; log.logOrder(mlogOrder); //mlog.cust_no = value.CustomerId; //mlog.device_id = value.DeviceId; //mlog.ip_addr = value.IPAddress; //mlog.note = "ไม่พบสัญญาของลูกค้า"; //mlog.url = "api/authen/newpayment2"; //log.logRequest(mlog); monitor.sendMessage(url, clientHostname, value, new { request_status = "FAILURE", desc = "Not found contract!", data = contract }); return(Ok(new { code = 400, message = "ไม่พบข้อมูลสัญญาในระบบ", data = contract })); } } else { mlogOrder = new m_LogOrder(); mlogOrder.cust_no = value.CustomerId; mlogOrder.con_no = value.ContractNo; mlogOrder.channel_id = value.ChannelCode; mlogOrder.pay_amt = value.PayAmt; mlogOrder.trans_amt = value.Amount; mlogOrder.device_id = value.DeviceId; mlogOrder.tel = value.PhoneNumber; mlogOrder.note = "ไม่พบข้อมูลลูกค้าในระบบ"; mlogOrder.ip_addr = value.IPAddress; log.logOrder(mlogOrder); //mlog.cust_no = value.CustomerId; //mlog.device_id = value.DeviceId; //mlog.ip_addr = value.IPAddress; //mlog.note = "ไม่พบข้อมูลลูกค้า"; //mlog.url = "api/authen/newpayment2"; //log.logRequest(mlog); monitor.sendMessage(url, clientHostname, value, new { request_status = "FAILURE", desc = "Not found customer!", data = cust }); return(Ok(new { code = 400, message = "ไม่พบข้อมูลลูกค้าในระบบ", data = cust })); } } catch (Exception e) { mlog = new m_LogReq(); mlog.cust_no = value.CustomerId; mlog.device_id = value.DeviceId; mlog.ip_addr = value.IPAddress; mlog.note = e.Message; mlog.url = "api/authen/newpayment2"; log.logRequest(mlog); monitor.sendMessage(url, clientHostname, value, new { request_status = "FAILURE", Message = e.Message }); return(Ok(new { code = 500, message = e.Message, data = string.Empty })); } }