function adminimportAction() { $request = $this->getRequest(); $campaign = new Campaign(); $order = "expire_date desc"; $this->view->campaigns = $campaign->fetchAll(null, $order, null, null); if ($request->isPost()) { $formData = $request->getPost(); $campaign_id = $formData['campaign_id']; $file = $_FILES['file']; $objReader = PHPExcel_IOFactory::createReader('Excel2007'); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load($file['tmp_name']); $objWorksheet = $objPHPExcel->getActiveSheet(); foreach ($objWorksheet->getRowIterator() as $row) { $row_index = $row->getRowIndex(); if ($row_index == 1) { continue; } $consumerModel = new Consumer(); $row = $consumerModel->createRow(); $row->name = $objWorksheet->getCell('A' . $row_index)->getValue(); $row->recipients_name = $objWorksheet->getCell('A' . $row_index)->getValue(); $row->login_phone = strval($objWorksheet->getCell('C' . $row_index)->getValue()); $row->phone = strval($objWorksheet->getCell('C' . $row_index)->getValue()); $row->password = md5("111111"); $row->address1 = $objWorksheet->getCell('B' . $row_index)->getValue(); $row->province = $objWorksheet->getCell('D' . $row_index)->getValue(); $row->city = $objWorksheet->getCell('E' . $row_index)->getValue(); $consumer_id = $row->save(); $currentTime = date("Y-m-d H:i:s"); $campaignInvitationModel = new CampaignInvitation(); $row = $campaignInvitationModel->createRow(); $row->consumer_id = $consumer_id; $row->campaign_id = $campaign_id; $row->state = 'ACCEPTED'; $row->create_date = $currentTime; $campaign_invitation_id = $row->save(); $campaignParticipationModel = new CampaignParticipation(); $row = $campaignParticipationModel->createRow(); $row->campaign_invitation_id = $campaign_invitation_id; $row->state = 'NEW'; $row->accept_date = $currentTime; $row->save(); } //$this->_helper->redirector('adminindex', 'consumer'); } }
function saveacceptinvitation($survey_id, $consumer, $currentTime) { $campaignModel = new Campaign(); $this->view->campaign = $campaignModel->fetchRow("pre_campaign_survey=" . $survey_id . " or " . "pre_campaign_survey_en=" . $survey_id); $db = Zend_Registry::get('db'); if ($this->view->campaign != null) { $campaignId = $this->view->campaign->id; } if ($this->view->campaign != null && $campaignId != null && $campaignId > 0) { $campaignInvitationModel = new CampaignInvitation(); $campaignInvitation = $campaignInvitationModel->fetchRow("campaign_id=" . $campaignId . " and consumer_id=" . $consumer['id']); $id = $campaignInvitation->id; $campaignInvitation->state = "ACCEPTED"; $campaignInvitation->save(); $result = $db->fetchOne("SELECT COUNT(*) FROM campaign_participation WHERE campaign_invitation_id=:t1", array('t1' => $id)); if ($result == 0) { //create participation $campaignParticipationModel = new CampaignParticipation(); $currentTime = date("Y-m-d H:i:s"); $row = $campaignParticipationModel->createRow(); $row->campaign_invitation_id = $survey_id; $row->accept_date = $currentTime; $row->state = 'NEW'; $row->save(); } } }
function admincompletemissionAction() { $consumer = $this->_request->getParam('consumer'); $campaign = $this->_request->getParam('campaign'); $currentTime = date("Y-m-d H:i:s"); $campaignInvitation = new CampaignInvitation(); $campaignInvitation->update(array('state' => 'COMPLETED'), 'consumer_id =' . $consumer . ' and campaign_id =' . $campaign); $campainInvitationRow = $campaignInvitation->fetchRow('consumer_id =' . $consumer . ' and campaign_id =' . $campaign); $campaignParticipation = new CampaignParticipation(); $row = $campaignParticipation->createRow(); $row->campaign_invitation_id = $campainInvitationRow->id; $row->accept_date = $currentTime; $row->state = 'COMPLETED'; $row->save(); $this->_helper->layout->disableLayout(); die('结束'); }
function postcampaignfinishedAction() { $this->view->activeTab = 'Campaign'; $this->view->title = $this->view->title = $this->view->translate("Wildfire") . " - " . $this->view->translate("You_are_in"); $id = (int) $this->_request->getParam('survey'); $campaignModel = new Campaign(); $this->view->campaign = $campaignModel->fetchRow("post_campaign_survey=" . $id . " or " . "post_campaign_survey_en=" . $id); $db = Zend_Registry::get('db'); $campaignId = $this->view->campaign->id; $this->view->campaign_id = $campaignId; $consumer = $this->_currentUser; if ($campaignId > 0) { //change campaign_participation state $db = Zend_Registry::get('db'); $select2 = $db->select(); $select2->from('campaign_participation', '*')->join('campaign_invitation', 'campaign_invitation.id = campaign_participation.campaign_invitation_id', null)->where('campaign_invitation.consumer_id = ?', $consumer->id)->where('campaign_invitation.campaign_id = ?', $campaignId)->where("campaign_participation.state != 'COMPLETED'"); $isExist = $db->fetchAll($select2); // Zend_Debug::dump($isExist[0]['campaign_invitation_id']); if ($isExist != null) { $campaing_participateModel = new CampaignParticipation(); $campaign_participation = $campaing_participateModel->fetchRow('campaign_invitation_id = ' . $isExist[0]['campaign_invitation_id']); $campaign_participation->state = 'COMPLETED'; $campaign_participation->save(); //add 200 points for member in reward_point_transaction_record $rewardPointTransactionRecordModel = new RewardPointTransactionRecord(); $rewardPointTransaction = array("consumer_id" => $consumer->id, "date" => date("Y-m-d H:i:s"), "transaction_id" => "5", "point_amount" => "200"); $id = $rewardPointTransactionRecordModel->insert($rewardPointTransaction); //2011-05-13 change the rank of consumer $rankModel = new Rank(); $rankModel->changeConsumerRank($consumer->id); } } }
function acceptAction() { $db = Zend_Registry::get('db'); $request = $this->getRequest(); $campaignId = (int) $this->_request->getParam('id', 0); $consumer = $this->_currentUser; if ($campaignId > 0) { // check if precampaign poll is finished $select1 = $db->select(); $select1->from('campaign', 'pre_campaign_survey'); $select1->where('campaign.id = ?', $campaignId); $previewCamSurvey = $db->fetchOne($select1); $indicate2Connect = new Indicate2_Connect(); $ids = array($previewCamSurvey); $wsResult = $indicate2Connect->getAnswerSetCount($consumer->email, $ids); // Zend_Debug::dump($wsResult); if ($wsResult == 0) { $this->_redirect('campaign/precampaign/survey/' . $previewCamSurvey); } else { $campaignInvitationModel = new CampaignInvitation(); $campaignInvitation = $campaignInvitationModel->fetchRow("campaign_id=" . $campaignId . " and consumer_id=" . $consumer->id); $id = $campaignInvitation->id; // Zend_Debug::dump($campaignInvitation); $campaignInvitation->state = "ACCEPTED"; $campaignInvitation->save(); $result = $db->fetchOne("SELECT COUNT(*) FROM campaign_participation WHERE campaign_invitation_id=:t1", array('t1' => $id)); if ($result == 0) { //create participation $campaignParticipationModel = new CampaignParticipation(); $currentTime = date("Y-m-d H:i:s"); $row = $campaignParticipationModel->createRow(); $row->campaign_invitation_id = $id; $row->accept_date = $currentTime; $row->save(); } $this->_redirect('campaigninvitation/index'); } } $this->_helper->layout->disableLayout(); }