Membersignin.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <?php
  2. /**
  3. * Membersignin.php
  4. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  5. * =========================================================
  6. * Copy right 2015-2025 杭州牛之云科技有限公司, 保留所有权利。
  7. * ----------------------------------------------
  8. * 官方网址: https://www.niushop.com
  9. * =========================================================
  10. * @author : niuteam
  11. * @date : 2022.8.8
  12. * @version : v5.0.0.1
  13. */
  14. namespace app\api\controller;
  15. use addon\membersignin\model\Signin;
  16. use app\model\member\MemberSignin as MemberSigninModel;
  17. class Membersignin extends BaseApi
  18. {
  19. /**
  20. * 是否已签到
  21. */
  22. public function issign()
  23. {
  24. $token = $this->checkToken();
  25. if ($token[ 'code' ] < 0) return $this->response($token);
  26. $member_signin = new MemberSigninModel();
  27. $res = $member_signin->isSign($token[ 'data' ][ 'member_id' ]);
  28. return $this->response($res);
  29. }
  30. /**
  31. * 签到
  32. */
  33. public function signin()
  34. {
  35. $token = $this->checkToken();
  36. if ($token[ 'code' ] < 0) return $this->response($token);
  37. $member_signin = new MemberSigninModel();
  38. $res = $member_signin->signin($token[ 'data' ][ 'member_id' ], $this->site_id);
  39. return $this->response($res);
  40. }
  41. /**
  42. * 签到奖励规则
  43. * @return string
  44. */
  45. public function award()
  46. {
  47. $member_signin = new MemberSigninModel();
  48. $info = $member_signin->getAward($this->site_id);
  49. return $this->response($info);
  50. }
  51. /**
  52. * 获取签到记录
  53. */
  54. public function getSignRecords()
  55. {
  56. $token = $this->checkToken();
  57. if ($token[ 'code' ] < 0) return $this->response($token);
  58. $member_signin = new MemberSigninModel();
  59. $date = strtotime(date('Y-m-01 00:00:00')) - 86400 * 6;
  60. $condition = [
  61. [ 'member_id', '=', $this->member_id ],
  62. [ 'create_time', 'between', [ $date, time() ] ],
  63. [ 'action', '=', 'membersignin' ]
  64. ];
  65. $list = $member_signin->getMemberSigninList($condition, 'create_time', 'id asc');
  66. return $this->response($list);
  67. }
  68. /**
  69. * 获取签到是否开启
  70. */
  71. public function getSignStatus()
  72. {
  73. $config_model = new Signin();
  74. $config_result = $config_model->getConfig($this->site_id);
  75. return $this->response($config_result);
  76. }
  77. }