Viewing file: 2551-11-11-1.0.02-clsOfficerAssess.php (7.99 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
//--Class OfficerAssess--------------------------
//--PK of OfficerAssess ::
// 1. officerId
class OfficerAssess extends clsDB{
var $result;
var $officerId;
var $officerCode;
var $officerPassword;
var $officerType;
var $prefixName;
var $officerName;
var $officerSurname;
var $officerNameEng;
var $officerSurnameEng;
var $xbar;
var $sd;
function OfficerAssess(&$c){
$this->c=$c->c;
$this->DB=$c->db;
}
function Save(){
//--ข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม --1:ข้อมูลใหม่ 2:ข้อมูลเดิม
if ($this->status==1){
//uncomment a line below if your table use ID as running number
//$this->officerId=$this->GetNextCode();
$sql = "insert into OfficerAssess values(
'$this->officerId',
'$this->officerCode',
'$this->officerPassword',
'$this->officerType',
'$this->prefixName',
'$this->officerName',
'$this->officerSurname',
'$this->officerNameEng',
'$this->officerSurnameEng'
)";
}else {
$sql = "update OfficerAssess set
officerCode='$this->officerCode',
officerPassword='$this->officerPassword',
officerType='$this->officerType',
prefixName='$this->prefixName',
officerName='$this->officerName',
officerSurname='$this->officerSurname',
officerNameEng='$this->officerNameEng',
officerSurnameEng='$this->officerSurnameEng'
where officerId='$this->officerId'";
}
return $this->Dml($sql);
}
function Delete(){
//--ลบข้อมูลเดิมในอ๊อบเจ๊ก, เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
return $this->Dml("delete from OfficerAssess where officerId='$this->officerId'");
}
function GetNextCode(){
//--หาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
//--ต้องเป็นฟิลด์ชนิดตัวเลขจำนวนเต็มเท่านั้น และไม่ได้กำหนดรหัสเองทางจอภาพ
$this->SetQuery("select max(officerId) as num from OfficerAssess");
if ($result=$this->GetResult()) {
return $result['num']+1;
}
}
function RSOfficerAssess(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
$this->SetQuery("select * from OfficerAssess order by officerId");
}
function GetRecord(){
//--นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
if ($this->result = $this->GetResult()) {
$this->officerId = $this->result['officerId'];
$this->officerCode = $this->result['officerCode'];
$this->officerPassword = $this->result['officerPassword'];
$this->officerType = $this->result['officerType'];
$this->prefixName = $this->result['prefixName'];
$this->officerName = $this->result['officerName'];
$this->officerSurname = $this->result['officerSurname'];
$this->officerNameEng = $this->result['officerNameEng'];
$this->officerSurnameEng = $this->result['officerSurnameEng'];
$this->xbar = $this->result['xbar'];
$this->sd = $this->result['sd'];
return 1;
}else {
return 0;
}
}
function SearchByKey($xKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
if ($this->SetQuery("select * from OfficerAssess where officerId= '$xKey'")){
return 1;
}else {
return 0;
}
}
//****************** You can add new functions below **********************//
function DeleteOfficerAssess(){
return $this->Dml("delete from OfficerAssess");
}
function SearchByOfCode($xKey){
if ($this->SetQuery("select * from OfficerAssess where officerCode = '$xKey'")){
return 1;
}else {
return 0;
}
}
function CountTeacherAll(){
$this->SetQuery("select count(*) as num from OfficerAssess");
$result = $this->GetResult();
return $result['num'];
}
function SearchRSLimitOrderOfficerIdNameSur($xstart,$xpageSize){
if ($this->SetQuery("select * From OfficerAssess order by officerCode limit $xstart, $xpageSize")){
return 1;
}else {
return 0;
}
}
function RSOfficerAssessOrderNameSur(){
if ($this->SetQuery("select * from OfficerAssess order by officerName, officerSurname")){
return 1;
}else {
return 0;
}
}
function SearchAcadSemGpOfficerOrderNameSur($xacadYear,$xsemester){
if ($this->SetQuery("select * from ClassAssess A, ClassInStructorAssess B, OfficerAssess C where acadYear = '$xacadYear' and semester = '$xsemester' and A.classId = B.classId and B.officerId = C.officerId group by B.officerId order by officerName, officerSurname")){
return 1;
}else {
return 0;
}
}
function SearchAcadSemDefineGpOfficerOrderNameSurJoin4($xacadYear,$xsemester,$xdefineid){
if ($this->SetQuery("select * from ClassAssess A, ClassInStructorAssess B, OfficerAssess C, HoldCourse D where acadYear = '$xacadYear' and semester = '$xsemester' and defineid = '$xdefineid' and A.classId = D.classId and A.classId = B.classId and B.officerId = C.officerId group by B.officerId order by officerName, officerSurname")){
return 1;
}else {
return 0;
}
}
function SearchRSLikeOfficerCodeNameSurname($xofficerCode,$xofficerName,$xofficerSurname){
if ($this->SetQuery("select * from OfficerAssess where officerCode like '%$xofficerCode%' and officerName like '%$xofficerName%' and officerSurname like '%$xofficerSurname%'")){
return 1;
}else {
return 0;
}
}
//23/11/2006 edit 24/10/2008
function SearchResultICollageByAcadSemAssidDefineidOfficerId($xacadYear,$xsemester,$xdefineid,$xofficerId){
if ($this->SetQuery("
select oa.officerId, oa.officerName, oa.officerSurname, A.xbar, sqrt(A.val - pow(A.xbar,2)) as sd
from OfficerAssess oa,
(
SELECT sectionRQid,total / ( dd * num ) as xbar, (sumpow2 / (dd * num)) as val
FROM
(
SELECT sa.sectionRQid, count( DISTINCT RQid ) AS num,count( DISTINCT da.doid ) AS dd,sum( point ) AS total, sum(point *point) AS sumpow2
FROM DefineAssessment df
INNER JOIN DoAssessment da ON df.defineid = da.defineid
INNER JOIN ResultRQ rrq ON rrq.doid = da.doid
INNER JOIN SectionAll sa ON sa.assid = df.assid
WHERE df.acadYear = '$xacadYear'
AND df.semester = '$xsemester'
AND df.defineid = '$xdefineid'
AND da.officerId = '$xofficerId'
AND sa.sectionRQid = rrq.sectionRQid
group by sa.sectionRQid
) inn
) A
where oa.officerId = '$xofficerId'
")){
return 1;
}else {
return 0;
}
}
function SearchTeacherNotAssess($xacadYear,$xsemester,$xAssid){
if ($this->SetQuery("
select * from OfficerAssess
where officerCode NOT IN
(
select officerCode from DoAssessmentTeach dat, DefineAssessment da ,OfficerAssess oa
where da.acadYear='$xacadYear'
and da.semester='$xsemester'
and da.Assid='$xAssid'
and da.defineid=dat.defineid
and dat.officerId=oa.officerId
)
")){
return 1;
}else {
return 0;
}
}
function RSTeacherInEassessByAcYSeClassId($xacadYear,$xsemester,$xclassId){
if ($this->SetQuery("
select oa.* from OfficerAssess oa ,(
select distinct cis.officerId as officerId from ClassInStructorAssess cis,
DefineAssessment da
where da.acadYear = '$xacadYear'
and da.semester = '$xsemester'
and cis.classId = '$xclassId' and da.flag = '0'
union
select distinct cis.officerId as officerId from DefineAssessment da
join HoldCourse hc on da.defineid = hc.defineid
join ClassInStructorAssess cis on hc.classId = cis.classId
where da.flag = '1' and hc.classId = '$xclassId'
union
select distinct officerId from DoAssessment
where classId = '$xclassId'
union
select distinct officerId from HoldCourse
where classId = '$xclassId' and officerId != 0
union
select distinct tt.ttOfId as officerId from HoldCourse hc
join TimeTableAssess tt on hc.ttId = tt.ttId
where hc.classId = '$xclassId'
)A
where A.officerId = oa.officerId
order by oa.officerName
")){
return 1;
}else {
return 0;
}
}
} //--End class OfficerAssess--
?>
|