shish пре 1 година
родитељ
комит
f61a4641c8
2 измењених фајлова са 263 додато и 11 уклоњено
  1. 37 2
      app-ghs/controllers/RefundController.php
  2. 226 9
      biz-ghs/order/classes/RefundOrderClass.php

+ 37 - 2
app-ghs/controllers/RefundController.php

@@ -339,8 +339,43 @@ class RefundController extends BaseController
         if ($status > -1) {
             $where['status'] = $status;
         }
-        $list = RefundOrderClass::getOrderList($where);
-        util::success($list);
+        $export = $get['export'] ?? 0;
+        if ($export == 1) {
+            if (isset($where['orderTime']) == false && isset($where['addTime']) == false) {
+                util::fail('请选时间');
+            }
+            ini_set('memory_limit', '2045M');
+            set_time_limit(0);
+
+            if (isset($where['orderTime'])) {
+                $start = $where['orderTime'][1][0];
+                $end = $where['orderTime'][1][1];
+                $monthTime = bcmul(31, 86400);
+                $startArea = strtotime($start);
+                $endArea = strtotime($end);
+                $diff = bcsub($endArea, $startArea);
+                if ($diff > $monthTime) {
+                    util::fail('最长可导出一个月');
+                }
+            }
+
+            if (isset($where['addTime'])) {
+                $start = $where['addTime'][1][0];
+                $end = $where['addTime'][1][1];
+                $monthTime = bcmul(31, 86400);
+                $startArea = strtotime($start);
+                $endArea = strtotime($end);
+                $diff = bcsub($endArea, $startArea);
+                if ($diff > $monthTime) {
+                    util::fail('最长可导出一个月');
+                }
+            }
+        }
+        $respond = RefundOrderClass::getOrderList($where);
+        if ($export == 1) {
+            RefundOrderClass::exportRefundData($respond, $this->mainId);
+        }
+        util::success($respond);
     }
 
     //主要根据花材找退款记录 ssh 20240229

+ 226 - 9
biz-ghs/order/classes/RefundOrderClass.php

@@ -75,11 +75,11 @@ class RefundOrderClass extends BaseClass
                 }
                 $refundData[$orderItemId] = $val;
             }
-            $orderItemList = OrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
-            if (empty($orderItemList)) {
+            $refundItemList = OrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
+            if (empty($refundItemList)) {
                 util::fail('订单花材错误呢');
             }
-            foreach ($orderItemList as $oneKey => $oneItem) {
+            foreach ($refundItemList as $oneKey => $oneItem) {
                 $oneItemId = $oneItem->id;
                 $productId = $oneItem->productId ?? 0;
                 $ptItemId = $oneItem->itemId ?? 0;
@@ -352,10 +352,10 @@ class RefundOrderClass extends BaseClass
     public static function getOrderDetail($orderSn, $shopId)
     {
         $orderData = self::orderExist(['orderSn' => $orderSn, 'shopId' => $shopId]);
-        $orderInfo = RefundOrderItemClass::getOrderItemDetail($orderSn);
+        $refundInfo = RefundOrderItemClass::getOrderItemDetail($orderSn);
         $itemData = [];
-        if ($orderInfo) {
-            foreach ($orderInfo as $v) {
+        if ($refundInfo) {
+            foreach ($refundInfo as $v) {
                 $info = json_decode($v['itemInfo'], true);
                 $tmp = $info;
                 $tmp['itemCover'] = self::groupImg($info['itemCover']);
@@ -439,10 +439,10 @@ class RefundOrderClass extends BaseClass
     public static function getOrderDetailByRelateOrder($orderSn, $shopId)
     {
         $orderData = self::orderExist(['relateOrderSn' => $orderSn, 'shopId' => $shopId]);
-        $orderInfo = RefundOrderItemClass::getOrderItemDetail($orderData['orderSn']);
+        $refundInfo = RefundOrderItemClass::getOrderItemDetail($orderData['orderSn']);
         $itemData = [];
-        if ($orderInfo) {
-            foreach ($orderInfo as $v) {
+        if ($refundInfo) {
+            foreach ($refundInfo as $v) {
                 $info = json_decode($v['itemInfo'], true);
                 $tmp = $info;
                 $tmp['itemCover'] = self::groupImg($info['itemCover']);
@@ -461,4 +461,221 @@ class RefundOrderClass extends BaseClass
         return $orderData;
     }
 
+    public static function exportRefundData($respond, $mainId)
+    {
+        $refundList = $respond['list'] ?? [];
+        if (empty($refundList)) {
+            util::fail('没有数据');
+        }
+        $orderSnList = array_column($refundList, 'orderSn');
+        $refundItemData = RefundOrderItemClass::getAllByCondition(['orderSn' => ['in', $orderSnList]], null, '*');
+        $refundItemList = [];
+        if (!empty($refundItemData)) {
+            foreach ($refundItemData as $itemInfo) {
+                $orderSn = $itemInfo['orderSn'] ?? '';
+                $refundItemList[$orderSn][] = $itemInfo;
+            }
+        }
+        foreach ($refundList as $key => $refundInfo) {
+            $orderSn = $refundInfo['orderSn'] ?? '';
+            $itemList = $refundItemList[$orderSn] ?? [];
+            $refundList[$key]['itemList'] = $itemList;
+        }
+        print_r($refundList);die;
+
+        $phpExcelFile = Yii::getAlias("@vendor/phpoffice/phpexcel/");
+        require_once($phpExcelFile . 'Classes/PHPExcel.php');
+
+        $objPHPExcel = new \PHPExcel();
+
+        $objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
+            ->setLastModifiedBy("Maarten Balliauw")
+            ->setTitle("Office 2007 XLSX Document")
+            ->setSubject("Office 2007 XLSX Document")
+            ->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
+            ->setKeywords("office 2007 openxml php")
+            ->setCategory("file");
+
+        $ghsTitle = '供货商';
+        $objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader(date('n月j日') . " " . $ghsTitle);
+
+        $objPHPExcel->getActiveSheet()->getPageMargins()->setTop(0.7);
+        $objPHPExcel->getActiveSheet()->getPageMargins()->setBottom(0.1);
+        $objPHPExcel->getActiveSheet()->getPageMargins()->setLeft(0.5);
+        $objPHPExcel->getActiveSheet()->getPageMargins()->setRight(0);
+        $objPHPExcel->getActiveSheet()->getPageMargins()->setHeader(0.1);
+        $objPHPExcel->getActiveSheet()->getPageMargins()->setFooter(0);
+
+        $objPHPExcel->getActiveSheet()->setCellValue('A1', '订单号');
+        $objPHPExcel->getActiveSheet()->setCellValue('B1', '订单日期');
+        $objPHPExcel->getActiveSheet()->setCellValue('C1', '退款单号');
+        $objPHPExcel->getActiveSheet()->setCellValue('D1', '客户');
+        $objPHPExcel->getActiveSheet()->setCellValue('E1', '退款金额');
+        $objPHPExcel->getActiveSheet()->setCellValue('F1', '售后类型');
+        $objPHPExcel->getActiveSheet()->setCellValue('G1', '类型');
+        $objPHPExcel->getActiveSheet()->setCellValue('H1', '操作人');
+        $objPHPExcel->getActiveSheet()->setCellValue('I1', '售后原因');
+        $objPHPExcel->getActiveSheet()->setCellValue('J1', '驳回原因');
+        $objPHPExcel->getActiveSheet()->setCellValue('K1', '备注');
+        $objPHPExcel->getActiveSheet()->setCellValue('L1', '状态');
+        $objPHPExcel->getActiveSheet()->setCellValue('M1', '申请日期');
+        $objPHPExcel->getActiveSheet()->setCellValue('N1', '通过日期');
+        $objPHPExcel->getActiveSheet()->setCellValue('O1', '花材ID');
+        $objPHPExcel->getActiveSheet()->setCellValue('P1', '花材名称');
+        $objPHPExcel->getActiveSheet()->setCellValue('Q1', '单价');
+        $objPHPExcel->getActiveSheet()->setCellValue('R1', '数量');
+        $objPHPExcel->getActiveSheet()->setCellValue('S1', '金额');
+
+        //设置宽度
+        $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(16);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(20);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('O')->setWidth(20);
+        //加粗
+        $objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('C1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('D1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('F1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('G1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('H1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('I1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('J1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('K1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('L1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('M1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('N1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('O1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('P1')->getFont()->setSize(9)->setBold(true);
+        $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('A1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('C1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('D1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('E1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('F1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('G1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('H1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('I1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('J1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('K1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('L1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('M1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('N1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('O1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('P1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $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('A1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('C1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('D1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('E1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('F1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('G1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('H1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('I1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('J1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('K1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('L1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('M1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('N1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('O1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('P1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $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);
+
+        $baseRow = 2;
+        $x = 0;
+        foreach ($refundList as $key => $orderData) {
+            $currentList = $orderData['itemList'] ?? [];
+            if (!empty($currentList)) {
+                foreach ($currentList as $k => $refundInfo) {
+                    $i = $baseRow + $x;
+                    $x++;
+
+                    $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $orderData['relateOrderSn']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $orderData['orderTime']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $orderData['orderSn']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $orderData['customName']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('E' . $i, $orderData['refundPrice']);
+                    $refundTypeName = $orderData['refundType'] == 1 ? '退货并退款' : '仅退款';
+                    $objPHPExcel->getActiveSheet()->setCellValue('F' . $i, $refundTypeName);
+                    $typeName = $orderData['book'] == 0 ? '常规' : '预订退款';
+                    $objPHPExcel->getActiveSheet()->setCellValue('G' . $i, $typeName);
+                    $objPHPExcel->getActiveSheet()->setCellValue('H' . $i, $orderData['shopAdminName']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('I' . $i, $orderData['cause']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('J' . $i, $orderData['rejectReason']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('K' . $i, $orderData['remark']);
+                    $statusName = '待审核';
+                    if($orderData['status'] == 1){
+                        $statusName = '已通过';
+                    }
+                    if($orderData['status'] == 2){
+                        $statusName = '已驳回';
+                    }
+                    if($orderData['status'] == 3){
+                        $statusName = '已取消';
+                    }
+                    $objPHPExcel->getActiveSheet()->setCellValue('L' . $i, $statusName);
+                    $objPHPExcel->getActiveSheet()->setCellValue('M' . $i, $orderData['addTime']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('N' . $i, $orderData['passTime']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('O' . $i, $refundInfo['productId']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('P' . $i, $refundInfo['xhUnitPrice']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('Q' . $i, $refundInfo['name']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('R' . $i, $refundInfo['xhNum']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('S' . $i, $refundInfo['xhPrice']);
+
+                    //居左
+                    $objPHPExcel->getActiveSheet()->getStyle('A' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('B' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('C' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('D' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('E' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('F' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('G' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('H' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('I' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('J' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('K' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('L' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('M' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('N' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('O' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('P' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $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);
+                }
+            }
+        }
+        $fileName = '售后记录-' . time();
+        $objPHPExcel->getActiveSheet()->setTitle($fileName);
+        $objPHPExcel->setActiveSheetIndex(0);
+        $dir = './priceTable/' . $mainId;
+        if (file_exists($dir) == false) {
+            mkdir($dir, 0777, true);
+        }
+        $date = $fileName;
+        $file = $date . '.xls';
+        $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
+        if (file_exists($dir . '/' . $file)) {
+            unlink($dir . '/' . $file);
+        }
+        $objWriter->save($dir . '/' . $file);
+        $fileUrl = Yii::$app->params['ghsHost'] . '/priceTable/' . $mainId . '/' . $file;
+        util::success(['file' => $fileUrl, 'shortFile' => $file]);
+    }
+
 }