删除所有console.log输出,优化评查结果的表格的显示,添加新的页码获取逻辑

This commit is contained in:
2025-06-02 18:55:00 +08:00
parent 820baa5b22
commit b02978508d
71 changed files with 862 additions and 572 deletions
+27 -8
View File
@@ -1,8 +1,8 @@
import { useState } from "react";
import { Form, useActionData, useNavigation } from "@remix-run/react";
import { type MetaFunction, type ActionFunctionArgs, redirect, json, type LoaderFunctionArgs } from "@remix-run/node";
import { type MetaFunction, type ActionFunctionArgs, redirect, type LoaderFunctionArgs } from "@remix-run/node";
import styles from "~/styles/pages/login.css?url";
import { createUserSession, getUserSession, getSession } from "~/root";
import { createUserSession, getUserSession, getSession, type UserRole } from "~/root";
export const links = () => [
{ rel: "stylesheet", href: styles }
@@ -20,21 +20,24 @@ export async function action({ request }: ActionFunctionArgs) {
const formData = await request.formData();
const username = formData.get("username") as string;
const password = formData.get("password") as string;
const userRole = formData.get("userRole") as UserRole || 'common';
// 简单的登录验证,实际应用中应该进行真正的身份验证
if (!username || !password) {
return json({ error: "用户名和密码不能为空" });
return Response.json({ error: "用户名和密码不能为空" });
}
// 在实际应用中,这里应该是对用户名和密码的验证逻辑
// 简化起见,我们直接视为登录成功
// 获取session中存储的重定向URL,如果没有则默认到/home
// 获取session中存储的重定向URL,如果没有则默认到/
const session = await getSession(request);
const redirectTo = session.get("redirectTo") || "/home";
// 查看session中存储的redirectTo值
const redirectTo = session.get("redirectTo") || "/";
// console.log("登录后重定向到:", redirectTo);
// 创建登录会话并重定向
return createUserSession(true, redirectTo);
return createUserSession(true, userRole, redirectTo);
}
// 加载器,获取当前会话状态
@@ -43,7 +46,7 @@ export async function loader({ request }: LoaderFunctionArgs) {
// 如果已登录,重定向到首页
if (isAuthenticated) {
return redirect("/home");
return redirect("/");
}
return Response.json({ isAuthenticated });
@@ -52,6 +55,7 @@ export async function loader({ request }: LoaderFunctionArgs) {
export default function Login() {
const [username, setUsername] = useState("");
const [password, setPassword] = useState("");
const [userRole, setUserRole] = useState<UserRole>("common");
const actionData = useActionData<typeof action>();
const navigation = useNavigation();
@@ -62,7 +66,7 @@ export default function Login() {
<div className="login-page">
<div className="login-container">
<div className="login-header">
<img src="/logo.png" alt="中国烟草" className="login-logo" />
{/* <img src="/logo.png" alt="中国烟草" className="login-logo" /> */}
<h1 className="login-title">AI合同及卷宗审核系统</h1>
</div>
@@ -101,6 +105,21 @@ export default function Login() {
/>
</div>
<div className="form-group">
<label htmlFor="userRole"></label>
<select
id="userRole"
name="userRole"
value={userRole}
onChange={(e) => setUserRole(e.target.value as UserRole)}
className="form-input"
required
>
<option value="common"></option>
{/* <option value="developer">开发者</option> */}
</select>
</div>
<button
type="submit"
className="login-button"