PRJ913.php 2.9 KB
<?php 
//*****************************************************************************
//* 
//* プログラム名:プロジェクト管理
//* プログラムID:PRJ913.php
//* 機能        :進捗更新
//* 作成者      :
//* 
//*****************************************************************************

header( "Content-type: text/html; charset=EUC-JP");

include("inc/session_start.inc");
include("inc/SessionChk.inc");

include('./include/smarty.conf');

$strDBinc="include/dbcon.inc";
include($strDBinc);

//あっぷでーと
$strSQL = "update prj_task_tbl set ";
$strSQL .= "progress = ".$prog.", koshin_date = ".date("Ymd")." ";
$strSQL .= "where seq = ".$seq." and task_seq = ".$tseq." and task_sub_seq =".$sseq;
$objRec = pg_exec($strSQL);
if($objRec == false){
	echo("SQL実行に失敗しました(UPDATE)");
	exit;
}

//監査状態更新
$strSQL = "update prj_comm_tbl set ";
$strSQL .= "comment = '0' ";
$strSQL .= "where seq = ".$seq." and comm_flg = 3 ";
$objRec = pg_exec($strSQL);
if($objRec == false){
	echo("SQL実行に失敗しました(UPDATE)");
	exit;
}

//率2
if($sseq > 0){
	$strSQL2 = "select seq, task_seq, task_sub_seq, task_name, task_naiyo, start_date, end_date, unit_seq, progress_max, progress, tanto_list, koshin_date from prj_task_tbl ";
	$strSQL2 .= "where seq = ".$seq." and task_seq = ".$tseq." and task_sub_seq > 0";
	$objRec2 = pg_exec($strSQL2);
	if($objRec2 == false){
		echo("SQL実行に失敗しました(SELECT)");
		exit;
	}
	if(pg_numrows($objRec2) > 0){
		$numProg = 0;
		for($j=0;$j<pg_numrows($objRec2);$j++){
			$objftc2 = pg_fetch_object($objRec2, $j);
			//率計算
			$numProg = $numProg + $objftc2->progress / $objftc2->progress_max;
		}
		$newProg = floor($numProg / pg_numrows($objRec2) * 100);
		//更新
		$strSQL = "update prj_task_tbl set ";
		$strSQL .= "progress_max = 100, progress  = ".$newProg." ";
		$strSQL .= "where seq = ".$seq." and task_seq = ".$tseq." and task_sub_seq = 0";
		$objRec = pg_exec($strSQL);
		if($objRec == false){
			echo("SQL実行に失敗しました(UPDATE)");
			exit;
		}
	}
}

//率
$strSQL2 = "select seq, task_seq, task_sub_seq, task_name, task_naiyo, start_date, end_date, unit_seq, progress_max, progress, tanto_list, koshin_date from prj_task_tbl ";
$strSQL2 .= "where seq = ".$seq." and task_sub_seq = 0";
$objRec2 = pg_exec($strSQL2);
if($objRec2 == false){
	echo("SQL実行に失敗しました(SELECT)");
	exit;
}
if(pg_numrows($objRec2) == 0){
	$endFlg = 0;			
}else{
	$numProg = 0;
	for($j=0;$j<pg_numrows($objRec2);$j++){
		$objftc2 = pg_fetch_object($objRec2, $j);
		//率計算
		$numProg = $numProg + $objftc2->progress / $objftc2->progress_max;
	}
	$strProg[$i] = floor($numProg / pg_numrows($objRec2) * 100);
	if(floor($numProg / pg_numrows($objRec2) * 100) == 100){
		$endFlg = 1;
	}else{
		$endFlg = 0;
	}
}
//完了状態更新
$strSQL = "update prj_tbl set ";
$strSQL .= "end_flg = ".$endFlg." ";
$strSQL .= "where seq = ".$seq;
$objRec = pg_exec($strSQL);
if($objRec == false){
	echo("SQL実行に失敗しました(UPDATE)");
	exit;
}


?>