Viewing file: 2553-09-26-1.1.04-clsCourseAssess.php (7.84 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
//--Class CourseAssess--------------------------
//--PK of CourseAssess ::
// 1. courseId
class CourseAssess extends clsDB{
var $result;
var $classId;
var $courseId;
var $courseCode;
var $courseCodeEng;
var $courseName;
var $courseNameEng;
var $creditTotal;
var $credit1;
var $credit2;
var $period1;
var $period2;
var $period3;
var $courseUnit;
function CourseAssess(&$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->courseId=$this->GetNextCode();
$sql = "insert into CourseAssess values(
'$this->courseId',
'$this->courseCode',
'$this->courseCodeEng',
'$this->courseName',
'$this->courseNameEng',
'$this->creditTotal',
'$this->credit1',
'$this->credit2',
'$this->period1',
'$this->period2',
'$this->period3',
'$this->courseUnit'
)";
}else {
$sql = "update CourseAssess set
courseCode='$this->courseCode',
courseCodeEng='$this->courseCodeEng',
courseName='$this->courseName',
courseNameEng='$this->courseNameEng',
creditTotal='$this->creditTotal',
credit1='$this->credit1',
credit2='$this->credit2',
period1='$this->period1',
period2='$this->period2',
period3='$this->period3',
courseUnit='$this->courseUnit'
where courseId='$this->courseId'";
}
return $this->Dml($sql);
}
function Delete(){
//--ลบข้อมูลเดิมในอ๊อบเจ๊ก, เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
return $this->Dml("delete from CourseAssess where courseId='$this->courseId'");
}
function GetNextCode(){
//--หาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
//--ต้องเป็นฟิลด์ชนิดตัวเลขจำนวนเต็มเท่านั้น และไม่ได้กำหนดรหัสเองทางจอภาพ
$this->SetQuery("select max(courseId) as num from CourseAssess");
if ($result=$this->GetResult()) {
return $result['num']+1;
}
}
function RSCourseAssess(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
$this->SetQuery("select * from CourseAssess order by courseId");
}
function GetRecord(){
//--นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
if ($this->result = $this->GetResult()) {
$this->courseId = $this->result['courseId'];
$this->courseCode = $this->result['courseCode'];
$this->courseCodeEng = $this->result['courseCodeEng'];
$this->courseName = $this->result['courseName'];
$this->courseNameEng = $this->result['courseNameEng'];
$this->creditTotal = $this->result['creditTotal'];
$this->credit1 = $this->result['credit1'];
$this->credit2 = $this->result['credit2'];
$this->period1 = $this->result['period1'];
$this->period2 = $this->result['period2'];
$this->period3 = $this->result['period3'];
$this->courseUnit = $this->result['courseUnit'];
return 1;
}else {
return 0;
}
}
function SearchByKey($xKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
if ($this->SetQuery("select * from CourseAssess where courseId= '$xKey'")){
return 1;
}else {
return 0;
}
}
//****************** You can add new functions below **********************//
function SearchByKeyDistinct($xKey){
if ($this->SetQuery("select DISTINCT * from CourseAssess where courseId= '$xKey'")){
return 1;
}else {
return 0;
}
}
function SearchByCourseCode($xKey){
if ($this->SetQuery("select * from CourseAssess where courseCode= '$xKey'")){
return 1;
}else {
return 0;
}
}
function SearchByCourseName($xKey){
if ($this->SetQuery("select * from CourseAssess where courseName like '%$xKey%'")){
return 1;
}else {
return 0;
}
}
function SearchByCourseId($xKey){
if ($this->SetQuery("select * from CourseAssess where courseId= '$xKey'")){
return 1;
}else {
return 0;
}
}
function SearchJoinByAcadSemLikeCourseCodeGroupByCourseId($xacadYear,$xsemester,$xcourseCode){
if ($this->SetQuery("select * from ClassAssess A, CourseAssess B where A.acadYear = '$xacadYear' and A.semester = '$xsemester' and A.courseId = B.courseId and B.courseCode like '%$xcourseCode%' group by B.courseId")){
return 1;
}else {
return 0;
}
}
function SearchJoinByAcadSemLikeCourseNameGroupByCourseId($xacadYear,$xsemester,$xcourseName){
if ($this->SetQuery("select * from ClassAssess A, CourseAssess B where A.acadYear = '$xacadYear' and A.semester = '$xsemester' and A.courseId = B.courseId and B.courseName like '%$xcourseName%' group by B.courseId")){
return 1;
}else {
return 0;
}
}
// closeDate
function RSCourseAssessByAcadSemCoCodeCoName($xacadYear,$xsemester,$coCode, $coName){
$this->SetQuery("select B.* from ClassAssess A, CourseAssess B where A.acadYear = '$xacadYear' and A.semester = '$xsemester' and A.courseId = B.courseId and B.courseCode like '%$coCode%' and B.courseName like '%$coName%' group by B.courseId
");
}
function RSCourseEpByAcYSe($xacadYear,$xsemester){
if ($this->SetQuery("select ca.* From CourseAssess ca
JOIN ClassAssess cl ON cl.courseId = ca.courseId
JOIN TimeTableAssess tt ON tt.ttClId = cl.classId
where acadYear = '$xacadYear'
and semester = '$xsemester'
and ttEpMepId > 0
group by ca.courseId order by ca.courseCode
")){
return 1;
}else {
return 0;
}
}
// หารายวิชาที่รับผิดชอบ
function RSCrsOfOwner($acadYear,$semester, $officer){
if ($this->SetQuery(" SELECT co.*
FROM CourseAssess co
INNER JOIN ClassAssess cl ON co.courseId = cl.courseId
INNER JOIN ClassInStructorAssess cla ON cla.classId = cl.classId
WHERE cl.acadYear = '$acadYear'
AND cl.semester = '$semester'
AND cl.officerId = '$officer'
GROUP BY courseId
")){
return 1;
}else {
return 0;
}
}
// หารายวิชาที่รับผิดชอบ ที่ตรงกับแบบประเมิน
function RSCrsOfOwnerDe($acadYear,$semester, $officerId, $defineid){
$cond = ($officerId!='%')?"AND cl.officerId = '$officerId'":'';
$sql = " SELECT co.*
FROM CourseAssess co
INNER JOIN ClassAssess cl ON co.courseId = cl.courseId
INNER JOIN HoldCourse hc ON hc.classId = cl.classId
WHERE cl.acadYear = '$acadYear'
AND cl.semester = '$semester'
AND hc.defineid = '$defineid'
$cond
GROUP BY co.courseId";
if ($this->SetQuery($sql)){
//echo $sql;
return 1;
}else {
return 0;
}
}
// หารายวิชาที่สอนที่ตรงกับแบบประเมิน บางรายวิชา
function RSCrsTeachDe($acadYear,$semester, $officerId, $defineid, $assid){
$cond = ($officerId!='%')?"AND hc.officerId = '$officerId'":'';
$cond.= ($defineid!='%')?"AND hc.defineid = '$defineid'":'';
$cond.= ($assid!='%')?"AND df.assid = '$assid'":'';
$sql = " SELECT co.*
FROM CourseAssess co
INNER JOIN ClassAssess cl ON co.courseId = cl.courseId
INNER JOIN HoldCourse hc ON hc.classId = cl.classId
INNER JOIN DefineAssessment df ON hc.defineid = df.defineid
WHERE cl.acadYear = '$acadYear'
AND cl.semester = '$semester'
$cond
GROUP BY co.courseId";
if ($this->SetQuery($sql)){
return 1;
}else {
return 0;
}
}
} //--End class CourseAssess--
?>
|