123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331 |
- <?php
- /**
- * @copyright Copyright (c) 2017 https://www.sapixx.com All rights reserved.
- * @license Licensed (http://www.apache.org/licenses/LICENSE-2.0).
- * @author pillar<ltmn@qq.com>
- * 团购联盟
- */
- namespace app\allwin\controller\Manage;
- use app\allwin\controller\Common;
- use app\allwin\model\AllwinUnmarket;
- use app\allwin\model\AllwinUnmarketOrder;
- use app\allwin\model\AllwinUnmarketStore;
- use app\allwin\model\AllwinUnmarketVerif;
- use app\allwin\model\AllwinUnmarketBooking;
- use app\allwin\model\AllwinStore;
- class Unmarket extends Common{
- public function initialize() {
- parent::initialize();
- $this->assign('pathMaps',[['name'=>'团购联盟','url' => url('manage.unmarket/index')]]);
- }
- /**
- * 列表
- */
- public function index(){
- $condition = [];
- $condition['member_miniapp_id'] = $this->member_miniapp_id;
- $view['lists'] = AllwinUnmarket::where($condition)->order('id desc')->paginate(20);
- return view()->assign($view);
- }
- /**
- * 添加
- */
- public function add(){
- if(request()->isAjax()){
- $data = [
- 'uid' => input('post.uid/d'),
- 'member_miniapp_id' => $this->member_miniapp_id,
- 'telphone' => input('post.telphone/s'),
- 'mycode' => input('post.mycode/s'),
- 'tips' => input('post.tips/s'),
- 'title' => input('post.title/s'),
- 'bonus_types' => input('post.bonus_types/d'),
- 'bonus_user_types' => input('post.bonus_user_types/d'),
- 'share_ratio_user' => input('post.share_ratio_user/d'),
- 'share_ratio' => input('post.share_ratio/f'),
- 'price' => input('post.price/f'),
- 'name' => input('post.name/s'),
- 'address' => input('post.address/s'),
- 'tel' => input('post.address/s'),
- 'share_img' => input('post.share_img/s'),
- 'share_title' => input('post.share_title/s'),
- 'share_text' => input('post.share_text/s'),
- 'music' => input('post.music/s'),
- 'note' => input('post.note/s'),
- 'img' => input('post.img/s'),
- 'imgs' => input('post.imgs/a'),
- 'start_time' => input('post.start_time/s'),
- 'end_time' => input('post.end_time/s'),
- ];
- $validate = $this->validate($data,'Unmarket.add');
- if(true !== $validate){
- return json(['code'=>0,'msg'=>$validate]);
- }
- $result = AllwinUnmarket::edit($data);
- if($result){
- return json(['code'=>200,'url'=>url('manage.unmarket/index'),'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'操作失败']);
- }
- }else{
- return view();
- }
- }
- //编辑
- public function edit(){
- if(request()->isAjax()){
- $data = [
- 'id' => input('post.id/d'),
- 'uid' => input('post.uid/d'),
- 'member_miniapp_id' => $this->member_miniapp_id,
- 'telphone' => input('post.telphone/s'),
- 'mycode' => input('post.mycode/s'),
- 'tips' => input('post.tips/s'),
- 'title' => input('post.title/s'),
- 'bonus_types' => input('post.bonus_types/d'),
- 'bonus_user_types' => input('post.bonus_user_types/d'),
- 'share_ratio_user' => input('post.share_ratio_user/d'),
- 'share_ratio' => input('post.share_ratio/f'),
- 'price' => input('post.price/f'),
- 'share_img' => input('post.share_img/s'),
- 'share_title' => input('post.share_title/s'),
- 'share_text' => input('post.share_text/s'),
- 'music' => input('post.music/s'),
- 'note' => input('post.note/s'),
- 'img' => input('post.img/s'),
- 'imgs' => input('post.imgs/a'),
- 'start_time' => input('post.start_time/s'),
- 'end_time' => input('post.end_time/s'),
- ];
- $validate = $this->validate($data,'Unmarket.edit');
- if(true !== $validate){
- return json(['code'=>0,'msg'=>$validate]);
- }
- $result = AllwinUnmarket::edit($data);
- if($result){
- return json(['code'=>200,'url'=>url('manage.unmarket/index'),'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'操作失败']);
- }
- }else{
- $condition = [];
- $condition['id'] = input('get.id/d');
- $condition['member_miniapp_id'] = $this->member_miniapp_id;
- $info = AllwinUnmarket::where($condition)->find();
- if(!$info){
- $this->error("404 NOT FOUND");
- }
- $info['imgs'] = json_decode($info['imgs'],true);
- $view['info'] = $info;
- return view()->assign($view);
- }
- }
- //删除
- public function delete(){
- $id = input('get.id/d');
- $result = AllwinUnmarketOrder::where(['share_id' => $id])->find();
- if(isset($result)){
- return json(['code'=>0,'msg'=>'有订单数据,禁止删除']);
- }
- $result = AllwinUnmarket::where(['member_miniapp_id' => $this->member_miniapp_id,'id' => $id])->delete();
- if($result){
- return json(['code'=>200,'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'删除失败']);
- }
- }
- /**
- * 联盟商家
- */
- public function store(int $id){
- $condition['member_miniapp_id'] = $this->member_miniapp_id;
- $condition['union_id'] = $id;
- $view['lists'] = AllwinUnmarketStore::where($condition)->order('id desc')->paginate(20);
- $view['union_id'] = $id;
- $view['pathMaps'] = [
- ['name'=>'团购联盟','url' => url('manage.unmarket/index')],
- ['name'=>'联盟商家','url' => 'javascript:;'],
- ];
- return view()->assign($view);
- }
- /**
- * 添加商家
- */
- public function storeAdd(){
- if(request()->isAjax()){
- $store_id = input('post.store_id/d');
- if(empty($store_id)){
- return json(['code'=>0,'msg'=>'未找到好店']);
- }
- $store = AllwinStore::where(['id' => $store_id])->find();
- $data = [
- 'union_id' => input('post.union_id/d'),
- 'member_miniapp_id' => $this->member_miniapp_id,
- 'store_id' => $store_id,
- 'name' => $store->name,
- 'address' => $store->address,
- 'tel' => $store->telphone,
- 'end_time' => input('post.endtime/s'),
- 'content' => input('post.content/s'),
- 'note' => input('post.note/s'),
- 'about' => input('post.about/s'),
- 'pictext' => input('post.pictext/s'),
- 'img' => input('post.img/s'),
- 'imgs' => input('post.imgs/a')
- ];
- $validate = $this->validate($data, 'Unmarket.store');
- if(true !== $validate){
- return json(['code'=>0,'msg'=>$validate]);
- }
- $result = AllwinUnmarketStore::edit($data);
- if($result){
- return json(['code'=>200,'url'=>url('manage.unmarket/store',['id' => $data['union_id']]),'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'操作失败']);
- }
- }else{
- $union_id = input('get.union_id/d');
- $info = AllwinUnmarket::where(['id' => $union_id])->find();
- if(empty($info)){
- $this->error("添加所属资源不存在");
- }
- $view['union'] = $info;
- return view()->assign($view);
- }
- }
- /**
- * 店铺配置
- */
- public function storeEdit(){
- if(request()->isAjax()){
- $store_id = input('post.store_id/d');
- if(empty($store_id)){
- return json(['code'=>0,'msg'=>'操作失败']);
- }
- $store = AllwinStore::where(['id' => $store_id])->find();
- $data = [
- 'id' => input('post.id/d'),
- 'union_id' => input('post.union_id/d'),
- 'member_miniapp_id' => $this->member_miniapp_id,
- 'store_id' => $store_id,
- 'name' => $store->name,
- 'address' => $store->address,
- 'tel' => $store->telphone,
- 'end_time' => input('post.endtime/s'),
- 'content' => input('post.content/s'),
- 'note' => input('post.note/s'),
- 'about' => input('post.about/s'),
- 'pictext' => input('post.pictext/s'),
- 'img' => input('post.img/s'),
- 'imgs' => input('post.imgs/a'),
- ];
- $validate = $this->validate($data,'Unmarket.store');
- if(true !== $validate){
- return json(['code'=>0,'msg'=>$validate]);
- }
- $result = AllwinUnmarketStore::edit($data);
- if($result){
- return json(['code'=>200,'url'=>url('manage.unmarket/store',['id' => $data['union_id']]),'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'操作失败']);
- }
- }else{
- $id = input('get.id/d');
- $info = AllwinUnmarketStore::where(['member_miniapp_id' => $this->member_miniapp_id])->where(['id' => $id])->find();
- if(empty($info)){
- $this->error("商家不存在");
- }
- $view['info'] = $info;
- $view['union_id'] = input('get.union_id/d');
- $info['imgs'] = json_decode($info['imgs'],true);
- return view()->assign($view);
- }
- }
- /**
- * 删除商家
- */
- public function storeDelete(){
- $id = input('get.id/d');
- $result = AllwinUnmarketStore::where(['member_miniapp_id' => $this->member_miniapp_id,'id' => $id])->delete();
- if($result){
- return json(['code'=>200,'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'删除失败']);
- }
- }
- /**
- * 订单裂变
- */
- public function order(int $id,int $state = 0){
- $condition['state'] = $state ? 0: 1;
- $condition['member_miniapp_id'] = $this->member_miniapp_id;
- $condition['share_id'] = $id;
- $view['lists'] = AllwinUnmarketOrder::where($condition)->order('id desc')->paginate(20,false,['query'=>['id'=>$id,'state' => $state]]);
- $view['state'] = $state;
- $view['id'] = $id;
- return view()->assign($view);
- }
-
- /**
- * 删除订单
- */
- public function deleteOrder(){
- $id = input('get.id/d');
- $result = AllwinUnmarketOrder::where(['member_miniapp_id' => $this->member_miniapp_id,'id' => $id])->delete();
- if($result){
- return json(['code'=>200,'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'删除失败']);
- }
- }
- /**
- * 核销列表
- */
- public function Verification(int $id){
- $view['info'] = AllwinUnmarket::where(['id' => $id])->field('title,note')->find();
- if(empty($view['info'])){
- $this->error("活动不存在");
- }
- $condition['union_id'] = $id;
- $condition['member_miniapp_id'] = $this->member_miniapp_id;
- $view['lists'] = AllwinUnmarketVerif::where($condition)->order('id desc')->paginate(20);
- return view()->assign($view);
- }
- /**
- * 预约商家
- */
- public function Booking(){
- $condition['member_miniapp_id'] = $this->member_miniapp_id;
- $view['lists'] = AllwinUnmarketBooking::where($condition)->order('id desc')->paginate(20);
- return view()->assign($view);
- }
- /**
- * 删除商家联系
- */
- public function deleteBooking(){
- $id = input('get.id/d');
- $result = AllwinUnmarketBooking::where(['member_miniapp_id' => $this->member_miniapp_id,'id' => $id])->delete();
- if($result){
- return json(['code'=>200,'msg'=>'操作成功']);
- }else{
- return json(['code'=>0,'msg'=>'删除失败']);
- }
- }
- }
|