File: /www/exchange2/exchange/crontrade1.php
<?php //error_reporting(0);
exit;
mysql_connect('localhost', 'debxadmin', 'f0V2:c#z9j15') or die("Could not connect: " . mysql_error());
mysql_select_db("debx");
//mysql_connect('localhost', 'root', '') or die("Could not connect: " . mysql_error());
//mysql_select_db("debtors");
function getBuyrate($tradefloor){
$sql = " SELECT sellrate, (buyrate/100) as AgreeRate ".
" FROM exchange_rate ORDER BY `exchange_id` DESC LIMIT 1";
$query = mysql_query($sql);
$records = mysql_fetch_assoc($query);
return $records['AgreeRate'];
}
function getCommission($tradefloor){
$bid_sql = "SELECT * FROM invoice_bidding_history where invoice_id = '".$tradefloor['invoice_id']."' LIMIT 1";
$query = mysql_query($bid_sql);
$history = mysql_fetch_assoc($query);
$history_count = mysql_num_rows($query);
$org_type = 2;
if($history_count ==0){ // Black Trader Organisation Commision
$sql = " SELECT c.* FROM organisation_commission as c, organisation_details as org ".
" WHERE org.user_id = '".$tradefloor['user_id']."' && ".
" c.organisation_id = org.organisation_id LIMIT 1";
$query = mysql_query($sql);
$records = mysql_fetch_assoc($query);
$records_count = mysql_num_rows($query);
$org_type = 1;
}else{
if($tradefloor['sales_type'] =="1"){
$bid_sql = "SELECT * FROM invoice_bidding where invoice_id = '".$tradefloor['invoice_id']."' order by min_advance DESC LIMIT 1";
}else{
$bid_sql = "SELECT * FROM invoice_bidding where invoice_id = '".$tradefloor['invoice_id']."' order by max_thirty_reserve ASC LIMIT 1";
}
$query = mysql_query($bid_sql);
$history1 = mysql_fetch_assoc($query);
$history_count1 = mysql_num_rows($query);
/*$bid_query1->executeQuery($bid_sql);
$history1 = $bid_query1->records;*/
$sql = " SELECT c.* FROM organisation_commission as c, organisation_details as org ".
" WHERE org.user_id = '".$history1['user_id']."' && c.organisation_id = org.organisation_id ";
$query = mysql_query($sql);
$records = mysql_fetch_assoc($query);
$records_count = mysql_num_rows($query);
}
$commission = array();
$sql1 = " SELECT * FROM organisation_commission ORDER BY commission_id ASC LIMIT 2 ";
$query = mysql_query($sql1);
$inc= 0;
while($rec = mysql_fetch_assoc($query)){
if($inc == 0){
$commission['tradeCommission'] = $rec['commission']/100;
$commission['agentCommission'] = $rec['user_commission']/100;
}else{
$commission['exchangeCommission'] = $rec['commission']/100;
$commission['intermedCommission'] = $rec['user_commission']/100;
}
$inc++;
}
if($records_count > 0){
if($org_type == 1){
$commission['tradeCommission'] = $records['commission']/100;
$commission['agentCommission'] = $records['user_commission']/100;
//$commission['intermedCommission'] = 0;
}else{
$commission['exchangeCommission'] = $records['commission']/100;
$commission['intermedCommission'] = $records['user_commission']/100;
}
}
$sql = " SELECT debtor_insurance_cost FROM debtors_master ".
" WHERE debtor_master_id = '".$tradefloor['debtor_id']."' LIMIT 1";
$query = mysql_query($sql);
$records = mysql_fetch_assoc($query);
$records_count1 = mysql_num_rows($query);
$commission['cdpCost'] = $records['debtor_insurance_cost']/100;
/*$query = new Bin_Query();
$sql = " SELECT c.* FROM organisation_commission as c, organisation_details as org ".
" WHERE org.user_id = '".$_SESSION['user']['userid']."' && c.organisation_id = org.organisation_id LIMIT 1";
$query = new Bin_Query();
$query->executeQuery($sql);
$records = $query->records;*/
return $commission;
}
$result_q = mysql_query("SELECT * FROM `invoice_master` WHERE invoice_authorise = 0"); // WHERE invoice_id=39
while ($row = mysql_fetch_assoc($result_q)) {
$sales_type = $row['sales_type'];
$face_value = $row['face_value'];
$min_advance = $row['min_advance'];
$max_thirty_day_reserve = $row['max_thirty_day_reserve'];
$ex_date = $row['expected_date'];
$tr_date = $row['trading_close_date'];
$buy_min_advance = $row['buy_min_advance'];
$buy_max_thirty_day_reserve = $row['buy_max_thirty_day_reserve'];
$debx = $row['debx'];
$actual_date = $row['actual_date'];
if($sales_type == "1"){
}else if($sales_type == "2"){
$sql = " SELECT max_maturity_days, processing_fee, posting_fee ".
" FROM site_settings LIMIT 1";
$query = mysql_query($sql);
$records = mysql_fetch_assoc($query);
$data = array();
$data['fee'] = $records['posting_fee'];
$data['bankfee'] = $records['processing_fee'];
$data['bank_transfer'] = 50;
$data['debxcomission'] = 0.125;
$data['max_maturity_days'] = $records['max_maturity_days'];
$data['authorised_time'] = 0;
$data['cdpCover'] = 90/100; //90%
$data['commission'] = getCommission($row, $flag);
$data['agreed_rate'] = getBuyRate($row, $flag);
$sql11 = " SELECT org.purchase_price, org.posting_fee, org.processing_fee ".
" FROM invoice_master as m, organisation_details as org ".
" WHERE m.invoice_id = '".$row['invoice_id']."' && org.user_id = m.user_id LIMIT 1";
$query11 = mysql_query($sql11);
$records11 = mysql_fetch_assoc($query11);
$data['purchase_discount'] = $records11['purchase_price'];
$fee = $data['fee'];
$bankfee = $data['bankfee'];
$bank_transfer = $data['bank_transfer'];
$debxcomission = $data['debxcomission'];
$max_maturity_days = $data['max_maturity_days'];
$exchange_fee = $data['exchange_fee'];
$agreed_rate = $data['agreed_rate'];
$face_value = $row['face_value'];
$max = $max_thirty_day_reserve/100;
$actual_date = $row['actual_date'];
$non_days_sql = "SELECT DATE(DATE_ADD(trading_close_date,INTERVAL ".
" (payment_terms+".$data['authorised_time'].") DAY)) AS expecteddate ,".
" (DATEDIFF(DATE_ADD(expected_date, INTERVAL +".$data['authorised_time']." DAY), DATE(actual_date))) ".
" AS days, ".
" (DATEDIFF(DATE_ADD(trading_close_date,INTERVAL payment_terms DAY),DATE(trading_close_date))) As days1 ".
" FROM invoice_master ".
" WHERE invoice_id = '".$row['invoice_id']."' LIMIT 1";
$non_query = mysql_query($non_days_sql);
$non_days = mysql_fetch_assoc($non_query);
$purchase_price = $face_value-($face_value*$max*12*$data['max_maturity_days']/360);
if($non_days['days1'] >= $max_maturity_days){
$valueReturned = ($face_value-$face_value*$max*12*$max_maturity_days/360)+($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$max_maturity_days/360;
}else{
$valueReturned = ($face_value-$face_value*$max*12*$max_maturity_days/360)+($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$non_days[0]['days1']/360;
}
if($non_days[0]['days'] >= $data['max_maturity_days']){
//(L3-L3*L6*12*D7/360)*H36*D7/360
$yieldValue = ($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$max_maturity_days/360;
}else{
//(L3-L3*L6*12*D7/360)*H36*(H7-H3)/360)
$yieldValue = ($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$non_days[0]['days']/360;
}
$yield = $yieldValue/ $purchase_price*360/$non_days['days'];
//$yield = $max * 12;
if($row['buy_out']=="1"){
$max = $buy_max_thirty_day_reserve/100;
$purchase_price = $face_value-($face_value*$max*12*$data['max_maturity_days']/360);
if($non_days['days1'] >= $max_maturity_days){
$nonValueReturned = ($face_value-$face_value*$max*12*$max_maturity_days/360)+($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$max_maturity_days/360;
}else{
$nonValueReturned = ($face_value-$face_value*$max*12*$max_maturity_days/360)+($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$non_days[0]['days1']/360;
}
if($non_days[0]['days'] >= $data['max_maturity_days']){
//(L3-L3*L6*12*D7/360)*H36*D7/360
$nonyieldValue = ($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$max_maturity_days/360;
}else{
//(L3-L3*L6*12*D7/360)*H36*(H7-H3)/360)
$nonyieldValue = ($face_value-$face_value*$max*12*$max_maturity_days/360)*$agreed_rate*$non_days[0]['days']/360;
}
$ann_yield = $nonyieldValue/ $purchase_price*360/$non_days['days'];
}
$discount = $max_thirty_day_reserve;
}else{
}
$history_sql="UPDATE `invoice_master` SET `created_at` = NOW(),
`yield` = '".$yield."', `buy_yield` = '".$ann_yield."', `return` = '".$valueReturned."',
`buy_return` = '".$nonValueReturned."',
`discount_rate` = '".$discount."' WHERE `invoice_id` ='".$row['invoice_id']."' LIMIT 1;";
mysql_query($history_sql);
/*if(mysql_query($history_sql)){
echo $row['invoice_id']."-".$yield."<br>" ;
}*/
//echo "<br>";
$yield =0;
$ann_yield=0;
$result11 = 0;
$result1 =0;
}
echo "Cron executed Successfully";
exit;
?>