Skip to content

Commit

Permalink
Merge pull request #3 from wenhaogege66/front-1
Browse files Browse the repository at this point in the history
Add files via upload
  • Loading branch information
wenhaogege66 committed Jun 10, 2024
2 parents 877e3a7 + 823bfe8 commit 6720491
Show file tree
Hide file tree
Showing 35 changed files with 1,697 additions and 782 deletions.
19 changes: 10 additions & 9 deletions frontend/index.html
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
<!doctype html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<head>
<meta charset="UTF-8">
<link rel="icon" href="/logo.png" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>出纳员操作</title>
</head>
<body>
<title>在线银行系统登录</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/cashier/cashier_main.js"></script>
</body>
</html>
这是总页面
<script type="module" src="./src/login/login_main.js"></script>
</body>
</html>
14 changes: 14 additions & 0 deletions frontend/online_manager.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="icon" href="/logo.png" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>互联网个人权限管理员</title>
</head>
<body>
<div id="app"></div>

<script type="module" src="/src/online_user_administrator/online_user_administrator_main.js"></script>
</body>
</html>
14 changes: 14 additions & 0 deletions frontend/online_user.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="icon" href="/logo.png" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>互联网个人银行</title>
</head>
<body>
<div id="app"></div>

<script type="module" src="/src/online_user/online_user_main.js"></script>
</body>
</html>
773 changes: 1 addition & 772 deletions frontend/package-lock.json

Large diffs are not rendered by default.

86 changes: 86 additions & 0 deletions frontend/src/login/assets/base.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
/* color palette from <https://github.com/vuejs/theme> */
:root {
--vt-c-white: #ffffff;
--vt-c-white-soft: #f8f8f8;
--vt-c-white-mute: #f2f2f2;

--vt-c-black: #181818;
--vt-c-black-soft: #222222;
--vt-c-black-mute: #282828;

--vt-c-indigo: #2c3e50;

--vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
--vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
--vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
--vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);

--vt-c-text-light-1: var(--vt-c-indigo);
--vt-c-text-light-2: rgba(60, 60, 60, 0.66);
--vt-c-text-dark-1: var(--vt-c-white);
--vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
}

/* semantic color variables for this project */
:root {
--color-background: var(--vt-c-white);
--color-background-soft: var(--vt-c-white-soft);
--color-background-mute: var(--vt-c-white-mute);

--color-border: var(--vt-c-divider-light-2);
--color-border-hover: var(--vt-c-divider-light-1);

--color-heading: var(--vt-c-text-light-1);
--color-text: var(--vt-c-text-light-1);

--section-gap: 160px;
}

@media (prefers-color-scheme: dark) {
:root {
--color-background: var(--vt-c-black);
--color-background-soft: var(--vt-c-black-soft);
--color-background-mute: var(--vt-c-black-mute);

--color-border: var(--vt-c-divider-dark-2);
--color-border-hover: var(--vt-c-divider-dark-1);

--color-heading: var(--vt-c-text-dark-1);
--color-text: var(--vt-c-text-dark-2);
}
}

*,
*::before,
*::after {
box-sizing: border-box;
margin: 0;
font-weight: normal;
}

body {
min-height: 100vh;
color: var(--color-text);
background: var(--color-background);
transition:
color 0.5s,
background-color 0.5s;
line-height: 1.6;
font-family:
Inter,
-apple-system,
BlinkMacSystemFont,
'Segoe UI',
Roboto,
Oxygen,
Ubuntu,
Cantarell,
'Fira Sans',
'Droid Sans',
'Helvetica Neue',
sans-serif;
font-size: 15px;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
Binary file added frontend/src/login/assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 35 additions & 0 deletions frontend/src/login/assets/main.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
@import 'base.css';

#app {
max-width: 1280px;
margin: 0 auto;
padding: 2rem;
font-weight: normal;
}

a,
.green {
text-decoration: none;
color: hsla(160, 100%, 37%, 1);
transition: 0.4s;
padding: 3px;
}

@media (hover: hover) {
a:hover {
background-color: hsla(160, 100%, 37%, 0.2);
}
}

@media (min-width: 1024px) {
body {
display: flex;
place-items: center;
}

#app {
display: grid;
grid-template-columns: 1fr 1fr;
padding: 0 2rem;
}
}
1 change: 1 addition & 0 deletions frontend/src/login/assets/vue.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
170 changes: 170 additions & 0 deletions frontend/src/login/components/employee.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
<template>
<el-scrollbar height="100%" style="width: 100%; height: 100%">
<div style="margin-top: 20px; margin-left:20px; font-size: 2em; font-weight: bold;">
银行职员登录
</div>
<div style="width:45%;margin:0 auto; padding-top:5vh;">
<div class="loginBox">
<!-- 卡片标题 -->
<div style="font-size: 25px; font-weight: bold;"></div>



<!-- 卡片内容 -->
<div style="height: 20px"></div>
<div style="margin-left: 10px; text-align: start; font-size: 16px;">
<div style = "margin-left: 3vw; font-weight: bold; font-size: 1rem; margin-top: 5px;">
职员类型:
<el-select v-model="employee.type" size="default" style="width: 11vw; margin-left: 0rem">
<el-option v-for="type in Types" :key="type.value" :label="type.label" :value="type.value" />
</el-select>
</div>
<div style="height: 25px"></div>
<div style = "margin-left: 3vw; font-weight: bold; font-size: 1rem; margin-top: 5px;">
账户名:
<el-input v-model="account" style="width: 12.5vw; margin-left: 1rem" maxlength="18" clearable/>
</div>
<div style="height: 25px"></div>
<div style = "margin-left: 4.3vw; font-weight: bold; font-size: 1rem; margin-top: 5px;">
密码:
<el-input v-model="password" style="width: 12.5vw; margin-left: 1rem" type="password" maxlength="20" clearable/>
</div>
<div style="height: 40px"></div>
</div>
<!-- 卡片操作 -->
<div style="margin-top: 10px; display:flex; margin-left: 10rem;">
<el-button type="primary" @click="employeeLogin"
:disabled = "account.length === 0 || password.length === 0 || employee.type.length === 0">
登录
</el-button>
</div>
</div>
</div>

</el-scrollbar>
</template>
<script>
import axios from "axios";
import { ElMessage } from 'element-plus'
export default{
data(){
return{
account: '',
password: '',
Types: [
{
value: '系统管理员',
label: '系统管理员',
},
{
value: '出纳员',
label: '出纳员',
},
{
value: '贷款审核员',
label: '贷款审核员',
},
{
value: '贷款部门经理',
label: '贷款部门经理',
},
{
value: '外汇操作员',
label: '外汇操作员',
},
{
value: '外汇管理员',
label: '外汇管理员',
},
{
value: '信用卡审查员',
label: '信用卡审查员',
},
{
value:'互联网用户管理员',
label:'互联网用户管理员',
}
],
employee: {
id: '', // 对应职员id,如:出纳员返回出纳员id,系统管理员返回管理员id
type: '系统管理员', // 银行职员类型
}
}
},
methods: {
employeeLogin(){
switch (this.employee.type) {
case "系统管理员":
this.getSysManagerID();
break;
case "出纳员":
this.getCashierID();
break;
/*
case "...":
...
break;
*
*/
case "互联网用户管理员":
this.getOnlineUserAdministratorID();
break;
default: break;
}
},
getSysManagerID(){
axios.post('/login/sysManager/',{
account: this.account,
password: this.password
}).then(response => {
this.employee.id = response.data.id;
window.location.href = "/manager?managerID=" + this.employee.id ; // 函数内部进行超链接跳转
}).catch(error => {
ElMessage.error(error.response.data.error);
this.password = "";
})
},
getCashierID(){
axios.post('/login/cashier/',{
account: this.account,
password: this.password
}).then(response => {
this.employee.id = response.data.id;
window.location.href = "/cashier?cashierID=" + this.employee.id ; // 函数内部进行超链接跳转
}).catch(error => {
ElMessage.error(error.response.data.error);
this.password = "";
})
},
getOnlineUserAdministratorID(){
/*axiox.post('/login/online_user_administrator/',{
account: this.account,
password: this,password
}).then(response => {
this.employee.id = response.data.id;*/
window.location.href = "/online_manager";
/*}).catch(error => {
ElMessage.error(error.response.data.error);
this.password = "";
})*/
},
},
mounted() { // 当页面被渲染时
}
}
</script>

<style scoped>
.loginBox {
height: 340px;
width: 400px;
margin-top: 40px;
margin-left: 27.5px;
margin-right: 10px;
padding: 7.5px;
padding-right: 10px;
padding-top: 15px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
text-align: center;
}
</style>
Loading

0 comments on commit 6720491

Please sign in to comment.