This commit is contained in:
luofei 2024-03-22 11:02:43 +08:00
commit 46141c5d41
3 changed files with 80 additions and 0 deletions

View File

@ -15,12 +15,14 @@ namespace app\common\repositories\system\merchant;
use app\common\dao\system\merchant\FinancialRecordDao;
use app\common\model\user\UserBill;
use app\common\repositories\BaseRepository;
use app\common\repositories\store\order\StoreOrderRepository;
use app\common\repositories\user\UserBillRepository;
use app\common\repositories\user\UserRechargeRepository;
use think\facade\Cache;
use think\facade\Db;
use think\facade\Log;
/**
* Class FinancialRecordRepository
@ -737,4 +739,50 @@ class FinancialRecordRepository extends BaseRepository
return self::TYPE_NAME_MAP[$type] ?? '';
}
//查询资金列表
public function dealFund($search,$page,$limit)
{
$time = date('Y-m-d 00:00:00', time());
$query = UserBill::getDB()->alias('b')
->leftjoin('merchant m','b.uid = m.uid')
->leftjoin('user u','u.uid = b.uid')
->field('b.*,m.mer_name,m.real_name,u.nickname')
->where('b.create_time', '<=', $time)
->where('b.category', 'mer_computed_money')
->where('b.type', 'order')
->where('b.status', 0);
if(isset($search['mer_id']) && $search['mer_id']){
$query->where('b.mer_id', $search['mer_id']);
}
if(isset($search['nickname']) && $search['nickname']){
$query->whereLike('u.nickname', "%{$search['nickname']}%");
}
$count = $query->count();
$data = $query->page($page, $limit)->select()->toArray();
return compact('count','data');
}
//解冻到商户余额
public function dealUnfreeze($id)
{
$userBill = UserBill::getDB()->where('bill_id',$id)->find();
$merchant = app()->make(MerchantRepository::class);
Db::startTrans();
try {
$merchant->addMoney($userBill->mer_id, $userBill->number);
$userBill->status = 1;
$userBill->save();
Db::commit();
return true;
} catch (\Throwable $e) {
Db::rollback();
Log::error('商户冻结金额解冻出错:' . $e->getMessage());
return false;
}
}
}

View File

@ -14,6 +14,7 @@
namespace app\controller\admin\system\merchant;
use app\common\model\user\UserBill;
use app\common\repositories\store\ExcelRepository;
use app\common\repositories\system\merchant\FinancialRecordRepository;
use app\common\repositories\system\merchant\MerchantRepository;
@ -235,4 +236,27 @@ class FinancialRecord extends BaseController
}
//资金管理
public function management()
{
[$page, $limit] = $this->getPage();
$search= $this->request->params(['nickname','mer_id']);
$data = $this->repository->dealFund($search, $page,$limit);
return app('json')->success($data);
}
//解冻
public function unfreeze($id)
{
$res = $this->repository->dealUnfreeze($id);
if ($res) {
return app('json')->success('操作成功');
}else{
return app('json')->fail('操作失败');
}
}
}

View File

@ -183,6 +183,14 @@ Route::group(function () {
//资金流水
Route::group('financial_record', function () {
Route::get('management', '/management')->name('systemFinancialRecordManagement')->option([
'_alias' => '资金管理',
]);
Route::get('unfreeze/:id', '/unfreeze')->name('systemFinancialRecordFreeze')->option([
'_alias' => '提前解冻资金',
]);
Route::get('list', '/lst')->name('systemFinancialRecordList')->option([
'_alias' => '列表',
]);