123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- <?php
- /**
- * RebateOrderPayModel.php UTF-8
- *
- *
- * @date : 2018/7/28 14:45
- *
- * @license 这不是一个自由软件,未经授权不许任何使用和传播。
- * @author : wuyonghong <wyh@huosdk.com>
- * @version : Huosdk 8.0
- */
- namespace huoRebate\model;
- use huolib\constant\OrderConst;
- use think\Model;
- class RebateOrderPayModel extends Model {
- protected $name = 'rebate_order_pay';
- // 开启自动写入时间戳字段
- protected $autoWriteTimestamp = true;
- /**
- * @return \think\model\relation\BelongsTo
- */
- public function pay() {
- return $this->belongsTo('huo\model\order\OrderModel', 'order_id');
- }
- /**
- * 添加返利订单
- *
- * @param $data
- *
- * @return bool|mixed
- */
- public function add($data) {
- $_data['ro_id'] = get_val($data, 'ro_id', 0);
- $_data['order_id'] = get_val($data, 'order_id', '');
- $_data['mem_id'] = get_val($data, 'mem_id', 0);
- $_data['app_id'] = get_val($data, 'app_id', 0);
- $_data['status'] = get_val($data, 'status', OrderConst::REBATE_STATUS_NOT);
- if ($_obj = self::create($_data, true)) {
- $_data['id'] = $_obj->id;
- return $_data;
- } else {
- return false;
- }
- }
- /**
- * 查询详细信息
- *
- * @param string $order_id SDK订单编号
- *
- * @param array $status 状态
- *
- * @return array|bool|false
- */
- public function getDetail($order_id, $status = []) {
- $_map['order_id'] = $order_id;
- if (!empty($status)) {
- $_map['status'] = ['in', $status];
- }
- $_data = self::where($_map)->find();
- if (false == $_data) {
- return false;
- }
- if (is_object($_data)) {
- $_data = $_data->toArray();
- }
- return $_data;
- }
- /**
- * 获取是否存在
- *
- * @param $order_id
- * @param array $status
- *
- * @return int|string
- */
- public function getCnt($order_id, $status = [OrderConst::REBATE_STATUS_NOT, OrderConst::REBATE_STATUS_SUC]) {
- $_map['order_id'] = $order_id;
- if (!empty($status)) {
- $_map['status'] = ['in', $status];
- }
- $_cnt = self::where($_map)->count();
- if (false == $_cnt) {
- return 0;
- }
- return $_cnt;
- }
- /**
- * 通过mem_id与app_id获取已申请返利的订单ID
- *
- * @param $mem_id
- * @param $app_id
- * @param array $status
- *
- * @return array
- */
- public function getOrdersByMemApp(
- $mem_id, $app_id = 0, $status = [OrderConst::REBATE_STATUS_NOT, OrderConst::REBATE_STATUS_SUC]
- ) {
- $_map['mem_id'] = $mem_id;
- if (!empty($app_id)) {
- $_map['app_id'] = $app_id;
- }
- if (!empty($status)) {
- $_map['status'] = ['in', $status];
- }
- $_order_ids = self::where($_map)->column('order_id');
- if (empty($_order_ids)) {
- return [];
- }
- return $_order_ids;
- }
- }
|