rabin 2 gadi atpakaļ
vecāks
revīzija
b1840c8d4e

+ 23 - 6
service/agent/database/member.php

@@ -14,7 +14,7 @@ $role = function()
 $title = function()
 {
     $array = array();
-    $data = Dever::load('setting/title-state');
+    $data = Dever::load('setting/title-getData', array('id' => 1));
     if($data)
     {
         $array += $data;
@@ -142,6 +142,19 @@ return array
     'config_type' => $type,
     'config_status' => $status,
     'info' => $info,
+    # 同步更新另外一个或多个表的多条关联数据,以逗号隔开
+    'sync' => array
+    (
+        'agent/member_title' => array
+        (
+            # 更新时的条件,另外一个表的字段 => 本表的字段
+            'where' => array('mid', 'id'),
+            # 要更新的数据
+            'update' => array('title_id' => 'title_id'),
+            # 同步更新的类型,delete为先删再插入,update为先查询是否存在,存在直接更新,不存在则插入, only为仅更新
+            'type' => 'delete',
+        )
+    ),
     'start' => array
     (
         'update' => 'agent/lib/manage.updateArea',
@@ -333,13 +346,13 @@ return array
 
         'title_id'      => array
         (
-            'type'      => 'int-11',
+            'type'      => 'varchar-100',
             'name'      => '代理商头衔',
             'default'   => '1',
             'desc'      => '代理商头衔',
-            'match'     => 'is_numeric',
-            'search'    => 'select',
-            'update'    => 'radio',
+            'match'     => 'is_string',
+            'search'    => 'selects',
+            'update'    => 'checkbox',
             'option'    => $title,
             'list'      => $search_auth == 2 ? true : false,
         ),
@@ -682,7 +695,11 @@ return array
             array('update', 'group_sell', 'group_sell', 'decimal-11,2 0 团队业绩'),
             array('update', 'old_group_sell', 'old_group_sell', 'decimal-11,2 0 历史团队业绩'),
         ),
-        'version' => 5,
+        6 => array
+        (
+            array('update', 'title_id', 'title_id', 'varchar-100 1 代理商头衔'),
+        ),
+        'version' => 6,
     ),
 
     'index' => array

+ 79 - 0
service/agent/database/member_title.php

@@ -0,0 +1,79 @@
+<?php
+/*
+|--------------------------------------------------------------------------
+| admin.php 管理员表
+|--------------------------------------------------------------------------
+*/
+
+return array
+(
+	# 表名
+	'name' => 'member_title',
+	# 显示给用户看的名称
+	'lang' => '头衔关联表',
+	'menu' => false,
+
+	# 数据结构
+	'struct' => array
+	(
+		'id' 		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> 'ID',
+			'default' 	=> '',
+			'desc' 		=> '',
+			'match' 	=> 'is_numeric',
+			'search'	=> 'order',
+			'list'		=> true,
+		),
+		
+		'mid'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '代理商',
+			'default' 	=> '',
+			'desc' 		=> '代理商',
+			'match' 	=> 'is_numeric',
+			'update'	=> 'text',
+			'list'		=> true,
+		),
+
+		'title_id'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '头衔ID',
+			'default' 	=> '',
+			'desc' 		=> '头衔ID',
+			'match' 	=> 'is_numeric',
+			'update'	=> 'text',
+			'list'		=> true,
+		),
+		
+		'cdate'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '录入时间',
+			'match' 	=> array('is_numeric', DEVER_TIME),
+			'desc' 		=> '',
+			# 只有insert时才生效
+			'insert'	=> true,
+			'list'		=> 'date("Y-m-d H:i:s", {cdate})',
+		),
+	),
+
+	# request 请求接口定义
+	'request' => array
+	(
+		'getData' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'title_id' => array('yes', 'in'),
+            ),
+            'order' => array('id' => 'desc'),
+            'type' => 'all',
+            'col' => 'mid|mid',
+        ),
+	)
+);

+ 9 - 2
service/agent/lib/Member.php

@@ -464,7 +464,14 @@ class Member
         $level = Dever::db('setting/level')->one($member['level_id']);
         $area = Dever::load("area/api.string", $member['area'], '-', true, '');
         $code = Dever::load("invite/api.code", $member['id']);
-        $title = Dever::db('setting/title')->find($member['title_id']);
+        $title = Dever::db('setting/title')->getDataByIds(array('id' => 1, 'ids' => $member['title_id']));
+        $title_name = array();
+        if ($title) {
+            foreach ($title as $k => $v) {
+                $title_name[] = $v['name'];
+            }
+        }
+        $title_name = implode('、', $title_name);
         if ($member['shop_id']) {
             $shop = Dever::db('shop/info')->one($member['shop_id']);
         } else {
@@ -504,7 +511,7 @@ class Member
                 $member['name'],
                 array('手机号', $member['mobile']),
                 array('邀请码', $code),
-                array('代理商头衔', $title['name']),
+                array('代理商头衔', $title_name),
                 array('代理角色', $role['name']),
                 array('代理区域', $area),
                 array('所属店铺', $shop['name']),

+ 25 - 0
service/setting/database/title.php

@@ -98,5 +98,30 @@ return array
             'order' => array('level' => 'desc', 'id' => 'desc'),
             'col' => '*',
         ),
+        'getData' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'id' => array('yes', '!='),
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('id' => 'desc'),
+            'col' => '*',
+        ),
+        'getDataByIds' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'id' => array('yes', '!='),
+                'ids' => array('yes-id', 'in'),
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('id' => 'desc'),
+            'col' => '*',
+        ),
     ),
 );