ShuanghongS 1 năm trước cách đây
mục cha
commit
2bf47c38a9
3 tập tin đã thay đổi với 50 bổ sung30 xóa
  1. 3 3
      main_new_version.php
  2. 40 23
      service/ocean_order.class.php
  3. 7 4
      utils/common.class.php

+ 3 - 3
main_new_version.php

@@ -165,10 +165,10 @@ switch ($action) {
                 $ETDList[] = array("value" =>intval($arr['value']),"name" =>$arr['name'],"itemStyle" =>array("color" =>$color));
         }
         if($type == 'atd_r4'){
-            $data = array("ETDList" =>$ETDList,"ETD_Radius"=>array('30%','50%'),"title1" =>"Departure","title2" =>"(ATD-ETD)");
+            $data = array("ETDList" =>$ETDList,"ETD_Radius"=>array('30%','50%'),"title1" =>"Departure","title2" =>"(ATD-ETD)","download_name" => "KPI Departure");
         }
         if($type == 'ata_r3'){
-            $data = array("ETDList" =>$ETDList,"ETD_Radius"=>array('30%','50%'),"title1" =>"Arrival","title2" =>"(ATD-ETD)");
+            $data = array("ETDList" =>$ETDList,"ETD_Radius"=>array('30%','50%'),"title1" =>"Arrival","title2" =>"(ATA-ETD)","download_name" => "KPI Arrival");
         }
         common::echo_json_encode(200, $data);
         exit();
@@ -275,7 +275,7 @@ switch ($action) {
             $interval = 2;
         }
         $returnData = array("ContainerCount_Title"=>"Total: $total","ContainerCountList" =>$ContainerCount_Title,"ContainerCounSeries" =>$ContainerCounSeries_return,
-            "min" => 0,"Max" =>$interval*5,"interval" =>$interval);
+            "min" => 0,"Max" =>$interval*5,"interval" =>$interval,"download_name" => "Container Count");
         //demo    
         //  $json = '{"code":200,"data":{"ContainerCount_Title":"Total: 463518","ContainerCountList":["OCT,23","NOV,23","DEC,23","JAN,24","FEB,24","MAR,24","APR,24","MAY,24","JUN,24","JUL,24","AUG,24","SEP,24","OCT,24"],"ContainerCounSeries":[{"name":"20","type":"bar","emphasis":{"focus":"none"},"stack":"\u603b\u8ba1","data":[4400,8600,8804,9271,8961,8793,8534,9476,9530,10277,10081,8997,5784],"itemStyle":{"color":"#FF7500"}},{"name":"40","type":"bar","emphasis":{"focus":"none"},"stack":"\u603b\u8ba1","data":[13652,28021,30422,30136,26320,27035,23979,26494,28406,33318,32318,30962,16369],"itemStyle":{"color":"#FFAC66"}},{"name":"45","type":"bar","emphasis":{"focus":"none"},"stack":"\u603b\u8ba1","data":[189,337,415,437,439,321,250,320,324,603,328,415,200],"itemStyle":{"color":"#FFE3CC"}}],"min":0,"Max":45000,"interval":9000}}';    
         //  $returnData = json_decode($json,true);

+ 40 - 23
service/ocean_order.class.php

@@ -1315,7 +1315,27 @@ class ocean_order {
         $ocean_milestone_status_code = array();
         foreach($ocean_milestone_status as $oms){
             $ocean_milestone_status_code[$oms['code']] = $oms;
-        }     
+        }
+        
+        if ($state < 1){
+            //未发生前
+            if(!empty($ocean_milestone_status_code['IFFDEP']['est_date'])){
+                //如果milestone有值,或者与milestone不等,以milestone的优先度最高
+                $ocean['f_etd'] = $ocean_milestone_status_code['IFFDEP']['est_date'];
+            } 
+        } else{
+            if(!empty($ocean_milestone_status_code['IFFDEP']['act_date'])){
+                //如果milestone有值,或者与milestone不等,以milestone的优先度最高
+                $ocean['atd'] = $ocean_milestone_status_code['IFFDEP']['act_date'];
+            }
+        }    
+        //先处理一下 ATD 和 ATA,在进行后面的取值
+        if(empty($ocean['atd'])){
+            $ocean['atd'] = $ocean['f_etd'];
+        }
+        if(empty($ocean['ata'])){
+            $ocean['ata'] = $ocean['m_eta'];
+        } 
 
         $simplexData = array();
         //place_of_Receipt
@@ -1334,24 +1354,12 @@ class ocean_order {
             "path" =>$ocean['fport_of_loading_exp']."/".$ocean['fport_of_loading'],"isArrival" =>$state >= 1 ? true : false);
         $children = array();  
         if ($state < 1){
-            //未发生前
-            if(!empty($ocean_milestone_status_code['IFFDEP']['est_date'])){
-                $children[] = array("label" =>"Departure(ETD)","date" =>$ocean_milestone_status_code['IFFDEP']['est_date']);
-                //如果milestone有值,或者与milestone不等,以milestone的优先度最高
-                $ocean['f_etd'] = $ocean_milestone_status_code['IFFDEP']['est_date'];
-            } else {
-                //没有,取etd 
-                $children[] = array("label" =>"Departure(ETD)","date" =>$ocean['f_etd']);
-            }
+            $children[] = array("label" =>"Departure(ETD)","date" =>$ocean['f_etd']);
         } else{
             if(!empty($ocean_milestone_status_code['IFFONB']['act_date'])){
                 $children[] = array("label" =>"On board","date" =>$ocean_milestone_status_code['IFFONB']['act_date']);
             }
-            if(!empty($ocean_milestone_status_code['IFFDEP']['act_date'])){
-                $children[] = array("label" =>"Departure(ATD)","date" =>$ocean_milestone_status_code['IFFDEP']['act_date']);
-                //如果milestone有值,或者与milestone不等,以milestone的优先度最高
-                $ocean['f_etd'] = $ocean_milestone_status_code['IFFDEP']['act_date'];
-            }
+            $children[] = array("label" =>"Departure(ATD)","date" =>$ocean['atd']);
         }                 
         $port_of_Loading_stauts["children"] = $children;        
         $simplexData[] = $port_of_Loading_stauts;
@@ -1374,7 +1382,11 @@ class ocean_order {
         //     }
         // } 
         //不需要判断是否发送,根据 milestone 和m_eta 的同步关系,这里m_eta 优先度最高
-        $children[] = array("label" =>"Arrival(ETA)","date" =>$ocean['m_eta']);             
+        if ($state < 2){
+            $children[] = array("label" =>"Arrival(ETA)","date" =>$ocean['m_eta']);
+        }else{
+            $children[] = array("label" =>"Arrival(ATA)","date" =>$ocean['ata']);
+        }             
         $port_of_Discharge_status["children"] = $children;     
         $simplexData[] = $port_of_Discharge_status;
 
@@ -1392,7 +1404,6 @@ class ocean_order {
         $simplexData[] = $place_of_Delivery_status;
         $data['shipmentData'] = $simplexData;
 
-
         //获取对应uncode 对应的时间
         $uncodes = $ocean['fport_of_loading_un'].";".$ocean['mport_of_discharge_un'];
         $codeinfo = common::getCityPortsInfo($uncodes);
@@ -1434,18 +1445,24 @@ class ocean_order {
         $data['businessPartners'] = $businessPartners;  
     
         //处理routes 转船可能有多个情况
-        $routes = array(array("mode" =>"Ocean Freight","mode_label" =>"Sea", "origin" =>$ocean['fport_of_loading'],
-            "destination" => $ocean['fport_of_discharge'],
-            "etd" => $ocean['f_etd'],"atd" => $ocean['atd'],
-            "eta" =>$ocean['f_eta'],"ata" => $ocean['ata'],
-            "vessel" =>$ocean['f_vessel'],"voyageNo" =>$ocean['f_voyage']));
-        //不是直航
         if ($ocean['is_vessel_direct'] <> "t"){
+            //不是直航
+            $routes = array(array("mode" =>"Ocean Freight","mode_label" =>"Sea", "origin" =>$ocean['fport_of_loading'],
+                "destination" => $ocean['fport_of_discharge'],
+                "etd" => $ocean['f_etd'],"atd" => $ocean['atd'],
+                "eta" =>$ocean['f_eta'],"ata" => $ocean['ata'],
+                "vessel" =>$ocean['f_vessel'],"voyageNo" =>$ocean['f_voyage']));
             $routes[] = array("mode" =>"Ocean Freight", "mode_label" =>"Sea","origin" =>$ocean['mport_of_loading'],
                 "destination" => $ocean['mport_of_discharge'],
                 "etd" => $ocean['m_etd'],"atd" => $ocean['atd'],
                 "eta" =>$ocean['m_eta'],"ata" =>$ocean['ata'],
                 "vessel" =>$ocean['m_vessel'],"voyageNo" =>$ocean['m_voyage']);
+        }else{
+            $routes = array(array("mode" =>"Ocean Freight","mode_label" =>"Sea", "origin" =>$ocean['fport_of_loading'],
+                "destination" => $ocean['fport_of_discharge'],
+                "etd" => $ocean['f_etd'],"atd" => $ocean['atd'],
+                "eta" =>$ocean['m_eta'],"ata" => $ocean['ata'],
+                "vessel" =>$ocean['f_vessel'],"voyageNo" =>$ocean['f_voyage']));
         }
         $data['routes'] = $routes;
         

+ 7 - 4
utils/common.class.php

@@ -1138,7 +1138,7 @@ class common {
             }
             $ETDList = array_reverse($ETDList);
             $ETD_Title = "Total: $totalValue";
-            $data = array("ETDList" =>$ETDList,"ETD_Radius"=>array('50%','80%'),"ETD_Title" =>$ETD_Title);
+            $data = array("ETDList" =>$ETDList,"ETD_Radius"=>array('50%','80%'),"ETD_Title" =>$ETD_Title,"download_name" => "ETD to ETA (Days)");
         }
         if($type == 'r4' || $type == 'r3'){
             //重新整理一下数据,给UI一致
@@ -1178,10 +1178,10 @@ class common {
                 }
             }
             if($type == 'r4'){
-                $data = array("ETDList" =>$data_kd,"ETD_Radius"=>array('30%','50%'),"title1" =>"Pending","title2" =>"(ATD-ETD)");
+                $data = array("ETDList" =>$data_kd,"ETD_Radius"=>array('30%','50%'),"title1" =>"Departure","title2" =>"(ATD-ETD)","download_name" => "Pending Departure");
             }
             if($type == 'r3'){
-                $data = array("ETDList" =>$data_kd,"ETD_Radius"=>array('30%','50%'),"title1" =>"Pending","title2" =>"(ATD-ETD)");
+                $data = array("ETDList" =>$data_kd,"ETD_Radius"=>array('30%','50%'),"title1" =>"Arrival","title2" =>"(ATA-ETD)","download_name" => "Pending Arrival");
             }
             
         }
@@ -1229,12 +1229,14 @@ class common {
                 if(!empty($co2e_shippr_sql_union)){
                     $co2e = common::excuteListSql($co2e_shippr_sql_union);
                 }
+                $download_name = "CO2e Emission by Origin (Top 10)";
             }
             if ($type == "co2e_destination"){
                 $co2e_consignee_union = utils::_getSql($station_str,$type,$shipment_mode);
                 if(!empty($co2e_consignee_union)){
                     $co2e = common::excuteListSql($co2e_consignee_union);
                 }
+                $download_name = "CO2e Emission by Destination (Top 10)";
             }
 
             $total = 0;
@@ -1262,8 +1264,9 @@ class common {
             //处理返回默认值
             $interval = 1;
         }
+        
         $returnData = array("ContainerCount_Title"=>"","ContainerCountList" =>$ContainerCount_Title,"ContainerCounSeries" =>$ContainerCounSeries_return,
-            "min" => 0,"Max" =>$interval*10,"interval" =>$interval);
+            "min" => 0,"Max" =>$interval*10,"interval" =>$interval,"download_name" => $download_name);
         return $returnData;
     }