/1/send.php
https://bitbucket.org/spivovartsev/citrus.ua · PHP · 225 lines · 178 code · 24 blank · 23 comment · 2 complexity · 21a00da537f0f89877baccfe85648b5c MD5 · raw file
- <?php
-
- /**
- * @author admin
- * @copyright 2012
- */
-
- //include_once $_SERVER['DOCUMENT_ROOT'] . '/../library/obmen.php';
- //echo "111";
- include_once $_SERVER['DOCUMENT_ROOT'] . '/var/www/beta.citrus.ua/library/obmen.php';
-
- class SendDelta extends db {
-
- public function gen_xml($ORDER_ID) {
-
-
-
-
- $sql = 'select * FROM b_credit WHERE ORDER_ID = '.$ORDER_ID.'';
- $r = $this->sql($sql);
- $row = mysql_fetch_array($r);
-
- $sql2 = 'SELECT * FROM `b_sale_basket` WHERE ORDER_ID = '.$ORDER_ID.'';
- $r2 = $this->sql($sql2);
- $ss = 0;
- $qt = 0;
- while( $row2 = mysql_fetch_array($r2)){
- $ss += $row2["PRICE"];
- //$qt += $row2["QUANTITY"];
- $qt++;
- }
- $ss = (int) $ss;
- $ss=$ss*100;
- //$nds2 = ($ss/100)*20;
- $nds2 = ($ss/100)*20;
-
- $xml ='
- <?xml version="1.0" encoding="utf-8"?>
- <request>
- <type>APP_SEND_CONFIRMED</type>
- <code>'.$row["guid1"].'</code>
- <params>
- <application_brief>
- <app_info>
- <app-code>'.$row["guid2"].'</app-code>
- <app-date>'.$row["appdate"].'</app-date>
- <app-datetime-stamp>'.$row["datetime"].'</app-datetime-stamp>
- <app-status>CONFIRMED</app-status>
- </app_info>
- <loan_info>
- <product code="15333.001">
- <title>ИК 2,5% в месяц</title>
- <description>Кредит на всі групи товарів, визначені мережею. Початковий внесок від 0%.</description>
- <minTerm>2</minTerm>
- <maxTerm>36</maxTerm>
- <minAmount>30000</minAmount>
- <maxAmount>5000000</maxAmount>
- <minPrePay>0%</minPrePay>
- <maxPrePay>90%</maxPrePay>
- <firstFee>0%</firstFee>
- <monthFee>2.50%</monthFee>
- <intRate>0.01%</intRate>
- <insFee>0%</insFee>
- </product>
- <term>'.$row["kp"].'</term>
- <prePayment>'.$row["prepayment"].'00</prePayment>
- <netLoan>'.$row["netloan"].'00</netLoan>
- <firstFee>'.$row["firstfee2"].'00</firstFee>
- <principal>'.$row["principal"].'00</principal>
- <insFee>'.$row["firstfee2"].'00</insFee>
- <payment>'.$row["payment"].'00</payment>
- <total>'.$row["SUMM"].'00</total>
- <overpay>'.$row["overpay"].'00</overpay>
- </loan_info>
- <author_info>
- <user-tax-id>1234567890</user-tax-id>
- <user-login>rcf_citrus</user-login>
- <user-name>Цитрус Трейд, +380501231212</user-name>
- <point-code>38227766001</point-code>
- <point-title>Цитрус Трейд</point-title>
- <point-address>м.Одеса, пр.-кт Гагаріна, буд.25, офіс.451, Одеська обл.. Україна, 65039</point-address>
- <point-novat>false</point-novat>
- <point-email>shop@citrus.com.ua</point-email>
- <reg-code>38227766</reg-code>
- <partner-title>Цитрус Трейд</partner-title>
- <partner-email>shop@citrus.com.ua</partner-email>
- </author_info>
- <client_info>
- <first-name>'.iconv("Windows-1251", "UTF-8", $row["credit_f"]).'</first-name>
- <last-name>'.iconv("Windows-1251", "UTF-8", $row["credit_i"]).'</last-name>
- <fathers-name>'.iconv("Windows-1251", "UTF-8", $row["credit_o"]).'</fathers-name>
- <tax-id>'.$row["identification_code"].'</tax-id>
- <birthday>'.$row["birthday_first_date"].'.'.$row["birthday_second_date"].'.'.$row["birthday_last_date"].'</birthday>
- <passport>'.iconv("Windows-1251", "UTF-8", $row["passport_b"]).' '.$row["passport_number"].'</passport>
- <passport-date>'.$row["date_of_issue_first_date"].'.'.$row["date_of_issue_second_date"].'.'.$row["date_of_issue_last_date"].'</passport-date>
- <passport-org>'.iconv("Windows-1251", "UTF-8", $row["issued_passport"]).'</passport-org>
- <contact-phone>'.$row["home_phone"].'</contact-phone>
- </client_info>
- <bill_info>
- <billDate>'.$row["billdate"].'</billDate>
- <billNum>'.$row["billnum"].'</billNum>
- <billTotal>'.$ss.'</billTotal>
- <vat novat="false">'.$nds2.'</vat>
- <positions count="'.$qt.'">';
- $sql3 = 'SELECT * FROM `b_sale_basket` WHERE ORDER_ID = '.$ORDER_ID.'';
- $r3 = $this->sql($sql3);
- while( $row3 = mysql_fetch_array($r3)){
- $r3pr=$row3["PRICE"]*100;
- $xml .= '<bill_pos>
- <count>'.round($row3["QUANTITY"]).'</count>
- <unit-price>'.$r3pr.'</unit-price>
- <pos-price>'.$r3pr.'</pos-price>
- <category code="'.$row3[BANK_CODE].'">'.iconv("Windows-1251", "UTF-8", $row3["BANK_TITLE"]).'</category>
- <details>'.$row3["NAME"].'</details>
- </bill_pos>';
- }
- $xml .= '</positions></bill_info></application_brief></params></request>';
- return $xml;
- }
-
- public function send_kr($xml)
- {
-
- $xml2 = "xml=".urlencode($xml); // $xml должна содержать заранее подготовленный текст с XML-заявкой
- define('username','rcf_citrus'); // необходимо подставить предоставленный логин
- define('password','B45F67'); // необходимо подставить предоставленный пароль
- $hostname = 'rcf.deltabank.com.ua';
- //$ch = curl_init('https://'.username.":".password.'@'.$hostname.'/demo/process-request.asp');
- $ch = curl_init('https://'.username.":".password.'@'.$hostname.'/send/');
- curl_setopt ($ch, CURLOPT_HEADER, 1);
- curl_setopt ($ch, CURLOPT_HTTPHEADER, Array("Content-Type: text/html; charset=utf-8"));
- curl_setopt ($ch, CURLOPT_POST, 1);
- curl_setopt ($ch, CURLOPT_POSTFIELDS, $xml2); // Передаем XML-Заявку.
- curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); // убрать комментарий, если сертификат не установлен
- curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); // убрать комментарий, если сертификат не установлен
- curl_setopt ($ch, CURLOPT_HTTPHEADER, Array('Expect:'));
- curl_exec ($ch); $result = curl_multi_getcontent ($ch);
- echo $result."<br/>";
- curl_close ($ch);
- return $result;
- }
- }
-
- set_time_limit(0);
- error_reporting(E_ALL);
- //setlocale(LC_ALL, "ru_RU");
- header("Cache-Control: no-store, no-cache, must-revalidate");
- header("Cache-Control: post-check=0, pre-check=0", false);
- header ("Content-type: text/html; charset=utf-8");
- //header ("Content-type: text/plain");
- $send = new SendDelta();
-
-
-
- require $_SERVER['DOCUMENT_ROOT'] . '/var/www/beta.citrus.ua/application/config/application.php';
- mysql_connect($dbHost, $dbUser, $dbPass);
- mysql_select_db($dbName);
-
- $sql7 = 'SELECT ID, ORDER_ID FROM `b_credit` WHERE (status=1)';
- $result7 = mysql_query($sql7);
- while ($r7 = mysql_fetch_array($result7))
- {
- echo $r7['ID']." - ".$r7['ORDER_ID']."<br />";
- $xml = $send->gen_xml($r7['ORDER_ID']);
- $xml2 = $xml;
- echo "$xml2";
- $send2 = $send->send_kr($xml2);
- echo $send2;
- echo "<p>".strpos($send2, "SUCCESS")."</p>";
- if (strpos($send2, "SUCCESS")>0)
- {
- $sql8 = "UPDATE `b_credit` set status=2 WHERE (ORDER_ID=".$r7['ORDER_ID'].")";
- mysql_query($sql8);
- echo "<p>".$sql8."</p>";
- $sql8 = "UPDATE `b_sale_order` set STATUS_ID='W' WHERE (ID=".$r7['ORDER_ID'].")";
- mysql_query($sql8);
- echo "<p>".$sql8."</p>";
- }
- elseif (strpos($send2, "FAILED")>0)
- {
- $str1=$send2;
- $p1=strpos($str1, "<code>");
- $str1=substr($str1,$p1+6);
- $p2=strpos($str1, "</code>");
- $str1=substr($str1,0,$p2);
- $bank_err=$str1."<br />";
-
- $str1=$send2;
- $p1=strpos($str1, "<message>");
- $str1=substr($str1,$p1+9);
- $p2=strpos($str1, "</message>");
- $str1=substr($str1,0,$p2);
- $bank_err.=$str1;
-
-
-
- $sql8 = "UPDATE `b_credit` set status=5 WHERE (ORDER_ID=".$r7['ORDER_ID'].")";
- mysql_query($sql8);
- echo "<p>".$sql8."</p>";
- $sql8 = "UPDATE `b_credit` set bank_err='".$bank_err."' WHERE (ORDER_ID=".$r7['ORDER_ID'].")";
- mysql_query($sql8);
- echo "<p>".$sql8."</p>";
- $sql8 = "UPDATE `b_sale_order` set STATUS_ID='E' WHERE (ID=".$r7['ORDER_ID'].")";
- mysql_query($sql8);
- echo "<p>".$sql8."</p>";
- }
- sleep(1);
- }
-
-
-
- /*
- $db = mysql_connect('localhost', 'citrus_store', 'vSpYAxRujDfNtneX11a');
- mysql_select_db('citrus_store', $db);
- $sql="SELECT * FROM b_credit_ts WHERE (ID=2)";
- $result = mysql_query($sql, $db);
- while ($r = mysql_fetch_array($result))
- {
- $st=$r['st'];
- }
- $st+=10;
- $sql="UPDATE b_credit_ts set st='".$st."' WHERE (ID=2)";
- mysql_query($sql, $db);*/
- ?>