include.ini.php 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. <?php
  2. if (extension_loaded('zlib')) {
  3. ini_set('zlib.output_compression', 'On');
  4. ini_set('zlib.output_compression_level', '9');
  5. }
  6. if (!empty($_REQUEST['sessionid'])) {
  7. session_id($_REQUEST['sessionid']);
  8. }
  9. error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);
  10. error_reporting(0);
  11. session_start();
  12. ini_set("magic_quotes_runtime", 0);
  13. define('IN_ONLINE', TRUE);
  14. define('DS', DIRECTORY_SEPARATOR);
  15. define('WEB_ROOT', str_replace(DS, '/', str_replace(str_replace("/", DS, $_SERVER['DOCUMENT_ROOT']), '', realpath(dirname(__FILE__)))));
  16. define('ONLINE_ROOT', realpath(dirname(__FILE__)) . DS);
  17. define('ADODB_PATH', ONLINE_ROOT . 'libs' . DS . 'ADOdb-5.20.17' . DS);
  18. define('C_PATH', ONLINE_ROOT . 'service' . DS);
  19. define('FILE_UPLOAD_PAHT', "upload" . DS);
  20. // define('DOCUMENT_AIR_UPLOAD_PATH', "D:" . DS . "DOC_AIR" . DS);
  21. // define('DOCUMENT_OCEAN_UPLOAD_PATH', "D:" . DS . "DOC" . DS);
  22. // define('DOCUMENT_SFSAIR_UPLOAD_PATH', "D:" . DS . "DOC_AIR" . DS);
  23. // define('DOCUMENT_SFSOCEAN_UPLOAD_PATH', "D:" . DS . "DOC" . DS);
  24. define('DOCUMENT_AIR_UPLOAD_PATH', "/DOC_AIR" . DS);
  25. define('DOCUMENT_OCEAN_UPLOAD_PATH', "/DOC" . DS);
  26. define('DOCUMENT_SFSAIR_UPLOAD_PATH', "/DOC_AIR" . DS);
  27. define('DOCUMENT_SFSOCEAN_UPLOAD_PATH', "/DOC" . DS);
  28. if (preg_match("/(bot|crawl|spider|slurp)/i", $_SERVER['HTTP_USER_AGENT'])) {
  29. header('HTTP/1.1 403 Forbidden');
  30. exit;
  31. }
  32. if (function_exists("date_default_timezone_set") and function_exists("date_default_timezone_get"))
  33. @date_default_timezone_set(@date_default_timezone_get());
  34. header('Content-type: text/html; Charset=utf-8');
  35. include_once ADODB_PATH . 'toexport.inc.php';
  36. include_once ADODB_PATH . 'adodb.inc.php';
  37. include_once ONLINE_ROOT . 'libs' . DS . 'config.ini.php';
  38. include_once ONLINE_ROOT . 'utils' . DS . 'utils.class.php';
  39. include_once ONLINE_ROOT . 'utils' . DS . 'common.class.php';
  40. include_once ONLINE_ROOT . 'libs' . DS . 'phpXLSWriter' . DS . "xlsxwriter.class.php";
  41. //测试服务器
  42. if(utils::startWith($_SERVER["HTTP_HOST"],"online-beta.kln.com")){
  43. define('SERVER_PAHT', 'https://online-beta.kln.com/online_backend/');
  44. define('SERVER_Vue_PAHT', 'https://online-beta.kln.com/');
  45. }elseif(utils::startWith($_SERVER["HTTP_HOST"],"online.kln.com")){
  46. define('SERVER_PAHT', 'https://online.kln.com/online_backend/');
  47. define('SERVER_Vue_PAHT', 'https://online.kln.com/');
  48. }else{
  49. //本地测试demo
  50. define('SERVER_PAHT', 'http://192.168.0.161/Customer_Service_Online/');
  51. define('SERVER_Vue_PAHT', 'http://192.168.0.161/k_new_online/');
  52. }
  53. $tar = common::excuteObjectSql("select item_value from config where item='Current_Used_Company'");
  54. if (!empty($tar["item_value"])&&$tar["item_value"]=="TOPOCEAN") {
  55. define("Soure", 'TopOcean');
  56. }else{
  57. define("Soure", 'Apex');
  58. }
  59. function _isApexLogin() {
  60. return strtolower($_SESSION['ONLINE_USER']['user_type']) == "employee";
  61. //return false;
  62. }
  63. function _isAdmin() {
  64. return $_SESSION['ONLINE_USER']['is_super'] == 't';
  65. }
  66. function _isRevenueDisplay() {
  67. return $_SESSION['ONLINE_USER']['revenue_active'] == 't';
  68. }
  69. function _isDesensitizationKln() {
  70. return $_SESSION['ONLINE_USER']['is_desensitization_kln'] == 't';
  71. }
  72. function _isNewUser() {
  73. return _isCustomerLogin() && empty($_SESSION['ONLINE_USER']['permission']);
  74. }
  75. function _isCustomerLogin() {
  76. return strtolower($_SESSION['ONLINE_USER']['user_type']) == 'customer';
  77. }
  78. function _getLoginName() {
  79. return $_SESSION['ONLINE_USER']['user_login'];
  80. }
  81. function _getLoginEamil() {
  82. return $_SESSION['ONLINE_USER']['email'];
  83. }
  84. function _getLoginEmployeeEamil() {
  85. return $_SESSION['ONLINE_USER']['employee_email'];
  86. }
  87. function _isAdminHandNew($user) {
  88. return $user['is_super'] == 't';
  89. }
  90. function _canViewAMSLog($schemas = "public") {
  91. if ($schemas == "public") {
  92. return strtolower($_SESSION['ONLINE_USER']['can_see_amslog']) == 't' || _isAdmin();
  93. } else {
  94. return strtolower($_SESSION[$schemas . '_ONLINE_USER']['can_see_amslog']) == 't' || _isAdmin();
  95. }
  96. }
  97. function _canViewISFLog($schemas = "public") {
  98. if ($schemas == "public") {
  99. return strtolower($_SESSION['ONLINE_USER']['can_see_isflog']) == 't' || _isAdmin();
  100. } else {
  101. return strtolower($_SESSION[$schemas . '_ONLINE_USER']['can_see_isflog']) == 't' || _isAdmin();
  102. }
  103. }
  104. function _isDocAdmin($username) {
  105. return strtolower($username) == "doc.alice" || strtolower($username) == "apexdoc.admin"
  106. || strtolower($username) == "doc.patty1" || strtolower($username) == "maria" || strtolower($username) == "it.andywu"
  107. || strtolower($username) == "doc.riley" || strtolower($username) == "doc.amy" || strtolower($username) == "doc.vicky"
  108. || strtolower($username) == "doc.leah" || strtolower($username) == "doc.yuki" || strtolower($username) == "doc.yoyo";
  109. }
  110. function _customerFilerSearchHandNew($user, $schemas = "public", $p = 'place_of_delivery', $s = 'shipper_id', $c = 'consignee_id', $b = 'billto_id', $n = 'notify_party_id', $d = 'port_of_discharge_code') {
  111. $tt = $user['customer_search_type'];
  112. $sales = $user['ocean_sales'];
  113. if (empty($tt)) {
  114. return "1<>1";
  115. }
  116. //error_log("_customerFilerSearchHandNew -- " . $schemas);
  117. $_contact_id = _getContactIDHandNew($user, $schemas);
  118. if (empty($_contact_id)) {
  119. return "1<>1";
  120. }
  121. $sqlWhere1 = "";
  122. if (utils::checkExist($tt, 's') && !empty($s)) {
  123. if (empty($sqlWhere1)) {
  124. $sqlWhere1 = " lower($s) " . common::getInNotInSql($_contact_id);
  125. } else {
  126. $sqlWhere1 .= " or lower($s) " . common::getInNotInSql($_contact_id);
  127. }
  128. }
  129. if (utils::checkExist($tt, 'c') && !empty($c)) {
  130. if (empty($sqlWhere1)) {
  131. $sqlWhere1 = " lower($c) " . common::getInNotInSql($_contact_id);
  132. } else {
  133. $sqlWhere1 .= " or lower($c) " . common::getInNotInSql($_contact_id);
  134. }
  135. }
  136. //暂时注释掉,ocean_booking 没有这个字段
  137. // if (utils::checkExist($tt, 'b') && !empty($b)) {
  138. // if (empty($sqlWhere1)) {
  139. // $sqlWhere1 = " lower($b) " . common::getInNotInSql($_contact_id);
  140. // } else {
  141. // $sqlWhere1 .= " or lower($b) " . common::getInNotInSql($_contact_id);
  142. // }
  143. // }
  144. if (utils::checkExist($tt, 'n') && !empty($n)) {
  145. if (empty($sqlWhere1)) {
  146. $sqlWhere1 = " lower($n) " . common::getInNotInSql($_contact_id);
  147. } else {
  148. $sqlWhere1 .= " or lower($n) " . common::getInNotInSql($_contact_id);
  149. }
  150. }
  151. //controlling_customer_code
  152. if (utils::checkExist($tt, 't')) {
  153. if (empty($sqlWhere1)) {
  154. $sqlWhere1 = " exists(select 1 from $schemas.ocean_extend ex where ex.serial_no = serial_no and lower(ex.customer_code) " . common::getInNotInSql($_contact_id)." limit 1)";
  155. } else {
  156. $sqlWhere1 .= " or exists(select 1 from $schemas.ocean_extend ex where ex.serial_no = serial_no and lower(ex.customer_code) " . common::getInNotInSql($_contact_id)." limit 1)";
  157. }
  158. }
  159. if (empty($sqlWhere1))
  160. return "1<>1";
  161. $sqlWhere1 = "(" . $sqlWhere1 . ")";
  162. if (!empty($user['customer_destination']) && !empty($p)) {
  163. $sqlWhere1 .= " and lower($p) " . common::getInNotInSql($user['customer_destination']);
  164. }
  165. if (!empty($user['customer_discharge']) && !empty($d)) {
  166. $sqlWhere1 .= " and lower($d) " . common::getInNotInSql($user['customer_discharge']);
  167. }
  168. if (strtolower($sales) == 'all' || empty($sales)) {
  169. } else {
  170. if (utils::checkExist($sales, ";")) {
  171. $sql = "1!=1";
  172. $tt = explode(";", $sales);
  173. foreach ($tt as $t) {
  174. $t = trim($t);
  175. if (!empty($t))
  176. $sql .= " or sales_rep ilike '" . $t . "%'";
  177. }
  178. $sqlWhere1 .= " and ($sql)";
  179. } else
  180. $sqlWhere1 .= " and sales_rep ilike '" . $sales . "%'";
  181. }
  182. return $sqlWhere1;
  183. }
  184. function _getContactIDHandNew_Air($user, $schemas = "public") {
  185. $contact_id_user = _getCompanyContactHandNew_Air($user);
  186. $id = "";
  187. if ($schemas == "public") {
  188. $contact_id = common::excuteListSql("select contacts_id from " . $schemas . ".contacts_group_all where lower(company_name) " . utils::getInSql(_getCompanyHandNew($user)));
  189. } else {
  190. $contact_id = common::excuteListSql("select contacts_id from " . $schemas . ".contacts_group_all where lower(company_name) " . utils::getInSql(_getCompanyHandNew($user, $schemas)));
  191. }
  192. foreach ($contact_id as $v) {
  193. if (empty($id))
  194. $id = trim($v['contacts_id']);
  195. else
  196. $id .= ";" . $v['contacts_id'];
  197. }
  198. if (!empty($contact_id_user)) {
  199. $id .= ";" . $contact_id_user;
  200. }
  201. return $id;
  202. }
  203. function _getCompanyContactHandNew_Air($user, $schemas = "public") {
  204. if ($schemas == "public") {
  205. return $user['air_customers'];
  206. } else {
  207. return $user[$schemas . '_ONLINE_USER']['air_customers'];
  208. }
  209. }
  210. function _getCompanyHandNew($user, $schemas = "public") {
  211. if ($schemas == "public") {
  212. return $user['company'];
  213. } else {
  214. if (empty($user['company'])) {
  215. return $user['company_name'];
  216. } else {
  217. return $user['company'];
  218. }
  219. }
  220. }
  221. function _getContactIDHandNew($user, $schemas = "public") {
  222. $contact_id_user = _getCompanyContactHandNew($user);
  223. $id = "";
  224. if ($schemas == "public") {
  225. $contact_id = common::excuteListSql("select contacts_id from " . $schemas . ".contacts_group_all where lower(company_name) " . utils::getInSql(_getCompanyHandNew($user)));
  226. } else {
  227. $contact_id = common::excuteListSql("select contacts_id from " . $schemas . ".contacts_group_all where lower(company_name) " . utils::getInSql(_getCompanyHandNew($user, $schemas)));
  228. }
  229. foreach ($contact_id as $v) {
  230. if (empty($id))
  231. $id = trim($v['contacts_id']);
  232. else
  233. $id .= ";" . $v['contacts_id'];
  234. }
  235. if (!empty($contact_id_user)) {
  236. $id .= ";" . $contact_id_user;
  237. }
  238. return $id;
  239. }
  240. function _getCompanyContactHandNew($user, $schemas = "public") {
  241. if ($schemas == "public") {
  242. return $user['contact_id_user'];
  243. } else {
  244. return $user[$schemas . '_ONLINE_USER']['contact_id_user'];
  245. }
  246. }
  247. function _isDemo() {
  248. return $_SESSION['ONLINE_USER']['is_demo'] == "t";
  249. }
  250. function _is_only_vgm() {
  251. if ($_SESSION['ONLINE_USER']['is_only_vgm'] == "t") {
  252. return TRUE;
  253. }
  254. return FALSE;
  255. }
  256. function _get_schemas() {
  257. return $_SESSION['schemas_list'];
  258. }
  259. function _getViewDocType($schemas = "public") {
  260. if ($schemas == "public") {
  261. return $_SESSION['ONLINE_USER']['view_doc_type'];
  262. } else {
  263. return $_SESSION[$schemas . '_ONLINE_USER']['view_doc_type'];
  264. }
  265. }
  266. function _getAirViewDocType($schemas = "public") {
  267. if ($schemas == "public") {
  268. return $_SESSION['ONLINE_USER']['view_air_doc_type'];
  269. } else {
  270. return $_SESSION[$schemas . '_ONLINE_USER']['view_air_doc_type'];
  271. }
  272. }
  273. function _canEdiVgm($schemas = "public") {
  274. if ($schemas == "public") {
  275. return strtolower($_SESSION['ONLINE_USER']['can_edi_vgm']) == 't' || _isAdmin();
  276. } else {
  277. return strtolower($_SESSION[$schemas . '_ONLINE_USER']['can_edi_vgm']) == 't' || _isAdmin();
  278. }
  279. }
  280. function _getAirStation($schemas = "public") {
  281. if ($schemas == "public") {
  282. return $_SESSION['ONLINE_USER']['air_station'];
  283. } else {
  284. return $_SESSION[$schemas . '_ONLINE_USER']['air_station'];
  285. }
  286. }
  287. function _getAirStationOr($schemas = "public") {
  288. if ($schemas == "public") {
  289. return $_SESSION['ONLINE_USER']['air_station_or'];
  290. } else {
  291. return $_SESSION[$schemas . '_ONLINE_USER']['air_station_or'];
  292. }
  293. }
  294. function _getAirSales($schemas = "public") {
  295. if ($schemas == "public") {
  296. return $_SESSION['ONLINE_USER']['air_sales'];
  297. } else {
  298. return $_SESSION[$schemas . '_ONLINE_USER']['air_sales'];
  299. }
  300. }
  301. function _getAirSalesOr($schemas = "public") {
  302. if ($schemas == "public") {
  303. return $_SESSION['ONLINE_USER']['air_sales_or'];
  304. } else {
  305. return $_SESSION[$schemas . '_ONLINE_USER']['air_sales_or'];
  306. }
  307. }
  308. function _customerAirSearchType($schemas = "public") {
  309. if ($schemas == "public") {
  310. return $_SESSION['ONLINE_USER']['air_customer_search_type'];
  311. } else {
  312. return $_SESSION[$schemas . '_ONLINE_USER']['air_customer_search_type'];
  313. }
  314. }
  315. function _getAirContactID($schemas = "public") {
  316. if ($schemas == "public") {
  317. return $_SESSION['ONLINE_USER']['air_customers'];
  318. } else {
  319. return $_SESSION[$schemas . '_ONLINE_USER']['air_customers'];
  320. }
  321. }
  322. function _customerAirFilerSearch($schemas = "public", $s = 'shipper_id', $c = 'consignee_id', $b = 'billto_id', $n = 'notify_party_id') {
  323. $tt = _customerAirSearchType($schemas);
  324. if (empty($tt))
  325. return "1<>1";
  326. $_contact_id = _getAirContactID($schemas);
  327. if (empty($_contact_id)) {
  328. return "1<>1";
  329. }
  330. $sqlWhere1 = "";
  331. if (utils::checkExist($tt, 's') && !empty($s)) {
  332. if (empty($sqlWhere1)) {
  333. $sqlWhere1 = " lower($s) " . common::getInNotInSql($_contact_id);
  334. } else {
  335. $sqlWhere1 .= " or lower($s) " . common::getInNotInSql($_contact_id);
  336. }
  337. }
  338. if (utils::checkExist($tt, 'c') && !empty($c)) {
  339. if (empty($sqlWhere1)) {
  340. $sqlWhere1 = " lower($c) " . common::getInNotInSql($_contact_id);
  341. } else {
  342. $sqlWhere1 .= " or lower($c) " . common::getInNotInSql($_contact_id);
  343. }
  344. }
  345. if (utils::checkExist($tt, 'b') && !empty($b)) {
  346. if (empty($sqlWhere1)) {
  347. $sqlWhere1 = " lower($b) " . common::getInNotInSql($_contact_id);
  348. } else {
  349. $sqlWhere1 .= " or lower($b) " . common::getInNotInSql($_contact_id);
  350. }
  351. }
  352. if (utils::checkExist($tt, 'n') && !empty($n)) {
  353. if (empty($sqlWhere1)) {
  354. $sqlWhere1 = " lower($n) " . common::getInNotInSql($_contact_id);
  355. } else {
  356. $sqlWhere1 .= " or lower($n) " . common::getInNotInSql($_contact_id);
  357. }
  358. }
  359. //controlling_customer_code
  360. if (utils::checkExist($tt, 't')) {
  361. if (empty($sqlWhere1)) {
  362. $sqlWhere1 = " exists(select 1 from $schemas.air_extend ex where ex.serial_no = serial_no and lower(ex.customer_code) " . common::getInNotInSql($_contact_id)." limit 1)";
  363. } else {
  364. $sqlWhere1 .= " or exists(select 1 from $schemas.air_extend ex where ex.serial_no = serial_no and lower(ex.customer_code) " . common::getInNotInSql($_contact_id)." limit 1)";
  365. }
  366. }
  367. if (empty($sqlWhere1))
  368. return "1<>1";
  369. $sqlWhere1 = "(" . $sqlWhere1 . ")";
  370. return $sqlWhere1;
  371. }
  372. function _isCustomerLoginHandNew($user) {
  373. return strtolower($user["user_type"]) == 'customer';
  374. }
  375. ?>