render('bus-cost-form-loading'); } public function actionBusCostForm1() { $finance = new Finance(); $view = Yii::$app->view; $view->title = '巴士统计报表'; //1,获取参数 $yesterday = date('Y-m-d', strtotime("-1 days")); $dimensionality_list = ['日期', '线路', '渠道', '运营负责人']; $dimensionality = Yii::$app->request->get('dimensionality', 2);//维度 0,日期 1,线路 2,渠道 3,运营负责人 $dimensionality2 = Yii::$app->request->get('dimensionality2', 0);//线路类型0,全部 1,市内 2,省际 $start_date = Yii::$app->request->get('start_date', $yesterday);//开始日期 $bus_start_time = Yii::$app->request->get('bus_start_time', '');//发车时间 $line_code = Yii::$app->request->get('line_code', '');//线路代码 $end_date = Yii::$app->request->get('end_date', $yesterday);//结束日期 $page_size = Yii::$app->request->get('page_size', 30);//每页展示条数 $current_page = Yii::$app->request->get('current_page', 1);//当前页 $channel_list = Yii::$app->request->get('channel_list', '');//日期维度下的渠道筛选 /*$start_date = Yii::$app->request->get('start_date','2017-03-22');//开始日期 $end_date = Yii::$app->request->get('end_date','2017-03-25');//结束日期*/ //2,获取数据 $form_list = $finance->getDateCost($dimensionality, $dimensionality2, $start_date, $end_date, $page_size, $current_page, $channel_list, $bus_start_time, $line_code); //3.每页展示条数 $page_size_arr = [10, 30, 50, 100]; $rows = $form_list['rows']; $final_amount = $form_list['final_amount']; $empty_bus_cost = $form_list['empty_bus_cost']; $page_arr = $form_list['page_arr']; $page = $form_list['page']; $data['dimensionality'] = $dimensionality_list; $data['rows'] = $rows; $data['search_dimensionality'] = $dimensionality; $data['final_amount'] = $final_amount; $data['empty_bus_cost'] = $empty_bus_cost; $data['page_arr'] = $page_arr; $data['page'] = $page; $data['page_size'] = $page_size; $data['page_size_arr'] = $page_size_arr; $data['statistical_type'] = $dimensionality_list[$dimensionality]; $data['start_date'] = $start_date; $data['end_date'] = $end_date; return $this->render('bus-cost', $data); } /** * Function Description:统计报表 * Function Name: actionOrderStatisticalForm * * @return string * * @author 张帅 */ public function actionOrderStatisticalForm() { $order_main = new OrderMain(); $view = Yii::$app->view; $view->title = '统计报表'; //1.维度 $dimensionality_list = ['渠道', '产品', '日期']; #region 2.获取参数 $dimensionality = Yii::$app->request->get('dimensionality');//维度 $dimensionality2 = Yii::$app->request->get('dimensionality2');//维度 $dimensionality3 = Yii::$app->request->get('dimensionality3');//维度 $start_date = Yii::$app->request->get('start_date');//开始日期 $end_date = Yii::$app->request->get('end_date');//结束日期 $page_size = Yii::$app->request->get('page_size');//每页展示条数 $current_page = Yii::$app->request->get('current_page');//当前页 empty($dimensionality) ? $dimensionality = 0 : true; empty($dimensionality2) ? $dimensionality2 = 2 : true; empty($dimensionality3) ? $dimensionality3 = 0 : true; /* empty($start_date) ? $start_date = date('Y-m',time()) . '-01' : true; empty($end_date) ? $end_date = date('Y-m-d', time()) : true; */ empty($start_date) ? $start_date = date('Y-m-d', strtotime("-1 days")) : true; empty($end_date) ? $end_date = date('Y-m-d', strtotime("-1 days")) : true; empty($page_size) ? $page_size = 30 : true; empty($current_page) ? $current_page = 1 : true; #endregion //3.获取数据 $form_list = $order_main->getOrderStatisticalForm($dimensionality, $dimensionality2, $dimensionality3, $start_date, $end_date, $page_size, $current_page); //4.每页展示条数 $page_size_arr = [10, 30, 50, 100]; $statistical_list = $form_list['rows']; $stat_row = $form_list['stat_row']; $page_arr = $form_list['page_arr']; $page = $form_list['page']; $data['dimensionality'] = $dimensionality_list; $data['search_dimensionality'] = $dimensionality; $data['statistical_list'] = $statistical_list; $data['stat_row'] = $stat_row; $data['page_arr'] = $page_arr; $data['page'] = $page; $data['page_size'] = $page_size; $data['page_size_arr'] = $page_size_arr; $data['statistical_type'] = $dimensionality_list[$dimensionality]; $data['start_date'] = $start_date; $data['end_date'] = $end_date; return $this->render('statistical-form', $data); } /** * Function Description:导出数据 * Function Name: actionExportOrderStatisticalForm * * @return string * * @author 张帅 */ public function actionExportBusCost() { $finance = new Finance(); $base_area = new BaseArea(); #region 2.获取参数 $yesterday = date('Y-m-d', strtotime("-1 days")); $dimensionality = Yii::$app->request->post('dimensionality', 2);//维度 0,日期 1,线路 2,渠道 $dimensionality2 = Yii::$app->request->post('dimensionality2', 0);//线路类型0,全部 1,市内 2,省际 $start_date = Yii::$app->request->post('start_date', $yesterday);//开始日期 $bus_start_time = Yii::$app->request->post('bus_start_time', '');//发车时间 $line_code = Yii::$app->request->post('line_code', '');//线路代码 $end_date = Yii::$app->request->post('end_date', $yesterday);//结束日期 $channel_list = Yii::$app->request->get('channel_list', '');//日期维度下的渠道筛选 #endregion //3.获取数据 $form_list = $finance->getDateCost($dimensionality, $dimensionality2, $start_date, $end_date, 10000, 1, $channel_list, $bus_start_time, $line_code); $obj_type = ['日期', '线路', '渠道', '运营负责人']; $cost_list = $form_list['rows']; $stat_row = $form_list['final_amount']; $stat_row['no'] = '-'; $stat_row['type_data'] = '合计'; $empty_bus_cost = $form_list['empty_bus_cost']; $empty_bus_cost['no'] = '-'; $empty_bus_cost['type_data'] = '空车成本'; $table_name = $start_date . '~' . $end_date . '巴士业绩统计'; $data_title = ['编号', $obj_type[$dimensionality], '订单数', '人次', '上座率', 'GMV', '赔入', '赔出', '成本', 'GP', 'GP率']; $data_list = []; $index_temp = 0; foreach ($cost_list as $k => $v) { $data_list[$index_temp]['no'] = $v['no']; $data_list[$index_temp]['type_data'] = $v['type_data']; $data_list[$index_temp]['order_num'] = number_format($v['order_num']); $data_list[$index_temp]['people_num'] = number_format($v['people_num']); if ($dimensionality == 2 || $dimensionality == 3 || $v['total_saled_count'] == 0) { $data_list[$index_temp]['seat_rate'] = "-"; } else { $seat_rate = ($v['total_saled_count'] == 0) ? 0 : $v['total_saled_count'] / $v['total_seat_count'] * 100; $data_list[$index_temp]['seat_rate'] = number_format($seat_rate, 2) . "%"; } $data_list[$index_temp]['total_price'] = number_format($v['total_price'], 2); $data_list[$index_temp]['peiru'] = number_format($v['peiru'], 2); $data_list[$index_temp]['peichu'] = number_format($v['peichu'], 2); $data_list[$index_temp]['cost'] = number_format($v['cost'], 2); $data_list[$index_temp]['gp'] = number_format($v['gp'], 2); $data_list[$index_temp]['gp_rate'] = $v['gp_rate']; $index_temp++; } if ($dimensionality == 2 || $dimensionality == 3) { $new_empty_bus_cost = array(); $new_empty_bus_cost['no'] = count($data_list) + 1; $new_empty_bus_cost['type_data'] = '空车成本'; $new_empty_bus_cost['order_num'] = 0; $new_empty_bus_cost['people_num'] = 0; $new_empty_bus_cost['seat_rate'] = "0%"; $new_empty_bus_cost['total_price'] = number_format(0, 2); $new_empty_bus_cost['peiru'] = number_format(0, 2); $new_empty_bus_cost['peichu'] = number_format(0, 2); $new_empty_bus_cost['cost'] = number_format($empty_bus_cost['cost'], 2); $new_empty_bus_cost['gp'] = number_format($empty_bus_cost['gp'], 2); $new_empty_bus_cost['gp_rate'] = $empty_bus_cost['gp_rate']; $data_list[] = $new_empty_bus_cost; } if ($dimensionality == 2 || $dimensionality == 3 || $v['total_saled_count'] == 0) { $stat_row['seat_rate'] = "-"; } else { $seat_rate = ($stat_row['total_saled_count'] == 0) ? 0 : $stat_row['total_saled_count'] / $stat_row['total_seat_count'] * 100; $stat_row['seat_rate'] = number_format($seat_rate, 2) . "%"; } $data_list[] = [$stat_row['no'], $stat_row['type_data'], number_format($stat_row['order_num']), number_format($stat_row['people_num']), $stat_row['seat_rate'], number_format($stat_row['total_price'], 2), number_format($stat_row['total_peiru'], 2), number_format($stat_row['total_peichu'], 2), number_format($stat_row['cost'], 2), number_format($stat_row['gp'], 2), $stat_row['gp_rate']]; return $base_area->exportExcel($table_name, $data_title, $data_list); } /** * Function Description:门票列表加载 * Function Name: actionTicketCostFormLoading * * @return string * * @author 李健 */ public function actionTicketCostFormLoading() { return $this->render('ticket-cost-form-loading'); } /** * Function Description:得到门票业绩列表 * Function Name: actionTicketCostForm * * @return string * * @author 李健 */ public function actionTicketCostForm() { $view = Yii::$app->view; $view->title = '门票统计报表'; $dimensionality_list = [ '日期','供应商', '产品名','运营负责人']; $dimensionality = Yii::$app->request->get('dimensionality', 3);//维度 1,日期 2,供应商 3,产品名 $date = date('Y-m-d', strtotime('-1 day')); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $prod_name = Yii::$app->request->get('prod_name', ''); $supplier_name = Yii::$app->request->get('supplier_name', ''); $ticket_type = Yii::$app->request->get('ticket_type', 0);//票种 1 保险 2其他 $current_page = Yii::$app->request->get('current_page', 1); $size = Yii::$app->request->get('page_size', 30); $logic = new ProdManage(); $data = $logic->getProdCostList($dimensionality, $start_date, $end_date, $prod_name, $supplier_name, $ticket_type, $current_page, $size); $data['dimensionality'] = $dimensionality_list; $data['search_dimensionality'] = $dimensionality; $data['statistical_type'] = $dimensionality_list[$dimensionality - 1]; $data['start_date'] = $start_date; $data['end_date'] = $end_date; return $this->render('ticket-cost', $data); } /** * Function Description:下载 * Function Name: actionGetProdCostDetail * * * @author 李健 */ public function actionGetProdCostDetail() { $dimensionality = Yii::$app->request->get('dimensionality', 3);//维度 1,日期 2,供应商 3,产品名 $ticket_type = Yii::$app->request->get('ticket_type', 0); $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date',$date); $end_date = Yii::$app->request->get('end_date',$date); $prod_name = Yii::$app->request->get('prod_name',''); $supplier_name = Yii::$app->request->get('supplier_name',''); $org_id = Yii::$app->request->get('org_id',''); $run_duty_id = Yii::$app->request->get('run_duty_id',''); $prod_id = Yii::$app->request->get('prod_id',''); $logic = new ProdManage(); $logic->ExportProdCostDetail($dimensionality,$start_date,$end_date,$prod_name,$supplier_name,$ticket_type,$org_id,$prod_id,$run_duty_id); } /** * Function Description:导出门票业绩列表页 * Function Name: actionExportProdCostList * * * @author 李健 */ public function actionExportProdCostList() { $dimensionality = Yii::$app->request->get('dimensionality', 1);//维度 1,日期 2,供应商 3,产品名 $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $prod_name = Yii::$app->request->get('prod_name', ''); $supplier_name = Yii::$app->request->get('supplier_name', ''); $ticket_type = Yii::$app->request->get('ticket_type', 0);//票种 1 保险 2其他 $current_page = Yii::$app->request->get('current_page', 1); $size = Yii::$app->request->get('page_size', 30); $logic = new ProdManage(); $logic->ExportProdCostList($dimensionality, $start_date, $end_date, $prod_name, $supplier_name, $ticket_type, $current_page, $size); } /** * Function Description:巴士工作业绩加载 * Function Name: actionBusWorkForm * * @return string * * @author 李健 */ public function actionBusWorkForm() { return $this->render('bus-work-form-loading'); } /** * Function Description:巴士工作业绩列表 * Function Name: actionGetBusWorkList * * @return string * * @author 李健 */ public function actionGetBusWorkList() { $current_page = Yii::$app->request->get('current_page', '1'); $page_size = Yii::$app->request->get('page_size', '30'); $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $line_type = Yii::$app->request->get('line_type', '0'); $logic = new Finance(); $data = $logic->getBusWorkList($start_date, $end_date, $line_type, $current_page, $page_size); $data['start_date'] = $start_date; $data['end_date'] = $end_date; return $this->render('bus-work', $data); } /** * Function Description:巴士工作业绩统计流水导出 * Function Name: actionGetBusWorkDetail * * * @author 李健 */ public function actionGetBusWorkDetail() { $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $line_type = Yii::$app->request->get('line_type', '0'); $user_id = Yii::$app->request->get('user_id', '0'); $logic = new Finance(); $logic->getBusWorkDetail($start_date, $end_date, $line_type, $user_id); } /** * Function Description:个人巴士工作业绩流水详情 * Function Name: actionExportBusWorkList * * * @author 李健 */ public function actionExportBusWorkList() { $logic = new Finance(); $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $line_type = Yii::$app->request->get('line_type', '0'); $logic->ExportBusWorkList($start_date, $end_date, $line_type); } /** * Function Description:门票工作业绩列表加载 * Function Name: actionTicketWorkForm * * @return string * * @author 李健 */ public function actionTicketWorkForm() { return $this->render('ticket-work-form-loading'); } /** * Function Description:门票工作业绩列表 * Function Name: actionGetTicketWorkList * * @return string * * @author 李健 */ public function actionGetTicketWorkList() { $current_page = Yii::$app->request->get('current_page', '1'); $page_size = Yii::$app->request->get('page_size', '30'); $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $ticket_type = Yii::$app->request->get('ticket_type', '0'); $logic = new ProdManage(); $data = $logic->getTicketWorkList($start_date, $end_date, $ticket_type, $current_page, $page_size); $data['start_date'] = $start_date; $data['end_date'] = $end_date; return $this->render('ticket-work', $data); } /** * Function Description:导出门票个人业绩详情 * Function Name: actionGetTicketWorkDetail * * * @author 李健 */ public function actionGetTicketWorkDetail() { $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $ticket_type = Yii::$app->request->get('ticket_type', '0'); $user_id = Yii::$app->request->get('user_id', '0'); $logic = new ProdManage(); $logic->getTicketWorkDetail($start_date, $end_date, $ticket_type, $user_id); } /** * Function Description:导出门票工作业绩流水 * Function Name: actionExportTicketWorkList * * * @author 李健 */ public function actionExportTicketWorkList() { $logic = new ProdManage(); $date = date('Y-m-d'); $start_date = Yii::$app->request->get('start_date', $date); $end_date = Yii::$app->request->get('end_date', $date); $ticket_type = Yii::$app->request->get('ticket_type', '0'); $logic->ExportTicketWorkList($start_date, $end_date, $ticket_type); } }