提交 5f211570 authored 作者: chengye's avatar chengye

test

上级 3d2ae57c
...@@ -13,27 +13,23 @@ use think\facade\Log; ...@@ -13,27 +13,23 @@ use think\facade\Log;
class WriteOff extends Controller class WriteOff extends Controller
{ {
public function writeOffFromPayment($account_id,$payment_id){ public function writeOffFromPayment($payment_id){
Log::info('触发销账:'.$account_id.' | '.$payment_id); Log::info('触发销账:'.$payment_id);
//获取缴费单对象 //获取缴费单对象
$payment = EmPayment::where('payment_id','=',$payment_id)->find(); $payment = EmPayment::where('payment_id','=',$payment_id)->find();
//获取关联的账单对象 //获取关联的账单对象
$invs = (new EmInvoice())->alias('ei')->field('ei.invoice_id') $invs = (new EmInvoice())->alias('a')->field('a.invoice_id')
->leftJoin(['em_payment_invoice'=>'epi'],'epi.invoice_id = ei.invoice_id') ->join(['em_payment_invoice'=>'b'],'b.invoice_id = a.invoice_id')
->where('epi.payment_id','=',$payment_id) ->where('b.payment_id','=',$payment_id)
->where('ei.payment_balance','neq',0) ->where('a.payment_balance','neq',0)
->order('ei.invoice_id asc') ->order('a.invoice_id asc')
->select(); ->select();
$invsArr = []; $invsArr = [];
//更新缴费单状态 //如果存在账单关联对象
if($invs->isEmpty()){ if(!$invs->isEmpty()){
$payment->status = 4;
$payment->save();
return '审核成功';
} else {
foreach ($invs as $inv){ foreach ($invs as $inv){
$invsArr[] = $inv->invoice_id; $invsArr[] = $inv->invoice_id;
} }
...@@ -45,8 +41,9 @@ class WriteOff extends Controller ...@@ -45,8 +41,9 @@ class WriteOff extends Controller
//如果可以完全销账 则继续销账 //如果可以完全销账 则继续销账
if($payment->balance > $payments_balance){ if($payment->balance > $payments_balance){
$invs = (new EmInvoice())->field('invoice_id') $invs = (new EmInvoice())->field('invoice_id')
->where('account_id','=',$account_id) ->where('account_id','=',$payment->account_id)
->where('payment_balance','neq',0) ->where('payment_balance','neq',0)
->whereNotIn('invoice_id',$invsArr)
->order('invoice_id asc') ->order('invoice_id asc')
->select(); ->select();
if(!$invs->isEmpty()) { if(!$invs->isEmpty()) {
...@@ -56,6 +53,7 @@ class WriteOff extends Controller ...@@ -56,6 +53,7 @@ class WriteOff extends Controller
} }
} }
$paymentIds[] = $payment->payment_id; $paymentIds[] = $payment->payment_id;
//处理账户金额 //处理账户金额
...@@ -82,10 +80,12 @@ class WriteOff extends Controller ...@@ -82,10 +80,12 @@ class WriteOff extends Controller
foreach ($payments as $key => $payment){ foreach ($payments as $key => $payment){
if($payment->balance == 0) continue; if($payment->balance == 0) continue;
foreach ($invs as $index => $inv) { foreach ($invs as $index => $inv) {
$balanceMode = new EmPaymentInvoiceBalance();
$balanceMode->payment_id = $payment->payment_id;
if ($inv->payment_balance == 0) continue; if ($inv->payment_balance == 0) continue;
$balanceMode = new EmPaymentInvoiceBalance();
$balanceMode->payment_id = $payment->payment_id;
$balanceMode->invoice_id = $inv->invoice_id; $balanceMode->invoice_id = $inv->invoice_id;
//如果该缴费单可以完全消除当前账单额度 //如果该缴费单可以完全消除当前账单额度
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论