123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191 |
- <?php
- namespace Task\Src;
- use Dever;
- use Task\Lib\Base;
- class Score extends Base
- {
- /**
- * 我的积分
- *
- * @return mixed
- */
- public function user()
- {
- # 检测用户是否登录
- $this->checkUser();
- return $this->data['uesr_score'];
- }
- /**
- * 金币兑换
- *
- * @return mixed
- */
- public function exchange()
- {
- $user = $this->user();
- $user['score_name'] = $this->data['config']['score_name'];
- $user['score_name_ext'] = $this->data['config']['score_name_ext'];
- $user['exchange'] = $this->data['config']['exchange'];
- $user['exchange_min'] = $this->data['config']['exchange_min'];
- $user['cash'] = floor($user['score']/$user['exchange']);
- if ($user['exchange_min'] > 0) {
- $user['desc'] = '最低兑换数量'.$user['exchange_min'].$user['score_name'];
- } else {
- $user['desc'] = '';
- }
-
- $user['exchange'] = '可兑换'.$user['cash'].$user['score_name_ext'];
- return $user;
- }
- /**
- * 金币兑换
- *
- * @return mixed
- */
- public function submit_commit()
- {
- $user = $this->exchange();
- $type = Dever::input('type');
- $score = Dever::input('score');
- if (!$score) {
- Dever::alert('请输入' . $user['score_name'] . '数量');
- }
- if (!$type) {
- Dever::alert('请选择兑现途径');
- }
- if ($type != 1 && $type != 2) {
- Dever::alert('请选择兑现途径');
- }
- if ($user['exchange_min'] > 0 && $score < $user['exchange_min']) {
- Dever::alert($user['desc']);
- }
- if ($score > $user['score']) {
- Dever::alert('实际兑换数量不能超过剩余' . $user['score_name'] . '数量');
- }
- $insert['cash'] = floor($score/$user['exchange']);
- $insert['score'] = $score;
- $insert['uid'] = $user['uid'];
- $insert['type'] = $type;
- $insert['status'] = 1;
- Dever::db('task/user_cash')->insert($insert);
- $insert['type'] = 1;
- $insert['status'] = 1;
- $insert['cash'] = $type;
- Dever::db('task/user_score_log')->insert($insert);
- # 剩余数量
- $sur_score = $user['score'] - $score;
- $update['score'] = $sur_score;
- $update['where_id'] = $user['id'];
- Dever::db('task/user_score')->update($update);
- return 'yes';
- }
- /**
- * 我的积分日志列表
- *
- * @return mixed
- */
- public function logs()
- {
- # 检测用户是否登录
- $this->checkUser();
- $where['uid'] = $this->data['uid'];
- $name = $this->data['config']['score_name'];
- $ext = $this->data['config']['score_name_ext'];
- $data = Dever::db('task/user_score_log')->getAll($where);
- if ($data) {
- foreach ($data as $k => $v) {
- $data[$k]['name'] = '';
- $data[$k]['info'] = '';
- $data[$k]['desc'] = '';
- $data[$k]['yes_date'] = '';
- $data[$k]['date'] = '';
- if ($v['type'] <= 3) {
- $data[$k]['name'] = $name . '兑换';
- if ($v['type'] == 1) {
- # 兑现申请
- $data[$k]['info'] = '本次兑现'.$name.' '.$v['score'].'枚,申请兑现';
- $data[$k]['desc'] = '兑换200金币';
- $data[$k]['date'] = $this->date($v['cdate']);
- } elseif ($v['type'] == 2) {
- # 兑现完成
- $data[$k]['info'] = '本次兑现'.$name.' '.$v['score'].'枚,兑现完成';
- $data[$k]['desc'] = '成功兑现¥'.$v['cash'].'元';
- # 完成时间
- $data[$k]['yes_date'] = $this->date($v['cdate']);
- $data[$k]['date'] = $this->date($v['cash_date']);
- } elseif ($v['type'] == 3) {
- # 兑现完成
- $data[$k]['info'] = '本次兑现'.$name.' '.$v['score'].'枚,兑现失败';
- $data[$k]['desc'] = $v['type_desc'];
- # 完成时间
- $data[$k]['yes_date'] = $this->date($v['cdate']);
- $data[$k]['date'] = $this->date($v['cash_date']);
- }
- if ($v['cash_type'] == 1) {
- $data[$k]['cash_desc'] = '微信';
- } else {
- $data[$k]['cash_desc'] = '支付宝';
- }
- } else {
- $data[$k]['date'] = $this->date($v['cdate']);
- if ($v['type'] == 4) {
- $task = Dever::db('task/info')->one($v['task_id']);
- $user = Dever::db('passport/user')->one($v['uid']);
- # 任务奖励
- $data[$k]['name'] = $name . '入账';
- $data[$k]['info'] = $name.$ext.',已入账';
- $data[$k]['desc'] = $user['username'] . '完成任务'.$task['name'].'的奖励';
- } elseif ($v['type'] == 5) {
- $task = Dever::db('task/info')->one($v['task_id']);
- $user = Dever::db('passport/user')->one($v['group_uid']);
- # 任务提成
- $data[$k]['name'] = $name . '入账';
- $data[$k]['info'] = $name.$ext.',已入账';
- $data[$k]['desc'] = $user['username'] . '完成任务'.$task['name'].'的提成奖励';
- } elseif ($v['type'] == 6) {
- $task = Dever::db('task/info')->one($v['task_id']);
- $user = Dever::db('passport/user')->one($v['group_uid']);
- # 系统奖励
- $data[$k]['name'] = $name . '入账';
- $data[$k]['info'] = $name.$ext.',已入账';
- $data[$k]['desc'] = '系统奖励:'.$v['type_desc'];
- }
- }
- }
- }
- }
- private function date($value)
- {
- return date('Y-m-d H:i', $value);
- }
- }
|