...
|
...
|
@@ -9,6 +9,8 @@ use fast\Random; |
|
|
use think\Validate;
|
|
|
use think\Cache;
|
|
|
use app\api\model\HouseJoin;
|
|
|
use app\api\model\UserHouse;
|
|
|
use app\api\model\UserMoneyLog;
|
|
|
|
|
|
/**
|
|
|
* 会员接口
|
...
|
...
|
@@ -107,19 +109,18 @@ class User extends Api |
|
|
public function index()
|
|
|
{
|
|
|
$user = $this->auth->getUser();
|
|
|
$store_inform_log = new \app\api\model\StoreInformLog;
|
|
|
$data = [
|
|
|
// 当前小区信息
|
|
|
'house' => \app\api\model\House::get($user['house_id'])
|
|
|
->visible(['id','name'])->toArray(),
|
|
|
// 今日收益
|
|
|
'today_money' => $store_inform_log
|
|
|
->where('user_id',$this->auth->id)
|
|
|
'today_money' => UserMoneyLog::where('user_id',$this->auth->id)
|
|
|
->where('money','>',0)
|
|
|
->whereTime('createtime', 'today')
|
|
|
->sum('money'),
|
|
|
// 总收益
|
|
|
'total_money' => $store_inform_log
|
|
|
->where('user_id',$this->auth->id)
|
|
|
'total_money' => UserMoneyLog::where('user_id',$this->auth->id)
|
|
|
->where('money','>',0)
|
|
|
->sum('money'),
|
|
|
// 未读消息数量
|
|
|
'message_num' => \app\api\model\Message::where('to_user_id',$user['id'])
|
...
|
...
|
@@ -138,6 +139,120 @@ class User extends Api |
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @ApiTitle (个人中心-选择社区)
|
|
|
* @ApiSummary (个人中心-选择社区)
|
|
|
* @ApiMethod (POST)
|
|
|
* @ApiRoute (/api/user/houseList)
|
|
|
*
|
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
|
* @ApiParams (name="area", type="string", required=true, description="市区地址例如:'天津市/西青区'")
|
|
|
* @ApiParams (name="keyword", type="string", required=false, description="关键字")
|
|
|
*
|
|
|
* @ApiReturn({
|
|
|
"code": 1,
|
|
|
"msg": "success",
|
|
|
"time": "1598688508",
|
|
|
"data": [{
|
|
|
"id": 16, //小区ID
|
|
|
"name": "兴安苑", //小区名称
|
|
|
"area": "北京/北京市/朝阳区", //小区所在地区
|
|
|
"status": 1, //状态:1=申请中,2=已绑定
|
|
|
"is_current": 0 //是否当前小区:0=否,1=是
|
|
|
}]
|
|
|
})
|
|
|
*/
|
|
|
public function houseList()
|
|
|
{
|
|
|
$user = $this->auth->getUser();
|
|
|
$area = $this->request->param('area');
|
|
|
$keyword = $this->request->param('keyword');
|
|
|
$where = [];
|
|
|
if(!empty($area)){
|
|
|
$where['h.area'] = ['like',"%$area%"];
|
|
|
}
|
|
|
if(!empty($keyword)){
|
|
|
$where['h.name'] = ['like',"%$keyword%"];
|
|
|
}
|
|
|
// 查出该用户已绑定的和申请中的小区
|
|
|
$list = UserHouse::alias('uh')
|
|
|
->join('house h','h.id = uh.house_id')
|
|
|
->where('uh.user_id',$user['id'])
|
|
|
->where($where)
|
|
|
->field("h.id,h.name,h.area,uh.status")
|
|
|
->order('uh.status desc')
|
|
|
->select();
|
|
|
foreach($list as &$v){
|
|
|
$v['is_current'] = $user['house_id'] == $v['id'] ? 1 : 0;
|
|
|
}
|
|
|
$this->success('success',$list);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @ApiTitle (个人中心-选择社区-切换)
|
|
|
* @ApiSummary (个人中心-选择社区-切换)
|
|
|
* @ApiMethod (POST)
|
|
|
* @ApiRoute (/api/user/houseUnbind)
|
|
|
*
|
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
|
* @ApiParams (name="house_id", type="inter", required=true, description="小区ID")
|
|
|
*
|
|
|
* @ApiReturn({
|
|
|
"code": 1,
|
|
|
"msg": "切换成功"
|
|
|
})
|
|
|
*/
|
|
|
public function houseChange()
|
|
|
{
|
|
|
$user = $this->auth->getUser();
|
|
|
$house_id = $this->request->param('house_id');、
|
|
|
empty($house_id) && $this->error('缺少必要参数');
|
|
|
$info = UserHouse::get(['user_id'=>$user['id'],'house_id'=>$house_id]);
|
|
|
empty($info) && $this->error('绑定信息不存在');
|
|
|
$info['status'] != 2 && $this->error('您还没有绑定该小区,无法切换');
|
|
|
$user->house_id = $house_id;
|
|
|
$user->save();
|
|
|
$this->success('切换成功');
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @ApiTitle (个人中心-选择社区-解绑)
|
|
|
* @ApiSummary (个人中心-选择社区-解绑)
|
|
|
* @ApiMethod (POST)
|
|
|
* @ApiRoute (/api/user/houseUnbind)
|
|
|
*
|
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
|
* @ApiParams (name="house_id", type="inter", required=true, description="小区ID")
|
|
|
*
|
|
|
* @ApiReturn({
|
|
|
"code": 1,
|
|
|
"msg": "解绑成功"
|
|
|
})
|
|
|
*/
|
|
|
public function houseUnbind()
|
|
|
{
|
|
|
$user = $this->auth->getUser();
|
|
|
$house_id = $this->request->param('house_id');
|
|
|
empty($house_id) && $this->error('缺少必要参数');
|
|
|
$info = UserHouse::get(['user_id'=>$user['id'],'house_id'=>$house_id]);
|
|
|
empty($info) && $this->error('绑定信息不存在');
|
|
|
$info['status'] != 2 && $this->error('您还没有绑定该小区,无法解绑');
|
|
|
// 启动事务
|
|
|
Db::startTrans();
|
|
|
try{
|
|
|
$info->delete();
|
|
|
$user->house_id = 0;
|
|
|
$user->save();
|
|
|
// 提交事务
|
|
|
Db::commit();
|
|
|
} catch (\Exception $e) {
|
|
|
// 回滚事务
|
|
|
Db::rollback();
|
|
|
$this->error($e->getMessage());
|
|
|
}
|
|
|
$this->success('解绑成功');
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @ApiTitle (个人中心-我的活动)
|
|
|
* @ApiSummary (个人中心-我的活动)
|
|
|
* @ApiMethod (POST)
|
...
|
...
|
@@ -175,18 +290,24 @@ class User extends Api |
|
|
* @ApiMethod (POST)
|
|
|
* @ApiRoute (/api/user/activityInfo)
|
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
|
* @ApiParams (name="house_join_id", type="string", required=true, description="报名ID")
|
|
|
* @ApiParams (name="house_join_id", type="inter", required=true, description="报名ID")
|
|
|
|
|
|
* @ApiReturn ({
|
|
|
"code": 1,
|
|
|
"msg": "成功",
|
|
|
"time": "1598673648",
|
|
|
"data": [{
|
|
|
"id": 20, //报名ID
|
|
|
"time": "1598684603",
|
|
|
"data": {
|
|
|
"order_no": "2020082852995199", //订单号
|
|
|
"pay_price": "60.00", //合计费用
|
|
|
"price": "30.00", // 报名费用
|
|
|
"total_num": 2, // 报名数量
|
|
|
"title": "澳大利亚政府这人品:我只要不承认,就不是针对中国", //活动标题
|
|
|
"content": "", //活动内容
|
|
|
"activity_time": "2020-08-28-2020-08-28" //活动时间
|
|
|
}]
|
|
|
"content": "", //活动描述
|
|
|
"spec_type": "2", //活动规格:0=无规格-免费,1=单规格,2=多规格
|
|
|
"activity_attr": "", //规格
|
|
|
"activity_time": "2020-08-28-2020-08-28", //活动时间
|
|
|
"join_time": "2020-08-28 18:45:56" //报名时间
|
|
|
}
|
|
|
})
|
|
|
*/
|
|
|
public function activityInfo()
|
...
|
...
|
@@ -195,11 +316,50 @@ class User extends Api |
|
|
empty($house_join_id) && $this->error('请传入必填参数');
|
|
|
$info = HouseJoin::get(['user_id'=>$this->auth->id,'id'=>$house_join_id]);
|
|
|
empty($info) && $this->error('活动信息不存在');
|
|
|
$info['activity_time'] = date('Y-m-d',$info['start_time']).'-'.date('Y-m-d',$info['end_time']);
|
|
|
$data = [
|
|
|
// 活动时间
|
|
|
'activity_time' => date('Y-m-d',$info['start_time']).'-'.date('Y-m-d',$info['end_time']),
|
|
|
// 报名时间
|
|
|
'join_time' => date('Y-m-d H:i:s',!empty($info['pay_time']) ? $info['pay_time'] : $info['createtime'])
|
|
|
];
|
|
|
$info = $info->visible([
|
|
|
'title',
|
|
|
]);
|
|
|
$this->success('成功', $info);
|
|
|
'content',
|
|
|
'spec_type',
|
|
|
'price',
|
|
|
'order_no',
|
|
|
'total_num',
|
|
|
'pay_price',
|
|
|
'activity_attr'
|
|
|
])->toArray();
|
|
|
$this->success('成功', array_merge($info,$data));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @ApiTitle (个人中心-收益明细)
|
|
|
* @ApiSummary (个人中心-收益明细)
|
|
|
* @ApiMethod (POST)
|
|
|
* @ApiRoute (/api/user/moneyLog)
|
|
|
*
|
|
|
* @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
|
|
|
*
|
|
|
* @ApiReturn({
|
|
|
"code": 1,
|
|
|
"msg": "成功",
|
|
|
"time": "1598692386",
|
|
|
"data": [{
|
|
|
"memo": "测试", //标题
|
|
|
"money": "10.00", //金额
|
|
|
"createtime": "2020-08-29 17:07:56" // 时间
|
|
|
}]
|
|
|
})
|
|
|
*/
|
|
|
public function moneyLog()
|
|
|
{
|
|
|
$list = UserMoneyLog::where('user_id',$this->auth->id)
|
|
|
->field("memo,money,from_unixtime(createtime, '%Y-%m-%d %H:%i:%S') createtime")
|
|
|
->select();
|
|
|
$this->success('成功',$list);
|
|
|
}
|
|
|
|
|
|
/**
|
...
|
...
|
|