/var/www/vhosts/nabawater/backend/models
Edit: /var/www/vhosts/nabawater/backend/models/VendorPaymentSearch.php (3047B)
'php:Y-m-d H:i:s'],
['to_date', 'compare', 'compareAttribute' => 'from_date', 'operator' => '>'],
];
}
/**
*
* @param type $params
* @return ActiveDataProvider
*/
public function search($params)
{
$query = Order::find()
->alias('O')
->select([
'O.*',
'VL.vendor_name',
'SUM(order_total) AS total_order_amount',
'SUM(admin_profit) AS total_admin_profit',
'SUM(vendor_profit) AS total_vendor_profit',
'COUNT(order_id) AS no_of_orders'
])
->leftJoin(['VL' => VendorLang::tableName()], 'VL.vendor_id = O.vendor_id')
->groupBy('vendor_id')
->where(['<>' ,'O.order_status',Order::DELETE]);
$dataProvider = new ActiveDataProvider([
'query' => $query,
'pagination' => [
'PageSize' => 10,
],
'sort' => [
'attributes' => [
'vendor_name',
'total_order_amount',
'total_admin_profit',
'total_vendor_profit',
'no_of_orders'
],
'defaultOrder' => [
'vendor_name' => SORT_ASC,
'total_order_amount' => SORT_DESC,
'total_admin_profit' => SORT_DESC,
'total_vendor_profit' => SORT_DESC,
'no_of_orders' => SORT_DESC
]
]
]);
$this->load($params);
if(!$this->validate()) {
return $dataProvider;
}
$query->andFilterWhere(['like', 'vendor_name', $this->vendor_name])
->andFilterWhere(['like', 'order_status', $this->order_status])
->andFilterWhere(['like', 'vendor_payment_status', $this->vendor_payment_status])
->andFilterWhere(['>=', 'order_date_time', $this->from_date])
->andFilterWhere(['<=', 'order_date_time', $this->to_date]);
return $dataProvider;
}
}