dever 6 years ago
parent
commit
965163d827
5 changed files with 45 additions and 216 deletions
  1. 0 104
      database/level.php
  2. 24 4
      database/user.php
  3. 0 107
      database/user_score.php
  4. 3 1
      src/App.php
  5. 18 0
      src/Applet.php

+ 0 - 104
database/level.php

@@ -1,104 +0,0 @@
-<?php
-
-return array
-(
-    # 表名
-    'name' => 'level',
-    # 显示给用户看的名称
-    'lang' => '等级设置',
-    # 后台菜单排序
-    'order' => 8,
-    # 数据结构
-    'struct' => array
-    (
-        'id'        => array
-        (
-            'type'      => 'int-11',
-            'name'      => 'ID',
-            'default'   => '',
-            'desc'      => '',
-            'match'     => 'is_numeric',
-            'search'    => 'order',
-            'list'      => true,
-            'order'     => 'desc',
-        ),
-        
-        'name'      => array
-        (
-            'type'      => 'varchar-32',
-            'name'      => '等级名称',
-            'default'   => '',
-            'desc'      => '请输入名称',
-            'match'     => 'is_string',
-            'update'    => 'text',
-            'search'    => 'fulltext',
-            'list'      => true,
-        ),
-        
-        'score'       => array
-        (
-            'type'      => 'int-11',
-            'name'      => '所需积分',
-            'default'   => '1',
-            'desc'      => '所需积分',
-            'match'     => 'option',
-            'update'    => 'text',
-            'search'    => 'order',
-            'list'      => true,
-            'order'     => 'desc',
-            'edit'      => true,
-        ),
-
-        'state'     => array
-        (
-            'type'      => 'tinyint-1',
-            'name'      => '状态',
-            'default'   => '1',
-            'desc'      => '请选择状态',
-            'match'     => 'is_numeric',
-        ),
-        
-        'cdate'     => array
-        (
-            'type'      => 'int-11',
-            'name'      => '录入时间',
-            'match'     => array('is_numeric', time()),
-            'desc'      => '',
-            # 只有insert时才生效
-            'insert'    => true,
-            'list'      => 'date("Y-m-d H:i:s", {cdate})',
-        ),
-    ),
-
-    # 默认值
-    'default' => array
-    (
-        'col' => 'name,score,state,cdate',
-        'value' => array
-        (
-            '"默认等级",1, 1,' . time(),
-        ),
-    ),
-
-    'manage' => array
-    (
-        'insert' => false,
-        'edit' => false,
-
-        # 自定义快捷新增和编辑
-        'button' => array
-        (
-            '新增' => array('fast'),
-        ),
-        # 快捷更新
-        'list_button' => array
-        (
-            'edit' => array('编辑'),
-        ),
-    ),
-
-    'request' => array
-    (
-        
-    ),
-);

+ 24 - 4
database/user.php

@@ -7,10 +7,12 @@ $option = array
 	2 => '冻结',
 );
 
+/*
 $level = function()
 {
 	return Dever::db('passport/level')->state();
 };
+*/
 
 $sex = array
 (
@@ -26,6 +28,12 @@ $weixin = array
 	2 => '未关注',
 );
 
+$temp = array
+(
+	1 => '临时用户',
+	2 => '正式用户',
+);
+
 $bind = array
 (
 	1 => '已绑定',
@@ -208,7 +216,7 @@ return array
 			'desc' 		=> '请输入积分',
 			'match' 	=> 'option',
 			//'update'	=> 'text',
-			'list'		=> true,
+			//'list'		=> true,
 		),
 
 		'sex'		=> array
@@ -230,9 +238,21 @@ return array
 			'default' 	=> '1',
 			'desc' 		=> '请选择用户等级',
 			'match' 	=> 'is_numeric',
-			'option' 	=> $level,
-			'update'	=> 'select',
-			'list'		=> true,
+			//'option' 	=> $level,
+			//'update'	=> 'select',
+			//'list'		=> true,
+		),
+
+		'temp'		=> array
+		(
+			'type' 		=> 'tinyint-1',
+			'name' 		=> '是否临时用户',
+			'default' 	=> '1',
+			'desc' 		=> '是否临时用户',
+			'match' 	=> 'is_numeric',
+			'option' 	=> $temp,
+			//'update'	=> 'select',
+			//'list'		=> true,
 		),
 
 		'login_date'		=> array

+ 0 - 107
database/user_score.php

@@ -1,107 +0,0 @@
-<?php
-
-$status = array
-(
-    1 => '支出',
-    2 => '收入',
-);
-
-
-return array
-(
-    # 表名
-    'name' => 'user_score',
-    # 显示给用户看的名称
-    'lang' => '用户积分日志',
-    'order' => 10,
-    'menu'  => false,
-    # 数据结构
-    'struct' => array
-    (
-    
-        'id'        => array
-        (
-            'type'      => 'int-11',
-            'name'      => '用户ID',
-            'default'   => '',
-            'desc'      => '',
-            'match'     => 'is_numeric',
-            'search'    => 'order',
-            'list'      => true,
-        ),
-        
-        'uid'       => array
-        (
-            'type'      => 'int-11',
-            'name'      => '用户名',
-            'default'   => '',
-            'desc'      => '用户名',
-            'match'     => 'is_numeric',
-            //'update'  => 'text',
-            'search'    => array
-            (
-                'api' => 'passport/user-all',
-                'col' => 'username',
-                'result' => 'id',
-            ),
-            'list'      => 'Dever::load("passport/user-one#username", {uid})',
-        ),
-
-        'status'        => array
-        (
-            'type'      => 'tinyint-1',
-            'name'      => '收入支出状态',
-            'default'   => '1',
-            'desc'      => '收入支出状态',
-            'match'     => 'is_numeric',
-            'update'    => 'select',
-            'option'    => $status,
-            //'search'  => 'select',
-            'list'      => true,
-            //'edit'        => true,
-        ),
-
-        'score'     => array
-        (
-            'type'      => 'varchar-11',
-            'name'      => '积分',
-            'default'   => '',
-            'desc'      => '积分',
-            'match'     => 'is_numeric',
-            'update'    => 'text',
-            'list'      => true,
-        ),
-
-
-        'desc'     => array
-        (
-            'type'      => 'varchar-300',
-            'name'      => '描述',
-            'default'   => '',
-            'desc'      => '描述',
-            'match'     => 'option',
-            'update'    => 'textarea',
-        ),
-
-        'state'     => array
-        (
-            'type'      => 'tinyint-1',
-            'name'      => '状态',
-            'default'   => '1',
-            'desc'      => '请选择状态',
-            'match'     => 'is_numeric',
-        ),
-        
-        'cdate'     => array
-        (
-            'type'      => 'int-11',
-            'name'      => '注册时间',
-            'match'     => array('is_numeric', time()),
-            'desc'      => '',
-            # 只有insert时才生效
-            'insert'    => true,
-            //'list'        => 'date("Y-m-d H:i:s", {cdate})',
-        ),
-    ),
-
-);

+ 3 - 1
src/App.php

@@ -74,9 +74,11 @@ class App extends Base
         if (!$info) {
             $user['add_username'] = Dever::hide($mobile);
             $user['add_mobile'] = $mobile;
-            $user['add_temp'] = 1;
+            $user['add_temp'] = 2;
             $user['add_source_type'] = $source_type;
             $uid = Dever::load('passport/user-insert', $user);
+
+            Dever::score($uid, 'mobile_reg', '手机号注册');
         } else {
         	$uid = $info['id'];
         }

+ 18 - 0
src/Applet.php

@@ -72,6 +72,7 @@ class Applet extends Base
             $result['mobile'] = $mobile;
             if ($info) {
                 $update['set_mobile'] = $mobile;
+                $update['bind'] = 1;
                 $update['where_id'] = $uid;
                 Dever::load('passport/user-update', $update);
 
@@ -85,6 +86,10 @@ class Applet extends Base
             }
         }
 
+        if (!$info['mobile']) {
+            Dever::score($uid, 'bind_mobile', '绑定手机号');
+        }
+
         $result['uid'] = $uid;
         $result['signature'] = Dever::login($uid);
 
@@ -125,7 +130,10 @@ class Applet extends Base
                 $wechat['unionid'] = $data['unionid'];
             }
             if (!$uid) {
+                $user['bind'] = 2;
+                $user['temp'] = 1;
                 $user['username'] = '临时用户';
+                $user['source_type'] = 'applet';
                 $uid = Dever::load('passport/user-insert', $user);
             }
              
@@ -187,6 +195,7 @@ class Applet extends Base
             $result['mobile'] = $mobile;
             if ($info) {
                 $update['set_mobile'] = $mobile;
+                $update['bind'] = 1;
                 $update['where_id'] = $uid;
                 Dever::load('passport/user-update', $update);
 
@@ -200,6 +209,10 @@ class Applet extends Base
             }
         }
 
+        if (!$info['mobile']) {
+            Dever::score($uid, 'bind_mobile', '绑定手机号');
+        }
+
         $result['vid'] = $vid;
         $result['uid'] = $uid;
         $result['signature'] = Dever::login($uid);
@@ -255,6 +268,11 @@ class Applet extends Base
 
         $info = Dever::load('passport/user-one', $uid);
         if ($info) {
+
+            if ($info['temp'] == 1) {
+                Dever::score($uid, 'bind_wechat', '用户微信授权');
+            }
+            $update['temp'] = 2;
             if ($name) {
                 $update['set_username'] = $name;
             }