lvhao 22 часов назад
Родитель
Сommit
393b91970f

+ 44 - 28
core/CoreApp/controllers/Retreatlog.php

@@ -5,6 +5,7 @@ class Retreatlog extends Start_Controller {
         parent::__construct();
         $this->load->library('session');
         $this->load->model('Model_retreatlogs','retreatlogs');
+        $this->load->model("Model_logic_u9tools","logic_u9tools");
     }
     //定义方法的调用规则 获取URI第二段值
     public function _remap($arg,$arg_array)
@@ -45,26 +46,30 @@ class Retreatlog extends Start_Controller {
                 $start = ($page - 1)*$perpage;
             }
 
-         
+            $classid = $this->logic_u9tools->getClass();
+            $typeclass = $this->logic_u9tools->getTypeClass();
+            
             $info_list = $this->retreatlogs->find_all($where,'id,number,ck_time,tk_time,cz_time,ck_goods',$order_str,$start,$perpage);
             foreach($info_list as $k => $v){
                 $json_arr = json_decode($v['ck_goods'],true);
-                $fpadata_arr =  explode(";", $json_arr['fpdata']);
-                $tmp_str = '';
-                foreach($fpadata_arr as $key => $value){
-                    $tmp_arr = explode("|", $value);
-                    if(isset($tmp_arr[1])){
-                        $tmp_str.= $tmp_arr[1].' ';
-                        if(isset($tmp_arr[2])){
-                            $tmp_str.= " * ".$tmp_arr[2].'<br/>';
-                        }
-                    }
-                } 
+
+                
+                $fpdata = $this->logic_u9tools->transferFpdata($json_arr['fpdata']);
+
+                $jm_str = '';
+                $zh_str = '';
+                foreach($fpdata as $key => $value){
+                    $sku = $value[0];
+                    $u9_info = $this->logic_u9tools->getOneU9bmHasGift($sku,$classid,$typeclass);    
+                    $jm_str .= $u9_info['jm']."<br/>";
+                    $zh_str .= $u9_info['zh']." *  " .$value[2]."<br/>";
+                }
 
                 $info_list[$k]['ck_time'] = empty($v['ck_time'])? '' : date('Y-m-d H:i:s',$v['ck_time']);
                 $info_list[$k]['tk_time'] = empty($v['tk_time'])? '' : date('Y-m-d H:i:s',$v['tk_time']);
                 $info_list[$k]['cz_time'] = empty($v['cz_time'])? '' : date('Y-m-d H:i:s',$v['cz_time']);
-                $info_list[$k]['ck_goods'] = $tmp_str;
+                $info_list[$k]['ck_goods'] = trim($jm_str,"<br/>");
+                $info_list[$k]['zh'] = trim($zh_str,"<br/>");
             }
 			
 			$total = $this->retreatlogs->find_count($where);
@@ -89,25 +94,35 @@ class Retreatlog extends Start_Controller {
             $where .= " and number = '{$number}' ";
         }
         $order_str = "id desc";
+
+        $classid = $this->logic_u9tools->getClass();
+        $typeclass = $this->logic_u9tools->getTypeClass();
+
+
         $info_list = $this->retreatlogs->find_all($where,'id,number,ck_time,tk_time,cz_time,ck_goods',$order_str);
         foreach($info_list as $k => $v){
+          
             $json_arr = json_decode($v['ck_goods'],true);
-            $fpadata_arr =  explode(";", $json_arr['fpdata']);
-            $tmp_str = '';
-            foreach($fpadata_arr as $key => $value){
-                $tmp_arr = explode("|", $value);
-                if(isset($tmp_arr[1])){
-                    $tmp_str.= $tmp_arr[1].' ';
-                    if(isset($tmp_arr[2])){
-                        $tmp_str.= " * ".$tmp_arr[2].'<br/>';
-                    }
-                }
-            } 
-            $tmp_str = trim($tmp_str,'<br/>');
-            $info_list[$k]['ck_time'] =empty($v['ck_time'])? '' : date('Y-m-d H:i:s',$v['ck_time']);
+
+                
+            $fpdata = $this->logic_u9tools->transferFpdata($json_arr['fpdata']);
+
+            $jm_str = '';
+            $zh_str = '';
+            foreach($fpdata as $key => $value){
+                $sku = $value[0];
+                $u9_info = $this->logic_u9tools->getOneU9bmHasGift($sku,$classid,$typeclass);    
+                $jm_str .= $u9_info['jm']."<br/>";
+                $zh_str .= $u9_info['zh']." *  " .$value[2]."<br/>";
+            }
+
+            $info_list[$k]['ck_time'] = empty($v['ck_time'])? '' : date('Y-m-d H:i:s',$v['ck_time']);
             $info_list[$k]['tk_time'] = empty($v['tk_time'])? '' : date('Y-m-d H:i:s',$v['tk_time']);
             $info_list[$k]['cz_time'] = empty($v['cz_time'])? '' : date('Y-m-d H:i:s',$v['cz_time']);
-            $info_list[$k]['ck_goods'] = $tmp_str;
+            $info_list[$k]['ck_goods'] = trim($jm_str,"<br/>");
+            $info_list[$k]['zh'] = trim($zh_str,"<br/>");
+
+
         }
 
            //生成excel
@@ -131,7 +146,7 @@ class Retreatlog extends Start_Controller {
            <![endif]-->
            </head><body>";
            $str .= "<table border=1 style='font-family: Microsoft Yahei;font-size: 13px;'>"; 
-           $str .= "<tr><td>订单编号</td><td>出库时间</td><td>退库时间</td><td>重置时间</td><td>货品信息</td></tr>";
+           $str .= "<tr><td>订单编号</td><td>出库时间</td><td>退库时间</td><td>重置时间</td><td>u9料号</td><td>中文品名</td></tr>";
            foreach ($info_list as $key=>$value) 
            { 
                
@@ -141,6 +156,7 @@ class Retreatlog extends Start_Controller {
                $str .= "<td>". $value['tk_time']. "</td>";	
                $str .= "<td>". $value['cz_time']. "</td>";
                $str .= "<td>". $value['ck_goods']. "</td>";
+               $str .= "<td>". $value['zh']. "</td>";
                $str .= "</tr>";
            }
            $str .= "</table></body></html>"; 

+ 68 - 0
core/CoreApp/models/Model_logic_u9tools.php

@@ -500,4 +500,72 @@ class Model_logic_u9tools extends Lin_Model {
     public function getU9Lp(){
 
     }
+
+
+    //判断长度 需要插到第几位
+    public function checkLengthLocal($value){
+        if(strpos($value,'-2090-') !== false){
+            //网红
+            return 3;
+        }
+        if(strpos($value,'-2469-') !== false){
+            //本当
+            return 3;
+        }
+        if(strpos($value,'-1620-') !== false){
+            //清仓
+            return 3;
+        }
+        if(strpos($value,'-2480-') !== false){
+            //T2
+            return 3;
+        }
+        if(strpos($value,'-2526-') !== false){
+            //AMZ
+            return 3;
+        }
+        return 2;  
+    }
+
+    //转化fpdata的信息
+    public function transferFpdata($fpdata_str){
+        $ret_arr = [];
+        $fpdata = explode(';',rtrim($fpdata_str,';'));
+        foreach ($fpdata as $k=>$v) 
+        {
+            $ret_arr[] = $this->getGoodFeatures($v);
+        }
+        return $ret_arr;
+    }
+
+    public function getGoodFeatures($str){
+        $tmp_arr = explode('|',trim($str,'|'));
+    
+        if(strpos($tmp_arr[0],',') !== false){
+            $tmp_arr_one = explode(',',trim($tmp_arr[0],','));
+            $tmp_arr_two = explode('-',trim($tmp_arr_one[1],'-'));
+            $len_local = $this->checkLengthLocal($tmp_arr[0]);
+            $f_arr = [];
+            foreach($tmp_arr_two as $kk=>$vv){
+                if($kk == 1){
+                    if($len_local == 3){
+                        $f_arr[] = $vv;
+                    }else{
+                        $f_arr[] = $vv.'-'.$tmp_arr_one[0];
+                    }
+                }else if($kk == 2){
+                    if($len_local == 3){
+                        $f_arr[] = $vv.'-'.$tmp_arr_one[0];
+                    }else{
+                        $f_arr[] = $vv;
+                    }
+                }else{
+                    $f_arr[] = $vv;
+                }
+               
+            }
+            $tmp_arr[0] = "-".implode('-',$f_arr)."-";
+        }
+        return $tmp_arr;
+    }
 }

+ 4 - 3
template/erp/retreatlog.html

@@ -21,8 +21,8 @@
 <td>出库时间</td>
 <td>退库时间</td>
 <td>重置时间</td>
-<td>货品信息</td>
-
+<td>u9料号</td>
+<td>中文品名</td>
 </tr>
 </table>
 </div>
@@ -45,7 +45,8 @@ function custom(){
         $(this).find('td:eq(2)').css("width","8%");
         $(this).find('td:eq(3)').css("width","8%");
         $(this).find('td:eq(4)').css("width","8%");
-        $(this).find('td:eq(5)').css("width","44%");
+        $(this).find('td:eq(5)').css("width","20%");
+        $(this).find('td:eq(6)').css("width","36%");
       
     });
 }