public function dashboardmad_index($media_ad_id = null) {
if (!$media_ad_id)
$this->redirect('/MediaAds');
$platform='media';
$this->loadModel('MediaApp');
$media_app = $this->MediaApp->findByMediaAdId($media_ad_id);
$this->set(compact('media_app'));
$this->loadModel('MerchantProductOrder');
$this->loadModel('Merchant');
$conditions = array(
'Merchant.platform' => $platform,
'MediaAppOrder.media_app_id' => $media_ad_id,
'OR' => array(
'Merchant.user_id' => $this->UserAuth->getUserId(),
'Merchant.self_user_id' => $this->UserAuth->getUserId(),
)
);
$searchInfo = $this->request->query;
$this->request->data = array('MerchantProductOrder' => $searchInfo);
if (@$searchInfo['type'] && $searchInfo['keyword']) {
if ($searchInfo['type'] == 'MerchantProduct.product_name')
$conditions[$searchInfo['type'] . ' like '] = '%' . $searchInfo['keyword'] . '%';
else
$conditions[$searchInfo['type']] = $searchInfo['keyword'];
}
if (@$searchInfo['start_time'] && @$searchInfo['end_time']) {
$conditions['MerchantProduct.start_time >= '] = date('Y-m-d H:m:s',strtotime($searchInfo['start_time']));
$conditions['MerchantProduct.end_time <= '] = date('Y-m-d H:m:s',strtotime($searchInfo['end_time'])+3600*24);
}
if (@$searchInfo['active'] != NULL) {
if (@$searchInfo['active'] == '-1') {
$conditions['MerchantProductOrder.active'] = -1;
} else {
$conditions['MerchantProductOrder.active'] = 1;
if (@$searchInfo['active'] == '0')
$conditions['MerchantProductOrder.voucher_remaining'] = 0;
else
$conditions['MerchantProductOrder.voucher_remaining >'] = 0;
}
}
$this->paginate = array(
'limit' => 25,
'order' => array('MerchantProductOrder.id' => 'desc'),
'fields' => array(
'MerchantProductOrder.*',
'MerchantProduct.*',
'Merchant.*'
),
'joins' => array(
array(
'table' => 'media_app_order',
'alias' => 'MediaAppOrder',
'type' => 'inner',
'conditions' => array(
'MediaAppOrder.merchant_product_order_id = MerchantProductOrder.id',
)
),
array(
'table' => 'merchant_products',
'alias' => 'MerchantProduct',
'type' => 'inner',
'conditions' => array(
'MerchantProduct.id = MerchantProductOrder.product_id',
)
),
array(
'table' => 'merchants',
'alias' => 'Merchant',
'type' => 'inner',
'conditions' => array(
'Merchant.id = MerchantProduct.merchant_id',
)
),
),
'conditions' => $conditions,
);
$this->MerchantProductOrder->recursive = -1;
$this->MerchantProductOrder->cache = 0;
$data = $this->paginate('MerchantProductOrder');
$voucherTypeArr = $this->MerchantProductOrder->voucherTypeArr;
$ActiveArr = $this->MerchantProductOrder->ActiveArr;
$platformarr = $this->Merchant->platformSimpleArr;
foreach ($data as $key => $value) {
if ($data[$key]['MerchantProductOrder']['voucher_remaining'] == 0 && $data[$key]['MerchantProductOrder']['active']) {
$data[$key]['MerchantProductOrder']['active'] = 2;
}
$data[$key]['MerchantProductOrder']['voucher_type'] = $voucherTypeArr[$data[$key]['MerchantProductOrder']['voucher_type']];
$data[$key]['MerchantProductOrder']['active_number'] = $data[$key]['MerchantProductOrder']['active'];
$data[$key]['MerchantProductOrder']['active'] = $ActiveArr[$data[$key]['MerchantProductOrder']['active']];
$data[$key]['Merchant']['platform_source'] = $data[$key]['Merchant']['platform'];
$data[$key]['Merchant']['platform'] = @$platformarr[$data[$key]['Merchant']['platform']];
}
if (@$searchInfo['export']) {
$this->orderExport($data);
}
$this->set('data', $data);
$this->set('ActiveArr', $ActiveArr);
if (!$this->viewVars['data']) {
$this->warning("没有数据");
}
}