60 lines
2.0 KiB
PHP
60 lines
2.0 KiB
PHP
<?php
|
|
|
|
echo "[" . date("Y-m-d H:i:s") . "] parsedemail_item_update_base_cost job is starting.\n";
|
|
|
|
require '../backend.php';
|
|
|
|
global $pgconn, $readOnlyReplicaConn;
|
|
|
|
$db_host = $savvyext->cfgReadChar('database.host');
|
|
$db_port = $savvyext->cfgReadLong('database.port');
|
|
$db_name = $savvyext->cfgReadChar('database.name');
|
|
$db_user = $savvyext->cfgReadChar('database.user');
|
|
$db_pass = $savvyext->cfgReadChar('database.pass');
|
|
$conn_string = "host=${db_host} port=${db_port} dbname=${db_name} user=${db_user} password=${db_pass}";
|
|
$pgconn = pg_connect($conn_string);
|
|
|
|
$db_host = $savvyext->cfgReadChar('database_replica.host');
|
|
$db_name = $savvyext->cfgReadChar('database_replica.name');
|
|
$db_user = $savvyext->cfgReadChar('database_replica.user');
|
|
$db_pass = $savvyext->cfgReadChar('database_replica.pass');
|
|
$db_port = $savvyext->cfgReadLong('database_replica.port');
|
|
$readOnlyReplicaConnstr = "host=${db_host} port=${db_port} dbname=${db_name} user=${db_user} password=${db_pass}";
|
|
$readOnlyReplicaConn = pg_connect($readOnlyReplicaConnstr);
|
|
|
|
/*get travel_time is measured with seconds*/
|
|
$q = "SELECT p.id, cost, promotions_credits
|
|
FROM parsedemail_item p LEFT JOIN parsedemail_item_extra pa ON p.id=pa.parsedemail_item_id";
|
|
|
|
$r = pg_query($readOnlyReplicaConn, $q);
|
|
$total = $success = $failed = 0;
|
|
while ($f = pg_fetch_row($r)) {
|
|
$total ++;
|
|
$id = $f[0];
|
|
$cost = $f[1];
|
|
$promotions_credits = $f[2];
|
|
//echo $cost,$promotions_credits;
|
|
$base_cost = $cost+abs($promotions_credits);
|
|
$updated = update_base_cost($id,$base_cost);
|
|
if($updated>0){
|
|
$success++;
|
|
}else{
|
|
$failed++;
|
|
}
|
|
}
|
|
echo "Total: ".$total.".\n";
|
|
echo "Success: : ".$success.".\n";
|
|
echo "Failed: : ".$failed.".\n";
|
|
pg_close($readOnlyReplicaConn);
|
|
|
|
echo "[" . date("Y-m-d H:i:s") . "] parsedemail_item_update_base_cost job complete.\n";
|
|
|
|
function update_base_cost($id, $base_cost) {
|
|
global $pgconn;
|
|
$q = "UPDATE parsedemail_item SET base_cost=" . $base_cost . " WHERE id=" . $id . "";
|
|
$r = pg_query($pgconn, $q);
|
|
if ($r) {
|
|
return pg_affected_rows($r);
|
|
}
|
|
return 0;
|
|
} |