bourse stock
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

299 lines
9.5 KiB

<?php
namespace app\home\controller;
use app\home\service\WalletService;
use app\model\PreUsStockModel;
use think\response\Json;
use think\Request;
/***
* 处理用户中心业务
*/
class Wallet extends HomeBaseController
{
/**
* 获取用户全部资产
* @return Json
*/
public function getAllAssets(Request $request): Json
{
$user_id=$request->userId;
$account_type=$request->post('account_type',0);
$result = (new WalletService())->getUserAssets($user_id,$account_type);
return json($result);
}
public function userRechargeList(Request $request): Json
{
$data['user_id']=$request->userId;
$data['account_type']=$request->post('account_type');
$data['page']=$request->post('page');
$data['page_size']=$request->post('page_size');
$result = (new WalletService())->getUserRechargeList($data);
return json($result);
}
/**
* 用户添加钱包地址
* @param Request $request
* @return Json
*/
public function addWalletAddress(Request $request): Json
{
$data['user_id']=$request->userId;
$data['wallet_type']=$request->post('wallet_type');
$data['wallet_address']=$request->post('wallet_address');
$data['remark']=$request->post('remark');
$data['adr_id']=$request->post('address_id');
$data['is_default']=$request->post('is_default');
$result=(new WalletService())->insertWalletAdress($data);
return json($result);
}
/**
* 获取用户钱包地址列表
* @param Request $request
* @return Json
*/
public function getWalletAddress(Request $request): Json
{
$data['user_id']=$request->userId;
$data['page']=$request->post('page');
$data['page_size']=$request->post('page_size');
$data['wallet_type']=$request->post('wallet_type');
$result=(new WalletService())->getUserWalletAddress($data);
return json($result);
}
/**
* 获取用户钱包地址详情
* @param Request $request
* @return Json
*/
public function getWalletAddressInfo(Request $request): Json
{
$data['user_id']=$request->userId;
$data['adr_id']=$request->post('address_id',0);
$result=(new WalletService())->getUserWalletAddressInfo($data);
return json($result);
}
/**
* 删除用户钱包地址
* @param Request $request
* @return Json
* @throws \think\db\exception\DbException
*/
public function delWalletAddress(Request $request): Json
{
$data['user_id']=$request->userId;
$data['adr_id']=$request->post('address_id');
$result=(new WalletService())->delUserWalletAddress($data);
return json($result);
}
/**
* 获取银行卡列表
* @param Request $request
* @return Json
*/
public function getUserBank(Request $request): Json
{
$data['user_id']=$request->userId;
$data['page']=$request->post('page');
$data['page_size']=$request->post('page_size');
$result=(new WalletService())->getUserBank($data);
return json($result);
}
/**
*
* @param Request $request
* @return Json
*/
public function getUserBankInfo(Request $request): Json
{
$data['user_id']=$request->userId;
$data['id']=$request->post('id');
$result=(new WalletService())->getUserBankInfo($data);
return json($result);
}
/**
* 添加编辑银行卡
* @param Request $request
* @return Json
*/
public function addUserBank(Request $request): Json
{
$data['user_id']=$request->userId;
$data['id']=$request->post('id');
$data['true_name']=$request->post('true_name');
$data['identity_card']=$request->post('identity_card');
$data['bank_card']=$request->post('bank_card');
$data['bank_name']=$request->post('bank_name');
$data['bank_email']=$request->post('bank_email');
$data['bank_phone']=$request->post('bank_phone');
$data['bank_code']=$request->post('bank_code');
$data['branch_name']=$request->post('branch_name');
$data['branch_phone']=$request->post('branch_phone');
$data['is_default']=$request->post('is_default');
$data['ifsc']=$request->post('ifsc');
$data['bank_address']=$request->post('bank_address');
$data['user_address']=$request->post('user_address');
$data['bank_country']=$request->post('bank_country');
$result=(new WalletService())->insertUserBank($data);
return json($result);
}
/**
* 删除银行卡
* @param Request $request
* @return Json
*/
public function delUserBank(Request $request): Json
{
$data['user_id']=$request->userId;
$data['id']=$request->post('id');
$result=(new WalletService())->delUserBank($data);
return json($result);
}
/**
* 获取用户账户可用余额
* @param Request $request
* @return Json
*/
public function getUserBalance(Request $request): Json
{
$data['user_id']=$request->userId;
$data['account_type']=$request->post('account_type');
$data['trade_name']=$request->post('trade_name');
$result=(new WalletService())->getUserBalance($data);
return json($result);
}
public function drawalFee(Request $request): Json
{
$account_type=$request->post('account_type',0,'intval');
$result=(new WalletService())->getDrawalFee($account_type);
return json($result);
}
/**
* 用户提款申请
* @param Request $request
* @return Json
*/
public function drawalApply(Request $request): Json
{
$data['user_id']=$request->userId;
$data['account_type']=$request->post('account_type');
$data['apply_num']=$request->post('apply_num');
$data['apply_type']=$request->post('apply_type');
$data['bank_id']=$request->post('bank_id');
$data['address_id']=$request->post('address_id');
$data['wallet_address']=$request->post('wallet_address');
$data['drawal_type']=$request->post('drawal_type');
$data['trade_pwd']=$request->post('trade_pwd');
$data['country']=$request->post('country');
$result=(new WalletService())->dealDrawalApply($data);
return json($result);
} /**
* 用户提款申请
* @param Request $request
* @return Json
*/
public function canncelDrawalApply(Request $request): Json
{
$data['user_id']=$request->userId;
$data['order_no']=$request->post('order_no');
$result=(new WalletService())->canncelDrawalApply($data);
return json($result);
}
public function userDrawalList(Request $request): Json
{
$data['user_id']=$request->userId;
$data['account_type']=$request->post('account_type');
$data['page']=$request->post('page');
$data['page_size']=$request->post('page_size');
$result=(new WalletService())->getDrawalList($data);
return json($result);
}
/**
* 获取用户资金明细数据
* @param Request $request
* @return Json
*/
public function UserBalanceRecord(Request $request): Json
{
$data['user_id']=$request->userId;
$data['account_type']=$request->post('account_type');
$data['page']=$request->post('page');
$data['page_size']=$request->post('page_size');
$result=(new WalletService())->getUserBalanceRecord($data);
return json($result);
}
/**
* 处理用户资金账户相互划转接口
* @param Request $request
* @return Json
*/
public function userTransfer(Request $request): Json
{
$data['user_id']=$request->userId;
$data['from_account']=$request->post('from_account');
$data['to_account']=$request->post('to_account');
$data['change_num']=$request->post('change_num');
$result=(new WalletService())->doUserTransfer($data);
return json($result);
}
public function userRechargeWallet(Request $request): Json
{
$data['user_id']=$request->userId;
$data['wallet_type']=$request->post('wallet_type');
$result=(new WalletService())->getUserRechargeWallet($data);
return json($result);
}
/**
* 获取用户划转资金明细
* @param Request $request
* @return Json
*/
public function userTransferRecord(Request $request): Json
{
$data['user_id']=$request->userId;
$data['page']=$request->post('page');
$data['page_size']=$request->post('page_size');
$result=(new WalletService())->getUserTransfer($data);
return json($result);
}
public function userHasNotPay(Request $request):Json
{
$data['user_id']=$request->userId;
$data['market_type']=$request->post('market_type');
$result=(new WalletService())->userHasNotPay($data);
return json($result);
}
public function dealUnPayIPO(Request $request):Json
{
$data['user_id']=$request->userId;
$data['market_type']=$request->post('market_type');
$result=(new WalletService())->dealUnPayIPO($data);
return json($result);
}
// 获取用户账户之间划转的费率 支持计算具体值
public function getRateToTransfer()
{
$result=(new WalletService())->getRateToTransfer($this->request->param());
return json($result);
}
}