Signin.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * =========================================================
  9. */
  10. namespace addon\membersignin\model;
  11. use app\model\system\Config as ConfigModel;
  12. use app\model\BaseModel;
  13. /**
  14. * 会员签到
  15. */
  16. class Signin extends BaseModel
  17. {
  18. /**
  19. * 会员签到奖励设置
  20. * @param $data
  21. * @param $is_use
  22. * @return array
  23. */
  24. public function setConfig($data, $is_use, $site_id)
  25. {
  26. if (!empty($data)) {
  27. $day = 0;
  28. foreach ($data[ 'reward' ] as $k => $v) {
  29. if ($v[ 'day' ] == 0) {
  30. return $this->error('', '连续签到天数不能设置为0');
  31. }
  32. if ($k != 0) {
  33. if ($v[ 'day' ] <= $day) {
  34. return $this->error('', '连续签到天数不能相同或者小于上一个签到天数');
  35. }
  36. }
  37. $day = $v[ 'day' ];
  38. }
  39. }
  40. $config = new ConfigModel();
  41. $res = $config->setConfig($data, '会员签到奖励设置', $is_use, [ [ 'site_id', '=', $site_id ], [ 'app_module', '=', 'shop' ], [ 'config_key', '=', 'MEMBER_SIGNIN_REWARD_CONFIG' ] ]);
  42. return $res;
  43. }
  44. /**
  45. * 会员签到奖励设置
  46. */
  47. public function getConfig($site_id)
  48. {
  49. $config = new ConfigModel();
  50. $res = $config->getConfig([ [ 'site_id', '=', $site_id ], [ 'app_module', '=', 'shop' ], [ 'config_key', '=', 'MEMBER_SIGNIN_REWARD_CONFIG' ] ]);
  51. if (empty($res[ 'data' ][ 'value' ])) {
  52. $res[ 'data' ][ 'value' ] = [
  53. 'cycle' => 30,
  54. 'reward' => [
  55. [
  56. "point" => 0,
  57. "growth" => 0,
  58. 'coupon' => 0,
  59. "day" => 1
  60. ]
  61. ]
  62. ];
  63. }
  64. return $res;
  65. }
  66. }