UserController.php
4.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<?php
// +----------------------------------------------------------------------
// | bronet [ 以客户为中心 以奋斗者为本 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013-2017 http://www.bronet.cn All rights reserved.
// +----------------------------------------------------------------------
namespace api\portal\controller;
use cmf\controller\RestBaseController;
use think\Db;
/**
* @title 我的
* @description 个人中心相关接口
*/
class UserController extends RestBaseController
{
/**
* @title 我的健康档案
* @description 健康档案页渲染
* @author panhaowen
* @url /portal/User/info
* @method POST
* @header name:XX-Token require:1 default: desc:token
*/
public function info()
{
$data=Db::name('user')->where('id',$this->getUserId())->field('age,height,before_weight,last_yuejin_time,pregnant_week,weight_level,now_weight')->find();
$re=Db::name('user_week_sign')->where('user_id',$this->getUserId())->order('create_time','desc')->find();
if($re){
$data['now_weight']=$re['weight'];
}
$this->success('我的健康档案',$data);
}
/**
* @title 我的积分管理
* @description 积分记录接口
* @author panhaowen
* @url /portal/User/scoreLog
* @method POST
* @header name:XX-Token require:1 default: desc:token
*/
public function scoreLog(){
$data=Db::name('user_score_log')->where('user_id',$this->getUserId())->select();
$this->success('我的积分管理',$data);
}
/**
* @title 注册信息提交
* @description 注册信息提交接口
* @author panhaowen
* @url /portal/User/registerPost
* @method POST
* @header name:XX-Token require:1 default: desc:token
* @param name:age require:1 desc:年龄(岁)
* @param name:height require:1 desc:身高(cm)
* @param name:before_weight require:1 desc:孕前体重(kg)
* @param name:last_yuejin_time require:1 desc:末次月经第一天
* @param name:pregnant_week require:1 desc:孕周
* @param name:now_weight require:1 desc:当前体重
* @param name:weight_level require:1 desc:体力活动水平(休息状态,轻体力,中体力,重体力)
*/
public function registerPost(){
$param=$this->request->param();
$param['user_status']=1;
$param['register_time']=time();
$param['last_yuejin_time']=strtotime($param['last_yuejin_time']);
Db::name('user')->where('id',$this->getUserId())->update($param);
$this->success('注册信息提交成功');
}
/**
* @title 手机号注册
* @description 手机号注册提交接口
* @author panhaowen
* @url /portal/User/mobile
* @method POST
* @header name:XX-Token require:1 default: desc:token
* @param name:mobile require:1
* @param name:code require:1
*/
public function mobile(){
$param=$this->request->param();
$re = cmf_check_verification_code($param['mobile'], $param['code'], true);
if ($re == "") {
Db::name('user')->where('id',$this->getUserId())->update(['mobile'=>$param['mobile']]);
$this->success('手机号注册提交成功');
} else {
$this->error($re);
}
}
/**
* @title 获取验证码
* @description 获取验证码接口
* @author panhaowen
* @url /portal/User/getCode
* @method POST
* @header name:XX-Token require:1 default: desc:token
* @param name:mobile require:1
*/
public function getCode(){
require_once VENDOR_PATH . "sms/lib/Ucpaas.class.php";
$param=$this->request->param();
$options['accountsid']='d63e23ab657c95babad1681133dbabdc';
//填写在开发者控制台首页上的Auth Token
$options['token']='1fc7377f48edb5bf1659284210f16418';
$code = cmf_get_verification_code($param['mobile'], 4);
$appid = "78950d10e37b4ae5bd9b9c08f3720db3"; //应用的ID,可在开发者控制台内的短信产品下查看
$templateid = "41494"; //可在后台短信产品→选择接入的应用→短信模板-模板ID,查看该模板ID
$uid = "";
//70字内(含70字)计一条,超过70字,按67字/条计费,超过长度短信平台将会自动分割为多条发送。分割后的多条短信将按照具体占用条数计费。
$send=new \Ucpaas($options);
$re=$send->SendSms($appid,$templateid,$code,$param['mobile'],$uid);
cmf_verification_code_log($param['mobile'], $code, 180);
$this->success('',$re);
}
}