|
|
@@ -9,7 +9,7 @@ use App\Models\Message;
|
|
|
use App\Models\PcIssue;
|
|
|
use App\Models\Rebate;
|
|
|
use App\Models\User;
|
|
|
-use App\Models\Bet;
|
|
|
+use App\Models\LhcOrder;
|
|
|
use App\Models\Config;
|
|
|
use Illuminate\Support\Facades\App;
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
@@ -115,7 +115,7 @@ class BetService extends BaseService
|
|
|
*/
|
|
|
public static function model(): string
|
|
|
{
|
|
|
- return Bet::class;
|
|
|
+ return LhcOrder::class;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -132,16 +132,16 @@ class BetService extends BaseService
|
|
|
{
|
|
|
$where = [];
|
|
|
if (isset($search['issue_no']) && !empty($search['issue_no'])) {
|
|
|
- $where[] = ['issue_no', '=', $search['issue_no']];
|
|
|
+ $where[] = ['issue', '=', $search['issue_no']];
|
|
|
}
|
|
|
if (isset($search['member_id']) && !empty($search['member_id'])) {
|
|
|
$where[] = ['member_id', '=', $search['member_id']];
|
|
|
}
|
|
|
if (isset($search['keywords']) && !empty($search['keywords'])) {
|
|
|
- $where[] = ['keywords', '=', $search['keywords']];
|
|
|
+ $where[] = ['number', '=', $search['keywords']];
|
|
|
}
|
|
|
if (isset($search['issue_id']) && !empty($search['issue_id'])) {
|
|
|
- $where[] = ['issue_id', '=', $search['issue_id']];
|
|
|
+ $where[] = ['lhc_number_id', '=', $search['issue_id']];
|
|
|
}
|
|
|
if (isset($search['id']) && !empty($search['id'])) {
|
|
|
$where[] = ['id', '=', $search['id']];
|
|
|
@@ -157,19 +157,19 @@ class BetService extends BaseService
|
|
|
}
|
|
|
|
|
|
if (isset($search['is_winner']) && $search['is_winner'] != '') {
|
|
|
- $where[] = ['status', '=', 2];
|
|
|
+ $where[] = ['lottery_status', '=', 2];
|
|
|
if ($search['is_winner'] == 1) {
|
|
|
- $where[] = ['profit', '>', 0];
|
|
|
+ $where[] = ['profit_and_loss', '>', 0];
|
|
|
} else {
|
|
|
- $where[] = ['profit', '<=', 0];
|
|
|
+ $where[] = ['profit_and_loss', '<=', 0];
|
|
|
}
|
|
|
} else {
|
|
|
if (isset($search['status']) && $search['status'] != '') {
|
|
|
- $where[] = ['status', '=', $search['status']];
|
|
|
+ $where[] = ['lottery_status', '=', $search['status']];
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+ $where[] = ['type', 'in', [5,6]];
|
|
|
return $where;
|
|
|
}
|
|
|
|
|
|
@@ -178,7 +178,7 @@ class BetService extends BaseService
|
|
|
* @param array $search
|
|
|
* @return \App\Models\Coin|null
|
|
|
*/
|
|
|
- public static function findOne(array $search): ?Bet
|
|
|
+ public static function findOne(array $search): ?LhcOrder
|
|
|
{
|
|
|
return self::model()::where(self::getWhere($search))->first();
|
|
|
}
|
|
|
@@ -407,7 +407,8 @@ class BetService extends BaseService
|
|
|
|
|
|
$userInfo = UserService::findOne(['member_id' => $memberId]);
|
|
|
|
|
|
- $betInfo = self::findOne(['member_id' => $memberId, 'issue_no' => $issueInfo->issue_no, 'keywords' => $keywords]); // 相同下注
|
|
|
+ $type = $pc28Switch == 1 ? 6 : 5;
|
|
|
+ $betInfo = LhcOrder::where(['type' => $type, 'member_id' => $memberId, 'issue' => $issueInfo->issue_no, 'number' => $keywords])->first(); // 相同下注
|
|
|
|
|
|
if ($betInfo) {
|
|
|
$betInfo->amount = $betInfo->amount + $amount;
|
|
|
@@ -416,13 +417,15 @@ class BetService extends BaseService
|
|
|
} else {
|
|
|
$data = [];
|
|
|
$data['amount'] = $amount; // 分数
|
|
|
- $data['keywords'] = $keywords; // 玩法
|
|
|
+ $data['number'] = $keywords; // 玩法
|
|
|
$data['member_id'] = $memberId;
|
|
|
$data['user_id'] = $userInfo->id;
|
|
|
- $data['issue_no'] = $issueInfo->issue_no;
|
|
|
- $data['issue_id'] = $issueInfo->id;
|
|
|
+ $data['issue'] = $issueInfo->issue_no;
|
|
|
+ $data['lhc_number_id'] = $issueInfo->id;
|
|
|
$data['odds'] = $gameplayRuleInfo['odds'];
|
|
|
- $newBet = self::model()::create($data);
|
|
|
+ $data['type'] = $type;
|
|
|
+ $newBet = LhcOrder::create($data);
|
|
|
+
|
|
|
$bet_id = $newBet->id;
|
|
|
}
|
|
|
|
|
|
@@ -622,12 +625,12 @@ class BetService extends BaseService
|
|
|
$text = lang("期数") . " {$issue_no} \n";
|
|
|
// $text .= "\n";
|
|
|
// $text .= "----------\n";
|
|
|
- $list = self::findAll(['member_id' => $memberId, 'issue_no' => $issue_no]);
|
|
|
+ $list = self::findAll(['member_id' => $memberId, 'issue' => $issue_no]);
|
|
|
$list = $list->toArray();
|
|
|
if (empty($list)) {
|
|
|
$text .= lang("本期暂未下注") . "! \n";
|
|
|
} else {
|
|
|
- $keywords = implode(',', array_column($list, 'keywords'));
|
|
|
+ $keywords = implode(',', array_column($list, 'number'));
|
|
|
$amounts = implode(',', array_column($list, 'amount'));
|
|
|
|
|
|
|
|
|
@@ -657,15 +660,15 @@ class BetService extends BaseService
|
|
|
*/
|
|
|
public static function recentlyRecord($memberId, $page = 1, $limit = 5)
|
|
|
{
|
|
|
- $list = self::model()::where('member_id', $memberId)->whereIn('status', [self::model()::STATUS_STAY, self::model()::STATUS_SETTLED])->orderBy('id', 'desc')->forPage($page, $limit)->get();
|
|
|
+ $list = self::model()::where('type', 'in', [5,6])->where('member_id', $memberId)->whereIn('lottery_status', [self::model()::STATUS_STAY, self::model()::STATUS_SETTLED])->orderBy('id', 'desc')->forPage($page, $limit)->get();
|
|
|
|
|
|
// $text = "```\n";
|
|
|
$text = "";
|
|
|
$text .= "期数--内容--盈亏 \n";
|
|
|
foreach ($list->toArray() as $k => $v) {
|
|
|
- $profit = $v['profit'] - $v['amount'];
|
|
|
+ $profit = $v['win_amount'] - $v['amount'];
|
|
|
// $text .= $v['issue_no']." ".$v['keywords']." ".$v['amount']." ".$v['profit']."\n";
|
|
|
- $item = $v['issue_no'] . "==" . $v['keywords'] . rtrim(rtrim(number_format($v['amount'], 2, '.', ''), '0'), '.') . "==" . rtrim(rtrim(number_format($profit, 2, '.', ''), '0'), '.') . "\n";
|
|
|
+ $item = $v['issue'] . "==" . $v['number'] . rtrim(rtrim(number_format($v['amount'], 2, '.', ''), '0'), '.') . "==" . rtrim(rtrim(number_format($profit, 2, '.', ''), '0'), '.') . "\n";
|
|
|
$text .= $item;
|
|
|
}
|
|
|
// $text .= "```\n";
|
|
|
@@ -689,8 +692,8 @@ class BetService extends BaseService
|
|
|
}
|
|
|
|
|
|
$msg['chat_id'] = $memberId;
|
|
|
- $list = self::model()::where('member_id', $memberId)->whereIn('status', [self::model()::STATUS_STAY, self::model()::STATUS_SETTLED])->where(self::getWhere(['is_winner' => $type]))->orderBy('id', 'desc')->forPage($page, $limit)->get();
|
|
|
- $count = self::model()::where('member_id', $memberId)->whereIn('status', [self::model()::STATUS_STAY, self::model()::STATUS_SETTLED])->where(self::getWhere(['is_winner' => $type]))->count();
|
|
|
+ $list = self::model()::where('type', 'in', [5,6])->where('member_id', $memberId)->whereIn('lottery_status', [self::model()::STATUS_STAY, self::model()::STATUS_SETTLED])->orderBy('id', 'desc')->forPage($page, $limit)->get();
|
|
|
+ $count = self::model()::where('type', 'in', [5,6])->where('member_id', $memberId)->whereIn('lottery_status', [self::model()::STATUS_STAY, self::model()::STATUS_SETTLED])->count();
|
|
|
|
|
|
$keyboard = [];
|
|
|
|
|
|
@@ -700,16 +703,16 @@ class BetService extends BaseService
|
|
|
$text = lang("历史注单") . " \n";
|
|
|
$text .= lang("中奖总派彩") . ":{$total_amount} \n";
|
|
|
foreach ($list as $k => $v) {
|
|
|
- if ($v->status == self::model()::STATUS_SETTLED) {
|
|
|
- $phase = $v->profit - $v->amount;
|
|
|
+ if ($v->lottery_status == self::model()::STATUS_SETTLED) {
|
|
|
+ $phase = $v->win_amount - $v->amount;
|
|
|
|
|
|
} else {
|
|
|
$phase = lang('待开奖');
|
|
|
}
|
|
|
|
|
|
$text .= "-------------------------------------\n";
|
|
|
- $text .= lang("期数") . ":{$v->issue_no} \n";
|
|
|
- $text .= lang("内容") . ":{$v->keywords} \n";
|
|
|
+ $text .= lang("期数") . ":{$v->issue} \n";
|
|
|
+ $text .= lang("内容") . ":{$v->number} \n";
|
|
|
$text .= lang("金额") . ":{$v->amount} \n";
|
|
|
$text .= lang("盈亏") . ":{$phase} \n";
|
|
|
}
|
|
|
@@ -754,7 +757,7 @@ class BetService extends BaseService
|
|
|
*/
|
|
|
public static function betFail($issue_no)
|
|
|
{
|
|
|
- $list = self::findAll(['issue_no' => $issue_no, 'status' => self::model()::STATUS_STAY]);
|
|
|
+ $list = self::findAll(['issue' => $issue_no, 'lottery_status' => self::model()::STATUS_STAY]);
|
|
|
foreach ($list->toArray() as $k => $v) {
|
|
|
$profit = $v['amount'];
|
|
|
WalletService::updateBalance($v['member_id'], $profit);
|
|
|
@@ -765,13 +768,13 @@ class BetService extends BaseService
|
|
|
BalanceLogService::addLog($v['member_id'], $profit, ($balance - $profit), $balance, '投注退分', $v['id'], '');
|
|
|
|
|
|
$text = $issue_no . "期开奖失败 \n";
|
|
|
- $text .= "投注类型:{$v['keywords']} \n";
|
|
|
+ $text .= "投注类型:{$v['number']} \n";
|
|
|
$text .= "投注金额:{$v['amount']} \n";
|
|
|
$text .= "投注的资金已退回您的钱包 \n";
|
|
|
|
|
|
self::asyncSendMessage($v['member_id'], $text);
|
|
|
$item = [];
|
|
|
- $iem['status'] = self::model()::STATUS_SETTLED;
|
|
|
+ $iem['lottery_status'] = self::model()::STATUS_SETTLED;
|
|
|
self::model()::where('id', $v['id'])->update($item);
|
|
|
}
|
|
|
|
|
|
@@ -785,9 +788,9 @@ class BetService extends BaseService
|
|
|
*/
|
|
|
public static function betSettled($issue_no, $awards)
|
|
|
{
|
|
|
- $list = self::findAll(['issue_no' => $issue_no, 'status' => self::model()::STATUS_STAY]);
|
|
|
+ $list = self::findAll(['issue' => $issue_no, 'lottery_status' => self::model()::STATUS_STAY]);
|
|
|
// 大小单双的
|
|
|
- $otherSum = self::model()::where('issue_no', $issue_no)->where('status', self::model()::STATUS_STAY)->whereIn('keywords', ['大', '小', '单', '双'])->sum('amount');
|
|
|
+ $otherSum = self::model()::where('type', 'in', [5,6])->where('issue', $issue_no)->where('lottery_status', self::model()::STATUS_STAY)->whereIn('number', ['大', '小', '单', '双'])->sum('amount');
|
|
|
|
|
|
$fakeOpenData = self::fakeLotteryDraw($issue_no, $awards, 0);
|
|
|
$keywordsList = $fakeOpenData['keywordsList'];
|
|
|
@@ -804,27 +807,27 @@ class BetService extends BaseService
|
|
|
$memberList = [];
|
|
|
$bet_num = 0;
|
|
|
foreach ($list->toArray() as $k => $v) {
|
|
|
- if (isset($keywordsList[$v['keywords']])) {
|
|
|
- $keywordsList[$v['keywords']] += $v['amount'];
|
|
|
+ if (isset($keywordsList[$v['number']])) {
|
|
|
+ $keywordsList[$v['number']] += $v['amount'];
|
|
|
} else {
|
|
|
- $keywordsList[$v['keywords']] = $v['amount'];
|
|
|
+ $keywordsList[$v['number']] = $v['amount'];
|
|
|
}
|
|
|
// $userInfo = UserService::findAll(['member_id' => $v['member_id']]);
|
|
|
// $lastStr = self::getLastChar($userInfo->first_name, 1);
|
|
|
$lastStr = self::hideMiddleDigits($v['member_id'], 4);
|
|
|
$item = [];
|
|
|
$item['id'] = $v['id'];
|
|
|
- $item['status'] = self::model()::STATUS_SETTLED;
|
|
|
+ $item['lottery_status'] = self::model()::STATUS_SETTLED;
|
|
|
|
|
|
|
|
|
- if (in_array($v['keywords'], $awards)) {
|
|
|
+ if (in_array($v['number'], $awards)) {
|
|
|
$amount = $v['amount'];
|
|
|
$odds = $v['odds'];
|
|
|
|
|
|
// 玩 大单 小单 大双 小双 :如果开出13和14 总注小于10000 1.5赔率含本,大于等于10000退本金。
|
|
|
if (in_array('13操', $awards) || in_array('14操', $awards)) {
|
|
|
// 13 14特殊处理倍率
|
|
|
- if (in_array($v['keywords'], self::$OTHER_BET_2)) {
|
|
|
+ if (in_array($v['number'], self::$OTHER_BET_2)) {
|
|
|
if ($sum < 10000) {
|
|
|
$odds = 1.5;
|
|
|
} else {
|
|
|
@@ -858,7 +861,7 @@ class BetService extends BaseService
|
|
|
|
|
|
$memberList[$v['member_id']][] = [
|
|
|
'member_id' => $v['member_id'],
|
|
|
- 'keywords' => $v['keywords'],
|
|
|
+ 'keywords' => $v['number'],
|
|
|
'amount' => $v['amount'],
|
|
|
'profit' => $profit,
|
|
|
'yl' => $yl,
|
|
|
@@ -874,8 +877,8 @@ class BetService extends BaseService
|
|
|
$openList[$v['member_id']]['amount'] += $v['amount'];
|
|
|
$openList[$v['member_id']]['profit'] += $profit;
|
|
|
$openList[$v['member_id']]['lastStr'] = $lastStr;
|
|
|
- $openList[$v['member_id']]['openKeywords'][] = $v['keywords'] . "({$odds}" . lang("倍率") . ")";
|
|
|
- $openList[$v['member_id']]['keywords'][] = $v['keywords'];
|
|
|
+ $openList[$v['member_id']]['openKeywords'][] = $v['number'] . "({$odds}" . lang("倍率") . ")";
|
|
|
+ $openList[$v['member_id']]['keywords'][] = $v['number'];
|
|
|
$openList[$v['member_id']]['win_amount'] += $v['amount'];
|
|
|
|
|
|
} else {
|
|
|
@@ -885,8 +888,8 @@ class BetService extends BaseService
|
|
|
$openList[$v['member_id']]['lastStr'] = $lastStr;
|
|
|
$openList[$v['member_id']]['openKeywords'] = [];
|
|
|
$openList[$v['member_id']]['keywords'] = [];
|
|
|
- $openList[$v['member_id']]['openKeywords'][] = $v['keywords'] . "({$odds}" . lang("倍率") . ")";
|
|
|
- $openList[$v['member_id']]['keywords'][] = $v['keywords'];
|
|
|
+ $openList[$v['member_id']]['openKeywords'][] = $v['number'] . "({$odds}" . lang("倍率") . ")";
|
|
|
+ $openList[$v['member_id']]['keywords'][] = $v['number'];
|
|
|
$openList[$v['member_id']]['win_amount'] = $v['amount'];
|
|
|
$openList[$v['member_id']]['is_send'] = true;
|
|
|
|
|
|
@@ -910,7 +913,7 @@ class BetService extends BaseService
|
|
|
$amount = $v['amount'];
|
|
|
$odds = 0;
|
|
|
// 13 14特殊处理倍率
|
|
|
- if (in_array($v['keywords'], self::$OTHER_BET_2)) {
|
|
|
+ if (in_array($v['number'], self::$OTHER_BET_2)) {
|
|
|
if ($sum < 10000) {
|
|
|
$odds = 1.5;
|
|
|
} else {
|
|
|
@@ -943,7 +946,7 @@ class BetService extends BaseService
|
|
|
$openList[$v['member_id']]['amount'] += $v['amount'];
|
|
|
$openList[$v['member_id']]['profit'] += $profit;
|
|
|
$openList[$v['member_id']]['lastStr'] = $lastStr;
|
|
|
- $openList[$v['member_id']]['keywords'][] = $v['keywords'];
|
|
|
+ $openList[$v['member_id']]['keywords'][] = $v['number'];
|
|
|
} else {
|
|
|
$openList[$v['member_id']]['member_id'] = $v['member_id'];
|
|
|
$openList[$v['member_id']]['amount'] = $v['amount'];
|
|
|
@@ -951,7 +954,7 @@ class BetService extends BaseService
|
|
|
$openList[$v['member_id']]['lastStr'] = $lastStr;
|
|
|
$openList[$v['member_id']]['openKeywords'] = [];
|
|
|
$openList[$v['member_id']]['keywords'] = [];
|
|
|
- $openList[$v['member_id']]['keywords'][] = $v['keywords'];
|
|
|
+ $openList[$v['member_id']]['keywords'][] = $v['number'];
|
|
|
$openList[$v['member_id']]['win_amount'] = 0;
|
|
|
$openList[$v['member_id']]['is_send'] = true;
|
|
|
}
|
|
|
@@ -1182,7 +1185,7 @@ class BetService extends BaseService
|
|
|
}
|
|
|
|
|
|
// 真实投注
|
|
|
- $list = self::findAll(['issue_no' => $issue_no, 'status' => self::model()::STATUS_STAY]);
|
|
|
+ $list = self::findAll(['issue_no' => $issue_no, 'lottery_status' => self::model()::STATUS_STAY]);
|
|
|
foreach ($list->toArray() as $k => $v) {
|
|
|
if (isset($keywordsList[$v['keywords']])) {
|
|
|
$keywordsList[$v['keywords']] += $v['amount'];
|