| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- <?php
- namespace App\Http\Controllers\Api;
- use Illuminate\Http\Request;
- use App\Http\Controllers\Controller;
- use App\Http\Models\ReliefData;
- use App\Http\Models\UserInfo;
- use Illuminate\Support\Facades\DB;
- use \Exception;
- /**
- * 救济金控制器
- */
- class ReliefController extends Controller
- {
- /**
- * 数据获取
- *
- * @access public
- * @param mixed $req 参数.
- * @return string
- */
- public function getRelief(Request $req){
- try {
- // 查询参数.
- $reliefDataModel = new ReliefData;
- $userInfoModel = new UserInfo;
- $uid = S('token_user_id');
- $getReliefBetween = [
- strtotime(date("Y-m-d")),
- time(),
- ];
- $getReliefWhere['members_id'] = $uid;
- // 查询用户领取次数.
- $res = $reliefDataModel->countRelief($getReliefWhere, $getReliefBetween);
- // 查询系统设置表救济金领取表.
- $getConfigSelect = [
- 'systemconfig_data',
- 'systemconfig_status',
- 'systemconfig_id',
- ];
- $getConfigWhere['systemconfig_name'] = 'relief';
- $getSystemconfig = $reliefDataModel->getSystemconfig($getConfigSelect, $getConfigWhere);
- // 查询用户余额.
- $getUserSelect = ['membersDetailed_cash'];
- $getUserWhere['members_id'] = $uid;
- $cash = $userInfoModel->userInfo($getUserSelect, $getUserWhere);
- // 查询用户游戏余额.
- $gameMoneySelect = ['gameMoney_money'];
- $gameMoneyWhere['members_id'] = $uid;
- $gameMoney = $userInfoModel->gameMoney($gameMoneySelect, $gameMoneyWhere);
- // 获取用户总余额.
- $allCash = $cash['membersDetailed_cash'];
- foreach ($gameMoney as $v) {
- $allCash += $v['gameMoney_money'];
- }
- // 验证是否可领取.
- $data = json_decode($getSystemconfig[0]['systemconfig_data'], true);
- $status = $getSystemconfig[0]['systemconfig_status'];
- if ($res >= $data['count']) {
- return toJson(-30002);
- } else if ($data['condition'] < $allCash) {
- return toJson(-30003);
- }
- if ($status == 1 && $res < $data['count'] && $data['condition'] >= $allCash) {
- DB::beginTransaction();
- $upUserInfoWhere['members_id'] = $uid;
- $upUserInfoData['membersDetailed_cash'] = ($data['mony'] + $cash['membersDetailed_cash']);
- // 修改用户信息.
- $upUserInfo = $userInfoModel->upUserInfo($upUserInfoWhere, $upUserInfoData);
- // 新增救济金记录.
- $orderId = getOrderId();
- $addReliefData = [
- 'getrelief_identity' => $orderId,
- 'members_id' => $uid,
- 'getrelief_addtime' => time(),
- 'getrelief_mony' => $data['mony'],
- 'getrelief_begin_money' => $cash['membersDetailed_cash'],
- 'getrelief_end_money' => ($data['mony'] + $cash['membersDetailed_cash']),
- ];
- $addRelief = $reliefDataModel->addRelief($addReliefData);
- if ($addRelief && $upUserInfo) {
- DB::commit();
- return toJson(1, '成功', ['money' => ($data['mony'] + $cash['membersDetailed_cash'])]);
- } else {
- return toJson(-2);
- DB::rollBack();
- }
- } else {
- return toJson(-30003);
- }//end if
- } catch (Exception $e) {
- echo $e->getMessage();
- }//end try
- }
- }
|