checkUser();
if ($state) {
$this->data['user_score']['exchange'] = Dever::url("user/exchange", "main");
} else {
$this->data['user_score']['exchange'] = 'javascript:certify.Show(\''.Dever::url("user/info_certify", "main").'\')';
}
return $this->data['user_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'] = round($user['score']/$user['exchange'], 2);
if ($user['exchange_min'] > 0) {
$user['desc'] = '最低兑换数量'.$user['exchange_min'].$user['score_name'];
} else {
$user['desc'] = '';
}
//$user['cash']
$user['exchange'] = '兑换数量(可兑换'.$user['score'].$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'] . '数量');
}
$exchange = $this->data['config']['exchange'];
$insert['cash'] = round($score/$exchange, 2);
$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'] = $type;
Dever::db('task/user_score_log')->insert($insert);
# 剩余数量
$sur_score = round($user['score'] - $score, 2);
$update['score'] = $sur_score;
$update['where_id'] = $user['id'];
Dever::db('task/user_score')->update($update);
return '提交成功,请等待管理员审核';
}
/**
* 我的积分日志列表
*
* @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]['cdate'] = $this->date($v['cdate']);
# 时间
$data[$k]['date'] = $data[$k]['cdate'];
# 描述
$data[$k]['desc'] = '';
# 金币数量
$data[$k]['score'] = '';
# 状态
$data[$k]['status'] = '';
# 弹窗中的介绍
$data[$k]['info'] = '';
# 兑现途径
$data[$k]['cash_desc'] = '';
# 图标
$data[$k]['icon'] = '';
$data[$k]['class'] = '';
if ($v['type'] <= 3) {
$data[$k]['info'] = '本次兑现:'.$v['score'].$name;
$data[$k]['score'] = '兑换' . $v['score'] . $name;
if ($v['type'] == 1) {
# 兑现申请
$data[$k]['desc'] = '申请兑现时间:'.$data[$k]['cdate'];
$data[$k]['status'] = '申请兑现';
} elseif ($v['type'] == 2) {
# 兑现完成
$data[$k]['date'] = $this->date($v['cash_date']);
$data[$k]['desc'] = '申请兑现时间:'.$data[$k]['date'] . '
兑现完成时间:' . $data[$k]['cdate'];
$data[$k]['status'] = '兑现完成';
$data[$k]['icon'] = 'suc';
} elseif ($v['type'] == 3) {
# 兑现失败
$data[$k]['date'] = $this->date($v['cash_date']);
$data[$k]['desc'] = '申请兑现时间:'.$data[$k]['date'] . '
' . $v['type_desc'];
$data[$k]['status'] = '兑现失败';
$data[$k]['icon'] = 'err';
$data[$k]['class'] = 'fail';
}
if ($v['cash_type'] == 1) {
$data[$k]['cash_type'] = '微信';
} else {
$data[$k]['cash_type'] = '支付宝';
}
$data[$k]['cash_desc'] = '兑现途径:' . $data[$k]['cash_type'];
} elseif ($v['type'] <= 5) {
$task = Dever::db('task/info')->one($v['task_id']);
$data[$k]['desc'] = '入账时间:' . $this->date($v['cdate']) . '
';
$data[$k]['info'] = '本次入账:'.$v['score'].$name;
$data[$k]['status'] = '已入账';
$data[$k]['icon'] = 'wan';
if ($v['type'] == 4) {
$data[$k]['score'] = '任务#'.$task['name'].'奖励'.$v['score'].$name;
$user = Dever::db('passport/user')->one($v['uid']);
# 任务奖励
$data[$k]['desc'] .= '来源:'.$user['username'] . '完成任务#'.$task['name'].'的奖励';
} elseif ($v['type'] == 5) {
$data[$k]['score'] = '任务#'.$task['name'].'提成奖励'.$v['score'].$name;
$user = Dever::db('passport/user')->one($v['group_uid']);
# 任务提成
$data[$k]['desc'] .= '来源:'.$user['username'] . '完成任务#'.$task['name'].'的提成奖励';
}
} elseif ($v['type'] == 6) {
$data[$k]['score'] = '系统奖励:'.$v['type_desc'];
$data[$k]['desc'] = '入账时间:' . $this->date($v['cdate']) . '
' . $data[$k]['score'];
$data[$k]['info'] = '本次入账:'.$v['score'].$name;
$data[$k]['status'] = '已入账';
$data[$k]['icon'] = 'wan';
}
}
}
return $data;
}
private function date($value)
{
return date('Y-m-d H:i', $value);
}
}