123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- <?php
- /**
- * ItgOrderLogic.php UTF-8
- * WWW
- *
- * @date : 2018/5/15 14:04
- *
- * @license 这不是一个自由软件,未经授权不许任何使用和传播。
- * @author : chenbingling <cbl@huosdk.com>
- * @version : HUOSDK 8.0
- */
- namespace huo\logic\shop;
- use huo\model\common\CommonModel;
- use huo\model\shop\GoodsModel;
- use huo\model\shop\ItgOrderModel;
- use huolib\constant\MemItgConst;
- class ItgOrderLogic extends CommonModel {
- protected $base_field
- = [
- 'id' => 'id',
- 'order_id' => 'order_id',
- 'mem_id' => 'mem_id',
- 'flag' => 'flag',
- 'goods_id' => 'goods_id',
- 'integral' => 'integral',
- 'status' => 'status',
- 'shipping_status' => 'shipping_status',
- ];
- /**
- * 获取兑换订单列表
- *
- * @throws \think\exception\DbException
- */
- public function getList($_param = []) {
- $_map = array();
- $_offset = isset($_param['list_rows']) ? $_param['list_rows'] : 50;
- if (isset($_param['goods_name']) && !empty($_param['goods_name'])) {
- $_ids = (new GoodsModel())->where(['goods_name' => ['like', '%'.$_param['goods_name'].'%']])->column('id');
- $_map['goods_id'] = array('in', $_ids);
- }
- if (isset($_param['order_id'])) {
- $_map['order_id'] = ['like', '%'.$_param['order_id'].'%'];
- }
- if (isset($_param['flag']) && !empty($_param['flag'])) {
- $_map['flag'] = $_param['flag'];
- }
- if (isset($_param['pay_status']) && !empty($_param['pay_status'])) {
- $_map['status'] = $_param['pay_status'];
- }
- if (isset($_param['shipping_status']) && !empty($_param['shipping_status'])) {
- $_map['shipping_status'] = $_param['shipping_status'];
- }
- $_item = (new ItgOrderModel())->getList($_map, 'shipping_status asc,id desc', $_offset);
- return $_item;
- }
- public function getDetail($_where) {
- $_itg_order_model = new ItgOrderModel();
- $_data = $_itg_order_model->where($_where)->limit(1)->find();
- if (is_object($_data)) {
- return $_data->toArray();
- } else {
- return null;
- }
- }
- /**
- * 获取奖品订单表
- *
- * @param array $_where
- * @param $_page
- *
- * @return array
- */
- public function getAwardOrderList($_where = [], $_page) {
- $_where['flag'] = MemItgConst::SHOP_FLAG_LOTTERY;
- $_where['goods_id'] = array('gt', MemItgConst::AWARD_LOSE_GOODS_ID);
- $_order = '-id';
- $_itg_order_model = new ItgOrderModel();
- $_cnt = $_itg_order_model->where($_where)->count();
- if (empty($_cnt)) {
- return [
- 'count' => 0,
- 'list' => []
- ];
- }
- $_field = $this->base_field;
- $_order = $this->orderFilter($_order);
- $_list = $_itg_order_model
- ->with('goods')
- ->with('mem')
- ->field($_field)
- ->where($_where)
- ->order($_order)
- ->page($_page)
- ->select();
- if (is_object($_list)) {
- $_list = $_list->toArray();
- }
- if (empty($_list)) {
- $_list = null;
- }
- $_data_list = [];
- foreach ($_list as $_k => $_v) {
- $_data['id'] = $_v['id'];
- $_data['order_id'] = $_v['order_id'];
- $_data['mem_id'] = $_v['mem_id'];
- $_data['flag'] = $_v['flag'];
- $_data['goods_id'] = $_v['goods_id'];
- $_data['integral'] = $_v['integral'];
- $_data['status'] = $_v['status'];
- $_data['shipping_status'] = $_v['shipping_status'];
- $_data['award_name'] = get_val($_v['goods'], 'goods_name', '');
- $_data['username'] = isset($_v['mem']) ? get_val($_v['mem'], 'nickname', '') : '';
- $_data['avatar'] = isset($_v['mem']['avatar']) ? cmf_get_image_url($_v['mem']['avatar']) : '';
- $_data['original_img'] = get_val($_v['goods'], 'original_img', '');
- $_data['object_type'] = get_val($_v['goods'], 'object_type', '');
- $_data['is_real'] = get_val($_v['goods'], 'is_real', '');
- $_data['object_type'] = get_val($_v['goods'], 'object_type', '');
- $_data_list[] = $_data;
- }
- $_rdata['count'] = $_cnt;
- $_rdata['list'] = $_data_list;
- return $_rdata;
- }
- }
|