admin/addon/blindbox/shop/controller/BlindboxGoods.php

141 lines
4.5 KiB
PHP

<?php
/**
* ThinkShop商城系统 - 团队十年电商经验汇集巨献!
* =========================================================
* Copy right 2019-2029 成都云之牛科技有限公司, 保留所有权利。
* ----------------------------------------------
* 官方网址: https://www.cdcloudshop.com
* =========================================================
*/
namespace addon\blindbox\shop\controller;
use app\shop\controller\BaseShop;
use addon\blindbox\model\BlindboxGoods as BlindboxGoodsModel;
use addon\blindbox\model\Order as OrderModel;
class BlindboxGoods extends BaseShop
{
/**
* 盲盒分类列表
* @return array|mixed
*/
public function lists()
{
$blindbox_id = input('blindbox_id', 0);
if (request()->isAjax()) {
$page = input('page', 1);
$page_size = input('page_size', PAGE_LIST_ROWS);
$status= input('status', '');
$goods_name = input('goods_name', 0);
if($status != ''){
$condition[] = ['a.status', '=', $status];
}
if($goods_name){
$condition[] = ['gs.sku_name', 'like', '%' . $goods_name . '%'];
}
$condition[] = ['a.site_id', '=', $this->site_id];
$condition[] = ['a.blindbox_id', '=', $blindbox_id];
$blindbox_goods = new BlindboxGoodsModel();
$order = 'a.id desc';
$field = 'a.*,b.blindbox_name,gs.sku_name,gs.sku_image,gs.price,bo.is_dispatch,bo.status as order_status,bo.pay_type_name,bo.member_id,bo.order_number,bo.price as order_price,m.nickname';
$alias = 'a';
$join = [
['blindbox b', 'b.blindbox_id = a.blindbox_id', 'left'],
['goods_sku gs', 'gs.sku_id = a.sku_id', 'left'],
['blindbox_order bo','bo.blindbox_goods_id = a.id','left'],
['member m','bo.member_id = m.member_id','left']
];
$data = $blindbox_goods->getBlindboxGoodsPageList($condition, $page, $page_size, $order, $field, $alias, $join);
return $data;
} else {
$this->assign('blindbox_id', $blindbox_id);
return $this->fetch("blindbox_goods/lists");
}
}
/**
* 新增盲盒盒子
* @return array|mixed
*/
public function add()
{
if (request()->isAjax()) {
$blindbox_id = input('blindbox_id', 0);
$sku_id_arr = input('sku_id_arr', []);
$data = [
'blindbox_id' => $blindbox_id,
'sku_id_arr' => $sku_id_arr,
'site_id' => $this->site_id,
];
$blindbox_goods = new BlindboxGoodsModel();
$res = $blindbox_goods->addBlindboxGoods($data);
return $res;
}
}
/**
* 编辑盲盒盒子
* @return array|mixed
*/
public function edit()
{
if (request()->isAjax()) {
$blindbox_id = input('blindbox_id', 0);
$id = input('id', 0);
$sku_id = input('sku_id', 0);
$data = [
'blindbox_id' => $blindbox_id,
'id' => $id,
'sku_id' => $sku_id,
'site_id' => $this->site_id,
];
$blindbox_goods = new BlindboxGoodsModel();
$res = $blindbox_goods->editBlindboxGoods($data);
return $res;
}
}
/**
* 批量删除盲盒盒子
*/
public function dels(){
if (request()->isAjax()) {
$blindbox_id = input('blindbox_id', 0);
$ids = input('ids', 0);
$sku_ids = input('sku_ids', 0);
$blindbox_goods = new BlindboxGoodsModel();
$data = [
'blindbox_id' => $blindbox_id,
'ids' => $ids,
'sku_ids' => $sku_ids,
'site_id' => $this->site_id,
];
$res = $blindbox_goods->delBlindboxGoods($data);
return $res;
}
}
/**
* 盲盒盒子 订单
* @return array
*/
public function boxOrderInfo()
{
if (request()->isAjax()) {
$blindbox_goods_id = input('id', 0);
$data = [
'promotion_id' => $blindbox_goods_id,
'promotion_type' => 'blindbox',
'site_id' => $this->site_id,
];
$order_model = new OrderModel();
$info = $order_model->getOrderInfo($data);
return $info;
}
}
}