最新服务器上的版本,以后用这个
zhangmeng
2023-04-19 e3f5aa12f58d986098a9de0f5cb38060e403036d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
<?php
 
namespace app\models;
 
/**
 * This is the model class for table "{{%goods_warehouse}}".
 *
 * @property int $id
 * @property int $mall_id
 * @property string $name 商品名称
 * @property string $subtitle 副标题
 * @property string $original_price 原价
 * @property string $cost_price 成本价
 * @property string $detail 商品详情,图文
 * @property string $cover_pic 商品缩略图
 * @property string $pic_url 商品轮播图
 * @property string $video_url 商品视频
 * @property string $unit 单位
 * @property string $created_at
 * @property string $updated_at
 * @property string $deleted_at
 * @property int $is_delete
 * @property string $type 商品类型:goods--实体商品 ecard--电子卡密
 * @property int $ecard_id 卡密id
 * @property GoodsCatRelation[] $goodsCatRelation
 * @property GoodsCats $cats
 * @property Goods[] $goods
 * @property Goods $goodsInfo
 * @property $mchCats
 * @property Ecard $ecard
 */
class GoodsWarehouse extends ModelActiveRecord
{
    const TYPE_VIRTUAL = 'exchange'; //虚拟商品 和兑换中心同名
    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return '{{%goods_warehouse}}';
    }
 
    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['mall_id', 'name', 'detail', 'pic_url', 'created_at', 'updated_at', 'deleted_at'], 'required'],
            [['mall_id', 'is_delete', 'ecard_id'], 'integer'],
            [['original_price', 'cost_price'], 'number'],
            [['detail', 'pic_url'], 'string'],
            [['created_at', 'updated_at', 'deleted_at'], 'safe'],
            [['name', 'subtitle', 'cover_pic', 'video_url', 'unit', 'type'], 'string', 'max' => 255],
        ];
    }
 
    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'mall_id' => 'Mall ID',
            'name' => '商品名称',
            'subtitle' => '副标题',
            'original_price' => '原价',
            'cost_price' => '成本价',
            'detail' => '商品详情,图文',
            'cover_pic' => '商品缩略图',
            'pic_url' => '商品轮播图',
            'video_url' => '商品视频',
            'unit' => '单位',
            'created_at' => 'Created At',
            'updated_at' => 'Updated At',
            'deleted_at' => 'Deleted At',
            'is_delete' => 'Is Delete',
            'type' => '商品类型:goods--实体商品 ecard--电子卡密',
            'ecard_id' => '卡密id',
        ];
    }
 
    public function getGoodsCatRelation()
    {
        return $this->hasMany(GoodsCatRelation::className(), ['goods_warehouse_id' => 'id'])->where(['is_delete' => 0]);
    }
 
    public function getCats()
    {
        return $this->hasMany(GoodsCats::className(), ['id' => 'cat_id'])
            ->where(['mch_id' => 0])
            ->via('goodsCatRelation');
    }
 
    public function getMchCats()
    {
        return $this->hasMany(GoodsCats::className(), ['id' => 'cat_id'])
            ->where(['>', 'mch_id', 0])
            ->via('goodsCatRelation');
    }
 
    public function getGoods()
    {
        return $this->hasMany(Goods::className(), ['goods_warehouse_id' => 'id']);
    }
 
    public function getGoodsInfo()
    {
        return $this->hasOne(Goods::className(), ['goods_warehouse_id' => 'id'])->where(['sign' => ['', 'mch']]);
    }
 
    public function getEcard()
    {
        return $this->hasOne(Ecard::className(), ['id' => 'ecard_id']);
    }
}