|
|
@@ -83,19 +83,27 @@ class Newhome extends BaseController
|
|
83
|
83
|
return app('json')->fail('今日已签到');
|
|
84
|
84
|
}
|
|
85
|
85
|
}
|
|
|
86
|
+
|
|
|
87
|
+ //第一天签到获得2积分,第二天获得4积分,第三天获得6积分,第四天获得 10 积分,第五天获得 14积分第六天获得 20积分,
|
|
|
88
|
+ //连续签到从第七天开始,每日签到获得3积分,第七天连续签到额外奖励 38积分,第 14 天连续签到额外奖励 68 积分,第 21天连续签到额外奖励 128 积分第 30 天连续签到额外奖励 188 积分
|
|
|
89
|
+ $guizeList = ['1'=>2,'2'=>4,'3'=>6,'4'=>10,'5'=>14,'6'=>20];
|
|
|
90
|
+ $guizeLxList = [['sizi'=>7, 'value'=> 38], ['sizi'=>14, 'value'=> 68], ['sizi'=>21, 'value'=> 38], ['sizi'=>30, 'value'=> 188]];//连续签到额外奖励
|
|
|
91
|
+
|
|
86
|
92
|
if(!$signdata){
|
|
87
|
93
|
$pension=$this->one_sign($uid);
|
|
88
|
|
- }elseif($signdata['num']>=1&&$signdata['num']<8){
|
|
|
94
|
+ }elseif($signdata['num']>=1&&$signdata['num']<7){
|
|
|
95
|
+
|
|
89
|
96
|
$res=$this->lianxu_sign($signdata['day'],$uid);
|
|
90
|
97
|
if($res==0){
|
|
91
|
98
|
$this->one_sign($uid);
|
|
92
|
99
|
}else {
|
|
93
|
100
|
$pension = rand('1', '50');
|
|
94
|
101
|
$pension=$pension*0.01;
|
|
95
|
|
- Db::name('sign')->insert(['uid' => $uid, 'year' => $year, 'month' => $month, 'day' => $day,'num' => $signdata['num'] + 1, 'pension' => $pension, 'status' => 1]);
|
|
|
102
|
+ $score = $guizeList[$signdata['num']]??3;
|
|
|
103
|
+ $this->sign_add($uid, $score,1,'签到赠送积分','','');
|
|
|
104
|
+ Db::name('sign')->insert(['uid' => $uid, 'year' => $year, 'month' => $month, 'day' => $day,'num' => $signdata['num'] + 1, 'score' => $score, 'pension' => $pension, 'status' => 1]);
|
|
96
|
105
|
}
|
|
97
|
|
-
|
|
98
|
|
- }elseif($signdata['num']==8){
|
|
|
106
|
+ }elseif($signdata['num'] >= 7){
|
|
99
|
107
|
$res=$this->lianxu_sign($signdata['day'],$uid);
|
|
100
|
108
|
if($res==0){
|
|
101
|
109
|
Db::name('sign')->where('uid',$uid)->update(['status'=>3]);
|
|
|
@@ -103,9 +111,19 @@ class Newhome extends BaseController
|
|
103
|
111
|
}else {
|
|
104
|
112
|
$pension = rand('10', '100');
|
|
105
|
113
|
$pension=$pension*0.01;
|
|
106
|
|
- Db::name('sign')->insert(['uid' => $uid, 'year' => $year, 'month' => $month, 'day' => $day, 'num' => $signdata['num'] + 1, 'pension' => $pension, 'status' => 1]);
|
|
|
114
|
+ $score = $guizeList[$signdata['num']]??3;
|
|
|
115
|
+ $this->sign_add($uid, $score,1,'签到赠送积分','','');
|
|
|
116
|
+ $scoreGw = 0;
|
|
|
117
|
+ foreach ($guizeLxList as $val) {
|
|
|
118
|
+ if ($signdata['num'] >= $val['sizi']) {
|
|
|
119
|
+ $scoreGw = $val['value'];
|
|
|
120
|
+ }
|
|
|
121
|
+ }
|
|
|
122
|
+ if($scoreGw > 0){
|
|
|
123
|
+ $this->sign_add($uid, $score,1,'连续签到赠送额外奖励积分','','');
|
|
|
124
|
+ }
|
|
|
125
|
+ Db::name('sign')->insert(['uid' => $uid, 'year' => $year, 'month' => $month, 'day' => $day, 'num' => $signdata['num'] + 1, 'score' => $score, 'pension' => $pension, 'status' => 1]);
|
|
107
|
126
|
}
|
|
108
|
|
-
|
|
109
|
127
|
}else{
|
|
110
|
128
|
$pension='0.00';
|
|
111
|
129
|
}
|
|
|
@@ -121,8 +139,60 @@ class Newhome extends BaseController
|
|
121
|
139
|
$pension=['0.5','0.6','1'];
|
|
122
|
140
|
$pensions=array_rand($pension);
|
|
123
|
141
|
Db::name('sign')->insert(['uid'=>$uid,'year'=>$year,'month'=>$month,'day'=>$day,'num'=>1,'pension'=>$pension[$pensions],'status'=>1]);
|
|
|
142
|
+
|
|
|
143
|
+ //首次签到送30积分,同时赠送邀请人30积分
|
|
|
144
|
+ $this->sign_add($uid, 30,1,'首次签到送30积分','','');
|
|
|
145
|
+ $member_info = Db::name('user')->where( array('uid' => $uid) )->find();
|
|
|
146
|
+ if($member_info['spread_uid']){
|
|
|
147
|
+ $spreadUid = $member_info['spread_uid'];
|
|
|
148
|
+ $this->sign_add($spreadUid, 30,1,'邀请人首次签到送30积分','','');
|
|
|
149
|
+ }
|
|
|
150
|
+
|
|
124
|
151
|
return $pension[$pensions];
|
|
125
|
152
|
}
|
|
|
153
|
+
|
|
|
154
|
+ /**
|
|
|
155
|
+ * @param int $uid 用户ID
|
|
|
156
|
+ * @param string $score 积分
|
|
|
157
|
+ * @param int $status 积分状态
|
|
|
158
|
+ * @param string $mark 备注
|
|
|
159
|
+ * @param string $has_qian 连续签到天数
|
|
|
160
|
+ * @param string $today_signintime 签到时间
|
|
|
161
|
+ * @param int $order_id 订单ID
|
|
|
162
|
+ * @param int $pm 1-收入。2-支出
|
|
|
163
|
+ * @param string $order_type
|
|
|
164
|
+ * @throws DbException
|
|
|
165
|
+ */
|
|
|
166
|
+ public function sign_add($uid, $score, $status, $mark, $has_qian = '', $today_signintime = '', $order_id = 0, $pm = 1, $order_type = '',$type='',$settlement_time = '')
|
|
|
167
|
+ {
|
|
|
168
|
+ if(!in_array($type,[1,2])){
|
|
|
169
|
+ // 其他情况都直接返回,因为目前只有365专区购买才可以获得
|
|
|
170
|
+ return false;
|
|
|
171
|
+ }
|
|
|
172
|
+
|
|
|
173
|
+ $ins_data['uid'] = $uid;
|
|
|
174
|
+ $ins_data['continuity_day'] = $has_qian;
|
|
|
175
|
+ $ins_data['reward_socre'] = $score;
|
|
|
176
|
+ $ins_data['signin_time'] = $today_signintime;
|
|
|
177
|
+ $ins_data['addtime'] = time();
|
|
|
178
|
+ $ins_data['status'] = $status;
|
|
|
179
|
+ $ins_data['mark'] = $mark;
|
|
|
180
|
+ $ins_data['type'] = $type;
|
|
|
181
|
+ $ins_data['settlement_time'] = $settlement_time;// 结算时间 真正到了结算时间会结算
|
|
|
182
|
+ $ins_data['order_id'] = $order_id;
|
|
|
183
|
+ $ins_data['pm'] = $pm;
|
|
|
184
|
+ $ins_data['order_type'] = $order_type;
|
|
|
185
|
+ Db::name('user_sign_score')->insertGetId($ins_data);
|
|
|
186
|
+
|
|
|
187
|
+ if($pm == 1 && $status == 1){
|
|
|
188
|
+ Db::name('user')->where('uid',$uid)->inc('score', $score)->update();
|
|
|
189
|
+ }
|
|
|
190
|
+ if($pm == 2){
|
|
|
191
|
+ Db::name('user')->where('uid', $uid)->dec('score', $score)->update();
|
|
|
192
|
+ }
|
|
|
193
|
+ }
|
|
|
194
|
+
|
|
|
195
|
+
|
|
126
|
196
|
//签到是否正常
|
|
127
|
197
|
public function lianxu_sign($day,$uid)
|
|
128
|
198
|
{
|