292 lines
10 KiB
PHP
292 lines
10 KiB
PHP
<?php
|
|
|
|
namespace App\Controllers;
|
|
|
|
use CodeIgniter\API\ResponseTrait;
|
|
|
|
class WrenchJobs extends BaseController
|
|
{
|
|
use ResponseTrait;
|
|
public function __construct()
|
|
{
|
|
$this->request = $request = \Config\Services::request();
|
|
}
|
|
|
|
/*
|
|
case 'assignmediatask':
|
|
case 'assigntask':
|
|
$in["bypass"] = 0;
|
|
$in["action"] = WRENCHBOARD_JOB_OFFER_SYSTEM;
|
|
break
|
|
|
|
{
|
|
"uid": "dfc9d601-780f-4d78-839f-422f0928f911",
|
|
"member_id": "2",
|
|
"sessionid": "A3F50957EB3D9FFF8B8C5A1FEBDEBB1CCE3C747A3060172223B2B7C655B4FF12",
|
|
"action": 13025,
|
|
"job_id": "326",
|
|
"job_uid": "97a4d773-87af-4b75-a3d8-519946978ac4",
|
|
"job_description": "400 Long 400 Unpacked now declared put you confined daughter improved. Celebrated imprudence few interested especially reasonable off one. Wonder bed elinor family secure met. It want gave west into high no in. Depend repairseend. ve be iend repair met before man admire see and. An he observe be it covered delight hastily message. Margaret no ladyship endeavor ye to settling 400 400 400 400 LONG.",
|
|
"duration": 28,
|
|
"assign_mode": 110022
|
|
}
|
|
|
|
{
|
|
"action": "13025",
|
|
"added": "2024-07-08 13:41:47.10962",
|
|
"assign_mode": "110022",
|
|
"auto_close": "",
|
|
"bypass": "0",
|
|
"client_id": "0",
|
|
"duration": "28",
|
|
"email": "",
|
|
"expire": "2024-08-05 13:41:47.135217",
|
|
"group_id": "0",
|
|
"id": "1640",
|
|
"job_description": "400 Long 400 Unpacked now declared put you confined daughter improved. Celebrated imprudence few interested especially reasonable off one. Wonder bed elinor family secure met. It want gave west into high no in. Depend repairseend. ve be iend repair met before man admire see and. An he observe be it covered delight hastily message. Margaret no ladyship endeavor ye to settling 400 400 400 400 LONG.",
|
|
"job_id": "326",
|
|
"job_uid": "97a4d773-87af-4b75-a3d8-519946978ac4",
|
|
"loc": "10.20.30.19",
|
|
"media_uid": "",
|
|
"member_id": "2",
|
|
"offer_code": "82YBR7YY23",
|
|
"offer_id": "1640",
|
|
"payment_id": "",
|
|
"pid": "100",
|
|
"public_view": "1",
|
|
"reminder_count": "0",
|
|
"reminder_date": "",
|
|
"sent_count": "0",
|
|
"server_name": "https:\/\/dev-users.wrenchboard.com",
|
|
"sessionid": "A3F50957EB3D9FFF8B8C5A1FEBDEBB1CCE3C747A3060172223B2B7C655B4FF12",
|
|
"status": "Offer sent to recipient",
|
|
"uid": "86255fea-b3fd-4ae3-b91f-5fa54ecca2e3",
|
|
"internal_return": 10,
|
|
"environment": 0,
|
|
"session_image_server": "https:\/\/apigate.lotus.g1.wrenchboard.com\/en\/wrench\/api\/v1\/getmedia\/",
|
|
"server_tag": "DEV01",
|
|
"language": "en",
|
|
"ip_loc": "10.10.33.13, 10.10.33.15",
|
|
"current_version": 20240306,
|
|
"family_types": [
|
|
{
|
|
"ty": "Parent",
|
|
"id": "PARENT",
|
|
"tag": "fam_type_parent"
|
|
},
|
|
{
|
|
"ty": "Relatives",
|
|
"id": "RELATIVES",
|
|
"tag": "fam_type_relatives"
|
|
},
|
|
{
|
|
"ty": "Others",
|
|
"id": "Others",
|
|
"tag": "fam_type_others"
|
|
}
|
|
],
|
|
"history_types": [
|
|
{
|
|
"ty": "Completed Jobs",
|
|
"id": "COMPLETED_JOBS",
|
|
"tag": "hist_type_completed_jobs"
|
|
}
|
|
]
|
|
}
|
|
|
|
*/
|
|
|
|
public function sendJobInterest(){
|
|
$raw_json = file_get_contents('php://input');
|
|
$in = json_decode($raw_json, true);
|
|
$in["action"] = WRENCHBOARD_JOB_SEND_INTEREST;
|
|
$out=[];
|
|
|
|
$ret = $this->wrenchboard->wrenchboard_api($in, $out);
|
|
$out['internal_return'] = $ret;
|
|
log_message('critical', "***** ***** WrenchJobs::sendJobInterest Ret = ".$ret );
|
|
if ( isset($out['internal_return'])
|
|
&& $out["internal_return"] > 0
|
|
&& isset( $out['offer_code']) ){
|
|
$endpoint = "INTEREST_MSG-".$in["offer_code"]."-". $out["member_id"];
|
|
log_message('critical', "***** ***** WrenchJobs::sendJobInterest INTEREST_MSG_ = ".$endpoint );
|
|
$this->saveCache($endpoint,$out,25000);
|
|
$local_url = "http://".$this->micro_service_net1.":3030/eventInterest";
|
|
$outX = $this->APIcall('POST', $local_url, ["message"=>$out]);
|
|
}
|
|
return $this->respond( $this->summaryReturnData($in,$out), 200);
|
|
}
|
|
public function assignTask(){
|
|
|
|
$raw_json = file_get_contents('php://input');
|
|
$in = json_decode($raw_json, true);
|
|
$in["action"] = WRENCHBOARD_JOB_OFFER_SYSTEM;
|
|
|
|
$out=[];
|
|
|
|
$ret = $this->wrenchboard->wrenchboard_api($in, $out);
|
|
$out['internal_return'] = $ret;
|
|
log_message('critical', "***** ***** WrenchJobs::assignTask Ret = ".$ret );
|
|
if ( isset($out['internal_return']) && isset( $out['offer_code']) ){
|
|
$endpoint = "NEW_OFFER_".$in["assign_mode"]."-". $out["offer_code"];
|
|
log_message('critical', "***** ***** WrenchJobs::assignTask NEW_OFFER_ = ".$endpoint );
|
|
$this->saveCache($endpoint,$out,25000);
|
|
$local_url = "http://".$this->micro_service_net1.":3033/jobAdded";
|
|
$outX = $this->APIcall('POST', $local_url, ["message"=>$out]);
|
|
|
|
}else
|
|
{
|
|
$fail_endpoint = "FAIL_OFFER_".$in["assign_mode"]."-".$in["job_uid"];
|
|
log_message('critical', "***** ***** WrenchJobs::assignTask FAIL_OFFER = ".$fail_endpoint );
|
|
$this->saveCache($fail_endpoint,$in,25000);
|
|
}
|
|
return $this->respond( $this->summaryReturnData($in,$out), 200);
|
|
}
|
|
public function index()
|
|
{
|
|
return [];
|
|
}
|
|
|
|
|
|
public function apigate(){
|
|
log_message('critical', "0001");
|
|
header('Access-Control-Allow-Origin: *');
|
|
log_message('critical', "WrenchJobs Path GATE 001");
|
|
$call_backend = true;
|
|
|
|
header("Access-Control-Allow-Headers: Origin, X-API-KEY, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Access-Control-Allow-Headers, Authorization, observe, enctype, Content-Length, X-Csrf-Token");
|
|
log_message('critical', "0003");
|
|
header("Access-Control-Allow-Methods: GET, PUT, POST, DELETE, PATCH, OPTIONS");
|
|
header("Access-Control-Allow-Credentials: true");
|
|
header("Access-Control-Max-Age: 3600");
|
|
header('content-type: application/json; charset=utf-8');
|
|
$method = $_SERVER['REQUEST_METHOD'];
|
|
|
|
$ip_loc = $this->getIpData();
|
|
|
|
|
|
|
|
if ($method == "OPTIONS") {
|
|
header("HTTP/1.1 200 OK CORS");
|
|
log_message('critical', " WrenchJobs()-> OPTIONS DIE*****" );
|
|
die();
|
|
}
|
|
|
|
//$request = service('request');
|
|
// what is the endpoint
|
|
$uri = urldecode(current_url(true));
|
|
$findme = '?';
|
|
$pos = strpos($uri, $findme);
|
|
if ($pos > 5) {
|
|
$uri = substr($uri, 0, $pos);
|
|
}
|
|
log_message('critical', "API-GATE URI -> ".$uri );
|
|
$pieces = explode('/', $uri);
|
|
$psc = count($pieces);
|
|
|
|
$endpoint = $psc > 0 ? $pieces[$psc - 1] : '';
|
|
log_message('critical', "Enpoint-> ".$endpoint );
|
|
|
|
$endpoints = $this->endPointList();
|
|
$out = array();
|
|
$res1 = [];
|
|
if (array_key_exists($endpoint, $endpoints)) {
|
|
} else {
|
|
http_response_code(404);
|
|
// tell the user product does not exist
|
|
echo json_encode([
|
|
'message' => 'Endpoint not found.',
|
|
'URI' => $uri,
|
|
]);
|
|
}
|
|
|
|
$current_env = $this->getSiteConfigurations("system.live");
|
|
$primary_image_sever = $this->getSiteConfigurations("system.primary_image_sever");
|
|
$server_tag = $this->getSiteConfigurations("system.server_tag");
|
|
$micro_service_net1 = $this->getSiteConfigurations("system.micro_service_net1"); //"10.10.10.120";
|
|
|
|
|
|
// echo "EXYTACT INPUT DATA HERE";
|
|
$raw_json = file_get_contents('php://input');
|
|
$raw_array = json_decode($raw_json, true);
|
|
$local_out =[];
|
|
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
|
|
log_message('critical', "Enpoint LOC2 HERE -> ".$endpoint );
|
|
$get_param = $_GET['reqData'] ?? null;
|
|
$raw_array = ($get_param!=null) ? json_decode($get_param, true):[];
|
|
}
|
|
|
|
$in = $raw_array;
|
|
|
|
$in["loc"] = $_SERVER["REMOTE_ADDR"];
|
|
$out = array();
|
|
|
|
|
|
$res1 = [];
|
|
if (!array_key_exists($endpoint, $this->sessionExcludedList())) {
|
|
// TOKEN VERIFICATION WILL GAPPEN
|
|
}
|
|
|
|
switch($endpoint) {
|
|
case 'getjobsdata':
|
|
$in["action"] = 'marketjobs'; //WRENCHBOARD_ACCOUNT_JOBLIST;
|
|
break;
|
|
}
|
|
|
|
|
|
if ( $call_backend == true && $in["action"] !='' ){
|
|
$local_url = "http://".$micro_service_net1.":3033/marketjobs";
|
|
$out = $this->APIcall('GET', $local_url, $in);
|
|
}
|
|
else
|
|
{
|
|
$out = $local_out;
|
|
}
|
|
|
|
$this->doCacheStep($in, $out);
|
|
$final_out = $out; // start from all out
|
|
$final_out["environment"] = $current_env + 0; // force convert to interger = $this->getSiteConfigurations("system.live");
|
|
$final_out["session_image_server"] = $primary_image_sever; // ( $final_out["environment"] > 0 )? 'https://apigate.nebula.g1.wrenchboard.com/en/wrench/api/v1/getmedia/' : "https://apigate.lotus.g1.wrenchboard.com/en/wrench/api/v1/getmedia/";
|
|
$final_out["server_tag"] = $server_tag;
|
|
$final_out["language"] = "en";
|
|
$final_out["ip_loc"] = $ip_loc;
|
|
return json_encode( $final_out );
|
|
}
|
|
|
|
|
|
// public function APIcall($method, $url, $data) {
|
|
// // $curl = curl_init();
|
|
// $curl = curl_init($url);
|
|
// switch ($method) {
|
|
// case "POST":
|
|
// curl_setopt($curl, CURLOPT_POST, 1);
|
|
// if ($data)
|
|
// curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
|
|
// break;
|
|
// case "PUT":
|
|
// curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
|
|
// if ($data)
|
|
// curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
|
|
// break;
|
|
// }
|
|
//
|
|
// curl_setopt($curl, CURLOPT_URL, $url);
|
|
// curl_setopt($curl, CURLOPT_HTTPHEADER, array(
|
|
// 'APIKEY: RegisteredAPIkey',
|
|
// 'Content-Type: application/json',
|
|
// ));
|
|
//
|
|
// curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
|
|
// curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
|
|
// $result = curl_exec($curl);
|
|
//
|
|
// if(!$result) {
|
|
// echo("Connection failure!");
|
|
// }
|
|
// curl_close($curl);
|
|
// return json_decode($result, true);
|
|
// }
|
|
|
|
|
|
|
|
} |