123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- <?php
- namespace app\cxinv\model;
- class Pay extends Base
- {
- protected $schema = [
- 'id' =>'bigint',
- 'payNo' =>'varchar',
- 'apply_id' =>'int',
- 'apply_name' =>'varchar',
- 'supplierNo' =>'varchar',
- 'supplierName' =>'varchar',
- 'companyNo' =>'varchar',
- 'companyName' =>'varchar',
- 'pay_type' =>'tinyint',
- 'total_fee' =>'decimal',
- 'apay_fee' =>'decimal',
- 'pay_fee' =>'decimal',
- 'wpay_fee' =>'decimal',
- 'ainv_fee' =>'decimal',
- 'inv_fee' =>'decimal',
- 'winv_fee' =>'decimal',
- 'inv_status' =>'tinyint',
- 'pay_status' =>'tinyint',
- 'status' =>'tinyint',
- 'is_comon' =>'tinyint',
- 'inv_tag' =>'tinyint',
- 'pay_tag' =>'tinyint',
- 'inv_tag_fee' =>'decimal',
- 'pay_tag_fee' =>'decimal',
- 'remark' =>'varchar',
- 'is_del' =>'tinyint',
- 'addtime' =>'datetime',
- 'updatetime' =>'datetime',
- ];
- protected $createTime = 'addtime';
- protected $updateTime = 'updatetime';
- public static $status=['待提交','待买方审核','审核通过','审核驳回','对账单无效'];
-
- public static function addInv($payNo,$payfee){
- $pay = self::where(['payNo'=>$payNo,'status'=>2,'is_del'=>0])->findOrEmpty();
- if($pay->isEmpty())throw new \Exception("对账单{$payNo}不存在");
- if($pay->winv_fee<$payfee)throw new \Exception("对账单{$payNo}未开票金额不足");
- $pay->winv_fee=$pay->winv_fee-$payfee;
- $pay->inv_fee=$pay->inv_fee+$payfee;
- $pay->inv_status= 2;
- $pay->save();
- }
-
- public static function addAinv($payNo,$payfee){
- $pay = self::where(['payNo'=>$payNo,'status'=>2,'is_del'=>0])->findOrEmpty();
- if($pay->isEmpty())throw new \Exception("对账单{$payNo}不存在");
- if($pay->inv_fee<$payfee)throw new \Exception("对账单{$payNo}开票中金额不足");
- $pay->inv_fee=$pay->inv_fee-$payfee;
- $pay->ainv_fee=$pay->ainv_fee+$payfee;
- $pay->inv_status= $pay->winv_fee==0 && $pay->inv_fee==0 ? 3 : 2;
- $pay->save();
- }
-
- public static function subAinv($payNo,$payfee){
- $pay = self::where(['payNo'=>$payNo,'status'=>2,'is_del'=>0])->findOrEmpty();
- if($pay->isEmpty())throw new \Exception("对账单{$payNo}不存在");
- if($pay->ainv_fee<$payfee)throw new \Exception("对账单{$payNo}开票金额不足");
- $pay->ainv_fee=$pay->ainv_fee-$payfee;
- $pay->winv_fee=$pay->winv_fee+$payfee;
- $pay->inv_status= $pay->ainv_fee==0 && $pay->inv_fee==0 ? 1 : 2;
- $pay->save();
- }
-
- public static function subInv($payNo,$payfee){
- $pay = self::where(['payNo'=>$payNo,'status'=>2,'is_del'=>0])->findOrEmpty();
- if($pay->isEmpty())throw new \Exception("对账单{$payNo}不存在");
- if($pay->inv_fee<$payfee)throw new \Exception("对账单{$payNo}开票中金额不足");
- $pay->inv_fee=$pay->inv_fee-$payfee;
- $pay->winv_fee=$pay->winv_fee+$payfee;
- $pay->inv_status= $pay->ainv_fee==0 && $pay->inv_fee==0 ? 1 : 2;
- $pay->save();
- }
- }
|