scene('list')->validate(); // 接收参数 $phone = request('phone', ''); $companyName = request('company_name', ''); $status = request('status'); $limit = request('limit', config('page_num', 10)); $start_time = request('start_time', ''); $end_time = request('end_time', ''); // 查询数据 $map = []; // 时间条件 if ($start_time) $map[] = ['insert_time', '>=', strtotime($start_time.' 00:00:00')]; if ($end_time) $map[] = ['insert_time', '<=', strtotime($end_time.' 23:59:59')]; // 组合条件 if ($phone) $map[] = ['phone', '=', $phone]; if ($companyName) $map[] = ['company_name', 'like', "%$companyName%"]; if (!is_null($status)) $map[] = ['status', '=', $status]; // 查询系统用户 $Paginator = $LeadMessageModel->query()->where($map)->orderByDesc('id')->paginate($limit, ['id', 'phone', 'company_name', 'position', 'remarks', 'status', 'insert_time', 'update_time']); // 获取数据 $data['total'] = $Paginator->total(); $data['current_page'] = $Paginator->currentPage(); $data['per_page'] = (int)$Paginator->perPage(); $data['last_page'] = $Paginator->lastPage(); $data['data'] = $Paginator->items(); // 告知结果 return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $data]); } /** * 新增 * @author: 唐远望 * @version: 1.0 * @date: 2026-03-05 */ public function add(Request $Request, LeadMessageModel $LeadMessageModel) { // 验证规则 $Request->scene('add')->validate(); $is_admin = request('access_token.is_admin', '0'); //是否管理员操作 0=是1=否 // 接收数据 $data['phone'] = request('phone', ''); $data['company_name'] = request('company_name', '未知'); $data['position'] = request('position', '未知'); $data['remarks'] = request('remarks', ''); // 查询用户 $oldData = $LeadMessageModel->where([['phone', '=', $data['phone']]])->first(['id', 'phone', 'status']); // 存在的话 if ($oldData) return json_send(['code' => 'success', 'msg' => '留言成功', 'data' => $oldData]); // 写入表 $data['id'] = $LeadMessageModel->add($data); // // 失败返回 if (!$data['id']) return json_send(['code' => 'error', 'msg' => '提交失败,请重试']); // 记录行为 $admin_id = request('access_token.uid', 0); //用户ID $table_name = $LeadMessageModel->getTable(); $notes_type = 1; //操作类型,1添加,2修改,3=删除 $this->addAdminHistory('官网留言管理', 0, $admin_id, $is_admin, $table_name, $notes_type, [], $data, '新增了留言'); // 返回结果 return json_send(['code' => 'success', 'msg' => '留言成功', 'data' => '']); } /** * 修改状态 * @author: 唐远望 * @version: 1.0 * @date: 2026-03-05 */ public function set_status(Request $request, LeadMessageModel $LeadMessageModel) { // 验证参数 $request->scene('set_status')->validate(); $is_admin = request('access_token.is_admin', '0'); //是否管理员操作 0=是1=否 // 设置状态 $id = request('id', 0); $status = request('status', 0); $remarks = request('remarks', ''); // 查询用户 $oldData = $LeadMessageModel->where([['id', '=', $id]])->first(); // 如果用户不存在 if (!$oldData) return json_send(['code' => 'error', 'msg' => '用户不存在']); // 执行修改 $result = $LeadMessageModel->where([['id', '=', $id]])->update(['status' => $status, 'remarks' => $remarks,'update_time' => time()]); // 提示新增失败 if (!$result) return json_send(['code' => 'error', 'msg' => '设置失败']); // 记录行为 $admin_id = request('access_token.uid', 0); //用户ID $table_name = $LeadMessageModel->getTable(); $notes_type = 2; //操作类型,1添加,2修改,3=删除 $this->addAdminHistory('官网留言管理', 0, $admin_id, $is_admin, $table_name, $notes_type, [], ['status' => $status],"修改了记录ID为:$id 的留言状态"); // 告知结果 return json_send(['code' => 'success', 'msg' => '设置成功', 'data' =>'']); } }