diff --git a/common/models/CaiwuT.php b/common/models/CaiwuT.php index b3c93fd..4207219 100644 --- a/common/models/CaiwuT.php +++ b/common/models/CaiwuT.php @@ -125,4 +125,9 @@ class CaiwuT extends \common\models\Base { return $this->hasOne(OrderCaiwuT::className(),['order_id'=>'order_id']); } + + public function getPayOrderUser() + { + return $this->hasMany(PayOrderUserT::className(),['order_id'=>'order_id']); + } } diff --git a/frontend/controllers/FinanceController.php b/frontend/controllers/FinanceController.php index bf902ac..810114c 100644 --- a/frontend/controllers/FinanceController.php +++ b/frontend/controllers/FinanceController.php @@ -7611,10 +7611,6 @@ class FinanceController extends \frontend\controllers\UserBaseController $query->offset($offset)->limit($limit); $items = $query->all(); - $page_info = MyLib::getPageInfo($pagination); - - $group_items = GroupT::getTree(); - $data = []; $data['total'] = $total; $data['rows'] = []; @@ -7759,12 +7755,26 @@ class FinanceController extends \frontend\controllers\UserBaseController ]); } - public function actionReceiptLirun() + public function actionReceiptLirun() { + $company_items = InsurerCompany2T::find()->all(); + $group_items = GroupT::getTree((int)$this->my->group_id); + if($this->my->id == 1) + $group_items = GroupT::getTree(); + + return $this->render('receipt-lirun',[ + 'company_items' => $company_items, + 'group_items' => $group_items + ]); + } + + public function actionReceiptLirunJson() { + Yii::$app->response->format = Response::FORMAT_JSON; set_time_limit(0); ini_set('memory_limit', '3072M'); $request = Yii::$app->request; - $page = $request->get('page', 1); + $offset = $request->get('offset', 0); + $limit = $request->get('limit', 10); $insurer_type = $request->get('insurer_type', 0); $begin_date = $request->get('begin_date',date('Y-m-d')); $end_date = $request->get('end_date',date('Y-m-d')); @@ -7782,7 +7792,7 @@ class FinanceController extends \frontend\controllers\UserBaseController //级别 $group_id = $request->get('group_id'); $group_items = GroupT::getTree((int)$this->my->group_id); - if($this->my->id == 1 || $this->my->username=='6002' || $this->my->username=='7053') + if($this->my->id == 1) $group_items = GroupT::getTree(); $group_ids[] = $group_id; @@ -7793,14 +7803,10 @@ class FinanceController extends \frontend\controllers\UserBaseController $group_ids[] = $group_info->id; } } -// var_dump($group_ids); - - if ($page < 1) $page = 1; $query = CaiwuT::find() ->leftJoin(OrderT::tableName(), "order_t.id=caiwu_t.order_id") ->where('order_t.status_id>1'); -// ->orderBy('order_t.print_date DESC'); switch ($sort_key) { case 'total': @@ -7828,20 +7834,20 @@ class FinanceController extends \frontend\controllers\UserBaseController break; } - $query = $query->orderBy($sort); + $query->orderBy($sort); if( $insurer_type != 0) { - $query = $query->andWhere('caiwu_t.insurer_type='.$insurer_type); + $query->andWhere('caiwu_t.insurer_type='.$insurer_type); } if( $company_id > 0) { - $query = $query->andWhere('order_t.company_id='.$company_id); + $query->andWhere('order_t.company2_id='.$company_id); } if ($username != "") { // $userdata = UserT::findOne(['username'=>$username]); $userdata = UserT::find()->where('username="'.$username.'"')->andwhere('is_leave=0')->one(); if($userdata){ - $query = $query->andWhere('caiwu_t.user_id = ' . $userdata->id . ''); + $query->andWhere('caiwu_t.user_id = ' . $userdata->id . ''); } } @@ -7849,7 +7855,7 @@ class FinanceController extends \frontend\controllers\UserBaseController // $userdata = UserT::findOne(['username'=>$username]); $userdata = UserT::find()->where('username="'.$hebaoname.'"')->andwhere('is_leave=0')->one(); if($userdata){ - $query = $query->andWhere('order_t.op1_id = ' . $userdata->id . ''); + $query->andWhere('order_t.op1_id = ' . $userdata->id . ''); } } @@ -7857,57 +7863,49 @@ class FinanceController extends \frontend\controllers\UserBaseController // $userdata = UserT::findOne(['username'=>$username]); $userdata = UserT::find()->where('username="'.$zbname.'"')->andwhere('is_leave=0')->one(); if($userdata){ - $query = $query->andWhere('order_t.op2_id = ' . $userdata->id . ''); + $query->andWhere('order_t.op2_id = ' . $userdata->id . ''); } } if ($car_no != "") { - $query = $query->andWhere('caiwu_t.car_no like "%' . $car_no . '%"'); + $query->andWhere('caiwu_t.car_no like "%' . $car_no . '%"'); } if ($insurer_no != "") { - $query = $query->andWhere('caiwu_t.insurer_no like "' . $insurer_no . '%"'); + $query->andWhere('caiwu_t.insurer_no like "' . $insurer_no . '%"'); } if ($status > 0) { if ($status == 1) { - $query = $query->andWhere('r_date="" or r_date is null'); + $query->andWhere('r_date="" or r_date is null'); } if ($status == 2) { - $query = $query->andWhere('r_date<>"" and total_dis=0'); + $query->andWhere('r_date<>"" and total_dis=0'); } if($status == 3) { - $query = $query->andWhere('r_date<>"" and total_dis<>0'); + $query->andWhere('r_date<>"" and total_dis<>0'); } } if ($begin_date != "") { - $query = $query->andWhere('order_t.print_date>="' . $begin_date . '"'); + $query->andWhere('order_t.print_date>="' . $begin_date . '"'); } if ($end_date != "") { - $query = $query->andWhere('order_t.print_date<="' . $end_date . '"'); + $query->andWhere('order_t.print_date<="' . $end_date . '"'); } if ($r_begin_date != "") { - $query = $query->andWhere('caiwu_t.r_date>="' . $r_begin_date . '"'); + $query->andWhere('caiwu_t.r_date>="' . $r_begin_date . '"'); } if ($r_end_date != "") { - $query = $query->andWhere('caiwu_t.r_date<="' . $r_end_date . '"'); + $query->andWhere('caiwu_t.r_date<="' . $r_end_date . '"'); } //找出$group_id 有多少在职的user_ids // 现在的搜索条件 $userSql = ''; -// if($username != '') { -// $userSql = ' username like "'.$username.'" and '; -// } - //$userSql .= 'is_locked=0 and is_login=1'; $user_items = $this->my->getChildren($userSql); - if($this->my->username == '6002' || $this->my->username == '7053') - $user_items = $this->my->getChildren($userSql,1); $user_items[] = $this->my; $row = array(); foreach($user_items as $user_info) { -// if ($user_info->is_leave == 1) continue; -// var_dump($user_info); if ($group_id > 0) { if (!in_array($user_info->group_id, $group_ids)) { continue; @@ -7918,17 +7916,13 @@ class FinanceController extends \frontend\controllers\UserBaseController } -// var_dump($row); //加上级别筛选 if($group_id > 0){ -// $query = $query->andWhere('order_t.company_id='.$company_id); - $query = $query->andWhere(['in','caiwu_t.user_id',$row]); -// $query = $query->andWhere('caiwu_t.user_id ="' . $group_id . '"'); + $query->andWhere(['in','caiwu_t.user_id',$row]); } $query1 = clone $query; - $item1s = $query1->all(); // echo $query->createCommand()->rawSql; @@ -7943,83 +7937,44 @@ class FinanceController extends \frontend\controllers\UserBaseController $sum_total_dis = $query->sum('total_dis'); - $pagination = new Pagination(['totalCount' => $total, 'pageSize' => 20]); - $pagination->setPage($page - 1); - - $query = $query->offset($pagination->offset)->limit($pagination->limit); + $query = $query->offset($offset)->limit($limit); $items = $query->all(); - $lirun_all = 0; - $gongzi_all = 0; - $liwu_all = 0; - $total1_dis_all = 0; - $bu_dian_all = 0; - $r_bu_dian_all = 0; - foreach($item1s as $item){ - - +// var_dump($items); + $data = []; + $data['total'] = $total; + $data['rows'] = []; + foreach($items as $item) { $order_info = $item->order; - - $total_clear_real = $item->total_clear * $item->total_rate/100; - $total1_dis = $item->insurer_type == 1?($order_info->total1_dis + $order_info->yuangong_money):0; - - $gongzi = $item->insurer_type == 1?$item->getPayOrderUser()->sum('real_pay'):0; + $user_info = $item->user; + $row = $item->toArray(); + $row['username'] = $user_info->username; + $row['company_name'] = $order_info ? $order_info->company2->name : ''; + $row['group_name'] = $user_info->group ? $user_info->group->path : ''; + $row['submit_date'] = $order_info ? $order_info->submit_date : ''; + $row['print_date'] = $order_info ? $order_info->print_date : ''; + if($item->insurer_type == 1) { + $row['insurer_type'] = '商业'; + } else { + $row['insurer_type'] = '交强'; + } + $row['total_real'] = round($item->total * $item->total_rate/100,2); + $row['total_clear_real'] = round($item->total_clear * $item->total_rate/100,2); + $row['bu_dian'] = $item->budian_rate?round($item->budian_rate * $item->total_clear,2) / 100:0; + $row['r_bu_dian'] = $item->insurer_type == 1?round($item->b1_total+$item->b2_total+$item->b3_total,2):0; + $row['total1_dis'] = $item->insurer_type == 1?round($order_info->total1_dis + $order_info->yuangong_money,2):0; $ticket = $item->insurer_type == 1?$order_info->getGiftPrice(1,1):0; $gift = $item->insurer_type == 1?$order_info->getGiftPrice(1,2):0; - $r_bu_dian = $item->insurer_type == 1?($item->b1_total+$item->b2_total+$item->b3_total):0; - $bu_dian = $item->budian_rate?$item->budian_rate * $item->total_clear / 100:0; - $liwu = $ticket + $gift; - - $lirun_all += $total_clear_real + $bu_dian - $total1_dis - $gongzi - $liwu; - - $gongzi_all += $gongzi; - $liwu_all += $liwu; - $total1_dis_all += $total1_dis; - $bu_dian_all += $bu_dian; - $r_bu_dian_all += $r_bu_dian; - + $row['liwu'] = round($ticket + $gift,2); + $row['gongzi'] = $item->insurer_type == 1?round($item->getPayOrderUser()->sum('real_pay'),2):0; + $row['lirun'] = round($row['total_clear_real'] + $row['bu_dian'] - $row['total1_dis'] - $row['gongzi'] - $row['liwu'],2); + $data['rows'][] = $row; } -// var_dump($items); - - $page_info = MyLib::getPageInfo($pagination); - - $company_items = InsurerCompanyT::find()->all(); + return $data; - return $this->render('receipt-lirun', [ - 'items' => $items, - 'username' => $username, - 'hebaoname' => $hebaoname, - 'zbname' => $zbname, - 'page' => $page, - 'car_no' => $car_no, - 'insurer_no' => $insurer_no, - 'status' => $status, - 'begin_date' => $begin_date, - 'end_date' => $end_date, - 'r_begin_date' => $r_begin_date, - 'r_end_date' => $r_end_date, - 'page_info' => $page_info, - 'sort_key' => $sort_key, - 'sort_value' => $sort_value, - 'sum_r_total' => $sum_r_total, - 'sum_total_clear' => $sum_total_clear, - 'sum_total' => $sum_total, - 'sum_total_dis' => $sum_total_dis, - 'company_items' => $company_items, - 'group_id' => $group_id, - 'group_items' => $group_items, - 'company_id' => $company_id, - 'insurer_type' => $insurer_type, - 'lirun_all'=>$lirun_all, - 'gongzi_all'=>$gongzi_all, - 'liwu_all'=>$liwu_all, - 'total1_dis_all'=>$total1_dis_all, - 'bu_dian_all'=>$bu_dian_all, - 'r_bu_dian_all'=>$r_bu_dian_all - ]); } public function actionGongziAllReturnSave() diff --git a/frontend/views/finance/receipt-lirun.php b/frontend/views/finance/receipt-lirun.php index 6192cd6..8ce0da1 100644 --- a/frontend/views/finance/receipt-lirun.php +++ b/frontend/views/finance/receipt-lirun.php @@ -1,289 +1,162 @@ - - - - - - - - - - - -
- - 保险类型 - - 保单号: - 车牌: - 工号:   - - 出单日期: - - -- - -
-
- 回单日期: - - -- - -
保险公司: - 级别: - 排序: - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - $item) { - $start_index = ($page-1)*20+$index; - $order = $item->order; - $users=$item->user->group; - $username=$item->user; - $uname=$username['name']; - $nams=$users['name']; - - $total_real = $item->total * $item->total_rate/100; - $total_clear_real = $item->total_clear * $item->total_rate/100; - $total_dis = round($total_clear_real - $item->r_total,2); - - $order_info = $item->order; - - $total1_dis = $item->insurer_type == 1?($order_info->total1_dis + $order_info->yuangong_money):0; - - $gongzi = $item->insurer_type == 1?$item->getPayOrderUser()->sum('real_pay'):0; - - $ticket = $item->insurer_type == 1?$order_info->getGiftPrice(1,1):0; - $gift = $item->insurer_type == 1?$order_info->getGiftPrice(1,2):0; - -// $bu_dian = $item->insurer_type == 1?($item->b1_total+$item->b2_total+$item->b3_total):0; - $bu_dian = $item->budian_rate?$item->budian_rate * $item->total_clear / 100:0; - - $r_bu_dian = $item->insurer_type == 1?($item->b1_total+$item->b2_total+$item->b3_total):0; - - $liwu = $ticket + $gift; - - $lirun = $total_clear_real + $bu_dian - $total1_dis - $gongzi - $liwu; - - - - - ?> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
序号车牌号保险公司工号级别保单号提单日期出单日期保险类型商业总保费商业净保费手续费比例补点比例应得金额实得金额回款金额补点金额回款补点减免金额礼品礼券工资利润
car_no?>company ? $order->company->name:''?>user->username?>-insurer_no?>submit_date : ''?>print_date : ''?>insurer_type==1?'商业':'交强'?>total?>total_clear?>total_rate?>budian_rate?>r_total?>
- - - - - - - -
- - - - - - - - - - - - - + + + - - \ No newline at end of file +endBlock(); ?>