diff --git a/src/api/admin/agent/home.js b/src/api/admin/agent/home.js
new file mode 100644
index 0000000..0503f73
--- /dev/null
+++ b/src/api/admin/agent/home.js
@@ -0,0 +1,12 @@
+import request from "@/utils/request";
+
+/**
+ * 获取经纪人统计数据
+ * @return {*}
+ */
+export const getBrokerStatistic = () => {
+ return request({
+ url: "/app/broker/statistic",
+ method: "get",
+ });
+};
diff --git a/src/api/admin/laboratory/home.js b/src/api/admin/laboratory/home.js
new file mode 100644
index 0000000..0a4d3f6
--- /dev/null
+++ b/src/api/admin/laboratory/home.js
@@ -0,0 +1,9 @@
+import request from "@/utils/request";
+
+// /app/laboratory/statistic
+export const getLaboratoryStatistic = () => {
+ return request({
+ url: "/app/laboratory/statistic",
+ method: "get",
+ });
+};
diff --git a/src/api/admin/research/home.js b/src/api/admin/research/home.js
new file mode 100644
index 0000000..a0fe2b2
--- /dev/null
+++ b/src/api/admin/research/home.js
@@ -0,0 +1,9 @@
+import request from "@/utils/request";
+
+// /app/research/statistic
+export const getResearchStatistic = () => {
+ return request({
+ url: "/app/research/statistic",
+ method: "get",
+ });
+};
diff --git a/src/api/common.js b/src/api/common.js
new file mode 100644
index 0000000..5038e92
--- /dev/null
+++ b/src/api/common.js
@@ -0,0 +1,9 @@
+import request from "@/utils/request";
+
+export const upload = (data) => {
+ return request({
+ url: "/common/upload",
+ method: "post",
+ data: data,
+ });
+}
\ No newline at end of file
diff --git a/src/api/login.js b/src/api/login.js
index 6d2621a..13db493 100644
--- a/src/api/login.js
+++ b/src/api/login.js
@@ -2,69 +2,83 @@ import request from "@/utils/request";
// 登录方法
export function login(username, password, code, uuid) {
- const data = {
- username,
- password,
- code,
- uuid,
- };
- return request({
- url: "/app/login",
- headers: {
- isToken: false,
- },
- method: "post",
- data: data,
- });
+ const data = {
+ username,
+ password,
+ code,
+ uuid,
+ };
+ return request({
+ url: "/app/login",
+ headers: {
+ isToken: false,
+ },
+ method: "post",
+ data: data,
+ });
}
// 注册方法
export function register(data) {
- return request({
- url: "/app/register",
- headers: {
- isToken: false,
- },
- method: "post",
- data: data,
- });
+ return request({
+ url: "/app/register",
+ headers: {
+ isToken: false,
+ },
+ method: "post",
+ data: data,
+ });
}
// 获取用户详细信息
export function getInfo() {
- return request({
- url: "/app/info",
- method: "get",
- });
+ return request({
+ url: "/app/info",
+ method: "get",
+ });
}
// 退出方法
export function logout() {
- return request({
- url: "/logout",
- method: "post",
- });
+ return request({
+ url: "/logout",
+ method: "post",
+ });
}
// 获取验证码
export function getCodeImg() {
- return request({
- url: "/app/captchaImage",
- headers: {
- isToken: false,
- },
- method: "get",
- timeout: 20000,
- });
+ return request({
+ url: "/app/captchaImage",
+ headers: {
+ isToken: false,
+ },
+ method: "get",
+ timeout: 20000,
+ });
}
+
// 重置密码
export function resetPassword() {
- return request({
- url: "/captchaImage",
- headers: {
- isToken: false,
- },
- method: "get",
- timeout: 20000,
- });
+ return request({
+ url: "/captchaImage",
+ headers: {
+ isToken: false,
+ },
+ method: "get",
+ timeout: 20000,
+ });
}
+
+/**
+ * 更新头像
+ * @param data
+ * @return {*}
+ */
+export function updateAvatar(data) {
+ return request({
+ url: "/app/updateAvatar",
+ method: "put",
+ data: data,
+ });
+}
\ No newline at end of file
diff --git a/src/components/WebsiteHeader/index.vue b/src/components/WebsiteHeader/index.vue
index 72ca5ae..0ceda14 100644
--- a/src/components/WebsiteHeader/index.vue
+++ b/src/components/WebsiteHeader/index.vue
@@ -117,7 +117,10 @@
-
![]()
+
@@ -190,7 +193,7 @@ let state = reactive({});
let pagePath = ref("");
const route = useRoute();
const router = useRouter();
-
+const baseUrl =ref(import.meta.env.VITE_APP_BASE_API);
const categoryList = ref([]);
// 当前的语言
const currentLocale = ref("zh");
diff --git a/src/i18n/message/admin/index.js b/src/i18n/message/admin/index.js
index 84ed0cb..6782704 100644
--- a/src/i18n/message/admin/index.js
+++ b/src/i18n/message/admin/index.js
@@ -10,25 +10,29 @@ import table_zh from "./table/zh";
import table_ru from "./table/ru";
import validation_zh from "./validation/zh";
import validation_ru from "./validation/ru";
+import statistics_zh from "./statistics/zh";
+import statistics_ru from "./statistics/ru";
export const admin_zh = {
- identity: {
- entrance: entrance_zh,
- },
- common: common_zh,
- form: form_zh,
- broker: broker_zh,
- table: table_zh,
- validation: validation_zh,
+ identity: {
+ entrance: entrance_zh,
+ },
+ common: common_zh,
+ form: form_zh,
+ broker: broker_zh,
+ table: table_zh,
+ validation: validation_zh,
+ statistics: statistics_zh,
};
export const admin_ru = {
- identity: {
- entrance: entrance_ru,
- },
- common: common_ru,
- form: form_ru,
- broker: broker_ru,
- table: table_ru,
- validation: validation_ru,
+ identity: {
+ entrance: entrance_ru,
+ },
+ common: common_ru,
+ form: form_ru,
+ broker: broker_ru,
+ table: table_ru,
+ validation: validation_ru,
+ statistics: statistics_ru,
};
diff --git a/src/i18n/message/admin/statistics/ru.js b/src/i18n/message/admin/statistics/ru.js
new file mode 100644
index 0000000..860d352
--- /dev/null
+++ b/src/i18n/message/admin/statistics/ru.js
@@ -0,0 +1,26 @@
+const statistics = {
+ // 企业数量, 正在服务需求数, 订单总数, 需求总数
+ enterpriseCount: "Количество предприятий",
+ serviceDemandCount: "Количество обслуживаемых потребностей",
+ orderCount: "Количество заказов",
+ demandCount: "Количество потребностей",
+ // 专利数量 成果数量 专家数量 实验室数量
+ patentCount: "Количество патентов",
+ achievementCount: "Количество достижений",
+ expertCount: "Количество экспертов",
+ laboratoryCount: "Количество лабораторий",
+ // 论文数量
+ paperCount: "Количество статей",
+ unit: {
+ enterprise: "шт",
+ serviceDemand: "шт",
+ order: "шт",
+ demand: "шт",
+ patent: "шт",
+ achievement: "шт",
+ expert: "шт",
+ laboratory: "шт",
+ paper: "шт",
+ }
+}
+export default statistics;
\ No newline at end of file
diff --git a/src/i18n/message/admin/statistics/zh.js b/src/i18n/message/admin/statistics/zh.js
new file mode 100644
index 0000000..0e960fd
--- /dev/null
+++ b/src/i18n/message/admin/statistics/zh.js
@@ -0,0 +1,27 @@
+const statistics = {
+// 企业数量, 正在服务需求数, 订单总数, 需求总数
+ enterpriseCount: "企业数量",
+ serviceDemandCount: "正在服务需求数",
+ orderCount: "订单总数",
+ demandCount: "需求总数",
+ // 专利数量 成果数量 专家数量 实验室数量
+ patentCount: "专利数量",
+ achievementCount: "成果数量",
+ expertCount: "专家数量",
+ laboratoryCount: "实验室数量",
+ // 论文数量
+ paperCount: "论文数量",
+ unit: {
+ enterprise: "家",
+ serviceDemand: "个",
+ order: "个",
+ demand: "个",
+ patent: "项",
+ achievement: "项",
+ expert: "位",
+ laboratory: "个",
+ paper: "篇",
+ }
+
+}
+export default statistics;
\ No newline at end of file
diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index aa071aa..dc056c6 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -42,7 +42,8 @@
trigger="click"
>
-
![]()
+
![]()
+
@@ -103,13 +104,13 @@ import useUserStore from "@/store/modules/user";
import useSettingsStore from "@/store/modules/settings";
import { useI18n } from "vue-i18n";
import { ref } from "vue";
-
+import defaultAvatar from '@/assets/logo/avatar.png'
const appStore = useAppStore();
const userStore = useUserStore();
const settingsStore = useSettingsStore();
const { t, locale } = useI18n();
const avatarRef = ref();
-
+const baseUrl =ref(import.meta.env.VITE_APP_BASE_API);
function toggleSideBar() {
appStore.toggleSideBar();
}
diff --git a/src/router/index.js b/src/router/index.js
index 2ac39c6..699cb3b 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -1114,7 +1114,7 @@ export const agentRoutes = [
children: [
{
path: "index",
- component: () => import("@/views/admin/research/index"),
+ component: () => import("@/views/admin/agent/index"),
name: "Index",
meta: {
title: "首页",
diff --git a/src/store/modules/user.js b/src/store/modules/user.js
index 8a3f880..c65d894 100644
--- a/src/store/modules/user.js
+++ b/src/store/modules/user.js
@@ -43,9 +43,9 @@ const useUserStore = defineStore("user", {
const enterprise = res.data.enterprise;
const userId = user.userId;
const avatar =
- user.avatar == "" || user.avatar == null
+ /* user.avatar == "" || user.avatar == null
? defAva
- : import.meta.env.VITE_APP_BASE_API + user.avatar;
+ : import.meta.env.VITE_APP_BASE_API + */user.avatar;
if (res.roles && res.roles.length > 0) {
// 验证返回的roles是否是一个非空数组
diff --git a/src/views/admin/agent/bill/bill-list/index.vue b/src/views/admin/agent/bill/bill-list/index.vue
index 6f623da..1f8edc1 100644
--- a/src/views/admin/agent/bill/bill-list/index.vue
+++ b/src/views/admin/agent/bill/bill-list/index.vue
@@ -1,16 +1,16 @@
+
+
+
+
+
+
+
+
diff --git a/src/views/admin/agent/service/enterprise/index.vue b/src/views/admin/agent/service/enterprise/index.vue
index 411c970..f1fd3d1 100644
--- a/src/views/admin/agent/service/enterprise/index.vue
+++ b/src/views/admin/agent/service/enterprise/index.vue
@@ -148,7 +148,7 @@ getList();
:placeholder="
t('admin.form.placeholder', { type: t('admin.common.company') })
"
- size="small"
+
@keyup.enter.prevent="handleQuery"
/>
@@ -156,13 +156,13 @@ getList();
{{ t("admin.common.search") }}
-
+
{{ t("admin.common.reset") }}
@@ -210,7 +210,7 @@ getList();
{{
@@ -219,7 +219,7 @@ getList();
})
}}
-
+
{{
t("admin.table.managementOf", {
type: t("admin.common.achievement"),
@@ -228,7 +228,7 @@ getList();
diff --git a/src/views/admin/agent/service/enterprise/technology-demand.vue b/src/views/admin/agent/service/enterprise/technology-demand.vue
index 81312dc..d1b7981 100644
--- a/src/views/admin/agent/service/enterprise/technology-demand.vue
+++ b/src/views/admin/agent/service/enterprise/technology-demand.vue
@@ -127,13 +127,13 @@ if (route.query.id) {
-
+
{{ t("admin.common.delete") }}
- 查看匹配结果
- 更新状态
diff --git a/src/views/admin/agent/service/matching-demand/index.vue b/src/views/admin/agent/service/matching-demand/index.vue
index bf9d36b..af46ba5 100644
--- a/src/views/admin/agent/service/matching-demand/index.vue
+++ b/src/views/admin/agent/service/matching-demand/index.vue
@@ -113,7 +113,7 @@ getList();
:placeholder="
t('admin.form.placeholder', { type: t('admin.common.company') })
"
- size="small"
+
@keyup.enter="handleQuery"
/>
@@ -121,13 +121,13 @@ getList();
{{ t("admin.common.search") }}
-
+
{{ t("admin.common.reset") }}
@@ -170,10 +170,10 @@ getList();
- 查看详情
- 承接需求
+ 承接需求
diff --git a/src/views/admin/components/wordcloud.vue b/src/views/admin/components/wordcloud.vue
index 90466ee..9e24d20 100644
--- a/src/views/admin/components/wordcloud.vue
+++ b/src/views/admin/components/wordcloud.vue
@@ -195,7 +195,7 @@ button {
top: 0px;
color: green;
text-decoration: none;
- font-size: 12px;
+ font-size: 16px;
font-family: "微软雅黑";
font-weight: bold;
}
diff --git a/src/views/admin/laboratory/index.vue b/src/views/admin/laboratory/index.vue
index 2dc0ae5..62f633c 100644
--- a/src/views/admin/laboratory/index.vue
+++ b/src/views/admin/laboratory/index.vue
@@ -1,120 +1,76 @@
-
-
-
-
-
-
-
-
-
-
-
- 用户总数
- 123
-
-
-
-
-
-
-
-
-
-
-
- 用户总数
- 123
-
-
-
-
-
-
-
-
-
-
-
- 用户总数
- 123
-
-
-
-
-
-
-
-
-
-
-
- 用户总数
- 123
-
-
-
-
-
+
-
+
diff --git a/src/views/admin/research/index.vue b/src/views/admin/research/index.vue
index 5041d8b..91f7177 100644
--- a/src/views/admin/research/index.vue
+++ b/src/views/admin/research/index.vue
@@ -1,7 +1,66 @@
-
+
- 研究机构后台
+
+
+
diff --git a/src/views/components/LaboratoryForm/index.vue b/src/views/components/LaboratoryForm/index.vue
index 7e83bb4..1fe3636 100644
--- a/src/views/components/LaboratoryForm/index.vue
+++ b/src/views/components/LaboratoryForm/index.vue
@@ -1,10 +1,10 @@