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 : 3.138.60.175
<?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->funivcode = $_SESSION['FUNIVCODE'];
$this->collcode = $_SESSION['collcode'];
$this->log_name = $_SESSION['usr'];
}
function DisplayRoomAllotmentDetatilsDatewise()
{
session_start();
ini_set('memory_limit','900M');
ini_set('max_execution_time',0);
$this->collcode=$_SESSION['collcode'];
$frm_date = ($this->aobj_context->mobj_data["frm_date"]);
$session = ($this->aobj_context->mobj_data["session"]);
$ra_from = ($this->aobj_context->mobj_data["ra_from"]);
$ra_to = ($this->aobj_context->mobj_data["ra_to"]);
$deggrp = ($this->aobj_context->mobj_data["deggrp"]);
$romm = ($this->aobj_context->mobj_data["romm"]);
$roomarray = [];
$roomalt = explode(",", $romm);
foreach($roomalt as $key => $val){
if($val == 'All'){
$data = "ALL";
}else{
$roomarr .= "'".$val."',";
}
}
$roomarray = substr_replace($roomarr ,"",-1);
if($data == 'ALL'){
$value = 'All';
}else{
$value = $roomarray;
}
if($value == 'All'){
$cond="";
}else{
$cond="and froomno in ($value)";
}
if($session== 'both')
{
$sectionvalue = "";
}
else
{
$sectionvalue = "and s.fsession like '{$session}%'";
}
$hall_no = '0';
//$query = "select distinct fqpcode from subject where fdoe = '2016-11-21' ";
//$$canddettmp = "tmp$canddet{$this->degree_code}{$this->college_code}";
if($_SESSION['fexamseparate'] == 'T')
{
$candsum = "examcandsum";
$canddet = "examcanddet";
}else
{
$candsum = "candsum";
$canddet = "canddet";
}
/*$query = "CREATE TEMPORARY TABLE IF NOT EXISTS {$$canddettmp} AS
select * from $canddet where fcollcode = '{$this->college_code}' and fdegree = '{$this->degree_code}'";
$this->aobj_context->mobj_db->execute($query);*/
/*$query = "CREATE TEMPORARY TABLE IF NOT EXISTS {$$candsumttmp} AS
select * from $candsum where FCNTRCODE = '{$this->collcode}'";
$this->aobj_context->mobj_db->execute($query);
*/
$query = "select * from collexam where
fcollcode = '{$this->collcode}'
and DATE_FORMAT(NOW(),'%Y-%m-%d')
BETWEEN DATE_FORMAT(frafrom,'%Y-%m-%d')
AND DATE_FORMAT(frato,'%Y-%m-%d')";
$student_exam_details = $this->aobj_context->mobj_db->GetRow($query);
if(count($student_exam_details) > 0)
{
}else
{
$arr = "Room Allotment Not Enabled";
echo $this->aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure");
return;
}
$mpcnd = "and ifnull(ab.fabstype,'') <> 'QpM'";
if($this->funivcode == '027' || $this->funivcode == '003' || $this->funivcode == '023' || $this->funivcode == '041' || $this->funivcode == '035' || $this->funivcode == '050' || $this->funivcode == '051' || $this->funivcode == '052')
$mpcnd = "";
if($this->funivcode == '050')
$orderby = "ORDER BY s.FQPCODE,s.fsession";
else
$orderby = "ORDER BY reg_cnt DESC,s.fsession,s.FQPCODE";
$query = "SELECT COUNT(DISTINCT cd.FREGNO) AS reg_cnt, s.FQPCODE,concat(s.fsubname,' - ',s.fssubname) as FQPCODE1,s.FDOE,
r.FDESCPN, 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 degree d on cd.fdegree = d.fdegree and cd.fexamno = d.fexamno
INNER JOIN $candsum cs ON cs.FREGNO=cd.FREGNO
LEFT JOIN reason r ON s.FSESSION = r.FREASONCD
left outer join attshort a on a.fdegree = cd.fdegree
and cd.fexamno = a.fexamno and a.fregno = cd.fregno and a.fsubcode = s.fcsubcode
and a.fyear = cd.fyear
and a.fexamtype = cd.fexamtype
left join absent ab on ab.fregno = cd.fregno and ab.fqpcode = s.fqpcode
WHERE s.fdoe = date_format(STR_TO_DATE('{$frm_date}', '%d/%m/%Y'),'%Y-%m-%d')
AND IFNULL(cd.fpassmth,'') = '' AND cd.FPRESENT='P' {$sectionvalue}
AND IFNULL(cs.FRECPTDATE,'0000-00-00')<>'0000-00-00' and cs.fcntrcode = '{$this->collcode}'
and ifnull(a.fregno,'') = '' and ifnull(s.fqpcode,'') <> ''
{$mpcnd}
and ifnull(cd.FTHPR,'') <> 'T'
and ifnull(s.fparentsub,'') <> 'T'
and INSTR(cs.fhtenable,cd.fexamno) >0
and d.fdeggrp = '{$deggrp}'
GROUP BY d.fdeggrp,s.FQPCODE
{$orderby}";
$results = $this->aobj_context->mobj_db->GetAll($query);
// var_dump($query);
// die();
// if($this->funivcode == '050')
// {
// var_dump($query);
// die();
// }
$query1 = "SELECT COUNT(DISTINCT cd.FREGNO) AS reg_cnt
FROM $canddet cd INNER JOIN subject s ON s.fdegree = cd.fdegree
AND s.fexamno = cd.fexamno AND s.FSUBCODE=cd.FSUBCODE
INNER join degree d on cd.fdegree = d.fdegree and cd.fexamno = d.fexamno
INNER JOIN {$candsum} cs ON cd.fcollcode = cs.fcollcode and cs.FREGNO=cd.FREGNO
LEFT JOIN reason r ON s.FSESSION = r.FREASONCD
left outer join attshort a on a.fdegree = cd.fdegree and cd.fexamno = a.fexamno and a.fregno = cd.fregno and a.fsubcode = s.fcsubcode
and a.fyear = cd.fyear
and a.fexamtype = cd.fexamtype
left join absent ab on ab.fregno = cd.fregno and ab.fqpcode = s.fqpcode
WHERE s.fdoe = date_format(STR_TO_DATE('{$frm_date}', '%d/%m/%Y'),'%Y-%m-%d')
AND IFNULL(cd.fpassmth,'') = '' AND cd.FPRESENT='P' {$sectionvalue}
AND IFNULL(cs.FRECPTDATE,'0000-00-00')<>'0000-00-00' and cs.fcntrcode = '{$this->collcode}'
and ifnull(a.fregno,'') = ''
$mpcnd
and INSTR(cs.fhtenable,cd.fexamno) >0
and d.fdeggrp = '{$deggrp}'
GROUP BY s.fdoe
order by d.fdeggrp";
$results1 = $this->aobj_context->mobj_db->GetRow($query1);
$reg_cnt = $results1['reg_cnt'];
$query1 = "select sum(fcapacity) as fcapacity from masroom where fcollcode = '{$this->collcode}'
$cond";
// var_dump($query1);
// die();
$results1 = $this->aobj_context->mobj_db->GetRow($query1);
$fcapacity = $results1['fcapacity'];
// if($this->funivcode == '050')
// {
// var_dump($fcapacity);
// var_dump($reg_cnt);
// die();
// }
if($reg_cnt > $fcapacity)
{
//$arr = "Insufficient Rooms for the allotment. Total Capacity : ".$fcapacity." Total Strength :".$reg_cnt;
$arr = "Total Capacity : ".$fcapacity." Total Strength : ".$reg_cnt." Insufficient rooms for the allotment. Please select sufficient rooms";
echo $this->aobj_context->mobj_output->ToJSONEnvelope($arr,-1,"failure");
}else
{
$str_reval.="<br>";
$str_reval.="<table class='tr_ventor_row' id='reval_table_data' width='95%' name = 'HALL' border='0' cellspacing='0' cellpadding='0'>";
$str_reval.="<tr class='tr_bg1'>";
$str_reval.="<td align='center' style='width:8%; 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;'>Block No</td>";
// To display room name 12/11/2016
$str_reval.="<td align='center' style='width:30%; 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;'>Room / Block Name</td>";
$str_reval.="<td align='center' style='width:8%;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;'>Block Capacity</td>";
$str_reval.="<td align='center' style='width:10%; 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;'>QP Code</td>";
$str_reval.="<td align='center' style='width:40%; 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;'>Subject Name</td>";
$str_reval.="<td align='center' style='width:8%; 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;'>Total</td>";
//$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;'>Capacity Remaing</td>";
$str_reval.="<td align='center' style='width:8%; 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;'>Alloted</td>";
$str_reval.="<td align='center' style='width:8%; 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;'>Remaining</td>";
$str_reval.="</tr>";
$cpacity = 0;
$studcount = 0;
$alloted = 0;
$remaing = 0;
$query2 ="SELECT GROUP_CONCAT(froomno,'->',froomname,'->',fcapacity) as roomname FROM masroom
WHERE fcollcode = '{$this->collcode}' $cond
group by froomno
order by froomno";
$rst2 = $this->aobj_context->mobj_db->GetAll($query2);
//
$i=0;
$k=1;
foreach($results as $ak=>$value)
{
$reg_cnt = $value['reg_cnt'];
if($reg_cnt > 0)
{
$studcount = intval($reg_cnt);
while($studcount>0)
{
$arry = explode("->",$rst2[$i]['roomname']);
$hall_no = $arry[0];
$froomname = $arry[1];
$capacity = $arry[2];
$hallcapacity = $arry[2];
if($remaing > 0)
{
$capacity = $remaing;
//var_dump($remaing);
}
/* $val=$existing_details[$hall_no];
$hallname = $rmname[$hall_no]; */
// To display room name 12/11/2016
if($capacity >= $studcount)
{
$remaing = $capacity - $studcount;
$alloted = $studcount;
if($remaing == 0 || $capacity === $studcount)
$i++;
$studcount = 0;
}
else
{
$studcount = $studcount - $capacity;
$alloted = $capacity;
$remaing = 0;
$i++;
}
if($k%2==0)
$class='tbl_row1';
else
$class='tbl_row_alter1';
// To break loop after max count 12/11/2016
//var_dump($ra_stu_cnt);
/* $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>";
// To display room name 12/11/2016
$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$froomname}</td>";
$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$hallcapacity}</td>";
$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$value['FQPCODE']}</td>";
$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$reg_cnt}</td>";
$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$remaing}</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='{$alloted}' id='ra_input_{$hall_no}' /></td>";
$str_reval.="<td class='{$class}' style=' font-size:12px; text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' >{$studcount}</td>";
$str_reval.="</tr>"; */
$str_reval.="<tr>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:center; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$hall_no}' name = 'HALL' disabled id='{$k}_hallno' /> </td>";
// To display room name 12/11/2016
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:left; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$froomname}' disabled id='{$k}_roomname' /> </td>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:center; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$hallcapacity}' disabled id='{$k}_capacity' /> </td>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:left; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$value['FQPCODE']}' disabled id='{$k}_qpcode' /> </td>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:left; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$value['FQPCODE1']}' disabled id='{$k}_subname' /> </td>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:center; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$reg_cnt}' disabled id='{$k}_count' />
<input style='width:70px;text-align:right;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='hidden' value='{$remaing}' disabled id='{$k}_remaing' /></td>";
//$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:2px;' > </td>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:0px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;'><input style='border:0px;box-sizing: border-box;text-align:center; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$alloted}' disabled id='{$k}_alloted' /></td>";
$str_reval.="<td class='{$class}' style='text-align:center; border-left:1px solid #C5DBEC; border-right:1px solid #C5DBEC; padding:0px;' ><input style='border:0px;box-sizing: border-box;text-align:center; width:100%;padding:2px;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='text' value='{$studcount}' disabled id='{$k}_notalloted' />
<input style='width:70px;text-align:right;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='hidden' value='{$value['FDOE']}' disabled id='{$k}_fdoe' />
<input style='width:70px;text-align:right;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='hidden' value='{$value['FDESCPN']}' disabled id='{$k}_sestion' />
<input style='width:70px;text-align:right;' onblur='CaclulateRaGrandTotal();' onkeypress='return AcceptNumbersOnly(event);' type='hidden' value='{$value['fsubcode']}' disabled id='{$k}_subcode' />
</td>";
$str_reval.="</tr>";
//
$k++;
/* $sl_no++;
$i++;
$pretotal = $total; */
}
}
}
$str_reval.="</table>";
$arr['html']=$str_reval;
echo $this->aobj_context->mobj_output->ToJSONEnvelope($arr,0,"success");
return;
}
}
function SaveRoomAllotmentDatewise()
{
ini_set('memory_limit','900M');
ini_set('max_execution_time',0);
include_once($this->aobj_context->main_src."/src/json.php");
$json = new Services_JSON();
$hall_arr = stripslashes($this->aobj_context->mobj_data["hall_arr"]);
$deggrp = stripslashes($this->aobj_context->mobj_data["faculty"]);
$mobj_jsondata = $json->decode($hall_arr);
$hall_arr = get_object_vars($mobj_jsondata);
$i = 0;
$oldqp = '';
$newqp = '';
$j = 0;
if($_SESSION['fexamseparate'] == 'T')
{
$candsum = "examcandsum";
$canddet = "examcanddet";
}else
{
$candsum = "candsum";
$canddet = "canddet";
}
/*
$query = "CREATE TEMPORARY TABLE IF NOT EXISTS {$$canddettmp} AS
select cd.* from $canddet cd inner join $candsum cs on cd.fcollcode = cs.fcollcode
and cd.fdegree = cs.fdegree and cd.fregno = cs.fregno where
cs.FCNTRCODE = '{$this->collcode}'";
$this->aobj_context->mobj_db->execute($query);
$query = "CREATE TEMPORARY TABLE IF NOT EXISTS {$$candsumttmp} AS
select * from $candsum where FCNTRCODE = '{$this->collcode}'";
$this->aobj_context->mobj_db->execute($query);*/
$mpcnd = "and ifnull(ab.fabstype,'') <> 'QpM'";
if($this->funivcode == '027' || $this->funivcode == '003' || $this->funivcode == '023' || $this->funivcode == '041' || $this->funivcode == '035' || $this->funivcode == '050' || $this->funivcode == '008' || $this->funivcode == '052' || $this->funivcode == '051')
$mpcnd = "";
if($this->funivcode == '050')
$orderby = "ORDER BY s.fsession,s.FQPCODE,s.fsession";
else
$orderby = "ORDER BY reg_cnt DESC,s.fsession,s.FQPCODE";
for($k=1;$k<=count($hall_arr);$k++)
{
$newqp = $hall_arr[$k]->qpcode;
if($newqp != $oldqp)
{
// $query = "select distinct fdeggrp from degree d inner join subject s on
// d.fdegree = s.fdegree
// and d.fexamno = s.fexamno where s.fqpcode = '{$hall_arr[$k]->qpcode}'";
// $results = $this->aobj_context->mobj_db->GetRow($query);
// $deggrp = $results['fdeggrp'];
$i = 0;
if($this->funivcode == '046')
{
$order = "st.fayear,cd.FREGNO";
}
else
{
$order = "cd.fregno";
}
$query1 = "SET SESSION group_concat_max_len=10000000";
$results = $this->aobj_context->mobj_db->Execute($query1);
if($deggrp == 'BED' && ($this->funivcode == '027' || $this->funivcode == '026'))
{
$query = "SELECT s.fqpcode, group_concat(distinct concat(\"'\",concat(cd.fdegree,cd.fsubcode,cd.FREGNO),\"'\") order by st.fname) as 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.FCOLLCODE = cd.FCOLLCODE and cs.fdegree = cd.fdegree and cs.FREGNO=cd.FREGNO
INNER join degree d on cd.fdegree = d.fdegree and cd.fexamno = d.fexamno
inner join student st on cs.fregno = st.fregno and
cs.fdegree = st.fdegree and cs.fcollcode = st.fcollcode
left join attshort a on a.fdegree = cd.fdegree and cd.fexamno = a.fexamno and a.fregno = cd.fregno
and left(a.fsubcode,4) = cd.fsubcode
and a.fyear = cd.fyear
and a.fexamtype = cd.fexamtype
left join absent ab on ab.fregno = cd.fregno
WHERE cs.FCNTRCODE='{$this->collcode}' AND TRIM(s.FQPCODE)='{$hall_arr[$k]->qpcode}'
AND FPRESENT='P' AND IFNULL(cd.fpassmth,'') = ''
and ifnull(a.fregno,'') = '' and ifnull(cd.FTHPR,'') <> 'T'
and d.fdeggrp = '{$deggrp}'
{$mpcnd}
AND IFNULL(cs.FRECPTDATE,'0000-00-00')<>'0000-00-00'
group by s.fqpcode";
//var_dump($query);
}else
{
$query = "SELECT s.fqpcode, group_concat(distinct concat(\"'\",concat(cd.fdegree,cd.fsubcode,cd.FREGNO),\"'\") order by {$order}) as 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.FCOLLCODE = cd.FCOLLCODE and cs.FREGNO=cd.FREGNO
inner join student st on cs.fregno = st.fregno and st.fdegree = cs.fdegree
INNER join degree d on cd.fdegree = d.fdegree and cd.fexamno = d.fexamno
left join attshort a on a.fdegree = cd.fdegree and cd.fexamno = a.fexamno and a.fregno = cd.fregno and left(a.fsubcode,4) = cd.fsubcode
and a.fyear = cd.fyear
and a.fexamtype = cd.fexamtype
left join absent ab on ab.fregno = cd.fregno
WHERE cs.FCNTRCODE='{$this->collcode}' AND TRIM(s.FQPCODE)='{$hall_arr[$k]->qpcode}'
AND FPRESENT='P' AND IFNULL(cd.fpassmth,'') = ''
and ifnull(a.fregno,'') = '' and ifnull(cd.FTHPR,'') <> 'T'
and INSTR(cs.fhtenable,cd.fexamno) >0
and d.fdeggrp = '{$deggrp}'
{$mpcnd}
AND IFNULL(cs.FRECPTDATE,'0000-00-00')<>'0000-00-00'
group by s.fqpcode";
// var_dump($query);
// die();
}
$results = $this->aobj_context->mobj_db->GetRow($query);
}
if($hall_arr[$j]->remaing > 0)
{
$hall_arr[$k]->capacity = $hall_arr[$j]->remaing;
}
/*$insert = " insert into room_allotment(FCOLLCODE,FQPCODE,FHALLNO,FCAPACITY,FLOGNAME,FLOGDATE,FDOE,FSESSION,FORDER )
values ('{$this->collcode}','{$hall_arr[$k]->qpcode}' ,'{$hall_arr[$k]->hallno}','{$hall_arr[$k]->alloted}','{$this->log_name}',now(),'{$hall_arr[$k]->fdoe}','{$hall_arr[$k]->sestion}','{$k}')";
$lobj_insert = $this->aobj_context->mobj_db->Execute($insert);
*/
//var_dump($insert);
$insert = " insert into room_allotment(FCOLLCODE,FQPCODE,FHALLNO,FCAPACITY,FLOGNAME,FLOGDATE,FDOE,FSESSION,FORDER )
values ('{$this->collcode}','{$hall_arr[$k]->qpcode}' ,'{$hall_arr[$k]->hallno}','{$hall_arr[$k]->alloted}','{$this->log_name}',now(),'{$hall_arr[$k]->fdoe}','{$hall_arr[$k]->sestion}','{$k}')
ON DUPLICATE KEY UPDATE
FCOLLCODE = '{$this->collcode}',
FQPCODE = '{$hall_arr[$k]->qpcode}',
FHALLNO = '{$hall_arr[$k]->hallno}',
FCAPACITY = '{$hall_arr[$k]->alloted}',
FLOGNAME = '{$this->log_name}',
FLOGDATE = now(),
FDOE = '{$hall_arr[$k]->fdoe}',
FSESSION = '{$hall_arr[$k]->sestion}',
FORDER = '{$k}'";
$lobj_insert = $this->aobj_context->mobj_db->Execute($insert);
$fregno = explode(',',$results['fregno']);
$FSUBCODE = $results['fqpcode'];
//var_dump("i = ".$i."hall_arr[k]->capacity".$hall_arr[$k]->capacity);
$regnoin = array_slice($fregno,$i,$hall_arr[$k]->capacity);
$regnoin = implode(',',$regnoin);
//var_dump($hall_arr[$k]);
//var_dump($hall_arr[$k]->hallno.'room'.$regnoin);
if($regnoin !='')
{
$update = "update $canddet,$candsum
set $canddet.FHALLNO='{$hall_arr[$k]->hallno}'
where
$canddet.FCOLLCODE = $candsum.FCOLLCODE
and $canddet.FREGNO = $candsum.FREGNO
and $candsum.FCNTRCODE='{$this->collcode}'
and INSTR($candsum.fhtenable,$canddet.fexamno) >0
and concat($canddet.fdegree,$canddet.fsubcode,$canddet.FREGNO) in({$regnoin})";
$lobj_update = $this->aobj_context->mobj_db->Execute($update);
}
$i = $i+$hall_arr[$k]->capacity;
$oldqp = $hall_arr[$k]->qpcode;
$j++;
}
if($lobj_update)
{
// var_dump($hall_arr);
$query = "delete from anscapt where fdoe = '{$hall_arr[1]->fdoe}' and fcntrcode = '{$this->collcode}'
and ifnull(fansbookno,'') = ''";
$lobj_update = $this->aobj_context->mobj_db->Execute($query);
// var_dump($lobj_update);
$query = "insert into anscapt(fregno, fdegree, fqpcode, fpresent, fyear, fexamtype, fdoe, fsession, fcntrcode, froomno)
select a.fregno, a.fdegree, s.fqpcode, a.fpresent, a.fyear, a.fexamtype, s.fdoe, s.fsession, b.fcntrcode,
a.fhallno from $canddet a inner join $candsum b on a.fcollcode = b.fcollcode
and a.fregno = b.fregno inner join subject s on a.fdegree = s.fdegree and a.fexamno = s.fexamno
and a.fsubcode = s.fsubcode
and INSTR(b.fhtenable,a.fexamno) >0
where ifnull(b.frecptdate,'') <> '' and ifnull(a.fpresent,'') = 'P' and ifnull(fpassmth,'') = ''
and fdoe = '{$hall_arr[1]->fdoe}' and b.fcntrcode = '{$this->collcode}'";
$lobj_update = $this->aobj_context->mobj_db->Execute($query);
// var_dump($lobj_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 DisplayRoomAllotmentDetatilsDatewise($aobj_context)
{
$class_obj=new room_allotment($aobj_context);
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
$class_obj->DisplayRoomAllotmentDetatilsDatewise();
}
function SaveRoomAllotmentDatewise($aobj_context)
{
$class_obj=new room_allotment($aobj_context);
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
$class_obj->SaveRoomAllotmentDatewise();
}
function getRoomdetails($aobj_context)
{
session_start();
$aobj_context->mobj_db->SetFetchMode(ADODB_FETCH_ASSOC);
$collcode = $_SESSION['collcode'];
$query = "select froomno as id, froomname as value from masroom
where ifnull(fdeleted,'') <>'T' and fcollcode = '{$collcode}' order by froomno ";
//var_dump($query);die();
$rst = $aobj_context->mobj_db->getAll($query); //forder,
echo $aobj_context->mobj_output->ToJSONEnvelope($rst,0,"success");
}
?>
|