100], [['price'], 'string', 'max' => 50], [['remark'], 'string', 'max' => 200], ]; } /** * @inheritdoc */ public function attributeLabels() { return [ 'id' => 'ID', 'type_id' => 'Type ID', 'name' => 'Name', 'price' => 'Price', 'remark' => 'Remark', 'total' => 'Total', 'total_lock' => 'Total Lock', 'created_at' => 'Created At', 'updated_at' => 'Updated At', ]; } public function getShowType() { if($this->type_id == 1) return '实物礼品'; if($this->type_id == 2) return '礼券'; return ''; } public function getTickets() { return $this->hasMany(GiftTicketT::className(),['type_id'=>'id']); } public function getTicketsUse() { return $this->hasMany(GiftTicketTUse::className(),['type_id'=>'id']); } public function getTicketsUseByDate($date_type,$begin_date,$end_date) { $query = GiftTicketTUse::find() ->leftJoin('order_t','order_t.id=gift_ticket_t_use.order_id') ->leftJoin('gift_t','gift_t.id=gift_ticket_t_use.type_id') ->where('gift_t.id='.$this->id) ->orderBy('id DESC'); if($date_type == 1) { if($begin_date != '') { $query = $query->andWhere('gift_ticket_t_use.finished_date>="' . $begin_date.'"'); } if($end_date != '') { $query = $query->andWhere('gift_ticket_t_use.finished_date<="' . $end_date.'"'); } }elseif ($date_type == 2){ if($begin_date != '') { $query = $query->andWhere('order_t.print_date>="' . $begin_date.'"'); } if($end_date != '') { $query = $query->andWhere('order_t.print_date<="' . $end_date.'"'); } }elseif ($date_type == 3){ if($begin_date != '') { $query = $query->andWhere('order_t.submit_date>="' . $begin_date.'"'); } if($end_date != '') { $query = $query->andWhere('order_t.submit_date<="' . $end_date.'"'); } } return $query; } }