<?php
//--Class ProgramStructure--------------------------

include_once "clsbase_ProgramStructure.php";

class 
ProgramStructure extends base_ProgramStructure{

//-- Use on page programs.php --
function RSProgramStructureByPgIdOredrBySeq($xKey){
    
$this->SetQuery("select * from ProgramStructure where programId='$xKey' order by sequence");
}

function 
RSProgramStructureByPgIdCdId1CdId2($xKey,$yKey,$zKey){
    
$this->SetQuery("select * from ProgramStructure where programId='$xKey' and conditionId1='$yKey' and conditionId2='$zKey' order by sequence");
}

function 
CountCondition1($xKey,$yKey){
    
$this->SetQuery("select count(conditionId1) as num from ProgramStructure where programId='$xKey' and conditionId1='$yKey'");
    if (
$result=$this->GetResult()) {
        return 
$result['num'];
    }
}
//-- The end --

function RSProgramStructureByPgIdGroupCdId1($xKey){
    
$this->SetQuery("select conditionId1, max(creditTotal) as creditTotal from ProgramStructure where programId='$xKey' group by conditionId1 order by sequence");
}

function 
RSProgramStructureByPgIdAndCdId2IsH($xKey){
    
$this->SetQuery("select * from ProgramStructure where programId='$xKey' and conditionId2=1");
}

function 
RSProgramStructureByPgIdOrderSeq($xKey){
//    $this->SetQuery("select * from ProgramStructure where programId='$xKey' group by conditionId1");
    
$this->SetQuery("select * from ProgramStructure where programId='$xKey' and conditionId2=1 order by sequence");    
}

function 
RSProgramStructureByPgIdOrderSeq2($xKey,$yKey){
    
//$this->SetQuery("select * from ProgramStructure where programId='$xKey' and conditionId1='$yKey' group by conditionId2");
    
$this->SetQuery("select * from ProgramStructure where programId='$xKey' and conditionId1='$yKey' and conditionId2!=1 order by sequence");
}

function 
GetSumPgCr($xKey){
    
$this->SetQuery("select sum(creditTotal) as num from ProgramStructure where programId='$xKey' and conditionId2=1");
    if (
$result=$this->GetResult()) {
        return 
$result['num'];
    }
}

function 
GetSumPgCr2($xKey,$yKey){
    
$this->SetQuery("select sum(creditTotal) as num from ProgramStructure where programId='$xKey' and conditionId1='$yKey' and conditionId2=1");
    if (
$result=$this->GetResult()) {
        return 
$result['num'];
    }
}

function 
GetSumCd1Cr($xKey$yKey){
    
$this->SetQuery("select sum(creditTotal) as num from ProgramStructure where programId='$xKey' and conditionId1='$yKey' and conditionId2>1");
    if (
$result=$this->GetResult()) {
        return 
$result['num'];
    }
}

function 
GetSumCd1Cr2($xKey$yKey$zKey){
    
$this->SetQuery("select sum(creditTotal) as num from ProgramStructure where programId='$xKey' and conditionId1='$yKey' and conditionId2='$zKey' ");
    if (
$result=$this->GetResult()) {
        return 
$result['num'];
    }
}

function 
RSProgramStructureByPgIdAndCd1($xKey$yKey){
    
$this->SetQuery("select * from ProgramStructure where programId='$xKey' and conditionId1='$yKey' and conditionId2>1");
}

function 
GetNextCodeCG($xKey,$yKey){
    
$this->SetQuery("select max(sequence) as num from ProgramStructure where programId='$xKey' and conditionId1='$yKey' ");
    if (
$result=$this->GetResult()) {
        return 
$result['num']+1;
    }

//--End class Program--
?>