# remove redundant page actions and add Chinese demo data

## Goal

精简已登录页面中与侧边栏重复的右侧跨模块跳转按钮，补充更贴近中文图书馆场景的演示图书与读者数据，并按参考截图重构真实可用的登录界面。

## What I already know

* 用户希望移除以下重复入口：报表中心右侧“借阅记录”；馆藏检索右侧“管理图书”；图书管理右侧“分类”“查看馆藏”；管理分类右侧“管理图书”；读者档案右侧“管理登录账户”；用户账户与角色右侧“读者档案”。
* 侧边栏已经提供这些模块之间的跳转，因此页面标题栏和工具栏中的跨模块二级入口会显得重复。
* “新增图书”“新增分类”“新增读者档案”“新增账户”等当前页面内的主要操作仍应保留。
* 演示数据位于 `src/main/resources/db/schema.sql`，当前包含英文读者名、英文分类和英文图书。
* 项目是 JSP + Servlet + MySQL 架构，前端页面在 `src/main/webapp/WEB-INF/jsp/`，数据库初始化脚本使用 `utf8mb4`。
* 用户补充要求：仿照参考截图重构登录界面，必须是真实可用的登录表单，而不是静态展示页。
* 参考截图特征：浅色模糊图书馆背景、居中的白色登录卡片、蓝色书本图标与“图书管理系统”标题、用户名/密码输入框图标、密码显隐按钮、身份单选项、记住我和忘记密码入口、蓝色主登录按钮。

## Assumptions

* 本任务只调整冗余跨模块按钮，不改变侧边栏导航、权限控制、Servlet 路由或业务流程。
* 数据初始化仍使用 `INSERT IGNORE` / `ON DUPLICATE KEY UPDATE` 的现有风格，避免重复执行脚本破坏已有本地数据。
* 中文演示数据可以替换或扩充现有英文样例，但登录测试账号用户名和密码保持不变。

## Requirements

* 报表中心页面不再显示跳转到借阅记录的右侧按钮。
* 馆藏检索页面不再显示跳转到管理图书的右侧按钮。
* 图书管理页面不再显示跳转到分类管理或馆藏检索的右侧按钮；保留新增图书入口。
* 分类管理页面不再显示跳转到管理图书的右侧按钮；保留新增分类入口。
* 读者档案页面不再显示跳转到管理登录账户的右侧按钮；保留新增读者档案入口。
* 用户账户与角色页面不再显示跳转到读者档案的右侧按钮；保留新增账户入口。
* 数据库初始化脚本加入中文图书分类、中文书名、中文作者和中文读者姓名。
* 本地演示账号仍能用于登录验证。
* 登录页按参考截图重构视觉，但保留现有 `POST /login`、`username`、`password`、`redirect`、错误提示和回填用户名等真实登录能力。
* 登录页新增或保留真实可交互控件：密码显隐切换、登录身份单选项、记住我选项和忘记密码入口。
* 登录身份选择不应破坏现有服务端认证；当前后端仍以账号密码和账号角色为准，前端角色选项仅作为登录意图提示或表单辅助字段。
* 登录页需要在桌面和移动端保持可用，输入框、按钮和错误提示不能溢出或遮挡。

## Acceptance Criteria

* [x] 指定页面中的重复跨模块按钮被移除，侧边栏仍能导航到对应模块。
* [x] 页面内新增操作按钮未被误删。
* [x] `schema.sql` 包含多条中文图书数据和多条中文读者数据。
* [x] 中文演示数据使用 `utf8mb4` 兼容的文本，不引入新表或迁移机制。
* [x] 相关检查或可用的构建验证通过；若环境缺少 Maven，记录 fallback 验证。
* [x] 登录页视觉接近参考截图，并使用真实表单提交到现有 `/login`。
* [x] 密码显隐、记住我、身份单选项在浏览器中可交互且不破坏登录流程。
* [x] 登录失败时继续显示服务端错误提示并保留用户名/redirect。
* [x] 登录页在移动端和桌面端布局稳定，无文字或控件重叠。

## Definition of Done

* Tests/checks run where available.
* Lint/typecheck/build status reported.
* Specs reviewed for whether new conventions need recording.

## Out of Scope

* 不重设计侧边栏或整体视觉风格。
* 不新增页面、权限、路由或服务层能力。
* 不改变借阅记录、报表、用户账户或读者档案的业务逻辑。
* 不实现真实找回密码流程；忘记密码入口可展示当前系统暂未开放或指向安全的占位交互。

## Technical Notes

* Likely JSP files: `src/main/webapp/WEB-INF/jsp/reports/dashboard.jsp`, `src/main/webapp/WEB-INF/jsp/books/catalog.jsp`, `src/main/webapp/WEB-INF/jsp/books/manage.jsp`, `src/main/webapp/WEB-INF/jsp/books/categories.jsp`, `src/main/webapp/WEB-INF/jsp/readers/manage.jsp`, `src/main/webapp/WEB-INF/jsp/admin/users/manage.jsp`.
* Login files: `src/main/webapp/WEB-INF/jsp/auth/login.jsp`, `src/main/webapp/static/css/app.css`, and possibly small inline or static JavaScript for password visibility/remember-me interactions.
* Data file: `src/main/resources/db/schema.sql`.
* Relevant specs: frontend JSP/component/state/quality guidelines and backend database/quality guidelines.
* Final verification: `git diff --check`, `node --check src/main/webapp/static/js/login.js`, JSP scriptlet/SQL/JDBC scans, removed-link scan, password persistence scan, and `/home/sjy/.sdkman/candidates/maven/current/bin/mvn clean package` passed.
* Spec update decision: `.trellis/spec/frontend/type-safety.md` documents the new presentation-only login controls (`loginRole`, `rememberUsername`) and the username-only remember-me constraint.
