Commit 5fd91b19 authored by hujun's avatar hujun

实收金额汇总

# Conflicts: # application/index/controller/Finance.php
parent ce23a501
...@@ -670,7 +670,7 @@ class Finance extends Basic ...@@ -670,7 +670,7 @@ class Finance extends Basic
} }
$service_ = new OrderLogService(); $service_ = new OrderLogService();
$data = $service_->selectListByOrderNoV2($params["order_id"]); $data = $service_->selectListByOrderNo($params["order_id"]);
return $this->response("200", "request success", $data); return $this->response("200", "request success", $data);
} }
...@@ -1642,19 +1642,49 @@ class Finance extends Basic ...@@ -1642,19 +1642,49 @@ class Finance extends Basic
$where['b.name'] = [ 'like', '%' . $this->params['name'] . '%' ]; $where['b.name'] = [ 'like', '%' . $this->params['name'] . '%' ];
} }
$m_bargain = new OPartialCommission(); if (!empty($this->params['confirm_date'])) {
$where['a.confirm_date'] = ['<=', $this->params['confirm_date'] . ' 23:59:59'];
$where['a.confirm_status'] = 1;
}
$m_partial = new OPartialCommission();
$m_tax = new OTaxes();
$fields = 'd.income_time,c.create_time,c.id,a.agent_id,b.name,b.phone'; $fields = 'd.income_time,c.create_time,c.id,a.agent_id,b.name,b.phone';
$commission_fields = 'sum(practical_fee) as practical_fee,sum(cash) as cash,sum(real_fee) as real_fee,sum(service_charge) as service_charge,
sum(charity_fund) as charity_fund';
if (!empty($this->params['confirm_date'])) {
$commission_where['a.confirm_date'] = ['between time', [ $operation_start_data, $this->params['confirm_date'] . ' 23:59:59' ]];
}
$commission_where['b.income_time'] = ['between time', [ $operation_start_data, $operation_end_data ]];
$commission_where['confirm_status'] = 1;
$tax_where['operation_date'] = ['between time', [ $operation_start_data, $operation_end_data ]];
$tax_where['is_del'] = 0;
if (empty($this->params['excel']) && $this->params['excel'] != 1) { if (empty($this->params['excel']) && $this->params['excel'] != 1) {
$result_data = $m_bargain->getCommissionTotalListV2($pageNo, $pageSize, 'a.agent_id desc', $fields, $where, $operation_start_data, $operation_end_data); $result_data = $m_partial->getCommissionTotalListV2($pageNo, $pageSize, 'a.agent_id desc', $fields, $where, $operation_start_data, $operation_end_data);
if ($result_data['status'] == 'successful') { if ($result_data['status'] == 'successful') {
$data['data']['list'] = $result_data['data']; $list = [];
foreach ($data['data']['list'] as $k => $v) { foreach ($result_data['data'] as $k => $v) {
$data['data']['list'][$k]['income_date'] = $income_date; $list[$k] = $v;
$data['data']['list'][$k]['operation_date'] = $operation_date; $commission_where['agent_id'] = $v['agent_id'];
$data['data']['list'][$k]['over_fee'] = $v['practical_fee'] - $v['fee']; $commission_data = $m_partial->sumCommission($commission_fields, $commission_where);
} $list[$k]['income_date'] = $income_date;
$list[$k]['operation_date'] = $operation_date;
$list[$k]['practical_fee'] = $commission_data['practical_fee'];
$list[$k]['cash'] = $commission_data['cash'];
$list[$k]['real_fee'] = $commission_data['real_fee'];
$list[$k]['service_charge'] = $commission_data['service_charge'];
$list[$k]['charity_fund'] = $commission_data['charity_fund'];
$data['data']['total'] = $m_bargain->getCommissionTotalListTotalV2($where); $tax_where['agent_id'] = $v['agent_id'];
$fee = $m_tax->sumField('fee', $tax_where);
$list[$k]['fee'] = $fee;
$list[$k]['over_fee'] = $commission_data['practical_fee'] - $fee;
}
$data['data']['list'] = $list;
$data['data']['total'] = $m_partial->getCommissionTotalListTotalV2($where);
$data['data']['total_money'] = $m_partial->getCommissionTotalField('a.practical_fee', $where);
} else { } else {
$data['code'] = 101; $data['code'] = 101;
$data['msg'] = '内部错误'.$result_data['msg']; $data['msg'] = '内部错误'.$result_data['msg'];
...@@ -2806,9 +2836,9 @@ class Finance extends Basic ...@@ -2806,9 +2836,9 @@ class Finance extends Basic
*/ */
public function collectingBill() { public function collectingBill() {
$params = $this->params; $params = $this->params;
if (!isset($params["agent_id"]) || !isset($params["report_id"]) || if (empty($params["agent_id"]) || empty($params["report_id"]) ||
!isset($params["order_id"]) || !isset($params["order_no"]) | !isset($params["collecting_bill"]) || empty($params["order_id"]) || empty($params["order_no"]) | empty($params["collecting_bill"]) ||
!isset($params["house_number"]) || !isset($params["industry_type"]) ) { empty($params["house_number"]) || empty($params["industry_type"]) ) {
return $this->response("101", "请求参数错误"); return $this->response("101", "请求参数错误");
} }
......
...@@ -332,6 +332,17 @@ class OPartialCommission extends BaseModel ...@@ -332,6 +332,17 @@ class OPartialCommission extends BaseModel
return $result; return $result;
} }
public function getCommissionTotalField($filed, $params) {
return $this->alias('a')
->join('a_agents b', 'a.agent_id = b.id', 'left')
->join('o_bargain c', 'a.bargain_id = c.id', 'left')
->join('o_real_income d', 'a.real_income_id = d.id', 'left')
->join('o_taxes f', 'a.bargain_id = f.bargain_id', 'left')
->where($params)
->group('b.id')
->sum($filed);
}
/** /**
* @param $params * @param $params
* @return int|string * @return int|string
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment