checkValue2.php 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
  1. <?php
  2. include "connectSQL.php";
  3. session_start();
  4. $_SESSION['wellTBA'] = array();
  5. if (isset($_GET['table_name'])){
  6. $table_name = $_GET['table_name'];
  7. $method = $_GET['method'];
  8. $warning1 = $_GET['warning1'];
  9. $warning2 = $_GET['warning2'];
  10. $warning_Count = $_GET['warning_Count'];
  11. $phase = $_GET['phase'];
  12. $SIS_array = ['SIS-1','SIS-2-1','SIS-2-2','SIS-3','SIS-4','SIS-6','SIS-7'];
  13. $SID_array = ['SID-1','SID-2-1','SID-2-2','SID-3-1','SID-3-2','SID-4','SID-5-1','SID-5-2','SID-6','SID-7'];
  14. $OWFirstData = [-1.81, -1.59, -6.3, -3.67, -3.16, -1.78, -3.31, 0];
  15. $ELPwarning = [0, -4.6, -10, -15.3, -23.2, 0];
  16. $ELP_1warning = [0, -7.9, -13.3, 0, 0, 0];
  17. if($phase == 2){
  18. $SID_data = [1.85, 1.128, 1.128, 1.128, 1.698, 1.698, 1.698, 1.186, 1.186, 1.032];
  19. $SIS_data = [1.85, 1.128, 1.128, 1.128, 1.698, 1.186, 1.032];
  20. }else if($phase == 3){
  21. $SID_data = [2.39, 1.434, 1.434, 1.434, 2.304, 2.304, 2.304, 1.7, 1.7, 1.569];
  22. $SIS_data = [2.39, 1.434, 1.434, 1.434, 2.304, 1.7, 1.569];
  23. $ELPwarning1 = -4.6;
  24. $ELPwarning2 = -7.9;
  25. }else if($phase == 4){
  26. $SID_data = [2.89, 1.856, 1.856, 1.856, 2.968, 2.968, 2.968, 2.267, 2.267, 2.176];
  27. $SIS_data = [2.89, 1.856, 1.856, 1.856, 2.968, 2.267, 2.176];
  28. $ELPwarning1 = -10;
  29. $ELPwarning2 = -13.3;
  30. }else if($phase == 5){
  31. $SID_data = [3.36, 2.626, 2.626, 2.626, 4.531, 4.531, 4.531, 3.727, 3.727, 3.285];
  32. $SIS_data = [3.36, 2.626, 2.626, 2.626, 4.531, 3.727, 3.285];
  33. $ELPwarning1 = -15.3;
  34. }else if($phase == 6){
  35. $SID_data = [4.015, 3.832, 3.832, 3.832, 7.966, 7.966, 7.966, 5.049, 5.049, 5.208];
  36. $SIS_data = [4.015, 3.832, 3.832, 3.832, 7.966, 5.049, 5.208];
  37. $ELPwarning1 = -23.2;
  38. }else if($phase == 7){
  39. $SID_data = [4.918, 4.458, 4.458, 4.458, 8.909, 8.909, 8.909, 5.797, 5.797, 5.988];
  40. $SIS_data = [4.918, 4.458, 4.458, 4.458, 8.909, 5.797, 5.988];
  41. }
  42. $wellTBA = [];
  43. $column_name = [];
  44. $normal_count = 0;
  45. $abnormal_count = 0;
  46. $i = 1;
  47. $j = 0;
  48. $end = true;
  49. /*$method = "init";
  50. $table_name = 'OWdata';
  51. $warning1 = -2;
  52. $warning2 = -0.00106;
  53. $warning_Count = 1;*/
  54. if($table_name == 'SISdata' || $table_name == 'SIDdata'){
  55. $i = 0;
  56. $data = [];
  57. if($table_name == 'SISdata')
  58. $column_name = $SIS_array;
  59. if($table_name == 'SIDdata')
  60. $column_name = $SID_array;
  61. foreach($column_name as $value){
  62. $sql = "SELECT TOP 1 * FROM [C3].[dbo].[".$table_name."] WHERE [e_name] = '".$value."' ORDER BY [m_date] DESC ";
  63. $fetchResult = sqlsrv_query($conn, $sql);
  64. $result = sqlsrv_fetch_array($fetchResult);
  65. array_push($data,$result);
  66. $j++;
  67. }
  68. }else{
  69. $sql_Table = "SELECT name FROM sys.columns WHERE object_id = OBJECT_ID('[C3].[dbo].[".$table_name."]') ";
  70. $fetchResult_Table = sqlsrv_query($conn, $sql_Table);
  71. while($column_name_table = sqlsrv_fetch_array($fetchResult_Table)){
  72. array_push($column_name,$column_name_table[0]);
  73. }
  74. $sql = "SELECT * FROM [C3].[dbo].[".$table_name."] ORDER BY [m_date] DESC";
  75. $fetchResult = sqlsrv_query($conn, $sql);
  76. $data = sqlsrv_fetch_array($fetchResult);
  77. }
  78. while($end){
  79. $is_normal = true;
  80. switch($method){
  81. case "init":
  82. if($table_name == "ELPdata"){
  83. if($column_name[$i] != "ELP_1" && strpos($column_name[$i],'_1')){
  84. if($ELP_1warning[$phase-2] == 0){
  85. $normal_count++;
  86. }else{
  87. if($data[$i] > $ELP_1warning[$phase-2]){
  88. $abnormal_count++;
  89. array_push($wellTBA,$column_name[$i]);
  90. }else{
  91. $normal_count++;
  92. }
  93. }
  94. }else{
  95. if($ELPwarning[$phase-2] == 0){
  96. $normal_count++;
  97. }else{
  98. if($data[$i] > $ELPwarning[$phase-2]){
  99. $abnormal_count++;
  100. array_push($wellTBA,$column_name[$i]);
  101. }else{
  102. $normal_count++;
  103. }
  104. }
  105. }
  106. }else{
  107. if($warning_Count == 1){
  108. if($data[$i] > $warning1){
  109. $abnormal_count++;
  110. array_push($wellTBA,$column_name[$i]);
  111. }else{
  112. $normal_count++;
  113. }
  114. }else{
  115. if($table_name == "OWdata"){
  116. $warning1 = $OWFirstData[$i-1] + 2;
  117. $warning2 = $OWFirstData[$i-1] - 2;
  118. }
  119. if($data[$i] > $warning1 || $data[$i] < $warning2){
  120. if($column_name[$i] != "OW_4A"){
  121. $abnormal_count++;
  122. array_push($wellTBA,$column_name[$i]);
  123. }
  124. }else{
  125. $normal_count++;
  126. }
  127. }
  128. }
  129. $i++;
  130. break;
  131. case "init2":
  132. /*if($warning_Count == 1){
  133. if(($phase == 2 || $phase == 7) && $table_name == "ELPdata"){
  134. $normal_count++;
  135. }else if($table_name == "ELPdata"){
  136. if($data[$i] > $ELPwarning1){
  137. $is_normal = false;
  138. }
  139. if($phase == 3 || $phase == 4){
  140. if($data[$i+1] > $ELPwarning2){
  141. $is_normal = false;
  142. }
  143. }
  144. if($is_normal){
  145. $normal_count++;
  146. }
  147. else{
  148. $abnormal_count++;
  149. array_push($wellTBA,$column_name[$i]);
  150. }
  151. }else{
  152. if($data[$i] > $warning1){
  153. $is_normal = false;
  154. }
  155. if($data[$i+1] > $warning2){
  156. $is_normal = false;
  157. }
  158. if($is_normal){
  159. $normal_count++;
  160. }
  161. else{
  162. $abnormal_count++;
  163. array_push($wellTBA,$column_name[$i]);
  164. }
  165. }
  166. }else{*/
  167. if($data[$i] > $warning1 || $data[$i] < $warning2){
  168. $is_normal = false;
  169. }if($data[$i+1] > $warning1 || $data[$i+1] < $warning2){
  170. $is_normal = false;
  171. }if($is_normal){
  172. $normal_count++;
  173. }else{
  174. $abnormal_count++;
  175. array_push($wellTBA,$column_name[$i]);
  176. }
  177. //}
  178. $i = $i + 2;
  179. break;
  180. case "init6":
  181. if($warning_Count == 1){
  182. for( $j = 0; $j < 6; $j++){
  183. if($data[$i + $j] > $warning1){
  184. $is_normal = false;
  185. }
  186. }
  187. if($is_normal){
  188. $normal_count++;
  189. }else{
  190. $abnormal_count++;
  191. array_push($wellTBA,$column_name[$i]);
  192. }
  193. }else{
  194. for( $j = 0; $j < 6; $j++){
  195. if($data[$i + $j] > $warning1 || $data[$i + $j] < $warning2){
  196. $is_normal = false;
  197. }
  198. }
  199. if($is_normal){
  200. $normal_count++;
  201. }else{
  202. $abnormal_count++;
  203. array_push($wellTBA,$column_name[$i]);
  204. }
  205. }
  206. $i = $i + 6;
  207. break;
  208. case "initSISSID":
  209. if($data[$i][0] == $SID_array[$i]){
  210. $warning1 = $SID_data[$i];
  211. }else if($data[$i][0] == $SIS_array[$i]){
  212. $warning1 = $SIS_data[$i];
  213. }
  214. for($k = 2; $k < count($data[$i])/2; $k++){
  215. if($data[$i][$k] > $warning1){
  216. $is_normal = false;
  217. }
  218. }
  219. if($is_normal){
  220. $normal_count++;
  221. }else{
  222. $abnormal_count++;
  223. array_push($wellTBA,$column_name[$i]);
  224. }
  225. $i++;
  226. break;
  227. }
  228. if(empty($data[$i]))
  229. $end = false;
  230. }
  231. $array = array();
  232. $array['wellTBA'] = $wellTBA;
  233. $array['normal_count'] = $normal_count;
  234. $array['abnormal_count'] = $abnormal_count;
  235. echo json_encode($array);
  236. sqlsrv_close( $conn );
  237. }
  238. ?>