Commit 1db4632b authored by gxx's avatar gxx

团队邀请成员功能实现

parent f4380957
...@@ -20,6 +20,8 @@ interface GroupServiceContract ...@@ -20,6 +20,8 @@ interface GroupServiceContract
public function ajax($phone); public function ajax($phone);
public function simpleSearch($search_content,$page); public function simpleSearch($search_content,$page);
public function getUser($phone);
public function invite($group_id,$user_id);
} }
\ No newline at end of file
...@@ -168,15 +168,40 @@ class GroupController extends Controller ...@@ -168,15 +168,40 @@ class GroupController extends Controller
} }
// 根据条件查询用户
public function simpleSearchUser($search) public function simpleSearchUser($search)
{ {
$users = $this->mUser->simpleSearch($search,$page=8); $user = $this->mGroup->getUser($search);
if ($users->isEmpty()){
if ($user){
return $user;
}else{
return null; return null;
} }
return $users; }
// return Message::makeSuccess($users);
public function invitePage(Request $request)
{
$group_id = $request->group_id;
return view('admin/group/invite',compact('group_id'));
}
// 邀请用户加入到团队
public function invite(Request $request)
{
$user_id = $request->user_id;
$group_id = $request->group_id;
$inviteResult = $this->mGroup->invite($group_id,$user_id);
if($inviteResult){
return Message::makeSuccess('邀请成功!');
}else{
return Message::makeError('你邀请过了吧!');
}
} }
......
...@@ -12,6 +12,7 @@ namespace App\Services; ...@@ -12,6 +12,7 @@ namespace App\Services;
use App\Contracts\GroupServiceContract; use App\Contracts\GroupServiceContract;
use App\Models\Group; use App\Models\Group;
use App\Models\User; use App\Models\User;
use App\Models\UserGroup;
use App\Util\UploadPhoto; use App\Util\UploadPhoto;
class GroupService implements GroupServiceContract class GroupService implements GroupServiceContract
...@@ -146,4 +147,32 @@ class GroupService implements GroupServiceContract ...@@ -146,4 +147,32 @@ class GroupService implements GroupServiceContract
} }
return $group; return $group;
} }
public function getUser($phone)
{
$user = User::where('phone',$phone)->get();
if ($user->isEmpty()){
return null;
}else{
return $user;
}
}
public function invite($group_id, $user_id)
{
$groups = UserGroup::where('group_id',$group_id)->get();
if (!$groups->isEmpty()){
foreach ($groups as $group){
if ($group['user_id'] == $user_id){
return null;
}
}
}
$userGroup = new UserGroup();
$userGroup->user_id = $user_id;
$userGroup->group_id = $group_id;
$userGroup->save();
return $userGroup;
}
} }
\ No newline at end of file
...@@ -65,51 +65,9 @@ ...@@ -65,51 +65,9 @@
<div class="active tab-pane" id="activity" style="overflow: hidden"> <div class="active tab-pane" id="activity" style="overflow: hidden">
@if(count($groups->usergroup) == 0) @if(count($groups->usergroup) == 0)
<div style="margin-left: 39%;"> <div style="margin-left: 39%;">
<h2> 邀请新成员 </h2> <h2><a href="{{route('group.invitePage',['group_id' => $groups->id])}}"> 邀请新成员</a> </h2>
</div> </div>
<div style="margin-left: 18%;">
{{--<form action="{{url('group/search_user')}}">--}}
<div class="row">
<div class="col-lg-6">
<div class="input-group" id="group">
<input type="text" class="form-control" placeholder="用户名、手机号码、邮箱" id="search" style=" width: 600px;">
<span class="input-group-btn">
<button class="btn btn-default" id="button-search"> 搜索 </button>
</span>
</div><!-- /input-group -->
</div><!-- /.col-lg-6 -->
</div><!-- /.row -->
{{--</form>--}}
</div>
<script src="{{url('js/jquery-3.2.1.min.js')}}"> </script>
<script>
var a = $('#button-search').click(function () {
var search = $('#search').val();
$.ajax({
type:'get',
url:'{{url('group/search_user')}}/' + search ,
success:function(data){
if(data){
console.log(data['data'][0]);
$('#activity').append(
" <div style='margin-left: 18%;background-color: yellow;width: 655px;margin-top: 5px;'> <p style='width: 200px; height: 34px; width: 600px;float: left;line-height: 34px;border: 1px solid #D2D6DE;'>" + data['data'][0]['user_name'] + "</p> <a class='btn btn-info' style='float: left'> 邀请 </a> </div>");
}
},
error:function(data){
console.log('错误');
}
})
})
</script>
@else @else
@foreach($groups->usergroup as $user) @foreach($groups->usergroup as $user)
......
@extends('admin/dashboard')
@section('content')
<!-- general form elements -->
<div class="box box-primary">
<div class="box-header with-border">
<h3 class="box-title">团队邀请</h3>
</div>
<!-- /.box-header -->
<!-- form start -->
<form role="form" action="{{route('group.invite')}}" method="post" enctype="multipart/form-data" onsubmit="return checkForm()">
{{csrf_field()}}
<div class="box-body">
<div class="form-group">
<label for="exampleInputEmail1">查询用户</label>
<input type="text" class="form-control" id="search" placeholder="phone" name="phone" value="">
<input type="hidden" name="id" value="">
</div>
<p style="color: green; display: none" id="pp1" >*用户存在可以邀请加入</p>
<input type="text" id="user_id" value="" name="user_id">
<input type="text" name="group_id" value="{{$group_id}}">
</div>
<!-- /.box-body -->
<div class="box-footer">
<p type="submit" class="btn btn-primary" id="button-search" >查询</p>
<button type="submit" class="btn btn-primary" id="button" >邀请</button>
</div>
</form>
</div>
<script src="{{url('js/jquery-3.2.1.min.js')}}"> </script>
<script>
function checkForm() {
console.log($('#user_id').val()) ;
if ($('#user_id').val() == ''){
alert('请先查询用户是否存在');
return false;
}
return true;
}
var a = $('#button-search').click(function () {
var search = $('#search').val();
$.ajax({
type:'get',
url:'{{url('group/search_user')}}/' + search ,
success:function(data){
console.log(data[0]);
if(data){
// 设置 新的拥有者的ID
$('#user_id').val(data[0]['id']);
$('#pp1').show();
}else{
$('#pp1').hide();
alert('没有此用户!');
}
},
error:function(data){
console.log('错误');
}
})
})
</script>
@endsection
\ No newline at end of file
...@@ -56,14 +56,15 @@ Route::group(['prefix'=> 'group'],function (){ ...@@ -56,14 +56,15 @@ Route::group(['prefix'=> 'group'],function (){
Route::get('get','GroupController@get')->name('group.get'); Route::get('get','GroupController@get')->name('group.get');
Route::get('updatePage','GroupController@updatePage')->name('group.updatePage'); Route::get('updatePage','GroupController@updatePage')->name('group.updatePage');
Route::post('update','GroupController@update')->name('group.update'); Route::post('update','GroupController@update')->name('group.update');
Route::get('transferPage','GroupController@transferPage')->name('group.transferPage'); Route::get('transferPage','GroupController@transferPage')->name('group.transferPage');
Route::get('ajax/{phone}','GroupController@ajax')->name('group.ajax'); Route::get('ajax/{phone}','GroupController@ajax')->name('group.ajax');
Route::post('transfer','GroupController@transfer')->name('group.transfer'); Route::post('transfer','GroupController@transfer')->name('group.transfer');
Route::get('search','GroupController@simpleSearch')->name('group.search'); Route::get('search','GroupController@simpleSearch')->name('group.search');
Route::get('search_user/{search}','GroupController@simpleSearchUser')->name('group.simpleSearchUser'); Route::get('search_user/{search}','GroupController@simpleSearchUser')->name('group.simpleSearchUser');
Route::get('invite_page','GroupController@invitePage')->name('group.invitePage');
Route::post('invite','GroupController@invite')->name('group.invite');
}); });
...@@ -74,6 +75,7 @@ Route::group(['prefix'=> 'project'],function (){ ...@@ -74,6 +75,7 @@ Route::group(['prefix'=> 'project'],function (){
Route::get('updatePage','ProjectController@updatePage')->name('project.updatePage'); Route::get('updatePage','ProjectController@updatePage')->name('project.updatePage');
Route::post('update','ProjectController@update')->name('project.update'); Route::post('update','ProjectController@update')->name('project.update');
Route::get('search','ProjectController@search')->name('project.search'); Route::get('search','ProjectController@search')->name('project.search');
}); });
// 权限 // 权限
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment