diff --git a/app/adminapi/controller/financial/FinancialStatisticsController.php b/app/adminapi/controller/financial/FinancialStatisticsController.php new file mode 100644 index 000000000..6732b411c --- /dev/null +++ b/app/adminapi/controller/financial/FinancialStatisticsController.php @@ -0,0 +1,170 @@ +request->get('year',date('Y')); + //统计合同总数 + $total_number = MarketingContract::where('status',1)->count(); + //年度合同总数 + $year_number = MarketingContract::where('status',1)->whereYear('create_time',$year)->count(); + //统计总签约金额 + $total_signed_amount = MarketingContract::where('status',1)->sum('signed_amount'); + //统计年度签约金额 + $year_signed_amount = MarketingContract::where('status',1)->whereYear('create_time',$year)->sum('signed_amount'); + $column = ['1','2','3','4','5','6','7','8','9','10','11','12']; + $number_series = [ + 'name' => '合同数量', + 'data' => [] + ]; + $signed_series = [ + 'name' => '签约金额', + 'data' => [] + ]; + foreach($column as &$v){ + $number_series['data'][] = MarketingContract::where('status',1)->whereMonth('create_time',$year.'-'.$v)->count(); + $signed_series['data'][] = MarketingContract::where('status',1)->whereMonth('create_time',$year.'-'.$v)->sum('signed_amount'); + $v = $v.'月'; + } + $result = compact('total_number','year_number','total_signed_amount','year_signed_amount','column','number_series','signed_series'); + return $this->success('success',$result); + } + + public function invoice(){ + $year = $this->request->get('year',date('Y')); + //总开票金额 + $total_invoice_amount = FinancialInvoice::sum('apply_amount'); + //年度开票金额 + $year_invoice_amount = FinancialInvoice::whereYear('create_time',$year)->sum('apply_amount'); + //总到账金额 + $total_refund_amount = FinancialRefund::sum('amount'); + //年度到账金额 + $year_refund_amount = FinancialRefund::whereYear('date',$year)->sum('amount'); + //总结算金额 + $total_settlement_amount = FinancialSettlement::sum('amount'); + //年度结算金额 + $year_settlement_amount = FinancialSettlement::whereYear('date',$year)->sum('amount'); + $column = ['1','2','3','4','5','6','7','8','9','10','11','12']; + $invoice_series = [ + 'name' => '开票金额', + 'data' => [] + ]; + $refund_series = [ + 'name' => '到账金额', + 'data' => [] + ]; + $settlement_series = [ + 'name' => '结算金额', + 'data' => [] + ]; + foreach($column as &$v){ + $invoice_series['data'][] = FinancialInvoice::whereMonth('create_time',$year.'-'.$v)->sum('apply_amount'); + $refund_series['data'][] = FinancialRefund::whereMonth('date',$year.'-'.$v)->sum('amount'); + $settlement_series['data'][] = FinancialSettlement::whereMonth('date',$year.'-'.$v)->sum('amount'); + $v = $v.'月'; + } + $result = compact('total_invoice_amount','year_invoice_amount','total_refund_amount','year_refund_amount','total_settlement_amount','year_settlement_amount', + 'column','invoice_series','refund_series','settlement_series'); + return $this->success('success',$result); + } + + public function bid(){ + $year = $this->request->get('year',date('Y')); + //总的保证金申请 + $total_margin_apply = FinancialBidMargin::sum('bid_margin'); + //年度保证金申请 + $year_margin_apply = FinancialBidMargin::whereYear('create_time',$year)->sum('bid_margin'); + //总的保证金回收 + $total_margin_recovery = FinancialBidMarginRecovery::sum('pay_amount'); + //年度保证金回收 + $year_margin_recovery = FinancialBidMarginRecovery::whereYear('create_time',$year)->sum('pay_amount'); + //总的履约金申请 + $total_performance_money_apply = FinancialPerformanceMoneyApply::sum('apply_amount'); + //年度履约金申请 + $year_performance_money_apply = FinancialPerformanceMoneyApply::whereYear('create_time',$year)->sum('apply_amount'); + //总的履约金回收 + $total_performance_money_recovery = FinancialPerformanceMoneyRecovery::sum('recovery_amount'); + //年度履约金回收 + $year_performance_money_recovery = FinancialPerformanceMoneyRecovery::whereYear('create_time',$year)->sum('recovery_amount'); + $column = ['1','2','3','4','5','6','7','8','9','10','11','12']; + $margin_apply_series = [ + 'name' => '保证金申请', + 'data' => [] + ]; + $margin_recovery_series = [ + 'name' => '保证金回收', + 'data' => [] + ]; + $performance_money_apply_series = [ + 'name' => '履约金申请', + 'data' => [] + ]; + $performance_money_recovery_series = [ + 'name' => '履约金回收', + 'data' => [] + ]; + foreach($column as &$v){ + $margin_apply_series['data'][] = FinancialBidMargin::whereMonth('create_time',$year.'-'.$v)->sum('bid_margin'); + $margin_recovery_series['data'][] = FinancialBidMarginRecovery::whereMonth('create_time',$year.'-'.$v)->sum('pay_amount'); + $performance_money_apply_series['data'][] = FinancialPerformanceMoneyApply::whereMonth('create_time',$year.'-'.$v)->sum('apply_amount'); + $performance_money_recovery_series['data'][] = FinancialPerformanceMoneyRecovery::whereMonth('create_time',$year.'-'.$v)->sum('recovery_amount'); + $v = $v.'月'; + } + $result = compact('total_margin_apply','year_margin_apply','total_margin_recovery','year_margin_recovery','total_performance_money_apply','year_performance_money_apply','total_performance_money_recovery','year_performance_money_recovery', + 'column','margin_apply_series','margin_recovery_series','performance_money_apply_series','performance_money_recovery_series'); + return $this->success('success',$result); + } + + public function fund(){ + $year = $this->request->get('year',date('Y')); + //总的用款 + $total_using = FinancialUsingFunds::sum('has_pay_amount'); + //年度用款 + $year_using = FinancialUsingFunds::whereYear('create_time',$year)->sum('has_pay_amount'); + //总借款 + $total_borrow = FinancialBorrowMoney::sum('amount'); + //年度借款 + $year_borrow = FinancialBorrowMoney::whereYear('create_time',$year)->sum('amount'); + //总还款 + $total_repayment = FinancialRepayment::sum('amount'); + //年度还款 + $year_repayment = FinancialRepayment::whereYear('create_time',$year)->sum('amount'); + $column = ['1','2','3','4','5','6','7','8','9','10','11','12']; + $using_series = [ + 'name' => '用款', + 'data' => [] + ]; + $borrow_series = [ + 'name' => '借款', + 'data' => [] + ]; + $repayment_series = [ + 'name' => '还款', + 'data' => [] + ]; + foreach($column as &$v){ + $using_series['data'][] = FinancialUsingFunds::whereMonth('create_time',$year.'-'.$v)->sum('has_pay_amount'); + $borrow_series['data'][] = FinancialBorrowMoney::whereMonth('create_time',$year.'-'.$v)->sum('amount'); + $repayment_series['data'][] = FinancialRepayment::whereMonth('create_time',$year.'-'.$v)->sum('amount'); + $v = $v.'月'; + } + $result = compact('total_using','year_using','total_borrow','year_borrow','total_repayment','year_repayment', + 'column','using_series','borrow_series','repayment_series'); + return $this->success('success',$result); + } + } \ No newline at end of file