Esempio n. 1
0
 /**
  * 実行
  */
 protected function perform()
 {
     // 案件ID
     $ankenId = $this->_request['aid'];
     // モデル
     $m =& $this->_model;
     // 基本情報
     $anken =& $m->getAnkenData($ankenId);
     $this->appendDataFrom($anken);
     // ログインクライアントIDチェック
     if ($this->_core->getLoginKind() == 'client' && $this->_loginClientId != $anken['client_id']) {
         throw new RequestParamsException('ログインクライアントIDと要求したクライアントIDが一致しません。');
     }
     // 締め日
     $shime = $anken['shime_date'];
     // キャンペーン期間
     $from = $anken['campaign_from'];
     $to = $anken['campaign_to'];
     // 空の期間配列を作成
     $blank = DateManager::getArrayShimeSpan($ankenId, $from, $to, $shime);
     // 集計
     $data =& $m->Result_ClientReportResult_counting($anken, $blank);
     // テンプレートに渡す
     $this->_dataFrom['list'] =& $data;
     // 案件情報のアクションID対応の値
     $enum = new AcceptUseActionIdEnum();
     $this->_dataFrom["accept_use_action"] = $enum->getKey('アクションID');
     // 案件情報の定率対応の値
     $enum = new PriceTypeCdEnum();
     $this->_dataFrom["price_use_rate"] = $enum->getKey('定率');
     //---------------------------------------
     // UPLOAD用のフォームのカスタム処理
     //---------------------------------------
     $path = $m->Result_ClientReportResult_getUploadFormTmplPath($ankenId);
     $this->_dataFrom["upform_path"] = $path;
     //---------------------------------------
     // CSVの追加オプション表示
     //---------------------------------------
     $this->_dataFrom["add_option_name"] = $m->Result_ClientReportResult_getAddLabelForUploadForm($ankenId);
     //---------------------------------------
     // フッターのリンク
     //---------------------------------------
     $tmpl = $m->getExtraLinkTmplPath($ankenId);
     $this->_dataFrom["extra_link_path"] = $tmpl;
     //---------------------------------------
     // レポートの表示/非表示制御
     //---------------------------------------
     $this->_dataFrom["disp"] =& $m->getReportDisp($ankenId, $this->_core->getLoginKind());
 }
Esempio n. 2
0
 /**
  * 実行
  */
 protected function perform()
 {
     // 案件情報のアクションID対応の値
     $enum = new AcceptUseActionIdEnum();
     $acceptUseAction = $enum->getKey('アクションID');
     // 案件ID
     $ankenId = $this->_request['aid'];
     // モデル
     $m =& $this->_model;
     // キャンペーンコード取得
     $anken =& $m->getAnkenData($ankenId);
     $code = $anken['campaign_code'];
     if ($code === null) {
         throw new AnkenNotFountException();
     }
     $this->appendDataFrom($anken);
     // ファイル名称
     $filename = "";
     // 結果
     $data = null;
     // 振り分け
     $kind =& $this->_like['kind'];
     if ($kind == 1) {
         // 承認前
         $data =& $m->Result_ClientResultDownload_getUnacceptData($code, $this->_like);
         $this->_fileName = "report_unaccept.csv";
     } else {
         if ($kind == 2) {
             // 承認後(アクション日付基準)
             $data =& $m->Result_ClientResultDownload_getAcceptByActionDate($code, $this->_like);
             $this->_fileName = "report_accept_by_action_date.csv";
         } else {
             if ($kind == 3) {
                 // 承認後(承認日付基準)
                 $data =& $m->Result_ClientResultDownload_getAcceptByAceeptDate($code, $this->_like);
                 $this->_fileName = "report_accept_by_accept_date.csv";
             }
         }
     }
     // 案件情報のアクションID対応の値
     $this->_dataFrom["accept_use_action"] = $acceptUseAction;
     // テンプレート
     $this->_dataFrom['list'] =& $data;
     // 承認前 (アクションID対応の場合アクションIDを付加)
     if ($anken['accept_use_action_id'] == $acceptUseAction) {
         $data =& $m->attachPrefixActionIdForList($data, $anken['id_prefix']);
     }
     // 承認前 (nm付与の場合、任意のIDに「nm」を付与)
     if ($anken['client_user_id_add_nm'] == 1) {
         $data =& $m->attachNmClientUserIdForList($data);
     }
     // 成果前後フラグ
     $this->_dataFrom['is_unaccept_download'] = false;
     if ($kind == 1) {
         $this->_dataFrom['is_unaccept_download'] = true;
     }
     return 'result/download/csv_client_report_result';
 }
Esempio n. 3
0
 /**
  * 実行
  */
 protected function perform()
 {
     // 案件情報のアクションID対応の値
     $enum = new AcceptUseActionIdEnum();
     $acceptUseAction = $enum->getKey('アクションID');
     // 案件ID
     $ankenId = $this->_request['aid'];
     // モデル
     $m =& $this->_model;
     // キャンペーンコード取得
     $anken =& $m->getAnkenData($ankenId);
     $code = $anken['campaign_code'];
     if ($code === null) {
         throw new AnkenNotFountException();
     }
     $this->appendDataFrom($anken);
     // 単価タイプ
     $priceTypeCd = $anken['price_type_cd'];
     // デバイス情報表示フラグ
     $clientReportDeviceDisplay = $m->Result_ClientResultWithPostApiDownload_getClientReportDeviceDisplayFlg($anken);
     $this->_dataFrom['client_report_device_info_display'] = $clientReportDeviceDisplay;
     // ファイル名称
     $filename = "";
     // 結果
     $data = null;
     // 振り分け
     $kind =& $this->_like['kind'];
     if ($kind == 2) {
         // 承認後(アクション日付基準)
         $data =& $m->Result_ClientResultWithPostApiDownload_getAcceptByActionDate($code, $this->_like, $priceTypeCd, $clientReportDeviceDisplay);
         $this->_fileName = "report_accept_by_action_date_with_non_af.csv";
     }
     // ASP媒体情報表示フラグ
     $clientReportBaitaiDisplay = $m->Result_ClientResultWithPostApiDownload_getClientReportBaitaiDisplayFlg($anken);
     $this->_dataFrom['client_report_baitai_info_display'] = $clientReportBaitaiDisplay;
     // ASP媒体情報つけ
     if ($clientReportBaitaiDisplay == 1 || $this->_core->getLoginKind() == 'admin' && $clientReportBaitaiDisplay != null) {
         $data =& $m->Result_ClientResultWithPostApiDownload_attachClientReportBaitaiInfo($data, $anken);
     }
     // 案件情報のアクションID対応の値
     $this->_dataFrom["accept_use_action"] = $acceptUseAction;
     // テンプレート
     $this->_dataFrom['list'] =& $data;
     if ($this->_core->getLoginKind() == 'admin') {
         // 管理者権限の場合アクションIDを付加
         $data =& $m->attachPrefixActionIdForList($data, $anken['id_prefix']);
     } else {
         // 承認前 (アクションID対応の場合アクションIDを付加)
         if ($anken['accept_use_action_id'] == $acceptUseAction) {
             $data =& $m->attachPrefixActionIdForList($data, $anken['id_prefix']);
         }
     }
     // 承認前 (nm付与の場合、任意のIDに「nm」を付与)
     if ($anken['client_user_id_add_nm'] == 1) {
         $data =& $m->attachNmClientUserIdForList($data);
     }
     // 「,」(カンマ)使用の場合、「""」(ダブルクォーテーション)を囲むことが必要です
     $data =& $m->getFormatDataList($data);
     // 成果前後フラグ
     $this->_dataFrom['is_unaccept_download'] = false;
     if ($kind == 1) {
         $this->_dataFrom['is_unaccept_download'] = true;
     }
     // CSVの追加オプション表示情報取得
     $dispOption =& $m->getSeikaOptionDispForDownLoadCsv($ankenId);
     $this->_dataFrom = array_merge($this->_dataFrom, $dispOption);
     // 追加パラメータ名称リスト取得
     $valueNameList =& $m->getSeikaOptionValueNameList($ankenId);
     $this->_dataFrom['valueNameList'] =& $valueNameList;
     return 'result/download/csv_client_report_result_with_non_af';
 }