Browse Source

Merge branch 'master' into debt

shish 1 year ago
parent
commit
401d99542b

+ 2 - 2
app-ghs/controllers/OrderController.php

@@ -1052,7 +1052,7 @@ class OrderController extends BaseController
             if (getenv('YII_ENV') == 'production') {
                 $tbMainId = 44171;
             } else {
-                $tbMainId = 644;
+                $tbMainId = 0;
             }
             if ($this->mainId == $tbMainId) {
                 //平潭花天下,就算选了收款人,也不要给改变开单人,临时解决方案 ssh 2250314
@@ -1335,7 +1335,7 @@ class OrderController extends BaseController
         } catch (\Exception $e) {
             $transaction->rollBack();
             Yii::error("下单失败原因:" . $e->getMessage());
-            noticeUtil::push("零售下单失败原因:" . $e->getMessage(), '15280215347');
+            noticeUtil::push("批发线下开单失败,原因:" . $e->getMessage(), '15280215347');
             util::fail('下单失败');
         }
     }

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

@@ -12,6 +12,7 @@ use bizHd\notice\classes\NoticeClass;
 use bizHd\purchase\classes\PurchaseClass;
 use bizHd\purchase\classes\PurchaseClearClass;
 use common\components\dateUtil;
+use common\components\dict;
 use common\components\imgUtil;
 use common\components\stringUtil;
 use Yii;
@@ -51,7 +52,7 @@ class RefundController extends BaseController
         }
 
         $staff = $this->shopAdmin;
-        if($staff->mobile != '15280215347'){
+        if ($staff->mobile != '15280215347') {
             util::fail('请联系管理员操作');
         }
 
@@ -532,7 +533,9 @@ class RefundController extends BaseController
             }
         }
 
-        util::success(['info' => $refund, 'itemList' => $itemList]);
+        $itemRefundOption = dict::getDict('itemRefundOption');
+
+        util::success(['info' => $refund, 'itemList' => $itemList, 'itemRefundOption' => $itemRefundOption]);
     }
 
     //退款  lqh 2021.6.25
@@ -628,4 +631,35 @@ class RefundController extends BaseController
         }
     }
 
-}
+    //修改售后原因 ssh 20250623
+    public function actionChangeRefundOption()
+    {
+        $post = Yii::$app->request->post();
+        $id = $post['id'] ?? 0;
+        $sonId = $post['sonId'] ?? 0;
+        $optionId = $post['optionId'] ?? 0;
+        $refund = RefundOrderClass::getById($id, true);
+        if (empty($refund)) {
+            util::fail('没有找到退款信息');
+        }
+        if ($refund->mainId != $this->mainId) {
+            util::fail('没有权限');
+        }
+        $orderSn = $refund->orderSn;
+        $son = RefundOrderItemClass::getById($sonId, true);
+        if (empty($son)) {
+            util::fail('没有找到花材信息');
+        }
+        if ($son->orderSn != $orderSn) {
+            util::fail('退款信息有问题');
+        }
+        $map = dict::getDict('itemRefundOption');
+        $info = $map[$optionId] ?? [];
+        $name = $info['name'] ?? '未选';
+        $son->refundOptionId = $optionId;
+        $son->refundOptionName = $name;
+        $son->save();
+        util::complete('修改成功');
+    }
+
+}

+ 2 - 2
app-ghs/controllers/TestController.php

@@ -727,7 +727,7 @@ class TestController extends BaseController
     //零售订单查询 ssh 20231031
     public function actionLsTradeQuery()
     {
-        $shopId = 520;
+        $shopId = 1490;
         $shop = ShopClass::getById($shopId, true);
         if (empty($shop)) {
             util::stop('没有找到门店21');
@@ -744,7 +744,7 @@ class TestController extends BaseController
         ];
         $laResource = new Lakala($params);
         $queryParams = [
-            'orderSn' => 'KD26617943',
+            'orderSn' => 'KD26618561',
             //'tradeNo' => '66222010853306',
         ];
         $response = $laResource->query($queryParams, 0);

+ 48 - 0
biz-ghs/order/classes/RefundOrderClass.php

@@ -7,6 +7,7 @@ use biz\shop\classes\ShopClass;
 use biz\shop\classes\ShopExtClass;
 use biz\sj\classes\SjClass;
 use biz\stat\classes\StatOutClass;
+use bizGhs\item\classes\ItemClassClass;
 use bizGhs\order\traits\OrderTrait;
 use bizGhs\product\classes\ProductClass;
 use bizGhs\shop\classes\MainClass;
@@ -545,10 +546,13 @@ class RefundOrderClass extends BaseClass
         $orderSnList = array_column($refundList, 'orderSn');
         $refundItemData = RefundOrderItemClass::getAllByCondition(['orderSn' => ['in', $orderSnList]], null, '*');
         $refundItemList = [];
+        $pIds = [];
         if (!empty($refundItemData)) {
             foreach ($refundItemData as $itemInfo) {
                 $orderSn = $itemInfo['orderSn'] ?? '';
                 $refundItemList[$orderSn][] = $itemInfo;
+                $productId = $itemInfo['productId'] ?? 0;
+                $pIds[] = $productId;
             }
         }
         foreach ($refundList as $key => $refundInfo) {
@@ -557,6 +561,21 @@ class RefundOrderClass extends BaseClass
             $refundList[$key]['itemList'] = $itemList;
         }
 
+        $pIds = array_unique($pIds);
+        $pIds = array_filter($pIds);
+        $productList = ProductClass::getAllByCondition(['id' => ['in', $pIds]], null, '*', null);
+        $classList = ItemClassClass::getAllByCondition(['mainId' => $mainId], null, '*', 'id');
+        $classMap = [];
+        if (!empty($productList)) {
+            foreach ($productList as $product) {
+                $productId = $product['id'] ?? 0;
+                $classId = $product['classId'];
+                $class = $classList[$classId] ?? [];
+                $className = $class['name'] ?? '未分类';
+                $classMap[$productId] = ['name' => $className, 'classId' => $classId];
+            }
+        }
+
         $phpExcelFile = Yii::getAlias("@vendor/phpoffice/phpexcel/");
         require_once($phpExcelFile . 'Classes/PHPExcel.php');
 
@@ -599,6 +618,9 @@ class RefundOrderClass extends BaseClass
         $objPHPExcel->getActiveSheet()->setCellValue('Q1', '单价');
         $objPHPExcel->getActiveSheet()->setCellValue('R1', '数量');
         $objPHPExcel->getActiveSheet()->setCellValue('S1', '金额');
+        $objPHPExcel->getActiveSheet()->setCellValue('T1', '花材分类');
+        $objPHPExcel->getActiveSheet()->setCellValue('U1', '售后原因ID');
+        $objPHPExcel->getActiveSheet()->setCellValue('V1', '售后原因');
 
         //设置宽度
         $objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
@@ -610,6 +632,9 @@ class RefundOrderClass extends BaseClass
         $objPHPExcel->getActiveSheet()->getColumnDimension('M')->setWidth(20);
         $objPHPExcel->getActiveSheet()->getColumnDimension('N')->setWidth(20);
         $objPHPExcel->getActiveSheet()->getColumnDimension('P')->setWidth(20);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('T')->setWidth(15);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('U')->setWidth(14);
+        $objPHPExcel->getActiveSheet()->getColumnDimension('V')->setWidth(25);
         //加粗
         $objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(9)->setBold(true);
         $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(9)->setBold(true);
@@ -630,6 +655,9 @@ class RefundOrderClass 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('U1')->getFont()->setSize(9)->setBold(true);
+        $objPHPExcel->getActiveSheet()->getStyle('V1')->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);
@@ -650,6 +678,9 @@ class RefundOrderClass 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('U1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('V1')->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);
@@ -670,6 +701,9 @@ class RefundOrderClass 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);
+        $objPHPExcel->getActiveSheet()->getStyle('U1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
+        $objPHPExcel->getActiveSheet()->getStyle('V1')->getAlignment()->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);
 
         $baseRow = 2;
         $x = 0;
@@ -722,6 +756,13 @@ class RefundOrderClass extends BaseClass
                     $objPHPExcel->getActiveSheet()->setCellValue('R' . $i, $refundInfo['xhNum']);
                     $objPHPExcel->getActiveSheet()->setCellValue('S' . $i, $refundInfo['xhPrice']);
 
+                    $productId = $refundInfo['productId'];
+                    $classInfo = $classMap[$productId] ?? [];
+                    $className = $classInfo['name'] ?? '未分类';
+                    $objPHPExcel->getActiveSheet()->setCellValue('T' . $i, $className);
+                    $objPHPExcel->getActiveSheet()->setCellValue('U' . $i, $refundInfo['refundOptionId']);
+                    $objPHPExcel->getActiveSheet()->setCellValue('V' . $i, $refundInfo['refundOptionName']);
+
                     //居左
                     $objPHPExcel->getActiveSheet()->getStyle('A' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
                     $objPHPExcel->getActiveSheet()->getStyle('B' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
@@ -743,6 +784,8 @@ class RefundOrderClass extends BaseClass
                     $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);
+                    $objPHPExcel->getActiveSheet()->getStyle('U' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                    $objPHPExcel->getActiveSheet()->getStyle('V' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
 
                 }
             } else {
@@ -768,6 +811,9 @@ class RefundOrderClass extends BaseClass
                 $objPHPExcel->getActiveSheet()->setCellValue('Q' . $i, '');
                 $objPHPExcel->getActiveSheet()->setCellValue('R' . $i, '');
                 $objPHPExcel->getActiveSheet()->setCellValue('S' . $i, '');
+                $objPHPExcel->getActiveSheet()->setCellValue('T' . $i, '');
+                $objPHPExcel->getActiveSheet()->setCellValue('U' . $i, '');
+                $objPHPExcel->getActiveSheet()->setCellValue('V' . $i, '');
 
                 //居左
                 $objPHPExcel->getActiveSheet()->getStyle('A' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
@@ -790,6 +836,8 @@ class RefundOrderClass extends BaseClass
                 $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);
+                $objPHPExcel->getActiveSheet()->getStyle('U' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
+                $objPHPExcel->getActiveSheet()->getStyle('V' . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
 
             }
 

+ 9 - 1
common/components/dict.php

@@ -8,6 +8,14 @@ class dict
 {
 
     public static $data = [
+        //花材售后原因
+        'itemRefundOption' => [
+            0 => ['id' => 0, 'name' => '未选'],
+            1 => ['id' => 1, 'name' => '烂瓣,掉瓣'],
+            2 => ['id' => 2, 'name' => '上点'],
+            3 => ['id' => 3, 'name' => '少货'],
+            4 => ['id' => 4, 'name' => '品质问题退差价'],
+        ],
         //允许看商家列表的人员
         'couldLookAllShop' => [
             4,//石头
@@ -138,7 +146,7 @@ class dict
             //现金
             'cash' => 3,
             //余额
-            'balance'=>4,
+            'balance' => 4,
         ],
         'hasPayMap' => [