Viewing file: grade.php (70.45 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php include("rg_controller.php"); class grade extends Rg_controller {
protected $sess_prsUsId; protected $sess_prsItId;
function __construct() { parent::__construct(); if(strpos($this->config->item('rg_wg_grade'), $this->session->userdata('UsWgID')) === false) { redirect("logout"); }
$personId = $this->session->userdata('UsPsCode'); $this->sess_prsItId = 1; $this->sess_prsUsId = $personId; if(substr($personId, 0, 5)=='psout') { $this->sess_prsItId = 2; $this->sess_prsUsId = substr($personId, 5); } }
//ส่งเกรด function showCrsSendGrd() { $this->load->model($this->config->item("rg_folder").'mo_rg_termconfig','tmc'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$acY = $this->session->userdata('acY'); $tmId = $this->session->userdata('tmId'); $this->contents['acY'] = $acY; echo $this->contents['tmId'] = $tmId; $this->contents['view'] = 's'; if (!isset($this->contents['tc'])) { $this->contents['tc'] = ''; }
/* $grp_rs_tmc เก็บตัวแปร array ที่ใช้ในส่วนของ group by */ $this->contents['rs_tmc'] = $this->tmc->get_optionsGroupAcY('');
/* $ord_rs_tm เก็บตัวแปร array ที่ใช้ในส่วนของ order by */ $ord_rs_tm = array('tmName' => 'ASC'); $this->contents['rs_tm'] = $this->tm->get_options('', $ord_rs_tm);
$this->output($this->config->item("rg_folder")."v_showCourseSendGrade"); }
function tc_showCrsSendGrd() { $this->load->model($this->config->item("rg_folder").'mo_rg_person','prs'); $this->load->model($this->config->item("rg_folder").'mo_rg_acadconfig','ac'); $this->load->model($this->config->item("rg_folder").'mo_rg_schedule','sd'); $this->load->model($this->config->item("rg_folder").'mo_rg_termconfig','tmc'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$personId = $this->session->userdata('UsPsCode'); $acY_R = $this->session->userdata('acY_R'); $tmId_R = $this->session->userdata('tmId_R');
$con_qu_prs = array('prsUsId' => $this->sess_prsUsId, 'prsItId' => $this->sess_prsItId); $qu_prs = $this->prs->qryPrs($con_qu_prs);
if ($qu_prs->num_rows()) { $this->contents['tc'] = 'tc_';
$qu_ac = $this->ac->qryAc();
$qu_sd = $this->sd->qrySdByAcYTmIdSendGrDate($acY_R, $tmId_R, getNowDate()); if (($qu_ac->row()->acNoLockT == 'T') || $qu_sd->num_rows()) { } else { $this->contents['err_msg'] = "ไม่สามารถดำเนินการส่งเกรดได้<br />เนื่องจากไม่อยู่ในช่วงส่งเกรด"; }
$this->showCrsSendGrd(); } else { $msg = "ท่านไม่มีสิทธิ์ในเมนูนี้"; $this->session->set_flashdata('msg', $msg); redirect($this->config->item("rg_folder")."msg/err_msg"); } }
function showCrs($acY, $tmId, $view) { $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_course','crs'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopenfor','cof'); $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur'); $this->load->model($this->config->item("rg_folder").'mo_rg_config','cfg');
$data['tc'] = ''; $data['flagSendGr'] = 1; $i = 0; $arr = array(); if ($view == 's') { $rs_rd = $this->rd->qryRdByAcYTmIdGroupCurIdSyIdCrsId($acY, $tmId); } else { $rs_rd = $this->rd->qryRdByAcYTmIdGroupCoId($acY, $tmId); }
foreach ($rs_rd->result() as $row_rd) { $clIdStr = ''; $sumEnrollSeat = 0; $flagSomeSend = 0; $flagAllSend = 1; $this->co->coId = $row_rd->rdCoId; $qu_co = $this->co->get_by_key(); $row_co1 = $qu_co->row();
if ($view == 's') { $k = 0; $ord_rs_co = array('CAST(coSection AS SIGNED)' => 'ASC'); if (is_null($row_co1->coCurId)) { $con_rs_co = array('coCurId' => 'NULL', 'coAcY' => $row_co1->coAcY, 'coSyId' => $row_co1->coSyId, 'coTmId' => $row_co1->coTmId, 'coCrsId' => $row_co1->coCrsId ); $rs_co = $this->co->qryCo($con_rs_co, $ord_rs_co); } else { $con_rs_co = array('coCurId' => $row_co1->coCurId, 'coAcY' => $row_co1->coAcY, 'coSyId' => $row_co1->coSyId, 'coTmId' => $row_co1->coTmId, 'coCrsId' => $row_co1->coCrsId ); $rs_co = $this->co->qryCo($con_rs_co, $ord_rs_co); } foreach ($rs_co->result() as $row_co2) { if ($k == 0) { $clIdStr .= $row_co2->coId; } else { $clIdStr .= ','.$row_co2->coId; } $sumEnrollSeat += $row_co2->coNumSeatReg; if ($row_co2->coSendGradeStatus == 'Y') { $flagSomeSend = 1; } else { $flagAllSend = 0; }
$k++; } } else { $clIdStr = $row_rd->rdCoId; }
// หาหลักสูตรที่เรียนรายวิชานี้ $pgNames = ''; if (is_null($row_co1->coCurId)) { $k = 0; $con_rs_cof = array('cofCoId' => $row_co1->coId); $rs_cof = $this->cof->qryCof($con_rs_cof); foreach ($rs_cof->result() as $row_cof) { $this->cur->curId = $row_cof->cofCurId; $qu_cur = $this->cur->get_by_key(); if ($k == 0) { $pgNames = $qu_cur->row()->curName; } else { $pgNames .= '<br /> '.$qu_cur->row()->curName; }
$k++; } } else { $this->cur->curId = $row_co1->coCurId; $qu_cur = $this->cur->get_by_key();
$pgNames = $qu_cur->row()->curName; }
$this->crs->crsId = $row_co1->coCrsId;
$arr[$i]['view'] = $view; $arr[$i]['crs'] = $this->crs->get_by_key(); $arr[$i]['co'] = $this->co->get_by_key(); $arr[$i]['pgNames'] = $pgNames; $arr[$i]['clIdStr'] = $clIdStr; $arr[$i]['sumEnrollSeat'] = $sumEnrollSeat; $arr[$i]['flagSomeSend'] = $flagSomeSend; $arr[$i]['flagAllSend'] = $flagAllSend;
$i++; }
$data['rs'] = $arr; $data['qu_cfg'] = $this->cfg->qryCfg();
echo $this->load->view($this->config->item("rg_folder")."v_showCourseSendGradeRow", $data, TRUE); }
function tc_showCrs($acY, $tmId, $view) { $this->load->model($this->config->item("rg_folder").'mo_rg_acadconfig','ac'); $this->load->model($this->config->item("rg_folder").'mo_rg_schedule','sd'); $this->load->model($this->config->item("rg_folder").'mo_rg_person','prs'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_course','crs'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopenfor','cof'); $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur'); $this->load->model($this->config->item("rg_folder").'mo_rg_config','cfg');
$acY_R = $this->session->userdata('acY_R'); $tmId_R = $this->session->userdata('tmId_R'); $personId = $this->session->userdata('UsPsCode');
$data['tc'] = 'tc_';
$qu_ac = $this->ac->qryAc();
$qu_sd = $this->sd->qrySdByAcYTmIdSendGrDate($acY_R, $tmId_R, getNowDate()); if (($qu_ac->row()->acNoLockT == 'T') || $qu_sd->num_rows()) { $data['flagSendGr'] = 1; } else { $data['flagSendGr'] = 0; }
$con_qu_prs = array('prsUsId' => $this->sess_prsUsId, 'prsItId' => $this->sess_prsItId); $qu_prs = $this->prs->qryPrs($con_qu_prs); $row_prs = $qu_prs->row();
$i = 0; $arr = array(); if ($view == 's') { $rs_rd = $this->rd->qryRdByAcYTmIdGroupCurIdSyIdCrsId($acY, $tmId); } else { $rs_rd = $this->rd->qryRdByAcYTmIdGroupCoId($acY, $tmId); }
foreach ($rs_rd->result() as $row_rd) { $clIdStr = ''; $sumEnrollSeat = 0; $flagSomeSend = 0; $flagAllSend = 1; $this->co->coId = $row_rd->rdCoId; $qu_co = $this->co->get_by_key(); $row_co1 = $qu_co->row();
if ($view == 's') { $k = 0; $ord_rs_co = array('CAST(coSection AS SIGNED)' => 'ASC'); if (is_null($row_co1->coCurId)) { $con_rs_co = array('coCurId' => 'NULL', 'coAcY' => $row_co1->coAcY, 'coSyId' => $row_co1->coSyId, 'coTmId' => $row_co1->coTmId, 'coCrsId' => $row_co1->coCrsId ); $rs_co = $this->co->qryCo($con_rs_co, $ord_rs_co); } else { $con_rs_co = array('coCurId' => $row_co1->coCurId, 'coAcY' => $row_co1->coAcY, 'coSyId' => $row_co1->coSyId, 'coTmId' => $row_co1->coTmId, 'coCrsId' => $row_co1->coCrsId ); $rs_co = $this->co->qryCo($con_rs_co, $ord_rs_co); }
foreach ($rs_co->result() as $row_co2) { if ($k == 0) { $clIdStr .= $row_co2->coId; } else { $clIdStr .= ','.$row_co2->coId; } $sumEnrollSeat += $row_co2->coNumSeatReg; if ($row_co2->coSendGradeStatus == 'Y') { $flagSomeSend = 1; } else { $flagAllSend = 0; }
$k++; } } else { $clIdStr = $row_rd->rdCoId; }
$flagIsNull = 0; $rs_co = $this->co->qryCoByClIdStrPrsIdIsNull($clIdStr); if ($rs_co->num_rows()) { $flagIsNull = 1; }
$flagNotOfId = 0; $rs_co = $this->co->qryCoByClIdStrNotPrsId($clIdStr, $row_prs->prsId); if ($rs_co->num_rows()) { $flagNotOfId = 1; }
if (!$flagIsNull && !$flagNotOfId) { // หาหลักสูตรที่เรียนรายวิชานี้ if (is_null($row_co1->coCurId)) { $k = 0; $con_rs_cof = array('cofCoId' => $row_co1->coId); $rs_cof = $this->cof->qryCof($con_rs_cof); foreach ($rs_cof->result() as $row_cof) { $this->cur->curId = $row_cof->cofCurId; $qu_cur = $this->cur->get_by_key(); if ($k == 0) { $pgNames = $qu_cur->row()->curName; } else { $pgNames .= '<br /> '.$qu_cur->row()->curName; }
$k++; } } else { $this->cur->curId = $row_co1->coCurId; $qu_cur = $this->cur->get_by_key();
$pgNames = $qu_cur->row()->curName; }
$this->crs->crsId = $row_co1->coCrsId;
$arr[$i]['view'] = $view; $arr[$i]['crs'] = $this->crs->get_by_key(); $arr[$i]['co'] = $this->co->get_by_key(); $arr[$i]['pgNames'] = $pgNames; $arr[$i]['clIdStr'] = $clIdStr; $arr[$i]['sumEnrollSeat'] = $sumEnrollSeat; $arr[$i]['flagSomeSend'] = $flagSomeSend; $arr[$i]['flagAllSend'] = $flagAllSend;
$i++; } }
$data['rs'] = $arr; $data['qu_cfg'] = $this->cfg->qryCfg();
echo $this->load->view($this->config->item("rg_folder")."v_showCourseSendGradeRow", $data, TRUE); }
function addSendGrade($confirm=0) { $this->load->model($this->config->item("rg_folder").'mo_rg_person','prs'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_timetable','tt'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_allowsendgrade','asg'); $this->load->model($this->config->item("rg_folder").'mo_rg_registfee','rf'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd');
$coId = $this->input->post('coId'); $clIdStr = $this->input->post('clIdStr'); $view = $this->input->post('view'); $tc = $this->input->post('tc');
$this->contents['coId'] = $coId; $this->contents['clIdStr'] = $clIdStr; $this->contents['view'] = $view; $this->contents['tc'] = $tc;
if ($tc) { $personId = $this->session->userdata('UsPsCode');
$con_qu_prs = array('prsUsId' => $this->sess_prsUsId, 'prsItId' => $this->sess_prsItId); $qu_prs = $this->prs->qryPrs($con_qu_prs); $row_prs = $qu_prs->row();
$flagIsNull = 0; $qu_co = $this->co->qryCoByClIdStrPrsIdIsNull($clIdStr); if ($qu_co->num_rows()) { $flagIsNull = 1; }
$flagNotOfId = 0; $qu_co = $this->co->qryCoByClIdStrNotPrsId($clIdStr, $row_prs->prsId); if ($qu_co->num_rows()) { $flagNotOfId = 1; }
if ($flagIsNull || $flagNotOfId) { $msg = "ไม่สามารถบันทึกเกรดนักศึกษาได้<br />เนื่องจากท่านไม่ใช่อาจารย์ผู้รับผิดชอบส่งเกรดรายวิชานี้"; $this->session->set_flashdata('msg', $msg); redirect($this->config->item('rg_folder').'msg/err_msg'); } }
$con_qu_co = array('coId' => $coId); $this->contents['qu_co'] = $this->co->qryCoJoinCrs($con_qu_co);
$this->contents['qu_tt'] = $this->tt->qryTeacher($clIdStr);
$this->co->coId = $coId; $qu_co = $this->co->get_by_key(); $row_co = $qu_co->row(); $i = 0; $arr = array(); $rs_rd = $this->rd->qryRdByClIdStrAcYTmId($clIdStr, $row_co->coAcY, $row_co->coTmId);
foreach ($rs_rd->result() as $row_rd) { $con_qu_std = array('stdCode' => $row_rd->stdCode); $qu_std = $this->std->qryStdJoinPfCur($con_qu_std);
$row_std = $qu_std->row();
$this->asg->asgStdId = $row_std->stdId; $this->asg->asgTmId = $row_co->coTmId; $this->asg->asgAcY = $row_co->coAcY; $qu_asg = $this->asg->get_by_key();
$con_qu_rf = array('rfStdId' => $row_std->stdId, 'rfAcY' => $row_co->coAcY, 'rfSyId' => $row_std->stdSyId, 'rfTmId' => $row_co->coTmId ); $qu_rf = $this->rf->getSumBalance($con_qu_rf); $clr = 0; if ($qu_rf && $qu_asg->num_rows()) { $clr = 1; }
$disabled = ""; if ($qu_rf && ($qu_asg->num_rows() == 0)) { $disabled = "disabled"; }
$arr[$i]['clr'] = $clr; $arr[$i]['disabled'] = $disabled; $arr[$i]['qu_rf'] = $qu_rf; $arr[$i]['qu_std'] = $this->std->qryStdJoinPf($con_qu_std); $arr[$i]['rdCoId'] = $row_rd->rdCoId; $arr[$i]['rdGrade'] = $row_rd->rdGrade;
$con_rs_grd = array('grdGtpId' => $row_std->curGtpId); $arr[$i]['rs_grd'] = $this->grd->get_options($con_rs_grd, "", "", 'y');
$i++; }
$cnt_grd = 0; $grd = array(); if (isset($row_std)) { $rs_grd = $this->grd->qryGtpId($row_std->curGtpId); if($rs_grd->num_rows()) { foreach($rs_grd->result() as $row_grd) { $grd[$cnt_grd]['grade'] = $row_grd->grdGrade; $grd[$cnt_grd]['sum'] = $this->rd->getCountStdIdByGrade($clIdStr, $row_co->coAcY, $row_co->coTmId, $row_grd->grdGrade); $cnt_grd++; } } }
$this->contents['grd'] = $grd; $this->contents['rs'] = $arr;
if ($confirm) { $disabled_btnPrint = 1; $disabled_btnConfirm = 0; if ($confirm == 1) { $rs_rd = $this->rd->qryRdByClIdStrGradeIsEmpty($clIdStr); if ($rs_rd->num_rows()) { $disabled_btnConfirm = 1; } } else if ($confirm == 2) { $disabled_btnPrint = 0; $disabled_btnConfirm = 1; } $this->contents['disabled_btnPrint'] = $disabled_btnPrint; $this->contents['disabled_btnConfirm'] = $disabled_btnConfirm; $this->output($this->config->item("rg_folder")."v_showAfterSendGrade"); } else { $this->output($this->config->item("rg_folder")."v_addSendGrade"); } }
function addGradeTextarea() { $this->load->model($this->config->item("rg_folder").'mo_rg_person','prs'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_timetable','tt'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd');
$coId = $this->input->post('coId'); $clIdStr = $this->input->post('clIdStr'); $view = $this->input->post('view'); $tc = $this->input->post('tc');
$this->contents['coId'] = $coId; $this->contents['clIdStr'] = $clIdStr; $this->contents['view'] = $view; $this->contents['tc'] = $tc;
if ($tc) { $personId = $this->session->userdata('UsPsCode');
$con_qu_prs = array('prsUsId' => $this->sess_prsUsId, 'prsItId' => $this->sess_prsItId); $qu_prs = $this->prs->qryPrs($con_qu_prs); $row_prs = $qu_prs->row();
$flagIsNull = 0; $qu_co = $this->co->qryCoByClIdStrPrsIdIsNull($clIdStr); if ($qu_co->num_rows()) { $flagIsNull = 1; }
$flagNotOfId = 0; $qu_co = $this->co->qryCoByClIdStrNotPrsId($clIdStr, $row_prs->prsId); if ($qu_co->num_rows()) { $flagNotOfId = 1; }
if ($flagIsNull || $flagNotOfId) { $msg = "ไม่สามารถบันทึกเกรดนักศึกษาได้<br />เนื่องจากท่านไม่ใช่อาจารย์ผู้รับผิดชอบส่งเกรดรายวิชานี้"; $this->session->set_flashdata('msg', $msg); redirect($this->config->item('rg_folder').'msg/err_msg'); } }
$con_qu_co = array('coId' => $coId); $this->contents['qu_co'] = $this->co->qryCoJoinCrs($con_qu_co);
$this->contents['qu_tt'] = $this->tt->qryTeacher($clIdStr); $this->contents['rs_grd'] = $this->grd->qryGrdJoinGtp(); // เลือกแสดงเกรดทั้งหมด
$this->output($this->config->item("rg_folder")."v_addGradeTextarea"); }
function processSendGrade() { $rdGrade = $this->input->post('rdGrade');
$this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd');
$stdId = $this->input->post('stdId'); $rdCoId = $this->input->post('rdCoId');
for ($i = 0; $i < count($stdId); $i++) { if(isset($rdGrade[$i]) && $rdGrade[$i]!='') { $con_rs_rd = array('rdStdId' => $stdId[$i], 'rdCoId' => $rdCoId[$i], 'rdAcY' => $this->input->post('rdAcY'), 'rdTmId' => $this->input->post('rdTmId') ); $rs_rd = $this->rd->qryRd($con_rs_rd); $row_rd = $rs_rd->row();
$this->rd->rdStdId = $row_rd->rdStdId; $this->rd->rdAcY = $row_rd->rdAcY; $this->rd->rdTmId = $row_rd->rdTmId; $this->rd->rdCoId = $row_rd->rdCoId; $this->rd->rdSeq = $row_rd->rdSeq; $this->rd->get_by_key(TRUE);
$this->rd->rdGrade = $rdGrade[$i]; $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->update(); } } $this->addSendGrade(1); }
function processSendGradeTextarea() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('txt','','trim|xss_clean');
if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd'); $this->load->model($this->config->item("rg_folder").'mo_rg_allowsendgrade','asg'); $this->load->model($this->config->item("rg_folder").'mo_rg_registfee','rf'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd');
$txt = $this->input->post('txt'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId'); $clIdStr = $this->input->post('clIdStr');
//$lines = explode("\r\n", $txt); $lines = explode("\n", $txt); for ($i = 0; $i < count($lines); $i++) { if ($lines[$i]) { list($stdCode, $grdGrade) = preg_split("/ /", $lines[$i]);
$con_qu_std = array('stdCode' => $stdCode, 'stdGenStatus' => 'Y' ); $qu_std = $this->std->qryStdJoinCur($con_qu_std); $row_std = $qu_std->row();
$con_qu_grd = array('grdGrade' => $grdGrade, 'grdGtpId' => $row_std->curGtpId ); $qu_grd = $this->grd->qryGrd($con_qu_grd);
if ($stdCode && $grdGrade && $qu_std->num_rows() && $qu_grd->num_rows()) { $this->asg->asgStdId = $row_std->stdId; $this->asg->asgTmId = $tmId; $this->asg->asgAcY = $acY; $qu_asg = $this->asg->get_by_key();
$con_qu_rf = array('rfStdId' => $row_std->stdId, 'rfAcY' => $acY, 'rfSyId' => $row_std->stdSyId, 'rfTmId' => $tmId ); $qu_rf = $this->rf->getSumBalance($con_qu_rf); // edit 18/09/2556 นำเข้า excel ไม่ต้องดูว่าจ่ายเงินหรือยัง เพราะถ้ายังไม่จ่ายจะไม่เห้นเกรดอยู่แล้ว ต้องบันทึกได้ //if (!$qu_rf || $qu_asg->num_rows()) { $qu_rd = $this->rd->qryRdByStdIdClIdStr($row_std->stdId, $clIdStr); if ($qu_rd->num_rows()) { $row_rd = $qu_rd->row();
$this->rd->rdAcY = $row_rd->rdAcY; $this->rd->rdStdId = $row_rd->rdStdId; $this->rd->rdTmId = $row_rd->rdTmId; $this->rd->rdCoId = $row_rd->rdCoId; $this->rd->rdSeq = $row_rd->rdSeq; $this->rd->get_by_key(TRUE);
$this->rd->rdGrade = $grdGrade; $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->update(); } //} } } }
$this->addSendGrade(1); } else { $this->addGradeTextarea(); } }
// ##### start แก้เกรด function showCrsEditGrd() { $this->load->model($this->config->item("rg_folder").'mo_rg_termconfig','tmc'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$acY = $this->session->userdata('acY'); $tmId = $this->session->userdata('tmId');
$this->contents['acY'] = $acY; $this->contents['tmId'] = $tmId;
$this->contents['rs_tmc'] = $this->tmc->get_optionsGroupAcY('');
$ord_rs_tm = array('tmName' => 'ASC'); $this->contents['rs_tm'] = $this->tm->get_options('', $ord_rs_tm);
$this->output($this->config->item("rg_folder")."v_showCourseEditGrade"); } function showCrs_editGrd($acY, $tmId) { $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopenfor','cof'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_config','cfg');
$con_rs_rd = array('rdAcY' => $acY, 'rdTmId' => $tmId); $ord_rs_rd = array('coCurId' => 'ASC', 'crsCode' => 'ASC', 'crsName' => 'ASC', 'CAST(coSection AS SIGNED)' => 'ASC'); $grp_rs_rd = array('rdCoId' => 'rdCoId'); $rs_rd = $this->rd->qryRdJoinCoCrs($con_rs_rd,$ord_rs_rd,$grp_rs_rd);
$arr = array(); $i = 0; if($rs_rd->num_rows()) { foreach($rs_rd->result() as $row_rd) {
$arr[$i]['rd'] = $row_rd;
if(is_null($row_rd->coCurId)) { $con_rs_cof = array('cofCoId' => $row_rd->coId); $rs_cof = $this->cof->qryCofJoinCur($con_rs_cof,'','');
$arr[$i]['clIdStr'] = $row_rd->coId; $arr[$i]['cur'] = $rs_cof;
} else { $con_rs_cur = array('coCurId' => $row_rd->coCurId, 'coId' => $row_rd->coId); $ord_rs_cur = array('curName' => 'ASC'); $rs_cur = $this->co->qryCoJoinCur($con_rs_cur,$ord_rs_cur,'');
$arr[$i]['clIdStr'] = $row_rd->coId; $arr[$i]['cur'] = $rs_cur; }
$i++; } } $data['acY'] = $acY; $data['tmId'] = $tmId; $data['arr'] = $arr; $data['qu_cfg'] = $this->cfg->qryCfg();
echo $this->load->view($this->config->item("rg_folder")."v_showCourseEditGradeRow", $data, TRUE); } function editGrd() { $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm'); $this->load->model($this->config->item("rg_folder").'mo_rg_timetable','tt'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd'); $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur');
$coId = $this->input->post('coId'); $tmId = $this->input->post('tmId'); $acY = $this->input->post('acY');
$con_rs_co = array('coId' => $coId); $this->contents['qu_co'] = $this->co->qryCoJoinCrs($con_rs_co,'','');
$this->tm->tmId = $tmId; $this->contents['qu_tm'] = $this->tm->get_by_key(); $this->contents['qu_tt'] = $this->tt->qryTeacher($coId);
$con1_rs_rd = array('rdCoId' => $coId, 'rdAcY' => $acY, 'rdTmId' => $tmId, 'stdSstId' => 1); $con2_rs_rd = array('rdCoId' => $coId, 'rdAcY' => $acY, 'rdTmId' => $tmId, 'ssmSstId' => 1); $rs_rd = $this->rd->qryRdJoinStdSsm($con1_rs_rd,$con2_rs_rd);
$i = 0; $arr = array(); if($rs_rd->num_rows()) { foreach($rs_rd->result() as $row_rd) { $this->cur->curId = $row_rd->stdCurId; $this->cur->get_by_key(TRUE); $con_rs_grd = array('grdGtpId' => $this->cur->curGtpId); $rs_grd = $this->grd->get_options($con_rs_grd);
$arr[$i]['rd'] = $row_rd; $arr[$i]['grd'] = $rs_grd;
$i++; } } $this->contents['arr'] = $arr;
$this->output($this->config->item("rg_folder")."v_editGrd"); } function processEditGrd() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('docNo','เลขที่คำสั่ง','trim|required|xss_clean'); if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd');
$coId = $this->input->post('coId'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId'); $docNo = $this->input->post('docNo'); $cnt = $this->input->post('cnt');
$this->db->trans_begin(); for($i=0; $i<$cnt; $i++) { if($this->input->post('chk'.$i)=='Y') { $con_qu_rd = array('rdStdId' => $this->input->post('stdId'.$i), 'rdCoId' => $coId, 'rdAcY' => $acY, 'rdTmId' => $tmId); $qu_rd = $this->rd->qryRd($con_qu_rd,'',''); if($qu_rd->num_rows()) { $this->rd->row2attribute($qu_rd->row()); $this->rd->rdGrade = $this->input->post('grdId'.$i); $this->rd->rdDocNo = $docNo; $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->update(); } } }
if($this->db->trans_status() === false) $this->db->trans_rollback(); else $this->db->trans_commit();
//$this->editGrd(); redirect($this->config->item("rg_folder")."grade/showCrsEditGrd"); } else { $this->editGrd(); } } // ##### end แก้เกรด
// ##### start ยืนยันการแสดงผลเกรด function confirmShowGrdStd() { $this->load->model($this->config->item("rg_folder").'mo_rg_termconfig','tmc'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$acY = $this->session->userdata('acY'); $tmId = $this->session->userdata('tmId');
$this->contents['acY'] = $acY; $this->contents['tmId'] = $tmId;
$this->contents['rs_tmc'] = $this->tmc->get_optionsGroupAcY('');
$ord_rs_tm = array('tmName' => 'ASC'); $this->contents['rs_tm'] = $this->tm->get_options('', $ord_rs_tm);
$this->output($this->config->item("rg_folder")."v_confirmShowGradeStd"); } function showCrs_confirmGrd($acY, $tmId) { $this->load->model($this->config->item("rg_folder").'mo_rg_config','cfg'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopenfor','cof'); $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur');
$con_rs_rd = array('rdAcY' => $acY, 'rdTmId' => $tmId, 'coSendGradeStatus' => 'Y', 'coDeclareStatus' => 'N' ); $ord_rs_rd = array('coCurId' => 'ASC', 'crsCode' => 'ASC', 'crsName' => 'ASC', 'CAST(coSection AS SIGNED)' => 'ASC' ); $grp_rs_rd = array('rdCoId' => 'rdCoId'); $rs_rd = $this->rd->qryRdJoinCoCrs($con_rs_rd,$ord_rs_rd,$grp_rs_rd);
$i = 0; $arr = array(); if($rs_rd->num_rows()) { foreach($rs_rd->result() as $row_rd) {
$arr[$i]['rd'] = $row_rd;
if(is_null($row_rd->coCurId)) { $con_rs_cof = array('cofCoId' => $row_rd->coId); $rs_cof = $this->cof->qryCofJoinCur($con_rs_cof,'',''); $arr[$i]['cur'] = $rs_cof; } else { $this->cur->curId = $row_rd->coCurId; $qu_cur = $this->cur->get_by_key();
$arr[$i]['cur'] = $qu_cur; }
$i++; } } $data['arr'] = $arr; $data['qu_cfg'] = $this->cfg->qryCfg();
echo $this->load->view($this->config->item("rg_folder")."v_confirmShowGradeStdRow", $data, TRUE); } function processConfirmShowGrdStd() { $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co');
$cnt = $this->input->post('cnt');
$this->db->trans_begin(); for($i=0; $i<$cnt; $i++){ if($this->input->post('chk'.$i)=='Y') { $this->co->coId = $this->input->post('coId'.$i); $this->co->get_by_key(TRUE);
$this->co->coDeclareStatus = 'Y'; $this->co->update(); } }
if($this->db->trans_status() === false) { $this->db->trans_rollback(); $this->contents['flg'] = "ไม่สำเร็จ"; } else { $this->db->trans_commit(); $this->contents['flg'] = "สำเร็จ"; }
$this->output($this->config->item("rg_folder")."v_processConfirmShowGrdStd"); } // ##### end ยืนยันการแสดงผลเกรด
// ##### start ตรวจสอบรายวิชาที่ยังไม่ได้ส่งเกรด function checkNoSendGrdCrs() { $this->load->model($this->config->item("rg_folder").'mo_rg_termconfig','tmc'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$acY = $this->session->userdata('acY'); $tmId = $this->session->userdata('tmId');
$this->contents['acY'] = $acY; $this->contents['tmId'] = $tmId;
$this->contents['rs_tmc'] = $this->tmc->get_optionsGroupAcY('');
$ord_rs_tm = array('tmName' => 'ASC'); $this->contents['rs_tm'] = $this->tm->get_options('', $ord_rs_tm);
$this->output($this->config->item("rg_folder")."v_checkNoSendGradeCourse"); } function showCrs_noSendGrd($acY, $tmId) { $this->load->model($this->config->item("rg_folder").'mo_rg_config','cfg'); $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co');
$con_rs_cur = array('curStatus' => 'Y'); $ord_rs_cur = array('curName' => 'ASC'); $rs_cur = $this->cur->qryCur($con_rs_cur, $ord_rs_cur);
$i = 0; $arr = array(); if($rs_cur->num_rows()) { foreach($rs_cur->result() as $row_cur) {
$arr[$i]['cur'] = $row_cur;
// coCurId IS NOT NULL $con_rs_rd = array('rdAcY' => $acY, 'rdTmId' => $tmId, 'coCurId' => $row_cur->curId); $rs_rd = $this->rd->qryRdCoIdJoinCoCrs($con_rs_rd,''); if($rs_rd->num_rows()) { foreach($rs_rd->result() as $row_rd) { $con_co = array('coId' => $row_rd->rdCoId, 'coSendGradeStatus' => 'N'); $ord_co = array('crsCode' => 'ASC', 'crsName' => 'ASC', 'CAST(coSection AS SIGNED)' => 'ASC' ); $co = $this->co->qryResponsibilityCo($con_co, $ord_co); $arr[$i]['co'][] = $co; } } else { $arr[$i]['co'][] = NULL; }
// coCurId IS NULL $con_rs_rd = array('rdAcY' => $acY, 'rdTmId' => $tmId, 'coCurId' => 'NULL', 'cofCurId' => $row_cur->curId); $rs_rd2 = $this->rd->qryRdJoinCoCrsCof($con_rs_rd,''); if($rs_rd2->num_rows()) { foreach($rs_rd2->result() as $row_rd2) { $con_co2 = array('coId' => $row_rd2->rdCoId, 'coSendGradeStatus' => 'N'); $ord_co2 = array('crsCode' => 'ASC', 'crsName' => 'ASC', 'CAST(coSection AS SIGNED)' => 'ASC' ); $co2 = $this->co->qryResponsibilityCo($con_co2, $ord_co2);
$arr[$i]['co2'][] = $co2; } } else { $arr[$i]['co2'] = NULL; }
$i++; } } $data['arr'] = $arr; $data['qu_cfg'] = $this->cfg->qryCfg();
echo $this->load->view($this->config->item("rg_folder")."v_checkNoSendGradeCourseRow", $data, TRUE); } // ##### end ตรวจสอบรายวิชาที่ยังไม่ได้ส่งเกรด
// ##### start printSendGradePDF function printSendGradePDF($showGrade = 0) { $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_timetable','tt'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd'); $this->load->model($this->config->item("rg_folder").'mo_rg_person','prs'); $this->load->model($this->config->item("rg_folder").'mo_rg_studentsummary','ssm'); $this->load->model($this->config->item("rg_folder").'mo_rg_registfee','rf'); $coId = $this->input->post('coId'); $clIdStr = $this->input->post('clIdStr'); $view = $this->input->post('view');
$this->contents['view'] = $view;
$con_qu_co = array('coId' => $coId); $qu_co = $this->co->qryCoJoinCrsCur($con_qu_co); $row_co = $qu_co->row(); $this->contents['qu_co'] = $qu_co;
//$qu_tt = $this->tt->qryTeacher($clIdStr); //$this->contents['prsNames'] = $qu_tt->row()->prsName; $this->contents['prsNames'] = array(); $qu_tt = $this->tt->qryTeacher2($clIdStr); $i=0; foreach($qu_tt->result() as $row){ $this->contents['prsNames'][$i] = $row->prefixName.$row->fName.' '.$row->lName.' '; $i++; } $arr = array(); $i = 0; //$rs_rd = $this->rd->qryRdByClIdStrAcYTmId($clIdStr, $row_co->coAcY, $row_co->coTmId); // เดิม printPDF เฉพาะเด็ก sstId=1 $rs_rd = $this->rd->qryRdJoinStdOrdStdCode($clIdStr, $row_co->coAcY, $row_co->coTmId);
if($rs_rd->num_rows()) { foreach ($rs_rd->result() as $row_rd) { $con_qu_std = array('stdId' => $row_rd->rdStdId); $qu_std = $this->std->qryStdJoinPfSst($con_qu_std); $arr[$i]['qu_std'] = $qu_std;
$con_qu_ssm = array('ssmStdId' => $row_rd->rdStdId, 'ssmAcY' => $row_co->coAcY, 'ssmTmId' => $row_co->coTmId); $qu_ssm = $this->ssm->qrySsmSst($con_qu_ssm); if ($row_co->coSendGradeStatus == 'Y' || $showGrade == 1) { if($row_rd->rdGrade) { $arr[$i]['rdGrade'] = $row_rd->rdGrade; } else { if($qu_ssm->num_rows()) { $arr[$i]['rdGrade'] = $qu_ssm->row()->sstName; } else { $arr[$i]['rdGrade'] = $qu_std->row()->sstName; } } } else { $arr[$i]['rdGrade'] = ''; } // 11/4/2556 ถ้าค้างค่าใช้จ่าย ไม่แสดงเกรด ดูรายเทอม if($showGrade == 0 ){ // $con_qu_rf = array('rfStdId' => $row_rd->rdStdId); $con_qu_rf = array('rfStdId' => $row_rd->rdStdId, 'rfAcY' => $row_co->coAcY, 'rfTmId' => $row_co->coTmId ); $rfBalance = $this->rf->getSumBalance($con_qu_rf ); if( $rfBalance > 0 ){ $arr[$i]['rdGrade'] = '-'; } } $i++; } } $this->contents['rs1'] = $arr;
$arr = array(); $i = 0; $con_rs_grd = array('grdGtpId' => $row_co->curGtpId); $rs_grd = $this->grd->qryGrd($con_rs_grd); foreach ($rs_grd->result() as $row_grd) { $arr[$i]['grdGrade'] = $row_grd->grdGrade; $arr[$i]['cntStd'] = $this->rd->getCountStdIdByGrade($clIdStr, $row_co->coAcY, $row_co->coTmId, $row_grd->grdGrade);
$i++; } $this->contents['rs2'] = $arr;
$con_qu_prs = array('prsId' => $row_co->coPrsId); $qu_prs = $this->prs->qryPrsJoinPPC($con_qu_prs); if ($qu_prs->num_rows()) { $this->contents['prsName'] = $qu_prs->row()->name; } else { $this->contents['prsName'] = ''; }
$this->output_pdf($this->config->item("rg_folder")."v_printSendGradePDF"); } // ##### end printSendGradePDF
// ##### start แก้เกรดนักศึกษาแยกตามรายวิชา function searchSendGrd() { $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$this->contents['rs_tm'] = $this->tm->get_options('','','','y'); $this->contents['acY'] = $this->session->userdata('acY'); $this->contents['tmId'] = $this->session->userdata('tmId');
$this->output($this->config->item("rg_folder")."v_searchSendGrade"); } function beforeEditSendGrd() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('stdCode',' ','trim|required|integer|is_natural_no_zero|xss_clean'); $this->form_validation->set_rules('acY',' ','callback_checkAdY'); $this->form_validation->set_rules('tmId',' ','trim|required|xss_clean');
if($this->form_validation->run() == true) { $this->editSendGrade(); } else { $this->searchSendGrd(); } } function editSendGrade($edit=0) { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd');
$stdCode = $this->input->post('stdCode'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId'); $edit = $this->input->post('edit') ? $this->input->post('edit') : $edit;
if($edit==1) { $coId = $this->input->post('coId'); $stdId = $this->input->post('stdId'); }
$this->contents['acY'] = $acY; $this->contents['tmId'] = $tmId;
$con_qu_std = array('stdCode' => $stdCode); $qu_std = $this->std->qryStdJoinSdtPfCurSySstElv($con_qu_std); $this->contents['qu_std'] = $qu_std;
if($qu_std->num_rows()) { $con_rs_rd = array('rdStdId' => $qu_std->row()->stdId, 'rdAcY' => $acY, 'rdTmId' => $tmId); $ord_rs_rd = array('crsCode' => 'ASC', 'crsName' => 'ASC' ); $this->contents['rs_rd'] = $this->rd->qryRdJnCrsOpCrs($con_rs_rd, $ord_rs_rd); $con_rs_grd = array('grdGtpId' => $qu_std->row()->curGtpId); $this->contents['rs_grd'] = $this->grd->get_options($con_rs_grd,'','','y'); }
if($edit==1) { $this->contents['flgShow'] = $coId; }
$this->output($this->config->item("rg_folder")."v_beforeEditSendGrade"); } function processEditSendGrade() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('rdGrade',' ','trim|required|xss_clean'); $this->form_validation->set_rules('docNo',' ','trim|required|xss_clean');
if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd');
$stdCode = $this->input->post('stdCode'); $stdId = $this->input->post('stdId'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId'); $coId = $this->input->post('coId');
$con_qu_rd = array('rdStdId' => $stdId, 'rdCoId' => $coId, 'rdAcY' => $acY, 'rdTmId' => $tmId); $qu_rd = $this->rd->qryRd($con_qu_rd,'',''); if($qu_rd->num_rows()) { $this->rd->row2attribute($qu_rd->row()); $this->rd->rdGrade = $this->input->post('rdGrade'); $this->rd->rdDocNo = $this->input->post('docNo'); $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->update(); }
$this->editSendGrade(); } else { $this->editSendGrade(1); } } // ##### end แก้เกรดนักศึกษาแยกตามรายวิชา
function processConfirmSendGrade() { $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd');
$clIdStr = $this->input->post('clIdStr'); $rdAcY = $this->input->post('rdAcY'); $rdTmId = $this->input->post('rdTmId');
$clIdStrArr = explode(",", $clIdStr); for ($i = 0; $i < count($clIdStrArr); $i++) { $this->co->coId = $clIdStrArr[$i]; $this->co->get_by_key(TRUE);
$this->co->coSendGradeStatus = 'Y'; $this->co->update(); }
$rs_rd = $this->rd->qryRdByClIdStrAcYTmId($clIdStr, $rdAcY, $rdTmId); foreach ($rs_rd->result() as $row_rd1) { $con_rs_rd = array('rdStdId' => $row_rd1->rdStdId, 'rdCoId' => $row_rd1->rdCoId, 'rdAcY' => $rdAcY, 'rdTmId' => $rdTmId ); $rs_rd = $this->rd->qryRd($con_rs_rd); $row_rd2 = $rs_rd->row();
$this->rd->rdAcY = $row_rd2->rdAcY; $this->rd->rdStdId = $row_rd2->rdStdId; $this->rd->rdTmId = $row_rd2->rdTmId; $this->rd->rdCoId = $row_rd2->rdCoId; $this->rd->rdSeq = $row_rd2->rdSeq; $this->rd->get_by_key(TRUE); $this->rd->rdNoCalGPA = 'N'; $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->update(); } $this->addSendGrade(2); }
function calGradeCur () { $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$this->contents['rs_tm'] = $this->tm->get_options('','','',FALSE); $this->contents['acY'] = $this->session->userdata('acY');
$this->output($this->config->item("rg_folder")."v_calGradeCurriculum"); }
function processCalGradeCur() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('curName',' ','trim|required|xss_clean'); $this->form_validation->set_rules('curId',' ','trim|required|xss_clean'); $this->form_validation->set_rules('stdTmIdAdmit',' ','trim|required|xss_clean'); $this->form_validation->set_rules('adY',' ','trim|required|nemeric|is_natural_no_zero|xss_clean'); $this->form_validation->set_rules('acY',' ','trim|required|integer|is_natural_no_zero|callback_checkAcY'); $this->form_validation->set_rules('tmId',' ','trim|required|xss_clean'); $this->form_validation->set_rules('syId',' ','trim|integer|is_natural_no_zero|callback_checkSy|required|xss_clean'); if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur'); $this->load->model($this->config->item("rg_folder").'mo_rg_studyYear','sy'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$curId = $this->input->post('curId'); $adY = $this->input->post('adY'); $syId = $this->input->post('syId'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId');
$con_rs_std = array('stdCurId' => $curId, 'stdAdY' => $adY, 'stdSyId' => $syId ); $ord_rs_std = array('stdCode' => 'ASC'); $rs_std = $this->std->qryStd($con_rs_std, $ord_rs_std); foreach ($rs_std->result() as $row_std) { if (($acY < $this->session->userdata('acY_R')) || ($acY == $this->session->userdata('acY_R') && $tmId <= $this->session->userdata('tmId_R'))) { $rs_rd = $this->rd->qryRdByCurIdAdYSyIdAcYTmId($curId, $adY, $syId, $acY, $tmId); if ($rs_rd->num_rows()) { $this->calGradeByStdIdAcYTmId($row_std->stdId, $acY, $tmId); } } }
// start ใช้ใน view $this->cur->curId = $curId; $this->contents['qu_cur'] = $this->cur->get_by_key();
$this->contents['adY'] = $adY;
$this->sy->syId = $syId; $this->contents['qu_sy'] = $this->sy->get_by_key();
$this->contents['acY'] = $acY;
$this->tm->tmId = $tmId; $this->contents['qu_tm'] = $this->tm->get_by_key();
// echo "<br />".$acY."===".$this->session->userdata('acY_R'); // echo "<br />".$acY."===".$this->session->userdata('acY_R'); // echo "<br />".$tmId."==".$this->session->userdata('tmId_R');
if (($acY > $this->session->userdata('acY_R')) || ($acY == $this->session->userdata('acY_R') && $tmId > $this->session->userdata('tmId_R'))) { $this->contents['err_msg'] = "** ไม่สามารถประมวลผลเกรดนักศึกษาตามหลักสูตร ในภาคการศึกษา ".$tmId." ปีการศึกษา ".$acY." **"; }
$this->contents['rs_std'] = $this->std->qryStdByCurIdAndAdYAndSyIdJoinSsmPfSdtCurGen($acY,$tmId,$curId,$adY,$syId);
$this->output($this->config->item("rg_folder")."v_processCalGradeCurriculum"); } else { $this->calGradeCur(); } }
function calGradeByStdIdAcYTmId($stdId, $acY, $tmId) { $this->load->model($this->config->item("rg_folder").'mo_rg_acadconfig','ac'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_studentsummary','ssm');
$qu_ac = $this->ac->qryAc(); $acCalGradeF = $qu_ac->row()->acCalGradeF;
$divisor = 0; if ($acCalGradeF == 1) { $divisor = $this->rd->getAllFDivisorGPAX($stdId, $acY, $tmId); } else if ($acCalGradeF == 2) { $divisor = $this->rd->getOneFDivisorGPAX($stdId, $acY, $tmId); }
$this->std->stdId = $stdId; $this->std->get_by_key(TRUE); $this->std->stdCreditAttempt = $this->rd->calCumCreditAttempt($stdId, $acY, $tmId); $this->std->stdCreditSatisfy = $this->rd->calCumCreditSatisfy($stdId, $acY, $tmId); $this->std->stdGPA = ($divisor) ? $this->rd->getDividendGPAX($stdId, $acY, $tmId) / $divisor : 0; $this->std->stdUpdateDate = date('Y-m-d H:i:s'); $this->std->stdUpdateUsLogin = $this->session->userdata('UsLogin'); if ($this->std->stdGPA < 1.75) { $this->std->stdSstIdTmp = 7; } else { $this->std->stdSstIdTmp = 1; } $this->std->update(); $this->ssm->ssmStdId = $stdId; $this->ssm->ssmAcY = $acY; $this->ssm->ssmTmId = $tmId; $qu_ssm = $this->ssm->get_by_key(); if ($qu_ssm->num_rows()) { $this->ssm->get_by_key(TRUE); $this->ssm->ssmGPA = ($this->rd->getAllFDivisorGPA($stdId, $acY, $tmId)) ? $this->rd->getDividendGPA($stdId, $acY, $tmId) / $this->rd->getAllFDivisorGPA($stdId, $acY, $tmId) : 0; $this->ssm->ssmCreditAttempt = $this->rd->getSumCrAtByStdIdAcYTmId($stdId, $acY, $tmId); $this->ssm->ssmCreditSatisfy = $this->rd->calCreditSatisfy($stdId, $acY, $tmId); $this->ssm->ssmCreditPoint = $this->rd->getAllFDivisorGPA($stdId, $acY, $tmId); $this->ssm->ssmGPAX = ($divisor) ? $this->rd->getDividendGPAX($stdId, $acY, $tmId) / $divisor : 0; $this->ssm->ssmSumCreditAttempt = $this->rd->calCumCreditAttempt($stdId, $acY, $tmId); $this->ssm->ssmSumCreditSatisfy = $this->rd->calCumCreditSatisfy($stdId, $acY, $tmId); $this->ssm->ssmSumCreditPoint = $divisor; $this->ssm->ssmUpdateDate = date('Y-m-d H:i:s'); $this->ssm->ssmUpdateUserId = $this->session->userdata('UsLogin'); $this->ssm->update(); } else { $this->ssm->ssmStdId = $stdId; $this->ssm->ssmTmId = $tmId; $this->ssm->ssmAcY = $acY; $this->ssm->ssmGPA = ($this->rd->getAllFDivisorGPA($stdId, $acY, $tmId)) ? $this->rd->getDividendGPA($stdId, $acY, $tmId) / $this->rd->getAllFDivisorGPA($stdId, $acY, $tmId) : 0; $this->ssm->ssmCreditAttempt = $this->rd->getSumCrAtByStdIdAcYTmId($stdId, $acY, $tmId); $this->ssm->ssmCreditSatisfy = $this->rd->calCreditSatisfy($stdId, $acY, $tmId); $this->ssm->ssmCreditPoint = $this->rd->getAllFDivisorGPA($stdId, $acY, $tmId); $this->ssm->ssmGPAX = ($divisor) ? $this->rd->getDividendGPAX($stdId, $acY, $tmId) / $divisor : 0; $this->ssm->ssmSumCreditAttempt = $this->rd->calCumCreditAttempt($stdId, $acY, $tmId); $this->ssm->ssmSumCreditSatisfy = $this->rd->calCumCreditSatisfy($stdId, $acY, $tmId); $this->ssm->ssmSumCreditPoint = $divisor; $this->ssm->ssmApprover = ""; $this->ssm->ssmRefNo = ""; $this->ssm->ssmApproveDate = ""; $this->ssm->ssmPassStatus = 0; $this->ssm->ssmSstId = $this->std->stdSstId; $this->ssm->ssmSstIdApproveSpe = NULL; $this->ssm->ssmSyId = $this->std->stdSyId; $this->ssm->ssmCreateDate = date('Y-m-d H:i:s'); $this->ssm->ssmCreateUserId = $this->session->userdata('UsLogin'); $this->ssm->ssmUpdateDate = date('Y-m-d H:i:s'); $this->ssm->ssmUpdateUserId = $this->session->userdata('UsLogin'); $this->ssm->insert(); } }
function searchCalGrade() {
$this->output($this->config->item("rg_folder")."v_searchCalGrade"); }
function calGrade() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('stdCode',' ','trim|required|integer|xss_clean');
if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd');
$stdCode = $this->input->post('stdCode');
$con_qu_std = array('stdCode' => $stdCode, 'stdSstId' => 1, 'stdGenStatus' => 'Y' );
$qu_std = $this->std->qryStd($con_qu_std, "", ""); if ($qu_std->num_rows()) { $this->contents['qu_std'] = $this->std->qryStdJoinPfCurSySstElv($con_qu_std, "", "");
$con_rs_rd = array('rdStdId' => $this->contents['qu_std']->row()->stdId); $grp_rs_rd = array('rdAcY', 'rdTmId'); $this->contents['rs_rd'] = $this->rd->qryRdJoinSsm($con_rs_rd, "", $grp_rs_rd); } else { $this->contents['err_msg'] = "** ไม่ปรากฏรหัสนักศึกษาดังกล่าวในฐานข้อมูล "; }
$this->output($this->config->item("rg_folder")."v_calGrade.php"); } else { $this->searchCalGrade(); } }
function processCalGrade() { $stdId = $this->input->post('stdId'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId');
$this->calGradeByStdIdAcYTmId($stdId, $acY, $tmId);
$this->contents['success_msg'] = "กระบวนการประมวลผลเกรดสำเร็จ";
$this->calGrade(); }
function showConfirmCalGrade() { $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$this->contents['rs_tm'] = $this->tm->get_options('','','',FALSE); $this->contents['acY'] = $this->session->userdata('acY');
$this->output($this->config->item("rg_folder")."v_showConfirmCalGrade"); }
function confirmCalGrade() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('curName',' ','trim|xss_clean'); $this->form_validation->set_rules('curId',' ','trim|required|xss_clean'); $this->form_validation->set_rules('stdTmIdAdmit',' ','trim|required|xss_clean'); $this->form_validation->set_rules('adY',' ','trim|required|nemeric|is_natural_no_zero|xss_clean'); $this->form_validation->set_rules('acY',' ','trim|required|integer|is_natural_no_zero|callback_checkAcY'); $this->form_validation->set_rules('tmId',' ','trim|required|xss_clean'); $this->form_validation->set_rules('syId',' ','trim|integer|callback_checkSy|required|xss_clean'); if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm'); $this->load->model($this->config->item("rg_folder").'mo_rg_studyyear','sy'); $this->load->model($this->config->item("rg_folder").'mo_rg_student','std');
$curId = $this->input->post('curId'); $adY = $this->input->post('adY'); $syId = $this->input->post('syId');
$this->cur->curId = $curId; $this->contents['qu_cur'] = $this->cur->get_by_key();
$this->contents['adY'] = $this->input->post('adY'); $this->contents['stdTmIdAdmit'] = $this->input->post('stdTmIdAdmit'); $this->contents['acY'] = $this->input->post('acY');
$this->tm->tmId = $this->input->post('tmId'); $this->contents['qu_tm'] = $this->tm->get_by_key();
$this->sy->syId = $this->input->post('syId'); $this->contents['qu_sy'] = $this->sy->get_by_key();
$con_rs_std = array('stdCurId' => $curId, 'stdAdY' => $adY, 'stdSyId' => $syId ); $ord_rs_std = array('stdCode' => 'ASC'); //$this->contents['rs_std'] = $this->std->qryStdJoinPfCurSySstElv($con_rs_std, $ord_rs_std); $this->contents['rs_std'] = $this->std->qryStdJoinPfSstTmp($con_rs_std, $ord_rs_std);
$this->output($this->config->item("rg_folder")."v_confirmCalGrade"); } else { $this->showConfirmCalGrade(); } }
// ยืนยันการประมวลผลเกรดนักศึกษา คือ นศ. ติดโปร ทำได้ตั้งแต่ ปี 1 เทอม 2 เป็นต้นไป function processConfirmCalGrade() { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_studentsummary','ssm');
$stdId = $this->input->post('stdId'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId');
for ($i = 0; $i < count($stdId); $i++) { $this->std->stdId = $stdId[$i]; $this->std->get_by_key(TRUE);
if (($stdId[$i] != '') && (($this->std->stdSyId == 1 && $tmId != 1) || ($this->std->stdSyId != 1))) { $this->std->stdSstId = $this->std->stdSstIdTmp; $this->std->updateUserId = $this->session->userdata('UsLogin'); $this->std->updateDateTime = date('Y-m-d H:i:s'); $this->std->update();
$this->ssm->ssmStdId = $stdId[$i]; $this->ssm->ssmTmId = $tmId; $this->ssm->ssmAcY = $acY;
$qu_ssm = $this->ssm->get_by_key(); if ($qu_ssm->num_rows()) { $this->ssm->get_by_key(TRUE);
$this->ssm->ssmSstId = $this->std->stdSstId; $this->ssm->ssmUpdateDate = date('Y-m-d H:i:s'); $this->ssm->ssmUpdateUserId = $this->session->userdata('UsLogin'); $this->ssm->update(); } else { $this->ssm->ssmStdId = $stdId[$i]; $this->ssm->ssmTmId = $tmId; $this->ssm->ssmAcY = $acY; $this->ssm->ssmGPA = 0; $this->ssm->ssmCreditAttempt = 0; $this->ssm->ssmCreditSatisfy = 0; $this->ssm->ssmCreditPoint = 0; $this->ssm->ssmGPAX = 0; $this->ssm->ssmSumCreditAttempt = 0; $this->ssm->ssmSumCreditSatisfy = 0; $this->ssm->ssmSumCreditPoint = 0; $this->ssm->ssmApprover = ""; $this->ssm->ssmRefNo = ""; $this->ssm->ssmApproveDate = ""; $this->ssm->ssmPassStatus = 0; $this->ssm->ssmSstId = $this->std->stdSstId; $this->ssm->ssmSstIdApproveSpe = NULL; $this->ssm->ssmSyId = $this->std->stdSyId; $this->ssm->ssmCreateDate = date('Y-m-d H:i:s'); $this->ssm->ssmCreateUserId = $this->session->userdata('UsLogin'); $this->ssm->ssmUpdateDate = date('Y-m-d H:i:s'); $this->ssm->ssmUpdateUserId = $this->session->userdata('UsLogin'); $this->ssm->insert(); } } // end if } // end for
$this->confirmCalGrade(); }
// ##### start ลงทะเบียนและส่งเกรดย้อนหลัง function showBackRegistAndSendGrade() { $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$this->contents['acY'] = $this->session->userdata('acY'); $this->contents['tmId'] = $this->session->userdata('tmId'); $this->contents['rs_tm'] = $this->tm->get_options('','','','n');
$this->output($this->config->item("rg_folder")."v_showBackRegistAndSendGrade"); } function addBackRegistAndSendGrade() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('stdCode',' ','trim|required|integer|is_natural_no_zero|xss_clean'); $this->form_validation->set_rules('acY',' ','trim|integer|callback_checkAdY|xss_clean'); $this->form_validation->set_rules('tmId',' ','trim|required|xss_clean'); $this->form_validation->set_rules('syId',' ','callback_checkSyId');
if($this->form_validation->run() == true) { $this->backRegistAndSendGrade_input(); } else { $this->showBackRegistAndSendGrade(); } } function backRegistAndSendGrade_input() { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_studentsummary','ssm'); $this->load->model($this->config->item("rg_folder").'mo_rg_studyyear','sy'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_grade','grd');
$stdCode = $this->input->post('stdCode'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId'); $syId = $this->input->post('syId');
$this->sy->syId = $syId; $this->contents['qu_sy'] = $this->sy->get_by_key();
$this->tm->tmId = $tmId; $this->contents['qu_tm'] = $this->tm->get_by_key();
$this->contents['acY'] = $acY;
$this->ssm->ssmStdId = $stdCode; $this->ssm->ssmTmId = $tmId; $this->ssm->ssmAcY = $acY; $this->contents['qu_ssm'] = $this->ssm->get_by_key();
$con_qu_std = array('stdCode' => $stdCode, 'stdGenStatus' => 'Y', 'stdSstId' => 1); $qu_std = $this->std->qryStdJoinCurPfSySsm($con_qu_std,'',''); $i = 0; $arr = array(); if($qu_std->num_rows()) { $this->contents['qu_std'] = $qu_std; $con_rs_grd = array('grdGtpId' => $qu_std->row()->curGtpId); $this->contents['rs_grd'] = $this->grd->get_options($con_rs_grd,'','','y');
// curId IS NOT NULL $con_rs_co = array('coCurId' => $qu_std->row()->stdCurId, 'coSyId' => $syId, 'coTmId' => $tmId, 'coAcY' => $acY); $rs_co = $this->co->qryCoJoinCrs($con_rs_co,''); if($rs_co->num_rows()) { foreach($rs_co->result() as $row_co) { $con_qu_rd = array('rdCoId' => $row_co->coId, 'rdAcY' => $acY, 'rdTmId' => $tmId, 'rdStdId' => $qu_std->row()->stdId); $qu_rd = $this->rd->qryRd($con_qu_rd,'','');
$arr[$i]['co'] = $row_co; $arr[$i]['rd'] = $qu_rd;
$i++; } }
// curId IS NULl $con_rs_co2 = array('coCurId' => 'NULL', 'coAcY' => $acY, 'coTmId' => $tmId, 'cofCurId' => $qu_std->row()->stdCurId); $rs_co2 = $this->co->qryCoJoinCofCrs($con_rs_co2,''); if($rs_co2->num_rows()) { foreach($rs_co2->result() as $row_co2) { $con_qu_rd = array('rdCoId' => $row_co2->coId, 'rdAcY' => $acY, 'rdTmId' => $tmId, 'rdStdId' => $qu_std->row()->stdId); $qu_rd = $this->rd->qryRd($con_qu_rd,'','');
$arr[$i]['co'] = $row_co2; $arr[$i]['rd'] = $qu_rd;
$i++; } }
$con_creditAttempt = array('rdStdId' => $qu_std->row()->stdId, 'rdAcY' => $acY, 'rdTmId' => $tmId); $this->contents['creditAttempt'] = $this->rd->getCreditAttempt($con_creditAttempt); } else { $con_std = array('stdCode' => $stdCode); $this->contents['std'] = $this->std->qryStdJoinPfSst($con_std,'',''); } $this->contents['arr'] = $arr;
$this->output($this->config->item("rg_folder")."v_addBackRegistAndSendGrade"); } function processBackRegistAndSendGrade() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>');
$cnt = $this->input->post('cnt'); for($num=0; $num<$cnt; $num++) { //if($this->input->post('chk'.$num)=='Y') { $this->form_validation->set_rules('rdGrade'.$num,' ','trim|xss_clean'); //} }
if($this->form_validation->run() == true) { $this->load->model($this->config->item("rg_folder").'mo_rg_regist','rg'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_courseopen','co');
$stdId = $this->input->post('stdId'); $stdCode = $this->input->post('stdCode'); $curId = $this->input->post('curId'); $syId = $this->input->post('syId'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId');
for($i=0; $i<$cnt; $i++) { if($this->input->post('chk'.$i)=='Y' && $this->input->post('rdGrade'.$i)!='') {
// ทำการลงทะเบียน $this->rg->rgStdId = $stdId; $this->rg->rgTmId = $tmId; $this->rg->rgAcY = $acY; $this->rg->rgSeq = 1; $qu_rg = $this->rg->get_by_key();
if($qu_rg->num_rows()==0) { $con_rgSeq = array('rgStdId' => $stdId, 'rgAcY' => $acY, 'rgTmId' => $tmId); $this->rg->rgStdId = $stdId; $this->rg->rgTmId = $tmId; $this->rg->rgAcY = $acY; $this->rg->rgSeq = $this->rg->getNextSeq($con_rgSeq); $this->rg->rgSubmitType = 'B'; $this->rg->rgStatus = 'N'; $this->rg->rgCurId = $curId; $this->rg->rgSyId = $syId; $this->rg->rgCreateDate = date('Y-m-d H:i:s'); $this->rg->rgCreateUserId = $this->session->userdata('UsLogin'); $this->rg->rgUpdateDate = date('Y-m-d H:i:s'); $this->rg->rgUpdateUserId = $this->session->userdata('UsLogin'); $this->rg->insert(); }
$flg = 0; $this->rd->rdAcY = $acY; $this->rd->rdStdId = $stdId; $this->rd->rdTmId = $tmId; $this->rd->rdCoId = $this->input->post('coId'.$i); $this->rd->rdSeq = 1; $this->rd->get_by_key(TRUE); $qu_rd = $this->rd->get_by_key();
// ทำการลงทะเบียนรายวิชา if($qu_rd->num_rows()==0) { $this->rd->rdAcY = $acY; $this->rd->rdStdId = $stdId; $this->rd->rdTmId = $tmId; $this->rd->rdCoId = $this->input->post('coId'.$i); $this->rd->rdSeq = $this->rg->rgSeq; $this->rd->rdCreditAttempt = $this->input->post('creditAttempt'.$i); $this->rd->rdSection = $this->input->post('coSection'.$i); $this->rd->rdGrade = $this->input->post('rdGrade'.$i); $this->rd->rdDocNo = ''; $this->rd->rdCredit1 = $this->input->post('credit1'.$i); $this->rd->rdCredit2 = $this->input->post('credit2'.$i); $this->rd->rdNoCalGPA = 'N'; $this->rd->rdAllowPr = 'N'; $this->rd->rdCdId1 = $this->input->post('cdId1'.$i); $this->rd->rdCdId2 = $this->input->post('cdId2'.$i); $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->insert();
$flg = 1; } else { $this->rd->rdGrade = $this->input->post('rdGrade'.$i); $this->rd->rdUpdateDate = date('Y-m-d H:i:s'); $this->rd->rdUpdateUserId = $this->session->userdata('UsLogin'); $this->rd->update(); }
// อัพเดทที่นั่งของรายวิชาที่เปิดสอน $this->co->coId = $this->input->post('coId'.$i); $this->co->get_by_key(TRUE); if($flg) { $this->co->coNumSeatReg += 1; } $this->co->coSendGradeStatus = 'Y'; $this->co->coDeclareStatus = 'Y'; $this->co->update(); } else { $this->rd->rdStdId = $stdId; $this->rd->rdAcY = $acY; $this->rd->rdTmId = $tmId; $this->rd->rdSeq = 1; $this->rd->rdCoId = $this->input->post('coId'.$i); $this->rd->get_by_key(); $qu_rd = $this->rd->get_by_key();
// ลบรายวิชาที่เคยลงทะเบียน if($qu_rd->num_rows()) { $this->rd->delete();
// อัพเดทที่นั่งของรายวิชาที่เปิดสอน $this->co->coId = $this->input->post('coId'.$i); $this->co->get_by_key(TRUE); $this->co->coNumSeatReg -= 1; $this->co->update(); }
// ลบการลงทะเบียน เมื่อไม่มีรายวิชาลงทะเบียนเหลืออยู่ $con_rd = array('rdStdId' => $stdId, 'rdAcY' => $acY, 'rdTmId' => $tmId, 'rdSeq' => 1); $rs_rd = $this->rd->qryRd($con_rd); if($rs_rd->num_rows()==0) { $this->rg->rgStdId = $stdId; $this->rg->rgAcY = $acY; $this->rg->rgTmId = $tmId; $this->rg->rgSeq = 1; $this->rg->delete(); } } } $this->backRegistAndSendGrade_input(); } else { $this->backRegistAndSendGrade_input(); } } // ##### end ลงทะเบียนและส่งเกรดย้อนหลัง
/* ##### start จัดการกองทุนกู้ยืม */ function showAllowSendGrade() { $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm');
$this->contents['rs_tm'] = $this->tm->get_options('','','','n');
$this->contents['acY'] = $this->session->userdata('acY'); $this->contents['tm'] = $this->session->userdata('tmId');
$this->output($this->config->item("rg_folder")."v_showAllowSendGrade"); } function addAllowSendGrade() { $this->load->library('form_validation'); $this->form_validation->set_error_delimiters('<div class="error">','</div>'); $this->form_validation->set_rules('curName',' ','trim|xss_clean'); $this->form_validation->set_rules('curId',' ','trim|required|xss_clean'); $this->form_validation->set_rules('stdTmIdAdmit',' ','trim|xss_clean'); $this->form_validation->set_rules('adY',' ','trim|required|xss_clean'); $this->form_validation->set_rules('acY',' ','callback_checkAcY2'); $this->form_validation->set_rules('tmId',' ','trim|required|xss_clean');
if($this->form_validation->run() == true) { $this->asg_input(); } else { $this->showAllowSendGrade(); } } function asg_input() { $this->load->model($this->config->item("rg_folder").'mo_rg_curriculum','cur'); $this->load->model($this->config->item("rg_folder").'mo_rg_term','tm'); $this->load->model($this->config->item("rg_folder").'mo_rg_student','std');
$curId = $this->input->post('curId'); $adY = $this->input->post('adY'); $acY = $this->input->post('acY'); $tmId = $this->input->post('tmId');
$this->contents['acY'] = $acY; $this->contents['adY'] = $adY;
$this->cur->curId = $curId; $this->contents['qu_cur'] = $this->cur->get_by_key();
$this->tm->tmId = $tmId; $this->contents['qu_tm'] = $this->tm->get_by_key();
$con_rs_std = array('stdCurId' => $curId, 'stdAdY' => $adY); $ord_rs_std = array('stdCode' => 'ASC'); $this->contents['rs_std'] = $this->std->qryStdJoinPfAsg($con_rs_std, $ord_rs_std);
$this->output($this->config->item("rg_folder")."v_addAllowSendGrade"); } function asg_insert_update() { $this->load->model($this->config->item("rg_folder").'mo_rg_allowsendgrade','asg');
$cnt = $this->input->post('cnt'); $curId = $this->input->post('curId'); $acY = $this->input->post('acY'); $adY = $this->input->post('adY'); $tmId = $this->input->post('tmId');
$con_rs_asg = array('asgAcY' => $acY, 'asgTmId' => $tmId); $rs_asg = $this->asg->qryAsg($con_rs_asg,'','');
$this->db->trans_begin(); if($rs_asg->num_rows()) { foreach($rs_asg->result() as $row_asg) { $this->asg->asgStdId = $row_asg->asgStdId; $this->asg->asgTmId = $tmId; $this->asg->asgAcY = $acY; $this->asg->delete(); } }
for($i=0; $i<$cnt; $i++) { if($this->input->post('chk'.$i)=='Y') { $this->asg->asgStdId = $this->input->post('stdId'.$i); $this->asg->asgAcY = $acY; $this->asg->asgTmId = $tmId; $this->asg->insert(); } }
if($this->db->trans_status() === false) $this->db->trans_rollback(); else $this->db->trans_commit();
$this->asg_input(); } /* ##### end จัดการกองทุนกู้ยืม */
function std_showResStudy() { $this->load->model($this->config->item("rg_folder").'mo_rg_student','std'); $this->load->model($this->config->item("rg_folder").'mo_rg_studentsummary','ssm'); $this->load->model($this->config->item("rg_folder").'mo_rg_registdetails','rd'); $this->load->model($this->config->item("rg_folder").'mo_rg_regist','rg');
$stdCode = $this->input->post('stdCode') ? $this->input->post('stdCode') : $this->session->userdata('UsPsCode');
$con_qu_std = array('stdCode' => $stdCode, 'stdGenStatus' => 'Y' ); $qu_std = $this->std->qryStd($con_qu_std); if ($qu_std->num_rows()) { $forceAssess = $this->forceAssess(); if ($forceAssess) { $row_std = $qu_std->row();
$con_qu_std = array('stdId' => $row_std->stdId); $this->contents['qu_std'] = $this->std->qryStdJoinSdtPfCurSySstElv($con_qu_std);
$i = 0; $arr = array(); $con_rs_ssm = array('ssmStdId' => $row_std->stdId); $rs_ssm = $this->ssm->qrySsm($con_rs_ssm); foreach ($rs_ssm->result() as $row_ssm) { $con_rs_ssm = array('ssmStdId' => $row_std->stdId , 'ssmTmId' => $row_ssm->ssmTmId , 'ssmAcY' => $row_ssm->ssmAcY ); $arr[$i]['qu_ssm'] = $this->ssm->qrySsmJoinTm($con_rs_ssm); $con_rs_rd = array('rdStdId' => $row_std->stdId, 'rdAcY' => $row_ssm->ssmAcY, 'rdTmId' => $row_ssm->ssmTmId ); $arr[$i]['rs_rd'] = $this->rd->qryRdJoinCoCrs($con_rs_rd); $con_qu_rg = array('rgStdId' => $row_std->stdId, 'rgAcY' => $row_ssm->ssmAcY, 'rgTmId' => $row_ssm->ssmTmId, 'rgStatus' => 'K' ); $qu_rg = $this->rg->qryRg($con_qu_rg); if ($qu_rg->num_rows()) { $arr[$i]['kssFlag'] = "** รักษาสถานภาพการเป็นนักศึกษา **"; }
$arr[$i]['sumCrAt'] = $this->rd->getSumCrAtByStdIdAcYTmId($row_std->stdId, $row_ssm->ssmAcY, $row_ssm->ssmTmId);
$i++; } $this->contents['rs'] = $arr; } } else { $this->contents['err_msg'] = "** ไม่ปรากฏรหัสนักศึกษาดังกล่าวในฐานข้อมูล **"; }
$this->output($this->config->item("rg_folder")."v_std_showResStudy"); }
/* ##### start callback function ##### */ /*function checkAcY($str){ if($str=='') { $this->form_validation->set_message('checkAcY','กรุณาป้อน%s'); return false; } else if(strlen($str)!=4) { $this->form_validation->set_message('checkAcY','%sจะต้องเท่ากับ 4 หลัก'); return false; } else if($str==0) { $this->form_validation->set_message('checkAcY','%sจะต้องมากกว่า 0'); return false; } else { return true; } } function checkAdY($str) { if($str=='') { $this->form_validation->set_message('checkAdY','กรุณาป้อน%s'); return false; } else if(strlen($str)!=4) { $this->form_validation->set_message('checkAdY','%sจะต้องเท่ากับ 4 หลัก'); return false; } else if($str==0) { $this->form_validation->set_message('checkAdY','%sจะต้องมากกว่า 0'); return false; } else { return true; } } function checkAcY2($str) { if($str=='') { $this->form_validation->set_message('checkAcY2','กรุณาป้อน%s'); return false; } else if(strlen($str)!=4) { $this->form_validation->set_message('checkAcY2','%sจะต้องเท่ากับ 4 หลัก'); return false; } else if($str==0) { $this->form_validation->set_message('checkAcY2','%sจะต้องมากกว่า 0'); return false; }
if($str >= $this->input->post('adY')) { return true; } else { $this->form_validation->set_message('checkAcY2','%sจะต้องมากกว่าหรือเท่ากับปีการศึกษาที่เข้า'); return false; } }*/ /* ##### end callback function ##### */ } ?>
|