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('转入失败'); } } }