会员中心接口返回活动数据和结算额度数据 结算记录和提现记录接口 提现银行卡绑定,编辑接口 提现申请接口 提现审核功能,打款及备注功能 活动结束未核销订单自动完成定时任务
129 lines
3.5 KiB
PHP
129 lines
3.5 KiB
PHP
<?php
|
||
|
||
namespace app\common\model\user\withdrawal;
|
||
|
||
use app\common\model\BaseModel;
|
||
use think\Model;
|
||
use traits\model\SoftDelete;
|
||
|
||
class Userwithdrawal extends BaseModel
|
||
{
|
||
|
||
use SoftDelete;
|
||
|
||
|
||
|
||
// 表名
|
||
protected $name = 'user_withdrawal';
|
||
|
||
// 自动写入时间戳字段
|
||
protected $autoWriteTimestamp = 'integer';
|
||
|
||
// 定义时间戳字段名
|
||
protected $createTime = 'createtime';
|
||
protected $updateTime = 'updatetime';
|
||
protected $deleteTime = 'deletetime';
|
||
|
||
// 追加属性
|
||
protected $append = [
|
||
|
||
];
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
public function user()
|
||
{
|
||
return $this->belongsTo('app\common\model\User', 'user_id', 'id', [], 'LEFT')->setEagerlyType(0);
|
||
}
|
||
|
||
|
||
public function detail($user_id)
|
||
{
|
||
$withdrawal = self::where('user_id',$user_id)->find();;
|
||
return compact('withdrawal');
|
||
}
|
||
|
||
|
||
/** 添加或修改提现信息
|
||
* @param $user_id
|
||
* @param $params
|
||
* @param $trans
|
||
* @return true
|
||
* @throws \Exception
|
||
*/
|
||
public function addOrupdateWithdrawal($user_id,$params,$trans=false){
|
||
|
||
//表结构如下:
|
||
//CREATE TABLE `dyqc_user_withdrawal` (
|
||
// `id` int(11) NOT NULL AUTO_INCREMENT,
|
||
// `user_id` int(11) NOT NULL COMMENT '提现用户',
|
||
// `name` varchar(255) NOT NULL COMMENT '转账账户名',
|
||
// `bank_name` varchar(255) NOT NULL COMMENT '开户行名称(具体到支行)',
|
||
// `bank_user_name` varchar(255) NOT NULL COMMENT '银行账户号',
|
||
// `id_number` varchar(255) NOT NULL COMMENT '身份证号',
|
||
// `createtime` bigint(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
|
||
// `updatetime` bigint(11) unsigned DEFAULT '0' COMMENT '修改时间',
|
||
// `deletetime` bigint(11) unsigned DEFAULT NULL COMMENT '删除时间',
|
||
// PRIMARY KEY (`id`)
|
||
//) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='用户银行卡绑定';
|
||
//这里应对基础提交信息做验证:开户行名称bank_name,转账账户名name,银行账户号bank_user_name,身份证号id_number
|
||
//以下对每个字段做验证,如果验证不通过,则抛出异常
|
||
|
||
$rule = [
|
||
'bank_name'=>'require',
|
||
'name'=>'require',
|
||
'bank_user_name'=>'require',
|
||
'id_number'=>'require',
|
||
];
|
||
|
||
|
||
$rule_msg = [
|
||
'bank_name.require'=>'开户行名称不能为空',
|
||
'name.require'=>'转账账户名不能为空',
|
||
'bank_user_name.require'=>'银行账户号不能为空',
|
||
'id_number.require'=>'身份证号不能为空',
|
||
|
||
];
|
||
|
||
self::check($params,$rule,$rule_msg);
|
||
|
||
|
||
//判断逻辑
|
||
if($trans){
|
||
self::beginTrans();
|
||
}
|
||
$res = true;
|
||
try{
|
||
//此接口需要给用户添加银行卡信息,如果用户没绑过,则添加,如果用户已经绑定过,则修改
|
||
$userWithdrawal = self::where('user_id',$user_id)->find();
|
||
if($userWithdrawal){
|
||
$userWithdrawal->save($params);
|
||
}else{
|
||
$userWithdrawal = new self();
|
||
$userWithdrawal->save($params);
|
||
}
|
||
if($trans){
|
||
self::commitTrans();
|
||
}
|
||
}catch (\Exception $e){
|
||
if($trans){
|
||
self::rollbackTrans();
|
||
}
|
||
throw new \Exception($e->getMessage().$e->getFile().$e->getLine());
|
||
}
|
||
return $userWithdrawal;
|
||
}
|
||
|
||
|
||
|
||
|
||
|
||
}
|