2 Commits bae5785a0a ... 5683d5b79a

Autor SHA1 Mensagem Data
  ShuanghongS 5683d5b79a code há 4 dias atrás
  ShuanghongS b211510847 code há 1 semana atrás
2 ficheiros alterados com 49 adições e 9 exclusões
  1. 19 9
      service/ocean_order.class.php
  2. 30 0
      utils/common.class.php

+ 19 - 9
service/ocean_order.class.php

@@ -966,7 +966,7 @@ class ocean_order {
                 $_sqlwhere .= " or ((m_iffcpu is not null or m_iffrec is not null) and m_iffdep is null and m_iffarr is null and m_iffdel is null)";
                 $filterTag_param .= " or ((m_iffcpu is not null or m_iffrec is not null) and m_iffdep is null and m_iffarr is null and m_iffdel is null)";
             }
-            if (stripos($filterTag, "Departure") !== FALSE) {
+            if (stripos($filterTag, "Departed") !== FALSE) {
                 $_sqlwhere .= " or (m_iffdep is not null and m_iffarr is null and m_iffdel is null)";
                 $filterTag_param .= " or (m_iffdep is not null and m_iffarr is null and m_iffdel is null)";
             }
@@ -1044,7 +1044,7 @@ class ocean_order {
                 $tagsList = array(array("name"=>"All","number"=>intval($search_rc),"type"=>"all","checked"=>utils::in_array('All', $_POST["filterTag"])? true : false),
                 array("name"=>"Created","number"=>intval($Created),"type"=>"created","checked"=>utils::in_array('Created', $_POST["filterTag"])? true : false),
                 array("name"=>"Cargo Received","number"=>intval($Cargo_Received),"type"=>"cargo_received","checked"=>utils::in_array('Cargo Received', $_POST["filterTag"])? true : false),
-                array("name"=>"Departure","number"=>intval($Departed),"type"=>"departure","checked"=>utils::in_array('Departure', $_POST["filterTag"])? true : false),
+                array("name"=>"Departed","number"=>intval($Departed),"type"=>"departed","checked"=>utils::in_array('departed', $_POST["filterTag"])? true : false),
                 array("name"=>"Arrived","number"=>intval($Arrived),"type"=>"arrived","checked"=>utils::in_array('Arrived', $_POST["filterTag"])? true : false),
                 array("name"=>"Completed","number"=>intval($Completed),"type"=>"completed","checked"=>utils::in_array('Completed', $_POST["filterTag"])? true : false));
             }else{
@@ -1052,7 +1052,7 @@ class ocean_order {
                 $tagsList = array(array("name"=>"All","number"=>intval($search_rc),"type"=>"all","checked"=> true ),
                 array("name"=>"Created","number"=>intval($Created),"type"=>"created","checked"=> false),
                 array("name"=>"Cargo Received","number"=>intval($Cargo_Received),"type"=>"cargo_received","checked"=> false),
-                array("name"=>"Departure","number"=>intval($Departed),"type"=>"departure","checked"=> false),
+                array("name"=>"Departed","number"=>intval($Departed),"type"=>"departed","checked"=> false),
                 array("name"=>"Arrived","number"=>intval($Arrived),"type"=>"arrived","checked"=> false),
                 array("name"=>"Completed","number"=>intval($Completed),"type"=>"completed","checked"=>false));
             }
@@ -1086,12 +1086,13 @@ class ocean_order {
 
             $sql = "with oo  as (SELECT oe.*, order_from as _schemas,serial_no as __serial_no, serial_no,transport_mode,transport_mode_extend,
                     h_bol as _hbol, isf_bol as _isfbol, consignee_city as _consignee_city,piece_count as _piece_count,
+                    f_vessel as _f_vessel, f_voyage as _f_voyage,
                     (select user_login from public.kln_user_subscribed us  
                         where lower(us.user_login) = '".strtolower(_getLoginName())."' and us.subscribed_serial_no = kln_ocean.serial_no) as is_subscribe,
                     CASE
 	    	            WHEN (m_iffcpu is null and m_iffrec is null and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Created'::text
                         WHEN ((m_iffcpu is not null or m_iffrec is not null) and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Cargo Received'::text
-                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departure'::text
+                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departed'::text
                         WHEN (m_iffarr is not null and m_iffdel is null) THEN 'Arrived'::text
                         WHEN (m_iffdel is not null) THEN 'Completed'::text
 	    	            ELSE 'Created'
@@ -1128,12 +1129,13 @@ class ocean_order {
 
             $tmp_search_without_limit = "with oo  as (SELECT oe.*, order_from as _schemas,serial_no as __serial_no, serial_no,transport_mode,transport_mode_extend,
                     h_bol as _hbol, isf_bol as _isfbol, consignee_city as _consignee_city,piece_count as _piece_count,
+                    f_vessel as _f_vessel, f_voyage as _f_voyage,
                     (select user_login from public.kln_user_subscribed us  
                         where lower(us.user_login) = '".strtolower(_getLoginName())."' and us.subscribed_serial_no = kln_ocean.serial_no) as is_subscribe,
                     CASE
 	    	            WHEN (m_iffcpu is null and m_iffrec is null and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Created'::text
                         WHEN ((m_iffcpu is not null or m_iffrec is not null) and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Cargo Received'::text
-                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departure'::text
+                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departed'::text
                         WHEN (m_iffarr is not null and m_iffdel is null) THEN 'Arrived'::text
                         WHEN (m_iffdel is not null) THEN 'Completed'::text
 	    	            ELSE 'Created'
@@ -1180,6 +1182,10 @@ class ocean_order {
                 $rs[$index]["Mode"] = $val['transport_mode_extend'] == 'sea' ? "Ocean Freight" : ($val['transport_mode_extend'] == 'air' ? "Air Freight": 
                                                 ($val['transport_mode_extend'] == 'rail' ? "Rail Freight": 
                                                 ($val['transport_mode_extend'] == 'road' ? "Road Freight": "")));
+
+                $rs[$index]["Vessel/Airline"] = utils::outDisplayForMerge($val['_f_vessel'],$val['Vessel/Airline']);
+                $rs[$index]["Voyage/Flight"] = utils::outDisplayForMerge($val['_f_voyage'],$val['Voyage/Flight']); 
+
                 //status 改为ocean_milestone里的信息
                 $rs[$index]["Status"] = $rs[$index]["new_status"];
                 if($val['transport_mode'] == 'sea'){
@@ -1693,6 +1699,10 @@ class ocean_order {
                         ($val['transport_mode_extend'] == 'air' ?  "Air Freight": 
                         ($val['transport_mode_extend'] == 'rail' ? "Rail Freight": 
                         ($val['transport_mode_extend'] == 'road'? "Road Freight": "")));
+
+            $rs[$index]["Vessel/Airline"] = utils::outDisplayForMerge($val['_f_vessel'],$val['Vessel/Airline']);
+            $rs[$index]["Voyage/Flight"] = utils::outDisplayForMerge($val['_f_voyage'],$val['Voyage/Flight']);   
+                     
             //status 改为ocean_milestone里的信息
             $rs[$index]["Status"] = $rs[$index]["new_status"];
         }
@@ -2239,7 +2249,7 @@ class ocean_order {
                     CASE
                         WHEN ((m_iffbcf is not null or m_iffbcf is null) and m_iffcpu is null and m_iffrec is null and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Created'::text
                         WHEN ((m_iffcpu is not null or m_iffrec is not null) and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Cargo Received'::text
-                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departure'::text
+                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departed'::text
                         WHEN (m_iffarr is not null and m_iffdel is null) THEN 'Arrived'::text
                         WHEN (m_iffdel is not null) THEN 'Completed'::text
                         ELSE 'Created'::text
@@ -2310,7 +2320,7 @@ class ocean_order {
                     CASE
                         WHEN ((m_iffbcf is not null or m_iffbcf is null) and m_iffcpu is null and m_iffrec is null and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Created'::text
                         WHEN ((m_iffcpu is not null or m_iffrec is not null) and m_iffdep is null and m_iffarr is null and m_iffdel is null) THEN 'Cargo Received'::text
-                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departure'::text
+                        WHEN (m_iffdep is not null and m_iffarr is null and m_iffdel is null) THEN 'Departed'::text
                         WHEN (m_iffarr is not null and m_iffdel is null) THEN 'Arrived'::text
                         WHEN (m_iffdel is not null) THEN 'Completed'::text
                         ELSE 'Created'::text
@@ -2477,10 +2487,10 @@ class ocean_order {
         }    
         //先处理一下 ATD 和 ATA,在进行后面的取值
         if(empty($ocean['atd']) && !empty($VD)){
-            $ocean['atd'] = $VD;
+            //$ocean['atd'] = $VD;
         }
         if(empty($ocean['ata']) && !empty($VA)){
-            $ocean['ata'] = $VA;
+            //$ocean['ata'] = $VA;
         } 
 
         $simplexData = array();

+ 30 - 0
utils/common.class.php

@@ -879,6 +879,9 @@ class common {
         if(_isDesensitizationKln()){
             common::maskShipperName($data);
         }
+        if((_isCustomerLogin())){
+            common::maskOceanMbol($data);
+        }
         $resData = array();
         $resData["code"] = $code;
         $resData["data"] =$data;
@@ -886,6 +889,33 @@ class common {
         echo json_encode($resData);
     }
 
+    public static function maskOceanMbol(&$data) {
+        if (is_array($data)) {
+            foreach ($data as $key => &$value) {
+                if ($key === 'MBOL/MAWB No.') {
+                    if(is_array($value)){
+                        $temp = array();
+                        foreach($value as $vk =>$vv){
+                            if ($value['transport_mode_extend'] == 'sea'){
+                                $temp[$vk] = '**********';
+                            }
+                        }
+                        $value = $temp;
+                    } else {
+                        if ($data['transport_mode_extend'] == 'sea'){
+                            $value = '**********'; // 替换为脱敏值
+                        }
+                    }
+                } else {
+                    // 递归处理子数组
+                    common::maskOceanMbol($value);
+                }
+            }
+            unset($value); // 解除引用
+        }
+        // 如果是标量(string, int 等),不做处理
+    }
+
     public static function maskShipperName(&$data) {
         if (is_array($data)) {
             foreach ($data as $key => &$value) {