You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

198 lines
6.9 KiB

8 years ago
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Http\Controllers\Api\CommonController;
  4. use Illuminate\Http\Request;
  5. use App\Common\ReturnData;
  6. use App\Http\Model\User;
  7. class UserController extends CommonController
  8. {
  9. public function __construct()
  10. {
  11. parent::__construct();
  12. }
  13. //签到
  14. public function signin(Request $request)
  15. {
  16. $user = MallDataManager::userFirst(['id'=>Token::$uid]);
  17. if($user){}else{return ReturnCode::create(ReturnCode::PARAMS_ERROR);}
  18. $signin_time='';
  19. if(!empty($user->signin_time)){$signin_time = date('Ymd',strtotime($user->signin_time));} //签到时间
  20. $today = date('Ymd',time()); //今日日期
  21. if($signin_time==$today){return ReturnCode::create(101,'已经签到啦,请明天再来!');}
  22. $signin_point = (int)DB::table('system')->where(['keyword'=>'signin_point'])->value('value'); //签到积分
  23. DB::table('user')->where(['id'=>Token::$uid])->update(['point'=>($user->point+$signin_point),'signin_time'=>date('Y-m-d H:i:s')]); //更新用户积分,及签到时间
  24. DB::table('user_point_log')->insert(['type'=>1,'point'=>$signin_point,'des'=>'签到','user_id'=>Token::$uid]); //添加签到积分记录
  25. return ReturnCode::create(ReturnCode::SUCCESS,'恭喜您今日签到成功!+'.$signin_point.'积分');
  26. }
  27. //验证码校验
  28. public function verifyCodeCheck(Request $request)
  29. {
  30. $mobile = $request->input('mobile', null); //手机号码
  31. $verificationCode = $request->input('verificationCode', null); //手机验证码
  32. $type = $request->input('type', null); //验证码类型
  33. if ($mobile==null || $verificationCode==null || $type==null)
  34. {
  35. return ReturnCode::create(ReturnCode::PARAMS_ERROR);
  36. }
  37. if (!Helper::isValidMobile($mobile))
  38. {
  39. return ReturnCode::create(ReturnCode::MOBILE_FORMAT_FAIL);
  40. }
  41. $verifyCode = VerifyCode::isVerify($mobile, $verificationCode, $type);
  42. if(!$verifyCode)
  43. {
  44. return ReturnCode::create(ReturnCode::INVALID_VERIFY_CODE);
  45. }
  46. return ReturnCode::create(ReturnCode::SUCCESS);
  47. }
  48. //积分记录
  49. public function getCommunityNoticeList(Request $request)
  50. {
  51. $where = '';
  52. $page = $request->input('page',1);
  53. $size = $request->input('size',10);
  54. $skip = ($page-1)*$size;
  55. $select = ['id','title','des','litpic','type','created_at as time'];
  56. $orderBy = ['id','desc'];
  57. return ReturnCode::create(ReturnCode::SUCCESS,MallDataManager::getCommunityNoticeList($where,$select,$orderBy,$skip,$size));
  58. }
  59. //用户收货地址列表
  60. public function userAddressList(Request $request)
  61. {
  62. //参数
  63. $data['limit'] = $request->input('limit', 10);
  64. $data['offset'] = $request->input('offset', 0);
  65. $res = UserAddress::getList($data);
  66. if(!$res)
  67. {
  68. return ReturnData::create(ReturnData::SYSTEM_FAIL);
  69. }
  70. return ReturnData::create(ReturnData::SUCCESS,$res);
  71. }
  72. //用户收货地址详情
  73. public function userAddressDetail(Request $request)
  74. {
  75. //参数
  76. $id = $request->input('id',null);
  77. $res = UserAddress::getOne($id);
  78. if(!$res)
  79. {
  80. return ReturnData::create(ReturnData::SYSTEM_FAIL);
  81. }
  82. return ReturnData::create(ReturnData::SUCCESS,$res);
  83. }
  84. //设为默认地址
  85. public function userAddressSetDefault(Request $request)
  86. {
  87. //参数
  88. $id = $request->input('id',null);
  89. $res = UserAddress::setDefault($id);
  90. if(!$res)
  91. {
  92. return ReturnData::create(ReturnData::SYSTEM_FAIL);
  93. }
  94. return ReturnData::create(ReturnData::SUCCESS,$res);
  95. }
  96. //添加收货地址
  97. public function userAddressAdd(Request $request)
  98. {
  99. //参数
  100. $data['name'] = $request->input('name',null);
  101. $data['mobile'] = $request->input('mobile',null);
  102. $data['country'] = $request->input('country',null);
  103. $data['province'] = $request->input('province',null);
  104. $data['city'] = $request->input('city',null);
  105. $data['district'] = $request->input('district',null);
  106. $data['address'] = $request->input('address',null);
  107. if($request->input('telphone',null)!==null){$data['telphone'] = $request->input('telphone');}
  108. if($request->input('zipcode',null)!==null){$data['zipcode'] = $request->input('zipcode');}
  109. if($request->input('email',null)!==null){$data['email'] = $request->input('email');}
  110. if($request->input('best_time',null)!==null){$data['best_time'] = $request->input('best_time');}
  111. if($request->input('is_default',null)!==null){$data['is_default'] = $request->input('is_default');}
  112. if($data['name']===null || $data['mobile']===null || $data['address']===null || $data['country']===null || $data['province']===null || $data['city']===null || $data['district']===null)
  113. {
  114. return ReturnData::create(ReturnData::PARAMS_ERROR);
  115. }
  116. $res = UserAddress::add($data);
  117. if(!$res)
  118. {
  119. return ReturnData::create(ReturnData::SYSTEM_FAIL);
  120. }
  121. return ReturnData::create(ReturnData::SUCCESS,$res);
  122. }
  123. //修改收货地址
  124. public function userAddressUpdate(Request $request)
  125. {
  126. //参数
  127. $data['id'] = $request->input('id',null);
  128. $data['name'] = $request->input('name',null);
  129. $data['mobile'] = $request->input('mobile',null);
  130. $data['country'] = $request->input('country',null);
  131. $data['province'] = $request->input('province',null);
  132. $data['city'] = $request->input('city',null);
  133. $data['district'] = $request->input('district',null);
  134. $data['address'] = $request->input('address',null);
  135. if($request->input('telphone',null)!==null){$data['telphone'] = $request->input('telphone');}
  136. if($request->input('zipcode',null)!==null){$data['zipcode'] = $request->input('zipcode');}
  137. if($request->input('email',null)!==null){$data['email'] = $request->input('email');}
  138. if($request->input('best_time',null)!==null){$data['best_time'] = $request->input('best_time');}
  139. if($request->input('is_default',null)!==null){$data['is_default'] = $request->input('is_default');}
  140. if($data['id']===null || $data['name']===null || $data['mobile']===null || $data['address']===null || $data['country']===null || $data['province']===null || $data['city']===null || $data['district']===null)
  141. {
  142. return ReturnData::create(ReturnData::PARAMS_ERROR);
  143. }
  144. $res = UserAddress::modify($data);
  145. if(!$res)
  146. {
  147. return ReturnData::create(ReturnData::SYSTEM_FAIL);
  148. }
  149. return ReturnData::create(ReturnData::SUCCESS,$res);
  150. }
  151. //删除收货地址
  152. public function userAddressDelete(Request $request)
  153. {
  154. //参数
  155. $id = $request->input('id',null);
  156. $res = UserAddress::remove($id);
  157. if(!$res)
  158. {
  159. return ReturnData::create(ReturnData::SYSTEM_FAIL);
  160. }
  161. return ReturnData::create(ReturnData::SUCCESS,$res);
  162. }
  163. }