徐总多门店
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

241 lines
7.0 KiB

<?php
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
namespace app\controller\api\v2\activity;
use app\controller\store\AuthController;
use app\services\activity\coupon\StoreCouponIssueServices;
use app\services\product\product\StoreProductCouponServices;
use think\facade\Db;
use think\Request;
/**
* 优惠券
* Class StoreCoupons
* @package app\controller\api\v2\store
*/
class StoreCoupons extends AuthController
{
protected $services;
public function __construct(StoreCouponIssueServices $services)
{
$this->services = $services;
}
/**
* 可领取优惠券列表
* @param \app\Request $request
* @return mixed
*/
public function lst(Request $request)
{
$where = $request->getMore([
[['type', 'd'], ''],
[['product_id', 'd'], 0],
[['brand_id', 'd'], 0],
['defaultOrder', ''],
['timeOrder', ''],
['priceOrder', '']
]);
return app('json')->successful($this->services->getIssueCouponList($request->uid(), $where, '*', true));
}
/**
* 获取新人券
* @return mixed
*/
public function getNewCoupon(Request $request)
{
$userInfo = $request->user();
$data = [];
/** @var StoreCouponIssueServices $couponService */
$couponService = app()->make(StoreCouponIssueServices::class);
$data['list'] = $couponService->getNewCoupon();
$data['image'] = '';
if ($userInfo->add_time === $userInfo->last_time) {
$data['show'] = 1;
} else {
$data['show'] = 0;
}
//会员领取优惠券
//$couponService->sendMemberCoupon($userInfo->uid);
return app('json')->success($data);
}
/**
* 赠送下单之后订单中 关联优惠劵
* @param Request $request
* @param $orderId
* @return mixed
*/
public function getOrderProductCoupon(Request $request, $orderId)
{
$uid = (int)$request->uid();
if (!$orderId) {
return app('json')->fail('参数错误');
}
/** @var StoreProductCouponServices $storeProductCoupon */
$storeProductCoupon = app()->make(StoreProductCouponServices::class);
$list = $storeProductCoupon->getOrderProductCoupon($uid, $orderId);
return app('json')->success($list);
}
/**
* 获取每日新增的优惠券
* @return mixed
*/
public function getTodayCoupon(Request $request)
{
$uid = 0;
if ($request->hasMacro('uid')) $uid = (int)$request->uid();
/** @var StoreCouponIssueServices $couponService */
$couponService = app()->make(StoreCouponIssueServices::class);
$data['list'] = $couponService->getTodayCoupon($uid);
$data['image'] = '';
return app('json')->success($data);
}
//wmc api
//台桌列表
public function getTableList(Request $request, $cate_id)
{
$list = Db::name('table_qrcode')
->where('cate_id', $cate_id)
->where('is_use', 0)
->select()->toArray();
return app('json')->success('ok', $list);
}
//台桌详情
public function getTableDetail(Request $request, $id)
{
$info = Db::name('table_qrcode')
->where('id', $id)
->find();
//营销经理列表
$info['yingxiao'] = Db::name('user')
->field('uid,nickname')
->where('group_id', 2)
->select();
return app('json')->success('ok', $info);
}
//台桌预定
public function tableYuDing(Request $request)
{
$uid = (int)$request->uid();
// if(!$uid){
// return app('json')->fail('预定失败,请先登录');
// }
$post = $request->postMore([
['table_id', 0],
['user_id', $uid],
['phone', 0],
['yuding_date', 0],
['come_date', 0],
['create', time()],
['admin_id', ''],
['remark', ''],
['store_id',1]
]);
//校验这个桌子有无在使用
$info = Db::name('table_qrcode')
->where('id', $post['table_id'])
->find();
if(!$info){
return app('json')->fail('预定失败');
}
if($info['is_use'] != 0){
return app('json')->fail('预定失败,台桌正在使用中');
}
//插入预定表
Db::name('table_yuding')->insert($post);
//改桌子状态
Db::name('table_qrcode')->where('id',$post['table_id'])->update(['is_use'=>2]);
return app('json')->success('预定成功');
}
//存酒记录
public function getcunjiu(Request $request)
{
$uid = (int)$request->uid();
if(!$uid){
$list = [];
}else{
$list = Db::name('store_drink_save')
->order('id desc')
->where('uid', $uid)
->select()->toArray();
foreach ($list as &$v){
$v['table_number'] = Db::name('table_qrcode')
->where('id', $v['table_id'])
->value('table_number');
$v['c_time'] = date('Y-m-d H:i:s',$v['create']);
}
}
return app('json')->success('ok', $list);
}
//取酒记录
public function getqujiu(Request $request)
{
$uid = (int)$request->uid();
if(!$uid){
$list = [];
}else{
$list = Db::name('store_drink_log')
->alias('a')
->order('a.id desc')
->leftJoin('eb_store_drink_save b', 'a.pid = b.id')
->field('b.*,a.content')
->where('a.uid', $uid)
->where('a.type',2)
->select()->toArray();
foreach ($list as &$v){
$v['table_number'] = Db::name('table_qrcode')
->where('id', $v['table_id'])
->value('table_number');
$v['c_time'] = date('Y-m-d H:i:s',$v['create']);
$str = $v['content'];
$startPos = strpos($str, '】');
$endPos = strpos($str, '瓶', $startPos);
if ($startPos!== false && $endPos!== false) {
$number = substr($str, $startPos + 5, $endPos - $startPos - 5);
}
$v['num'] = $number;
}
}
return app('json')->success('操作成功',$list);
}
}