refill_order.model.php 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <?php
  2. use const mtopcard\PetroChinaCard;
  3. use const mtopcard\PhoneCard;
  4. use const mtopcard\SinopecCard;
  5. defined('InShopNC') or exit('Access Invalid!');
  6. class refill_orderModel extends Model
  7. {
  8. public function __construct($table = null)
  9. {
  10. parent::__construct($table);
  11. }
  12. public function getOrderInfo($condition = [], $fields = '*', $master = false, $lock = false)
  13. {
  14. $order_info = $this->table('refill_order')->field($fields)->where($condition)->order('')->master($master)->lock($lock)->find();
  15. if (empty($order_info)) {
  16. return [];
  17. }
  18. return $order_info;
  19. }
  20. public function add_refill($params)
  21. {
  22. return $this->table('refill_order')->insert($params);
  23. }
  24. public function edit($order_id,$data)
  25. {
  26. return $this->table('refill_order')->where(['order_id' => $order_id])->update($data);
  27. }
  28. public function getMerchantOrderList($condition, $pagesize = '', $field = '*', $order = 'refill_order.order_id desc', $limit = '', $master = false)
  29. {
  30. $list = $this->table('refill_order,vr_order')->field($field)
  31. ->where($condition)->join('inner')->on('refill_order.order_id=vr_order.order_id')->page($pagesize)->order($order)->limit($limit)->master($master)->select();
  32. if (empty($list)) return [];
  33. return $list;
  34. }
  35. public function getMerchantTimeOut($condition, $pagesize = '', $field = '*', $order = 'refill_order.order_id desc', $limit = '', $master = false)
  36. {
  37. $list = $this->table('refill_order,vr_order,merchant')
  38. ->join('inner,inner')
  39. ->on('refill_order.order_id=vr_order.order_id,refill_order.mchid=merchant.mchid')
  40. ->where($condition)
  41. ->field($field)
  42. ->page($pagesize)->order($order)->limit($limit)->master($master)->select();
  43. if (empty($list)) return [];
  44. return $list;
  45. }
  46. public function getOrderStatsList($condition, $pagesize = '', $field = '*', $order = 'time_stamp desc', $limit = '')
  47. {
  48. $list = $this->table('refill_stats')->field($field)
  49. ->where($condition)->page($pagesize)->order($order)->limit($limit)->select();
  50. if (empty($list)) return [];
  51. return $list;
  52. }
  53. public function first_item()
  54. {
  55. return $this->table('refill_order')->field('order_time')->where(['order_id' => ['gt',0]])->order('order_id asc')->find();
  56. }
  57. public function add_detail($mchid,$mch_order,$details,$order_state)
  58. {
  59. return $this->table('refill_detail')->insert(['mchid' => $mchid,'mch_order' => $mch_order,'order_time' => time(),'params' => json_encode($details),'order_state' => $order_state]);
  60. }
  61. public function del_detail($mchid,$mch_order)
  62. {
  63. return $this->table('refill_detail')->where(['mchid' => $mchid,'mch_order' => $mch_order])->delete();
  64. }
  65. public function edit_detail($mchid,$mch_order,$datas)
  66. {
  67. return $this->table('refill_detail')->where(['mchid' => $mchid,'mch_order' => $mch_order])->update($datas);
  68. }
  69. public function exist($mchid,$mch_order)
  70. {
  71. $item = $this->table('refill_detail')->where(['mchid' => $mchid,'mch_order' => $mch_order])->select();
  72. return !empty($item);
  73. }
  74. }