| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- namespace app\controller\api\user;
- use crmeb\basic\BaseController;
- use app\common\repositories\user\UserRepository;
- use think\App;
- use think\facade\Db;
- class Gold extends BaseController
- {
- public $repository;
- public function __construct(App $app, UserRepository $repository)
- {
- parent::__construct($app);
- $this->repository = $repository;
- }
- public function score_to_gold(){
- $uid = $this->request->uid();
- $score = $this->request->param('score');
- $nowScore = Db::name('user') -> where('uid',$uid) -> value("score");
- if($nowScore < $score){
- return app('json')->fail('积分不足');
- }
- if ($score % 30 != 0){
- return app('json')->fail('积分必需为30的倍数');
- }
- Db::startTrans();
- try {
- $gold = $score / 30;
- //积分减少
- $userRepository = app()->make(UserRepository::class);
- $userRepository -> sign_add($uid,$score,1,'积分转入储蓄罐','','','',2);
- //金币增加
- $userRepository -> gold_add($uid,$gold,'积分转入');
- // 提交事务
- Db::commit();
- return app('json')->success('转入成功');
- } catch (\Exception $e) {
- // 回滚事务
- Db::rollback();
- return app('json')->fail('转入失败');
- }
- }
- }
|