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.
simple-yewu/common/models/PayOrderUserT.php

116 lines
2.8 KiB

5 years ago
<?php
namespace common\models;
use Yii;
/**
* This is the model class for table "pay_order_user_t".
*
* type: 1:新保, 2:跟踪, 3:续保, 4:送单
* @property integer $id
* @property integer $user_id
* @property integer $order_id
* @property string $pay_date
* @property integer $type
* @property integer $is_own
* @property string $should_pay
* @property string $real_pay
* @property string $created_at
* @property string $updated_at
*/
class PayOrderUserT extends \common\models\Base
{
/**
* @inheritdoc
*/
public static function tableName()
{
return 'pay_order_user_t';
}
/**
* @inheritdoc
*/
public function rules()
{
return [
[['user_id', 'order_id', 'type'], 'required'],
[['user_id', 'order_id', 'type','is_own'], 'integer'],
[['created_at', 'updated_at'], 'safe'],
[['should_pay','real_pay'], 'number'],
[['pay_date'], 'string', 'max' => 50],
];
}
/**
* @inheritdoc
*/
public function attributeLabels()
{
return [
'id' => 'ID',
'user_id' => 'User ID',
'order_id' => 'Order ID',
'pay_date' => 'Pay Date',
'type' => 'Type',
'is_own' => 'Is Own',
'should_pay' => 'Should Pay',
'real_pay' => 'Real Pay',
'created_at' => 'Created At',
'updated_at' => 'Updated At',
];
}
public function getUser()
{
return $this->hasOne(UserT::className(),['id'=>'user_id']);
}
public function getOrder()
{
return $this->hasOne(OrderT::className(),['id'=>'order_id']);
}
public function calPay()
{
$should_pay = 0;
$order_info = $this->order;
if(!$order_info) return;
$caiwu_info = $order_info->caiwu;
if(!$caiwu_info) return;
if($this->type == 1) {
$should_pay = $caiwu_info->money1;
}
if($this->type == 2) {
$should_pay = $caiwu_info->money2;
}
if($this->type == 3) {
$should_pay = $caiwu_info->money3;
}
if($this->type == 4) {
$should_pay = $caiwu_info->send_money;
}
if($this->type == 5) {
$should_pay = $caiwu_info->money4;
}
if($this->type == 6) {
$should_pay = $caiwu_info->money5;
}
$this->should_pay = round($should_pay,2);
$real_pay = $should_pay;
if($this->is_own == 1) {
$real_pay -= $order_info->total1_dis;
$order_gifts = $order_info->orderGifts;
foreach($order_gifts as $order_gift) {
$real_pay -= $order_gift->price;
}
}
$this->real_pay = round($real_pay,2);
$this->save();
}
}