device_data_inc directly from prod 7/20/2023 "; */ /* //Get data for all devices within an organization $device_data = Get_Organization_Device_data(113); // Here is how you can access the returned data foreach ($device_data as $device) { echo $device['machine_id']." : ".$device['make']." : ".$device['model']."
"; } */ Function Get_Organization_Device_data($in_org_id) { $is_proposed = 'Y'; $building_id = -1; //-1 = ALL $floorplan_id = -1; //-1 = ALL $device_listing = Get_Organization_Device_list($in_org_id, $is_proposed, $building_id, $floorplan_id); if ($device_listing == NULL) { return NULL; } //error_log("Session date = " . $_SESSION['session_date'] . "\r\n" . json_encode($device_listing) . "\r\n", 3, "device_listing.log"); include "phpincludes/date_calc.inc.php"; foreach ($device_listing as $device_id) { $device = Get_Device_Data($device_id, $currDate, $endDate, $fiscalDays, $diffDays, $startingDate, $notReportingDate, $date15daysago); $device_data[] = $device; } return($device_data); } Function Get_Organization_Device_data_selected($in_org_id, $in_is_proposed, $in_building_id, $in_floorplan_id) { $device_listing = Get_Organization_Device_list($in_org_id, $in_is_proposed, $in_building_id, $in_floorplan_id); if ($device_listing == NULL) { return NULL; } include "phpincludes/date_calc.inc.php"; foreach ($device_listing as $device_id) { $device = Get_Device_Data($device_id, $currDate, $endDate, $fiscalDays, $diffDays, $startingDate, $notReportingDate, $date15daysago); $device_data[] = $device; } return($device_data); } Function Get_Single_Device_data($in_machine_id) { include "phpincludes/date_calc.inc.php"; $device_data[] = Get_Device_Data($in_machine_id, $currDate, $endDate, $fiscalDays, $diffDays, $startingDate, $notReportingDate, $date15daysago); return($device_data); } Function Get_Organization_Device_list($in_org_id, $in_is_proposed, $in_building_id, $in_floorplan_id) { try { $dbh = new PDO("mysql:host=".EW_CONN_HOST.";dbname=".EW_CONN_DB, EW_CONN_USER, EW_CONN_PASS); } catch(PDOException $e) { die("Unable to connect to database."); } $start_year_2013 = strtotime('07/01/2012'); $end_year_2013 = strtotime('06/30/2013'); $start_year_2014 = strtotime('07/01/2013'); $end_year_2014 = strtotime('06/30/2014'); $start_year_2015 = strtotime('07/01/2014'); $end_year_2015 = strtotime('06/30/2015'); $start_year_2016 = strtotime('07/01/2015'); $end_year_2016 = strtotime('06/30/2016'); $start_year_2017 = strtotime('07/01/2016'); $end_year_2017 = strtotime('06/30/2017'); $start_year_2018 = strtotime('07/01/2017'); $end_year_2018 = strtotime('06/30/2018'); $start_year_2019 = strtotime('07/01/2018'); $end_year_2019 = strtotime('06/30/2019'); $start_year_2020 = strtotime('07/01/2019'); $end_year_2020 = strtotime('06/30/2020'); $start_year_2021 = strtotime('07/01/2020'); $end_year_2021 = strtotime('06/30/2021'); $current_date = strtotime($_SESSION['session_date']); switch(true) { case ($current_date >= $start_year_2022 && $current_date <= $end_year_2022): $table_year = 'Y2022_'; break; case ($current_date >= $start_year_2021 && $current_date <= $end_year_2021): $table_year = 'Y2021_'; break; case ($current_date >= $start_year_2020 && $current_date <= $end_year_2020): $table_year = 'Y2020_'; break; case ($current_date >= $start_year_2019 && $current_date <= $end_year_2019): $table_year = 'Y2019_'; break; case ($current_date >= $start_year_2018 && $current_date <= $end_year_2018): $table_year = 'Y2018_'; break; case ($current_date >= $start_year_2017 && $current_date <= $end_year_2017): $table_year = 'Y2017_'; break; case ($current_date >= $start_year_2016 && $current_date <= $end_year_2016): $table_year = 'Y2016_'; break; case ($current_date >= $start_year_2015 && $current_date <= $end_year_2015): $table_year = 'Y2015_'; break; case ($current_date >= $start_year_2014 && $current_date <= $end_year_2014): $table_year = 'Y2014_'; break; case ($current_date >= $start_year_2013 && $current_date <= $end_year_2013): $table_year = 'Y2013_'; break; default: $table_year = ''; } $sql = "SELECT fpm.id as machine_id, fpm.is_proposed, bd.id as build_id, fp.id as floorplan_id FROM ".$table_year."organization org LEFT OUTER JOIN ".$table_year."buildings bd ON org.id = bd.org_id LEFT OUTER JOIN ".$table_year."floorplans fp ON bd.id = fp.building_id LEFT OUTER JOIN ".$table_year."floorplan_machines fpm ON fp.id = fpm.floorplan_id where org.id = :org_id order by bd.building_name, fpm.5_year_id"; $sqlprep = $dbh->prepare($sql); $ar_val = array('org_id'=>$in_org_id); if($sqlprep->execute($ar_val)) { while($row = $sqlprep->fetch()) { if ( ($in_is_proposed == $row['is_proposed'] || $in_is_proposed == 'Both') && ($in_building_id == $row['build_id'] || $in_building_id == -1) && ($in_floorplan_id == $row['floorplan_id'] || $in_floorplan_id == -1) ) { $machine_ID_array[] = $row['machine_id']; } } } $dbh = null; //Disconnect return $machine_ID_array; } Function Get_Device_Data($in_device_id, $currDate, $endDate, $fiscalDays, $diffDays, $startingDate, $notReportingDate, $date15daysago) { if ($in_device_id == NULL) { return NULL; } include "phpincludes/date_calc.inc.php"; // Open connection global $conn; if (!isset($conn)) $conn = ew_Connect(); if ($_SESSION['session_fiscal_year']) { $table_year = $_SESSION['session_fiscal_year']; } else { $table_year = ''; } $session_datetime = new DateTime($_SESSION['session_date']); $session_datetime->add(new DateInterval("PT23H59M59S")); $rs = ew_ExecuteRow(" SELECT fpm.id as machine_id, fpm.fmaudit_id, fpm.model_id, fpm.floorplan_id, fpm.room_number, fpm.5_year_id, fpm.cpc_black, fpm.cpc_color, fpm.commencement_date, fpm.commencement_black_meter, fpm.commencement_color_meter, fpm.x_position as x_pos, fpm.y_position as y_pos, fpm.budgeted_blk as budgeted_black, fpm.budgeted_color, fpm.serial_number, fpm.ip_address, fpm.vendor_device_id, fpm.under_contract, fpm.is_proposed, fpm.present_floorplan_id, fpm.present_room_number, fpm.local_connection, fpm.present_local_connection, fpm.present_serial_number, fpm.savedname, fpm.save_name_id, fpm.new_vendor_device_id, fpm.present_x_position as present_x_pos, fpm.present_y_position as present_y_pos, fpm.closeout_date, ma.make, ma.model, ma.is_color, coalesce(ma.machine_image,'MissingDeviceImage.png') as machine_image, ma.features, ma_pr.make as present_make, ma_pr.model as present_model, ma_pr.is_color as present_is_color, coalesce(ma_pr.machine_image,'MissingDeviceImage.png') as present_machine_image, ma_pr.features as present_features, fp.id as floorplan_id, fp.building_id, fp.floor_number, bd.id as build_id, bd.building_name, org.id as org_id, org.org_name, org.org_type_id, org.commencement_date as org_commencement_date, DisplayMeterData, MeterDataFeed, org_message, org.cs_pres_black_rate, org.cs_pres_color_rate, cs_prop_black_w_service, cs_prop_black_wo_service, cs_prop_color_w_service, cs_prop_color_wo_service, coalesce(mt.icon_type,'Unknown') as icon_type, coalesce(mt.type_name,'Unknown') as type_name, mt.type as machine_type, mt.CoveredType, coalesce(mt_pr.icon_type,'Unknown') as present_icon_type, coalesce(mt_pr.type_name,'Unknown') as present_type_name, me.black_meter, me.color_meter, me.date_timestamp as meter_timestamp, me_first.black_meter as first_black_meter, me_first.color_meter as first_color_meter, me_first.date_timestamp as first_meter_timestamp, ms.toner, ms.service_needed, dp.dept_name, orgcs.org_id as orgcs_id, orgcs.org_present_black_rate, orgcs.org_present_color_rate, orgcs.org_proposed_black_without_service, orgcs.org_proposed_color_with_service, orgcs.org_proposed_black_with_service, orgcs.org_proposed_color_without_service, fpmc.fmc_costSavingsWithoutService, fpmc.fmc_costSavingsWithService FROM ".$table_year."floorplan_machines fpm LEFT OUTER JOIN ".$table_year."machines ma on fpm.model_id = ma.id LEFT OUTER JOIN ".$table_year."machines ma_pr on fpm.present_model_id = ma_pr.id LEFT OUTER JOIN ".$table_year."floorplans fp on fpm.floorplan_id = fp.id LEFT OUTER JOIN ".$table_year."buildings bd on fp.building_id = bd.id LEFT OUTER JOIN ".$table_year."organization org on bd.org_id = org.id LEFT OUTER JOIN ".$table_year."machine_types mt on ma.model_type = mt.id LEFT OUTER JOIN ".$table_year."machine_types mt_pr on ma_pr.model_type = mt_pr.id LEFT OUTER JOIN ".$table_year."meter me on fpm.id = me.machine_id AND me.date_timestamp = (SELECT max(i.date_timestamp) FROM ".$table_year."meter i WHERE i.machine_id = fpm.id and black_meter > 0 and date_timestamp < '".date_format($session_datetime,'Y/m/d H:i:s')."' and date_timestamp > '".date_format($startingDate,'Y/m/d H:i:s')."') LEFT OUTER JOIN ".$table_year."meter me_first on fpm.id = me_first.machine_id AND me_first.date_timestamp = (SELECT min(k.date_timestamp) FROM ".$table_year."meter k WHERE k.machine_id = fpm.id and k.black_meter > 0 and k.date_timestamp < '".date_format($session_datetime,'Y/m/d H:i:s')."' and k.date_timestamp >= '".date_format($startingDate,'Y/m/d H:i:s')."') LEFT OUTER JOIN ".$table_year."machine_status ms on fpm.id = ms.machine_id AND ms.date_timestamp = (select max(j.date_timestamp) from ".$table_year."machine_status j where j.machine_id = fpm.id and date_timestamp < '".date_format($session_datetime,'Y/m/d H:i:s')."' and date_timestamp > '".date_format($startingDate,'Y/m/d H:i:s')."') LEFT OUTER JOIN ".$table_year."department dp on fpm.dept_id = dp.id LEFT OUTER JOIN ".$table_year."org_service_rates orgcs on org.id = orgcs.org_id LEFT OUTER JOIN floorplan_machines_calculations fpmc on fpm.id = fpmc.fmc_id where fpm.id = ". $in_device_id); // Get the first meter read that is at least 15 days old. This will be used to determine if the device has not been used in the last 15 days. //echo $rs['machine_id']."->".$rs['meter_timestamp']."
"; $rs15 = ew_ExecuteRow(" SELECT fpm.id as machine_id, me.black_meter, me.color_meter, me.date_timestamp as meter_timestamp FROM ".$table_year."floorplan_machines fpm LEFT OUTER JOIN ".$table_year."meter me on fpm.id = me.machine_id AND me.date_timestamp = (SELECT max( i.date_timestamp ) FROM ".$table_year."meter i WHERE i.machine_id = fpm.id and i.date_timestamp <= '".date_format($date15daysago,'Y-m-d')."' ) where fpm.id = ". $in_device_id); // If the current meter read equals the meter read from 15 days ago then there hasn't been any usage. if ($rs15['black_meter'] == $rs['black_meter']) { $no_black_usage = 'Y'; } else { $no_black_usage = 'N'; } if ($rs['is_color'] == 1 && $rs15['color_meter'] == $rs['color_meter']) { $no_color_usage = 'Y'; } else { $no_color_usage = 'N'; } /* if ($in_device_id == 19557) { echo "in_device_id: ".$in_device_id."
"; echo "rs[org_commencement_date]: ".$rs['org_commencement_date']."
"; exit(); } */ //Set the org commencment date. if ($rs['org_commencement_date'] == NULL || $rs['org_commencement_date'] < date_format($startingDate,'Y-m-d')) { $org_commencement_date = $startDate; } else { $org_commencement_date = $rs['org_commencement_date']; } $org_comm_date_temp = new DateTime($org_commencement_date); $org_comm_date = date_format($org_comm_date_temp,'Y-m-d'); $sql = "select datediff('".$currDate."','".$org_comm_date."')"; $org_cm_diff = ew_ExecuteScalar($sql); //Get the number of days between the organization commencement date and the current date // $org_cm_diff = $org_cm_diff + 1; //Add 1 because the start date is included, not just the date difference /* if ($rs['serial_number'] == 'JPDAC05915') { echo "

"; var_dump($rs['commencement_date']);echo " "; var_dump($org_comm_date);echo " "; echo "

"; } */ //Set the commencment date for the device //if (!$rs['commencement_date'] || !$rs['commencement_date'] < $org_comm_date) { if (!$rs['commencement_date'] || $rs['commencement_date'] < $org_comm_date) { $device_commencement_date = new DateTime($org_commencement_date); $comm_date_used = "org_commencement_date_1"; } else { $device_commencement_date = new DateTime($rs['commencement_date']); $comm_date_used = "device_commencement_date"; if ($device_commencement_date < $org_commencement_date) { $device_commencement_date = $org_commencement_date; $comm_date_used = "org_commencement_date_2"; } } $cm_date = date_format($device_commencement_date,'Y-m-d'); $sql = "select datediff('".$currDate."','".$cm_date."')"; $cm_diff = ew_ExecuteScalar($sql); //Get the number of days between the device commencement date and the current date //$cm_diff = $cm_diff + 1; //Add 1 because the start date is included, not just the date difference //$sql = "select datediff('".$endDate."','".$cm_date."')"; //$cm_fiscal_days = ew_ExecuteScalar($sql); //Get the number of days between the device commencement date and the ending fiscal date $sql = "select datediff('".$endDate."','".$org_comm_date."')"; $org_fiscal_days = ew_ExecuteScalar($sql); //Get the number of days between the organization commencement date and the ending fiscal date //$org_fiscal_days = $org_fiscal_days + 1; //Add 1 because the start date is included, not just the date difference if ($org_fiscal_days > 365) { $org_fiscal_days = 365; } //if ($rs['machine_id'] == '28562') { // error_log("\n\$rs['first_meter_timestamp'] = ".$rs['first_meter_timestamp'], 3, "device_data.log"); //} //$first_diff = 1; //if ($rs['machine_id'] == '28562') { // error_log("\r\n\$rs['first_meter_timestamp'] = ".$rs['first_meter_timestamp'], 3, "device_data.log"); // Get the number of days between the first meter read date and the current date if ($rs['first_meter_timestamp'] == NULL) { $first_diff = 1; } else { $first_meter_date = date('Y-m-d', strtotime($rs['first_meter_timestamp'])); $last_meter_date = date('Y-m-d', strtotime($rs['meter_timestamp'])); $sql = "select datediff('".$last_meter_date."','".$first_meter_date."')"; $first_diff = ew_ExecuteScalar($sql); // $first_diff = $first_diff + 1; // Add 1 because the start date is included, not just the date difference } //} // Get the number of days between the first meter read date and the last meter read date if ($rs['meter_timestamp'] == NULL) { $last_diff = 1; } else { $last_meter_date = date('Y-m-d', strtotime($rs['meter_timestamp'])); $sql = "select datediff('".$last_meter_date."','".$first_meter_date."')"; $last_diff = ew_ExecuteScalar($sql); //$last_diff = $last_diff + 1; // Add 1 because the start date is included, not just the date difference } // Get the number of days between the last meter read date and the commencement date if ($rs['meter_timestamp'] == NULL) { $last_diff = 1; } else { $last_meter_date = date('Y-m-d', strtotime($rs['meter_timestamp'])); $sql = "select datediff('".$last_meter_date."','".$cm_date."')"; $last_diff = ew_ExecuteScalar($sql); //$last_diff = $last_diff + 1; // Add 1 because the start date is included, not just the date difference } if ($last_diff <= 0) { $last_diff = 1; } /*if($last_diff != 242){ echo $last_diff . '-' . $rs['serial_number'] . ''; }*/ // Calculated fields if ($rs['commencement_black_meter'] == NULL) { $consumed_black = $rs['black_meter']; $consumed_black_cpc = $rs['black_meter'] * $rs['cpc_black']; } else { $consumed_black = $rs['black_meter'] - $rs['commencement_black_meter']; $consumed_black_cpc = ($rs['black_meter'] - $rs['commencement_black_meter']) * $rs['cpc_black']; //echo "BM:".$rs['black_meter']." CBM:".$rs['commencement_black_meter']." CB:".$consumed_black."
"; } $consumed_first_black = $rs['black_meter'] - $rs['first_black_meter']; $consumed_first_black_cpc = $consumed_first_black * $rs['cpc_black']; /* if ($rs['serial_number'] == 'MY77T1C04V') { echo "id:".$rs['machine_id']." Serial Number:".$rs['serial_number']." ".$rs['5_year_id']." : org_cm_diff: ".$org_cm_diff.' cm_diff: '.$cm_diff." cm_fiscal_days: ".$cm_fiscal_days." org_fiscal_days: ".$org_fiscal_days." cm_date:".$cm_date." currDate:".$currDate." endDate".$endDate." org_comm_date: ".$org_comm_date." diffdays: ".$diffDays." Commencement_date: ".$rs['commencement_date']." device_commencement_date: ".date_format($device_commencement_date,'Y-m-d')." comm_date_used: ".$comm_date_used."
"; echo "consume_black:".$rs['commencement_black_meter']." : ".$consumed_black." black_meter:".$rs['black_meter']."
"; } */ // if ($rs['machine_id'] == '28562') { // error_log(serialize($rs), 3, "device_data.log"); // } if ($cm_diff > 0) { $consumed_black_estimated = $consumed_black / $cm_diff * $org_cm_diff; $consumed_black_estimated_cpc = $consumed_black_cpc / $cm_diff * $org_cm_diff; } else { $consumed_black_estimated = $consumed_black; $consumed_black_estimated_cpc = $consumed_black_cpc; } if ($rs['commencement_color_meter'] == NULL) { $consumed_color = $rs['color_meter']; $consumed_color_cpc = $rs['color_meter'] * $rs['cpc_color']; } else { $consumed_color = $rs['color_meter'] - $rs['commencement_color_meter']; $consumed_color_cpc = ($rs['color_meter'] - $rs['commencement_color_meter']) * $rs['cpc_color']; } $consumed_first_color = $rs['color_meter'] - $rs['first_color_meter'];; $consumed_first_color_cpc = $consumed_first_color * $rs['cpc_color']; if ($cm_diff > 0) { $consumed_color_estimated = $consumed_color / $cm_diff * $org_cm_diff; $consumed_color_estimated_cpc = $consumed_color_cpc / $cm_diff * $org_cm_diff; } else { $consumed_color_estimated = $consumed_color; $consumed_color_estimated_cpc = $consumed_color_cpc; } //Budgeted if ($rs['org_commencement_date'] == NULL || $rs['org_commencement_date'] < date_format($startingDate,'Y-m-d')) { $budgeted_black = $rs['budgeted_black']; $budgeted_black_cpc = $rs['budgeted_black'] * $rs['cpc_black']; $budgeted_color = $rs['budgeted_color']; $budgeted_color_cpc = $rs['budgeted_color'] * $rs['cpc_color']; } else { $budgeted_black = ($rs['budgeted_black'] / $fiscalDays) * $org_fiscal_days; $budgeted_black_cpc = ($rs['budgeted_black'] / $fiscalDays) * $org_fiscal_days * $rs['cpc_black']; $budgeted_color = ($rs['budgeted_color'] / $fiscalDays) * $org_fiscal_days; $budgeted_color_cpc = ($rs['budgeted_color'] / $fiscalDays) * $org_fiscal_days * $rs['cpc_color']; } //Computer projected amounts. Use commencement date if it exists. //echo "***".$cm_diff; if ($cm_diff <= 0) { $projected_black = 0; $projected_black_cpc = 0; $projected_color = 0; $projected_color_cpc = 0; $projected_black_year = 0; $projected_black_year_cpc = 0; $projected_color_year = 0; $projected_color_year_cpc = 0; } else { //if ($rs['commencement_date'] == NULL || $rs['commencement_date'] < date_format($startingDate,'Y-m-d')) { //If full year //Projected // if ($rs['serial_number'] == 'A4EW011002527') { //echo "
TEST3:"."
";echo "cb:".$consumed_black." dd:".$diffDays." fd:".$fiscalDays."
"; //} // $projected_black = $consumed_black / $diffDays * $fiscalDays; // $projected_black_cpc = $consumed_black_cpc / $diffDays * $fiscalDays; // $projected_color = $consumed_color / $diffDays * $fiscalDays; // $projected_color_cpc = $consumed_color_cpc / $diffDays * $fiscalDays; // $projected_black_year = $consumed_black / $diffDays * $fiscalDays; // $projected_black_year_cpc = $consumed_black_cpc / $diffDays * $fiscalDays; // $projected_color_year = $consumed_color / $diffDays * $fiscalDays; // $projected_color_year_cpc = $consumed_color_cpc / $diffDays * $fiscalDays; //} else { //if ($rs['serial_number'] == 'A4EW011002527') { //echo "
TEST4:"."
"; //} //if ($rs['serial_number'] == 'A63N011012625') { // error_log("consumed_black = ".$consumed_black."; cm_diff = ".$cm_diff."; org_fiscal_days = ".$org_fiscal_days.";\n", 3, "device_data.log"); //} //if ($rs['serial_number'] == 'A63N011012625') { // error_log("org_commencement_date = ".$rs['org_commencement_date']."; startingDate = ".date_format($startingDate,'Y-m-d')."; last_diff = ".$last_diff."; fiscalDays = ".$fiscalDays.";\n", 3, "device_data.log"); //} //$daysInService = $last_diff + $daysRemaining - 1; //if ($daysInService <= 0) { // $daysInService = 1; //} /* if ($in_device_id == 26029) { echo "in_device_id: ".$in_device_id."
"; echo "org_commencement_date null? ".($rs['org_commencement_date'] == NULL)."
"; echo "rs[org_commencement_date]: ".$rs['org_commencement_date']."
"; echo "org_commencement_date: ".$org_commencement_date."
"; echo "startingDate: ".date_format($startingDate,'Y-m-d')."
"; echo "startDate: ".$startDate."
"; echo "less than? ".($rs['org_commencement_date'] < date_format($startingDate,'Y-m-d'))."
"; echo "true == 1? ".(true == 1)."
"; echo "true == 0? ".(true == 0)."
"; echo "false == 1? ".(false == 1)."
"; echo "false == 0? ".(false == 0)."
"; exit(); } */ if ($rs['org_commencement_date'] == NULL || $rs['org_commencement_date'] < date_format($startingDate,'Y-m-d')) { $projected_black = $consumed_black / $last_diff * 345; $projected_black_cpc = $consumed_black_estimated_cpc / $last_diff * 345; $projected_color = $consumed_color / $last_diff * 345; $projected_color_cpc = $consumed_color_estimated_cpc / $last_diff * 345; $projected_black_year = $projected_black; $projected_black_year_cpc = $projected_black_cpc * 1.035; $projected_color_year = $projected_color; $projected_color_year_cpc = $projected_color_cpc * 1.035; $projected_source = "first"; } else { $projected_black = $consumed_black / $cm_diff * min($org_fiscal_days, 345); $projected_black_cpc = $consumed_black_cpc / $cm_diff * min($org_fiscal_days, 345); $projected_color = $consumed_color / $cm_diff * min($org_fiscal_days, 345); $projected_color_cpc = $consumed_color_cpc / $cm_diff * min($org_fiscal_days, 345); $projected_black_year = $consumed_black / $cm_diff * min($org_fiscal_days, 345); $projected_black_year_cpc = $consumed_black_cpc / $cm_diff * min($org_fiscal_days, 345) * 1.035; $projected_color_year = $consumed_color / $cm_diff * min($org_fiscal_days, 345); $projected_color_year_cpc = $consumed_color_cpc / $cm_diff * min($org_fiscal_days, 345) * 1.035; $projected_source = "second"; } //} //if ($rs['serial_number'] == 'A63N011012625') { // error_log("projected_black = ".$projected_black."; projected_black_year = ".$projected_black_year.";\n", 3, "device_data.log"); //} } //if ($rs['serial_number'] == 'CSI018819') { // error_log("\$fiscalDays = ".$fiscalDays, 3, "device_data.log"); //} if ( ($rs['meter_timestamp'] == null) || ($rs['meter_timestamp'] < date_format($notReportingDate,'Y-m-d')) ) { $reporting = "N"; } else { $reporting = "Y"; } if ($rs['toner'] == 1) { $toner_alert = "Y"; } else { $toner_alert = "N"; } if ($rs['service_needed'] == 1) { $service_needed = "Y"; } else { $service_needed = "N"; } $local_connection = $rs['local_connection']; // If "USB" is specified in the IP Address then set local connection to "Y" if ($rs['ip_address'] > '') { if (stristr($rs['ip_address'], 'usb') !== FALSE) { $local_connection = 'Y'; } } /* if ($rs['machine_id'] == '25312') { echo "BB:".$budgeted_black . " CMB:".$rs['commencement_black_meter']. " MB:".$rs['black_meter'] . " PB:".$projected_black . " CB:".$consumed_black." CBC:" . $consumed_black_cpc; echo " BC:".$budgeted_color . " CMC:".$rs['commencement_color_meter'] . " PC:".$projected_color . " CC:".$consumed_color." CCC:" . $consumed_color_cpc; echo "
"; } */ //If the device is not reporting then use the budgeted amounts for projected and next years black. // Removed "under contract" criteria on 5/28/2014 //if ( $reporting == "N" && $org_fiscal_days > 0 && $rs['under_contract'] == 'Y') { if ( $reporting == "N" && $org_fiscal_days > 0) { if ( $budgeted_black > 0) { //If the projected black for the year is < the budgeted black for the year then use the budgeted black year amount instead of projected black. if ($projected_black_year < ($budgeted_black / $org_fiscal_days * $fiscalDays)) { $projected_black = $budgeted_black; $projected_black_cpc = $budgeted_black_cpc; $projected_black_year = $projected_black; $projected_black_year_cpc = $projected_black_cpc * 1.035; } } if ( $budgeted_color > 0) { //If the projected color for the year is < the budgeted color for the year then use the budgeted color year amount instead of projected color. if ($projected_color_year < ($budgeted_color / $org_fiscal_days * $fiscalDays)) { $projected_color = $budgeted_color; $projected_color_cpc = $budgeted_color_cpc; $projected_color_year = $projected_color; $projected_color_year_cpc = $projected_color_cpc * 1.035; } } } $temp_session_date = date_format($session_datetime,'Y-m-d'); //var_dump($rs['closeout_date']);echo " ";var_dump($temp_session_date);echo "
"; //If the closeout date for a device has passed then this device is no longer in use. //Set the projected amounts to match the consumed amounts because the device will not add to print total. Set the projected next year's volume to zero. if ($rs['closeout_date'] && $rs['closeout_date'] < $temp_session_date) { $projected_black = $consumed_black_estimated; $projected_black_cpc = $consumed_black_estimated_cpc; $projected_color = $consumed_color_estimated; $projected_color_cpc = $consumed_color_estimated_cpc; $projected_black_year = $projected_black_year_cpc = $projected_color_year = $projected_color_year_cpc = 0; $closed_out = 'Y'; } else { $closed_out = 'N'; } //echo "building:".$rs['building_name']. " Pres FP ID: ".$rs['present_floorplan_id']." FP ID:".$rs['floorplan_id']." room:".$rs['room_number']." SN:".$rs['present_serial_number']."
"; //If any amount is less than 0 then set the amount to 0. if ($consumed_black < 0) {$consumed_black = 0;} if ($consumed_black_cpc < 0) {$consumed_black_cpc = 0;} if ($consumed_color < 0) {$consumed_color = 0;} if ($consumed_color_cpc < 0) {$consumed_color_cpc = 0;} if ($projected_black < 0) {$projected_black = 0;} if ($projected_black_cpc < 0) {$projected_black_cpc = 0;} if ($projected_color < 0) {$projected_color = 0;} if ($projected_color_cpc < 0) {$projected_color_cpc = 0;} if ($consumed_black_estimated < 0) {$consumed_black_estimated = 0;} if ($consumed_black_estimated_cpc < 0) {$consumed_black_estimated_cpc = 0;} if ($consumed_color_estimated < 0) {$consumed_color_estimated = 0;} if ($consumed_color_estimated_cpc < 0) {$consumed_color_estimated_cpc = 0;} if ($projected_black_year < 0) {$projected_black_year = 0;} if ($projected_black_year_cpc < 0) {$projected_black_year_cpc = 0;} if ($projected_color_year < 0) {$projected_color_year = 0;} if ($projected_color_year_cpc < 0) {$projected_color_year_cpc = 0;} /* A new flag was added "DisplayMeterData" that when turned off will suppress all meter data from being displayed. */ If ($rs['DisplayMeterData'] <> "Y") { $consumed_black = $consumed_black_cpc = $consumed_color = $consumed_color_cpc = 0; $projected_black = $projected_black_cpc = $projected_color = $projected_color_cpc = 0; $consumed_black_estimated = $consumed_black_estimated_cpc = $consumed_color_estimated = $consumed_color_estimated_cpc = 0; $projected_black_year = $projected_black_year_cpc = $projected_color_year = $projected_color_year_cpc = 0; $reporting = $toner_alert = $service_needed = $no_black_usage = $no_color_usage = $local_connection = 'N'; } if ($rs['cpc_black'] < 0) {$rs['cpc_black'] = 0;} if ($rs['cpc_color'] < 0) {$rs['cpc_color'] = 0;} $overUnderBudget = round($device['projected_black_cpc']) + round($device['projected_color_cpc']) - round($device['budgeted_black_cpc']) - $device['budgeted_color_cpc']; $device_data = array( // Floorplan_machines table 'machine_id' =>$rs['machine_id'], 'fmaudit_id' =>$rs['fmaudit_id'], 'model_id' =>$rs['model_id'], 'floorplan_id' =>$rs['floorplan_id'], 'room_number' =>$rs['room_number'], '5_year_id' =>$rs['5_year_id'], 'cpc_black' =>$rs['cpc_black'], 'cpc_color' =>$rs['cpc_color'], 'serial_number' =>$rs['serial_number'], 'ip_address' =>$rs['ip_address'], 'vendor_device_id' =>$rs['vendor_device_id'], 'present_serial_number' =>$rs['present_serial_number'], 'new_vendor_device_id' =>$rs['new_vendor_device_id'], 'budgeted_black_year' =>$rs['budgeted_black'], 'budgeted_color_year' =>$rs['budgeted_color'], 'under_contract' =>$rs['under_contract'], 'commencement_date' =>$rs['commencement_date'], 'commencement_black_meter' =>$rs['commencement_black_meter'], 'commencement_color_meter' =>$rs['commencement_color_meter'], 'savedname' =>$rs['savedname'], 'save_name_id' =>$rs['save_name_id'], 'is_proposed' =>$rs['is_proposed'], 'present_floorplan_id' =>$rs['present_floorplan_id'], 'present_room_number' =>$rs['present_room_number'], 'x_pos' =>$rs['x_pos'], 'y_pos' =>$rs['y_pos'], 'present_local_connection' =>$rs['present_local_connection'], 'present_x_pos' =>$rs['present_x_pos'], 'present_y_pos' =>$rs['present_y_pos'], 'closeout_date' => $rs['closeout_date'], // Machines Table 'make' =>$rs['make'], 'model' =>$rs['model'], 'is_color' =>$rs['is_color'], 'machine_image' =>$rs['machine_image'], 'features' =>$rs['features'], 'present_make' =>$rs['present_make'], 'present_model' =>$rs['present_model'], 'present_is_color' =>$rs['present_is_color'], 'present_machine_image' =>$rs['present_machine_image'], 'present_features' =>$rs['present_features'], // Floorplans table 'floorplan_id' =>$rs['floorplan_id'], 'building_id' =>$rs['building_id'], 'floor_number' =>$rs['floor_number'], // Buildings Table 'building_name' =>$rs['building_name'], // Organizations table 'org_id' =>$rs['org_id'], 'org_name' =>$rs['org_name'], 'org_type_id' =>$rs['org_type_id'], 'org_commencement_date' =>$org_commencement_date, 'org_commencement_date_actual' =>$rs['org_commencement_date'], 'org_message' =>$rs['org_message'], 'MeterDataFeed' =>$rs['MeterDataFeed'], // Meter table 'black_meter' =>$rs['black_meter'], 'color_meter' =>$rs['color_meter'], 'meter_timestamp' =>$rs['meter_timestamp'], // Machine type table 'icon_type' =>$rs['icon_type'], 'type_name' =>$rs['type_name'], 'machine_type' =>$rs['machine_type'], 'CoveredType' =>$rs['CoveredType'], // Machine type table (for present type ID) 'present_icon_type' =>$rs['present_icon_type'], 'present_type_name' =>$rs['present_type_name'], // Machine_Status table 'toner' =>$rs['toner'], 'service_needed' =>$rs['service_needed'], // Department 'dept_name' =>$rs['dept_name'], // Calculated fields 'consumed_black' =>$consumed_black, 'consumed_black_cpc' =>$consumed_black_cpc, 'consumed_color' =>$consumed_color, 'consumed_color_cpc' =>$consumed_color_cpc, 'consumed_first_black' =>$consumed_first_black, 'consumed_first_black_cpc' =>$consumed_first_black_cpc, 'consumed_first_color' =>$consumed_first_color, 'consumed_first_color_cpc' =>$consumed_first_color_cpc, 'first_black_meter' => $rs['first_black_meter'], 'org_cm_diff' => $org_cm_diff, 'cm_diff' => $cm_diff, 'first_diff' => $first_diff, 'last_diff' => $last_diff, 'days_in_service' => $daysInService, 'not_reporting_date' => $notReportingDate, 'startingDate' => date_format($startingDate,'Y-m-d'), 'projectedSource' => $projected_source, 'first_meter_date' => $first_meter_date, 'last_meter_date' => $last_meter_date, 'device_commencement_date' => $cm_date, 'budgeted_black' =>$budgeted_black, 'budgeted_black_cpc' =>$budgeted_black_cpc, 'budgeted_color' =>$budgeted_color, 'budgeted_color_cpc' =>$budgeted_color_cpc, 'projected_black' =>$projected_black, 'projected_black_cpc' =>$projected_black_cpc,'projected_color' =>$projected_color, 'projected_color_cpc' =>$projected_color_cpc, 'reporting' =>$reporting, 'toner_alert' =>$toner_alert, 'service_needed' =>$service_needed, 'no_black_usage' =>$no_black_usage, 'no_color_usage' =>$no_color_usage, 'consumed_black_estimated' =>$consumed_black_estimated, 'consumed_black_estimated_cpc' =>$consumed_black_estimated_cpc, 'consumed_color_estimated' =>$consumed_color_estimated, 'consumed_color_estimated_cpc' =>$consumed_color_estimated_cpc, 'local_connection' =>$local_connection, 'projected_black_year' =>$projected_black_year, 'projected_black_year_cpc' =>$projected_black_year_cpc, 'projected_color_year' => $projected_color_year ,'projected_color_year_cpc' => $projected_color_year_cpc, 'closed_out' =>$closed_out, //Field for cost savings 'org_present_black_rate' => $rs['org_present_black_rate'], 'org_present_color_rate' => $rs['org_present_color_rate'], 'org_proposed_black_without_service' => $rs['org_proposed_black_without_service'], 'org_proposed_color_with_service' => $rs['org_proposed_color_with_service'], 'org_proposed_black_with_service' => $rs['org_proposed_black_with_service'], 'org_proposed_color_without_service' => $rs['org_proposed_color_without_service'], 'fmc_costSavingsWithService' => $rs['fmc_costSavingsWithService'], 'fmc_costSavingsWithoutService' => $rs['fmc_costSavingsWithoutService'], 'test_fiscalDays' => $fiscalDays, 'test_org_fiscal_days' => $org_fiscal_days, 'test_budgeted_blk' => $rs['budgeted_black'], 'overUnderBudget' => $overUnderBudget ); //if ($rs['serial_number'] == 'CSI018819') { // error_log(serialize($device_data), 3, "device_data.log"); //} //if ($rs['serial_number'] == 'A63N011012625') { // error_log(serialize($device_data), 3, "device_data.log"); //} return $device_data; //orgcs.org_present_black_rate, orgcs.org_present_color_rate, orgcs.org_proposed_black_without_service, orgcs.org_proposed_color_with_service, // orgcs.org_proposed_black_with_service, orgcs.org_proposed_color_without_service } ?>