Tryag File Manager
Home
||
Turbo Force
||
B-F Config_Cpanel
Current Path :
/
home
/
cts.eemo.co.kr
/
public_html
/
src
/
library
/
CTS
/
Or
Select Your Path :
Upload File :
New :
File
Dir
/home/cts.eemo.co.kr/public_html/src/library/CTS/Farm.php
<?php namespace Farm; require_once '../../library/MeekroDB/DB.php'; class Farm { /** * 농장상세정보를 가져온다. * @author yun * @param array 검색조건 파라미터 * @return array 리턴값은 결과값에 대한 배열 */ public static function getFarmDetail($arrParam) { if(count($arrParam) > 0) $condition = " AND ".implode(" AND ", $arrParam); //\DB::debugMode(); try { $res = \DB::query("SELECT * FROM farm WHERE farm_code IS NOT NULL ".$condition." order BY registration_time DESC "); } catch(Exception $e) { } return $res; } /** * 농장 이미지를 가져온다. * @author yun * @param string 검색조건 파라미터 * @return array 리턴값은 결과값에 대한 배열 */ public static function getFarmThumnail($farm_code) { //\DB::debugMode(); try { $res = \DB::query("SELECT * FROM image_storage where farm_code = '{$farm_code}'"); } catch(Exception $e) { } return $res; } /** * 농장목록을 가져온다. * @author yun * @param array $arrParam 검색조건 파라미터, 가져올 행 * @return array 리턴값은 결과값에 대한 배열 */ //public static function getFarmList($arrParam, $sqlLimit) { public static function getFarmList($arrParam=null, $sqlLimit) { if(count($arrParam) > 0) $condition = " AND "; //\DB::debugMode(); try { $res = \DB::query("SELECT * FROM farm order by farm_code DESC ".$sqlLimit.""); } catch(Exception $e) { } return $res; } /** * 페이징을 위한 목록 갯수. * @author yun * @param array 검색조건 파라미터 * @return array 리턴값은 결과값에 대한 배열 */ public static function getFarmListcnt($arrParam) { //\DB::debugMode(); if(count($arrParam) > 0) $condition = " AND "; try { $resCnt = \DB::queryFirstRow("SELECT count(farm_code) cnt FROM farm "); } catch(Exception $e) { } return $resCnt["cnt"]; } /** * 페이징 함수 * @param string 전체 갯수, 현재페이지 * @return array 페이징 셋팅값 */ public static function createPaging($rowcnt, $currentPage="", $viewCount=10, $viewRecord=10) { /** * 페이지 정보 */ /* 현재 페이지 */ $paging["currentPage"] = ($currentPage) ? $currentPage : "1"; /* 한 페이지에 보여줄 데이터 수 */ $paging["viewCount"] = $viewCount; /* 페이지 레코드 단위 */ $paging["viewRecord"] = $viewRecord; /* 총 데이터 수 */ $paging["countTotalRow"] = $rowcnt; /* 총 페이지 수 */ $paging["countTotalPage"] = ceil($paging["countTotalRow"]/$paging["viewCount"]); /* 보여주기 시작할 데이터 번호 */ $paging["viewStarRow"] = $paging["viewCount"]*($paging["currentPage"]-1); // 보여주기 시작할 데이터 번호 /* 잘못된 페이지 번호 입력시 페이지 번호 정정 : 현재 페이지가 1보다 작을 경우 */ if ($paging["currentPage"]<1) $paging["currentPage"] = 1; /* 잘못된 페이지 번호 입력시 페이지 번호 정정 : 현재 페이지가 최대 페이지보다 클 경우 */ if ($paging["currentPage"]>$paging["countTotalPage"]) $paging["currentPage"] = $paging["countTotalPage"]; /** * 페이지 레코드 정보 */ /* 현재 페이지 셋 */ $pageRecord["currentSet"] = ceil(($paging["viewStarRow"]+1)/($paging["viewCount"]*$paging["viewRecord"])); /* 현재 페이지 셋의 시작 데이터 번호 */ $pageRecord["currentStartRow"] = ($paging["viewCount"]*$paging["viewRecord"]*$pageRecord["currentSet"])-($paging["viewCount"]*$paging["viewRecord"]); /* 현재 페이지 셋의 마지막 데이터 번호 */ $pageRecord["currentEndRow"] = $paging["viewCount"]*$paging["viewRecord"]*$pageRecord["currentSet"]; /* 데이터의 마지막 페이지 번호 */ $pageRecord["last"] = $paging["countTotalPage"]; /* 데이터의 처음 페이지 번호 */ $pageRecord["first"] = 1; /* 다음셋의 페이지 번호 */ $pageRecord["nextSet"] = $pageRecord["currentSet"]*$paging["viewRecord"]+1; /* 이전셋의 페이지 번호 */ $pageRecord["previousSet"] = ($pageRecord["currentSet"]-1)*$paging["viewRecord"]; $pageRecord["countTotalRow"] = $paging["countTotalRow"]; /* 잘못된 이전셋의 페이지 번호 입력시 페이지 번호 정정 : 이전셋의 페이지번호가 1보다 작을 경우 */ if ($pageRecord["previousSet"]<1) $pageRecord["previousSet"] = 1; /* 잘못된 이전셋의 페이지 번호 입력시 페이지 번호 정정 : 다음셋의 페이지번호가 최대 페이지번호보다 클 경우 */ if ($pageRecord["nextSet"]>$paging["countTotalPage"]) $pageRecord["nextSet"] = $paging["countTotalPage"]; /* 페이지 블럭 생성 */ for($i = ($pageRecord["currentSet"]-1)*$paging["viewRecord"]; $i<$pageRecord["currentSet"]*$paging["viewRecord"]&&$i<$paging["countTotalPage"]; $i++) { $pageRecord["record"][] = $i+1; } return array($paging, $pageRecord); } /** * 페이징 함수 * @param array */ public static function printPageNavigator($pageRecord) { if(count($_GET) > 0) { foreach($_GET as $key=>$val) { if($key=="page") continue; $qryStr .= "&{$key}={$val}"; } } if(count($pageRecord["record"]) > 0) { ?> <ul class="pagination justify-content-center"> <li class="page-item"><a class="page-link" href="?page=<?php echo $pageRecord["first"]?><?php echo $qryStr?>">««</a></li> <?php if($pageRecord["record"][0] > 10):?><li class="page-item"><a class="page-link" href="?page=<?php echo $pageRecord["previousSet"]?><?php echo $qryStr?>">«</a></li><?php endif;?> <?php if($_GET['page']) $thisPage = $_GET['page']; else $thisPage = 1; foreach($pageRecord["record"] as $key=>$val) :?> <li<?php if($thisPage == $val): ?> class="active"<?php endif;?>><a class="page-link" href="?page=<?php echo $val?><?php echo $qryStr?>"<?php if($thisPage==$val) echo ' class="current"'?>><?php echo $val?></a></li> <?php endforeach?> <?php if($pageRecord["record"][0] < $pageRecord["last"]-10):?><li class="page-item"><a class="page-link" href="?page=<?php echo $pageRecord["nextSet"]?><?php echo $qryStr?>">»</a></li><?php endif;?> <li class="page-item"><a class="page-link" href="?page=<?php echo $pageRecord["last"]?><?php echo $qryStr?>">»»</a></li> </ul> <?php } } /** * 페이지 이동 함수 * @param string $url 이동할 URL */ public static function goPage($url) { echo "<script>location='{$url}';</script>"; exit; } /** * 농장 정보 업데이트 * @author yun * @param array, string 업데이트 될 농장 정보들, 농장코드 * @return boolean */ public static function setFarmData($arrParams, $farm_code) { //\DB::debugMode(); try { \DB::update('farm',$arrParams, "farm_code=%s", $farm_code); $count = \DB::affectedRows(); } catch(MeekroDBException $e) { echo "Error: " . $e->getMessage() . "<br>\n"; // something about duplicate keys echo "SQL Query: " . $e->getQuery() . "<br>\n"; // INSERT INTO accounts... return false; } return true; } /** * 파일정보를 삭제한다. * @author yun * @param string, string 삭제할 파일키값과 참조키 * @return boolean */ public static function delFile($idx, $joinCode) { try { \DB::delete('image_storage', "idx=%s", $idx); } catch(Exception $e) { return false; } $count = \DB::affectedRows(); if($count > 0) { return true; } else{ return false; } } /** * 파일정보를 입력한다 * @author yun * @param array 테이블에서 삭제될 파일정보 * @return boolean */ public static function fileDbInsert($arr) { try { \DB::insert('image_storage', $arr); } catch(Exception $e) { } $count = \DB::affectedRows(); if($count > 0) { return true; } else{ return false; } } /** * 농장 정보 생성 * @author yun * @param array * @return boolean */ public static function setFarmDataInsert($arrParams) { //\DB::debugMode(); try { \DB::insert('farm',$arrParams); $count = \DB::affectedRows(); if($count){ $res = \DB::query("SELECT * from farm order by farm_code desc limit 1"); return $res[0]['farm_code']; } } catch(MeekroDBException $e) { echo "Error: " . $e->getMessage() . "<br>\n"; // something about duplicate keys echo "SQL Query: " . $e->getQuery() . "<br>\n"; // INSERT INTO accounts... return false; } } /** * 파일정보를 가져온다 * @author yun * @param string, string 파일정보 타입과, 파일 키값 * @return array */ public static function getFiles($types, $farm_code) { //\DB::debugMode(); try { $res = \DB::query("SELECT * FROM image_storage where farm_code='{$farm_code}' "); } catch(Exception $e) { } return $res; } } ?>