shish 2 лет назад
Родитель
Сommit
86a8a40891
1 измененных файлов с 34 добавлено и 44 удалено
  1. 34 44
      biz-ghs/order/classes/OrderClass.php

+ 34 - 44
biz-ghs/order/classes/OrderClass.php

@@ -2,6 +2,7 @@
 
 namespace bizGhs\order\classes;
 
+use bizGhs\item\classes\ItemClassClass;
 use wkhtmltox\Image\Converter;
 use biz\shop\classes\ShopAdminClass;
 use biz\shop\classes\ShopCapitalClass;
@@ -141,6 +142,8 @@ class OrderClass extends BaseClass
             $orderList[$key]['itemList'] = $itemList;
         }
 
+        $classList = ItemClassClass::getAllByCondition(['mainId' => $mainId], null, '*', 'id');
+
         $phpExcelFile = Yii::getAlias("@vendor/phpoffice/phpexcel/");
         require_once($phpExcelFile . 'Classes/PHPExcel.php');
 
@@ -183,6 +186,7 @@ class OrderClass extends BaseClass
         $objPHPExcel->getActiveSheet()->setCellValue('Q1', '数量');
         $objPHPExcel->getActiveSheet()->setCellValue('R1', '已退数量');
         $objPHPExcel->getActiveSheet()->setCellValue('S1', '金额');
+        $objPHPExcel->getActiveSheet()->setCellValue('T1', '金额');
 
         //设置宽度
         $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
@@ -210,6 +214,7 @@ class OrderClass extends BaseClass
         $objPHPExcel->getActiveSheet()->getStyle('Q1')->getFont()->setSize(9)->setBold(true);
         $objPHPExcel->getActiveSheet()->getStyle('R1')->getFont()->setSize(9)->setBold(true);
         $objPHPExcel->getActiveSheet()->getStyle('S1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('T1')->getFont()->setSize(9)->setBold(true);
 
         $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
         $objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
@@ -230,6 +235,7 @@ class OrderClass extends BaseClass
         $objPHPExcel->getActiveSheet()->getStyle('Q1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
         $objPHPExcel->getActiveSheet()->getStyle('R1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
         $objPHPExcel->getActiveSheet()->getStyle('S1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('T1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
 
         $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
         $objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
@@ -250,59 +256,42 @@ class OrderClass extends BaseClass
         $objPHPExcel->getActiveSheet()->getStyle('Q1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
         $objPHPExcel->getActiveSheet()->getStyle('R1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
         $objPHPExcel->getActiveSheet()->getStyle('S1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('T1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
 
         $baseRow = 2;
         $x = 0;
         foreach ($orderList as $key => $orderData) {
             $currentList = $orderData['itemList'] ?? [];
             if (!empty($currentList)) {
-                array_unshift($currentList, ['id' => -1]);
                 foreach ($currentList as $k => $orderInfo) {
                     $i = $baseRow + $x;
                     $x++;
-                    if ($orderInfo['id'] == -1) {
-                        $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $orderData['orderSn']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $orderData['addTime']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $orderData['payTime']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $orderData['orderPrice']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, $orderData['tkPrice']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('F' . $i, $orderData['actPrice']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('G' . $i, $orderData['customName']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('H' . $i, $orderData['customMobile']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('I' . $i, $orderData['onlinePay'] == 1 ? '否' : '是');
-                        $objPHPExcel->getActiveSheet()->setCellValue('J' . $i, $orderData['debt'] == 1 ? '未结清' : '已结清');
-                        $objPHPExcel->getActiveSheet()->setCellValue('K' . $i, $orderData['sendNum']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('L' . $i, $orderData['book']==1?'是':'否');
-                        $objPHPExcel->getActiveSheet()->setCellValue('M' . $i, $orderData['shopAdminName']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('N' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('O' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('P' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('Q' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('R' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('S' . $i, '');
-                    } else {
-                        $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('F' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('G' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('H' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('I' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('J' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('K' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('L' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('M' . $i, '');
-                        $objPHPExcel->getActiveSheet()->setCellValue('N' . $i, $orderInfo['productId']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('O' . $i, $orderInfo['name']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('P' . $i, $orderInfo['xhUnitPrice']);
-                        $remainNum = bcsub($orderInfo['xhNum'],$orderInfo['refundNum']);
-                        $price = bcmul($remainNum,$orderInfo['xhUnitPrice'],2);
-                        $objPHPExcel->getActiveSheet()->setCellValue('Q' . $i, $remainNum);
-                        $objPHPExcel->getActiveSheet()->setCellValue('R' . $i, $orderInfo['refundNum']);
-                        $objPHPExcel->getActiveSheet()->setCellValue('S' . $i, $price);
-                    }
+
+                    $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $orderData['orderSn']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $orderData['addTime']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $orderData['payTime']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $orderData['orderPrice']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, $orderData['tkPrice']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('F' . $i, $orderData['actPrice']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('G' . $i, $orderData['customName']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('H' . $i, $orderData['customMobile']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('I' . $i, $orderData['onlinePay'] == 1 ? '否' : '是');
+                    $objPHPExcel->getActiveSheet()->setCellValue('J' . $i, $orderData['debt'] == 1 ? '未结清' : '已结清');
+                    $objPHPExcel->getActiveSheet()->setCellValue('K' . $i, $orderData['sendNum']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('L' . $i, $orderData['book'] == 1 ? '是' : '否');
+                    $objPHPExcel->getActiveSheet()->setCellValue('M' . $i, $orderData['shopAdminName']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('N' . $i, $orderInfo['productId']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('O' . $i, $orderInfo['name']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('P' . $i, $orderInfo['xhUnitPrice']);
+                    $remainNum = bcsub($orderInfo['xhNum'], $orderInfo['refundNum']);
+                    $price = bcmul($remainNum, $orderInfo['xhUnitPrice'], 2);
+                    $objPHPExcel->getActiveSheet()->setCellValue('Q' . $i, $remainNum);
+                    $objPHPExcel->getActiveSheet()->setCellValue('R' . $i, $orderInfo['refundNum']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('S' . $i, $price);
+                    $classId = $orderInfo['classId'] ?? 0;
+                    $className = isset($classList[$classId]) && isset($classList[$classId]['name']) ? $classList[$classId]['name'] : '';
+                    $objPHPExcel->getActiveSheet()->setCellValue('T' . $i, $className);
+
                     //居左
                     $objPHPExcel->getActiveSheet()->getStyle('A' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
                     $objPHPExcel->getActiveSheet()->getStyle('B' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
@@ -323,6 +312,7 @@ class OrderClass extends BaseClass
                     $objPHPExcel->getActiveSheet()->getStyle('Q' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
                     $objPHPExcel->getActiveSheet()->getStyle('R' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
                     $objPHPExcel->getActiveSheet()->getStyle('S' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('T' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
                 }
             }
         }