shish 1 vuosi sitten
vanhempi
commit
e6520ab1bc

+ 1 - 0
app-ghs/controllers/TestController.php

@@ -346,6 +346,7 @@ class TestController extends BaseController
             //['name' => '普莲花艺', 'merchantNo' => '8223990539902H8', 'wx' => [709291364, 709278546], 'zfb' => '2088160744835387'],
             //['name' => '凯里壹号鲜花工厂', 'merchantNo' => '82271305992000N', 'wx' => [735074420, 735074312], 'zfb' => '2088660471452939'],
             ['name' => '平潭花天下', 'merchantNo' => '8223910599200DU', 'wx' => [742408710, 742408308], 'zfb' => '2088860472568840'],
+            ['name' => '福清辉煌鲜花批发', 'merchantNo' => '8223910599200EA', 'wx' => [745744183, 745743573], 'zfb' => '2088860913726576'],
             //['name' => '阜阳芳棠鲜花批发', 'merchantNo' => '82237205992002Q', 'wx' => [733203298, 733203681], 'zfb' => '2088660084283241'],
             //['name' => '厦门拾花蒲鲜花批发', 'merchantNo' => '8223930599200BH', 'wx' => [732030422, 732025011], 'zfb' => '2088560833972467'],
             //['name' => '肇庆兄弟花业鲜花批发', 'merchantNo' => '8225880599200AN', 'wx' => [731684756, 731684322], 'zfb' => '2088560782624772'],

+ 102 - 3
app-hd/controllers/MemberWealController.php

@@ -14,6 +14,27 @@ class MemberWealController extends BaseController
 
     public $guestAccess = [];
 
+    //获取充值和会员的优惠政策 ssh 20250226
+    public function actionGetWeal()
+    {
+        $shop = $this->shop;
+        $shopId = $shop->id;
+        $weal = MemberWealClass::getAllByCondition(['shopId' => $shopId], null, '*', null);
+        $weal = arrayUtil::arraySort($weal, 'level', SORT_ASC);
+        if (!empty($weal)) {
+            foreach ($weal as $key => $val) {
+                $recharge = $val['recharge'] ?? 0;
+                $recharge = floatval($recharge);
+                $giv = $val['give'] ?? 0;
+                $giv = floatval($giv);
+                $weal[$key]['recharge'] = $recharge;
+                $weal[$key]['give'] = $giv;
+            }
+        }
+        $rechargeWeal = $shop->rechargeWeal ?? 0;
+        util::success(['weal' => $weal, 'rechargeWeal' => $rechargeWeal]);
+    }
+
     //获取会员的初始数据
     public function actionGetInitData()
     {
@@ -26,11 +47,13 @@ class MemberWealController extends BaseController
             $levelSn = $val['levelSn'] ?? 'general';
             $level = $val['level'] ?? 1;
             $discount = $val['discount'] ?? 0.95;
+            $recharge = $val['recharge'] ?? 0;
             $it = [
                 'name' => $name,
                 'levelSn' => $levelSn,
                 'level' => $level,
                 'discount' => $discount,
+                'recharge' => $recharge,
             ];
             $member[] = $it;
         }
@@ -45,6 +68,7 @@ class MemberWealController extends BaseController
                 $levelSn = $val['levelSn'] ?? 'general';
                 $level = $val['level'] ?? 1;
                 $discount = $val['discount'] ?? 0.95;
+                $recharge = $val['recharge'] ?? 0;
                 if ($discount > 1) {
                     util::fail($name . '的折扣必须小于等于1');
                 }
@@ -56,6 +80,7 @@ class MemberWealController extends BaseController
                     'levelSn' => $levelSn,
                     'level' => $level,
                     'discount' => $discount,
+                    'recharge' => $recharge,
                 ];
                 $member[] = $it;
             }
@@ -64,15 +89,87 @@ class MemberWealController extends BaseController
         util::success(['member' => $member, 'reduceDay' => $reduceDay]);
     }
 
-    public function actionGetRechargeInitData()
+    public function actionGetRechargeData()
     {
         $recharge = dict::getDict('memberLevelMap');
-
         $shopId = $this->shopId;
         $has = MemberWealClass::getByCondition(['shopId' => $shopId], true);
         $hasMemberDiscount = !empty($has) ? 1 : 0;
 
-        util::success(['recharge' => $recharge, 'hasMemberDiscount' => $hasMemberDiscount]);
+        $weal = MemberWealClass::getAllByCondition(['shopId' => $shopId], null, '*', 'level');
+        if (!empty($weal)) {
+            foreach ($recharge as $key => $val) {
+                $level = $val['level'];
+                $current = $weal[$level] ?? [];
+                $newDiscount = $current['discount'] ?? 0.9;
+                $newRecharge = $current['recharge'] ?? 0;
+                $newRecharge = floatval($newRecharge);
+                $newGive = $current['give'] ?? 0;
+                $newGive = floatval($newGive);
+                $recharge[$key]['discount'] = $newDiscount;
+                $recharge[$key]['recharge'] = $newRecharge;
+                $recharge[$key]['give'] = $newGive;
+            }
+        }
+        $shop = $this->shop;
+        $rechargeWeal = $shop->rechargeWeal ?? 1;
+        $rechargeWeal = $rechargeWeal == 0 ? 1 : $rechargeWeal;
+        util::success(['recharge' => $recharge, 'hasMemberDiscount' => $hasMemberDiscount, 'rechargeWeal' => $rechargeWeal]);
+    }
+
+    public function actionModifyRecharge()
+    {
+        $shop = $this->shop;
+        $rechargeWeal = $shop->rechargeWeal ?? 0;
+        if ($rechargeWeal != 0) {
+            util::fail('已经设置过了,不能修改');
+        }
+        $post = Yii::$app->request->post();
+        $rechargeWeal = $post['rechargeWeal'] ?? 0;
+        $data = $post['data'] ?? [];
+        if ($rechargeWeal == 0) {
+            util::fail('请选择优惠类型');
+        }
+        if (empty($data)) {
+            util::fail('请填写内容');
+        }
+
+        $connection = Yii::$app->db;
+        $transaction = $connection->beginTransaction();
+        try {
+            $shop->rechargeWeal = $rechargeWeal;
+            $shop->save();
+            $params = [];
+            foreach ($data as $key => $val) {
+                $levelSn = $val['levelSn'];
+                $params[$levelSn] = $val;
+            }
+            $shopId = $this->shopId;
+            $list = MemberWealClass::getAllByCondition(['shopId' => $shopId], null, '*', null, true);
+            if (empty($list)) {
+                util::fail('请先设置会员折扣');
+            }
+            foreach ($list as $k => $obj) {
+                $levelSn = $obj->levelSn ?? '';
+                $current = $params[$levelSn] ?? [];
+                $rechargeAmount = $current['recharge'] ?? 0;
+                $obj->recharge = $rechargeAmount;
+                if (!empty($current)) {
+                    $give = $current['give'] ?? 0;
+                    if ($rechargeWeal == 2) {
+                        //送钱
+                        $obj->give = $give;
+                    }
+                    $obj->save();
+                }
+            }
+            $transaction->commit();
+            util::complete('设置成功');
+        } catch (\Exception $e) {
+            $transaction->rollBack();
+            Yii::info("失败原因:" . $e->getMessage());
+            util::fail('设置失败');
+        }
     }
 
     public function actionModify()
@@ -100,6 +197,7 @@ class MemberWealController extends BaseController
                 $levelSn = $v['levelSn'] ?? 'general';
                 $level = $v['level'] ?? 1;
                 $name = $v['name'] ?? '普通会员';
+                $recharge = $v['recharge'] ?? 0;
                 $it = [
                     'mainId' => $mainId,
                     'shopId' => $shopId,
@@ -107,6 +205,7 @@ class MemberWealController extends BaseController
                     'levelSn' => $levelSn,
                     'discount' => $discount,
                     'name' => $name,
+                    'recharge' => $recharge,
                 ];
                 MemberWealClass::add($it, true);
             }