all(), [ 'orderByCreatedAt' => 'string|in:desc,asc' ]); if ($validator->fails()) { return showJsonErr($validator->errors()->first()); } $res = SystemNotice::orderBy('created_at', $param['orderByCreatedAt'] ?? 'desc')->paginate(perPage()); if ($res->isNotEmpty()) { collect($res->items())->each(function ($item, $key) { $item->provinceMsg = Area::getName($item->province); $item->cityMsg = Area::getName($item->city); $item->districtMsg = Area::getName($item->district); $item->cerated_user = User::select(['nick_name'])->whereId($item->created_uid)->first(); }); } return showJsonSucc(1001, $res); } /** * 公告详情 * @author lyh * @date 2019/4/15 * @param Request $request * @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response * @description */ public function show(Request $request) { $validator = \Validator::make($param = $request->all(), [ 'id' => 'required|exists:user,id', ]); if ($validator->fails()) { return showJsonErr($validator->errors()->first()); } } /** * 公告编辑 * @author lyh * @date 2019/4/15 * @param Request $request * @return \Illuminate\Contracts\Routing\ResponseFactory|\Symfony\Component\HttpFoundation\Response * @description */ public function add(Request $request) { $validator = \Validator::make($param = $request->all(), [ 'province' => 'exists:area,id', 'city' => 'exists:area,id', 'district' => 'integer', 'content' => 'required', 'title' => 'required' ]); if ($validator->fails()) { return showJsonErr($validator->errors()->first()); } $param['created_uid'] = \Auth::id(); \DB::beginTransaction(); try { SystemNotice::insert($param); if (!empty($param['province'])) { $ids = User::whereProvince($param['province']) ->whereCity($param['city'] ?? 0) ->whereDistrict($param['district'] ?? 0) ->where('is_frontend', '=', 1) ->pluck('id'); foreach ($ids as $id) { UserMsg::insert([ 'title' => $param['title'], 'uid' => $id, 'type' => 1, 'content' => $param['content'] ]); } UserMsg::SendToList(['title' => $param['title'],'content' => $param['content']],$ids); } else { $msgarr=['title'=>$param['title'], 'uid'=>0, 'type'=>14, 'content'=>$param['content']]; UserMsg::SendQuntui($msgarr); } \DB::commit(); return showJsonSucc('添加公告成功'); } catch (\Exception $exception) { \DB::rollBack(); return showJsonErr($exception->getMessage()); } } }