PaymentOrder.php 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace app\cxinv\model;
  3. use think\Model;use think\model\concern\SoftDelete;
  4. class PaymentOrder extends Base{
  5. use SoftDelete;
  6. protected $createTime='createTime';
  7. protected $updateTime='updateTime';
  8. protected $deleteTime='delete_time';
  9. //CREATE TABLE `cfp_payment_order` (
  10. // `id` int(11) NOT NULL AUTO_INCREMENT,
  11. // `dzNo` varchar(255) NOT NULL COMMENT '对账付款申请编号',
  12. // `cgdNo` varchar(255) NOT NULL COMMENT '关联采购单编号',
  13. // `rela_fee` decimal(18,2) NOT NULL COMMENT '关联金额',
  14. // `status` tinyint(3) NOT NULL COMMENT '状态 0 关联中 1 已付款 2 解除付款 3 取消付款',
  15. // `createTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  16. // `updateTime` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  17. // `delete_time` datetime DEFAULT NULL,
  18. // PRIMARY KEY (`id`)
  19. //) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='付款申请关联订单数据';
  20. protected $schema=[
  21. 'id'=>'int',
  22. 'dzNo'=>'string',
  23. 'cgdNo'=>'string',
  24. 'rela_fee'=>'decimal',
  25. 'status'=>'tinyint',
  26. 'createTime'=>'datetime',
  27. 'updateTime'=>'datetime',
  28. 'delete_time'=>'datetime'
  29. ];
  30. //状态 0 关联中 1 已付款 2 解除付款 3 取消付款',
  31. public static function onAfterWrite(Model $model) : void{
  32. $cgdNo = $model->cgdNo;
  33. $status = $model->status;
  34. $cgdinfo = CgdInfo::where(["sequenceNo"=>$cgdNo,"is_del"=>0,"status"=>1])->findOrEmpty();
  35. if($cgdinfo->isEmpty()) return;
  36. switch ($status){
  37. case 0:
  38. $cgdinfo->wpay_fee= $cgdinfo->wpay_fee-$model->rela_fee;
  39. break;
  40. case 1:
  41. $cgdinfo->apay_fee= $cgdinfo->apay_fee+$model->rela_fee;
  42. break;
  43. case 2:
  44. $cgdinfo->apay_fee= $cgdinfo->apay_fee-$model->rela_fee;
  45. $cgdinfo->wpay_fee= $cgdinfo->wpay_fee+$model->rela_fee;
  46. break;
  47. case 3:
  48. $cgdinfo->wpay_fee= $cgdinfo->wpay_fee+$model->rela_fee;
  49. break;
  50. default:
  51. return;
  52. }
  53. $cgdinfo->save();
  54. }
  55. }