public function setDateRange($from, $to) { $type_add_point = MW_RewardPoints_Model_Type::getAddPointArray(); $type_subtract_point = MW_RewardPoints_Model_Type::getSubtractPointArray(); //zend_debug::dump($type_add_point);die(); $this->_reset()->addFieldToFilter('transaction_time', array('from' => $from, 'to' => $to, 'datetime' => true)); $this->addFieldToFilter('status', MW_RewardPoints_Model_Status::COMPLETE); $this->addFieldToFilter('status_check', array('neq' => MW_RewardPoints_Model_Status::REFUNDED)); //$this ->addFieldToFilter('type_of_transaction',array('in'=>array($type_subtract_point))); $this->addExpressionFieldToSelect('total_rewarded_sum', 'sum(if(type_of_transaction IN (' . implode(",", $this->use_type) . '),amount,0))', 'total_rewarded_sum'); $this->addExpressionFieldToSelect('total_redeemed_sum', 'sum(if(type_of_transaction IN (' . MW_RewardPoints_Model_Type::USE_TO_CHECKOUT . ') && status_check != ' . MW_RewardPoints_Model_Status::REFUNDED . ',amount,0))', 'total_redeemed_sum'); $this->addExpressionFieldToSelect('sign_up_count', 'count(distinct if(type_of_transaction IN (1),history_id,null))', 'sign_up_count'); $this->addExpressionFieldToSelect('order_id_count', 'count(distinct if(type_of_transaction IN (6,14,8,11,30) and history_order_id != 0,history_order_id,null))', 'order_id_count'); $this->addExpressionFieldToSelect('customer_id_count', 'count( distinct customer_id)', 'customer_id_count'); //$this->getSelect()->group(array('customer_id')); // echo $this->getSelect();die(); return $this; }
public function setDateRange($from, $to) { $type_add_point = MW_RewardPoints_Model_Type::getAddPointArray(); $type_subtract_point = MW_RewardPoints_Model_Type::getSubtractPointArray(); //zend_debug::dump($type_add_point);die(); $this->_reset()->addFieldToFilter('transaction_time', array('from' => $from, 'to' => $to, 'datetime' => true)); $this->addFieldToFilter('status', MW_RewardPoints_Model_Status::COMPLETE); $this->addFieldToFilter('status_check', array('neq' => MW_RewardPoints_Model_Status::REFUNDED)); //$this ->addFieldToFilter('type_of_transaction',array('in'=>array($type_subtract_point))); $this->addExpressionFieldToSelect('total_rewarded_sum', 'sum(if(type_of_transaction IN (' . implode(",", $this->use_type) . '),amount,0))', 'total_rewarded_sum'); $this->addExpressionFieldToSelect('rewarded_on_purchases_sum', 'sum(if(type_of_transaction IN (' . implode(",", $this->group_order) . '),amount,0))', 'rewarded_on_purchases_sum'); $this->addExpressionFieldToSelect('rewarded_on_sign_up_sum', 'sum(if(type_of_transaction IN (1),amount,0))', 'rewarded_on_sign_up_sum'); $this->addExpressionFieldToSelect('rewarded_on_subscribers_sum', 'sum(if(type_of_transaction IN (16),amount,0))', 'rewarded_on_subscribers_sum'); $this->addExpressionFieldToSelect('rewarded_on_reviews_sum', 'sum(if(type_of_transaction IN (2),amount,0))', 'rewarded_on_reviews_sum'); $this->addExpressionFieldToSelect('rewarded_on_birthday_sum', 'sum(if(type_of_transaction IN (' . implode(",", $this->group_birthday) . '),amount,0))', 'rewarded_on_birthday_sum'); $this->addExpressionFieldToSelect('rewarded_on_referal_sum', 'sum(if(type_of_transaction IN (' . implode(",", $this->group_referal) . '),amount,0))', 'rewarded_on_referal_sum'); $this->addExpressionFieldToSelect('added_by_admin_sum', 'sum(if(type_of_transaction IN (12),amount,0))', 'added_by_admin_sum'); $this->addExpressionFieldToSelect('other_rewards_sum', 'sum(if(type_of_transaction IN (' . implode(",", $this->group_other) . '),amount,0))', 'other_rewards_sum'); $this->addExpressionFieldToSelect('total_transaction_count', 'count( distinct if(type_of_transaction IN (' . implode(",", $this->use_type) . '),history_id,null))', 'total_transaction_count'); //$this->getSelect()->group(array('customer_id')); return $this; }