<?php
// get these values from your DB.
require_once('config.php');
require_once('f_get_emp_ls5.php');
$error_message;
$valid = true;



$json = file_get_contents('php://input');

//to debug the json values;
//file_put_contents("data.json", $json)
// Converts it into a PHP object
$data = json_decode($json, true);



$site_cd = $data['site_cd'];

$wrk_sts_typ_cd =$data['wrk_sts_typ_cd']; 

$wko_mst_assetno= $data['wko_mst_assetno'];
$wko_mst_descs= $data['wko_mst_descs'];
$wko_mst_originator= $data['wko_mst_originator'];
$wko_mst_status= $data['wko_mst_status'];
$wko_mst_work_area= $data['wko_mst_work_area'];
$wko_mst_type= $data['wko_mst_type'];
$wko_mst_asset_location= $data['wko_mst_asset_location'];
$wko_mst_asset_level= $data['wko_mst_asset_level'];
$wko_mst_org_date=$data['wko_mst_org_date'];
$wko_mst_due_date= $data['wko_mst_due_date'];
$asset_shortdesc=$data['asset_shortdesc'];
$wko_det_assign_to=$data['wko_det_assign_to'];
$wko_mst_wo_no=$data['wko_mst_wo_no'];
$wko_det_work_type=$data['wko_det_work_type'];

$type=$data['type'];
$emp_det_work_grp=$data['emp_det_work_grp'];
$emp_id=$data['emp_id'];


if (!empty($wko_mst_wo_no)){	
	$where_wko_mst_wo_no = " AND wko_mst.wko_mst_wo_no LIKE '%".$wko_mst_wo_no. "%' ";	
}else{	
	$where_wko_mst_wo_no = "";	
}


if (!empty($wko_mst_assetno)){	
	$where_wko_mst_assetno = " AND wko_mst.wko_mst_assetno LIKE '%".$wko_mst_assetno. "%' ";
	$where_wko_mst_pm_grp = " AND wko_mst.wko_mst_pm_grp LIKE '%".$wko_mst_assetno. "%' ";
}else{	

	$where_wko_mst_assetno = "";
	$where_wko_mst_pm_grp = "";
	
}

if (!empty($wko_mst_descs)){	
	$where_wko_mst_descs = " AND wko_mst.wko_mst_descs LIKE '%".$wko_mst_descs. "%' ";
	$where_pm_grp_desc = " AND prm_grp.prm_grp_desc LIKE '%".$wko_mst_descs. "%' ";
}else{	
	$where_wko_mst_descs = "";	
	$where_pm_grp_desc = "";
}
if (!empty($wko_mst_originator)){	
	$where_wko_mst_originator = " AND wko_mst.wko_mst_originator LIKE '%".$wko_mst_originator. "%' ";
}else{	
	$where_wko_mst_originator = "";
}

if (!empty($wko_mst_status)){	
	$where_wko_mst_status = " AND wko_mst.wko_mst_status LIKE '%".$wko_mst_status. "%' ";
}else{	
	$where_wko_mst_status = "";
}

if (!empty($wko_mst_work_area)){	
	$where_wko_mst_work_area = " AND wko_mst.wko_mst_work_area LIKE '%".$wko_mst_work_area. "%' ";
}else{	
	$where_wko_mst_work_area = "";
}

if (!empty($wko_mst_type)){	
	if ($wko_mst_type=='P'){
		$where_wko_mst_type_p = " AND wko_mst.wko_mst_type LIKE '%P%' ";
		$where_wko_mst_type_g = " AND wko_mst.wko_mst_type LIKE '%G%' ";
	}else{
		$where_wko_mst_type = " AND wko_mst.wko_mst_type LIKE '%".$wko_mst_type. "%' ";
	}
}else{	
	$where_wko_mst_type = "";
}

if (!empty($wko_mst_asset_location)){	
	$where_wko_mst_asset_location = " AND wko_mst.wko_mst_asset_location LIKE '%".$wko_mst_asset_location. "%' ";
}else{	
	$where_wko_mst_asset_location = "";
}

if (!empty($wko_mst_asset_level)){	
	$where_wko_mst_asset_level = " AND wko_mst.wko_mst_asset_level LIKE '%".$wko_mst_asset_level. "%' ";
}else{	
	$where_wko_mst_asset_level = "";
}

if (!empty($wko_det_assign_to)){	
	$where_wko_det_assign_to = " AND wko_det.wko_det_assign_to LIKE '%".$wko_det_assign_to. "%' ";
}else{	

	if($type == "assign"){
			
			$where_wko_det_assign_to = " AND ( wko_det.wko_det_assign_to is Null  or  wko_det.wko_det_assign_to = '' )";	
			
		}else {
			$where_wko_det_assign_to = "";
			}	
}

if (!empty($asset_shortdesc)){	
	$where_asset_shortdesc = " AND ast_mst.ast_mst_asset_shortdesc LIKE '%".$asset_shortdesc. "%' ";
}else{	
	$where_asset_shortdesc = "";
}

if (!empty($wko_mst_org_date)){
	$where_org_date = " AND CONVERT(DATETIME, CONVERT(VARCHAR, wko_mst.wko_mst_org_date , 101)) >= CONVERT(DATETIME, CONVERT(VARCHAR, '".$wko_mst_org_date."', 101)) 
						AND CONVERT(DATETIME, CONVERT(VARCHAR, wko_mst.wko_mst_org_date , 101)) < CONVERT(DATETIME, CONVERT(VARCHAR, '".$wko_mst_due_date."', 101))  + 1 ";
}else{
	$where_org_date = " AND CONVERT(DATETIME, CONVERT(VARCHAR, '1900-01-01', 101)) < Getdate()";
}

if (!empty($wko_det_work_type)){	
	$where_wko_det_work_type = " AND wko_det.wko_det_work_type LIKE '%".$wko_det_work_type. "%' ";
}else{	
	$where_wko_det_work_type = "";
}


if($wrk_sts_typ_cd  == "Open"){
	$sts_typ_cd ="AND (wrk_sts_typ_cd NOT IN ('CLOSE', 'COMPLETE', 'ACKNOWLEDGEMENT', 'FORCE-CLOSE', 'CANCEL'))";
}else if($wrk_sts_typ_cd  == "Complete"){
	$sts_typ_cd ="AND (wrk_sts_typ_cd IN ('COMPLETE','ACKNOWLEDGEMENT'))";
}else if($wrk_sts_typ_cd  == "Close"){
	$sts_typ_cd ="AND (wrk_sts_typ_cd IN ('CLOSE', 'FORCE-CLOSE'))";
}else{
	//echo $type;


	if($type == "assign"){
		$sts_typ_cd ="AND (wrk_sts_typ_cd IN ('OPEN','REWORK'))";

	}else if($type == "notcomplete"){
		$sts_typ_cd ="AND (wrk_sts_typ_cd IN ('OPEN','REWORK'))";

	}else{
		$sts_typ_cd ="";
	}



}

$where_work_group = get_emp_ls5($site_cd, $emp_id, 'wko_det_work_grp');


if($wko_mst_type == "P"){
	
	$sql_1="Select total_Count = SUM(X.ttl_count) from (
			Select 
			ttl_count=count(*)													
							
			FROM 	wko_mst (NOLOCK)     			
	
					INNER JOIN wko_det (NOLOCK)
					ON		wko_mst.site_cd = wko_det.site_cd
					AND		wko_mst.rowid = wko_det.mst_rowid
					AND wko_mst_type  IN ('P')
					
					INNER JOIN	wrk_sts (NOLOCK)
					ON			wko_mst.site_cd = wrk_sts.site_cd
					AND			wko_mst.wko_mst_status = wrk_sts.wrk_sts_status
							
					LEFT 
					OUTER 
					JOIN		ast_mst (NOLOCK)
					ON			wko_mst.site_cd = ast_mst.site_cd
					AND			wko_mst.wko_mst_assetno = ast_mst.ast_mst_asset_no
					
					LEFT 
					OUTER 
					JOIN		emp_mst emp_mst1(NOLOCK)						
					ON			wko_mst.site_cd = emp_mst1.site_cd
					AND			wko_mst.wko_mst_originator = emp_mst1.emp_mst_empl_id
					
					
					LEFT 
					OUTER 
					JOIN		emp_mst emp_mst2(NOLOCK)						
					ON			wko_det.site_cd = emp_mst2.site_cd
					AND			wko_det.wko_det_assign_to = emp_mst2.emp_mst_empl_id
					
					
					LEFT 
					OUTER 
					JOIN		ast_grp (NOLOCK)
					ON			wko_mst.site_cd = ast_grp.site_cd
					AND			wko_mst.wko_mst_asset_group_code = ast_grp.ast_grp_grp_cd
					
					LEFT 
					OUTER 
					JOIN		ast_loc (NOLOCK)
					ON			wko_mst.site_cd = ast_loc.site_cd
					AND			wko_mst.wko_mst_asset_location = ast_loc.ast_loc_ast_loc


					LEFT 
					OUTER 
					JOIN		ast_lvl (NOLOCK)
					ON			wko_mst.site_cd = ast_lvl.site_cd
					AND			wko_mst.wko_mst_asset_level = ast_lvl.ast_lvl_ast_lvl
					
					LEFT 
					OUTER 
					JOIN		mst_war (NOLOCK)
					ON			wko_mst.site_cd = mst_war.site_cd
					AND			wko_mst.wko_mst_work_area = mst_war.mst_war_work_area

					
					LEFT 
					OUTER 
					JOIN		wrk_pri (NOLOCK)
					ON			wko_mst.site_cd = wrk_pri.site_cd
					AND			wko_mst.wko_mst_plan_priority = wrk_pri.wrk_pri_pri_cd

					LEFT 
					OUTER 
					JOIN		wrk_pri wrk_pri_2(NOLOCK)
					ON			wko_mst.site_cd = wrk_pri_2.site_cd
					AND			wko_mst.wko_mst_orig_priority = wrk_pri_2.wrk_pri_pri_cd

					LEFT 
					OUTER 
					JOIN		cf_cost_center (NOLOCK)
					ON			wko_mst.site_cd = cf_cost_center.site_cd
					AND			wko_mst.wko_mst_chg_costcenter = cf_cost_center.costcenter


					LEFT 
					OUTER 
					JOIN		wrk_flt (NOLOCK)
					ON			wko_mst.site_cd = wrk_flt.site_cd
					AND			wko_mst.wko_mst_flt_code = wrk_flt.wrk_flt_fault_cd
					
					LEFT 
					OUTER 
					JOIN		wrk_typ (NOLOCK)
					ON			wko_det.site_cd = wrk_typ.site_cd
					AND			wko_det.wko_det_work_type = wrk_typ.wrk_typ_typ_cd
				
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_1(NOLOCK)
					ON			wko_det.site_cd = cf_account_1.site_cd
					AND			wko_det.wko_det_laccount = cf_account_1.account
					
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_2(NOLOCK)
					ON			wko_det.site_cd = cf_account_2.site_cd
					AND			wko_det.wko_det_caccount = cf_account_2.account
					
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_3(NOLOCK)
					ON			wko_det.site_cd = cf_account_3.site_cd
					AND			wko_det.wko_det_maccount = cf_account_3.account
					
					
					LEFT 
					OUTER 
					JOIN		wko_ls7(NOLOCK)
					ON			wko_mst.site_cd = wko_ls7.site_cd
					AND			wko_mst.rowid = wko_ls7.mst_rowid
					AND			wko_det.site_cd = wko_ls7.site_cd
					AND			wko_det_assign_to = wko_ls7.wko_ls7_emp_id
					AND			wko_ls7.RowID = (SELECT MAX(rowid) FROM wko_ls7 (NOLOCK)
										 WHERE wko_ls7.site_cd = wko_mst.site_cd
										 AND   wko_ls7.mst_rowid = wko_mst.rowid
										 AND   wko_ls7.site_cd = wko_det.site_cd
										 AND   wko_ls7.wko_ls7_emp_id = wko_det.wko_det_assign_to)

			WHERE	( wko_mst.site_cd = '".$site_cd."' )".
					$where_wko_mst_assetno.
					$where_asset_shortdesc.
					$where_wko_mst_descs.
					$where_wko_mst_originator.
					$where_wko_mst_status.
					$where_wko_mst_work_area.
					$where_wko_mst_asset_location.
					$where_wko_mst_asset_level.
					$where_wko_det_assign_to.
					$where_wko_det_work_type.
					$where_org_date.
					$sts_typ_cd.
					$where_work_group.
					$where_wko_mst_type_p.
					$where_wko_mst_wo_no. "
					
	
	UNION ALL
	
	Select 
		ttl_count=count(*)											
							
			FROM 	wko_mst (NOLOCK)     			
	
					INNER JOIN wko_det (NOLOCK)
					ON		wko_mst.site_cd = wko_det.site_cd
					AND		wko_mst.rowid = wko_det.mst_rowid
					AND 	wko_mst_type  IN ('G')
					
					INNER JOIN	wrk_sts (NOLOCK)
					ON			wko_mst.site_cd = wrk_sts.site_cd
					AND			wko_mst.wko_mst_status = wrk_sts.wrk_sts_status
							
					LEFT 
					OUTER 
					JOIN		prm_grp (NOLOCK)
					ON			wko_mst.site_cd = prm_grp.site_cd
					AND			wko_mst.wko_mst_pm_grp = prm_grp.prm_grp_grp_cd
					
					LEFT 
					OUTER 
					JOIN		emp_mst emp_mst1(NOLOCK)						
					ON			wko_mst.site_cd = emp_mst1.site_cd
					AND			wko_mst.wko_mst_originator = emp_mst1.emp_mst_empl_id
					
					
					LEFT 
					OUTER 
					JOIN		emp_mst emp_mst2(NOLOCK)						
					ON			wko_det.site_cd = emp_mst2.site_cd
					AND			wko_det.wko_det_assign_to = emp_mst2.emp_mst_empl_id
					
					
					LEFT 
					OUTER 
					JOIN		ast_grp (NOLOCK)
					ON			wko_mst.site_cd = ast_grp.site_cd
					AND			wko_mst.wko_mst_asset_group_code = ast_grp.ast_grp_grp_cd
					
					LEFT 
					OUTER 
					JOIN		ast_loc (NOLOCK)
					ON			wko_mst.site_cd = ast_loc.site_cd
					AND			wko_mst.wko_mst_asset_location = ast_loc.ast_loc_ast_loc


					LEFT 
					OUTER 
					JOIN		ast_lvl (NOLOCK)
					ON			wko_mst.site_cd = ast_lvl.site_cd
					AND			wko_mst.wko_mst_asset_level = ast_lvl.ast_lvl_ast_lvl
					
					LEFT 
					OUTER 
					JOIN		mst_war (NOLOCK)
					ON			wko_mst.site_cd = mst_war.site_cd
					AND			wko_mst.wko_mst_work_area = mst_war.mst_war_work_area

					
					LEFT 
					OUTER 
					JOIN		wrk_pri (NOLOCK)
					ON			wko_mst.site_cd = wrk_pri.site_cd
					AND			wko_mst.wko_mst_plan_priority = wrk_pri.wrk_pri_pri_cd

					LEFT 
					OUTER 
					JOIN		wrk_pri wrk_pri_2(NOLOCK)
					ON			wko_mst.site_cd = wrk_pri_2.site_cd
					AND			wko_mst.wko_mst_orig_priority = wrk_pri_2.wrk_pri_pri_cd

					LEFT 
					OUTER 
					JOIN		cf_cost_center (NOLOCK)
					ON			wko_mst.site_cd = cf_cost_center.site_cd
					AND			wko_mst.wko_mst_chg_costcenter = cf_cost_center.costcenter


					LEFT 
					OUTER 
					JOIN		wrk_flt (NOLOCK)
					ON			wko_mst.site_cd = wrk_flt.site_cd
					AND			wko_mst.wko_mst_flt_code = wrk_flt.wrk_flt_fault_cd
					
					LEFT 
					OUTER 
					JOIN		wrk_typ (NOLOCK)
					ON			wko_det.site_cd = wrk_typ.site_cd
					AND			wko_det.wko_det_work_type = wrk_typ.wrk_typ_typ_cd
				
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_1(NOLOCK)
					ON			wko_det.site_cd = cf_account_1.site_cd
					AND			wko_det.wko_det_laccount = cf_account_1.account
					
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_2(NOLOCK)
					ON			wko_det.site_cd = cf_account_2.site_cd
					AND			wko_det.wko_det_caccount = cf_account_2.account
					
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_3(NOLOCK)
					ON			wko_det.site_cd = cf_account_3.site_cd
					AND			wko_det.wko_det_maccount = cf_account_3.account
					
					
					LEFT 
					OUTER 
					JOIN		wko_ls7(NOLOCK)
					ON			wko_mst.site_cd = wko_ls7.site_cd
					AND			wko_mst.rowid = wko_ls7.mst_rowid
					AND			wko_det.site_cd = wko_ls7.site_cd
					AND			wko_det_assign_to = wko_ls7.wko_ls7_emp_id
					AND			wko_ls7.RowID = (SELECT MAX(rowid) FROM wko_ls7 (NOLOCK)
										 WHERE wko_ls7.site_cd = wko_mst.site_cd
										 AND   wko_ls7.mst_rowid = wko_mst.rowid
										 AND   wko_ls7.site_cd = wko_det.site_cd
										 AND   wko_ls7.wko_ls7_emp_id = wko_det.wko_det_assign_to)

			WHERE	( wko_mst.site_cd = '".$site_cd."' )".
					$where_wko_mst_pm_grp.
					$where_pm_grp_desc.
					$where_wko_mst_descs.
					$where_wko_mst_originator.
					$where_wko_mst_status.
					$where_wko_mst_work_area.
					$where_wko_mst_asset_location.
					$where_wko_mst_asset_level.
					$where_wko_det_assign_to.
					$where_wko_det_work_type.
					$where_org_date.
					$sts_typ_cd.
					$where_work_group.
					$where_wko_mst_type_g.
					$where_wko_mst_wo_no.")as X";
 

		//echo  $sql;

		$stmt_1 = sqlsrv_query( $conn, $sql_1);

		if( !$stmt_1 ) {
			
			 $error_message = "Error selecting table Preventive Type";
			 returnError($error_message);
			 die( print_r( sqlsrv_errors(), true));
			 
		}

		$json= array();

		do {
			
			while ($row = sqlsrv_fetch_array($stmt_1, SQLSRV_FETCH_ASSOC)) {		
			
			$json[] = $row;		
			
			}
			
		} while ( sqlsrv_next_result($stmt_1) );
	 
			sqlsrv_free_stmt( $stmt_1);			
			sqlsrv_close( $conn);	
	 
}else{
	
	If ($wko_mst_type == "C"){
		
		$sql_2="Select total_Count = SUM(X.ttl_count) from (
			Select 
			
			ttl_count= count(*)
							
			FROM 	wko_mst (NOLOCK)     			
	
					INNER JOIN wko_det (NOLOCK)
					ON		wko_mst.site_cd = wko_det.site_cd
					AND		wko_mst.rowid = wko_det.mst_rowid
					AND 	wko_mst_type  IN ('C')
					
					INNER JOIN	wrk_sts (NOLOCK)
					ON			wko_mst.site_cd = wrk_sts.site_cd
					AND			wko_mst.wko_mst_status = wrk_sts.wrk_sts_status
							
					LEFT 
					OUTER 
					JOIN		ast_mst (NOLOCK)
					ON			wko_mst.site_cd = ast_mst.site_cd
					AND			wko_mst.wko_mst_assetno = ast_mst.ast_mst_asset_no
					
					LEFT 
					OUTER 
					JOIN		emp_mst emp_mst1(NOLOCK)						
					ON			wko_mst.site_cd = emp_mst1.site_cd
					AND			wko_mst.wko_mst_originator = emp_mst1.emp_mst_empl_id
					
					
					LEFT 
					OUTER 
					JOIN		emp_mst emp_mst2(NOLOCK)						
					ON			wko_det.site_cd = emp_mst2.site_cd
					AND			wko_det.wko_det_assign_to = emp_mst2.emp_mst_empl_id
					
					
					LEFT 
					OUTER 
					JOIN		ast_grp (NOLOCK)
					ON			wko_mst.site_cd = ast_grp.site_cd
					AND			wko_mst.wko_mst_asset_group_code = ast_grp.ast_grp_grp_cd
					
					LEFT 
					OUTER 
					JOIN		ast_loc (NOLOCK)
					ON			wko_mst.site_cd = ast_loc.site_cd
					AND			wko_mst.wko_mst_asset_location = ast_loc.ast_loc_ast_loc


					LEFT 
					OUTER 
					JOIN		ast_lvl (NOLOCK)
					ON			wko_mst.site_cd = ast_lvl.site_cd
					AND			wko_mst.wko_mst_asset_level = ast_lvl.ast_lvl_ast_lvl
					
					LEFT 
					OUTER 
					JOIN		mst_war (NOLOCK)
					ON			wko_mst.site_cd = mst_war.site_cd
					AND			wko_mst.wko_mst_work_area = mst_war.mst_war_work_area

					
					LEFT 
					OUTER 
					JOIN		wrk_pri (NOLOCK)
					ON			wko_mst.site_cd = wrk_pri.site_cd
					AND			wko_mst.wko_mst_plan_priority = wrk_pri.wrk_pri_pri_cd

					LEFT 
					OUTER 
					JOIN		wrk_pri wrk_pri_2(NOLOCK)
					ON			wko_mst.site_cd = wrk_pri_2.site_cd
					AND			wko_mst.wko_mst_orig_priority = wrk_pri_2.wrk_pri_pri_cd

					LEFT 
					OUTER 
					JOIN		cf_cost_center (NOLOCK)
					ON			wko_mst.site_cd = cf_cost_center.site_cd
					AND			wko_mst.wko_mst_chg_costcenter = cf_cost_center.costcenter


					LEFT 
					OUTER 
					JOIN		wrk_flt (NOLOCK)
					ON			wko_mst.site_cd = wrk_flt.site_cd
					AND			wko_mst.wko_mst_flt_code = wrk_flt.wrk_flt_fault_cd
					
					LEFT 
					OUTER 
					JOIN		wrk_typ (NOLOCK)
					ON			wko_det.site_cd = wrk_typ.site_cd
					AND			wko_det.wko_det_work_type = wrk_typ.wrk_typ_typ_cd
				
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_1(NOLOCK)
					ON			wko_det.site_cd = cf_account_1.site_cd
					AND			wko_det.wko_det_laccount = cf_account_1.account
					
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_2(NOLOCK)
					ON			wko_det.site_cd = cf_account_2.site_cd
					AND			wko_det.wko_det_caccount = cf_account_2.account
					
					LEFT 
					OUTER 
					JOIN		cf_account cf_account_3(NOLOCK)
					ON			wko_det.site_cd = cf_account_3.site_cd
					AND			wko_det.wko_det_maccount = cf_account_3.account
					
					
					
					LEFT 
					OUTER 
					JOIN		wko_ls7(NOLOCK)
					ON			wko_mst.site_cd = wko_ls7.site_cd
					AND			wko_mst.rowid = wko_ls7.mst_rowid
					AND			wko_det.site_cd = wko_ls7.site_cd
					AND			wko_det_assign_to = wko_ls7.wko_ls7_emp_id
					AND			wko_ls7.RowID = (SELECT MAX(rowid) FROM wko_ls7 (NOLOCK)
										 WHERE wko_ls7.site_cd = wko_mst.site_cd
										 AND   wko_ls7.mst_rowid = wko_mst.rowid
										 AND   wko_ls7.site_cd = wko_det.site_cd
										 AND   wko_ls7.wko_ls7_emp_id = wko_det.wko_det_assign_to)
			

			WHERE		( wko_mst.site_cd = '".$site_cd."' )".
						$where_wko_mst_assetno.
						$where_asset_shortdesc.
						$where_wko_mst_descs.
						$where_wko_mst_originator.
						$where_wko_mst_status.
						$where_wko_mst_work_area.
						$where_wko_mst_asset_location.
						$where_wko_mst_asset_level.
						$where_wko_det_assign_to.
						$where_wko_det_work_type.
						$where_org_date.
						$sts_typ_cd.
						$where_work_group.
						$where_wko_mst_type.
						$where_wko_mst_wo_no.")as X";
 

		//echo  $sql;

		$stmt_2 = sqlsrv_query( $conn, $sql_2);

		if( !$stmt_2 ) {
			
			 $error_message = "Error selecting table Corrective Type";
			 returnError($error_message);
			 die( print_r( sqlsrv_errors(), true));
			 
		}

		$json= array();

		do {
			
			while ($row = sqlsrv_fetch_array($stmt_2, SQLSRV_FETCH_ASSOC)) {		
			
			$json[] = $row;		
			
			}
			
		} while ( sqlsrv_next_result($stmt_2) );
			
			sqlsrv_free_stmt( $stmt_2);			
			sqlsrv_close( $conn);	
			
		}else{

		$sql_3="Select total_Count = SUM(X.ttl_count) from (
				Select 
					ttl_count =count(*)								
									
					FROM 	wko_mst (NOLOCK)     			
			
							INNER JOIN wko_det (NOLOCK)
							ON		wko_mst.site_cd = wko_det.site_cd
							AND		wko_mst.rowid = wko_det.mst_rowid
							AND 	wko_mst_type  IN ('C', 'P')
							
							INNER JOIN	wrk_sts (NOLOCK)
							ON			wko_mst.site_cd = wrk_sts.site_cd
							AND			wko_mst.wko_mst_status = wrk_sts.wrk_sts_status
									
							LEFT 
							OUTER 
							JOIN		ast_mst (NOLOCK)
							ON			wko_mst.site_cd = ast_mst.site_cd
							AND			wko_mst.wko_mst_assetno = ast_mst.ast_mst_asset_no
							
							LEFT 
							OUTER 
							JOIN		emp_mst emp_mst1(NOLOCK)						
							ON			wko_mst.site_cd = emp_mst1.site_cd
							AND			wko_mst.wko_mst_originator = emp_mst1.emp_mst_empl_id
							
							
							LEFT 
							OUTER 
							JOIN		emp_mst emp_mst2(NOLOCK)						
							ON			wko_det.site_cd = emp_mst2.site_cd
							AND			wko_det.wko_det_assign_to = emp_mst2.emp_mst_empl_id
							
							
							LEFT 
							OUTER 
							JOIN		ast_grp (NOLOCK)
							ON			wko_mst.site_cd = ast_grp.site_cd
							AND			wko_mst.wko_mst_asset_group_code = ast_grp.ast_grp_grp_cd
							
							LEFT 
							OUTER 
							JOIN		ast_loc (NOLOCK)
							ON			wko_mst.site_cd = ast_loc.site_cd
							AND			wko_mst.wko_mst_asset_location = ast_loc.ast_loc_ast_loc


							LEFT 
							OUTER 
							JOIN		ast_lvl (NOLOCK)
							ON			wko_mst.site_cd = ast_lvl.site_cd
							AND			wko_mst.wko_mst_asset_level = ast_lvl.ast_lvl_ast_lvl
							
							LEFT 
							OUTER 
							JOIN		mst_war (NOLOCK)
							ON			wko_mst.site_cd = mst_war.site_cd
							AND			wko_mst.wko_mst_work_area = mst_war.mst_war_work_area

							
							LEFT 
							OUTER 
							JOIN		wrk_pri (NOLOCK)
							ON			wko_mst.site_cd = wrk_pri.site_cd
							AND			wko_mst.wko_mst_plan_priority = wrk_pri.wrk_pri_pri_cd

							LEFT 
							OUTER 
							JOIN		wrk_pri wrk_pri_2(NOLOCK)
							ON			wko_mst.site_cd = wrk_pri_2.site_cd
							AND			wko_mst.wko_mst_orig_priority = wrk_pri_2.wrk_pri_pri_cd

							LEFT 
							OUTER 
							JOIN		cf_cost_center (NOLOCK)
							ON			wko_mst.site_cd = cf_cost_center.site_cd
							AND			wko_mst.wko_mst_chg_costcenter = cf_cost_center.costcenter


							LEFT 
							OUTER 
							JOIN		wrk_flt (NOLOCK)
							ON			wko_mst.site_cd = wrk_flt.site_cd
							AND			wko_mst.wko_mst_flt_code = wrk_flt.wrk_flt_fault_cd
							
							LEFT 
							OUTER 
							JOIN		wrk_typ (NOLOCK)
							ON			wko_det.site_cd = wrk_typ.site_cd
							AND			wko_det.wko_det_work_type = wrk_typ.wrk_typ_typ_cd
						
						
						
							LEFT 
							OUTER 
							JOIN		cf_account cf_account_1(NOLOCK)
							ON			wko_det.site_cd = cf_account_1.site_cd
							AND			wko_det.wko_det_laccount = cf_account_1.account
							
							LEFT 
							OUTER 
							JOIN		cf_account cf_account_2(NOLOCK)
							ON			wko_det.site_cd = cf_account_2.site_cd
							AND			wko_det.wko_det_caccount = cf_account_2.account
							
							LEFT 
							OUTER 
							JOIN		cf_account cf_account_3(NOLOCK)
							ON			wko_det.site_cd = cf_account_3.site_cd
							AND			wko_det.wko_det_maccount = cf_account_3.account
							
							
							LEFT 
							OUTER 
							JOIN		wko_ls7(NOLOCK)
							ON			wko_mst.site_cd = wko_ls7.site_cd
							AND			wko_mst.rowid = wko_ls7.mst_rowid
							AND			wko_det.site_cd = wko_ls7.site_cd
							AND			wko_det_assign_to = wko_ls7.wko_ls7_emp_id
							AND			wko_ls7.RowID = (SELECT MAX(rowid) FROM wko_ls7 (NOLOCK)
												 WHERE wko_ls7.site_cd = wko_mst.site_cd
												 AND   wko_ls7.mst_rowid = wko_mst.rowid
												 AND   wko_ls7.site_cd = wko_det.site_cd
												 AND   wko_ls7.wko_ls7_emp_id = wko_det.wko_det_assign_to)

					WHERE	( wko_mst.site_cd = '".$site_cd."' )".
							$where_wko_mst_assetno.
							$where_asset_shortdesc.
							$where_wko_mst_descs.
							$where_wko_mst_originator.
							$where_wko_mst_status.
							$where_wko_mst_work_area.
							$where_wko_mst_asset_location.
							$where_wko_mst_asset_level.
							$where_wko_det_assign_to.
							$where_wko_det_work_type.
							$where_org_date.
							$sts_typ_cd.
							$where_work_group.
							$where_wko_mst_type.
							$where_wko_mst_wo_no."  ";
			
			If (!empty($asset_shortdesc)){
				$sql_3 = $sql_3."";
			}else{
				$sql_3 = $sql_3."UNION ALL
			
			Select 	

				ttl_count =count(*)											
									
					FROM 	wko_mst (NOLOCK)     			
			
							INNER JOIN wko_det (NOLOCK)
							ON		wko_mst.site_cd = wko_det.site_cd
							AND		wko_mst.rowid = wko_det.mst_rowid
							AND 	wko_mst_type  IN ('G')
							
							INNER JOIN	wrk_sts (NOLOCK)
							ON			wko_mst.site_cd = wrk_sts.site_cd
							AND			wko_mst.wko_mst_status = wrk_sts.wrk_sts_status
									
							LEFT 
							OUTER 
							JOIN		prm_grp (NOLOCK)
							ON			wko_mst.site_cd = prm_grp.site_cd
							AND			wko_mst.wko_mst_pm_grp = prm_grp.prm_grp_grp_cd
							
							LEFT 
							OUTER 
							JOIN		emp_mst emp_mst1(NOLOCK)						
							ON			wko_mst.site_cd = emp_mst1.site_cd
							AND			wko_mst.wko_mst_originator = emp_mst1.emp_mst_empl_id
							
							
							LEFT 
							OUTER 
							JOIN		emp_mst emp_mst2(NOLOCK)						
							ON			wko_det.site_cd = emp_mst2.site_cd
							AND			wko_det.wko_det_assign_to = emp_mst2.emp_mst_empl_id
							
							
							LEFT 
							OUTER 
							JOIN		ast_grp (NOLOCK)
							ON			wko_mst.site_cd = ast_grp.site_cd
							AND			wko_mst.wko_mst_asset_group_code = ast_grp.ast_grp_grp_cd
							
							LEFT 
							OUTER 
							JOIN		ast_loc (NOLOCK)
							ON			wko_mst.site_cd = ast_loc.site_cd
							AND			wko_mst.wko_mst_asset_location = ast_loc.ast_loc_ast_loc


							LEFT 
							OUTER 
							JOIN		ast_lvl (NOLOCK)
							ON			wko_mst.site_cd = ast_lvl.site_cd
							AND			wko_mst.wko_mst_asset_level = ast_lvl.ast_lvl_ast_lvl
							
							LEFT 
							OUTER 
							JOIN		mst_war (NOLOCK)
							ON			wko_mst.site_cd = mst_war.site_cd
							AND			wko_mst.wko_mst_work_area = mst_war.mst_war_work_area

							
							LEFT 
							OUTER 
							JOIN		wrk_pri (NOLOCK)
							ON			wko_mst.site_cd = wrk_pri.site_cd
							AND			wko_mst.wko_mst_plan_priority = wrk_pri.wrk_pri_pri_cd

							LEFT 
							OUTER 
							JOIN		wrk_pri wrk_pri_2(NOLOCK)
							ON			wko_mst.site_cd = wrk_pri_2.site_cd
							AND			wko_mst.wko_mst_orig_priority = wrk_pri_2.wrk_pri_pri_cd

							LEFT 
							OUTER 
							JOIN		cf_cost_center (NOLOCK)
							ON			wko_mst.site_cd = cf_cost_center.site_cd
							AND			wko_mst.wko_mst_chg_costcenter = cf_cost_center.costcenter


							LEFT 
							OUTER 
							JOIN		wrk_flt (NOLOCK)
							ON			wko_mst.site_cd = wrk_flt.site_cd
							AND			wko_mst.wko_mst_flt_code = wrk_flt.wrk_flt_fault_cd
							
							
							LEFT 
							OUTER 
							JOIN		wrk_typ (NOLOCK)
							ON			wko_det.site_cd = wrk_typ.site_cd
							AND			wko_det.wko_det_work_type = wrk_typ.wrk_typ_typ_cd
						
							LEFT 
							OUTER 
							JOIN		cf_account cf_account_1(NOLOCK)
							ON			wko_det.site_cd = cf_account_1.site_cd
							AND			wko_det.wko_det_laccount = cf_account_1.account
							
							LEFT 
							OUTER 
							JOIN		cf_account cf_account_2(NOLOCK)
							ON			wko_det.site_cd = cf_account_2.site_cd
							AND			wko_det.wko_det_caccount = cf_account_2.account
							
							LEFT 
							OUTER 
							JOIN		cf_account cf_account_3(NOLOCK)
							ON			wko_mst.site_cd = cf_account_3.site_cd
							AND			wko_det.wko_det_maccount = cf_account_3.account
							
							
							LEFT 
							OUTER 
							JOIN		wko_ls7(NOLOCK)
							ON			wko_mst.site_cd = wko_ls7.site_cd
							AND			wko_mst.rowid = wko_ls7.mst_rowid
							AND			wko_det.site_cd = wko_ls7.site_cd
							AND			wko_det_assign_to = wko_ls7.wko_ls7_emp_id
							AND			wko_ls7.RowID = (SELECT MAX(rowid) FROM wko_ls7 (NOLOCK)
												 WHERE wko_ls7.site_cd = wko_mst.site_cd
												 AND   wko_ls7.mst_rowid = wko_mst.rowid
												 AND   wko_ls7.site_cd = wko_det.site_cd
												 AND   wko_ls7.wko_ls7_emp_id = wko_det.wko_det_assign_to)

					WHERE		( wko_mst.site_cd = '".$site_cd."' )".
							$where_wko_mst_pm_grp.
							$where_pm_grp_desc.
							$where_wko_mst_descs.
							$where_wko_mst_originator.
							$where_wko_mst_status.
							$where_wko_mst_work_area.
							$where_wko_mst_asset_location.
							$where_wko_mst_asset_level.
							$where_wko_det_assign_to.
							$where_wko_det_work_type.
							$where_org_date.
							$sts_typ_cd.
							$where_work_group.
							$where_wko_mst_type.
							$where_wko_mst_wo_no.")as X";
			}
			
			
	 

			//echo  $sql;

			$stmt_3 = sqlsrv_query( $conn, $sql_3);

			if( !$stmt_3 ) {
				
				 $error_message = "Error selecting table All Type";
				 returnError($error_message);
				 die( print_r( sqlsrv_errors(), true));
				 
			}

			$json= array();

			do {
				 while ($row = sqlsrv_fetch_array($stmt_3, SQLSRV_FETCH_ASSOC)) {		
				 
					$json[] = $row;		
				
				 }
			} while ( sqlsrv_next_result($stmt_3) );
			sqlsrv_free_stmt( $stmt_3);		
			sqlsrv_close( $conn);	
	 
	 
	 }
 }	
 

 

if ($valid) {

	returnData($json);	
	
}


function returnData($json){
	$json1 = json_encode($json);
	//echo$json;
	 
	if(empty(json_decode($json1,1))) {
		 $returnData = array(
		'status' => 'SUCCESS',
		'message' => 'No Records found',		
		'data' => $json);
	}else{
		$returnData = array(
		'status' => 'SUCCESS',
		'message' => 'Successfully',		
		'data' => $json);
	}

	echo json_encode($returnData);
}

function returnError($error_message){
	$json = array();
	
	$returnData = array(
	'status' => 'ERROR',
	'message' => $error_message,
	'data' => $json);
	
	echo json_encode($returnData);
		
}


 
?>