20251113020336_profit_share_order.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. declare(strict_types=1);
  3. use Phinx\Migration\AbstractMigration;
  4. final class ProfitShareOrder extends AbstractMigration
  5. {
  6. /**
  7. * Change Method.
  8. *
  9. * Write your reversible migrations using this method.
  10. *
  11. * More information on writing migrations is available here:
  12. * https://book.cakephp.org/phinx/0/en/migrations.html#the-change-method
  13. *
  14. * Remember to call "create()" or "update()" and NOT "save()" when working
  15. * with the Table class.
  16. */
  17. public function change(): void
  18. {
  19. $this->table('profit_share_order', ['comment' => '分润订单表'])
  20. ->addColumn('out_separate_no', 'string', ['length' => 32,'comment' => '商户分账指令流水号'])
  21. ->addColumn('merchant_no', 'string', ['length' => 32,'comment' => '商户号'])
  22. ->addColumn('user_id', 'integer', ['signed' => false,'comment' => '用户id'])
  23. ->addColumn('total_amt', 'integer', ['signed' => false,'comment' => '订单金额(分)'])
  24. ->addColumn('lkl_org_no', 'string', ['length' => 16,'comment' => '拉卡拉机构编号'])
  25. ->addColumn('cal_type', 'integer', ['signed' => false,'comment' => '分账计算类型 0- 按照指定金额,1- 按照指定比例。默认 0'])
  26. ->addColumn('recv_merchant_no', 'string', ['length' => 32,'comment' => '接收方商户号'])
  27. ->addColumn('recv_no', 'string', ['length' => 32,'comment' => '分账接收方编号'])
  28. ->addColumn('separate_value', 'decimal', ['precision' => 10, 'scale' => 2,'comment' => '分账数值 calType为0时,按照固定金额分账,单位:分 calType为1时,按照比例分账,单位:百分比的小数值,比如0.55 (55%)'])
  29. ->addColumn('separate_no', 'string', ['length' => 32,'comment' => '分账指令流水号'])
  30. ->addColumn('status', 'enum', ['values' => ['PENDING','PROCESSING', 'ACCEPTED', 'SUCCESS', 'FAIL'], 'comment' => '分账状态 待处理: PENDING 处理中:PROCESSING, 已受理:ACCEPTED, 成功:SUCCESS, 失败:FAIL'])
  31. ->addColumn('fee_amt', 'integer', ['signed' => false,'comment' => '分账手续费(分)'])
  32. ->addColumn('fail_reason', 'string', ['length' => 256,'comment' => '分账失败原因'])
  33. ->addColumn('cmd_type', 'enum', ['values' => ['SEPARATE', 'CANCEL', 'FALLBACK'], 'comment' => '指令类型'])
  34. ->addTimestamps('create_time', 'update_time')
  35. ->addIndex(['out_separate_no'], ['unique' => true])
  36. ->create();
  37. }
  38. }