rabin 2 years ago
parent
commit
36427bbc83
2 changed files with 35 additions and 15 deletions
  1. 13 6
      service/agent/lib/Order.php
  2. 22 9
      service/setting/database/role.php

+ 13 - 6
service/agent/lib/Order.php

@@ -374,13 +374,20 @@ class Order
         }
         $data['order_type'] = 1;
         if ($member) {
-            //$area = Dever::db('agent/member_area')->getOne(array('mid' => $member['id'], 'type' => 1));
-            $price = Dever::db('agent/order')->getPrice(array('mid' => $member['id']));
-            if ($price && $data['price'] > $price['total']) {
-                $data['price'] -= $price['total'];
+            $member_role = Dever::db('setting/role')->find($member['role']);
+            if ($member_role) {
+                if ($member_role['levelup'] != 1) {
+                    Dever::alert('当前代理角色无法升级');
+                } elseif ($member_role['levelup_yue'] == 1) {
+                    //$area = Dever::db('agent/member_area')->getOne(array('mid' => $member['id'], 'type' => 1));
+                    $price = Dever::db('agent/order')->getPrice(array('mid' => $member['id']));
+                    if ($price && $data['price'] > $price['total']) {
+                        $data['price'] -= $price['total'];
+                    } else {
+                        Dever::alert('该代理区域无法升级');
+                    }
+                }
                 $data['order_type'] = 2;
-            } else {
-                Dever::alert('代理区域无法升级');
             }
         }
 

+ 22 - 9
service/setting/database/role.php

@@ -153,13 +153,26 @@ return array
         'levelup'        => array
         (
             'type'      => 'tinyint-1',
-            'name'      => '是否可升级-该角色是否可以升级',
+            'name'      => '是否可升级-该角色是否可以升级到新角色',
             'default'   => '1',
             'desc'      => '是否可升级',
             'match'     => 'is_numeric',
             'update'  	=> 'radio',
             'option'    => $yes,
             'list'      => true,
+            'control'   => 'levelup',
+        ),
+
+        'levelup_yue'        => array
+        (
+            'type'      => 'tinyint-1',
+            'name'      => '升级补余额-升级到新角色,是否补足余额,如果选否,就直接用新角色全额购买',
+            'default'   => '1',
+            'desc'      => '升级补余额',
+            'match'     => 'is_numeric',
+            'update'    => 'radio',
+            'option'    => $yes,
+            'show'      => 'levelup=1',
         ),
 
         'state'     => array
@@ -185,17 +198,17 @@ return array
 
     'default' => array
 	(
-		'col' => 'id,name,short_name,`desc`,type,area,isbuy,levelup,profit,price,state,cdate',
+		'col' => 'id,name,short_name,`desc`,type,area,isbuy,levelup,levelup_yue,profit,price,state,cdate',
 		'value' => array
 		(
-			'1,"普通用户", "用户", "注册但未注册成功代理商角色的用户", 1, 1, 2, 2, "0", "0", 1,' . DEVER_TIME,
-            '2,"城市代理商", "城市", "一个城市代理商,有一二三线城市的区分。获得区域内门店利润1%收益。", 2, 1, 1, 2, "1", "0", 1,' . DEVER_TIME,
-            '3,"区县代理商", "区县", "一线城市的区,与二三线城市的县级代理商。获得区域内门店利润3%收益。", 2, 2, 1, 1, "3", "0", 1,' . DEVER_TIME,
-			'4,"街道代理商", "街道", "一个街道区域的代理商。获得区域内门店利润5%收益。", 2, 3, 1, 1, "5", "0", 1,' . DEVER_TIME,
+			'1,"普通用户", "用户", "注册但未注册成功代理商角色的用户", 1, 1, 2, 2, 2, "0", "0", 1,' . DEVER_TIME,
+            '2,"城市代理商", "城市", "一个城市代理商,有一二三线城市的区分。获得区域内门店利润1%收益。", 2, 1, 1, 2, 1, "1", "0", 1,' . DEVER_TIME,
+            '3,"区县代理商", "区县", "一线城市的区,与二三线城市的县级代理商。获得区域内门店利润3%收益。", 2, 2, 1, 1, 1, "3", "0", 1,' . DEVER_TIME,
+			'4,"街道代理商", "街道", "一个街道区域的代理商。获得区域内门店利润5%收益。", 2, 3, 1, 1, 1, "5", "0", 1,' . DEVER_TIME,
 			
-			'5,"创服代理商", "创服", "在开创本系统时的一个代理商角色,以后此角色不新增,要保留,因为其中还有一些权益未兑换。", 3, 1, 2, 1, "0", "0", 1,' . DEVER_TIME,
-			'6,"创客会员", "创客", "有分销能力的会员,但不产生代理商收益。", 1, 1, 1, 2, "0", "5000", 1,' . DEVER_TIME,
-			'7,"消客会员", "消客", "能带动产品销售量的会员。", 1, 1, 1, 2, "0", "2000", 1,' . DEVER_TIME,
+			'5,"创服代理商", "创服", "在开创本系统时的一个代理商角色,以后此角色不新增,要保留,因为其中还有一些权益未兑换。", 3, 1, 2, 1, 1, "0", "0", 1,' . DEVER_TIME,
+			'6,"创客会员", "创客", "有分销能力的会员,但不产生代理商收益。", 1, 1, 1, 2, 2, "0", "5000", 1,' . DEVER_TIME,
+			'7,"消客会员", "消客", "能带动产品销售量的会员。", 1, 1, 1, 2, 2, "0", "2000", 1,' . DEVER_TIME,
 		),
 	),