88 lines
2.8 KiB
PHP
88 lines
2.8 KiB
PHP
<?php
|
|
|
|
namespace App;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
|
|
class C2cDealSend extends Model
|
|
{
|
|
protected $table = 'c2c_deal_send';
|
|
public $timestamps = false;
|
|
protected $appends = ['seller_name','currency_name','limitation','way_name','currency_logo'];
|
|
|
|
public function getCreateTimeAttribute(){
|
|
return date('Y-m-d H:i:s',$this->attributes['create_time']);
|
|
}
|
|
|
|
public function getSellerNameAttribute(){
|
|
return $this->hasOne('App\Users','id','seller_id')->value('account_number');
|
|
}
|
|
public function user(){
|
|
return $this->hasOne('App\Users','id','seller_id');
|
|
}
|
|
|
|
public function getCurrencyNameAttribute(){
|
|
return $this->hasOne('App\Currency','id','currency_id')->value('name');
|
|
}
|
|
|
|
public function getCurrencyLogoAttribute(){
|
|
return $this->hasOne('App\Currency','id','currency_id')->value('logo');
|
|
}
|
|
|
|
public function getLimitationAttribute(){
|
|
return array('min'=>bc_mul($this->attributes['min_number'] , $this->attributes['price'],5),
|
|
'max'=>bc_mul($this->attributes['surplus_number'] , $this->attributes['price'],5)
|
|
);
|
|
}
|
|
|
|
public function getWayNameAttribute(){
|
|
if ($this->attributes['way'] == 'ali_pay'){
|
|
return '支付宝';
|
|
}elseif ($this->attributes['way'] == 'we_chat'){
|
|
return '微信';
|
|
}elseif ($this->attributes['way'] == 'bank'){
|
|
//return Seller::find($this->attributes['seller_id'])->bank_name;
|
|
return UserCashInfo::where('user_id',$this->attributes['seller_id'])->first()->bank_name;
|
|
}
|
|
}
|
|
|
|
//该发布信息下是否有未完成的订单
|
|
public static function isHasIncompleteness($id){
|
|
$is_deal = C2cDeal::where('legal_deal_send_id', $id)->pluck('is_sure')->toArray();
|
|
// var_dump($is_deal);die;
|
|
if (in_array(0,$is_deal)) {
|
|
return true;
|
|
}else{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
//撤回发布
|
|
public static function sendBack($id){
|
|
//找到撤回的交易记录
|
|
$send = self::find($id);
|
|
try{
|
|
$results = C2cDeal::where('legal_deal_send_id',$id)
|
|
->where('is_sure',0)->get();
|
|
if (!empty($results)){
|
|
foreach ($results as $result){
|
|
|
|
C2cDeal::cancelLegalDealById($result->id,AccountLog::C2C_DEAL_AUTO_CANCEL);
|
|
|
|
}
|
|
$send->is_done = 1;
|
|
$send->save();
|
|
}
|
|
return true;
|
|
}catch (\Exception $exception){
|
|
throw new \Exception($exception->getMessage());
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
public function legalDeal(){
|
|
return $this->hasOne('App\C2cDeal','legal_deal_send_id','id');
|
|
}
|
|
}
|