<?php
//--Class base_Room--------------------------
//--PK of base_Room ::
//    1. roomId

include_once "Db.php";

class 
FileUpdate extends Db{

var 
$result;

var 
$fileId;
var 
$updateDate;
var 
$filename1;
var 
$filename2;
var 
$flagfile;
var 
$flagupdate;
var 
$path;
var 
$detail;
var 
$sysId;
var 
$updatetime;
var 
$flagselect;
var 
$flagrestore;
var 
$flaguse;


function 
AddNew(){
//--ใช้เมธอดนี้เมื่อต้องการเพิ่มข้อมูลใหม่
//--โดยจะกำหนดสถานะของข้อมูลของอ๊อบเจ๊กให้เป็น 1
    
$this->status 1;
}

function 
Edit(){
//--ใช้เมธอดนี้เมื่อต้องการปรับปรุงข้อมูล
//--โดยจะกำหนดสถานะของข้อมูลของอ๊อบเจ๊กให้เป็น 2
    
$this->status 2;
}

function 
Save(){
//--ใช้เมธอดนี้เมื่อต้องการบันทึกข้อมูลในอ๊อบเจ๊กเข้าสู่ฐานข้อมูล
//--โดยจะตรวจสอบสถานะของข้อมูลว่าข้อมูลในอ๊อบเจ๊กเป็นข้อมูลใหม่หรือข้อมูลเดิม
//--1 เป็นข้อมูลใหม่  2 เป็นข้อมูลเดิม
    
if ($this->status==1){
        
$sql "insert into FileUpdate values(
            '$this->fileId',
             '$this->updateDate',
             '$this->filename1',
             '$this->filename2',
             '$this->flagfile',
             '$this->flagupdate',
             '$this->path',
             '$this->detail',
            '$this->sysId',
            '$this->updatetime',
            '$this->flagselect',
            '$this->flagrestore',
            '$this->flaguse'
            )"
;
    }else {
        
$sql "update FileUpdate set 
            updateDate='$this->updateDate', 
            filename1='$this->filename1', 
            filename2='$this->filename2', 
            flagfile='$this->flagfile', 
            flagupdate='$this->flagupdate', 
            path='$this->path', 
            detail='$this->detail',
            sysId='$this->sysId',
            updatetime='$this->updatetime',
            flagselect='$this->flagselect',
            flagrestore='$this->flagrestore',
            flaguse='$this->flaguse'
            where fileId='$this->fileId'"
;
    }
    
$this->SetQuery($sql);
}

function 
Delete(){
//--ใช้เมธอดนี้เพื่อลบข้อมูลเดิมในอ๊อบเจ๊ก
//--เป็นการลบข้อมูลทีละ 1 เรคอร์ด
//--ต้องเรียกเมธอดตามลำดับดังนี้ SearchByKey()-->GetRecord()-->Delete()
    
$this->SetQuery("delete from FileUpdate where fileId='$this->fileId'");
}

function 
GetNextCode(){
//--ใช้เมธอดนี้เพื่อหาค่าสูงสุดของฟิลด์ที่ใช้เป็นคีย์ของตาราง ในลักษณะ auto increment
//--ต้องเป็นฟิลด์ที่ไม่ได้กำหนดรหัสเองทางจอภาพ
    
$this->SetQuery("select max(fileId) as num from FileUpdate");
    if (
$result=$this->GetResult()) {
        return 
$result['num']+1;
    }
}

function 
RSFileUpdate(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate order by fileId desc,updateDate desc,updatetime desc");
}
function 
RSFileUpdatenotuse(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate where flaguse='N' order by fileId desc,updateDate desc,updatetime desc");
}
function 
RSFileUpdatenotuseordertext(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate where flaguse='N' order by filename1");
}
function 
RSFileUpdate2(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate where (flaguse='Y' and (flagupdate='U' or flagupdate='D')) order by fileId desc,updateDate desc,updatetime desc");
}
function 
RSFileUpdate2path($xKey){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate where (flaguse='Y' and (flagupdate='U' or flagupdate='D')) and path='$xKey'order by fileId desc,updateDate desc,updatetime desc");
}
function 
RSFileUpdate2pathordertext($xKey){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate where (flaguse='Y' and (flagupdate='U' or flagupdate='D')) and path='$xKey'order by filename1");
}
function 
RSFileUpdatepath(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("select * from FileUpdate where flaguse='Y' group by path");
}
function 
RSFileUpdategroupname(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("SELECT * FROM `FileUpdate`   group by filename1,path order by updatetime desc,updateDate desc");
}
function 
RSFileUpdategroupnameordertext(){
//--เมธอดที่ขึ้นต้นด้วย RS (ResultSet) มีความหมายว่าจะได้รับข้อมูลกลับมาจากการ select มากกว่า 1 เรคอร์ด
//--จะต้องเรียกเมธอด GetRecord() ด้วยเสมอ นำข้อมูลจาก ResultSet เข้าอ๊อบเจ๊ก
//--โดยสามารถเพิ่มเมธอดได้ตามต้องการ แต่ต้องขึ้นต้นด้วย RS
    
$this->SetQuery("SELECT * FROM `FileUpdate`  group by filename1,path order by filename1");
}
function 
GetRecord(){
//--นำข้อมูลจาก ResultSet มากำหนดให้กับแอตทริบิวต์ของอ๊อบเจ็ก
//--เรียก GetRecord() หนึ่งครั้ง จะเลื่อนตัวชี้เรคอร์ดไปอีกหนึ่งเรคอร์ด
    
if ($this->result $this->GetResult()) {
        
$this->fileId $this->result['fileId'];
        
$this->updateDate $this->result['updateDate'];
        
$this->filename1 $this->result['filename1'];
        
$this->filename2 $this->result['filename2'];
        
$this->flagfile $this->result['flagfile'];
        
$this->flagupdate $this->result['flagupdate'];
        
$this->path $this->result['path'];
        
$this->detail $this->result['detail'];
        
$this->sysId $this->result['sysId'];
        
$this->updatetime $this->result['updatetime'];
        
$this->flagselect $this->result['flagselect'];
        
$this->flagrestore $this->result['flagrestore'];
        
$this->flaguse $this->result['flaguse'];
        return 
1;
    }else {
        return 
0;
    }
}

function 
SearchByKey($xKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from FileUpdate where fileId= '$xKey'")){ 
        return 
1;
    }else {
        return 
0;
    }
}

function 
SearchByfileId($xKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from FileUpdate where fileId= '$xKey'")){ 
        return 
1;
    }else {
        return 
0;
    }
}
function 
SearchBynotfileId($xKey,$yKey,$zKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from FileUpdate where fileId!= '$xKey' and path='$zKey' and filename1='$yKey' order by updatetime desc,updateDate desc")){ 
        return 
1;
    }else {
        return 
0;
    }
}
function 
SearchByfilename1anduse($xKey,$zKey){
//--ค้นหาข้อมูลตาม PK ต้องระบุพารามิเตอร์ด้วย และต้องตามด้วยเมธอด GetRecord() เสมอ
    
if ($this->SetQuery("select * from FileUpdate where filename1= '$xKey' and flaguse='Y' and path='$zKey'")){ 
        return 
1;
    }else {
        return 
0;
    }
}
function 
countnodir(){
    
$this->SetQuery("select count(flagupdate) as num from FileUpdate where flagupdate ='D'");
    
$result $this->GetResult();
    return 
$result['num'];
}

function 
NumRow(){
//--เป็นเมธอดที่คืนค่าจำนวนข้อมูลจากการ select โดยเมธอด RSxxxx
    
return $this->GetRowSelected();
}

function 
Destroy(){
//--เป็นเมธอดสำหรับปิดการติดต่อจากฐานข้อมูล
    
return $this->DestroyDb();
}

//****************** You can add new functions below **********************//


//--End class base_Room--

?>