122 lines
5.5 KiB
PHP
122 lines
5.5 KiB
PHP
<?php
|
|
|
|
namespace app\controller\admin\api\v1;
|
|
|
|
use support\Request;
|
|
|
|
use App\Utils\ApiResponse;
|
|
|
|
use App\model\Volunteerservicecorp;
|
|
use App\model\Users;
|
|
use App\model\Volunteerservicecorpsdetailed;
|
|
use App\model\Volunteerjoinrequest;
|
|
use App\model\Message;
|
|
use hg\apidoc\annotation as Apidoc;
|
|
use plugin\admin\app\model\User;
|
|
use App\dao\VolunteerservicecorpsDao;
|
|
/**
|
|
* @Apidoc\Title("admin志愿者队伍控制器")
|
|
*/
|
|
|
|
class VolunteerservicecorpsController
|
|
{
|
|
protected $noNeedLogin = ['get_volunteerservicecorp_list','get_volunteerservicecorp_details','del_volunteerservicecorp','add_volunteerservicecorp','edi_volunteerservicecorp'];
|
|
|
|
/**
|
|
* @Apidoc\Title("1.0 志愿队查询所有")
|
|
* @Apidoc\Url("admin/api/v1/Volunteerservicecorps/get_volunteerservicecorp_list")
|
|
* @Apidoc\Method("POST")
|
|
*/
|
|
public function get_volunteerservicecorp_list(Request $request)
|
|
{
|
|
$tmp = Volunteerservicecorp::all();
|
|
$res = [];
|
|
foreach ($tmp as $k => $v) {
|
|
$tmp2 = Volunteerservicecorpsdetailed::where('groupid', $v->id)->get();
|
|
$number = Volunteerservicecorpsdetailed::where('groupid', $v->id)->count();
|
|
$leader = Users::where('id', $v->leaderid)->first(['nickname', 'phone', 'avatar']);
|
|
foreach ($tmp2 as $key => $value) {
|
|
$member[] = Users::where('id', $value->userid)->first(['nickname', 'phone', 'avatar']);
|
|
}
|
|
$res['group'][] = array('groupname' => $v->groupname, 'leaderid' => $v->leaderid, 'groupid' => $v->id, "category" => $v->category, 'img' => $v->img, 'number' => $number, 'leader' => $leader, 'member' => $member);
|
|
}
|
|
return ApiResponse::success(200, $res);
|
|
}
|
|
/**
|
|
* @Apidoc\Title("1.0 获取志愿队伍详细信息根据id")
|
|
* @Apidoc\Url("admin/api/v1/Volunteerservicecorps/get_volunteerservicecorp_details")
|
|
* @Apidoc\Param("volunteerservicecorp_id", type="int",require=true, desc="队伍id")
|
|
* @Apidoc\Method("POST")
|
|
*/
|
|
public function get_volunteerservicecorp_details(Request $request)
|
|
{
|
|
$data = $request->post();
|
|
$volunteerservicecorp_id = $data['volunteerservicecorp_id'];
|
|
$tmp = Volunteerservicecorp::where('id', $volunteerservicecorp_id)->get();
|
|
$res = [];
|
|
foreach ($tmp as $k => $v) {
|
|
$tmp2 = Volunteerservicecorpsdetailed::where('groupid', $v->id)->get();
|
|
$number = Volunteerservicecorpsdetailed::where('groupid', $v->id)->count();
|
|
$leader = Users::where('id', $v->leaderid)->first(['nickname', 'phone', 'avatar']);
|
|
foreach ($tmp2 as $key => $value) {
|
|
$member[] = Users::where('id', $value->userid)->first(['nickname', 'phone', 'avatar']);
|
|
}
|
|
$res['group'] = array('groupname' => $v->groupname, 'leaderid' => $v->leaderid, "category" => $v->category, 'briefly' => $v->briefly, 'created_at' => $v->created_at, 'img' => $v->img, 'number' => $number, 'leader' => $leader, 'member' => $member);
|
|
}
|
|
return ApiResponse::success(200, $res);
|
|
}
|
|
/**
|
|
* @Apidoc\Title("1.0 删除志愿队伍根据id")
|
|
* @Apidoc\Url("admin/api/v1/Volunteerservicecorps/del_volunteerservicecorp")
|
|
* @Apidoc\Param("groupid", type="int",require=true, desc="队伍id")
|
|
* @Apidoc\Method("POST")
|
|
*/
|
|
public function del_volunteerservicecorp(Request $request){
|
|
$data = $request->post();
|
|
VolunteerservicecorpsDao::del($data['groupid']);
|
|
return ApiResponse::success(200, []);
|
|
}
|
|
|
|
/**
|
|
* @Apidoc\Title("1.0 增加志愿队伍")
|
|
* @Apidoc\Url("admin/api/v1/Volunteerservicecorps/add_volunteerservicecorp")
|
|
* @Apidoc\Param("leaderid", type="int",require=true, desc="组长用户id")
|
|
* @Apidoc\Param("groupname", type="string",require=true, desc="组名称")
|
|
* @Apidoc\Param("category", type="string",require=true, desc="组分类")
|
|
* @Apidoc\Param("img", type="string",require=true, desc="首页图片url")
|
|
* @Apidoc\Param("briefly", type="string",require=true, desc="队伍简介")
|
|
* @Apidoc\Method("POST")
|
|
*/
|
|
public function add_volunteerservicecorp(Request $request){
|
|
$data = $request->post();
|
|
$col_array=['leaderid','groupname','category','img','briefly'];
|
|
$Volunteerservicecorp=new Volunteerservicecorp();
|
|
foreach($col_array as $v){
|
|
$Volunteerservicecorp->$v=$data[$v];
|
|
}
|
|
$Volunteerservicecorp->save();
|
|
return ApiResponse::success(200, []);
|
|
}
|
|
/**
|
|
* @Apidoc\Title("1.0 修改志愿队伍")
|
|
* @Apidoc\Url("admin/api/v1/Volunteerservicecorps/add_volunteerservicecorp")
|
|
* @Apidoc\Param("leaderid", type="int",require=true, desc="组长用户id")
|
|
* @Apidoc\Param("groupname", type="string",require=true, desc="组名称")
|
|
* @Apidoc\Param("category", type="string",require=true, desc="组分类")
|
|
* @Apidoc\Param("img", type="string",require=true, desc="首页图片url")
|
|
* @Apidoc\Param("briefly", type="string",require=true, desc="队伍简介")
|
|
* @Apidoc\Param("id", type="int",require=true, desc="队伍id")
|
|
* @Apidoc\Method("POST")
|
|
*/
|
|
public function edi_volunteerservicecorp(Request $request){
|
|
$data = $request->post();
|
|
$col_array=['leaderid','groupname','category','img','briefly'];
|
|
$Volunteerservicecorp=Volunteerservicecorp::where('id',$data['id']);
|
|
foreach($col_array as $v){
|
|
$Volunteerservicecorp->$v=$data[$v];
|
|
}
|
|
$Volunteerservicecorp->save();
|
|
return ApiResponse::success(200, []);
|
|
}
|
|
}
|