0xV3NOMx
Linux ip-172-26-7-228 5.4.0-1103-aws #111~18.04.1-Ubuntu SMP Tue May 23 20:04:10 UTC 2023 x86_64



Your IP : 18.217.14.208


Current Path : /proc/thread-self/root/var/www/oasis/src/
Upload File :
Current File : //proc/thread-self/root/var/www/oasis/src/room_allotment.php

<?php
class room_allotment 
{
    
		function __construct($aobj_context)
		{
		session_start();
		$this->aobj_context=$aobj_context;
		$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
		$this->user_id=$_SESSION['user_id']	;		  
		$this->collcode=$_SESSION['collcode'];	
		$this->log_name = $_SESSION['usr'];			
		}
		 
		 	 
		function DisplayRoomAllotmentDetatils()
		{
			  
			 	$qp_code = ($this->aobj_context->mobj_data["qp_code"]);
			 	$ra_stu_cnt = ($this->aobj_context->mobj_data["ra_stu_cnt"]);
			 	$total_rooms = ($this->aobj_context->mobj_data["total_rooms"]);  
				 $ra_from = ($this->aobj_context->mobj_data["ra_from"]);
				 $ra_to = ($this->aobj_context->mobj_data["ra_to"]);

				$get_data="  SELECT count(FHALLNO) as total_rooms,  FHALLNO,FCAPACITY FROM room_allotment
							 WHERE FCOLLCODE='{$this->collcode}'  AND fhallno BETWEEN '{$ra_from}' AND '{$ra_to}'
							 AND FQPCODE='{$qp_code}' ";	

				 					
					$lobj_get_data = $this->aobj_context->mobj_db->GetAll($get_data);
					$total_rooms="";
					$existing_details=array();
					$cnt=1;
					foreach($lobj_get_data as $ak=>$av)
					{
						$total_rooms=$av['total_rooms'];
						$existing_details[$av['FHALLNO']]=$av['FCAPACITY'];
					}
 		$str_reval.="<br>";
		$str_reval.="<table style='padding:3px 4px 3px 3px;' class='tr_ventor_row' id='reval_table_data' width='50%' border='0' cellspacing='0' cellpadding='0'>";
		$str_reval.="<tr class='tr_bg1'>";
		$str_reval.="<td align='center' style=' font-size:12px; font-weight:bold; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; border-top:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Hall No</td>";
		$str_reval.="<td align='center' style=' font-size:12px; font-weight:bold; border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; border-top:1px solid #C5DBEC; border-bottom:1px solid #C5DBEC;'>Capacity</td>";
		$str_reval.="</tr>";
	 
		$k=0;
		$sl_no=1;
		$total=0;
		// var_dump($total_rooms, "anita");die();
		 
		for($i=1;$i<=$total_rooms;$i++)
		{
			$hall_no=str_pad($i, 3, "0", STR_PAD_LEFT);  
			 $val=$existing_details[$hall_no];
			 if(empty($val))
			 $val=0;
			 $total+= $val;
			if($k%2==0)
			$class='tbl_row1';
			else
			$class='tbl_row_alter1';
			$str_reval.="<tr>";		
			$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$hall_no}</td>";
			$str_reval.="<td class='{$class}' align='center' style=' font-size:12px; border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px; font-weight:bold;text-align:center;' ><input style='width:50px;text-align:right;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$val}' id='ra_input_{$hall_no}' /></td>"; 

			$str_reval.="</tr>";
			$sl_no++;
			$k++;
		}	
			$str_reval.="<tr>";		
				$str_reval.="<td class='{$class}' style=' font-size:12px; font-weight:bold;text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >Total</td>";
			 	$str_reval.="<td class='{$class}' align='center' style=' font-size:12px;font-weight:bold; border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;text-align:center;' ><input id='ra_total' style='border:none;width:50px;text-align:right;background:none; font-weight:bold;border:none;' value='{$total}' /> </td>"; 
 
				$str_reval.="</tr>";			
		$str_reval.="</table>";
	 
		$arr['html']=$str_reval;
		echo $this->aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success"); 	
		}
		function SaveRoomAllotment()
		{
			$qp_code = ($this->aobj_context->mobj_data["qp_code"]);
			$ra_stu_cnt = ($this->aobj_context->mobj_data["ra_stu_cnt"]);
			$total_rooms = ($this->aobj_context->mobj_data["total_rooms"]);
			$FSESSION = ($this->aobj_context->mobj_data["FSESSION"]);
			 $FDOE = ($this->aobj_context->mobj_data["FDOE"]);
			include_once($this->aobj_context->main_src."/src/json.php"); 
			$json = new Services_JSON();
			$lstr_param = stripslashes($this->aobj_context->mobj_data["hall_obj"]);
			$mobj_jsondata = $json->decode($lstr_param);
			$obj_arr_data = get_object_vars($mobj_jsondata);
			$del="delete from room_allotment   
						WHERE FCOLLCODE='{$this->collcode}'
						AND FQPCODE='{$qp_code}' ";
						
			$lobj_del = $this->aobj_context->mobj_db->Execute($del);
			$hall_arr=array();
			$cnt=1;
			foreach($obj_arr_data as $hall=>$capc)
			{
				$insert=" insert into room_allotment( FCOLLCODE,FQPCODE,FHALLNO,FCAPACITY,FLOGNAME,FLOGDATE,FDOE,FSESSION  )
							values (
							'{$this->collcode}','{$qp_code}' ,'{$hall}','{$capc}','{$this->log_name}',now(),'{$FDOE}','{$FSESSION}'
							)";
				$lobj_insert = $this->aobj_context->mobj_db->Execute($insert);	
				$hall_arr[$cnt][$hall]=$capc;
				$cnt++;
			 
			}
			 
		if($lobj_insert)
		{		
		$get_student_cnt ="SELECT cd.FREGNO,cd.FEXAMNO,cd.FDEGREE,cd.FSUBCODE
								FROM canddet cd INNER JOIN subject s ON s.fdegree = cd.fdegree 
								and s.fexamno = cd.fexamno and s.FSUBCODE=cd.FSUBCODE
								inner join candsum cs on cs.FREGNO=cd.FREGNO 
								WHERE cs.FCNTRCODE='{$this->collcode}' and TRIM(FQPCODE)='{$qp_code}' 
								AND FPRESENT='P' and ifnull(cd.fpassmth,'') = '' 
								AND IFNULL(cs.FRECPTDATE,'0000-00-00')<>'0000-00-00' order by cd.FREGNO";//and FPRESENT='P'  and ifnull(FRECPTDATE,'0000-00-00')<>='0000-00-00'
							
		 $lobj_get_student_cnt = $this->aobj_context->mobj_db->GetAll($get_student_cnt);
		
		 $cand_det_arr=array();
		 $c=1;
		 foreach($lobj_get_student_cnt as $ak=>$av)
		 {
			 $cand_det_arr[$c]['FREGNO']=$av['FREGNO'];
			 $cand_det_arr[$c]['FEXAMNO']=$av['FEXAMNO'];
			 $cand_det_arr[$c]['FDEGREE']=$av['FDEGREE'];
			 $cand_det_arr[$c]['FSUBCODE']=$av['FSUBCODE'];
			 $c++;
		 }
		  
		 $reg_no_arr=array();
		 $tot_nos=0;
		 for($i=1;$i<=count($hall_arr);$i++)
		 {
			$h_arr=$hall_arr[$i];
			foreach($h_arr as $hk=>$hv)
			{
			$hall=$hk;
			$capc=$hv;
			}
			if($i==1)
			{
			$reg_no_arr[$hall]['start']=1;
			$reg_no_arr[$hall]['end']=$capc;
			 $tot_nos+=$capc;
			}
			else
			{
			$reg_no_arr[$hall]['start']=$tot_nos+1;
			$reg_no_arr[$hall]['end']=$tot_nos+$capc;
			 $tot_nos+=$capc;
			}
		 }
		 foreach($reg_no_arr as $hallk =>$hallv)
		 {
			for($z=$hallv[start];$z<=$hallv['end'];$z++)
			{
				$FREGNO=$cand_det_arr[$z]['FREGNO']; 
				$FEXAMNO=$cand_det_arr[$z]['FEXAMNO']; 
				$FDEGREE=$cand_det_arr[$z]['FDEGREE']; 
				$FSUBCODE=$cand_det_arr[$z]['FSUBCODE']; 
				$update =" update canddet,candsum
							set canddet.FHALLNO='{$hallk}'
							where  
							canddet.FCOLLCODE = candsum.FCOLLCODE
							and canddet.FDEGREE = canddet.FDEGREE
							and canddet.FREGNO = candsum.FREGNO
							and candsum.FCNTRCODE='{$this->collcode}'
							and  canddet.FREGNO='{$FREGNO}'
							and  canddet.FEXAMNO='{$FEXAMNO}'
							and  canddet.FDEGREE='{$FDEGREE}'
							and  canddet.FSUBCODE='{$FSUBCODE}'
							";
			 	
				$lobj_update = $this->aobj_context->mobj_db->Execute($update);	
 		
			}
		 }
		  
		 
		$data="Update Successfully.";
		echo $this->aobj_context->mobj_output->ToJSONEnvelope($data,0,"success"); 				
		}
		else
		{
			$data="Failed";
				echo $this->aobj_context->mobj_output->ToJSONEnvelope($data,-1,"failure"); 		
		}
	}	 
 }
	
function DisplayRoomAllotmentDetatils($aobj_context)
{
    $class_obj=new room_allotment($aobj_context);
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 
	$class_obj->DisplayRoomAllotmentDetatils();
}function SaveRoomAllotment($aobj_context)
{
    $class_obj=new room_allotment($aobj_context);
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 
	$class_obj->SaveRoomAllotment();
} 

function getRoomdetails($aobj_context)
{
	session_start();
	$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC); 
	$collcode = $_SESSION['collcode'];
	
	$query = "select funivcode from control";
	$results = $aobj_context->mobj_db->GetRow($query);
	$funivcode = $results['funivcode'];
	
	$query = "select froomno as id, concat(froomname,' - ',fcapacity) as value from masroom 
			where ifnull(fdeleted,'') <>'T' and fcapacity > 0
			and  fcollcode = '{$collcode}' order by froomno ";

	$rst1 = $aobj_context->mobj_db->getAll($query);	//forder,

	$query = "SELECT DISTINCT dg.fdeggrp as id, dg.fdescpn as value 
	FROM deggrp dg 
	INNER JOIN degree d ON d.fdeggrp = dg.fdeggrp and d.fexamno ='A'
	INNER JOIN colldeg c ON c.fdegree = d.fdegree and ifnull(c.fdeleted,'') <> 'T'
	WHERE c.fcollcode='{$collcode}'";
	$rst2 = $aobj_context->mobj_db->getAll($query);

	if($funivcode == '012' || $funivcode == '052' || $funivcode == '062')
	{
		$query3 = "select distinct FREASONCD as id,concat(r.FDESCPN,' (',r.FREASONCD,')') as value 
		from reason r
		order by r.FREASONCD";

	}else
	{
		$cnd = "inner join colldeg cd on s.fdegree = cd.fdegree and ifnull(cd.fdeleted,'') <> 'T'
				where cd.fcollcode = '{$collcode}'";
		if($funivcode == '042'){
			$cnd = "";
		}
		$query3 = "select distinct s.fsession as id,concat(r.FDESCPN,' (',s.fsession,')') as value 
		from subject s inner join reason r on s.fsession = r.FREASONCD
		{$cnd}
		order by s.fsession";
	}
	
	$rst3 = 	$aobj_context->mobj_db->getAll($query3);

	$rst['room'] = $rst1;
	$rst['deggrp'] = $rst2;
	$rst['session'] = $rst3;
	echo $aobj_context->mobj_output->ToJSONEnvelope($rst,0,"success"); 

} 
?>