shish 2 years ago
parent
commit
b65c24c8d6
1 changed files with 57 additions and 204 deletions
  1. 57 204
      app-ghs/controllers/CsController.php

+ 57 - 204
app-ghs/controllers/CsController.php

@@ -6,6 +6,7 @@ use biz\ghs\classes\GhsClass;
 use biz\sj\classes\SjClass;
 use biz\wx\classes\WxMessageClass;
 use bizGhs\book\classes\BookItemClass;
+use bizGhs\cg\classes\CgRefundClass;
 use bizGhs\order\classes\PurchaseOrderClass;
 use bizGhs\order\classes\PurchaseOrderItemClass;
 use bizGhs\product\classes\ProductClass;
@@ -48,7 +49,7 @@ class CsController extends BaseController
     {
         $where = [];
         $get = Yii::$app->request->get();
-        $export = $get['export'] ?? 0;
+        $export = 1;
         $search = $get['search'] ?? '';
         $where['shopId'] = 23580;
         $ghsId = $get['ghsId'] ?? 0;
@@ -104,6 +105,7 @@ class CsController extends BaseController
 
         if ($export == 1) {
             $this->exportOrderData($data, 23390);
+            util::stop('');
         }
 
         //状态统计,很慢,暂时隐藏
@@ -118,6 +120,7 @@ class CsController extends BaseController
         $data = array_merge($data, $statData);
         echo "<pre>";
         print_r($data);
+        util::stop('');
     }
 
 
@@ -136,11 +139,24 @@ class CsController extends BaseController
                 $orderItemList[$orderSn][] = $itemInfo;
             }
         }
+        $totalActPrice = 0;
+        $totalTkPrice = 0;
+        $totalOnlyTkPrice = 0;
+        $totalOrderPrice = 0;
         foreach ($orderList as $key => $orderInfo) {
             $orderSn = $orderInfo['orderSn'] ?? '';
             $status = $orderInfo['status'] ?? 0;
+            $entryTime = $orderInfo['entryTime'] ?? '';
             //增加项
             $actPrice = $orderInfo['actPrice'] ?? 0;
+            $tkPrice = $orderInfo['tkPrice'] ?? 0;
+            $orderPrice = $orderInfo['orderPrice'] ?? 0;
+            $discountAmount = $orderInfo['discountAmount'] ?? 0;
+            $packingCharge = $orderInfo['packingCharge'] ?? 0;
+            $shortCharge = $orderInfo['shortCharge'] ?? 0;
+            $longCharge = $orderInfo['longCharge'] ?? 0;
+            $pickCharge = $orderInfo['pickCharge'] ?? 0;
+            $localCharge = $orderInfo['localCharge'] ?? 0;
             if ($status != 4) {
                 unset($orderList[$key]);
                 continue;
@@ -150,216 +166,53 @@ class CsController extends BaseController
                 unset($orderList[$key]);
                 continue;
             }
-            $itemList = $orderItemList[$orderSn] ?? [];
-            $orderList[$key]['itemList'] = $itemList;
-        }
-
-        $classList = ItemClassClass::getAllByCondition(['mainId' => $mainId], null, '*', 'id');
-
-        $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', '花材Id');
-        $objPHPExcel->getActiveSheet()->setCellValue('O1', '花材名称');
-        $objPHPExcel->getActiveSheet()->setCellValue('P1', '单价');
-        $objPHPExcel->getActiveSheet()->setCellValue('Q1', '数量');
-        $objPHPExcel->getActiveSheet()->setCellValue('R1', '已退数量');
-        $objPHPExcel->getActiveSheet()->setCellValue('S1', '金额');
-        $objPHPExcel->getActiveSheet()->setCellValue('T1', '分类');
-
-        //设置宽度
-        $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
-        $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(20);
-        $objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(20);
-        $objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20);
-        $objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(20);
-        $objPHPExcel->getActiveSheet()->getColumnDimension('O')->setWidth(20);
-        $objPHPExcel->getActiveSheet()->getColumnDimension('T')->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('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);
-        $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('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);
-        $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);
-        $objPHPExcel->getActiveSheet()->getStyle('T1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+            if ($discountAmount > 0 || $packingCharge > 0 || $shortCharge > 0 || $longCharge > 0 || $pickCharge > 0 || $localCharge > 0) {
+                echo $orderSn . ' ' . $discountAmount . ' ' . $packingCharge . ' ' . $shortCharge . ' ' . $longCharge . ' ' . $pickCharge . ' ' . $localCharge . "<br/>\n";
+            }
 
-        $baseRow = 2;
-        $x = 0;
-        foreach ($orderList as $key => $orderData) {
-            $currentList = $orderData['itemList'] ?? [];
-            if (!empty($currentList)) {
-                foreach ($currentList as $k => $orderInfo) {
-                    $i = $baseRow + $x;
-                    $x++;
+            $totalActPrice = bcadd($totalActPrice, $actPrice, 2);
+            $totalTkPrice = bcadd($totalTkPrice, $tkPrice, 2);
+            $totalOrderPrice = bcadd($totalOrderPrice, $orderPrice, 2);
+            $itemList = $orderItemList[$orderSn] ?? [];
+            $orderList[$key]['itemList'] = $itemList;
 
-                    $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $orderData['orderSn']);
-                    $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $orderData['addTime']);
-                    if ($orderData['status'] == 4) {
-                        $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $orderData['entryTime']);
-                    } else {
-                        $objPHPExcel->getActiveSheet()->setCellValue('C' . $i, '');
-                    }
-                    $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['ghsName']);
-                    $objPHPExcel->getActiveSheet()->setCellValue('H' . $i, $orderData['shopAdminName']);
-                    $objPHPExcel->getActiveSheet()->setCellValue('I' . $i, $orderData['cgStaffName']);
-                    $map = [1 => '待确认', 2 => '待发货', 3 => '待入库', 4 => '已入库', 5 => '已取消'];
-                    $statusName = isset($orderData['status']) && isset($map[$orderData['status']]) ? $map[$orderData['status']] : '未知';
-                    $objPHPExcel->getActiveSheet()->setCellValue('J' . $i, $statusName);
-                    $objPHPExcel->getActiveSheet()->setCellValue('K' . $i, $orderData['printNum'] ?? 0);
-                    $debtName = '';
-                    if ($orderData['debt'] == 1) {
-                        $debtName = '未结清';
-                    }
-                    if ($orderData['debt'] == 2) {
-                        $debtName = '已结清';
+            //增加项
+            if ($tkPrice > 0) {
+                $refundList = CgRefundClass::getAllByCondition(['relateOrderSn' => $orderSn], null, '*', null, true);
+                if (!empty($refundList)) {
+                    foreach ($refundList as $refundInfo) {
+                        if (isset($refundInfo->refundType) && $refundInfo->refundType == 2) {
+                            $refundPrice = $refundInfo->refundPrice ?? 0;
+                            $totalOnlyTkPrice = bcadd($totalOnlyTkPrice, $refundPrice, 2);
+                        }
                     }
-                    $objPHPExcel->getActiveSheet()->setCellValue('L' . $i, $debtName);
-                    $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['bigPrice']);
-                    $remainNum = bcsub($orderInfo['itemNum'], $orderInfo['refundNum']);
-                    $price = bcmul($remainNum, $orderInfo['bigPrice'], 2);
-                    $price = floatval($price);
-                    $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);
-                    $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);
                 }
             }
+            $currentItemPrice = 0;
+            if (!empty($itemList)) {
+                foreach ($itemList as $itemData) {
+                    $bigPrice = $itemData['bigPrice'] ?? 0;
+                    $itemNum = $itemData['itemNum'] ?? 0;
+                    $total = bcmul($bigPrice, $itemNum, 2);
+                    $currentItemPrice = bcadd($currentItemPrice, $total, 2);
+                }
+            }
+
+            $add1 = bcadd($currentItemPrice, $packingCharge, 2);
+            $add2 = bcadd($add1, $shortCharge, 2);
+            $add3 = bcadd($add2, $longCharge, 2);
+
+            $last = bcsub($add3, $tkPrice, 2);
+            if (floatval($last) != floatval($actPrice)) {
+                echo $currentItemPrice . ' 优惠:' . $discountAmount . ' 打包:' . $packingCharge . ' 短途:' . $shortCharge . ' 长途:' . $longCharge . ' 提:' . $pickCharge . ' 本:' . $localCharge . ' 实:' . $actPrice . $entryTime . "<br/>\n";
+                echo $orderSn . " 不同<br/>\n";
+                die;
+            }
+
         }
-        $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]);
+        echo "<pre>";
+        echo '订单金额:' . $totalOrderPrice . ' 实际金额:' . $totalActPrice . ' 退款金额:' . $totalTkPrice . ' 仅退款:' . $totalOnlyTkPrice;
     }
 
 }