open_payment_order.ts 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';
  2. import { BaseEntity } from '@cool-midway/core';
  3. /**
  4. * 订单管理
  5. */
  6. @Entity('open_payment_order')
  7. export class OpenPaymentOrderEntity extends BaseEntity {
  8. /*
  9. * 申请收款账户
  10. * 查询申请列表
  11. * 查询收款账户列表
  12. */
  13. @Column({ length: 100, comment: '商户编号', default: '' })
  14. mch_id: string;
  15. @Column({ length: 100, comment: '用户编号', default: '' })
  16. account_id?: string;
  17. @Column({ length: 100, comment: '转出账户', default: '' })
  18. from_account_id?: string;
  19. @Column({ length: 100, comment: '转入账户', default: '' })
  20. to_account_id?: string;
  21. @Column({ length: 100, comment: '订单编号', default: '' })
  22. request_id?: string;
  23. @Column({ length: 100, comment: '数据编号', default: '' })
  24. event_id?: string;
  25. @Column({ length: 100, comment: '币种', default: '' })
  26. currency?: string;
  27. @Column({ comment: '金额', type: 'decimal', precision: 20, scale: 6, default: 0 })
  28. amount?: number;
  29. @Column({ length: 100, comment: '目标币种', default: '' })
  30. target_currency?: string;
  31. @Column({ comment: '目标金额', type: 'decimal', precision: 20, scale: 6, default: 0 })
  32. target_amount?: number;
  33. @Column({ comment: '历史余额', type: 'decimal', precision: 20, scale: 6, default: 0 })
  34. before_balance?: number;
  35. @Column({ comment: '余额', type: 'decimal', precision: 20, scale: 6, default: 0 })
  36. balance?: number;
  37. @Column({ comment: '手续费', type: 'decimal', precision: 20, scale: 6, default: 0 })
  38. fee?: number;
  39. @Column({ comment: '渠道手续费', type: 'decimal', precision: 20, scale: 6, default: 0 })
  40. currency_fee?: number;
  41. @Column({ comment: '汇率', type: 'decimal', precision: 20, scale: 6, default: 0 })
  42. exchange_rate?: number;
  43. @Column({ length: 100, comment: 'credit or debit', default: '' })
  44. type?: string;
  45. @Column({ length: 100, comment: '订单类型', default: '' })
  46. order_type?: OrderType; // 使用枚举类型
  47. @Column({ length: 100, comment: '支付类型', default: '' })
  48. payment_type?: string; // 使用枚举类型
  49. @Column({ type: 'json', comment: '扩展信息' }) // 定义为 JSON 类型
  50. additional_info?: any;
  51. @Column({ length: 100, comment: '订单编号', default: '' })
  52. order_id?: string;
  53. @Column({ length: 100, comment: '订单状态', default: '' })
  54. status?: string;
  55. @Column({ length: 100, comment: '客户来源', default: '' })
  56. source?: string;
  57. @Column({ comment: '更新次数', default: 0 })
  58. update_count: number;
  59. }
  60. // 定义枚举类型
  61. export enum OrderType {
  62. CURRENCY_EXCHANGE = 'CURRENCY_EXCHANGE', // 换汇
  63. ACQUIRING_PAYMENT = 'ACQUIRING_PAYMENT', // 收单支付订单
  64. ACQUIRING_REFUND = 'ACQUIRING_REFUND', // 收单退款订单
  65. PAYMENT = 'PAYMENT', // 付款
  66. TRANSFER = 'TRANSFER', // 转账
  67. DEPOSIT = 'DEPOSIT', // 入账
  68. EXCHANGE = 'EXCHANGE', // 换汇
  69. TRANSACTION_FEE_ORDER = 'TRANSACTION_FEE_ORDER', // 交易手续费订单
  70. }
  71. export const OrderTypeEnum = {
  72. CURRENCY_EXCHANGE: '换汇',
  73. ACQUIRING_PAYMENT: '收单支付订单',
  74. ACQUIRING_REFUND: '收单退款订单',
  75. PAYMENT: '付款',
  76. TRANSFER: '转账',
  77. DEPOSIT: '入账',
  78. EXCHANGE: '换汇',
  79. TRANSACTION_FEE_ORDER: '交易手续费订单',
  80. };
  81. export const StatusTypeEnum = {
  82. PENDING: '处理中',
  83. SUCCESS: '成功',
  84. FAILED: '失败',
  85. };