Ver código fonte

【Add】增加拼团复制功能,优化拼团数据结构

liuxiangxin 5 meses atrás
pai
commit
78c6073c1a

+ 138 - 88
app/Http/Controllers/Admin/RegimentActive.php

@@ -18,7 +18,7 @@ class RegimentActive extends Auth{
 	protected function _initialize(){
 		parent::_initialize();
 		$this->assign('breadcrumb1','拼团活动');
-		$this->assign('breadcrumb2','拼团活动列表');
+		$this->assign('breadcrumb2','活动列表');
 	}
 
     /**
@@ -32,16 +32,15 @@ class RegimentActive extends Auth{
         $map 					= [];
         // 组合条件
         if( $name )				$map[] = ['regiment_active.name','=',$name];
-        $select = ['regiment_active.*','product.name as product_name'];
         // 查询数据
         $list					= $Model->query()
-            ->join('product','product.id','=','regiment_active.product_id')
-            ->where($map)
-            ->select($select)
-            ->orderByDesc('regiment_active.id')
-            ->paginate(config('page_num',10));
+                                ->join('product','product.id','=','regiment_active.product_id')
+                                ->where($map)
+                                ->select(['regiment_active.*','product.name as product_name'])
+                                ->orderByDesc('regiment_active.id')
+                                ->paginate(config('page_num',10));
         // 循环处理数据
-        foreach ($list as $key => &$value) {
+        foreach ($list as &$value) {
             $value['code']	= $Model->idToCode($value['id']);
         }
         // 分配数据
@@ -76,65 +75,65 @@ class RegimentActive extends Auth{
             $data['start_time']		        = $data['start_time'] ? strtotime($data['start_time']) : 0;
             $data['end_time']		        = $data['end_time'] ? strtotime($data['end_time']) : 0;
             $data['participation_number']	= request('participation_number',0);
-            $data['open_people']			= request('open_people',1);
-            $data['partake_people']			= request('partake_people',1);
-            $data['exceed_people']			= request('exceed_people',1);
-            $data['automatic']				= request('automatic',1);
-            $data['virtually']				= request('virtually',1);
+            $data['open_people']			= request('open_people',0);
+            $data['partake_people']			= request('partake_people',0);
+            $data['exceed_people']			= request('exceed_people',0);
+            $data['automatic']				= request('automatic',0);
+            $data['virtually']				= request('virtually',0);
             $data['status']			        = 1;
-            $where                          =   [
-                ['status','=', 1],
-                ['product_id','=', $data['product_id']],
-                ['end_time','>=', time()]
-            ];
-            $product_res                    = $Model::query()->where($where)->first();
+            // 核对产品
+            $product_res                    = $Model::query()->where([['status','=', 1],['product_id','=', $data['product_id']],['end_time','>=', time()]])->first();
+            // 提示
             if ($product_res)               return json_send(['code'=>'error','msg'=>'该产品正在参加拼团活动']);
             // 写入数据表
             $id						        = $Model->add($data);
             // 如果操作失败
             if( !$id ) 				        return json_send(['code'=>'error','msg'=>'新增失败']);
             //商户开团
-            if ($data['automatic'] == 1){
-                $regimentData  =   [
-                    'custom_uid'    =>  0,
-                    'active_id'     =>  $id,
-                    'product_id'    =>  $data['product_id'],
-                    'status'        =>  1,
-                    'start_time'    =>  $data['start_time'],
-                    'end_time'      =>  $data['start_time'] + $data['expiration']*60*60,
-                    'update_time'   =>  time(),
-                    'insert_time'   =>  time(),
-                ];
-                $regimentRes            =   Regiment::query()->where($where)->insert($regimentData);
-                if (!$regimentRes)      return json_send(['code'=>'error','msg'=>'商户开团失败']);
+            if ($data['automatic'] == 1 )   {
+                // 开团信息
+                $regimentData               = [
+                                                'custom_uid'    =>  0,
+                                                'active_id'     =>  $id,
+                                                'product_id'    =>  $data['product_id'],
+                                                'status'        =>  1,
+                                                'start_time'    =>  $data['start_time'],
+                                                'end_time'      =>  $data['start_time'] + $data['expiration']*60*60,
+                                                'update_time'   =>  time(),
+                                                'insert_time'   =>  time(),
+                                            ];
+                // 开团
+                $regimentRes                = Regiment::query()->insert($regimentData);
+                // 开团结果
+                if (!$regimentRes)          return json_send(['code'=>'error','msg'=>'商户开团失败']);
             }
             // 记录行为
             $this->addAdminHistory(admin('uid'),$Model->getTable(),$id,1,[],$data);
             // 告知结果
-            return					json_send(['code'=>'success','msg'=>'新增成功','action'=>'add']);
+            return					        json_send(['code'=>'success','msg'=>'新增成功','action'=>'add']);
         }
         // 标签列表
-        $tagList					= [];
-        $cityList					= [];
+        $tagList					        = [];
+        $cityList					        = [];
         // 分配数据
         $this->assign('cityList',$cityList);
         $this->assign('tagList',$tagList);
         $this->assign('crumbs','新增');
         // 加载模板
-        return						$this->fetch();
+        return						        $this->fetch();
     }
 
     /**
      * 修改
      *
      * */
-    public function edit(Request $request,Model $Model,Product $Product){
+    public function edit(Request $request,Model $Model,Product $Product,Regiment $Regiment){
         // 接收参数
-        $id							= request('id',0);
+        $id							        = request('id',0);
         // 查询用户
-        $oldData					= $Model->where(['id'=>$id])->first()->toArray();
+        $oldData					        = $Model->where(['id'=>$id])->first()->toArray();
         // 修改
-        if(request()->isMethod('post')){
+        if(request()->isMethod('post'))     {
             // 验证参数
             $request->scene('edit')->validate();
             // 接收数据
@@ -153,27 +152,51 @@ class RegimentActive extends Auth{
             $data['start_time']		        = $data['start_time'] ? strtotime($data['start_time']) : 0;
             $data['end_time']		        = $data['end_time'] ? strtotime($data['end_time']) : 0;
             $data['participation_number']	= request('participation_number',0);
-            $data['open_people']			= request('open_people',1);
-            $data['partake_people']			= request('partake_people',1);
-            $data['exceed_people']			= request('exceed_people',1);
-            $data['automatic']				= request('automatic',1);
-            $data['virtually']				= request('virtually',1);
+            $data['open_people']			= request('open_people',0);
+            $data['partake_people']			= request('partake_people',0);
+            $data['exceed_people']			= request('exceed_people',0);
+            $data['automatic']				= request('automatic',0);
+            $data['virtually']				= request('virtually',0);
+            $data['status']			        = 1;
+            // 核对产品
+            $product_res                    = $Model::query()->where([['status','=', 1],['product_id','=', $data['product_id']],['end_time','>=', time()]])->first();
+            // 提示
+            if ($product_res)               return json_send(['code'=>'error','msg'=>'该产品正在参加拼团活动']);
             // 写入数据表
-            $result					= $Model->edit($id,$data);
+            $id						        = $Model->add($data);
             // 如果操作失败
-            if( !$result ) 			return json_send(['code'=>'error','msg'=>'修改失败']);
+            if( !$id ) 				        return json_send(['code'=>'error','msg'=>'新增失败']);
+            //商户开团
+            if ($data['automatic'] == 1 )   {
+                // 开团信息
+                $regimentData               = [
+                                                'custom_uid'    =>  0,
+                                                'active_id'     =>  $id,
+                                                'product_id'    =>  $data['product_id'],
+                                                'status'        =>  1,
+                                                'start_time'    =>  $data['start_time'],
+                                                'end_time'      =>  $data['start_time'] + $data['expiration']*60*60,
+                                                'update_time'   =>  time(),
+                                                'insert_time'   =>  time(),
+                                            ];
+                // 开团
+                $regimentRes                = Regiment::query()->insert($regimentData);
+                // 开团结果
+                if (!$regimentRes)          return json_send(['code'=>'error','msg'=>'商户开团失败']);
+            }
             // 记录行为
             $this->addAdminHistory(admin('uid'),$Model->getTable(),$id,2,$oldData,$data);
             // 告知结果
-            return					json_send(['code'=>'success','msg'=>'修改成功','action'=>'edit']);
+            return					        json_send(['code'=>'success','msg'=>'修改成功','action'=>'edit']);
         }
         // 错误告知
-        if( !$oldData )				return $this->error('查无数据');
-        $oldData['product_code']	= $Product->idToCode($oldData['product_id']);
+        if( !$oldData )				        return $this->error('查无数据');
+        // 返回结果
+        $oldData['product_code']	        = $Product->idToCode($oldData['product_id']);
         $this->assign('oldData',$oldData);
         $this->assign('crumbs','修改');
         // 加载模板
-        return						$this->fetch();
+        return						        $this->fetch();
     }
 
     /**
@@ -199,48 +222,75 @@ class RegimentActive extends Auth{
         // 告知结果
         return 			json_send(['code'=>'success','msg'=>'设置成功','path'=>'']);
     }
+
     /**
      * 复制
      *
      * */
-    public function copy(Request $request,Model $Model,Clockin $Clockin){
-        // 验证参数
-        $request->scene('copy')->validate();
-        // 设置状态
-        $id				= request('id',0);
-        $time           =   time();
-        // 查询
-        $data		    = $Model->where(['id'=>$id])->first()->toArray();
-        if (!$data)     json_send(['code'=>'error','msg'=>'复制失败,活动不存在']);
-        $clockinList    = $Clockin->getActiveList($id);
-        DB::beginTransaction();
-        try {
-            unset($data['id']);
-            $data['status'] = 1;
-            $data['name'] = $data['name'].'复制';
-            //复制活动
-            $newId          = $Model->add($data);
-            if (!$newId){
-                DB::rollBack();
-                return json_send(['code'=>'error','msg'=>'复制失败']);
-            }
-            if ($clockinList){
-                foreach ($clockinList as &$clockin){
-                    $clockin['active_id'] = $newId;
-                    $clockin['insert_time'] = $time;
-                    $clockin['update_time'] = $time;
-                    unset($clockin['id']);
-                }
-                $re = $Clockin->Query()->insert($clockinList);
-                if (!$re)   return  json_send(['code'=>'error','msg'=>'复制失败']);
+    public function copy(Request $request,Model $Model,Product $Product){
+        // 接收参数
+        $id							        = request('id',0);
+        // 查询用户
+        $oldData					        = $Model->where(['id'=>$id])->first()->toArray();
+        // 修改
+        if(request()->isMethod('post'))     {
+            // 验证参数
+            $request->scene('edit')->validate();
+            // 接收数据
+            $product_code		            = request('product_code','');
+            $data['product_id']		        = $Product->codeToId($product_code);
+            if (!$data['product_id'])       return json_send(['code'=>'error','msg'=>'产品不存在']);
+            $data['regiment_price']		    = request('regiment_price',0);
+            $data['quota']	                = request('quota','');
+            $data['name']	                = request('name','');
+            $data['number']	                = request('number',0);
+            $expiration_day	                = request('expiration_day',0);
+            $expiration_hours	            = request('expiration_hours',0);
+            $data['expiration']	            = $expiration_day * 24 + $expiration_hours;
+            $data['start_time']		        = request('start_time','');
+            $data['end_time']		        = request('end_time','');
+            $data['start_time']		        = $data['start_time'] ? strtotime($data['start_time']) : 0;
+            $data['end_time']		        = $data['end_time'] ? strtotime($data['end_time']) : 0;
+            $data['participation_number']	= request('participation_number',0);
+            $data['open_people']			= request('open_people',0);
+            $data['partake_people']			= request('partake_people',0);
+            $data['exceed_people']			= request('exceed_people',0);
+            $data['automatic']				= request('automatic',0);
+            $data['virtually']				= request('virtually',0);
+            // 写入数据表
+            $result					        = $Model->add($data);
+            // 如果操作失败
+            if( !$result ) 			        return json_send(['code'=>'error','msg'=>'复制失败']);
+            //商户开团
+            if ($data['automatic'] == 1 )   {
+                // 开团信息
+                $regimentData               = [
+                                                'custom_uid'    =>  0,
+                                                'active_id'     =>  $id,
+                                                'product_id'    =>  $data['product_id'],
+                                                'status'        =>  1,
+                                                'start_time'    =>  $data['start_time'],
+                                                'end_time'      =>  $data['start_time'] + $data['expiration']*60*60,
+                                                'update_time'   =>  time(),
+                                                'insert_time'   =>  time(),
+                                            ];
+                // 开团
+                $regimentRes                = Regiment::query()->insert($regimentData);
+                // 开团结果
+                if (!$regimentRes)          return json_send(['code'=>'error','msg'=>'商户开团失败']);
             }
-            DB::commit();
-        }catch (\Exception $e){
-            // 回退数据
-            DB::rollBack();
-            // 失败提示
-            return						json_send(['code'=>'error','msg'=>'复制失败','data'=>['error'=>$e->getMessage().$e->getLine()]]);
+            // 记录行为
+            $this->addAdminHistory(admin('uid'),$Model->getTable(),$id,2,$oldData,$data);
+            // 告知结果
+            return					        json_send(['code'=>'success','msg'=>'复制成功','action'=>'edit']);
         }
-        return json_send(['code'=>'success','msg'=>'复制成功','path'=>'']);
+        // 错误告知
+        if( !$oldData )				        return $this->error('查无数据');
+        // 返回结果
+        $oldData['product_code']	        = $Product->idToCode($oldData['product_id']);
+        $this->assign('oldData',$oldData);
+        $this->assign('crumbs','修改');
+        // 加载模板
+        return						        $this->fetch();
     }
 }

+ 3 - 7
app/Models/Regiment.php

@@ -33,8 +33,6 @@ class Regiment extends Model
         $id						            = $this->query()->insertGetId($data);
         // 如果操作失败
         if( !$id )                          return $id;
-        // 更新缓存
-        $this->getList(true);
         // 返回结果
         return                              $id;
     }
@@ -48,13 +46,11 @@ class Regiment extends Model
         // 更新时间
         $data['update_time']                = time();
         // 写入数据表
-        $result						        = $this->query()->where(['id'=>$id])->update($data);
+        $result						        = $this->query()->where([['id','=',$id]])->update($data);
         // 如果操作失败
-        if( !$result )                      return $result;
-        // 更新缓存
-        $this->getList(true);
+        if( !$result )                      return 0;
         // 返回结果
-        return                              $result;
+        return                              $id;
     }
 
     /**

+ 23 - 32
resources/views/admin/regiment_active/add.blade.php

@@ -5,25 +5,33 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 @section('content')
 <form class="post-form" action="" method="post">
 	<div class="form-group col-sm-12" style="font-size:large">基础信息</div>
-	<div class="form-group col-sm-2">
+	<div class="form-group col-sm-3">
+		<label class="control-label">活动名称</label>
+		<input class="form-control" required="required" type="text" placeholder="活动名称" name="name" maxlength="45" value="" />
+	</div>
+	<div class="form-group col-sm-3">
 		<label class="control-label">拼团产品</label>
 		<input class="form-control" required="required" type="text" placeholder="产品编码" name="product_code" value="" />
 	</div>
+	<div class="form-group col-sm-3">
+		<label class="control-label">成团人数</label>
+		<input class="form-control" required="required" type="number" placeholder="成团人数" name="number" min="1" max="65535" value="" />
+	</div>
+	<div class="form-group col-sm-3">
+		<label class="control-label">每人限购</label>
+		<input class="form-control" required="required" type="number" placeholder="每人限购" min="0" max="65535" name="quota" value="" />
+	</div>
 	<div class="form-group col-sm-2">
 		<label class="control-label">活动价格</label>
 		<input class="form-control" required="required" type="text" placeholder="活动价格" min="0" name="regiment_price" value="" />
 	</div>
 	<div class="form-group col-sm-2">
-		<label class="control-label">每人限购</label>
-		<input class="form-control" required="required" type="number" placeholder="每人限购" min="0" name="quota" value="" />
-	</div>
-	<div class="form-group col-sm-4">
-		<label class="control-label">活动名称</label>
-		<input class="form-control" required="required" type="text" placeholder="活动名称" name="name" maxlength="45" value="" />
+		<label class="control-label">拼团有效期 </label>
+		<input class="form-control" required="required" type="number" placeholder="拼团有效期, 小时" name="expiration_hours" max="24" value="" />
 	</div>
-	<div class="form-group col-sm-4">
-		<label class="control-label">成团人数</label>
-		<input class="form-control" required="required" type="number" placeholder="成团人数" name="number" maxlength="45" value="" />
+	<div class="form-group col-sm-2">
+		<label class="control-label">最多参与次数</label>
+		<input class="form-control" required="required" type="number" placeholder="最多参与次数" min="0" max="255" name="participation_number" value="" />
 	</div>
 	<div class="form-group col-sm-3">
 		<label class="control-label">活动开始时间</label>
@@ -33,30 +41,13 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<label class="control-label">活动结束时间</label>
 		<input class="form-control" required="required" type="datetime-local" placeholder="结束时间" name="end_time" value="" />
 	</div>
-	<div class="form-group col-sm-6">
-		<label class="control-label">拼团有效期</label>
-		<div class="form-group col-sm-12">
-			{{--<div class="form-group col-sm-6">
-				<label class="control-label">天</label>
-				<input class="form-control" required="required" type="number" placeholder="天" name="expiration_day" maxlength="45" value="" />
-			</div>--}}
-			<div class="form-group col-sm-6">
-				<label class="control-label">小时 </label>
-				<input class="form-control" required="required" type="number" placeholder="小时" name="expiration_hours" maxlength="45" max="24" value="" />
-			</div>
-		</div>
-	</div>
 	<div class="form-group col-sm-12 " style="font-size:large">更多设置</div>
-	<div class="form-group col-sm-12">
-		<label class="control-label">最多参与次数</label>
-		<input class="form-control" required="required" type="text" placeholder="最多参与次数" min="0" name="participation_number" value="" />
-	</div>
 	<div class="form-group col-sm-12">
 		<label class="control-label">开团人员</label>
 		<div class="radio">
 			<label class="radio-inline"><input type="radio" value="1" name="open_people" >老用户</label>
 			<label class="radio-inline"><input type="radio" value="2" name="open_people" >新用户</label>
-			<label class="radio-inline"><input type="radio" value="3" name="open_people" >不限新老用户</label>
+			<label class="radio-inline"><input type="radio" value="0" name="open_people" >不限新老用户</label>
 		</div>
 	</div>
 	<div class="form-group col-sm-12">
@@ -64,27 +55,27 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<div class="radio">
 			<label class="radio-inline"><input type="radio" value="1" name="partake_people" >老用户</label>
 			<label class="radio-inline"><input type="radio" value="2" name="partake_people" >新用户</label>
-			<label class="radio-inline"><input type="radio" value="3" name="partake_people" >不限新老用户</label>
+			<label class="radio-inline"><input type="radio" value="0" name="partake_people" >不限新老用户</label>
 		</div>
 	</div>
 	<div class="form-group col-sm-12">
 		<label class="control-label">超员成团</label>
 		<div class="radio">
-			<label class="radio-inline"><input type="radio" value="2" name="exceed_people" >开启</label>
+			<label class="radio-inline"><input type="radio" value="0" name="exceed_people" >开启</label>
 			<label class="radio-inline"><input type="radio" value="1" name="exceed_people" >关闭</label>
 		</div>
 	</div>
 	<div class="form-group col-sm-12">
 		<label class="control-label">自动开团</label>
 		<div class="radio">
-			<label class="radio-inline"><input type="radio" value="2" name="automatic" >开启</label>
+			<label class="radio-inline"><input type="radio" value="0" name="automatic" >开启</label>
 			<label class="radio-inline"><input type="radio" value="1" name="automatic" >关闭</label>
 		</div>
 	</div>
 	<div class="form-group col-sm-12">
 		<label class="control-label">虚拟成团</label>
 		<div class="radio">
-			<label class="radio-inline"><input type="radio" value="2" name="virtually" >开启</label>
+			<label class="radio-inline"><input type="radio" value="0" name="virtually" >开启</label>
 			<label class="radio-inline"><input type="radio" value="1" name="virtually" >关闭</label>
 		</div>
 	</div>

+ 87 - 0
resources/views/admin/regiment_active/copy.blade.php

@@ -0,0 +1,87 @@
+@extends('admin.public.base')
+@section('body_class')
+style="margin: 0 auto;width: 96%;padding: 30px 0px;"
+@endsection
+@section('content')
+	<form class="post-form" action="" method="post">
+		<div class="form-group col-sm-12" style="font-size:large">基础信息</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">活动名称</label>
+			<input class="form-control" required="required" type="text" placeholder="活动名称" name="name" maxlength="45" value="{{$oldData['name']}}" />
+		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">拼团产品</label>
+			<input class="form-control" required="required" type="text" placeholder="产品编码" name="product_code" value="{{$oldData['product_code']}}" />
+		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">成团人数</label>
+			<input class="form-control" required="required" type="number" placeholder="成团人数" name="number" min="1" max="65535" value="{{$oldData['number']}}" />
+		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">每人限购</label>
+			<input class="form-control" required="required" type="number" placeholder="每人限购" min="0" max="65535" name="quota" value="{{$oldData['quota']}}" />
+		</div>
+		<div class="form-group col-sm-2">
+			<label class="control-label">活动价格</label>
+			<input class="form-control" required="required" type="text" placeholder="活动价格" min="0" name="regiment_price" value="{{$oldData['regiment_price']}}" />
+		</div>
+		<div class="form-group col-sm-2">
+			<label class="control-label">拼团有效期</label>
+			<input class="form-control" required="required" type="number" placeholder="拼团有效期,小时" name="expiration_hours" max="24" value="{{fmod($oldData['expiration'], 24)}}" />
+		</div>
+		<div class="form-group col-sm-2">
+			<label class="control-label">最多参与次数</label>
+			<input class="form-control" required="required" type="number" placeholder="最多参与次数" min="0" max="255" name="participation_number" value="{{$oldData['participation_number']}}" />
+		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">活动开始时间</label>
+			<input class="form-control" required="required" type="datetime-local" placeholder="开始时间"  name="start_time" value="{{date('Y-m-d H:i',$oldData['start_time'])}}" />
+		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">活动结束时间</label>
+			<input class="form-control" required="required" type="datetime-local" placeholder="结束时间" name="end_time" value="{{date('Y-m-d H:i',$oldData['end_time'])}}" />
+		</div>
+		<div class="form-group col-sm-12 " style="font-size:large">更多设置</div>
+		<div class="form-group col-sm-12">
+			<label class="control-label">开团人员</label>
+			<div class="radio">
+				<label class="radio-inline"><input type="radio" value="1" @if($oldData['open_people'] == 1) checked @endif name="open_people" >老用户</label>
+				<label class="radio-inline"><input type="radio" value="2" name="open_people" @if($oldData['open_people'] == 2) checked @endif>新用户</label>
+				<label class="radio-inline"><input type="radio" value="3" name="open_people" @if($oldData['open_people'] == 3) checked @endif>不限新老用户</label>
+			</div>
+		</div>
+		<div class="form-group col-sm-12">
+			<label class="control-label">参团人员</label>
+			<div class="radio">
+				<label class="radio-inline"><input type="radio" value="1" name="partake_people" @if($oldData['partake_people'] == 1) checked @endif>老用户</label>
+				<label class="radio-inline"><input type="radio" value="2" name="partake_people" @if($oldData['partake_people'] == 2) checked @endif>新用户</label>
+				<label class="radio-inline"><input type="radio" value="3" name="partake_people" @if($oldData['partake_people'] == 3) checked @endif>不限新老用户</label>
+			</div>
+		</div>
+		<div class="form-group col-sm-12">
+			<label class="control-label">超员成团</label>
+			<div class="radio">
+				<label class="radio-inline"><input type="radio" value="0" name="exceed_people" @if($oldData['exceed_people'] == 0) checked @endif>开启</label>
+				<label class="radio-inline"><input type="radio" value="1" name="exceed_people" @if($oldData['exceed_people'] == 1) checked @endif>关闭</label>
+			</div>
+		</div>
+		<div class="form-group col-sm-12">
+			<label class="control-label">自动开团</label>
+			<div class="radio">
+				<label class="radio-inline"><input type="radio" value="0" name="automatic" @if($oldData['automatic'] == 0) checked @endif>开启</label>
+				<label class="radio-inline"><input type="radio" value="1" name="automatic" @if($oldData['automatic'] == 1) checked @endif>关闭</label>
+			</div>
+		</div>
+		<div class="form-group col-sm-12">
+			<label class="control-label">虚拟成团</label>
+			<div class="radio">
+				<label class="radio-inline"><input type="radio" value="0" name="virtually" @if($oldData['virtually'] == 0) checked @endif>开启</label>
+				<label class="radio-inline"><input type="radio" value="1" name="virtually" @if($oldData['virtually'] == 1) checked @endif>关闭</label>
+			</div>
+		</div>
+		<div class="form-group col-sm-12">
+			@csrf
+			<input id="send" type="submit" value="提交" class="btn btn-primary btn-block" />
+		</div>
+	</form>
+@endsection

+ 22 - 30
resources/views/admin/regiment_active/edit.blade.php

@@ -5,25 +5,33 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 @section('content')
 	<form class="post-form" action="" method="post">
 		<div class="form-group col-sm-12" style="font-size:large">基础信息</div>
-		<div class="form-group col-sm-2">
+		<div class="form-group col-sm-3">
+			<label class="control-label">活动名称</label>
+			<input class="form-control" required="required" type="text" placeholder="活动名称" name="name" maxlength="45" value="{{$oldData['name']}}" />
+		</div>
+		<div class="form-group col-sm-3">
 			<label class="control-label">拼团产品</label>
 			<input class="form-control" required="required" type="text" placeholder="产品编码" name="product_code" value="{{$oldData['product_code']}}" />
 		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">每人限购</label>
+			<input class="form-control" required="required" type="number" placeholder="每人限购" min="0" max="65535" name="quota" value="{{$oldData['quota']}}" />
+		</div>
+		<div class="form-group col-sm-3">
+			<label class="control-label">成团人数</label>
+			<input class="form-control" required="required" type="number" placeholder="成团人数" name="number" min="1" max="65535" value="{{$oldData['number']}}" />
+		</div>
 		<div class="form-group col-sm-2">
 			<label class="control-label">活动价格</label>
 			<input class="form-control" required="required" type="text" placeholder="活动价格" min="0" name="regiment_price" value="{{$oldData['regiment_price']}}" />
 		</div>
 		<div class="form-group col-sm-2">
-			<label class="control-label">每人限购</label>
-			<input class="form-control" required="required" type="number" placeholder="每人限购" min="0" name="quota" value="{{$oldData['quota']}}" />
-		</div>
-		<div class="form-group col-sm-4">
-			<label class="control-label">活动名称</label>
-			<input class="form-control" required="required" type="text" placeholder="活动名称" name="name" maxlength="45" value="{{$oldData['name']}}" />
+			<label class="control-label">拼团有效期,小时 </label>
+			<input class="form-control" required="required" type="number" placeholder="拼团有效期小时" name="expiration_hours" maxlength="45" max="24" value="{{fmod($oldData['expiration'], 24)}}" />
 		</div>
-		<div class="form-group col-sm-4">
-			<label class="control-label">成团人数</label>
-			<input class="form-control" required="required" type="number" placeholder="成团人数" name="number" maxlength="45" value="{{$oldData['number']}}" />
+		<div class="form-group col-sm-2">
+			<label class="control-label">最多参与次数</label>
+			<input class="form-control" required="required" type="number" placeholder="最多参与次数" min="0" max="255" name="participation_number" value="{{$oldData['participation_number']}}" />
 		</div>
 		<div class="form-group col-sm-3">
 			<label class="control-label">活动开始时间</label>
@@ -33,24 +41,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 			<label class="control-label">活动结束时间</label>
 			<input class="form-control" required="required" type="datetime-local" placeholder="结束时间" name="end_time" value="{{date('Y-m-d H:i',$oldData['end_time'])}}" />
 		</div>
-		<div class="form-group col-sm-6">
-			<label class="control-label">拼团有效期</label>
-			<div class="form-group col-sm-12">
-				{{--<div class="form-group col-sm-6">
-					<label class="control-label">天</label>
-					<input class="form-control" required="required" type="number" placeholder="天" name="expiration_day" maxlength="45" value="{{(int)$oldData['expiration']/24}}" />
-				</div>--}}
-				<div class="form-group col-sm-6">
-					<label class="control-label">小时 </label>
-					<input class="form-control" required="required" type="number" placeholder="小时" name="expiration_hours" maxlength="45" max="24" value="{{fmod($oldData['expiration'], 24)}}" />
-				</div>
-			</div>
-		</div>
 		<div class="form-group col-sm-12 " style="font-size:large">更多设置</div>
-		<div class="form-group col-sm-12">
-			<label class="control-label">最多参与次数</label>
-			<input class="form-control" required="required" type="text" placeholder="最多参与次数" min="0" name="participation_number" value="{{$oldData['participation_number']}}" />
-		</div>
 		<div class="form-group col-sm-12">
 			<label class="control-label">开团人员</label>
 			<div class="radio">
@@ -70,26 +61,27 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 		<div class="form-group col-sm-12">
 			<label class="control-label">超员成团</label>
 			<div class="radio">
-				<label class="radio-inline"><input type="radio" value="2" name="exceed_people" @if($oldData['exceed_people'] == 2) checked @endif>开启</label>
+				<label class="radio-inline"><input type="radio" value="0" name="exceed_people" @if($oldData['exceed_people'] == 0) checked @endif>开启</label>
 				<label class="radio-inline"><input type="radio" value="1" name="exceed_people" @if($oldData['exceed_people'] == 1) checked @endif>关闭</label>
 			</div>
 		</div>
 		<div class="form-group col-sm-12">
 			<label class="control-label">自动开团</label>
 			<div class="radio">
-				<label class="radio-inline"><input type="radio" value="2" name="automatic" @if($oldData['automatic'] == 2) checked @endif>开启</label>
+				<label class="radio-inline"><input type="radio" value="0" name="automatic" @if($oldData['automatic'] == 0) checked @endif>开启</label>
 				<label class="radio-inline"><input type="radio" value="1" name="automatic" @if($oldData['automatic'] == 1) checked @endif>关闭</label>
 			</div>
 		</div>
 		<div class="form-group col-sm-12">
 			<label class="control-label">虚拟成团</label>
 			<div class="radio">
-				<label class="radio-inline"><input type="radio" value="2" name="virtually" @if($oldData['virtually'] == 2) checked @endif>开启</label>
+				<label class="radio-inline"><input type="radio" value="0" name="virtually" @if($oldData['virtually'] == 0) checked @endif>开启</label>
 				<label class="radio-inline"><input type="radio" value="1" name="virtually" @if($oldData['virtually'] == 1) checked @endif>关闭</label>
 			</div>
 		</div>
 		<div class="form-group col-sm-12">
 			@csrf
+			<input type="hidden" name="id" id="id" value="{{$oldData['id']}}" />
 			<input id="send" type="submit" value="提交" class="btn btn-primary btn-block" />
 		</div>
 	</form>

+ 2 - 2
resources/views/admin/regiment_active/index.blade.php

@@ -23,7 +23,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 	<div class="form-group col col-md-1" style="margin-right: 2px;">
 		<select name="status" class="form-control">
 			<option value="" >状态</option>
-			<option value="0" @if (request('status') === '1' ) selected="selected" @endif >启用</option>
+			<option value="1" @if (request('status') === '1' ) selected="selected" @endif >启用</option>
 			<option value="2" @if (request('status') === '2' ) selected="selected" @endif >停用</option>
 			<option value="3" @if (request('status') === '3' ) selected="selected" @endif >结束</option>
 		</select>
@@ -90,7 +90,7 @@ style="margin: 0 auto;width: 96%;padding: 30px 0px;"
 								<a href="{{url('admin/regiment_active/edit?'.http_build_query(['id'=>$a['id']]))}}" class="btn btn-sm btn-warning" >编辑</a>
 								@endif
 								@if(check_auth('admin/regiment_active/copy'))
-									<a data-url="{{url('admin/regiment_active/copy?'.http_build_query(['id'=>$a['id'],'status'=>0]))}}" class="set_status btn btn-sm btn-success" >复制</a>
+									<a href="{{url('admin/regiment_active/copy?'.http_build_query(['id'=>$a['id']]))}}" class="btn btn-sm btn-success" >复制</a>
 								@endif
 								@if(check_auth('admin/regiment_active/set_status'))
 									@if($a['status'] === 2)

+ 4 - 0
routes/web.php

@@ -453,8 +453,12 @@ Route::middleware('admin')->prefix('admin')->group(function(){
     Route::any('regiment_active/add',[App\Http\Controllers\Admin\RegimentActive::class,'add']);
     // 编辑
     Route::any('regiment_active/edit',[App\Http\Controllers\Admin\RegimentActive::class,'edit']);
+    // 编辑
+    Route::any('regiment_active/copy',[App\Http\Controllers\Admin\RegimentActive::class,'copy']);
     // 状态
     Route::any('regiment_active/set_status',[App\Http\Controllers\Admin\RegimentActive::class,'set_status']);
+
+
     //团列表
     Route::any('regiment/index',[App\Http\Controllers\Admin\Regiment::class,'index']);
     //团记录列表