dever 3 år sedan
förälder
incheckning
a22ca1cd47

+ 4 - 0
service/agent/database/member.php

@@ -92,6 +92,10 @@ return array
     'config_type' => $type,
     'config_status' => $status,
     'info' => $info,
+    'start' => array
+    (
+        'update' => 'agent/lib/manage.updateArea',
+    ),
     # 数据结构
     'struct' => array
     (

+ 15 - 3
service/agent/lib/Manage.php

@@ -6,6 +6,12 @@ use Dever;
 
 class Manage
 {
+    # 后台设置区域
+    public function updateArea($id, $name, $data)
+    {
+
+    }
+
     # 获取
     # 设置上级
     public function setParent_commit($id, $name, $data)
@@ -153,8 +159,12 @@ class Manage
 
                     Dever::db('agent/member')->update($update);
 
-                    # 对改区域进行占用
-                    Dever::load('area/api')->upStatus($order['area'], 2);
+                    # 对区域进行占用
+                    $role = Dever::db('setting/role')->one($order['role']);
+                    if ($role && $role['type'] == 2) {
+                        Dever::load('area/api')->upStatus($order['area'], 2);
+                    }
+                    
                     $area_data = array('mid' => $order['mid'], 'order_id' => $order['id'], 'role' => $order['role'], 'area' => $order['area']);
                     $area = Dever::db('agent/member_area')->find($area_data);
 
@@ -163,7 +173,9 @@ class Manage
                         $area_data['price'] = $order['price'];
                         Dever::db('agent/member_area')->insert($area_data);
                     } else {
-                        Dever::load('area/api')->upStatus($area['area'], 1);
+                        if ($role && $role['type'] == 2) {
+                            Dever::load('area/api')->upStatus($area['area'], 1);
+                        }
                     }
                 }
             }

+ 4 - 0
service/agent/lib/Order.php

@@ -278,6 +278,10 @@ class Order
         $data['area'] = Dever::input('area');
         if ($data['role']['type'] == 2 && !$data['area']) {
             Dever::alert('代理区域不能为空');
+
+            if (strstr($data['area'], '-1')) {
+                Dever::alert('代理区域选择不正确');
+            }
         }
 
         # 计算支付金额

+ 2 - 1
service/agent/src/Area.php

@@ -119,7 +119,8 @@ class Area
         }
 
         if (!$data) {
-            Dever::alert('error');
+            $data[] = array('value' => -1, 'name' => '无法代理');
+            //Dever::alert('error');
         }
 
         if ($level_search || $level_num > 1) {