diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/assets/images/login-image/bg.png b/src/assets/images/login-image/bg.png
new file mode 100644
index 0000000..d0db502
--- /dev/null
+++ b/src/assets/images/login-image/bg.png
Binary files differ
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/assets/images/login-image/bg.png b/src/assets/images/login-image/bg.png
new file mode 100644
index 0000000..d0db502
--- /dev/null
+++ b/src/assets/images/login-image/bg.png
Binary files differ
diff --git a/src/assets/images/login-image/frame.png b/src/assets/images/login-image/frame.png
new file mode 100644
index 0000000..452bd65
--- /dev/null
+++ b/src/assets/images/login-image/frame.png
Binary files differ
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/assets/images/login-image/bg.png b/src/assets/images/login-image/bg.png
new file mode 100644
index 0000000..d0db502
--- /dev/null
+++ b/src/assets/images/login-image/bg.png
Binary files differ
diff --git a/src/assets/images/login-image/frame.png b/src/assets/images/login-image/frame.png
new file mode 100644
index 0000000..452bd65
--- /dev/null
+++ b/src/assets/images/login-image/frame.png
Binary files differ
diff --git a/src/components/SearchArea/index.vue b/src/components/SearchArea/index.vue
index 917956e..1833bd3 100644
--- a/src/components/SearchArea/index.vue
+++ b/src/components/SearchArea/index.vue
@@ -28,6 +28,10 @@
type: String,
default: '',
}, // 按钮及输入框大小
+ icon: {
+ type: Boolean,
+ default: true,
+ }, // 是否显示图标
})
// 抛出事件
const emit = defineEmits(['search', 'clear', 'toggleMore'])
@@ -80,13 +84,13 @@
-
+
搜索
高级检索
-
+
重置
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/assets/images/login-image/bg.png b/src/assets/images/login-image/bg.png
new file mode 100644
index 0000000..d0db502
--- /dev/null
+++ b/src/assets/images/login-image/bg.png
Binary files differ
diff --git a/src/assets/images/login-image/frame.png b/src/assets/images/login-image/frame.png
new file mode 100644
index 0000000..452bd65
--- /dev/null
+++ b/src/assets/images/login-image/frame.png
Binary files differ
diff --git a/src/components/SearchArea/index.vue b/src/components/SearchArea/index.vue
index 917956e..1833bd3 100644
--- a/src/components/SearchArea/index.vue
+++ b/src/components/SearchArea/index.vue
@@ -28,6 +28,10 @@
type: String,
default: '',
}, // 按钮及输入框大小
+ icon: {
+ type: Boolean,
+ default: true,
+ }, // 是否显示图标
})
// 抛出事件
const emit = defineEmits(['search', 'clear', 'toggleMore'])
@@ -80,13 +84,13 @@
-
+
搜索
高级检索
-
+
重置
diff --git a/src/views/login.vue b/src/views/login.vue
index 17dbad3..1f1a316 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -15,7 +15,8 @@
const userStore = useUserStore()
-const banner = new URL('../assets/images/login-banner.png', import.meta.url).href
+const banner = new URL('../assets/images/login-banner.png', import.meta.url)
+ .href
const title = import.meta.env.VITE_APP_TITLE
// 表单类型,login 登录,reset 重置密码
@@ -56,9 +57,7 @@
remember: !!localStorage.login_username,
})
const loginRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
password: [
{ required: true, trigger: 'blur', message: '请输入密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -67,36 +66,40 @@
// 处理登录
function handleLogin() {
- loginFormRef.value && loginFormRef.value.validate(async (valid) => {
- if (valid) {
- loading.value = true
- // 表单对象
- const finalForm = {
- sid: sid.value,
- username: loginForm.value.username,
- password: '',
- kaptcha: loginForm.value.kaptcha,
+ loginFormRef.value
+ && loginFormRef.value.validate(async (valid) => {
+ if (valid) {
+ loading.value = true
+ // 表单对象
+ const finalForm = {
+ sid: sid.value,
+ username: loginForm.value.username,
+ password: '',
+ kaptcha: loginForm.value.kaptcha,
+ }
+ // 加密
+ finalForm.password = await RSAencrypt(loginForm.value.password)
+ userStore
+ .login(finalForm)
+ .then(() => {
+ ElMessage({
+ message: '登录成功',
+ type: 'success',
+ })
+ loading.value = false
+ if (loginForm.value.remember) {
+ localStorage.setItem('login_username', loginForm.value.username)
+ }
+ else {
+ localStorage.removeItem('login_username')
+ }
+ router.push(redirect.value)
+ })
+ .catch(() => {
+ loading.value = false
+ })
}
- // 加密
- finalForm.password = await RSAencrypt(loginForm.value.password)
- userStore.login(finalForm).then(() => {
- ElMessage({
- message: '登录成功',
- type: 'success',
- })
- loading.value = false
- if (loginForm.value.remember) {
- localStorage.setItem('login_username', loginForm.value.username)
- }
- else {
- localStorage.removeItem('login_username')
- }
- router.push(redirect.value)
- }).catch(() => {
- loading.value = false
- })
- }
- })
+ })
}
// 注册
const registerFormRef = ref()
@@ -109,12 +112,8 @@
checkPassword: '',
})
const registerRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
- captcha: [
- { required: true, trigger: 'blur', message: '请输入验证码' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
+ captcha: [{ required: true, trigger: 'blur', message: '请输入验证码' }],
password: [
{ required: true, trigger: 'blur', message: '请输入密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -138,11 +137,12 @@
message: '注册模块仅提供界面演示,无实际功能,需开发者自行扩展',
type: 'warning',
})
- registerFormRef.value && registerFormRef.value.validate((valid) => {
- if (valid) {
- // 这里编写业务代码
- }
- })
+ registerFormRef.value
+ && registerFormRef.value.validate((valid) => {
+ if (valid) {
+ // 这里编写业务代码
+ }
+ })
}
// 重置密码
@@ -154,12 +154,8 @@
newPassword: '',
})
const resetRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
- captcha: [
- { required: true, trigger: 'blur', message: '请输入验证码' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
+ captcha: [{ required: true, trigger: 'blur', message: '请输入验证码' }],
newPassword: [
{ required: true, trigger: 'blur', message: '请输入新密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -170,11 +166,12 @@
message: '重置密码模块仅提供界面演示,无实际功能,需开发者自行扩展',
type: 'warning',
})
- resetFormRef.value && resetFormRef.value.validate((valid) => {
- if (valid) {
- // 这里编写业务代码
- }
- })
+ resetFormRef.value
+ && resetFormRef.value.validate((valid) => {
+ if (valid) {
+ // 这里编写业务代码
+ }
+ })
}
function showPassword(passwordEl: HTMLElement | undefined) {
@@ -197,21 +194,34 @@
+
+ 华东计量综合系统
+
-
-
-
![]()
-
-
+
- 欢迎来到 {{ title }} !
+ 用户登录
-
+
@@ -220,7 +230,15 @@
-
+
@@ -228,7 +246,10 @@
-
+
@@ -239,12 +260,26 @@
记住我
-
+
登录
-
+
演示账号一键登录
-
+
admin
@@ -305,12 +340,30 @@
display: none;
}
+.bg-top-banner {
+ position: fixed;
+ top: 0;
+ width: 100%;
+ height: 17vh;
+ z-index: 999;
+ line-height: 10vh;
+ text-align: center;
+ font-size: 30px;
+ color: #fff;
+ background:
+ url("../assets/images/login-image/banner.png") no-repeat
+ center / cover;
+}
+
.bg-banner {
position: fixed;
z-index: 0;
width: 100%;
height: 100%;
- background: radial-gradient(circle at center, var(--el-fill-color-lighter), var(--el-bg-color-page));
+ // background: radial-gradient(circle at center, var(--el-fill-color-lighter), var(--el-bg-color-page));
+ background:
+ url("../assets/images/login-image/bg.png") no-repeat center /
+ cover;
}
#login-box {
@@ -320,7 +373,8 @@
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
- background-color: var(--el-bg-color);
+ // background-color: var(--el-bg-color);
+
border-radius: 10px;
overflow: hidden;
box-shadow: var(--el-box-shadow);
@@ -357,6 +411,9 @@
min-height: 500px;
width: 500px;
padding: 50px;
+ background:
+ url("../assets/images/login-image/frame.png") no-repeat
+ center / cover;
overflow: hidden;
.title-container {
@@ -364,8 +421,9 @@
.title {
font-size: 1.3em;
- color: var(--el-text-color-primary);
+ color: #fff;
margin: 0 auto 30px;
+ text-align: center;
font-weight: bold;
}
}
@@ -426,4 +484,12 @@
width: 100%;
margin: 0;
}
+
+:deep .el-input__wrapper {
+ background-color: transparent !important;
+}
+
+:deep .el-input__inner {
+ color: #fff !important;
+}
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/assets/images/login-image/bg.png b/src/assets/images/login-image/bg.png
new file mode 100644
index 0000000..d0db502
--- /dev/null
+++ b/src/assets/images/login-image/bg.png
Binary files differ
diff --git a/src/assets/images/login-image/frame.png b/src/assets/images/login-image/frame.png
new file mode 100644
index 0000000..452bd65
--- /dev/null
+++ b/src/assets/images/login-image/frame.png
Binary files differ
diff --git a/src/components/SearchArea/index.vue b/src/components/SearchArea/index.vue
index 917956e..1833bd3 100644
--- a/src/components/SearchArea/index.vue
+++ b/src/components/SearchArea/index.vue
@@ -28,6 +28,10 @@
type: String,
default: '',
}, // 按钮及输入框大小
+ icon: {
+ type: Boolean,
+ default: true,
+ }, // 是否显示图标
})
// 抛出事件
const emit = defineEmits(['search', 'clear', 'toggleMore'])
@@ -80,13 +84,13 @@
-
+
搜索
高级检索
-
+
重置
diff --git a/src/views/login.vue b/src/views/login.vue
index 17dbad3..1f1a316 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -15,7 +15,8 @@
const userStore = useUserStore()
-const banner = new URL('../assets/images/login-banner.png', import.meta.url).href
+const banner = new URL('../assets/images/login-banner.png', import.meta.url)
+ .href
const title = import.meta.env.VITE_APP_TITLE
// 表单类型,login 登录,reset 重置密码
@@ -56,9 +57,7 @@
remember: !!localStorage.login_username,
})
const loginRules = ref
({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
password: [
{ required: true, trigger: 'blur', message: '请输入密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -67,36 +66,40 @@
// 处理登录
function handleLogin() {
- loginFormRef.value && loginFormRef.value.validate(async (valid) => {
- if (valid) {
- loading.value = true
- // 表单对象
- const finalForm = {
- sid: sid.value,
- username: loginForm.value.username,
- password: '',
- kaptcha: loginForm.value.kaptcha,
+ loginFormRef.value
+ && loginFormRef.value.validate(async (valid) => {
+ if (valid) {
+ loading.value = true
+ // 表单对象
+ const finalForm = {
+ sid: sid.value,
+ username: loginForm.value.username,
+ password: '',
+ kaptcha: loginForm.value.kaptcha,
+ }
+ // 加密
+ finalForm.password = await RSAencrypt(loginForm.value.password)
+ userStore
+ .login(finalForm)
+ .then(() => {
+ ElMessage({
+ message: '登录成功',
+ type: 'success',
+ })
+ loading.value = false
+ if (loginForm.value.remember) {
+ localStorage.setItem('login_username', loginForm.value.username)
+ }
+ else {
+ localStorage.removeItem('login_username')
+ }
+ router.push(redirect.value)
+ })
+ .catch(() => {
+ loading.value = false
+ })
}
- // 加密
- finalForm.password = await RSAencrypt(loginForm.value.password)
- userStore.login(finalForm).then(() => {
- ElMessage({
- message: '登录成功',
- type: 'success',
- })
- loading.value = false
- if (loginForm.value.remember) {
- localStorage.setItem('login_username', loginForm.value.username)
- }
- else {
- localStorage.removeItem('login_username')
- }
- router.push(redirect.value)
- }).catch(() => {
- loading.value = false
- })
- }
- })
+ })
}
// 注册
const registerFormRef = ref()
@@ -109,12 +112,8 @@
checkPassword: '',
})
const registerRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
- captcha: [
- { required: true, trigger: 'blur', message: '请输入验证码' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
+ captcha: [{ required: true, trigger: 'blur', message: '请输入验证码' }],
password: [
{ required: true, trigger: 'blur', message: '请输入密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -138,11 +137,12 @@
message: '注册模块仅提供界面演示,无实际功能,需开发者自行扩展',
type: 'warning',
})
- registerFormRef.value && registerFormRef.value.validate((valid) => {
- if (valid) {
- // 这里编写业务代码
- }
- })
+ registerFormRef.value
+ && registerFormRef.value.validate((valid) => {
+ if (valid) {
+ // 这里编写业务代码
+ }
+ })
}
// 重置密码
@@ -154,12 +154,8 @@
newPassword: '',
})
const resetRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
- captcha: [
- { required: true, trigger: 'blur', message: '请输入验证码' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
+ captcha: [{ required: true, trigger: 'blur', message: '请输入验证码' }],
newPassword: [
{ required: true, trigger: 'blur', message: '请输入新密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -170,11 +166,12 @@
message: '重置密码模块仅提供界面演示,无实际功能,需开发者自行扩展',
type: 'warning',
})
- resetFormRef.value && resetFormRef.value.validate((valid) => {
- if (valid) {
- // 这里编写业务代码
- }
- })
+ resetFormRef.value
+ && resetFormRef.value.validate((valid) => {
+ if (valid) {
+ // 这里编写业务代码
+ }
+ })
}
function showPassword(passwordEl: HTMLElement | undefined) {
@@ -197,21 +194,34 @@
+
+ 华东计量综合系统
+
-
-
-
![]()
-
-
+
- 欢迎来到 {{ title }} !
+ 用户登录
-
+
@@ -220,7 +230,15 @@
-
+
@@ -228,7 +246,10 @@
-
+
@@ -239,12 +260,26 @@
记住我
-
+
登录
-
+
演示账号一键登录
-
+
admin
@@ -305,12 +340,30 @@
display: none;
}
+.bg-top-banner {
+ position: fixed;
+ top: 0;
+ width: 100%;
+ height: 17vh;
+ z-index: 999;
+ line-height: 10vh;
+ text-align: center;
+ font-size: 30px;
+ color: #fff;
+ background:
+ url("../assets/images/login-image/banner.png") no-repeat
+ center / cover;
+}
+
.bg-banner {
position: fixed;
z-index: 0;
width: 100%;
height: 100%;
- background: radial-gradient(circle at center, var(--el-fill-color-lighter), var(--el-bg-color-page));
+ // background: radial-gradient(circle at center, var(--el-fill-color-lighter), var(--el-bg-color-page));
+ background:
+ url("../assets/images/login-image/bg.png") no-repeat center /
+ cover;
}
#login-box {
@@ -320,7 +373,8 @@
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
- background-color: var(--el-bg-color);
+ // background-color: var(--el-bg-color);
+
border-radius: 10px;
overflow: hidden;
box-shadow: var(--el-box-shadow);
@@ -357,6 +411,9 @@
min-height: 500px;
width: 500px;
padding: 50px;
+ background:
+ url("../assets/images/login-image/frame.png") no-repeat
+ center / cover;
overflow: hidden;
.title-container {
@@ -364,8 +421,9 @@
.title {
font-size: 1.3em;
- color: var(--el-text-color-primary);
+ color: #fff;
margin: 0 auto 30px;
+ text-align: center;
font-weight: bold;
}
}
@@ -426,4 +484,12 @@
width: 100%;
margin: 0;
}
+
+:deep .el-input__wrapper {
+ background-color: transparent !important;
+}
+
+:deep .el-input__inner {
+ color: #fff !important;
+}
diff --git a/src/views/measure/source/list.vue b/src/views/measure/source/list.vue
index f23e6aa..27c0ce7 100644
--- a/src/views/measure/source/list.vue
+++ b/src/views/measure/source/list.vue
@@ -1,17 +1,19 @@
@@ -135,6 +215,7 @@
@@ -174,6 +255,7 @@
>
{{ item }}
+
+
+ 确定删除吗?
+
+
+
+
+
diff --git a/src/api/system/source.ts b/src/api/system/source.ts
index 3d54784..65c14fe 100644
--- a/src/api/system/source.ts
+++ b/src/api/system/source.ts
@@ -7,7 +7,7 @@
// 列表查询
export function getSoucreList(data: object) {
return request({
- url: `${prefix}/supplier/listPage`,
+ url: `${prefix}/supplier/listPage?offset=${data.offset}&limit=${data.limit}`,
method: 'post',
data,
})
@@ -34,12 +34,12 @@
// 省级联动
export function getSoucreListlevelType(pid: string) {
return request({
- url: `/ext/area/list?pid=${pid}`,
+ url: `/sys/area/list?pid=${pid}`,
method: 'get',
})
}
-// 查看详情
+// 新增数据
export function getSoucreListAdd(data: object) {
return request({
url: `${prefix}/supplier/add`,
@@ -47,3 +47,20 @@
data,
})
}
+// 更新数据
+export function getSoucreLisUpdate(data: object) {
+ return request({
+ url: `${prefix}/supplier/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出详情
+export function getSoucreLisListExport(data: object) {
+ return request({
+ url: `${prefix}/supplier/listExport`,
+ method: 'post',
+ responseType: 'blob',
+ data,
+ })
+}
diff --git a/src/assets/images/login-image/banner.png b/src/assets/images/login-image/banner.png
new file mode 100644
index 0000000..99d4983
--- /dev/null
+++ b/src/assets/images/login-image/banner.png
Binary files differ
diff --git a/src/assets/images/login-image/bg.png b/src/assets/images/login-image/bg.png
new file mode 100644
index 0000000..d0db502
--- /dev/null
+++ b/src/assets/images/login-image/bg.png
Binary files differ
diff --git a/src/assets/images/login-image/frame.png b/src/assets/images/login-image/frame.png
new file mode 100644
index 0000000..452bd65
--- /dev/null
+++ b/src/assets/images/login-image/frame.png
Binary files differ
diff --git a/src/components/SearchArea/index.vue b/src/components/SearchArea/index.vue
index 917956e..1833bd3 100644
--- a/src/components/SearchArea/index.vue
+++ b/src/components/SearchArea/index.vue
@@ -28,6 +28,10 @@
type: String,
default: '',
}, // 按钮及输入框大小
+ icon: {
+ type: Boolean,
+ default: true,
+ }, // 是否显示图标
})
// 抛出事件
const emit = defineEmits(['search', 'clear', 'toggleMore'])
@@ -80,13 +84,13 @@
-
+
搜索
高级检索
-
+
重置
diff --git a/src/views/login.vue b/src/views/login.vue
index 17dbad3..1f1a316 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -15,7 +15,8 @@
const userStore = useUserStore()
-const banner = new URL('../assets/images/login-banner.png', import.meta.url).href
+const banner = new URL('../assets/images/login-banner.png', import.meta.url)
+ .href
const title = import.meta.env.VITE_APP_TITLE
// 表单类型,login 登录,reset 重置密码
@@ -56,9 +57,7 @@
remember: !!localStorage.login_username,
})
const loginRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
password: [
{ required: true, trigger: 'blur', message: '请输入密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -67,36 +66,40 @@
// 处理登录
function handleLogin() {
- loginFormRef.value && loginFormRef.value.validate(async (valid) => {
- if (valid) {
- loading.value = true
- // 表单对象
- const finalForm = {
- sid: sid.value,
- username: loginForm.value.username,
- password: '',
- kaptcha: loginForm.value.kaptcha,
+ loginFormRef.value
+ && loginFormRef.value.validate(async (valid) => {
+ if (valid) {
+ loading.value = true
+ // 表单对象
+ const finalForm = {
+ sid: sid.value,
+ username: loginForm.value.username,
+ password: '',
+ kaptcha: loginForm.value.kaptcha,
+ }
+ // 加密
+ finalForm.password = await RSAencrypt(loginForm.value.password)
+ userStore
+ .login(finalForm)
+ .then(() => {
+ ElMessage({
+ message: '登录成功',
+ type: 'success',
+ })
+ loading.value = false
+ if (loginForm.value.remember) {
+ localStorage.setItem('login_username', loginForm.value.username)
+ }
+ else {
+ localStorage.removeItem('login_username')
+ }
+ router.push(redirect.value)
+ })
+ .catch(() => {
+ loading.value = false
+ })
}
- // 加密
- finalForm.password = await RSAencrypt(loginForm.value.password)
- userStore.login(finalForm).then(() => {
- ElMessage({
- message: '登录成功',
- type: 'success',
- })
- loading.value = false
- if (loginForm.value.remember) {
- localStorage.setItem('login_username', loginForm.value.username)
- }
- else {
- localStorage.removeItem('login_username')
- }
- router.push(redirect.value)
- }).catch(() => {
- loading.value = false
- })
- }
- })
+ })
}
// 注册
const registerFormRef = ref()
@@ -109,12 +112,8 @@
checkPassword: '',
})
const registerRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
- captcha: [
- { required: true, trigger: 'blur', message: '请输入验证码' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
+ captcha: [{ required: true, trigger: 'blur', message: '请输入验证码' }],
password: [
{ required: true, trigger: 'blur', message: '请输入密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -138,11 +137,12 @@
message: '注册模块仅提供界面演示,无实际功能,需开发者自行扩展',
type: 'warning',
})
- registerFormRef.value && registerFormRef.value.validate((valid) => {
- if (valid) {
- // 这里编写业务代码
- }
- })
+ registerFormRef.value
+ && registerFormRef.value.validate((valid) => {
+ if (valid) {
+ // 这里编写业务代码
+ }
+ })
}
// 重置密码
@@ -154,12 +154,8 @@
newPassword: '',
})
const resetRules = ref({
- username: [
- { required: true, trigger: 'blur', message: '请输入用户名' },
- ],
- captcha: [
- { required: true, trigger: 'blur', message: '请输入验证码' },
- ],
+ username: [{ required: true, trigger: 'blur', message: '请输入用户名' }],
+ captcha: [{ required: true, trigger: 'blur', message: '请输入验证码' }],
newPassword: [
{ required: true, trigger: 'blur', message: '请输入新密码' },
{ min: 6, max: 18, trigger: 'blur', message: '密码长度为6到18位' },
@@ -170,11 +166,12 @@
message: '重置密码模块仅提供界面演示,无实际功能,需开发者自行扩展',
type: 'warning',
})
- resetFormRef.value && resetFormRef.value.validate((valid) => {
- if (valid) {
- // 这里编写业务代码
- }
- })
+ resetFormRef.value
+ && resetFormRef.value.validate((valid) => {
+ if (valid) {
+ // 这里编写业务代码
+ }
+ })
}
function showPassword(passwordEl: HTMLElement | undefined) {
@@ -197,21 +194,34 @@
+
+ 华东计量综合系统
+
-
-
-
![]()
-
-
+
- 欢迎来到 {{ title }} !
+ 用户登录
-
+
@@ -220,7 +230,15 @@
-
+
@@ -228,7 +246,10 @@
-
+
@@ -239,12 +260,26 @@
记住我
-
+
登录
-
+
演示账号一键登录
-
+
admin
@@ -305,12 +340,30 @@
display: none;
}
+.bg-top-banner {
+ position: fixed;
+ top: 0;
+ width: 100%;
+ height: 17vh;
+ z-index: 999;
+ line-height: 10vh;
+ text-align: center;
+ font-size: 30px;
+ color: #fff;
+ background:
+ url("../assets/images/login-image/banner.png") no-repeat
+ center / cover;
+}
+
.bg-banner {
position: fixed;
z-index: 0;
width: 100%;
height: 100%;
- background: radial-gradient(circle at center, var(--el-fill-color-lighter), var(--el-bg-color-page));
+ // background: radial-gradient(circle at center, var(--el-fill-color-lighter), var(--el-bg-color-page));
+ background:
+ url("../assets/images/login-image/bg.png") no-repeat center /
+ cover;
}
#login-box {
@@ -320,7 +373,8 @@
top: 50%;
left: 50%;
transform: translateX(-50%) translateY(-50%);
- background-color: var(--el-bg-color);
+ // background-color: var(--el-bg-color);
+
border-radius: 10px;
overflow: hidden;
box-shadow: var(--el-box-shadow);
@@ -357,6 +411,9 @@
min-height: 500px;
width: 500px;
padding: 50px;
+ background:
+ url("../assets/images/login-image/frame.png") no-repeat
+ center / cover;
overflow: hidden;
.title-container {
@@ -364,8 +421,9 @@
.title {
font-size: 1.3em;
- color: var(--el-text-color-primary);
+ color: #fff;
margin: 0 auto 30px;
+ text-align: center;
font-weight: bold;
}
}
@@ -426,4 +484,12 @@
width: 100%;
margin: 0;
}
+
+:deep .el-input__wrapper {
+ background-color: transparent !important;
+}
+
+:deep .el-input__inner {
+ color: #fff !important;
+}
diff --git a/src/views/measure/source/list.vue b/src/views/measure/source/list.vue
index f23e6aa..27c0ce7 100644
--- a/src/views/measure/source/list.vue
+++ b/src/views/measure/source/list.vue
@@ -1,17 +1,19 @@
@@ -135,6 +215,7 @@
@@ -174,6 +255,7 @@
>
{{ item }}
+
+
+ 确定删除吗?
+
+
+
+
+
diff --git a/src/views/measure/source/listAdd.vue b/src/views/measure/source/listAdd.vue
index bf2a4ad..b6fa653 100644
--- a/src/views/measure/source/listAdd.vue
+++ b/src/views/measure/source/listAdd.vue
@@ -1,8 +1,11 @@
@@ -135,6 +215,7 @@
@@ -174,6 +255,7 @@
>
{{ item }}
+
+
+ 确定删除吗?
+
+
+
+
+
diff --git a/src/views/measure/source/listAdd.vue b/src/views/measure/source/listAdd.vue
index bf2a4ad..b6fa653 100644
--- a/src/views/measure/source/listAdd.vue
+++ b/src/views/measure/source/listAdd.vue
@@ -1,8 +1,11 @@
@@ -135,6 +215,7 @@
@@ -174,6 +255,7 @@
>
{{ item }}
+
+
+ 确定删除吗?
+
+
+
+
+
diff --git a/src/views/measure/source/listAdd.vue b/src/views/measure/source/listAdd.vue
index bf2a4ad..b6fa653 100644
--- a/src/views/measure/source/listAdd.vue
+++ b/src/views/measure/source/listAdd.vue
@@ -1,8 +1,11 @@
+
- 培训计划111
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item }}
+
+
+
+
+
+
+
+
+
+
+
+ 编辑
+
+
+ 详情
+
+
+ 删除
+
+
+ 二维码
+
+
+
+
+
+
+
+