DUT001-1.php 7.19 KB
<?php 

//*****************************************************************************

//* 

//* プログラム名:当番表

//* プログラムID:DUT001.php

//* 機能        :一覧画面

//* 作成者      :荒内(MTC)

//* 

//*****************************************************************************



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

include("include/session_start.inc");

include("include/SessionChk.inc");

include('include/smarty.conf');



include("inc/header.inc");

$strDBinc="include/dbcon.inc";

include($strDBinc);



	//当番情報

	$strSQL="Select seq,touban_name,memo From mst_touban Order By seq";

	$objRecSet = pg_exec($strSQL);

	if($objRecSet==false){

		echo("SQL実行に失敗しました(SELECT)");

		exit;

	}	

	//日付編集

	$youbi=array("日","月","火","水","木","金","土");

	$clender=array("#FDDFFD","#ffffe6","#ffffe6","#ffffe6","#ffffe6","#ffffe6","#CCF8FB");

	$schedule=array("#FDDFFD","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#FFFFFF","#CCF8FB");

	if ($strwkdate==""){

			$st_date = date("Y/m/d");

			list($st_year,$st_mon,$st_day)=split("/", $st_date);



			$st_sengetu =date("Ymd", mktime (0,0,0,$st_mon-1,$st_day,$st_year));

			$st_sensyu =date("Ymd", mktime (0,0,0,$st_mon,$st_day-7,$st_year));

			$st_kinou =date("Ymd", mktime (0,0,0,$st_mon,$st_day-1,$st_year));

			$st_honjitu =date("Ymd", mktime (0,0,0,$st_mon,$st_day,$st_year));

			$st_raisyu =date("Ymd", mktime (0,0,0,$st_mon,$st_day+7,$st_year));

			$st_ashita =date("Ymd", mktime (0,0,0,$st_mon,$st_day+1,$st_year));

			$st_raigetu =date("Ymd", mktime (0,0,0,$st_mon+1,$st_day,$st_year));

			$strwkdate=$st_honjitu;

	}else{

			$st_date = date("Y/m/d");

			list($st_year,$st_mon,$st_day)=split("/", $st_date);

			$st_honjitu =date("Ymd", mktime (0,0,0,$st_mon,$st_day,$st_year));



			$st_year=substr($strwkdate, 0, 4);

			$st_mon=substr($strwkdate, 4, 2);

			$st_day=substr($strwkdate, 6, 2);

			$st_sengetu =date("Ymd", mktime (0,0,0,$st_mon-1,$st_day,$st_year));

			$st_sensyu =date("Ymd", mktime (0,0,0,$st_mon,$st_day-7,$st_year));

			$st_raisyu =date("Ymd", mktime (0,0,0,$st_mon,$st_day+7,$st_year));

			$st_raigetu =date("Ymd", mktime (0,0,0,$st_mon+1,$st_day,$st_year));

			$st_kinou =date("Ymd", mktime (0,0,0,$st_mon,$st_day-1,$st_year));

			$st_ashita =date("Ymd", mktime (0,0,0,$st_mon,$st_day+1,$st_year));

	}



		//<!--スケジュールー-->

		$year="";

		for ($intCnt = $st_year-1 ; $intCnt <= $st_year+1 ; $intCnt++) {

				if ($st_year == $intCnt) {

						$year.= "<option value=".$intCnt." selected>".$intCnt."年</option>\n";

				}else{

						$year.= "<option value=".$intCnt.">".$intCnt."年</option>\n";

				}

		}



		$month="";

		for ($intCnt = 1 ; $intCnt <= 12 ; $intCnt++) {

				if ($st_mon == $intCnt) {

					if (strlen($intCnt)==1){

							$month.= "<option value=\""."0".$intCnt."\" selected>".$intCnt."月</option>\n";

					}else{

							$month.= "<option value=".$intCnt." selected>".$intCnt."月</option>\n";

					}



				}else{

					if (strlen($intCnt)==1){

							$month.= "<option value=\""."0".$intCnt."\">".$intCnt."月</option>\n";

					}else{

							$month.= "<option value=".$intCnt.">".$intCnt."月</option>\n";

					}

				}

		}



		//カレンダー表示

		for ($intCnt = 0; $intCnt < 7; $intCnt++) {

				$intday =date("j", mktime (0,0,0,$st_mon,$intCnt+$st_day,$st_year));

				$intYoubi=date("w", mktime (0,0,0,$st_mon,$intCnt+$st_day,$st_year));

				$WeekColor[$intCnt] = $clender[$intYoubi];
				if(date("Ymd", mktime (0,0,0,$st_mon,$intCnt+$st_day,$st_year)) == date("Ymd")){
					//今日色
					$WeekColor[$intCnt]="#FFFFAA";
				}

				$Weekdate[$intCnt] =  $intday."日(".$youbi[$intYoubi].")";

		}



		$intMax=pg_numrows($objRecSet);

		for($intCnt = 0; $intCnt < $intMax ; $intCnt++) {

				$Data = pg_fetch_object($objRecSet, $intCnt);

				$naiyou1[$intCnt]=$Data->touban_name;

				for($intDateCnt = 0; $intDateCnt < 7; $intDateCnt++) {

						//日付

						$setdate =date("Ymd", mktime (0,0,0,$st_mon,$st_day+$intDateCnt,$st_year));

						$intYoubi=date("w", mktime (0,0,0,$st_mon,$st_day+$intDateCnt,$st_year));



						//休日設定

						$chkdate=date("Y/m/d", mktime (0,0,0,$st_mon,$st_day+$intDateCnt,$st_year));

						$strHoliday="Select holiday_name from holiday_tbl where holiday_date='$chkdate'";

						$objHoliday = pg_exec($strHoliday);

						if (pg_numrows($objHoliday)>0){

								$intYoubi=0;

						}

						//当番情報

						$toban_date=substr($setdate, 0, 4)."/".substr($setdate, 4, 2)."/".substr($setdate, 6, 2);

						$strSQL="Select seq,syain_cd,touban_st_time,touban_ed_time From touban_tbl WHERE ".

								"toban_no=$Data->seq and touban_st_date<='$toban_date' and ".

								"'$toban_date'<=touban_ed_date";

						$objRevSet = pg_exec($strSQL);

						if($objRevSet==false){

								echo("SQL実行に失敗しました(SELECT)");

								exit;

						}

						$intData=0;

						$naiyou2[$intCnt][$intDateCnt]= "<a href=javascript:dut_inp($setdate,$Data->seq,$intData);>".

											 											"<img src=image/write2.gif alt=当番 border=0></a><BR>";

						for($intTouCnt = 0; $intTouCnt < pg_numrows($objRevSet); $intTouCnt++) {

								$objTouData = pg_fetch_object($objRevSet, $intTouCnt);

								

								//開始時刻

								$strdata="";

								if ($objTouData->touban_st_time != ""){

									list($touban_hour_b,$touban_mini_b)=split(":", $objTouData->touban_st_time);

									$strdata=$touban_hour_b.":".$touban_mini_b." ";

								}

								else{

									$strdata="";

								}

								//終了時刻

								if ($objTouData->touban_ed_time != ""){

									list($touban_hour_e,$touban_mini_e)=split(":", $objTouData->touban_ed_time);

									$strdata=$strdata."-".$touban_hour_e.":".$touban_mini_e;

								}

								//社員名取得

								$strJyoken=str_replace("/","' or syain_cd='",$objTouData->syain_cd);

								$strSyain="SELECT name_kj_sei,name_kj_mei FROM syain_tbl ".

													"Where syain_cd=" . "'" .$strJyoken ."'" .

													" Order by disp_rank";

								$objRecSyain = pg_exec($strSyain);

								if($objRecSyain==false){

									echo("SQL実行に失敗しました(SELECT)");

									exit;

								}



								for ($intSyainCnt = 0; $intSyainCnt < pg_numrows($objRecSyain); $intSyainCnt++) {

										$objSyain = pg_fetch_object($objRecSyain, $intSyainCnt);

										$naiyou2[$intCnt][$intDateCnt].= "<li><a href=javascript:dut_inp($setdate,$Data->seq,$objTouData->seq);>".

												 "<span class=Normalfont>".

												 $strdata.$objSyain->name_kj_sei.$objSyain->name_kj_mei."</span></a></li>";

								}

						}

				}

		}	

$o_smarty->assign('year',$year);

$o_smarty->assign('month',$month);



$o_smarty->assign('st_sengetu',$st_sengetu);

$o_smarty->assign('st_sensyu',$st_sensyu);

$o_smarty->assign('st_kinou',$st_kinou);

$o_smarty->assign('st_honjitu',$st_honjitu);

$o_smarty->assign('st_ashita',$st_ashita);

$o_smarty->assign('st_raisyu',$st_raisyu);

$o_smarty->assign('st_raigetu',$st_raigetu);



$o_smarty->assign('WeekColor',$WeekColor);

$o_smarty->assign('Weekdate',$Weekdate);



$o_smarty->assign('naiyou1',$naiyou1);

$o_smarty->assign('naiyou2',$naiyou2);



$o_smarty->assign('strwkdate',$strwkdate);

$o_smarty->assign('calYMD',substr($strwkdate,0,4)."/".substr($strwkdate,4,2)."/".substr($strwkdate,6,2));


$o_smarty->display('DUT001-1.tpl');



?>