| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616 |
- <?php
- /****************************
- * File : dashboard.php
- * Author : Cygnusa
- * @2018
- ****************************/
- //SECURITY
- if (!defined('APPLICATION_PATH')) {
- exit('No direct script access allowed');
- }
- class dashboard
- {
- //FUNCTION LISTS
- public function __construct($parent)
- {
- //GET PAGE MESSAGE
- $this->page_data = globalfunc::getMessage($parent, $parent->lang, 'dashboard');
- if (count($parent->params) == 0) {
- $this->dashboardfunc($parent);
- } else {
- $qry_params = explode("?", $parent->params[0]);
- $parameter_val = strtolower($qry_params[0]);
- switch ($parameter_val) {
- case "language":
- case "sales":
- case "learning":
- case "rewardpoints":
- case "redeemhistory":
- case "walletcredit":
- case "walletdebit":
- case "learnpath":
- case "managerdashboard":
- case "dashboardleaderboard":
- case "areamanagerdashboard":
- case "orderhistory":
- case "changempin":
- case "changeepin":
- case "newareamanagerdashboard":
- case "areamanagerdashboardapp":
- case "enquiry":
- case "dealerenquiry":
- case "dealerenquirysales":
- $this->$parameter_val($parent);
- break;
- default:
- $this->dashboardfunc($parent);
- break;
- }
- }
- $parent->response(array('response' => 'failed', 'message' => 'PAGE NOT FOUND'), 404);
- }
- /* /////////////////////////////// DASHBOARD //////////////////////////////////////////////// */
- private function language($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //LANGUAGE
- $get_lang_str = "SELECT `language_id`,`language_code`, `language_title` FROM " . TABLE_MASTER_LANGUAGE . " WHERE is_active='1' AND is_deleted='0' ORDER BY is_default DESC,language_title ASC";
- $get_lang_arr = $parent->getQueryValue($get_lang_str);
- //LOG
- $logstr = 'LANGUAGE';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $get_lang_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// DASHBOARD //////////////////////////////////////////////// */
- private function dashboardfunc($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 2);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $year_data = escape_str($parent->params[0]);
- $last_data = escape_str($parent->params[1]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- //LEARNING
- $learning = projectfunc::userLearningLevel($parent, $parent->current_user_id);
- //if($parent->current_user_role>7 && $parent->current_user_role!=14 && $parent->current_user_role!=16)
- if (in_array($parent->current_user_role, $parent->dse_roles)) {
- //CREATE USER TABLES
- projectfunc::userTableCreate($parent, $parent->current_smpin);
- }
- //GET REWARD POINTS
- $query_rewardpointarr = $parent->selectQuery(TABLE_USER_EPOINTS, "*", "smpin='" . $parent->current_smpin . "' ", "1");
- $earning = ($query_rewardpointarr['nr'] > 0) ? (string) $query_rewardpointarr['result'][0]->points : '0';
- //TARGET
- $user_target = projectfunc::userSalesTarget($parent, $parent->current_user_id, '', $year_data, $month_data);
- //ACHIEVED
- $user_achieved = projectfunc::userSalesAchieved($parent, $parent->current_user_id, '', $year_data, $month_data);
- $sales = array('target' => $user_target, 'achieved' => $user_achieved, 'month' => date('M', strtotime('2018-' . $month_data . "-01")), 'year' => $year_data);
- //LANGUAGE
- $get_lang_str = "SELECT `language_id`,`language_code`, `language_title` FROM " . TABLE_MASTER_LANGUAGE . " WHERE is_active='1' AND is_deleted='0' ORDER BY is_default DESC,language_title ASC";
- $get_lang_arr = $parent->getQueryValue($get_lang_str);
- $query_getarr = $parent->selectQuery(DMS_EMPLOYEE_SALES, "*", "smpin='" . $parent->current_smpin . "' ORDER BY created_on DESC", "1");
- $sales_last_update = ($query_getarr['nr'] > 0) ? (string) $query_getarr['result'][0]->created_on : '0000-00-00 00:00:00';
- //REDEEM POINT
- $wallet_amount = '0';
- $unapproved_amount = '0';
- $is_redeem_point = (projectfunc::checkValidReedem($parent)) ? "1" : "0";
- if (in_array($parent->current_user_role, $parent->dse_roles)) {
- $wallet_amount = projectfunc::userWalletamount($parent, $parent->current_smpin);
- $unapproved_amount = projectfunc::userUnapprovedamount($parent, $parent->current_smpin);
- }
- //MIN REDEEM
- $data['setting'] = 'REDEEM';
- $data = globalfunc::getSiteSetting($parent, $data);
- $min_redeem_point = $data->REDEEM_MIN_VALUE;
- $data_arr = array('learning' => $learning, 'earning' => $earning, 'sales' => $sales, 'languages' => $get_lang_arr, 'sales_last_update' => $sales_last_update, 'is_redeem_point' => $is_redeem_point, 'wallet_amount' => $wallet_amount, 'min_redeem_point' => $min_redeem_point, 'unapproved_amount' => $unapproved_amount);
- //LOG
- $logstr = 'DASHBOARD';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// SALES //////////////////////////////////////////////// */
- private function sales($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 3);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $year_data = escape_str($parent->params[1]);
- $last_data = escape_str($parent->params[2]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- $data_arr = array();
- //GET MODEL
- $model_cond = ($parent->current_user_role > 7 && $parent->current_user_role < 14) ? " AND user_type=0 " : " AND user_type=1 ";
- //GET SEGMENT
- //$segment= projectfunc::userSegment($parent,$parent->current_smpin);
- $segment = $parent->current_user_data->segment;
- $salemodel_arr = array();
- $query_salesmodelarr = $parent->selectQuery(DMS_EMPLOYEE_SALES, " model ", "smpin='" . $parent->current_smpin . "' AND sale_date>='" . date('Y-m-d', strtotime($year_data . "-" . $month_data . "-01")) . "' AND sale_date<='" . date('Y-m-t', strtotime($year_data . "-" . $month_data . "-01")) . "' GROUP BY model ", "");
- if ($query_salesmodelarr['nr']) {
- foreach ($query_salesmodelarr['result'] as $res) {
- $salemodel_arr[] = $res->model;
- }
- $salemodel_quotes = array_map("quotes_array", $salemodel_arr);
- $model_cond .= " AND ( (segment='" . $segment . "' OR segment='0' AND model_is_target=1)OR (model_name IN (" . @implode(',', $salemodel_quotes) . ")) )";
- } else {
- $model_cond .= " AND (segment='" . $segment . "' OR segment='0' )";
- }
- $query_modelarr = $parent->selectQuery(TABLE_MODEL, " model_name,model_image ", " user_type=0 " . $model_cond . " ORDER BY model_id", "");
- if ($query_modelarr['nr']) {
- foreach ($query_modelarr['result'] as $res) {
- $res->model_image_url = ($res->model_image != '') ? SITE_URL . "hypermupload/model/" . $res->model_image : NOIMAGE_URL;
- $user_target = projectfunc::userSalesTarget($parent, $parent->current_user_id, $res->model_name, $year_data, $month_data);
- // if($user_target>0)
- // {
- $res->target = ($user_target) ? $user_target : 0;
- $res->achieved = projectfunc::userSalesAchieved($parent, $parent->current_user_id, $res->model_name, $year_data, $month_data);
- $res->achieved = ($res->achieved) ? $res->achieved : 0;
- $data_arr[] = $res;
- // }
- }
- }
- //LOG
- $logstr = 'SALES LIST';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// LEARNING //////////////////////////////////////////////// */
- /*private function learning($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent,array('GET'));
- globalfunc::checkParamCount($parent,2);
- globalfunc::checkAuthrozation($parent,array('type'=>'user'));
- $year_data=escape_str($parent->params[0]);
- $last_data = escape_str($parent->params[1]);
- $last_data_arr= explode('?',$last_data);
- $month_data=trim($last_data_arr[0]);
- $parent->response(array('response'=>'success', 'data'=>$data_arr,'message'=>$this->page_data['success1']),200);
- }
- */
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// REWARDPOINTS //////////////////////////////////////////////// */
- private function rewardpoints($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //PAGINATION SETTINGS
- $limit_cond = '';
- $data_arr = array();
- $limit_str = globalfunc::setPageLimit($parent, $parent->params[0]);
- $limit_cond = ($limit_str) ? " LIMIT " . $limit_str : '';
- $data = @explode('?', $parent->params[1]);
- $query_rewardpointarr = $parent->selectQuery(TABLE_USER_EPOINTS_HISTORY, "*", "smpin='" . $parent->current_smpin . "' AND transaction_type='C' ORDER BY created_on DESC " . $limit_cond, "");
- if ($query_rewardpointarr['nr']) {
- // foreach($query_rewardpointarr['result'] as $res)
- // {
- // $data_arr[]=$res;
- // }
- $data_arr = $query_rewardpointarr['result'];
- }
- //LOG
- $logstr = 'REWARDPOINTS';
- globalfunc::insertUserLog($parent, $logstr);
- //GET COUNT
- $get_rewardpoint_count = $parent->selectQuery(TABLE_USER_EPOINTS_HISTORY, "COUNT(hid)as e_count", " smpin='" . $parent->current_smpin . "' AND transaction_type='C' ", "1");
- $total = ($get_rewardpoint_count['nr'] > 0) ? $get_rewardpoint_count['result'][0]->e_count : '0';
- //TOTAL REWARD POINTS
- $total_rewardpoint_arr = $parent->selectQuery(TABLE_USER_EPOINTS_HISTORY, "SUM(points) as total_point", " smpin='" . $parent->current_smpin . "' AND transaction_type='C' ORDER BY created_on DESC ", "");
- $total_point = ($total_rewardpoint_arr['nr'] > 0 && $total_rewardpoint_arr['result'][0]->total_point) ? $total_rewardpoint_arr['result'][0]->total_point : '0';
- //TOTAL POINTS
- $total_currentpoint_arr = $parent->selectQuery(TABLE_USER_EPOINTS, "points", " smpin='" . $parent->current_smpin . "'", "1");
- $current_point = ($total_currentpoint_arr['nr'] > 0) ? $total_currentpoint_arr['result'][0]->points : '0';
- //REDEEM POINT
- $is_redeem_point = (projectfunc::checkValidReedem($parent)) ? "1" : "0";
- $last_page = ($total) ? ceil($total / $parent->current_limit) - 1 : 0;
- //MIN REDEEM
- $data['setting'] = 'REDEEM';
- $data = globalfunc::getSiteSetting($parent, $data);
- $min_redeem_point = $data->REDEEM_MIN_VALUE;
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'total' => $total, 'total_point' => $total_point, 'current_point' => $current_point, 'is_redeem_point' => $is_redeem_point, 'min_redeem_point' => $min_redeem_point, 'last_page' => $last_page, 'current_page' => $parent->current_page, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// REDEEMHISTORY //////////////////////////////////////////////// */
- private function redeemhistory($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //PAGINATION SETTINGS
- $limit_cond = '';
- $data_arr = array();
- $limit_str = globalfunc::setPageLimit($parent, $parent->params[0]);
- $limit_cond = ($limit_str) ? " LIMIT " . $limit_str : '';
- $data = @explode('?', $parent->params[1]);
- $query_rewardpointarr = $parent->selectQuery(TABLE_USER_EPOINTS_HISTORY, "*", "smpin='" . $parent->current_smpin . "' AND transaction_type='D' ORDER BY created_on DESC " . $limit_cond, "");
- if ($query_rewardpointarr['nr']) {
- foreach ($query_rewardpointarr['result'] as $res) {
- $data_arr[] = $res;
- }
- }
- //LOG
- $logstr = 'REDEEMHISTORY';
- globalfunc::insertUserLog($parent, $logstr);
- //GET COUNT
- $get_rewardpoint_count = $parent->selectQuery(TABLE_USER_EPOINTS_HISTORY, "COUNT(hid)as e_count", " smpin='" . $parent->current_smpin . "' AND transaction_type='D' ", "1");
- $total = ($get_rewardpoint_count['nr']) ? $get_rewardpoint_count['result'][0]->e_count : '0';
- //TOTAL REWARD POINTS
- $total_rewardpoint_arr = $parent->selectQuery(TABLE_USER_EPOINTS_HISTORY, "SUM(points) as total_point", " smpin='" . $parent->current_smpin . "' AND transaction_type='D' ORDER BY created_on DESC ", "");
- $total_point = ($total_rewardpoint_arr['nr'] > 0 && $total_rewardpoint_arr['result'][0]->total_point) ? $total_rewardpoint_arr['result'][0]->total_point : '0';
- //TOTAL POINTS
- $total_currentpoint_arr = $parent->selectQuery(TABLE_USER_EPOINTS, "points", " smpin='" . $parent->current_smpin . "'", "1");
- $current_point = ($total_currentpoint_arr['nr'] > 0) ? $total_currentpoint_arr['result'][0]->points : '0';
- //REDEEM POINT
- $is_redeem_point = (projectfunc::checkValidReedem($parent)) ? "1" : "0";
- $last_page = ($total) ? ceil($total / $parent->current_limit) - 1 : 0;
- //MIN REDEEM
- $data['setting'] = 'REDEEM';
- $data = globalfunc::getSiteSetting($parent, $data);
- $min_redeem_point = $data->REDEEM_MIN_VALUE;
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'total' => $total, 'total_point' => $total_point, 'current_point' => $current_point, 'is_redeem_point' => $is_redeem_point, 'min_redeem_point' => $min_redeem_point, 'last_page' => $last_page, 'current_page' => $parent->current_page, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// LEARNPATH //////////////////////////////////////////////// */
- private function learnpath($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //GET LEVEL BASED ASSESSMENTS
- $data_arr = array();
- // $assessment_str = "SELECT a.assessmentid,a.lvl_id,a.assessmentname,au.highscore,au.highscorearid,au.lvl_status,l.lvl_name FROM ".TABLE_ASSESSMENT." as a JOIN ".TABLE_ASSESSMENT_USER." as au on a.assessmentid=au.assessmentid LEFT JOIN ".TABLE_TRAINING_LEVEL." l ON l.lvl_id=a.lvl_id WHERE a.status='1' AND a.atype='1' AND au.userid='".$parent->current_user_id."' AND au.status='1' AND highscorearid!='0' AND a.publisheddate<='".NOW."' ORDER BY a.lvl_id ASC,au.created_on ASC ";
- // $assessment_arr=$parent->getQueryValue($assessment_str);
- // if(count($assessment_arr)>0)
- // {
- // foreach($assessment_arr as $res)
- // {
- // //GET REWARD
- // $get_exam_time=$parent->selectQuery(TABLE_ASSESSMENTRESULT,"*"," arid='".$res->highscorearid."' AND userid='".$parent->current_user_id."'" ,"1");
- // $res->examtime=($get_exam_time['nr']>0)?$get_exam_time['result'][0]->enddatetime:'';
- // $data_arr[]=$res;
- // }
- // }
- $learning = (object) projectfunc::userLearningLevel($parent, $parent->current_user_id);
- //BASIC
- if ($learning->basic == 3) {
- $get_date = $parent->selectQuery(TABLE_USER_LEARNING, "created_on", " lvl_id='1' AND smpin='" . $parent->current_user_data->smpin . "'", "1");
- $examtime = ($get_date['nr'] > 0) ? $get_date['result'][0]->created_on : '';
- $res = (object) array('assessmentid' => 0, 'lvl_id' => 1, 'assessmentname' => "Base", 'highscore' => '100', 'highscorearid' => 0, 'lvl_status' => 3, 'lvl_name' => "Base", 'examtime' => $examtime);
- $data_arr[] = $res;
- }
- //BRONZE
- if ($learning->bronze == 3) {
- $get_date = $parent->selectQuery(TABLE_USER_LEARNING, "created_on", " lvl_id='2' AND smpin='" . $parent->current_user_data->smpin . "'", "1");
- $examtime = ($get_date['nr'] > 0) ? $get_date['result'][0]->created_on : '';
- $res = (object) array('assessmentid' => 0, 'lvl_id' => 2, 'assessmentname' => "Bronze", 'highscore' => '100', 'highscorearid' => 0, 'lvl_status' => 3, 'lvl_name' => "Bronze", 'examtime' => $examtime);
- $data_arr[] = $res;
- }
- //SILVER
- if ($learning->silver > 0) {
- $get_date = $parent->selectQuery(TABLE_USER_LEARNING, "created_on", " lvl_id IN (3,4) OR AND smpin='" . $parent->current_user_data->smpin . "'", "1");
- $examtime = ($get_date['nr'] > 0) ? $get_date['result'][0]->created_on : '';
- switch ($learning->silver) {
- case '3':$res = (object) array('assessmentid' => 0, 'lvl_id' => 3, 'assessmentname' => "Silver", 'highscore' => '100', 'highscorearid' => 0, 'lvl_status' => 3, 'lvl_name' => "Silver", 'examtime' => $examtime);
- $data_arr[] = $res;
- break;
- case '7':
- case '4':
- case '2':
- $res = (object) array('assessmentid' => 0, 'lvl_id' => 3, 'assessmentname' => "Silver", 'highscore' => '50', 'highscorearid' => 0, 'lvl_status' => $learning->silver, 'lvl_name' => "Silver", 'examtime' => $examtime);
- $data_arr[] = $res;
- break;
- }
- }
- //GOLD
- if ($learning->gold > 0) {
- $get_date = $parent->selectQuery(TABLE_USER_LEARNING, "created_on", " lvl_id IN (5,6) AND smpin='" . $parent->current_user_data->smpin . "'", "1");
- $examtime = ($get_date['nr'] > 0) ? $get_date['result'][0]->created_on : '';
- switch ($learning->gold) {
- case '3':$res = (object) array('assessmentid' => 0, 'lvl_id' => 4, 'assessmentname' => "Gold", 'highscore' => '100', 'highscorearid' => 0, 'lvl_status' => 3, 'lvl_name' => "Gold", 'examtime' => $examtime);
- $data_arr[] = $res;
- break;
- case '7':
- case '4':
- case '2':
- $res = (object) array('assessmentid' => 0, 'lvl_id' => 4, 'assessmentname' => "Gold", 'highscore' => '50', 'highscorearid' => 0, 'lvl_status' => $learning->silver, 'lvl_name' => "Gold", 'examtime' => $examtime);
- $data_arr[] = $res;
- break;
- }
- }
- //LOG
- $logstr = 'LEARNPATH';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// MANAGER DASHBOARD //////////////////////////////////////////////// */
- private function managerdashboard($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 3);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- projectfunc::authorizedRole($parent, array(3, 4, 5, 6, 7, 14));
- $year_data = escape_str($parent->params[1]);
- $last_data = escape_str($parent->params[2]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- //LEARNING
- $learning_arr = projectfunc::managerLearningDashboard($parent, $parent->current_user_role, $parent->current_user_id); //NOT BASED ON YEAR OR MONTH
- $assessment_arr = projectfunc::managerAssessmentDashboard($parent, $parent->current_user_role, $parent->current_user_id); //NOT BASED ON YEAR OR MONTH
- $sales_arr = projectfunc::managersalesDashboard($parent, $parent->current_user_role, $year_data, $month_data, $parent->current_user_id); // BASED ON YEAR OR MONTH
- //LANGUAGE
- $get_lang_str = "SELECT `language_id`,`language_code`, `language_title` FROM " . TABLE_MASTER_LANGUAGE . " WHERE is_active='1' AND is_deleted='0' ORDER BY is_default DESC,language_title ASC";
- $get_lang_arr = $parent->getQueryValue($get_lang_str);
- $data_arr = array('sales' => $sales_arr, 'learning' => $learning_arr, 'assessment' => $assessment_arr, 'languages' => $get_lang_arr);
- //LOG
- $logstr = 'MANAGER DASHBOARD';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// AREA MANAGER DASHBOARD //////////////////////////////////////////////// */
- private function areamanagerdashboard($parent)
- {
- globalfunc::checkMethodType($parent, array('POST'));
- globalfunc::checkParamCount($parent, 3);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- projectfunc::authorizedRole($parent, array(3, 4, 5, 6, 7, 14));
- $year_data = escape_str($parent->params[1]);
- $last_data = escape_str($parent->params[2]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- //FIELDS VALIDATION
- $REQUEST_KEYS = array('area' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $area_manager = escape_str($parent->_request["area"]);
- $get_role = (in_array($parent->current_user_role, array(7, 14))) ? $parent->current_user_role : "7";
- //LEARNING
- $learning_arr = projectfunc::newmanagerLearningDashboard($parent, $get_role, $area_manager); //NOT BASED ON YEAR OR MONTH
- $assessment_arr = projectfunc::newmanagerAssessmentDashboard($parent, $get_role, $area_manager); //NOT BASED ON YEAR OR MONTH
- $sales_arr = projectfunc::newmanagersalesDashboard($parent, $get_role, $year_data, $month_data, $area_manager); // BASED ON YEAR OR MONTH
- //LANGUAGE
- $get_lang_str = "SELECT `language_id`,`language_code`, `language_title` FROM " . TABLE_MASTER_LANGUAGE . " WHERE is_active='1' AND is_deleted='0' ORDER BY is_default DESC,language_title ASC";
- $get_lang_arr = $parent->getQueryValue($get_lang_str);
- $data_arr = array('sales' => $sales_arr, 'learning' => $learning_arr, 'assessment' => $assessment_arr, 'languages' => $get_lang_arr);
- //LOG
- $logstr = 'AREA MANAGER DASHBOARD';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// dashboard leaderboard //////////////////////////////////////////////// */
- private function dashboardleaderboard($parent)
- {
- globalfunc::checkMethodType($parent, array('POST'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $start_date = date('Y-m-d', strtotime(NOW));
- $end_date = date('Y-m-t', strtotime(NOW));
- $userdata = projectfunc::getuserdata($parent, $parent->current_user_id);
- $dealer_code_cond = '';
- if ($parent->current_user_role < 7) {
- //FIELDS VALIDATION
- $REQUEST_KEYS = array('area' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $area_manager = escape_str($parent->_request["area"]);
- } else if ($parent->current_user_role == '7') {
- $area_manager = $userdata->emailid;
- } else if ($parent->current_user_role == '14') {
- //FIELDS VALIDATION
- $REQUEST_KEYS = array('area' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $area_manager = escape_str($parent->_request["area"]);
- $dealer_code = $userdata->current_user_data->dealer_code;
- $dealer_code_cond = " AND dealer_code='" . $dealer_code . "'";
- } else {
- $parent->response(array('response' => 'failed', 'message' => 'Sorry No access'), 401);
- }
- $user_cond = "";
- $role = $parent->current_user_role;
- $get_dealer_str = "SELECT dealer_code,city,zone FROM " . DMS_DEALER . " WHERE am_email='" . $area_manager . "' " . $dealer_code_cond . " GROUP BY dealer_code ";
- $dealer_arr = $parent->getQueryValue($get_dealer_str);
- if (count($dealer_arr) > 0) {
- $zone_arr = array();
- $city_arr = array();
- foreach ($dealer_arr as $res_dealer) {
- if (!in_array($res_dealer->zone, $zone_arr)) {
- $zone_arr[] = $res_dealer->zone;
- }
- if (!in_array($res_dealer->city, $city_arr)) {
- $city_arr[] = $res_dealer->city;
- }
- $dealer_cond_arr[] = " filter_dealer LIKE '%" . $res_dealer->dealer_code . "%'";
- }
- $user_cond .= " AND ( filter_dealer='' OR " . @implode(" OR ", $dealer_cond_arr) . " ) ";
- if (count($zone_arr) > 0) {
- foreach ($zone_arr as $zone) {
- $zone_cond_arr[] = " filter_zone LIKE '%" . $zone . "%'";
- }
- $user_cond .= " AND (filter_zone='' OR " . @implode(" OR ", $zone_cond_arr) . " ) ";
- } else {
- $user_cond .= " AND (filter_zone='') ";
- }
- if (count($city_arr) > 0) {
- foreach ($city_arr as $city) {
- $city_cond_arr[] = " filter_region LIKE '%" . $city . "%'";
- }
- $user_cond .= " AND (filter_region='' OR " . @implode(" OR ", $city_cond_arr) . " ) ";
- } else {
- $user_cond .= " AND (filter_region='') ";
- }
- } else {
- $user_cond .= " AND (filter_dealer='') ";
- }
- $user_table_cond = " AND u.dealer_code IN (SELECT dealer_code FROM " . DMS_DEALER . " WHERE am_email='" . $area_manager . "' " . $dealer_code_cond . ")";
- $user_cond .= " AND a.user_type=0";
- $assessment_str = "SELECT a.* FROM `" . TABLE_ASSESSMENT . "` as a WHERE a.atype='0' AND a.assettypeid='1' " . $lcond . " AND a.publisheddate<='" . NOW . "' " . $user_cond;
- $assessment_arr = $parent->getQueryValue($assessment_str);
- $assessment_data_arr = array();
- if (count($assessment_arr) > 0) {
- foreach ($assessment_arr as $res_assess) {
- $assessmentid_arr[] = $res_assess->assessmentid;
- }
- //GET ALL 3 USER RANK
- $parent->executeQuery("SET @rownum := 0");
- //AND u.status=1
- $get_user_rank_str = "SELECT * FROM ( SELECT @rownum := @rownum + 1 AS rank,COALESCE(user_score,'0')as user_score,CASE WHEN user_score IS NULL THEN 0 ELSE (user_score/" . count($assessment_arr) . ") END as percentage_score,userid,total_time,last_modified FROM (SELECT SUM(highscore)as user_score,u.userid,COALESCE(ar.total_time,'0')as total_time,MAX(au.modified_on) as last_modified FROM " . TABLE_USER . " as u JOIN (SELECT * FROM " . TABLE_ASSESSMENT_USER . " WHERE assessmentid IN (" . @implode(',', $assessmentid_arr) . ") AND highscorearid!=0 ) as au ON u.userid=au.userid LEFT JOIN (SELECT SUM(time_taken)as total_time,assessmentid,userid FROM " . TABLE_ASSESSMENTRESULT . " WHERE assessmentid IN (" . @implode(',', $assessmentid_arr) . ") GROUP BY userid )as ar ON u.userid=ar.userid WHERE u.role>='3' AND u.is_deleted=0 " . $user_table_cond . " GROUP BY u.userid ORDER BY user_score DESC,ar.total_time ASC,last_modified ASC,u.userid ASC )as a )as b LIMIT 3 ";
- $q1 = $get_user_rank_str;
- $get_user_rank_arr = $parent->getQueryValue($get_user_rank_str);
- if ($get_user_rank_arr) {
- foreach ($get_user_rank_arr as $res_user) {
- $user_data_arr = new stdClass();
- $get_time_str = "SELECT * FROM " . TABLE_ASSESSMENTRESULT . " WHERE assessmentid IN (" . @implode(',', $assessmentid_arr) . ") AND userid='" . $res_user->userid . "'";
- $get_time_arr = $parent->getQueryValue($get_time_str);
- $user_data_arr->user = projectfunc::getuserdata($parent, $res_user->userid);
- $user_data_arr->rank = (count($get_time_arr) > 0) ? $res_user->rank : '-';
- $user_data_arr->tot_user_score = (count($get_time_arr) > 0) ? $res_user->user_score : '-';
- $user_data_arr->percentage_score = (count($get_time_arr) > 0) ? round($res_user->percentage_score) : '-';
- $user_data_arr->percentage = $user_data_arr->percentage_score;
- $user_data_arr->total_time = $res_user->total_time;
- $user_data_arr->last_time = (count($get_time_arr) > 0) ? $res_user->last_modified : '-';
- $assessment_data_arr[] = $user_data_arr;
- }
- }
- }
- $sales_data_arr = array();
- $parent->executeQuery("SET @rownum := 0");
- $get_user_rank_str = "SELECT * FROM (SELECT @rownum := @rownum + 1 AS rank, salecount,targetcount,smpin,userid,last_sale,first_sale,sale_per FROM (SELECT c.*, CASE WHEN targetcount=0 THEN 0 ELSE (salecount/targetcount)*100 END as 'sale_per' FROM ( SELECT a.userid,a.smpin,a.salecount,b.targetcount,a.last_sale,a.first_sale FROM (SELECT COALESCE(COUNT(s.id),'0') as scount, COALESCE(SUM(s.sales_count),'0') as salecount, u.smpin,u.userid,MAX(s.sale_date) last_sale,MIN(s.sale_date) first_sale FROM " . TABLE_USER . " as u LEFT JOIN (SELECT id,smpin,sale_date,sales_count FROM " . DMS_EMPLOYEE_SALES . " WHERE sale_date>='" . $start_date . "' AND sale_date<='" . $end_date . "') as s ON s.smpin=u.smpin WHERE u.is_deleted=0 AND u.status=1 " . $user_table_cond . " GROUP BY u.smpin ) as a JOIN (SELECT COALESCE(SUM(t.target),'0') as targetcount,u.smpin,u.userid FROM " . TABLE_USER . " as u LEFT JOIN (SELECT id,smpin,target FROM " . TABLE_USER_SALETARGET . " WHERE sale_month>='" . $start_date . "' AND sale_month<='" . $end_date . "')as t ON t.smpin=u.smpin WHERE u.is_deleted=0 AND u.status=1 " . $user_table_cond . " GROUP BY u.smpin ) as b ON a.userid=b.userid )c ORDER BY sale_per DESC,last_sale ASC,first_sale ASC,userid ASC)as a )as d LIMIT 3";
- $q2 = $get_user_rank_str;
- $get_user_rank_arr = $parent->getQueryValue($get_user_rank_str);
- if (count($get_user_rank_arr) > 0) {
- foreach ($get_user_rank_arr as $key => $value) {
- $get_user_rank_arr[$key]->user = projectfunc::getuserdata($parent, $value->userid);
- $get_user_rank_arr[$key]->percentage = round($value->sale_per);
- }
- $sales_data_arr = $get_user_rank_arr;
- }
- $data_arr = array('sales' => $sales_data_arr, 'assessment' => $assessment_data_arr);
- //LOG
- $logstr = 'MANAGER DASHBOARD LEADERBOARD';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// WALLETCREDIT //////////////////////////////////////////////// */
- private function walletcredit($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //PAGINATION SETTINGS
- $limit_cond = '';
- $data_arr = array();
- $limit_str = globalfunc::setPageLimit($parent, $parent->params[0]);
- $limit_cond = ($limit_str) ? " LIMIT " . $limit_str : '';
- $data = @explode('?', $parent->params[1]);
- $query_walletarr = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "*", "smpin='" . $parent->current_smpin . "' AND transaction_type='C' ORDER BY created_on DESC " . $limit_cond, "");
- if ($query_walletarr['nr']) {
- // foreach($query_walletarr['result'] as $res)
- // {
- // $data_arr[]=$res;
- // }
- $data_arr = $query_walletarr['result'];
- }
- //LOG
- $logstr = 'WALLET CREDIT';
- globalfunc::insertUserLog($parent, $logstr);
- //GET COUNT
- $get_wallet_count = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "COUNT(hid)as e_count", " smpin='" . $parent->current_smpin . "' AND transaction_type='C' ", "1");
- $total = ($get_wallet_count['nr'] > 0) ? $get_wallet_count['result'][0]->e_count : '0';
- //TOTAL WALLET POINTS
- $total_wallet_arr = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "SUM(amount) as total_amount", " smpin='" . $parent->current_smpin . "' AND transaction_type='C' ORDER BY created_on DESC ", "");
- $total_amount = ($total_wallet_arr['nr'] > 0 && $total_wallet_arr['result'][0]->total_amount) ? $total_wallet_arr['result'][0]->total_amount : '0';
- //TOTAL WALLET
- $currentwallet_arr = $parent->selectQuery(TABLE_USER_WALLET, "amount", " smpin='" . $parent->current_smpin . "'", "1");
- $current_amount = ($currentwallet_arr['nr'] > 0) ? $currentwallet_arr['result'][0]->amount : '0';
- $last_page = ($total) ? ceil($total / $parent->current_limit) - 1 : 0;
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'total' => $total, 'total_amount' => $total_amount, 'current_amount' => $current_amount, 'last_page' => $last_page, 'current_page' => $parent->current_page, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// WALLETDEBIT //////////////////////////////////////////////// */
- private function walletdebit($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //PAGINATION SETTINGS
- $limit_cond = '';
- $data_arr = array();
- $limit_str = globalfunc::setPageLimit($parent, $parent->params[0]);
- $limit_cond = ($limit_str) ? " LIMIT " . $limit_str : '';
- $data = @explode('?', $parent->params[1]);
- $query_walletarr = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "*", "smpin='" . $parent->current_smpin . "' AND transaction_type='D' ORDER BY created_on DESC " . $limit_cond, "");
- if ($query_walletarr['nr']) {
- /*foreach($query_walletarr['result'] as $res)
- {
- $data_arr[]=$res;
- }*/
- $data_arr = $query_walletarr['result'];
- }
- //LOG
- $logstr = 'WALLET DEBIT';
- globalfunc::insertUserLog($parent, $logstr);
- //GET COUNT
- $get_wallet_count = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "COUNT(hid)as e_count", " smpin='" . $parent->current_smpin . "' AND transaction_type='D' ", "1");
- $total = ($get_wallet_count['nr']) ? $get_wallet_count['result'][0]->e_count : '0';
- //TOTAL WALLET POINTS
- $total_wallet_arr = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "SUM(amount) as total_amount", " smpin='" . $parent->current_smpin . "' AND transaction_type='D' ORDER BY created_on DESC ", "");
- $total_amount = ($total_wallet_arr['nr'] > 0 && $total_wallet_arr['result'][0]->total_amount) ? $total_wallet_arr['result'][0]->total_amount : '0';
- //TOTAL WALLET
- $total_wallet_arr = $parent->selectQuery(TABLE_USER_WALLET, "amount", " smpin='" . $parent->current_smpin . "'", "1");
- $current_amount = ($total_wallet_arr['nr'] > 0) ? $total_wallet_arr['result'][0]->amount : '0';
- //REDEEM WALLET
- $is_redeem_point = (projectfunc::checkValidReedem($parent)) ? "1" : "0";
- $last_page = ($total) ? ceil($total / $parent->current_limit) - 1 : 0;
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'total' => $total, 'total_amount' => $total_amount, 'current_amount' => $current_amount, 'last_page' => $last_page, 'current_page' => $parent->current_page, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// ORDERHISTORY //////////////////////////////////////////////// */
- private function orderhistory($parent)
- {
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- //PAGINATION SETTINGS
- $limit_cond = '';
- $data_arr = array();
- $limit_str = globalfunc::setPageLimit($parent, $parent->params[0]);
- $limit_cond = ($limit_str) ? " LIMIT " . $limit_str : '';
- $data = @explode('?', $parent->params[1]);
- $query_arr = $parent->selectQuery(TABLE_ORDER, "*", " smpin='" . $parent->current_smpin . "' ORDER BY order_id DESC " . $limit_cond, "");
- if ($query_arr['nr']) {
- foreach ($query_arr['result'] as $key => $res) {
- if ($res->is_success == '1') {
- $query_arr['result'][$key]->status = '1';
- } else if ($res->is_success == '0' && $res->is_refund == '1') {
- $query_arr['result'][$key]->status = '0';
- } else if ($res->is_success == '0' && $res->is_refund == '0') {
- $query_arr['result'][$key]->status = '2';
- }
- if ($res->card_data) {
- $query_arr['result'][$key]->card_data = json_decode(stripslashesFull($res->card_data));
- if (!isset($query_arr['result'][$key]->card_data->cardnumber)) {
- $query_arr['result'][$key]->card_data->cardnumber = $query_arr['result'][$key]->card_data->cardNumber;
- }
- if (!isset($query_arr['result'][$key]->card_data->card_price)) {
- $query_arr['result'][$key]->card_data->card_price = $query_arr['result'][$key]->card_data->amount;
- }
- if (!isset($query_arr['result'][$key]->card_data->expiry_date)) {
- $query_arr['result'][$key]->card_data->expiry_date = date('Y-m-d', strtotime($query_arr['result'][$key]->card_data->validity));
- }
- if (!isset($query_arr['result'][$key]->card_data->activation_code)) {
- $query_arr['result'][$key]->card_data->activation_code = $query_arr['result'][$key]->card_data->activationCode;
- }
- if (!isset($query_arr['result'][$key]->card_data->name)) {
- $query_arr['result'][$key]->card_data->name = $query_arr['result'][$key]->card_data->productName;
- }
- if (!isset($query_arr['result'][$key]->card_data->card_pin)) {
- $query_arr['result'][$key]->card_data->card_pin = $query_arr['result'][$key]->card_data->cardPin;
- }
- if (!isset($query_arr['result'][$key]->card_data->pin_or_url)) {
- $query_arr['result'][$key]->card_data->pin_or_url = $query_arr['result'][$key]->card_data->activationUrl;
- }
- if (isset($query_arr['result'][$key]->card_data->cardNumber)) {
- unset($query_arr['result'][$key]->card_data->cardNumber);
- }
- } else {
- $query_arr['result'][$key]->card_data = new stdClass();
- }
- if (!$res->images != '') {
- $query_arr['result'][$key]->images = NOIMAGE_URL;
- }
- }
- $data_arr = $query_arr['result'];
- }
- //LOG
- $logstr = 'ORDER HISTORY';
- globalfunc::insertUserLog($parent, $logstr);
- //GET COUNT
- $get_order_count = $parent->selectQuery(TABLE_ORDER, "COUNT(id)as ord_count", " smpin='" . $parent->current_smpin . "' AND is_success='1' ", "1");
- $total = ($get_order_count['nr']) ? $get_order_count['result'][0]->ord_count : '0';
- //TOTAL WALLET POINTS
- $total_wallet_arr = $parent->selectQuery(TABLE_USER_WALLET_HISTORY, "SUM(amount) as total_amount", " smpin='" . $parent->current_smpin . "' AND transaction_type='D' ORDER BY created_on DESC ", "");
- $total_amount = ($total_wallet_arr['nr'] > 0 && $total_wallet_arr['result'][0]->total_amount) ? $total_wallet_arr['result'][0]->total_amount : '0';
- //TOTAL WALLET
- $total_wallet_arr = $parent->selectQuery(TABLE_USER_WALLET, "amount", " smpin='" . $parent->current_smpin . "'", "1");
- $current_amount = ($total_wallet_arr['nr'] > 0) ? $total_wallet_arr['result'][0]->amount : '0';
- $unapproved_amount = projectfunc::userUnapprovedamount($parent, $parent->current_smpin);
- //REDEEM POINT
- $is_redeem_point = (projectfunc::checkValidReedem($parent)) ? "1" : "0";
- $last_page = ($total) ? ceil($total / $parent->current_limit) - 1 : 0;
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'total' => $total, 'total_amount' => $total_amount, 'current_amount' => $current_amount, 'unapproved_amount' => $unapproved_amount, 'last_page' => $last_page, 'current_page' => $parent->current_page, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// CHANGE MPIN //////////////////////////////////////////////// */
- private function changempin($parent)
- {
- globalfunc::checkMethodType($parent, array('POST'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $REQUEST_KEYS = array('mpin' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $mpin = escape_str($parent->_request["mpin"]);
- //LOG
- $logstr = 'CHANGE MPIN';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->executeQuery("UPDATE " . TABLE_USER . " SET mpin='" . $mpin . "' WHERE userid='" . $parent->current_user_id . "' ");
- $parent->response(array('response' => 'success', 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// CHANGE EPIN //////////////////////////////////////////////// */
- private function changeepin($parent)
- {
- globalfunc::checkMethodType($parent, array('POST'));
- globalfunc::checkParamCount($parent, 1);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $REQUEST_KEYS = array('epin' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $epin = escape_str($parent->_request["epin"]);
- //LOG
- $logstr = 'CHANGE EPIN';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->executeQuery("UPDATE " . TABLE_USER . " SET epin='" . $epin . "' WHERE userid='" . $parent->current_user_id . "' ");
- $parent->response(array('response' => 'success', 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// AREA MANAGER DASHBOARD //////////////////////////////////////////////// */
- private function newareamanagerdashboard($parent)
- {
- globalfunc::checkMethodType($parent, array('POST'));
- globalfunc::checkParamCount($parent, 4);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- projectfunc::authorizedRole($parent, array(3, 4, 5, 6, 7, 14));
- $year_data = escape_str($parent->params[1]);
- $last_data = escape_str($parent->params[2]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- $qry_params = explode("?", $parent->params[3]);
- $type = strtolower($qry_params[0]);
- $user_cond = "";
- switch ($type) {
- case "zm":
- if ($parent->current_user_role == '3') {
- $REQUEST_KEYS = array('zmemail' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $emailid = $parent->_request["zmemail"];
- if ($emailid != 'all') {
- //$user_cond.=" AND u.dealer_code IN (SELECT dealer_code FROM ".DMS_DEALER." WHERE zm_email='". $emailid."')";
- $get_role = '4';
- $manageremail = $emailid;
- } else {
- //$user_cond.="";
- $get_role = '3';
- $manageremail = '';
- }
- } else {
- $parent->response(array('response' => 'failed', 'message' => 'Sorry No access'), 401);
- }
- break;
- case "rm":
- if ($parent->current_user_role < '7') {
- if ($parent->current_user_role == '5') {
- $REQUEST_KEYS = array('rmemail' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $emailid = $parent->_request["rmemail"];
- if ($emailid == 'all') {
- // $zone_cond.=(count($trainer_arr)>0)?" zone='".$trainer_arr[0]->zone."'":" zone='0'";
- //$user_cond.=" AND u.dealer_code IN (SELECT dealer_code FROM ".DMS_DEALER." WHERE ".$zone_cond.")";
- $get_role = '5';
- $manageremail = $trainer_arr[0]->emailid;
- } else {
- //$user_cond.=" AND u.dealer_code IN (SELECT dealer_code FROM ".DMS_DEALER." WHERE rm_email='".$emailid."')";
- $get_role = '6';
- $manageremail = $emailid;
- }
- } else {
- $REQUEST_KEYS = array('rmemail' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $emailid = $parent->_request["rmemail"];
- if ($emailid == 'all') {
- $REQUEST_KEYS = array('zmemail' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $emailid = $parent->_request["zmemail"];
- // $user_cond.=" AND u.dealer_code IN (SELECT dealer_code FROM ".DMS_DEALER." WHERE zm_email='". $emailid."')";
- $get_role = '4';
- $manageremail = $emailid;
- } else {
- //$user_cond.=" AND u.dealer_code IN (SELECT dealer_code FROM ".DMS_DEALER." WHERE rm_email='".$emailid."')";
- $get_role = '6';
- $manageremail = $emailid;
- }
- }
- } else {
- $parent->response(array('response' => 'failed', 'message' => 'Sorry No access'), 401);
- }
- break;
- case "am":
- if ($parent->current_user_role == '14') {
- //$dealer_code_cond=" dealer_code='".$parent->current_user_data->dealer_code."'";
- $get_role = '14';
- $manageremail = '';
- } else {
- $REQUEST_KEYS = array('amemail' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $emailid = $parent->_request["amemail"];
- if ($emailid == 'all') {
- $REQUEST_KEYS = array('rmemail' => 'string');
- globalfunc::mandatoryKey($parent, $REQUEST_KEYS);
- $emailid = $parent->_request["rmemail"];
- //$user_cond.=" rm_email='".$emailid."'";
- $get_role = '6';
- $manageremail = $emailid;
- } else {
- //$dealer_code_cond=" am_email='".$emailid."'";
- $get_role = '7';
- $manageremail = $emailid;
- }
- }
- //$user_cond.=" AND u.dealer_code IN (SELECT dealer_code FROM ".DMS_DEALER." WHERE ".$dealer_code_cond.")";
- break;
- default:$parent->response(array('response' => 'failed', 'message' => 'Sorry No access'), 401);
- break;
- }
- //FIELDS VALIDATION
- //$REQUEST_KEYS=array('area'=>'string');
- //globalfunc::mandatoryKey($parent,$REQUEST_KEYS);
- //$area_manager = escape_str($parent->_request["area"]);
- //$get_role=(in_array($parent->current_user_role,array(7,14)))?$parent->current_user_role:"7";
- //LEARNING
- $learning_arr = projectfunc::newmanagerLearningDashboard($parent, $get_role, $manageremail); //NOT BASED ON YEAR OR MONTH
- $assessment_arr = projectfunc::newmanagerAssessmentDashboard($parent, $get_role, $manageremail); //NOT BASED ON YEAR OR MONTH
- $sales_arr = projectfunc::newmanagersalesDashboard($parent, $get_role, $year_data, $month_data, $manageremail); // BASED ON YEAR OR MONTH
- //LANGUAGE
- $get_lang_str = "SELECT `language_id`,`language_code`, `language_title` FROM " . TABLE_MASTER_LANGUAGE . " WHERE is_active='1' AND is_deleted='0' ORDER BY is_default DESC,language_title ASC";
- $get_lang_arr = $parent->getQueryValue($get_lang_str);
- $data_arr = array('sales' => $sales_arr, 'learning' => $learning_arr, 'assessment' => $assessment_arr, 'languages' => $get_lang_arr);
- //LOG
- $logstr = 'AREA MANAGER DASHBOARD';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// AREA MANAGER DASHBOARD //////////////////////////////////////////////// */
- private function areamanagerdashboardapp($parent)
- {
- globalfunc::checkMethodType($parent, array('POST'));
- globalfunc::checkParamCount($parent, 3);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- projectfunc::authorizedRole($parent, array(3, 4, 5, 6, 7, 14));
- $userdata = projectfunc::getuserdata($parent, $parent->current_user_id);
- $year_data = escape_str($parent->params[1]);
- $last_data = escape_str($parent->params[2]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- $zmemailid = (isset($parent->_request["zmemail"])) ? escape_str($parent->_request["zmemail"]) : 'all';
- $rmemailid = (isset($parent->_request["rmemail"])) ? escape_str($parent->_request["rmemail"]) : 'all';
- $amemailid = (isset($parent->_request["amemail"])) ? escape_str($parent->_request["amemail"]) : 'all';
- if ($parent->current_user_role == '3') //HO
- {
- if ($amemailid != 'all') {
- $get_role = '7';
- $manageremail = $amemailid;
- } else if ($rmemailid != 'all') {
- $get_role = '6';
- $manageremail = $rmemailid;
- } else if ($zmemailid != 'all') {
- $get_role = '4';
- $manageremail = $zmemailid;
- } else {
- $get_role = '3';
- $manageremail = '';
- }
- } else if ($parent->current_user_role == '4') //ZM
- {
- if ($amemailid != 'all') {
- $get_role = '7';
- $manageremail = $amemailid;
- } else if ($rmemailid != 'all') {
- $get_role = '6';
- $manageremail = $rmemailid;
- } else if ($zmemailid != 'all') {
- $get_role = '4';
- $manageremail = $zmemailid;
- } else {
- $parent->response(array('response' => 'failed', 'message' => 'Sorry No access'), 401);
- }
- } else if ($parent->current_user_role == '5') //TRAINER
- {
- if ($amemailid != 'all') {
- $get_role = '7';
- $manageremail = $amemailid;
- } else if ($rmemailid != 'all') {
- $get_role = '6';
- $manageremail = $rmemailid;
- } else {
- $get_trainer_str = "SELECT h.* FROM " . DMS_HOUSER . " h JOIN " . TABLE_USER . " u ON u.emp_code=h.emp_code WHERE u.userid='" . $parent->current_user_id . "' AND u.role='5' LIMIT 1";
- $trainer_arr = $parent->getQueryValue($get_trainer_str);
- $get_role = '5';
- $manageremail = $trainer_arr[0]->emailid;
- }
- } else if ($parent->current_user_role == '6') //RM
- {
- if ($amemailid != 'all') {
- $get_role = '7';
- $manageremail = $amemailid;
- } else if ($rmemailid != 'all') {
- $get_role = '6';
- $manageremail = $rmemailid;
- } else {
- $get_role = '6';
- $manageremail = $userdata->emailid;
- }
- } else if ($parent->current_user_role == '7') //AM
- {
- if ($amemailid != 'all') {
- $get_role = '7';
- $manageremail = $amemailid;
- } else {
- $get_role = '7';
- $manageremail = $userdata->emailid;
- }
- } else if ($parent->current_user_role == '14') //DEALER
- {
- $get_role = '14';
- $manageremail = '';
- }
- //LEARNING
- $learning_arr = projectfunc::newmanagerLearningDashboard($parent, $get_role, $manageremail); //NOT BASED ON YEAR OR MONTH
- $assessment_arr = projectfunc::newmanagerAssessmentDashboard($parent, $get_role, $manageremail); //NOT BASED ON YEAR OR MONTH
- $sales_arr = projectfunc::newmanagersalesDashboard($parent, $get_role, $year_data, $month_data, $manageremail); // BASED ON YEAR OR MONTH
- //LANGUAGE
- $get_lang_str = "SELECT `language_id`,`language_code`, `language_title` FROM " . TABLE_MASTER_LANGUAGE . " WHERE is_active='1' AND is_deleted='0' ORDER BY is_default DESC,language_title ASC";
- $get_lang_arr = $parent->getQueryValue($get_lang_str);
- $data_arr = array('sales' => $sales_arr, 'learning' => $learning_arr, 'assessment' => $assessment_arr, 'languages' => $get_lang_arr);
- //LOG
- $logstr = 'AREA MANAGER DASHBOARD';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'test' => $get_role, 'mail' => $manageremail, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// ENQUIRY //////////////////////////////////////////////// */
- private function enquiry($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 3);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $year_data = escape_str($parent->params[1]);
- $last_data = escape_str($parent->params[2]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- $data_arr = array();
- $datecond = " AND created_on>='" . date('Y-m-d', strtotime($year_data . "-" . $month_data . "-01")) . " 00:00:00' AND created_on<='" . date('Y-m-t', strtotime($year_data . "-" . $month_data . "-01")) . " 23:59:59'";
- //GIXXER 250
- //$query_salesmodelarr=$parent->selectQuery(DMS_ENQUIRY_MASTER,"COUNT(id) as achieved ","smpin='".$parent->current_smpin."' ".$datecond." AND is_dms=1 AND is_deleted=0 AND model1 IN ('GSX','GSXSF') AND variant1 IN (SELECT variant_code FROM ".DMS_ENQUIRY_MODEL." WHERE title_code IN ('GSX','GSXSF') AND variant LIKE '%250%') GROUP BY model1 ","");
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $parent->current_smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('GSX','GSXSF') AND variant1 IN (SELECT variant_code FROM " . DMS_ENQUIRY_MODEL . " WHERE title_code IN ('GSX','GSXSF') AND variant LIKE '%250%') ", "1");
- $target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'GIXXER 250', $year_data, $month_data) * 3;
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "GIXXER 250";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- } else if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'GSX';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "GIXXER 250";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- //GIXXER 150
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $parent->current_smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('GSX','GSXSF') AND variant1 IN (SELECT variant_code FROM " . DMS_ENQUIRY_MODEL . " WHERE title_code IN ('GSX','GSXSF') AND variant NOT LIKE '%250%') ", "1");
- $target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'GIXXER', $year_data, $month_data) * 3;
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'GIXXER';
- //$mobj->modelname=($model=='GSX')? "GIXXER":"GIXXER SF 150";
- $data_arr[] = $mobj;
- } else if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'GSX';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "GIXXER 250";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- //ACCESS
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $parent->current_smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('AC','ACZ')", "1");
- $target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'ACCESS 125', $year_data, $month_data) * 3;
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'ACCESS 125';
- //$mobj->modelname=($model=='GSX')? "GIXXER":"GIXXER SF 150";
- $data_arr[] = $mobj;
- } else if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'AC';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "ACCESS 125";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- $is_intruder = 0;
- $is_burgman = 0;
- //$is_access=0;
- //OTHER LISTED MODEL THAN GIXXER
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $parent->current_smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('GL','UB125' ) GROUP BY model1 ", "");
- if ($query_salesmodelarr['nr'] > 0) {
- foreach ($query_salesmodelarr['result'] as $res) {
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- switch ($obj->model) {
- case 'GL': //INTRUDER
- $mobj->modelname = 'INTRUDER';
- $mobj->target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'INTRUDER', $year_data, $month_data) * 3;
- $is_intruder = 1;
- break;
- case 'UB125': //BURGMAN
- $mobj->modelname = 'BURGMAN';
- $mobj->target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'BURGMAN', $year_data, $month_data) * 3;
- $is_burgman = 1;
- break;
- }
- //$mobj->target=0;
- $data_arr[] = $mobj;
- }
- }
- if ($is_intruder == 0) //INTRUDER
- {
- $target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'INTRUDER', $year_data, $month_data) * 3;
- if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'GL';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'INTRUDER';
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- }
- if ($is_burgman == 0) //BURGMAN
- {
- $target = projectfunc::userSalesTarget($parent, $parent->current_user_id, 'BURGMAN', $year_data, $month_data) * 3;
- if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'UB125';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'BURGMAN';
- $data_arr[] = $mobj;
- }
- }
- //OTHER MODEL
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved ", "smpin='" . $parent->current_smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 NOT IN ('GSX','GSXSF','GL','UB125','AC','ACZ') ", "");
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $mobj->model_image_url = NOIMAGE_URL;
- $mobj->modelname = 'OTHERS';
- //$mobj->target=projectfunc::userSalesTarget($parent,$parent->current_user_id,'OTHERS',$year_data,$month_data)*3;
- $mobj->target = 0;
- $data_arr[] = $mobj;
- }
- //LOG
- $logstr = 'ENQUIRY MODEL WISE LIST';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// DEALER ENQUIRY //////////////////////////////////////////////// */
- private function dealerenquiry($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 4);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $smpin = escape_str($parent->params[1]);
- $dse_details = $this->getdsedetails($parent, $smpin);
- $year_data = escape_str($parent->params[2]);
- $last_data = escape_str($parent->params[3]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- $data_arr = array();
- $datecond = " AND created_on>='" . date('Y-m-d', strtotime($year_data . "-" . $month_data . "-01")) . " 00:00:00' AND created_on<='" . date('Y-m-t', strtotime($year_data . "-" . $month_data . "-01")) . " 23:59:59'";
- //GIXXER 250
- //$query_salesmodelarr=$parent->selectQuery(DMS_ENQUIRY_MASTER,"COUNT(id) as achieved ","smpin='".$parent->current_smpin."' ".$datecond." AND is_dms=1 AND is_deleted=0 AND model1 IN ('GSX','GSXSF') AND variant1 IN (SELECT variant_code FROM ".DMS_ENQUIRY_MODEL." WHERE title_code IN ('GSX','GSXSF') AND variant LIKE '%250%') GROUP BY model1 ","");
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('GSX','GSXSF') AND variant1 IN (SELECT variant_code FROM " . DMS_ENQUIRY_MODEL . " WHERE title_code IN ('GSX','GSXSF') AND variant LIKE '%250%') ", "1");
- $target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'GIXXER 250', $year_data, $month_data) * 3;
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "GIXXER 250";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- } else if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'GSX';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "GIXXER 250";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- //GIXXER 150
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('GSX','GSXSF') AND variant1 IN (SELECT variant_code FROM " . DMS_ENQUIRY_MODEL . " WHERE title_code IN ('GSX','GSXSF') AND variant NOT LIKE '%250%') ", "1");
- $target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'GIXXER', $year_data, $month_data) * 3;
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'GIXXER';
- //$mobj->modelname=($model=='GSX')? "GIXXER":"GIXXER SF 150";
- $data_arr[] = $mobj;
- } else if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'GSX';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "GIXXER";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- //ACCESS
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('AC','ACZ')", "1");
- $target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'ACCESS 125', $year_data, $month_data) * 3;
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'ACCESS 125';
- //$mobj->modelname=($model=='GSX')? "GIXXER":"GIXXER SF 150";
- $data_arr[] = $mobj;
- } else if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'AC';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = "ACCESS 125";
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- $is_intruder = 0;
- $is_burgman = 0;
- //$is_access=0;
- //OTHER LISTED MODEL THAN GIXXER
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved,model1,variant1 ", "smpin='" . $smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 IN ('GL','UB125') GROUP BY model1 ", "");
- if ($query_salesmodelarr['nr'] > 0) {
- foreach ($query_salesmodelarr['result'] as $res) {
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $obj = new stdClass();
- $obj->model = $res->model1;
- $obj->variant = $res->variant1;
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- switch ($obj->model) {
- case 'GL': //INTRUDER
- $mobj->modelname = 'INTRUDER';
- $mobj->target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'INTRUDER', $year_data, $month_data) * 3;
- $is_intruder = 1;
- break;
- case 'UB125': //BURGMAN
- $mobj->modelname = 'BURGMAN';
- $mobj->target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'BURGMAN', $year_data, $month_data) * 3;
- $is_burgman = 1;
- break;
- // case 'AC':
- // case 'ACZ':
- // $mobj->modelname='ACCESS';
- // $mobj->target=projectfunc::userSmpinSalesTarget($parent,$smpin,'ACCESS 125',$year_data,$month_data)*3;
- // $is_access=1;
- // break;
- }
- //$mobj->target = 0;
- $data_arr[] = $mobj;
- }
- }
- if ($is_intruder == 0) //INTRUDER
- {
- $target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'INTRUDER', $year_data, $month_data) * 3;
- if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'GL';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'INTRUDER';
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- }
- if ($is_burgman == 0) //BURGMAN
- {
- $target = projectfunc::userSmpinSalesTarget($parent, $smpin, 'BURGMAN', $year_data, $month_data) * 3;
- if ($target > 0) {
- $mobj = new stdClass();
- $mobj->achieved = 0;
- $obj = new stdClass();
- $obj->model = 'UB125';
- $obj->variant = '';
- $obj->variantname = '';
- $mobj->model_image_url = projectfunc::modelimage($parent, $obj);
- $mobj->target = $target;
- $mobj->modelname = 'BURGMAN';
- //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- $data_arr[] = $mobj;
- }
- }
- // if($is_access==0) //ACCESS
- // {
- // $target=projectfunc::userSmpinSalesTarget($parent,$smpin,'ACCESS 125',$year_data,$month_data)*3;
- // if($target>0)
- // {
- // $mobj=new stdClass();
- // $mobj->achieved=0;
- // $obj=new stdClass();
- // $obj->model='AC';
- // $obj->variant='';
- // $obj->variantname='';
- //
- // $mobj->model_image_url=projectfunc::modelimage($parent, $obj);
- //
- // $mobj->target=$target;
- // $mobj->modelname='ACCESS 125';
- // //$obj->modelname=($model=='GSX')? "GIXXER 250":"GIXXER SF 250";
- // $data_arr[]=$mobj;
- // }
- // }
- //OTHER MODEL
- $query_salesmodelarr = $parent->selectQuery(DMS_ENQUIRY_MASTER, "COUNT(id) as achieved ", "smpin='" . $smpin . "' " . $datecond . " AND is_dms=1 AND is_deleted=0 AND model1 NOT IN ('GSX','GSXSF','GL','UB125','AC','ACZ') ", "");
- if ($query_salesmodelarr['nr'] > 0 && $query_salesmodelarr['result'][0]->achieved > 0) {
- $res = $query_salesmodelarr['result'][0];
- $mobj = new stdClass();
- $mobj->achieved = $res->achieved;
- $mobj->model_image_url = NOIMAGE_URL;
- $mobj->modelname = 'OTHERS';
- //$mobj->target=projectfunc::userSmpinSalesTarget($parent,$smpin,'OTHERS',$year_data,$month_data)*3;
- $mobj->target = 0;
- $data_arr[] = $mobj;
- }
- //LOG
- $logstr = 'DEALER ENQUIRY MODEL WISE LIST';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// DSEDETAILS //////////////////////////////////////////////// */
- private function getdsedetails($parent, $smpin)
- {
- $data = $parent->selectQuery(DMS_EMPLOYEE, "*", "smpin='" . $smpin . "' AND status=1 AND is_current=1", "1");
- if (!$data['nr'] > 0) {
- $parent->response(array('response' => 'failed', 'message' => $this->page_data['error2']), 406);
- }
- return $data['result'][0];
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- /* /////////////////////////////// SALES //////////////////////////////////////////////// */
- private function dealerenquirysales($parent)
- {
- //dashboard/2018/2
- globalfunc::checkMethodType($parent, array('GET'));
- globalfunc::checkParamCount($parent, 4);
- globalfunc::checkAuthrozation($parent, array('type' => 'user'));
- $smpin = escape_str($parent->params[1]);
- $dse_details = $this->getdsedetails($parent, $smpin);
- $year_data = escape_str($parent->params[2]);
- $last_data = escape_str($parent->params[3]);
- $last_data_arr = explode('?', $last_data);
- $month_data = escape_str(trim($last_data_arr[0]));
- $data_arr = array();
- //GET MODEL
- $model_cond = " AND user_type=0 ";
- //GET SEGMENT
- //$segment= projectfunc::userSegment($parent,$parent->current_smpin);
- $segment = $dse_details->segment;
- $salemodel_arr = array();
- $query_salesmodelarr = $parent->selectQuery(DMS_EMPLOYEE_SALES, " model ", "smpin='" . $smpin . "' AND sale_date>='" . date('Y-m-d', strtotime($year_data . "-" . $month_data . "-01")) . "' AND sale_date<='" . date('Y-m-t', strtotime($year_data . "-" . $month_data . "-01")) . "' GROUP BY model ", "");
- if ($query_salesmodelarr['nr']) {
- foreach ($query_salesmodelarr['result'] as $res) {
- $salemodel_arr[] = $res->model;
- }
- $salemodel_quotes = array_map("quotes_array", $salemodel_arr);
- $model_cond .= " AND ( (segment='" . $segment . "' OR segment='0' AND model_is_target=1)OR (model_name IN (" . @implode(',', $salemodel_quotes) . ")) )";
- } else {
- $model_cond .= " AND (segment='" . $segment . "' OR segment='0' )";
- }
- $query_modelarr = $parent->selectQuery(TABLE_MODEL, " model_name,model_image ", " user_type=0 " . $model_cond . " ORDER BY model_id", "");
- if ($query_modelarr['nr']) {
- foreach ($query_modelarr['result'] as $res) {
- $res->model_image_url = ($res->model_image != '') ? SITE_URL . "hypermupload/model/" . $res->model_image : NOIMAGE_URL;
- $user_target = projectfunc::userSmpinSalesTarget($parent, $smpin, $res->model_name, $year_data, $month_data);
- // if($user_target>0)
- // {
- $res->target = ($user_target) ? $user_target : 0;
- $res->achieved = projectfunc::userSmpinSalesAchieved($parent, $smpin, $res->model_name, $year_data, $month_data);
- $res->achieved = ($res->achieved) ? $res->achieved : 0;
- $data_arr[] = $res;
- // }
- }
- }
- //LOG
- $logstr = 'DEALER DSE SALES LIST';
- globalfunc::insertUserLog($parent, $logstr);
- $parent->response(array('response' => 'success', 'data' => $data_arr, 'message' => $this->page_data['success1']), 200);
- }
- /* //////////////////////////////////////////////////////////////////////////////////////////// */
- }
|