Tryag File Manager
Home
||
Turbo Force
||
B-F Config_Cpanel
Current Path :
/
home
/
mcts.eemo.co.kr
/
public_html
/
src
/
library
/
CTS
/
Or
Select Your Path :
Upload File :
New :
File
Dir
//home/mcts.eemo.co.kr/public_html/src/library/CTS/DOC.php
<?php require_once '../../library/MeekroDB/DB.php'; class DOC { /* 엑셀 리스트 출력 게시판에 사용되는 쿼리 목록 */ public static function doc_list_sql($board) { // board no 로 게시판 구분 switch ($board) { case 1 : $sql = "SELECT DISTINCT B.idx as board_idx, S.flock_code, S.weeks, S.customer, S.reception_number, S.reception_date, S.send_date, S.solarterm , P.idx FROM serum S, post P, board B, flock F, farm FM WHERE S.serum_post = P.idx AND P.post_board = B.idx AND S.flock_code = F.flock_code AND F.farm_code = FM.farm_code AND S.flock_code IS NOT NULL AND B.idx = 1"; return $post = \DB::query($sql); break; case 2 : $sql = " SELECT DISTINCT M.flock_code , FM.farm_admin, FM.farm_name, X.min_date AS min_date, X.max_date AS max_date, P.idx FROM medicine M , post P , board B, farm FM, flock F,(SELECT DISTINCT flock_code, MAX(use_date) AS max_date ,MIN(use_date) AS min_date FROM medicine GROUP BY flock_code) X WHERE M.medicine_post = P.idx AND P.post_board = B.idx AND F.flock_code = M.flock_code AND F.farm_code = FM.farm_code AND X.flock_code = M.flock_code AND B.idx = 2"; return $post = \DB::query($sql); break; case 3 : $sql = "SELECT DISTINCT P.idx, V.flock_code, FM.farm_name, FM.farm_admin, V.solarterm, Z.start_due_date, Z.last_due_date FROM farm FM, flock F , vaccination V , post P , board B , (SELECT MIN(V.vaccination_due_date) AS start_due_date ,MAX(V.vaccination_due_date) AS last_due_date FROM vaccination V) Z WHERE FM.farm_code = F.farm_code AND F.flock_code = V.flock_code AND V.vaccination_post = P.idx AND P.post_board = B.idx AND B.idx = 3"; return $post = \DB::query($sql); break; case 4 : $sql = "SELECT P.idx, H.flock_code, FM.farm_name, H.weeks, H.reception_number, H.sample_collected_date, H.sample_collector FROM farm FM , flock F, house_salmonella H, post P, board B WHERE FM.farm_code = F.farm_code AND F.flock_code = H.flock_code AND H.house_salmonella_post = P.idx AND P.post_board = B.idx AND B.idx = 4 "; return $post = \DB::query($sql); break; case 5 : $sql = "SELECT P.idx, Z.reception_number, Z.farm_name, Z.sample_collector, Z.sample_collected_date, Z.hatchery_sheet_name FROM hatchery_salmonella Z, post P, board B WHERE Z.hatchery_test_type = 'salmonella' AND Z.hatchery_salmonella_post = P.idx AND P.post_board = B.idx"; return $post = \DB::query($sql); break; case 6 : $sql = "SELECT P.idx, Z.reception_number, Z.farm_name, Z.sample_collector, Z.sample_collected_date, Z.hatchery_test_type, Z.hatchery_sheet_name FROM hatchery_sanitation Z, post P, board B WHERE (Z.hatchery_test_type = 'sanitation' OR Z.hatchery_test_type = 're_sanitation') AND Z.hatchery_sanitation_post = P.idx AND P.post_board = B.idx"; return $post = \DB::query($sql); break; case 7 : $sql = "SELECT P.idx, Z.reception_number, Z.farm_name, Z.sample_collector, Z.sample_collected_date, Z.hatchery_sheet_name FROM chick_salmonella Z, post P, board B WHERE Z.hatchery_test_type = 'chick' AND Z.chick_post = P.idx AND P.post_board = B.idx"; return $post = \DB::query($sql); break; } } /** * 순수 농장명 추출 / 농장단어 제거 / 다음 숫자 제거 * @param string * @return array */ public static function get_farm_DBname($farm_name){ $farm_name = str_replace("농장", "", $farm_name); //농장명에서 농장이란 단어 제거 $farm_name = preg_replace("/(^[0-9]*|[0-9]+$)/", "", $farm_name); // 농장명에서 숫자 제거 $sql = "SELECT COUNT(farm_code) AS cnt, farm_code, farm_name FROM farm WHERE farm_name = '$farm_name'GROUP BY farm_code, farm_name"; // 순수 농장명으로 select 조회 try{ $res_fram_info = \DB::queryFirstRow($sql); // 배열 리턴 return count($res_fram_info) == 0 ? $res_fram_info = $tmparr['cnt'] = 0 : $res_fram_info; } catch (Exception $e) { return $e->getMessage(); } } /** * 순수 부화장명 추출 / 부화장 단어 제거 / 다음 숫자 제거 * @param string * @return array */ public static function get_hatchery_DBname($hatchery_name){ $hatchery_name = str_replace("부화장", "", $hatchery_name); //농장명에서 농장이란 단어 제거 $hatchery_name = preg_replace("/(^[0-9]*|[0-9]+$)/", "", $hatchery_name); // 농장명에서 숫자 제거 $sql = "SELECT COUNT(farm_code) AS cnt, farm_code, farm_name FROM farm WHERE farm_name = '$hatchery_name'GROUP BY farm_code, farm_name"; // 순수 농장명으로 select 조회 try{ $res_fram_info = \DB::queryFirstRow($sql); // 배열 리턴 return count($res_fram_info) == 0 ? $res_fram_info = $tmparr['cnt'] = 0 : $res_fram_info; } catch (Exception $e) { return $e->getMessage(); } } /** * 계군 등록 유무 확인 * @param int * @return array */ public static function check_flock_code($flock_code){ $sql ="SELECT COUNT(flock_code) AS cnt , fm.farm_name FROM flock f, farm fm WHERE f.farm_code= fm.farm_code AND f.flock_code =$flock_code"; try { $res = \DB::queryFirstRow($sql); return $res == 0 ? $res = $tmparr['cnt'] = 0 : $res; } catch (Exception $e) { return $e->getMessage(); } } /** * 계군명 가져오기 * @param string * @return string */ public static function selelct_flock_name($farm_name){ $flock_name= str_replace("농장", "", $farm_name); return $flock_name; } //이전 포스트 idx 값 저장 #post_idx /** * 이전 포스트 idx 값 구해오기 * @param string 테이블명 , int flock_code * @return array */ public static function get_previous_post_idx($tablename,$flock_code) { $sql = "SELECT p.idx FROM post p, $tablename WHERE p.idx = $tablename"."_post AND flock_code = $flock_code"; try{ $res = \DB::queryFirstColumn($sql); return $res[0]; } catch (Exception $e) { } } /** * 등록될 게시물 idx 찾기 * @param string $type 타입 * @param string $data registration time * @return int idx 번호 */ public static function get_post_idx($type, $date){ // 등록될 게시물 idx 번호 찾기 $sql = "select idx from post where post_type = '$type' and registration_time = '$date'"; try { $res = \DB::queryFirstColumn($sql); return $res[0]; }catch (Exception $e) { } } /** * 게시글 등록 * @param string 타입, 현재시간, 게시판번호 * @return bool */ public static function insert_post($type, $date, $board) { $sqlArr = array(); $sqlArr['post_board'] = $board; $sqlArr['post_type'] = $type; $sqlArr['registration_time'] = $date; try{ return \DB::insert('post', $sqlArr); } catch (Exception $e) { } } /** * 데이터 삭제 * @return bool */ public static function delete_data($tablename, $flock_code){ try{ $res = \DB::query("delete from $tablename where flock_code = $flock_code" ); return count($res); } catch (Exception $e) { } } /** * 같은 게시글에 테이블 정보 * @param string (테이블명 , 게시글 idx) * @return array */ public static function get_post_table($tablename, $post_idx){ $sql = "SELECT * FROM $tablename WHERE $tablename"."_post = $post_idx "; try{ return \DB::query($sql); } catch (Exception $e) { } } /** * 부화장 post idx 얻어오기 * @param string farm_name 농장이름 * @param string reception_number 접수번호 * @return int 게시판 idx */ public static function get_hatchery_post_idx($farm_name, $reception_number) { $sql = "SELECT hatchery_salmonella_post FROM hatchery_salmonella WHERE farm_name = '$farm_name' AND reception_number = '$reception_number'"; try { $res = \DB::queryFirstColumn($sql); if($res == "") { return 0; } return $res[0]; } catch (Exception $e) { } } /** * 농장 정보 삭제 * @param string post_idx 부화장 게시판 인덱스 * @return x */ public static function delete_hatchery_data($post_idx) { $sql = "DELETE FROM hatchery_salmonella WHERE hatchery_salmonella_post = $post_idx"; $res = \DB::query($sql); $sql = "DELETE FROM hatchery_sanitation WHERE hatchery_sanitation_post = $post_idx"; $res = \DB::query($sql); $sql = "DELETE FROM chick_salmonella WHERE chick_post = $post_idx"; $res = \DB::query($sql); return $res; } /** * 파일 명에서 계군코드 가져오기 * @param string * @return string */ public static function get_flockcode_from_filename($filename){ $filename_replace = str_replace(")", "", $filename); $fileNameWithoutExt = substr($filename_replace, 0, strrpos($filename_replace, ".")); // 확장자 제거 $arrSplitname = explode("(", $fileNameWithoutExt); switch (count($arrSplitname)) { // 파일명에 () () 두개인 경우 예외 처리 case 2: return preg_replace("/[^0-9]/", "", $arrSplitname[1]); break; case 3: return $arrSplitname[2]; break; } } } ?>