SigninController.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. namespace app\index\controller;
  3. use think\exception\ValidateException;
  4. use app\model\Signin;
  5. use app\model\Points;
  6. use app\model\SigninConfig;
  7. use app\model\Member;
  8. class SigninController extends Base
  9. {
  10. public function list()
  11. {
  12. $where['weid'] = weid();
  13. $where['uid'] = UID();
  14. $data = Signin::where($where)
  15. ->order('id desc')
  16. ->select()
  17. ->toArray();
  18. return $this->json(['data' => $data]);
  19. }
  20. public function add()
  21. {
  22. try {
  23. $number = Signin::getSginNumber();
  24. $uid = UID();
  25. $weid = weid();
  26. $SumSginDay = Signin::getSumSginDay() + 1;
  27. $description = '连续签到' . $SumSginDay . '天奖励积分';
  28. Signin::create([
  29. 'weid' => $weid,
  30. 'uid' => $uid,
  31. 'number' => (int) $number,
  32. 'title' => $description
  33. ]);
  34. Points::create([
  35. 'weid' => $weid,
  36. 'uid' => $uid,
  37. 'points' => (int) $number,
  38. 'description' => $description,
  39. 'prefix' => 1,
  40. 'type' => 3
  41. ]);
  42. Member::where('id', $uid)
  43. ->inc('points', (int) $number)
  44. ->update();
  45. } catch (\Exception $e) {
  46. $res['code'] = 0;
  47. $res['msg'] = $e->getMessage();
  48. }
  49. $memberinfo = Member::where('id', $uid)->find();
  50. if ($memberinfo) {
  51. $memberinfo = $memberinfo->toArray();
  52. }
  53. $memberinfo['sign_index'] = Signin::getSignIndex();
  54. $memberinfo['is_day_sgin'] = Signin::getIsDaySgin();
  55. $memberinfo['sum_sgin_day'] = Signin::getSumSginDay();
  56. $memberinfo['getpoints'] = $number;
  57. return $this->json(['data' => $memberinfo]);
  58. }
  59. public function memberinfo()
  60. {
  61. $Membermob = new Member;
  62. $memberinfo = $Membermob->getUserByWechat();
  63. $memberinfo['sign_index'] = Signin::getSignIndex();
  64. $memberinfo['is_day_sgin'] = Signin::getIsDaySgin();
  65. $memberinfo['sum_sgin_day'] = Signin::getSumSginDay();
  66. return $this->json(['data' => $memberinfo]);
  67. }
  68. public function signinconfig()
  69. {
  70. $where['weid'] = weid();
  71. $data = SigninConfig::where($where)
  72. ->order('sort asc')
  73. ->select()
  74. ->toArray();
  75. return $this->json(['data' => $data]);
  76. }
  77. }