OrderCpLogModel.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. /**
  3. * OrderCpLogModel.php UTF-8
  4. *
  5. *
  6. * @date : 2018/4/28 2:32
  7. *
  8. * @license 这不是一个自由软件,未经授权不许任何使用和传播。
  9. * @author : wuyonghong <wyh@huosdk.com>
  10. * @version : HUOSDK 8.0
  11. */
  12. namespace huo\model\log;
  13. use huo\model\common\CommonModel;
  14. class OrderCpLogModel extends CommonModel {
  15. protected $table_prefix = 'h_log_pay_cp_';
  16. public function insertLog($data, $replace = false, $get_last_insert_id = true) {
  17. $_data['pay_id'] = get_val($data, 'pay_id', 0);
  18. $_data['order_id'] = get_val($data, 'order_id', '');
  19. $_data['cp_order_id'] = get_val($data, 'cp_order_id', 0);
  20. $_data['status'] = get_val($data, 'status', '');
  21. $_data['cp_status'] = get_val($data, 'cp_status', 0);
  22. $_data['cp_payback_url'] = get_val($data, 'cp_payback_url', '');
  23. $_data['params'] = get_val($data, 'params', '');
  24. $_data['ext'] = get_val($data, 'ext', '');
  25. $_data['notify_cnt'] = get_val($data, 'notify_cnt', '');
  26. $_data['create_time'] = time();
  27. $this->checkTable();
  28. return parent::insertLog($_data, $replace, $get_last_insert_id);
  29. }
  30. /**
  31. * 计算在哪张表
  32. *
  33. * @return \Think\Model
  34. */
  35. public function computeTable() {
  36. $_date = date('Ym');
  37. $_table = $this->table_prefix.$_date;
  38. return $this->table($_table);
  39. }
  40. function checkTable() {
  41. $_date = date('Ym');
  42. $this->table = $this->table_prefix.$_date;
  43. $_sql = "CREATE TABLE IF NOT EXISTS `$this->table` (";
  44. $_sql .= " `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID',";
  45. $_sql .= " `pay_id` int(11) unsigned NOT NULL COMMENT '对应pay表中的id',";
  46. $_sql .= " `order_id` varchar(64) NOT NULL DEFAULT '' COMMENT '订单号',";
  47. $_sql .= " `cp_order_id` varchar(64) NOT NULL DEFAULT '' COMMENT 'CP订单号', ";
  48. $_sql .= " `status` tinyint(2) NOT NULL DEFAULT '1' COMMENT '充值成功标志,1为待处理,2为成功,3为失败',";
  49. $_sql .= " `cp_status` tinyint(2) NOT NULL DEFAULT '1' COMMENT '充值回调标志,1为待处理,2为成功,3为失败',";
  50. $_sql .= " `cp_payback_url` varchar(255) NOT NULL DEFAULT '' COMMENT 'CP回调地址',";
  51. $_sql .= " `params` varchar(1023) NOT NULL DEFAULT '' COMMENT 'CP回调参数', ";
  52. $_sql .= " `ext` varchar(255) NOT NULL DEFAULT '' COMMENT 'CP附加参数',";
  53. $_sql .= " `notify_cnt` int(11) NOT NULL DEFAULT '0' COMMENT '通知次数',";
  54. $_sql .= " `create_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '充值时间',";
  55. $_sql .= " PRIMARY KEY (`id`),";
  56. $_sql .= " KEY `lpc_order_unique` (`order_id`)";
  57. $_sql .= " ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='通知CP记录表';";
  58. return $this->execute($_sql);
  59. }
  60. }