update i18n
This commit is contained in:
@ -42,8 +42,11 @@
|
||||
"devDependencies": {
|
||||
"@vitejs/plugin-vue": "2.3.3",
|
||||
"@vue/compiler-sfc": "3.2.36",
|
||||
"autoprefixer": "^10.4.14",
|
||||
"postcss": "^8.4.26",
|
||||
"prettier": "^2.8.8",
|
||||
"sass": "1.52.1",
|
||||
"tailwindcss": "^3.3.3",
|
||||
"unplugin-auto-import": "0.8.5",
|
||||
"vite": "2.9.16",
|
||||
"vite-plugin-compression": "0.5.1",
|
||||
|
0
src/assets/styles/tailwindcss.css
Normal file
0
src/assets/styles/tailwindcss.css
Normal file
@ -7,29 +7,15 @@ import activity_zh from "@/i18n/message/activity/zh";
|
||||
import { admin_zh, admin_ru } from "@/i18n/message/admin";
|
||||
import { routes_ru, routes_zh } from "@/i18n/message/routes";
|
||||
import { tagsView_ru, tagsView_zh } from "@/i18n/message/tagsView";
|
||||
import common_zh from "@/i18n/message/common/zh";
|
||||
import common_ru from "@/i18n/message/common/ru";
|
||||
|
||||
const messages = {
|
||||
zh: {
|
||||
admin: admin_zh,
|
||||
routes: routes_zh,
|
||||
tagsView: tagsView_zh,
|
||||
common: {
|
||||
home: "首页",
|
||||
search: "搜索",
|
||||
viewDetails: "查看详情",
|
||||
systemPrompt: "系统提示",
|
||||
confirm: "确定",
|
||||
cancel: "取消",
|
||||
register: "注册",
|
||||
login: "登录",
|
||||
viewMore: "查看更多",
|
||||
loadMore: "加载更多",
|
||||
noData: "暂无数据",
|
||||
complete: "完成",
|
||||
congratulations: "恭喜你",
|
||||
title: "数字科创大脑",
|
||||
status: "{type}状态",
|
||||
},
|
||||
common: common_zh,
|
||||
headerMenu: {
|
||||
hello: "你好,世界",
|
||||
home: "首页",
|
||||
@ -150,23 +136,7 @@ const messages = {
|
||||
admin: admin_ru,
|
||||
routes: routes_ru,
|
||||
tagsView: tagsView_ru,
|
||||
common: {
|
||||
home: "Главная",
|
||||
search: "Поиск",
|
||||
viewDetails: "Просмотреть детали",
|
||||
systemPrompt: "Системное сообщение",
|
||||
confirm: "Подтвердить",
|
||||
cancel: "Отмена",
|
||||
register: "Регистрация",
|
||||
login: "Войти в систему",
|
||||
viewMore: "Просмотреть больше",
|
||||
loadMore: "Загрузить больше",
|
||||
noData: "Нет данных",
|
||||
complete: "Завершить",
|
||||
congratulations: "Поздравляем!",
|
||||
title: "Цифровой мозг науки и технологий",
|
||||
status: "Статус {type}",
|
||||
},
|
||||
common: common_ru,
|
||||
headerMenu: {
|
||||
hello: "Привет мир",
|
||||
home: "Главная",
|
||||
|
5
src/i18n/message/admin/broker/ru.js
Normal file
5
src/i18n/message/admin/broker/ru.js
Normal file
@ -0,0 +1,5 @@
|
||||
const broker = {
|
||||
// 保存当前步骤
|
||||
saveCurrentStep: "Сохранить текущий шаг",
|
||||
};
|
||||
export default broker;
|
5
src/i18n/message/admin/broker/zh.js
Normal file
5
src/i18n/message/admin/broker/zh.js
Normal file
@ -0,0 +1,5 @@
|
||||
const broker = {
|
||||
// 保存当前步骤
|
||||
saveCurrentStep: "保存当前步骤",
|
||||
};
|
||||
export default broker;
|
@ -1,4 +1,5 @@
|
||||
const common = {
|
||||
view: "Посмотреть",
|
||||
add: "Добавить",
|
||||
edit: "Редактировать",
|
||||
delete: "Удалить",
|
||||
@ -11,7 +12,6 @@ const common = {
|
||||
export: "Экспорт",
|
||||
operation: "Операция",
|
||||
dataNumber: "Номер данных",
|
||||
// 类型
|
||||
type: "Тип",
|
||||
expert: "Эксперт",
|
||||
lab: "Лаборатория",
|
||||
@ -20,14 +20,20 @@ const common = {
|
||||
patent: "Патент",
|
||||
research: "Исследовательский институт",
|
||||
broker: "Брокер",
|
||||
// 需求
|
||||
demand: "Спрос",
|
||||
// 科研项目
|
||||
// 论文
|
||||
paper: "Статья",
|
||||
researchProject: "Научно-исследовательский проект",
|
||||
// 设备
|
||||
equipment: "Оборудование",
|
||||
// 活动
|
||||
activity: "Мероприятие",
|
||||
nextStep: "Следующий шаг",
|
||||
addSuccess: "Добавлено успешно",
|
||||
editSuccess: "Изменено успешно",
|
||||
deleteSuccess: "Удалено успешно",
|
||||
operationSuccess: "Операция выполнена успешно",
|
||||
// 是否确认{action}编号为{number}的{type}?
|
||||
confirmAction: "Вы уверены, что хотите {action} {type} номер {number}?",
|
||||
// Вы уверены, что хотите {action} {type} номер {number}?
|
||||
};
|
||||
|
||||
export default common;
|
||||
|
@ -1,4 +1,5 @@
|
||||
const common = {
|
||||
view: "查看",
|
||||
add: "新增",
|
||||
edit: "编辑",
|
||||
delete: "删除",
|
||||
@ -11,7 +12,6 @@ const common = {
|
||||
export: "导出",
|
||||
operation: "操作",
|
||||
dataNumber: "数据编号",
|
||||
// 类型
|
||||
type: "类型",
|
||||
expert: "专家",
|
||||
lab: "实验室",
|
||||
@ -20,14 +20,19 @@ const common = {
|
||||
patent: "专利",
|
||||
research: "研究机构",
|
||||
broker: "经纪人",
|
||||
// 需求
|
||||
demand: "需求",
|
||||
// 科研项目
|
||||
// 论文
|
||||
paper: "论文",
|
||||
researchProject: "科研项目",
|
||||
// 设备
|
||||
equipment: "设备",
|
||||
// 活动
|
||||
activity: "活动",
|
||||
nextStep: "下一步",
|
||||
addSuccess: "添加成功",
|
||||
editSuccess: "修改成功",
|
||||
deleteSuccess: "删除成功",
|
||||
operationSuccess: "操作成功",
|
||||
// 是否确认{action}编号为{number}的{type}?
|
||||
confirmAction: "是否确认{action}编号为{number}的{type}?",
|
||||
};
|
||||
|
||||
export default common;
|
||||
|
@ -1,4 +0,0 @@
|
||||
const table = {
|
||||
// 数据编号
|
||||
dataId: "数据编号",
|
||||
};
|
@ -1,7 +1,7 @@
|
||||
const form = {
|
||||
address: "Подробный адрес",
|
||||
basicInfo: "Основная информация",
|
||||
data: "{type}Данные",
|
||||
data: "{type} Данные",
|
||||
basicData: "Основные данные",
|
||||
businessLicense: "Бизнес-лицензия",
|
||||
fullName: "Полное имя",
|
||||
@ -19,15 +19,33 @@ const form = {
|
||||
placeholder: "Пожалуйста, введите {type}",
|
||||
pleaseSelect: "Пожалуйста, выберите {type}",
|
||||
researchDirection: "Направление исследований",
|
||||
// 合作企业
|
||||
cooperationCompany: "Компания сотрудничества",
|
||||
// 银行
|
||||
bank: "Банк",
|
||||
// 产品
|
||||
product: "Продукт",
|
||||
// 联系人
|
||||
contact: "Контакт",
|
||||
// 类别
|
||||
category: "{type} Категория",
|
||||
category: "Категория {type}",
|
||||
keywords: "Ключевые слова",
|
||||
inputKeywords:
|
||||
"Ключевые слова сценария применения + ключевые слова технического продукта",
|
||||
coreMembers: "Основные члены и их краткое описание",
|
||||
idCard: "Номер удостоверения личности",
|
||||
topicLeader: "Руководитель проекта",
|
||||
paperTitle: "Название статьи",
|
||||
belongExpert: "Принадлежит эксперту",
|
||||
publishDate: "Дата публикации",
|
||||
publication: "Публикация",
|
||||
buyDate: "Дата покупки",
|
||||
model: "Модель",
|
||||
achievementParameter: "Параметр достижения",
|
||||
// 设备描述
|
||||
deviceDescription: "Описание оборудования",
|
||||
// 发明人
|
||||
inventor: "Изобретатель",
|
||||
// 需求联系人
|
||||
demandContact: "Контактное лицо по потребностям",
|
||||
// 联系人手机号
|
||||
contactPhone: "Номер мобильного телефона контактного лица",
|
||||
// 申请日期
|
||||
applicationDate: "Дата подачи заявки",
|
||||
};
|
||||
export default form;
|
||||
|
@ -19,16 +19,33 @@ const form = {
|
||||
placeholder: "请输入{type}",
|
||||
pleaseSelect: "请选择{type}",
|
||||
researchDirection: "研究方向",
|
||||
// 合作企业
|
||||
cooperationCompany: "合作企业",
|
||||
// 银行
|
||||
bank: "银行",
|
||||
// 产品
|
||||
product: "产品",
|
||||
// 联系人
|
||||
contact: "联系人",
|
||||
// 类别
|
||||
category: "{type}类别",
|
||||
keywords: "关键词",
|
||||
inputKeywords: "应用场景关键词+技术产品关键词",
|
||||
coreMembers: "核心成员及简介",
|
||||
idCard: "身份证号",
|
||||
topicLeader: "课题负责人",
|
||||
paperTitle: "论文标题",
|
||||
belongExpert: "所属专家",
|
||||
publishDate: "出版日期",
|
||||
publication: "刊物",
|
||||
buyDate: "购买日期",
|
||||
model: "型号",
|
||||
achievementParameter: "成果参数",
|
||||
// 设备描述
|
||||
deviceDescription: "设备描述",
|
||||
// 发明人
|
||||
inventor: "发明人",
|
||||
// 需求联系人
|
||||
demandContact: "需求联系人",
|
||||
// 联系人手机号
|
||||
contactPhone: "联系人手机号",
|
||||
// 申请日期
|
||||
applicationDate: "申请日期",
|
||||
};
|
||||
|
||||
export default form;
|
||||
|
@ -4,6 +4,10 @@ import common_zh from "./common/zh";
|
||||
import common_ru from "./common/ru";
|
||||
import form_zh from "./form/zh";
|
||||
import form_ru from "./form/ru";
|
||||
import broker_zh from "./broker/zh";
|
||||
import broker_ru from "./broker/ru";
|
||||
import table_zh from "./table/zh";
|
||||
import table_ru from "./table/ru";
|
||||
|
||||
export const admin_zh = {
|
||||
identity: {
|
||||
@ -11,6 +15,8 @@ export const admin_zh = {
|
||||
},
|
||||
common: common_zh,
|
||||
form: form_zh,
|
||||
broker: broker_zh,
|
||||
table: table_zh,
|
||||
};
|
||||
export const admin_ru = {
|
||||
identity: {
|
||||
@ -18,4 +24,6 @@ export const admin_ru = {
|
||||
},
|
||||
common: common_ru,
|
||||
form: form_ru,
|
||||
broker: broker_ru,
|
||||
table: table_ru,
|
||||
};
|
||||
|
@ -1,9 +0,0 @@
|
||||
const table = {
|
||||
operation: "Операция",
|
||||
dataId: "Номер данных",
|
||||
patentName: "Название патента",
|
||||
patentNumber: "Номер заявки",
|
||||
inventor: "Изобретатель",
|
||||
applicant: "Заявитель (владелец патента)",
|
||||
applicationDate: "Дата подачи заявки",
|
||||
};
|
@ -1,11 +0,0 @@
|
||||
const table = {
|
||||
operation: "操作",
|
||||
dataId: "数据编号",
|
||||
patentName: "专利名称",
|
||||
patentNumber: "申请号",
|
||||
inventor: "发明人",
|
||||
applicant: "申请(专利权)人",
|
||||
applicationDate: "申请日期",
|
||||
};
|
||||
|
||||
export default table;
|
20
src/i18n/message/admin/table/ru.js
Normal file
20
src/i18n/message/admin/table/ru.js
Normal file
@ -0,0 +1,20 @@
|
||||
const table = {
|
||||
// 入驻时间
|
||||
enterTime: "Время входа",
|
||||
// 研究领域
|
||||
researchIndustry: "Область исследований",
|
||||
// 关联专家
|
||||
relatedExperts: "Связанные эксперты",
|
||||
// 发布时间
|
||||
publishTime: "Время публикации",
|
||||
// 课题角色
|
||||
topicRole: "Роль темы",
|
||||
// 成果领域
|
||||
achievementIndustry: "Область достижений",
|
||||
// 取消关联
|
||||
cancelRelation: "Отменить связь",
|
||||
// 取消发布
|
||||
cancelPublish: "Отменить публикацию",
|
||||
};
|
||||
|
||||
export default table;
|
19
src/i18n/message/admin/table/zh.js
Normal file
19
src/i18n/message/admin/table/zh.js
Normal file
@ -0,0 +1,19 @@
|
||||
const table = {
|
||||
// 入驻时间
|
||||
enterTime: "入驻时间",
|
||||
// 研究领域
|
||||
researchIndustry: "研究领域",
|
||||
// 关联专家
|
||||
relatedExperts: "关联专家",
|
||||
// 发布时间
|
||||
publishTime: "发布时间",
|
||||
// 课题角色
|
||||
topicRole: "课题角色",
|
||||
// 成果领域
|
||||
achievementIndustry: "成果领域",
|
||||
// 取消关联
|
||||
cancelRelation: "取消关联",
|
||||
// 取消发布
|
||||
cancelPublish: "取消发布",
|
||||
};
|
||||
export default table;
|
18
src/i18n/message/common/ru.js
Normal file
18
src/i18n/message/common/ru.js
Normal file
@ -0,0 +1,18 @@
|
||||
const common = {
|
||||
home: "Главная",
|
||||
search: "Поиск",
|
||||
viewDetails: "Просмотреть детали",
|
||||
systemPrompt: "Системное сообщение",
|
||||
confirm: "Подтвердить",
|
||||
cancel: "Отмена",
|
||||
register: "Регистрация",
|
||||
login: "Войти",
|
||||
viewMore: "Просмотреть больше",
|
||||
loadMore: "Загрузить больше",
|
||||
noData: "Нет данных",
|
||||
complete: "Завершить",
|
||||
congratulations: "Поздравляем",
|
||||
title: "Цифровой мозг науки и технологий",
|
||||
status: "{type} статус",
|
||||
};
|
||||
export default common;
|
@ -1,4 +1,5 @@
|
||||
export const common = {
|
||||
home: "首页",
|
||||
search: "搜索",
|
||||
viewDetails: "查看详情",
|
||||
systemPrompt: "系统提示",
|
||||
@ -11,6 +12,8 @@ export const common = {
|
||||
noData: "暂无数据",
|
||||
complete: "完成",
|
||||
congratulations: "恭喜你",
|
||||
title: "数字科创大脑",
|
||||
status: "{type}状态",
|
||||
};
|
||||
|
||||
export default common;
|
||||
|
3
src/index.css
Normal file
3
src/index.css
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
|
||||
|
@ -57,6 +57,9 @@
|
||||
{{ t("headerMenu.switchSystem") }}
|
||||
</el-dropdown-item>
|
||||
</router-link>
|
||||
<el-dropdown-item command="setAvatar">
|
||||
<span> 修改头像 </span>
|
||||
</el-dropdown-item>
|
||||
<el-dropdown-item command="setLocale">
|
||||
<span>{{
|
||||
// ru zh
|
||||
@ -80,6 +83,7 @@
|
||||
</el-dropdown>
|
||||
</div>
|
||||
</div>
|
||||
<user-avatar ref="avatarRef" id="avatar-cropper" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -91,17 +95,20 @@ import Hamburger from "@/components/Hamburger";
|
||||
import Screenfull from "@/components/Screenfull";
|
||||
import SizeSelect from "@/components/SizeSelect";
|
||||
import HeaderSearch from "@/components/HeaderSearch";
|
||||
import UserAvatar from "@/views/system/user/profile/userAvatar.vue";
|
||||
import RuoYiGit from "@/components/RuoYi/Git";
|
||||
import RuoYiDoc from "@/components/RuoYi/Doc";
|
||||
import useAppStore from "@/store/modules/app";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
import useSettingsStore from "@/store/modules/settings";
|
||||
import { useI18n } from "vue-i18n";
|
||||
import { ref } from "vue";
|
||||
|
||||
const appStore = useAppStore();
|
||||
const userStore = useUserStore();
|
||||
const settingsStore = useSettingsStore();
|
||||
const { t, locale } = useI18n();
|
||||
const avatarRef = ref();
|
||||
|
||||
function toggleSideBar() {
|
||||
appStore.toggleSideBar();
|
||||
@ -118,6 +125,9 @@ function handleCommand(command) {
|
||||
case "setLocale":
|
||||
settingsStore.toggleLocale();
|
||||
break;
|
||||
case "setAvatar":
|
||||
avatarRef.value.editCropper();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@ -232,4 +242,8 @@ function setLayout() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
:deep(.user-info-head) {
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
|
@ -16,14 +16,22 @@
|
||||
:class="{ 'submenu-title-noDropdown': !isNest }"
|
||||
>
|
||||
<svg-icon
|
||||
style="flex: 1"
|
||||
:icon-class="
|
||||
onlyOneChild.meta.icon || (item.meta && item.meta.icon)
|
||||
"
|
||||
/>
|
||||
<template #title
|
||||
><span
|
||||
class="menu-title"
|
||||
:title="hasTitle(onlyOneChild.meta.title)"
|
||||
style="flex: 8"
|
||||
class="menu-title flex-6"
|
||||
:title="
|
||||
hasTitle(
|
||||
onlyOneChild.meta.i18nStr
|
||||
? t(onlyOneChild.meta.i18nStr)
|
||||
: onlyOneChild.meta.title
|
||||
)
|
||||
"
|
||||
>{{
|
||||
onlyOneChild.meta.i18nStr
|
||||
? t(onlyOneChild.meta.i18nStr)
|
||||
@ -42,10 +50,17 @@
|
||||
popper-append-to-body
|
||||
>
|
||||
<template v-if="item.meta" #title>
|
||||
<svg-icon :icon-class="item.meta && item.meta.icon" />
|
||||
<span class="menu-title" :title="hasTitle(item.meta.title)">{{
|
||||
item.meta.i18nStr ? t(item.meta.i18nStr) : item.meta.title
|
||||
}}</span>
|
||||
<svg-icon style="flex: 1" :icon-class="item.meta && item.meta.icon" />
|
||||
<span
|
||||
class="menu-title"
|
||||
style="flex: 8"
|
||||
:title="
|
||||
hasTitle(item.meta.i18nStr ? t(item.meta.i18nStr) : item.meta.title)
|
||||
"
|
||||
>{{
|
||||
item.meta.i18nStr ? t(item.meta.i18nStr) : item.meta.title
|
||||
}}</span
|
||||
>
|
||||
</template>
|
||||
|
||||
<sidebar-item
|
||||
|
@ -6,6 +6,7 @@ import ElementPlus from "element-plus";
|
||||
import locale from "element-plus/lib/locale/lang/zh-cn"; // 中文语言
|
||||
import "@/assets/styles/index.scss"; // global css
|
||||
|
||||
import "@/index.css";
|
||||
// import {createI18n} from "vue-i18n";
|
||||
// import {messages} from '@/i18n'
|
||||
|
||||
|
@ -4,7 +4,9 @@ import {
|
||||
ElNotification,
|
||||
ElLoading,
|
||||
} from "element-plus";
|
||||
import i18n from "@/i18n";
|
||||
|
||||
const { t } = i18n.global;
|
||||
let loadingInstance;
|
||||
|
||||
export default {
|
||||
@ -26,19 +28,21 @@ export default {
|
||||
},
|
||||
// 弹出提示
|
||||
alert(content) {
|
||||
ElMessageBox.alert(content, "系统提示");
|
||||
ElMessageBox.alert(content, t("common.systemPrompt"));
|
||||
},
|
||||
// 错误提示
|
||||
alertError(content) {
|
||||
ElMessageBox.alert(content, "系统提示", { type: "error" });
|
||||
void ElMessageBox.alert(content, t("common.systemPrompt"), {
|
||||
type: "error",
|
||||
});
|
||||
},
|
||||
// 成功提示
|
||||
alertSuccess(content) {
|
||||
ElMessageBox.alert(content, "系统提示", { type: "success" });
|
||||
ElMessageBox.alert(content, t("common.systemPrompt"), { type: "success" });
|
||||
},
|
||||
// 警告提示
|
||||
alertWarning(content) {
|
||||
ElMessageBox.alert(content, "系统提示", { type: "warning" });
|
||||
ElMessageBox.alert(content, t("common.systemPrompt"), { type: "warning" });
|
||||
},
|
||||
// 通知提示
|
||||
notify(content) {
|
||||
@ -58,17 +62,17 @@ export default {
|
||||
},
|
||||
// 确认窗体
|
||||
confirm(content) {
|
||||
return ElMessageBox.confirm(content, "系统提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
return ElMessageBox.confirm(content, t("common.systemPrompt"), {
|
||||
confirmButtonText: t("common.confirm"),
|
||||
cancelButtonText: t("common.confirm"),
|
||||
type: "warning",
|
||||
});
|
||||
},
|
||||
// 提交内容
|
||||
prompt(content) {
|
||||
return ElMessageBox.prompt(content, "系统提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
return ElMessageBox.prompt(content, t("common.systemPrompt"), {
|
||||
confirmButtonText: t("common.confirm"),
|
||||
cancelButtonText: t("common.confirm"),
|
||||
type: "warning",
|
||||
});
|
||||
},
|
||||
|
@ -1007,6 +1007,7 @@ export const researchRoutes = [
|
||||
component: () =>
|
||||
import("@/views/admin/research/research/service-demand/index.vue"),
|
||||
name: "ServiceDemand",
|
||||
hidden: true,
|
||||
meta: {
|
||||
title: "服务需求列表",
|
||||
icon: "list",
|
||||
|
@ -57,7 +57,7 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<p>
|
||||
<b>{{ t("admin.form.data", { type: t("admin.common.lab") }) }}</b>
|
||||
<b>{{ t("admin.form.data", { type: t("admin.common.broker") }) }}</b>
|
||||
</p>
|
||||
<!-- <laboratory-form ref="labFormRef" v-model="form" :is-add="false"/>-->
|
||||
<agent-form ref="agentFormRef" v-model="form" :is-add="false" />
|
||||
|
@ -254,7 +254,9 @@ getList();
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="default" @click="handleCancel">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="default" @click="handleCancel">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
<el-button type="primary" @click="submit">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
|
@ -1,4 +1,7 @@
|
||||
<script setup>
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
import { reactive, toRefs } from "vue";
|
||||
|
||||
const data = reactive({
|
||||
@ -22,7 +25,7 @@ const handleSave = () => {};
|
||||
<el-input v-model="form.name" placeholder="请输入" />
|
||||
</el-form-item>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证号">
|
||||
<el-form-item :label="t('admin.form.idCard')">
|
||||
<el-input v-model="form.number" placeholder="请输入" />
|
||||
</el-form-item>
|
||||
<el-form-item label="银行卡号">
|
||||
|
@ -8,6 +8,7 @@ import {
|
||||
listBrokerEnterprise,
|
||||
} from "@/api/admin/agent/service/enterprise";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
@ -97,7 +98,8 @@ const cancel = () => {
|
||||
};
|
||||
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的项目?')
|
||||
modal
|
||||
.confirm('是否确认删除数据编号为"' + id + '"的项目?')
|
||||
.then(() => {
|
||||
return deleteBrokerEnterprise(id);
|
||||
})
|
||||
@ -236,7 +238,9 @@ getList();
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -53,7 +53,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="introduce">
|
||||
<el-form-item
|
||||
:label="t('webSearch.demandDescription')"
|
||||
prop="introduce"
|
||||
>
|
||||
<wangEditor
|
||||
v-model="form.introduce"
|
||||
min-height="150px"
|
||||
@ -120,7 +123,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-form-item :label="t('admin.form.demandContact')" prop="name">
|
||||
<el-input
|
||||
v-model="form.name"
|
||||
placeholder="请输入需求联系人"
|
||||
@ -128,7 +131,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.contactPhone')" prop="mobile">
|
||||
<el-input
|
||||
v-model="form.mobile"
|
||||
maxlength="11"
|
||||
|
@ -3,7 +3,8 @@ import { reactive, ref, toRefs } from "vue";
|
||||
import dayjs from "dayjs";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { technologyDemandList } from "@/api/admin/agent/service/technology-demand";
|
||||
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
const dataList = ref([]);
|
||||
@ -97,7 +98,11 @@ if (route.query.id) {
|
||||
:label="t('admin.form.mobile')"
|
||||
prop="mobile"
|
||||
/>
|
||||
<el-table-column align="center" label="发布时间" prop="name">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="name"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
{{ dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss") }}
|
||||
</template>
|
||||
|
@ -8,6 +8,9 @@ import {
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { ElMessage } from "element-plus";
|
||||
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const active = ref(0); /*active step index*/
|
||||
const updateStatusList = ref([]); /*update status list*/
|
||||
const route = useRoute();
|
||||
@ -56,7 +59,6 @@ const getUpdateStatus = async (demandId) => {
|
||||
const reverseIndex = updateStatusList.value.findLastIndex(
|
||||
(item) => item.status === "1"
|
||||
);
|
||||
console.log(updateStatusList.value.length, reverseIndex);
|
||||
active.value = reverseIndex === -1 ? 0 : reverseIndex;
|
||||
};
|
||||
|
||||
@ -76,13 +78,35 @@ const close = () => {
|
||||
router.go(-1);
|
||||
};
|
||||
const submit = () => {
|
||||
console.log(updateStatusList.value[active.value]);
|
||||
// 当前步骤的表单
|
||||
const form = updateStatusList.value[active.value];
|
||||
console.log(active.value);
|
||||
console.log(form);
|
||||
// 当active.value !== 4 时, files 字段不能为空
|
||||
// 当 active.value ===2 或 3 时remark 字段不能为空
|
||||
if (active.value !== 4 && !form.files) {
|
||||
ElMessage.error("请上传文件");
|
||||
return;
|
||||
}
|
||||
if ((active.value === 2 || active.value === 3) && !form.remark) {
|
||||
ElMessage.error("请填写金额");
|
||||
return;
|
||||
}
|
||||
|
||||
if (active.value === 4 && !form.remark) {
|
||||
ElMessage.error("请填写未结题原因");
|
||||
return;
|
||||
}
|
||||
|
||||
updateDemandProcess({
|
||||
...updateStatusList.value[active.value],
|
||||
status: "1",
|
||||
})
|
||||
.then((resp) => {
|
||||
ElMessage.success("操作成功");
|
||||
// if (active.value <= 3) {
|
||||
// active.value += 1;
|
||||
// }
|
||||
})
|
||||
.catch(() => {})
|
||||
.finally(() => {
|
||||
@ -178,8 +202,39 @@ if (route.query.id) {
|
||||
"
|
||||
type="primary"
|
||||
@click="submit"
|
||||
>{{ t("admin.common.submit") }}
|
||||
>{{ t("admin.broker.saveCurrentStep") }}
|
||||
</el-button>
|
||||
|
||||
<template v-if="updateStatusList[active]?.status === '1'">
|
||||
<el-button
|
||||
v-if="active <= 1"
|
||||
@click="
|
||||
() => {
|
||||
active += 1;
|
||||
}
|
||||
"
|
||||
>
|
||||
{{ t("admin.common.nextStep") }}
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="active === 2"
|
||||
@click="
|
||||
() => {
|
||||
active = 3;
|
||||
}
|
||||
"
|
||||
>结题
|
||||
</el-button>
|
||||
<el-button
|
||||
v-if="active === 2"
|
||||
@click="
|
||||
() => {
|
||||
active = 4;
|
||||
}
|
||||
"
|
||||
>未结题
|
||||
</el-button>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -21,7 +21,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="introduce">
|
||||
<el-form-item
|
||||
:label="t('webSearch.demandDescription')"
|
||||
prop="introduce"
|
||||
>
|
||||
<wangEditor
|
||||
v-model="form.introduce"
|
||||
min-height="150px"
|
||||
|
@ -178,7 +178,9 @@ const cancel = () => {
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -22,7 +22,9 @@ import { updateEnterprise } from "@/api/admin/enterprise";
|
||||
import EnterpriseForm from "@/views/components/EnterpriseForm";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const data = reactive({
|
||||
PersonalInfoForm: {}, // 个人基本资料
|
||||
enterpriseInfoForm: {},
|
||||
|
@ -184,7 +184,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -200,6 +202,7 @@ import {
|
||||
deleteCasDealLog,
|
||||
} from "@/api/admin/enterprise";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { reactive } from "vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
@ -333,13 +336,13 @@ const submitForm = async () => {
|
||||
/** 删除按钮操作 */
|
||||
const handleDelete = (id) => {
|
||||
const orderIds = id || ids.value;
|
||||
ElMessageBox.confirm('是否确认删除订单号为"' + orderIds + '"的数据项?').then(
|
||||
async () => {
|
||||
modal
|
||||
.confirm('是否确认删除订单号为"' + orderIds + '"的数据项?')
|
||||
.then(async () => {
|
||||
await deleteCasDealLog(id);
|
||||
getList();
|
||||
ElMessage.success("删除成功");
|
||||
}
|
||||
);
|
||||
});
|
||||
};
|
||||
/** 导出按钮操作 */
|
||||
// function handleExport() {
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
<!-- <el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求名称:" prop="title">
|
||||
<el-form-item :label="t('admin.form.name', {type:t('admin.common.demand')})" prop="title">
|
||||
<el-input v-model="form.title"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -31,8 +31,8 @@
|
||||
v-for="item in checkList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
>{{ item.name }}</el-checkbox
|
||||
>
|
||||
>{{ item.name }}
|
||||
</el-checkbox>
|
||||
<!-- <el-checkbox label="0" @change="handleCheck">其他</el-checkbox> -->
|
||||
</el-checkbox-group>
|
||||
<el-row :gutter="20">
|
||||
@ -52,7 +52,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="description">
|
||||
<el-form-item
|
||||
:label="t('webSearch.demandDescription')"
|
||||
prop="description"
|
||||
>
|
||||
<!-- <Editor v-model="form.description" :minHeight="150" /> -->
|
||||
<wangEditor
|
||||
v-model="form.description"
|
||||
@ -72,7 +75,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-form-item :label="t('admin.form.demandContact')" prop="name">
|
||||
<el-input
|
||||
v-model="form.name"
|
||||
placeholder="请输入需求联系人"
|
||||
@ -80,7 +83,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.contactPhone')" prop="mobile">
|
||||
<el-input
|
||||
v-model="form.mobile"
|
||||
placeholder="请输入联系人手机号"
|
||||
@ -109,10 +112,12 @@
|
||||
</el-row>
|
||||
</el-form>
|
||||
<div :style="{ marginLeft: labelWidth + 'px' }">
|
||||
<el-button @click="backToList">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
<el-button @click="backToList"
|
||||
>{{ t("admin.common.cancel") }}
|
||||
</el-button>
|
||||
<el-button type="primary" @click="submitForm"
|
||||
>{{ t("admin.common.submit") }}
|
||||
</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
@ -127,12 +132,14 @@ import {
|
||||
} from "@/api/admin/enterprise/demand";
|
||||
// import CityOptions from "@/views/components/CityOptions";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { onActivated } from "vue";
|
||||
import { onActivated, onMounted, reactive, toRefs } from "vue";
|
||||
import { demandCategoryList } from "@/utils/parameter";
|
||||
// import { onActivated } from "vue";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { updateCount } from "../../../../api/admin/count";
|
||||
import { updateCount } from "@/api/admin/count";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
const data = reactive({
|
||||
@ -192,6 +199,7 @@ const submitForm = () => {
|
||||
const backToList = () => {
|
||||
tab.closeOpenPage({ path: "/demand/serviceDemand" });
|
||||
};
|
||||
|
||||
// 添加需求类别时验证
|
||||
function addCheck() {
|
||||
if (!checkInput.value.trim().length) return ElMessage.error("请输入");
|
||||
|
@ -48,7 +48,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="introduce">
|
||||
<el-form-item
|
||||
:label="t('webSearch.demandDescription')"
|
||||
prop="introduce"
|
||||
>
|
||||
<wangEditor
|
||||
v-model="form.introduce"
|
||||
placeholder="请输入技术需求内容和详细的技术指标"
|
||||
@ -115,7 +118,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-form-item :label="t('admin.form.demandContact')" prop="name">
|
||||
<el-input
|
||||
v-model="form.name"
|
||||
placeholder="请输入需求联系人"
|
||||
@ -123,7 +126,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.contactPhone')" prop="mobile">
|
||||
<el-input
|
||||
v-model="form.mobile"
|
||||
maxlength="11"
|
||||
@ -181,20 +184,21 @@
|
||||
</template>
|
||||
<script setup>
|
||||
// import { expert } from "@/api/identity/index";
|
||||
// import { insertTechnologyDemand } from "@/api/admin/enterprise";
|
||||
import tab from "@/plugins/tab";
|
||||
import { insertTechnologyDemand } from "@/api/admin/enterprise";
|
||||
import { useI18n } from "vue-i18n";
|
||||
import CityOptions from "@/views/components/CityOptions";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import FieldOptions from "@/views/components/FieldOptions";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd";
|
||||
import { onMounted, reactive, toRefs } from "vue";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { updateCount } from "@/api/admin/count";
|
||||
import {
|
||||
getTechnologyDemand,
|
||||
updateTechnologyDemand,
|
||||
insertTechnologyDemand,
|
||||
} from "@/api/admin/enterprise/demand";
|
||||
import { onMounted } from "vue";
|
||||
import { updateCount } from "../../../../api/admin/count";
|
||||
import tab from "@/plugins/tab";
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
const data = reactive({
|
||||
|
@ -38,7 +38,7 @@
|
||||
/>
|
||||
<el-table-column label="手机号" align="center" prop="mobile" />
|
||||
<el-table-column
|
||||
label="发布时间"
|
||||
:label="t('admin.table.publishTime')"
|
||||
align="center"
|
||||
prop="createTime"
|
||||
width="180"
|
||||
@ -103,6 +103,7 @@
|
||||
import { demandList } from "@/api/admin/enterprise";
|
||||
import { updateDemand } from "@/api/admin/enterprise/demand";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { getCurrentInstance, onActivated } from "vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import { useI18n } from "vue-i18n";
|
||||
@ -171,7 +172,8 @@ function resetQuery() {
|
||||
}
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除订单号为"' + id + '"的数据项?')
|
||||
modal
|
||||
.confirm('是否确认删除订单号为"' + id + '"的数据项?')
|
||||
.then(function () {
|
||||
return demandDelete(postIds);
|
||||
})
|
||||
@ -187,7 +189,8 @@ function handleEdit(id) {
|
||||
|
||||
// 修改为完成状态
|
||||
const complete = (id) => {
|
||||
ElMessageBox.confirm(`是否确认结束编号为${id}的数据项?`)
|
||||
modal
|
||||
.confirm(`是否确认结束编号为${id}的数据项?`)
|
||||
.then(async () => {
|
||||
await updateDemand({ id, status: 4 });
|
||||
getList();
|
||||
|
@ -40,7 +40,7 @@
|
||||
<el-table-column label="手机号" prop="mobile" align="center" />
|
||||
<!-- <el-zh-column label="浏览量" prop="visit_count" align="center" /> -->
|
||||
<el-table-column
|
||||
label="发布时间"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="createTime"
|
||||
align="center"
|
||||
width="180"
|
||||
@ -125,8 +125,10 @@ import {
|
||||
updateTechnologyDemand,
|
||||
} from "@/api/admin/enterprise/demand";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
const { proxy } = getCurrentInstance();
|
||||
const router = useRouter();
|
||||
|
||||
@ -191,7 +193,8 @@ function handleQuery() {
|
||||
// }
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的需求项?')
|
||||
modal
|
||||
.confirm('是否确认删除数据编号为"' + id + '"的需求项?')
|
||||
.then(function () {
|
||||
console.log("delete");
|
||||
return deleteTechnologyDemand(id);
|
||||
@ -206,7 +209,8 @@ function handleDelete(id) {
|
||||
}
|
||||
function handleShelf(row) {
|
||||
let text = row.shelf_status == 2 ? "上架" : "下架";
|
||||
ElMessageBox.confirm('确认要"' + text + '""' + row.id + '"的需求吗?')
|
||||
modal
|
||||
.confirm('确认要"' + text + '""' + row.id + '"的需求吗?')
|
||||
.then(function () {
|
||||
let status = row.shelf_status == 1 ? 2 : 1;
|
||||
return achievementShelf({ id: row.id, status });
|
||||
@ -228,7 +232,8 @@ function handleResults(row) {
|
||||
|
||||
// 修改为完成状态
|
||||
const complete = (id) => {
|
||||
ElMessageBox.confirm(`是否确认结束编号为${id}的数据项?`)
|
||||
modal
|
||||
.confirm(`是否确认结束编号为${id}的数据项?`)
|
||||
.then(async () => {
|
||||
await updateTechnologyDemand({ id, status: 4 });
|
||||
getList();
|
||||
@ -237,7 +242,8 @@ const complete = (id) => {
|
||||
.catch(() => {});
|
||||
};
|
||||
const cancelPub = (id) => {
|
||||
ElMessageBox.confirm(`是否确认取消发布编号为${id}的数据项?`)
|
||||
modal
|
||||
.confirm(`是否确认取消发布编号为${id}的数据项?`)
|
||||
.then(async () => {
|
||||
await updateTechnologyDemand({ id, status: 3 });
|
||||
getList();
|
||||
|
@ -27,7 +27,11 @@
|
||||
/>
|
||||
<el-table-column label="产品领域" prop="industryStr" />
|
||||
<!-- <el-zh-column label="浏览量" prop="visit_count" /> -->
|
||||
<el-table-column label="发布时间" prop="createTime" width="180">
|
||||
<el-table-column
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="createTime"
|
||||
width="180"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ row.createTime }}</span>
|
||||
</template>
|
||||
@ -107,6 +111,7 @@ import {
|
||||
updateEnterpriseProduct,
|
||||
} from "@/api/admin/enterprise/product";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { onActivated } from "vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import useUserStore from "@/store/modules/user";
|
||||
@ -142,7 +147,7 @@ const getList = async () => {
|
||||
|
||||
// 处理删除
|
||||
const handleDelete = (id) => {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的产品项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的产品项?')
|
||||
.then(async () => {
|
||||
await deleteEnterpriseProduct(id);
|
||||
ElMessage.success("删除成功");
|
||||
@ -160,7 +165,7 @@ function handleQuery() {
|
||||
}
|
||||
// 取消发布
|
||||
const releaseCancel = (id) => {
|
||||
ElMessageBox.confirm('确认要取消发布id为"' + id + '"的产品吗?')
|
||||
modal.confirm('确认要取消发布id为"' + id + '"的产品吗?')
|
||||
.then(async () => {
|
||||
await updateEnterpriseProduct({ id, status: 3 });
|
||||
ElMessage.success("取消发布成功");
|
||||
@ -173,7 +178,7 @@ const releaseCancel = (id) => {
|
||||
// 下架和上架
|
||||
const handleShelf = (row) => {
|
||||
let text = row.shelfStatus == 2 ? "上架" : "下架";
|
||||
ElMessageBox.confirm('确认要"' + text + '""' + row.id + '"的产品吗?')
|
||||
modal.confirm('确认要"' + text + '""' + row.id + '"的产品吗?')
|
||||
.then(function () {
|
||||
let status = row.shelfStatus == 1 ? 2 : 1;
|
||||
return updateEnterpriseProduct({ id: row.id, shelfStatus: status });
|
||||
|
@ -28,6 +28,9 @@ import {
|
||||
} from "@/api/admin/enterprise/product";
|
||||
import { reactive, toRefs } from "vue";
|
||||
import { updateCount } from "@/api/admin/count";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const route = useRoute();
|
||||
// const router = useRouter();
|
||||
const labelWidth = 140;
|
||||
|
@ -162,7 +162,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -188,6 +190,7 @@ import {
|
||||
import { search } from "@/api/website/home";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { paperList } from "@/api/admin/expert/technology";
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
@ -305,7 +308,7 @@ const changePattent = (val) => {
|
||||
// }
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的数据项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的数据项?')
|
||||
.then(function () {
|
||||
return deleteExpertCooperateEnterpriseByIds(id);
|
||||
})
|
||||
|
@ -12,7 +12,10 @@
|
||||
</p>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求名称:" prop="title">
|
||||
<el-form-item
|
||||
:label="t('admin.form.name', { type: t('admin.common.demand') })"
|
||||
prop="title"
|
||||
>
|
||||
<el-input v-model="formData.title"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -51,7 +54,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="description">
|
||||
<el-form-item
|
||||
:label="t('webSearch.demandDescription')"
|
||||
prop="description"
|
||||
>
|
||||
<!-- <Editor v-model="formData.description" :minHeight="150" /> -->
|
||||
<wangEditor
|
||||
ref="wangEditorRef"
|
||||
@ -72,7 +78,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-form-item :label="t('admin.form.demandContact')" prop="name">
|
||||
<el-input
|
||||
v-model="formData.name"
|
||||
placeholder="请输入需求联系人"
|
||||
@ -80,7 +86,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.contactPhone')" prop="mobile">
|
||||
<el-input
|
||||
v-model="formData.mobile"
|
||||
placeholder="请输入联系人手机号"
|
||||
|
@ -54,7 +54,7 @@
|
||||
<el-table-column align="center" label="手机号" prop="mobile" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
label="发布时间"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="createTime"
|
||||
width="180"
|
||||
>
|
||||
@ -203,7 +203,7 @@ function handleEdit(id) {
|
||||
|
||||
// 修改为完成状态
|
||||
const complete = (id) => {
|
||||
ElMessageBox.confirm(`是否确认结束编号为${id}的数据项?`)
|
||||
modal.confirm(`是否确认结束编号为${id}的数据项?`)
|
||||
.then(async () => {
|
||||
await updateCasDemand({ id, status: 4 });
|
||||
getList();
|
||||
|
@ -60,7 +60,7 @@
|
||||
<!-- province--city--district -->
|
||||
<el-table-column label="所属领域" prop="territoryStr" />
|
||||
<el-table-column :label="t('admin.form.contact')" prop="contactUser" />
|
||||
<el-table-column label="联系电话" prop="contactPhone" />
|
||||
<el-table-column :label="t('webContact.phone')" prop="contactPhone" />
|
||||
<!-- <el-zh-column label="创建日期" align="center" prop="created_at">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.created_at).format("YYYY-MM-DD HH:mm:ss") }}</span>
|
||||
@ -143,7 +143,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -166,6 +168,7 @@ import {
|
||||
// import dayjs from "dayjs";
|
||||
import { useRouter } from "vue-router";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { cloneDeep } from "lodash-unified";
|
||||
|
||||
const dataList = ref([]);
|
||||
@ -219,7 +222,7 @@ function handleQuery() {
|
||||
// }
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm(`是否确认删除数据编号为"${id}"的数据项?`).then(
|
||||
modal.confirm(`是否确认删除数据编号为"${id}"的数据项?`).then(
|
||||
async () => {
|
||||
await deleteExpertWantEnterpriseByIds({ ids: [id] });
|
||||
getList();
|
||||
|
@ -25,9 +25,13 @@
|
||||
:label="t('admin.form.name', { type: t('admin.common.achievement') })"
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column label="成果领域" prop="industryStr" />
|
||||
<el-table-column :label="t('admin.table.achievementIndustry')" prop="industryStr" />
|
||||
<!-- <el-zh-column label="浏览量" prop="visitCount" /> -->
|
||||
<el-table-column label="发布时间" prop="createTime" width="180">
|
||||
<el-table-column
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="createTime"
|
||||
width="180"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>
|
||||
{{ dayjs(row.createTime).format("YYYY-MM-DD HH:mm:ss") }}</span
|
||||
@ -100,6 +104,7 @@ import {
|
||||
} from "@/api/admin/expert/achievement";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
// import { update } from "lodash-unified";
|
||||
import { useRouter } from "vue-router";
|
||||
import { updateExpertAchievement } from "@/api/admin/expert/achievement";
|
||||
@ -141,7 +146,7 @@ const handleQuery = () => {
|
||||
// }
|
||||
/** 删除按钮操作 */
|
||||
const handleDelete = (id) => {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的成果项?').then(
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的成果项?').then(
|
||||
async () => {
|
||||
await deleteAchievementByIds({ ids: [id] });
|
||||
getList();
|
||||
@ -152,7 +157,7 @@ const handleDelete = (id) => {
|
||||
// 上架和下架
|
||||
function handleShelf(row) {
|
||||
let text = row.shelfStatus == 2 ? "上架" : "下架";
|
||||
ElMessageBox.confirm('确认要"' + text + '""' + row.id + '"的成果吗?').then(
|
||||
modal.confirm('确认要"' + text + '""' + row.id + '"的成果吗?').then(
|
||||
async () => {
|
||||
const shelfStatus = row.shelfStatus == 1 ? 2 : 1;
|
||||
await updateExpertAchievement({ id: row.id, shelfStatus });
|
||||
@ -163,7 +168,7 @@ function handleShelf(row) {
|
||||
}
|
||||
// 取消发布
|
||||
const handleCancelPublish = (id) => {
|
||||
ElMessageBox.confirm(`确认要取消发布编号为"${id}"的成果吗?`).then(
|
||||
modal.confirm(`确认要取消发布编号为"${id}"的成果吗?`).then(
|
||||
async () => {
|
||||
await updateExpertAchievement({ id, status: "3" });
|
||||
ElMessage.success("取消发布成功");
|
||||
|
@ -31,7 +31,7 @@
|
||||
@keyup.enter="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="发明人" prop="roleName">
|
||||
<el-form-item :label="t('admin.form.inventor')" prop="roleName">
|
||||
<el-input
|
||||
v-model="queryParams.roleName"
|
||||
placeholder="请输入发明人"
|
||||
@ -65,13 +65,17 @@
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="申请号"
|
||||
:label="t('webSearch.applicationNumber')"
|
||||
prop="applyCode"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column label="发明人" prop="inventor" />
|
||||
<el-table-column label="申请(专利权)人" prop="applyName" />
|
||||
<el-table-column label="申请日期" align="center" prop="applyAt">
|
||||
<el-table-column :label="t('admin.form.inventor')" prop="inventor" />
|
||||
<el-table-column :label="t('webSearch.applicant')" prop="applyName" />
|
||||
<el-table-column
|
||||
:label="t('admin.form.applicationDate')"
|
||||
align="center"
|
||||
prop="applyAt"
|
||||
>
|
||||
<template #default="scope">
|
||||
<span>{{ parseTime(scope.row.applyAt) }}</span>
|
||||
</template>
|
||||
|
@ -7,7 +7,7 @@
|
||||
:inline="true"
|
||||
@submit.prevent
|
||||
>
|
||||
<el-form-item label="论文题目" prop="title">
|
||||
<el-form-item :label="t('admin.form.paperTitle')" prop="title">
|
||||
<el-input
|
||||
v-model="queryParams.title"
|
||||
placeholder="请输入论文题目"
|
||||
@ -53,14 +53,22 @@
|
||||
<el-table v-loading="loading" :data="dataList">
|
||||
<el-table-column :label="t('admin.common.dataNumber')" prop="id" />
|
||||
<el-table-column
|
||||
label="论文题目"
|
||||
:label="t('admin.form.paperTitle')"
|
||||
prop="title"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column label="刊物" prop="ext" :show-overflow-tooltip="true" />
|
||||
<el-table-column
|
||||
:label="t('admin.form.publication')"
|
||||
prop="ext"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column label="作者" prop="author" />
|
||||
<el-table-column label="关键词" align="center" prop="keyword" />
|
||||
<el-table-column label="出版日期" align="center">
|
||||
<el-table-column
|
||||
:label="t('admin.form.keywords')"
|
||||
align="center"
|
||||
prop="keyword"
|
||||
/>
|
||||
<el-table-column :label="t('admin.form.publishDate')" align="center">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.publishTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -149,7 +157,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -169,6 +179,7 @@ import dayjs from "dayjs";
|
||||
import { cloneDeep } from "lodash";
|
||||
import { useRouter } from "vue-router";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
@ -234,7 +245,7 @@ function resetQuery() {
|
||||
}
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的数据项?').then(
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的数据项?').then(
|
||||
async () => {
|
||||
await deleteCasPaper(id);
|
||||
getList();
|
||||
|
@ -32,7 +32,7 @@
|
||||
@keyup.enter="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="发明人" prop="inventor">
|
||||
<el-form-item :label="t('admin.form.inventor')" prop="inventor">
|
||||
<el-input
|
||||
v-model="queryParams.inventor"
|
||||
placeholder="请输入发明人"
|
||||
@ -91,13 +91,17 @@
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="申请号"
|
||||
:label="t('webSearch.applicationNumber')"
|
||||
prop="applyCode"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column label="发明人" prop="inventor" />
|
||||
<el-table-column label="申请(专利权)人" prop="applyName" />
|
||||
<el-table-column label="申请日期" align="center" prop="applyAt">
|
||||
<el-table-column :label="t('admin.form.inventor')" prop="inventor" />
|
||||
<el-table-column :label="t('webSearch.applicant')" prop="applyName" />
|
||||
<el-table-column
|
||||
:label="t('admin.form.applicationDate')"
|
||||
align="center"
|
||||
prop="applyAt"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -164,7 +168,10 @@
|
||||
"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="申请号:" prop="applyCode">
|
||||
<el-form-item
|
||||
:label="t('webSearch.applicationNumber')"
|
||||
prop="applyCode"
|
||||
>
|
||||
<el-input v-model="form.applyCode" placeholder="请输入申请号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="公开号:" prop="openCode">
|
||||
@ -245,7 +252,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -264,6 +273,7 @@ import { cloneDeep } from "lodash";
|
||||
import { getInfo } from "@/api/admin/expert/account";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { patentOptions } from "@/utils/parameter";
|
||||
import { useRouter } from "vue-router";
|
||||
import { useI18n } from "vue-i18n";
|
||||
@ -346,7 +356,7 @@ function resetQuery() {
|
||||
}
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
.then(function () {
|
||||
return deleteCasPatentByIds(id);
|
||||
})
|
||||
|
@ -69,13 +69,13 @@
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column :label="t('admin.common.type')" prop="kind" />
|
||||
<el-table-column label="课题角色" prop="role">
|
||||
<el-table-column :label="t('admin.table.topicRole')" prop="role">
|
||||
<template #default="scope">
|
||||
<div v-if="scope.row.role == 1">承担单位</div>
|
||||
<div v-else-if="scope.row.role == 2">参与单位</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="课题负责人" prop="director" />
|
||||
<el-table-column :label="t('admin.form.topicLeader')" prop="director" />
|
||||
<el-table-column label="发布日期" align="center" prop="created_at">
|
||||
<template #default="scope">
|
||||
<span>{{
|
||||
@ -220,7 +220,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -237,6 +239,7 @@ import {
|
||||
} from "@/api/admin/expert/research";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { cloneDeep } from "lodash-unified";
|
||||
import { useRouter } from "vue-router";
|
||||
import { useI18n } from "vue-i18n";
|
||||
@ -312,7 +315,7 @@ function resetQuery() {
|
||||
}
|
||||
function handleShelf(row) {
|
||||
const text = row.shelfStatus == 2 ? "上架" : "下架";
|
||||
ElMessageBox.confirm(`确认要${text}"${row.id}"的数据吗?`)
|
||||
modal.confirm(`确认要${text}"${row.id}"的数据吗?`)
|
||||
.then(() => {
|
||||
const shelfStatus = row.shelfStatus == 1 ? 2 : 1;
|
||||
return updateTechnologyProject({ id: row.id, shelfStatus });
|
||||
@ -327,7 +330,7 @@ function handleShelf(row) {
|
||||
}
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm(`是否确认删除数据编号为"${id}"的数据项?`).then(
|
||||
modal.confirm(`是否确认删除数据编号为"${id}"的数据项?`).then(
|
||||
async () => {
|
||||
await deleteTechnologyProjectByIds({ ids: [id] });
|
||||
getList();
|
||||
|
@ -1,7 +1,120 @@
|
||||
<script setup></script>
|
||||
<script setup>
|
||||
import { User } from "@element-plus/icons-vue";
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="app-container">实验室后台</div>
|
||||
<div class="app-container">
|
||||
<!-- 数据统计, 使用不同颜色卡片展示 -->
|
||||
<div class="count-cards">
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="6">
|
||||
<el-card class="count-card">
|
||||
<div class="card-icon">
|
||||
<el-icon>
|
||||
<User />
|
||||
</el-icon>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<span class="fl">用户总数</span>
|
||||
<span class="fr">123</span>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-card class="count-card">
|
||||
<div class="card-icon">
|
||||
<el-icon>
|
||||
<User />
|
||||
</el-icon>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<span class="fl">用户总数</span>
|
||||
<span class="fr">123</span>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-card class="count-card">
|
||||
<div class="card-icon">
|
||||
<el-icon>
|
||||
<User />
|
||||
</el-icon>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<span class="fl">用户总数</span>
|
||||
<span class="fr">123</span>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-card class="count-card">
|
||||
<div class="card-icon">
|
||||
<el-icon>
|
||||
<User />
|
||||
</el-icon>
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<span class="fl">用户总数</span>
|
||||
<span class="fr">123</span>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped></style>
|
||||
<style lang="scss" scoped>
|
||||
.count-cards {
|
||||
:deep(.count-card) {
|
||||
.el-card__body {
|
||||
display: flex;
|
||||
|
||||
.card-icon {
|
||||
flex: 1;
|
||||
aspect-ratio: 1/1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
font-size: 24px;
|
||||
}
|
||||
|
||||
.card-content {
|
||||
flex: 6;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: start;
|
||||
flex-direction: column;
|
||||
height: 72px;
|
||||
|
||||
.fl {
|
||||
//靠左对齐 加大 加粗
|
||||
//align-self: start;
|
||||
font-size: 20px;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.fr {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 不同颜色
|
||||
& .el-col:nth-child(1) .count-card {
|
||||
background-color: #409eff;
|
||||
}
|
||||
|
||||
& .el-col:nth-child(2) .count-card {
|
||||
background-color: #67c23a;
|
||||
}
|
||||
|
||||
& .el-col:nth-child(3) .count-card {
|
||||
background-color: #e6a23c;
|
||||
}
|
||||
|
||||
& .el-col:nth-child(4) .count-card {
|
||||
background-color: #f56c6c;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
@ -53,12 +53,19 @@
|
||||
/>
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="成果领域"
|
||||
:label="t('admin.table.achievementIndustry')"
|
||||
prop="industryStr"
|
||||
/>
|
||||
<el-table-column label="所属专家" prop="expertName" />
|
||||
<el-table-column
|
||||
:label="t('admin.form.belongExpert')"
|
||||
prop="expertName"
|
||||
/>
|
||||
<!-- <el-zh-column label="浏览量" prop="visitCount"/>-->
|
||||
<el-table-column align="center" label="发布时间" prop="createTime">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="createTime"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.createTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -102,6 +109,8 @@
|
||||
<script setup>
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import {
|
||||
@ -109,6 +118,7 @@ import {
|
||||
deleteAchievements,
|
||||
} from "@/api/admin/laboratory/achievement";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
|
||||
@ -164,7 +174,14 @@ function resetQuery() {
|
||||
* @param id
|
||||
*/
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的成果项?')
|
||||
modal
|
||||
.confirm(
|
||||
t("admin.common.confirmAction", {
|
||||
number: id,
|
||||
action: t("admin.common.delete"),
|
||||
type: t("admin.common.achievement"),
|
||||
})
|
||||
)
|
||||
.then(function () {
|
||||
return deleteAchievements(id);
|
||||
})
|
||||
|
@ -37,9 +37,11 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<!-- <el-col :span="1.5">-->
|
||||
<!-- <el-button icon="plus" size="small" type="primary"> {{ t('admin.common.add') }}</el-button>-->
|
||||
<!-- </el-col>-->
|
||||
<el-col :span="1.5">
|
||||
<el-button icon="plus" size="small" type="primary">
|
||||
{{ t("admin.table.relatedExperts") }}
|
||||
</el-button>
|
||||
</el-col>
|
||||
<right-toolbar
|
||||
v-model:showSearch="showSearch"
|
||||
@queryTable="getList"
|
||||
@ -54,10 +56,17 @@
|
||||
:label="t('admin.form.name', { type: t('admin.common.expert') })"
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column label="联系电话" prop="mobile" />
|
||||
<el-table-column label="研究领域" prop="industryStr" />
|
||||
<!-- <el-zh-column label="申请(专利权)人" prop="applyName"/>-->
|
||||
<el-table-column align="center" label="入驻时间" prop="workTime">
|
||||
<el-table-column :label="t('webContact.phone')" prop="mobile" />
|
||||
<el-table-column
|
||||
:label="t('admin.table.researchIndustry')"
|
||||
prop="industryStr"
|
||||
/>
|
||||
<!-- <el-zh-column :label="t('webSearch.applicant')" prop="applyName"/>-->
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.enterTime')"
|
||||
prop="workTime"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.workTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -81,7 +90,7 @@
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleDeleteBind(row.id)"
|
||||
>{{ t("admin.common.cancel") }}关联
|
||||
>{{ t("admin.table.cancelRelation") }}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@ -119,7 +128,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm"
|
||||
>{{ t("admin.common.confirm") }}
|
||||
</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -131,11 +142,13 @@
|
||||
import { labPatentList } from "@/api/admin/laboratory/patent";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { computed, reactive, ref, toRefs } from "vue";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd/index.vue";
|
||||
import { deleteBindExpert, expertList } from "@/api/admin/laboratory/expert";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
|
||||
@ -189,7 +202,14 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDeleteBind(id) {
|
||||
ElMessageBox.confirm(`是否确认取消关联数据编号为"${id}"的专家?`)
|
||||
modal
|
||||
.confirm(
|
||||
t("admin.common.confirmAction", {
|
||||
number: id,
|
||||
action: t("admin.table.cancelRelation"),
|
||||
type: t("admin.common.expert"),
|
||||
})
|
||||
)
|
||||
.then(function () {
|
||||
return deleteBindExpert(id);
|
||||
})
|
||||
|
@ -69,10 +69,14 @@
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
align="center"
|
||||
label="型号"
|
||||
:label="t('admin.form.model')"
|
||||
prop="model"
|
||||
/>
|
||||
<el-table-column align="center" label="购买日期" prop="buyDate">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.buyDate')"
|
||||
prop="buyDate"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.buyDate).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -126,10 +130,10 @@
|
||||
"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="型号:" prop="model">
|
||||
<el-form-item :label="t('admin.form.model')" prop="model">
|
||||
<el-input v-model="form.model" placeholder="请输入型号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="购买时间:" prop="buyDate">
|
||||
<el-form-item :label="t('admin.form.buyDate')" prop="buyDate">
|
||||
<el-date-picker
|
||||
v-model="form.buyDate"
|
||||
placeholder="请选择购买时间"
|
||||
@ -137,20 +141,32 @@
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="成果参数:" prop="param">
|
||||
<el-form-item
|
||||
:label="t('admin.form.achievementParameter')"
|
||||
prop="param"
|
||||
>
|
||||
<el-input v-model="form.param" placeholder="请输入成果参数" />
|
||||
</el-form-item>
|
||||
<el-form-item label="设备描述:" prop="description">
|
||||
<el-form-item
|
||||
:label="t('admin.form.deviceDescription')"
|
||||
prop="description"
|
||||
>
|
||||
<el-input
|
||||
v-model="form.description"
|
||||
placeholder="请输入设备描述"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', {
|
||||
type: t('admin.form.deviceDescription'),
|
||||
})
|
||||
"
|
||||
type="textarea"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -163,6 +179,7 @@
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import {
|
||||
deleteEquipment,
|
||||
equipmentList,
|
||||
@ -231,7 +248,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(row) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + row.deviceId + '"的数据项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + row.deviceId + '"的数据项?')
|
||||
.then(function () {
|
||||
return deleteEquipment([row.deviceId]);
|
||||
})
|
||||
|
@ -48,14 +48,26 @@
|
||||
<el-table-column :label="t('admin.common.dataNumber')" prop="id" />
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="论文题目"
|
||||
:label="t('admin.form.paperTitle')"
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column :show-overflow-tooltip="true" label="刊物" prop="ext" />
|
||||
<el-table-column label="所属专家" prop="author" />
|
||||
<el-table-column align="center" label="关键词" prop="keyword" />
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
:label="t('admin.form.publication')"
|
||||
prop="ext"
|
||||
/>
|
||||
<el-table-column :label="t('admin.form.belongExpert')" prop="author" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.keywords')"
|
||||
prop="keyword"
|
||||
/>
|
||||
<!-- <el-zh-column align="center" label="浏览量" prop="readCount"/>-->
|
||||
<el-table-column align="center" label="出版日期" prop="publishTime">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.publishDate')"
|
||||
prop="publishTime"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.publishTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -99,7 +111,7 @@
|
||||
<el-form-item label="论文题目:" prop="title">
|
||||
<el-input v-model="form.title" placeholder="请输入论文题目" />
|
||||
</el-form-item>
|
||||
<el-form-item label="刊物:" prop="ext">
|
||||
<el-form-item :label="t('admin.form.publication')" prop="ext">
|
||||
<el-input v-model="form.ext" placeholder="请输入刊物" />
|
||||
</el-form-item>
|
||||
<el-form-item label="作者:" prop="author">
|
||||
@ -131,7 +143,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm"
|
||||
>{{ t("admin.common.confirm") }}
|
||||
</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -142,12 +156,14 @@
|
||||
<script setup>
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import { cloneDeep } from "lodash";
|
||||
import { deletePaper, paperList } from "@/api/admin/laboratory/paper";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
|
||||
@ -215,7 +231,14 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的论文项?')
|
||||
modal
|
||||
.confirm(
|
||||
t("admin.common.confirmAction", {
|
||||
number: id,
|
||||
action: t("admin.common.delete"),
|
||||
type: t("admin.common.paper"),
|
||||
})
|
||||
)
|
||||
.then(function () {
|
||||
return deletePaper(id);
|
||||
})
|
||||
|
@ -73,12 +73,16 @@
|
||||
/>
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="申请号"
|
||||
:label="t('webSearch.applicationNumber')"
|
||||
prop="applyCode"
|
||||
/>
|
||||
<el-table-column label="发明人" prop="inventor" />
|
||||
<el-table-column label="申请(专利权)人" prop="applyName" />
|
||||
<el-table-column align="center" label="申请日期" prop="applyAt">
|
||||
<el-table-column :label="t('admin.form.inventor')" prop="inventor" />
|
||||
<el-table-column :label="t('webSearch.applicant')" prop="applyName" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.applicationDate')"
|
||||
prop="applyAt"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -141,7 +145,7 @@
|
||||
<!-- <el-form-item label="专利名称:" prop="title">-->
|
||||
<!-- <el-input v-model="form.title" :placeholder="t('admin.form.placeholder', {type: t('admin.common.patent')})"/>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- <el-form-item label="申请号:" prop="applyCode">-->
|
||||
<!-- <el-form-item :label="t('webSearch.applicationNumber')" prop="applyCode">-->
|
||||
<!-- <el-input v-model="form.applyCode" placeholder="请输入申请号"/>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- <el-form-item label="公开号:" prop="openCode">-->
|
||||
@ -222,7 +226,7 @@
|
||||
<!-- </el-form>-->
|
||||
<!-- <template #footer>-->
|
||||
<!-- <div class="dialog-footer">-->
|
||||
<!-- <el-button type="primary" @click="submitForm">确 定</el-button>-->
|
||||
<!-- <el-button type="primary" @click="submitForm">{{t("admin.common.confirm")}}</el-button>-->
|
||||
<!-- <el-button @click="cancel">取 消</el-button>-->
|
||||
<!-- </div>-->
|
||||
<!-- </template>-->
|
||||
@ -237,6 +241,7 @@ import {
|
||||
} from "@/api/admin/laboratory/patent";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
@ -322,7 +327,11 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
modal.confirm(t("admin.common.confirmAction", {
|
||||
number: id,
|
||||
action: t("admin.common.delete"),
|
||||
type: t("admin.common.patent"),
|
||||
}))
|
||||
.then(function () {
|
||||
return deleteLabPatentByIds(id);
|
||||
})
|
||||
|
@ -29,7 +29,7 @@
|
||||
type="primary"
|
||||
@click="handleQuery"
|
||||
>
|
||||
{{ t() }}
|
||||
{{ t("admin.common.search") }}
|
||||
</el-button>
|
||||
<el-button icon="Refresh" size="small" @click="resetQuery">
|
||||
{{ t("admin.common.reset") }}
|
||||
@ -60,14 +60,18 @@
|
||||
:label="t('admin.common.type')"
|
||||
prop="kind"
|
||||
/>
|
||||
<!-- <el-zh-column label="所属专家" prop="inventor" />-->
|
||||
<el-table-column label="课题角色">
|
||||
<!-- <el-zh-column :label="t('admin.form.belongExpert')" prop="inventor" />-->
|
||||
<el-table-column :label="t('admin.table.topicRole')">
|
||||
<template #default="{ row }">
|
||||
{{ subjectRoleDict.find((item) => item.value === row.role)?.label }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="课题负责人" prop="director" />
|
||||
<el-table-column align="center" label="发布时间" prop="applyAt">
|
||||
<el-table-column :label="t('admin.form.topicLeader')" prop="director" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="applyAt"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -110,6 +114,7 @@
|
||||
<script setup>
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import {
|
||||
@ -170,7 +175,11 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的科研项目?')
|
||||
modal.confirm(t("admin.common.confirmAction", {
|
||||
number: id,
|
||||
action: t("admin.common.delete"),
|
||||
type: t("admin.common.researchProject"),
|
||||
}))
|
||||
.then(function () {
|
||||
return deleteTechnologyProject(id);
|
||||
})
|
||||
|
@ -9,7 +9,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求名称:" prop="title">
|
||||
<el-form-item
|
||||
:label="t('admin.form.name', { type: t('admin.common.demand') })"
|
||||
prop="title"
|
||||
>
|
||||
<el-input v-model="formData.title"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -47,7 +50,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="description">
|
||||
<el-form-item
|
||||
:label="t('webSearch.demandDescription')"
|
||||
prop="description"
|
||||
>
|
||||
<editor v-model="formData.description" :minHeight="150" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -61,7 +67,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-form-item :label="t('admin.form.demandContact')" prop="name">
|
||||
<el-input
|
||||
v-model="formData.name"
|
||||
placeholder="请输入需求联系人"
|
||||
@ -69,7 +75,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.contactPhone')" prop="mobile">
|
||||
<el-input
|
||||
v-model="formData.mobile"
|
||||
placeholder="请输入联系人手机号"
|
||||
@ -99,7 +105,9 @@
|
||||
</el-form>
|
||||
<el-row justify="center">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" @click="cancel">{{ t("identity.entrance.back") }}</el-button>
|
||||
<el-button type="primary" @click="cancel"
|
||||
>{{ t("admin.identity.entrance.back") }}
|
||||
</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
@ -112,6 +120,9 @@ import { ElMessage } from "element-plus";
|
||||
import { useRoute } from "vue-router";
|
||||
import tab from "@/plugins/tab";
|
||||
import { serviceDemandInfo } from "@/api/admin/research/service-demand";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
|
||||
const data = reactive({
|
||||
formData: {
|
||||
|
@ -75,7 +75,7 @@
|
||||
:label="t('admin.form.mobile')"
|
||||
prop="mobile"
|
||||
/>
|
||||
<el-table-column align="center" label="发布时间">
|
||||
<el-table-column align="center" :label="t('admin.table.publishTime')">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.createTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -87,14 +87,16 @@
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<el-button icon="FolderRemove" size="small" type="text" @click=""
|
||||
>{{ t("admin.common.cancel") }}发布
|
||||
>{{ t("admin.table.cancelPublish") }}
|
||||
</el-button>
|
||||
<el-button
|
||||
icon="view"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleDetail(row.id)"
|
||||
>查看
|
||||
>{{
|
||||
t('admin.common.view')
|
||||
}}
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@ -114,6 +116,7 @@
|
||||
import { deleteLabPatentByIds } from "@/api/admin/laboratory/patent";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import { serviceDemandList } from "@/api/admin/laboratory/service-demand";
|
||||
@ -173,7 +176,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
.then(function () {
|
||||
return deleteLabPatentByIds(id);
|
||||
})
|
||||
|
@ -96,14 +96,14 @@ getList();
|
||||
:label="t('admin.form.name')"
|
||||
prop="typeName"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
:label="t('admin.form.contact')"
|
||||
prop="nickname"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
:label="t('admin.form.mobile')"
|
||||
prop="phone"
|
||||
></el-table-column>
|
||||
<!-- <el-table-column-->
|
||||
<!-- :label="t('admin.form.contact')"-->
|
||||
<!-- prop="nickname"-->
|
||||
<!-- ></el-table-column>-->
|
||||
<!-- <el-table-column-->
|
||||
<!-- :label="t('admin.form.mobile')"-->
|
||||
<!-- prop="phone"-->
|
||||
<!-- ></el-table-column>-->
|
||||
<el-table-column label="浏览次数" prop="seeCount"></el-table-column>
|
||||
<el-table-column label="浏览时间" prop="updateTime"></el-table-column>
|
||||
</el-table>
|
||||
|
@ -53,12 +53,19 @@
|
||||
/>
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="成果领域"
|
||||
:label="t('admin.table.achievementIndustry')"
|
||||
prop="industryStr"
|
||||
/>
|
||||
<el-table-column label="所属专家" prop="expertName" />
|
||||
<el-table-column
|
||||
:label="t('admin.form.belongExpert')"
|
||||
prop="expertName"
|
||||
/>
|
||||
<!-- <el-zh-column label="浏览量" prop="visitCount"/>-->
|
||||
<el-table-column align="center" label="发布时间" prop="createTime">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="createTime"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.createTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -104,11 +111,14 @@ import dayjs from "dayjs";
|
||||
import { useRouter } from "vue-router";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
|
||||
import {
|
||||
achievementList,
|
||||
deleteAchievements,
|
||||
} from "@/api/admin/research/achievement";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
|
||||
@ -162,7 +172,8 @@ function resetQuery() {
|
||||
* @param id
|
||||
*/
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm(`是否确认删除数据编号为"${id}"的成果项?'`)
|
||||
modal
|
||||
.confirm(`是否确认删除数据编号为"${id}"的成果项?'`)
|
||||
.then(function () {
|
||||
return deleteAchievements(id);
|
||||
})
|
||||
|
@ -56,10 +56,17 @@
|
||||
:label="t('admin.form.name', { type: t('admin.common.expert') })"
|
||||
prop="name"
|
||||
/>
|
||||
<el-table-column label="联系电话" prop="mobile" />
|
||||
<el-table-column label="研究领域" prop="industryStr" />
|
||||
<!-- <el-zh-column label="申请(专利权)人" prop="applyName"/>-->
|
||||
<el-table-column align="center" label="入驻时间" prop="workTime">
|
||||
<el-table-column :label="t('webContact.phone')" prop="mobile" />
|
||||
<el-table-column
|
||||
:label="t('admin.table.researchIndustry')"
|
||||
prop="industryStr"
|
||||
/>
|
||||
<!-- <el-zh-column :label="t('webSearch.applicant')" prop="applyName"/>-->
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.enterTime')"
|
||||
prop="workTime"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.workTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -121,7 +128,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -132,6 +141,7 @@
|
||||
<script setup>
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd/index.vue";
|
||||
@ -190,7 +200,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDeleteBind(id) {
|
||||
ElMessageBox.confirm(`是否确认取消关联数据编号为"${id}"的专家?`)
|
||||
modal.confirm(`是否确认取消关联数据编号为"${id}"的专家?`)
|
||||
.then(function () {
|
||||
return deleteBindExpert(id);
|
||||
})
|
||||
|
@ -69,10 +69,14 @@
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
align="center"
|
||||
label="型号"
|
||||
:label="t('admin.form.model')"
|
||||
prop="model"
|
||||
/>
|
||||
<el-table-column align="center" label="购买日期" prop="buyDate">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.buyDate')"
|
||||
prop="buyDate"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.buyDate).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -126,10 +130,10 @@
|
||||
"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="型号:" prop="model">
|
||||
<el-form-item :label="t('admin.form.model')" prop="model">
|
||||
<el-input v-model="form.model" placeholder="请输入型号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="购买时间:" prop="buyDate">
|
||||
<el-form-item :label="t('admin.form.buyDate')" prop="buyDate">
|
||||
<el-date-picker
|
||||
v-model="form.buyDate"
|
||||
placeholder="请选择购买时间"
|
||||
@ -137,20 +141,32 @@
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="成果参数:" prop="param">
|
||||
<el-form-item
|
||||
:label="t('admin.form.achievementParameter')"
|
||||
prop="param"
|
||||
>
|
||||
<el-input v-model="form.param" placeholder="请输入成果参数" />
|
||||
</el-form-item>
|
||||
<el-form-item label="设备描述:" prop="description">
|
||||
<el-form-item
|
||||
:label="t('admin.form.deviceDescription')"
|
||||
prop="description"
|
||||
>
|
||||
<el-input
|
||||
v-model="form.description"
|
||||
placeholder="请输入设备描述"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', {
|
||||
type: t('admin.form.deviceDescription'),
|
||||
})
|
||||
"
|
||||
type="textarea"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -163,6 +179,7 @@
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import {
|
||||
deleteEquipment,
|
||||
equipmentList,
|
||||
@ -231,7 +248,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(row) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + row.deviceId + '"的数据项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + row.deviceId + '"的数据项?')
|
||||
.then(function () {
|
||||
return deleteEquipment([row.deviceId]);
|
||||
})
|
||||
|
@ -5,7 +5,9 @@
|
||||
<el-col :span="12">
|
||||
<el-row :gutter="12" justify="center">
|
||||
<el-col :span="1.5">
|
||||
<el-button @click="cancel">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button @click="cancel">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" @click="submit">{{
|
||||
|
@ -65,10 +65,14 @@
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
align="center"
|
||||
label="研究领域"
|
||||
:label="t('admin.table.researchIndustry')"
|
||||
prop="industryStr"
|
||||
/>
|
||||
<el-table-column align="center" label="联系电话" prop="phone" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('webContact.phone')"
|
||||
prop="phone"
|
||||
/>
|
||||
<el-table-column align="center" label="实验室网址" prop="url" />
|
||||
<el-table-column align="center" label="添加日期" prop="createTime">
|
||||
<template #default="{ row }">
|
||||
@ -122,10 +126,10 @@
|
||||
"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="型号:" prop="model">
|
||||
<el-form-item :label="t('admin.form.model')" prop="model">
|
||||
<el-input v-model="form.model" placeholder="请输入型号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="购买时间:" prop="buyDate">
|
||||
<el-form-item :label="t('admin.form.buyDate')" prop="buyDate">
|
||||
<el-date-picker
|
||||
v-model="form.buyDate"
|
||||
placeholder="请选择购买时间"
|
||||
@ -133,20 +137,32 @@
|
||||
value-format="YYYY-MM-DD HH:mm:ss"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="成果参数:" prop="param">
|
||||
<el-form-item
|
||||
:label="t('admin.form.achievementParameter')"
|
||||
prop="param"
|
||||
>
|
||||
<el-input v-model="form.param" placeholder="请输入成果参数" />
|
||||
</el-form-item>
|
||||
<el-form-item label="设备描述:" prop="description">
|
||||
<el-form-item
|
||||
:label="t('admin.form.deviceDescription')"
|
||||
prop="description"
|
||||
>
|
||||
<el-input
|
||||
v-model="form.description"
|
||||
placeholder="请输入设备描述"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', {
|
||||
type: t('admin.form.deviceDescription'),
|
||||
})
|
||||
"
|
||||
type="textarea"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -158,6 +174,7 @@
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import {
|
||||
deleteEquipment,
|
||||
insertEquipment,
|
||||
@ -228,7 +245,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(row) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + row.deviceId + '"的数据项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + row.deviceId + '"的数据项?')
|
||||
.then(function () {
|
||||
return deleteEquipment([row.deviceId]);
|
||||
})
|
||||
@ -290,7 +307,7 @@ function submitForm() {
|
||||
}
|
||||
|
||||
const handleCancelBind = (row) => {
|
||||
ElMessageBox.confirm(`是否确认解绑实验室 : ${row.name}`, "解绑实验室")
|
||||
modal.confirm(`是否确认解绑实验室 : ${row.name}`, "解绑实验室")
|
||||
.then(() => {
|
||||
return delBindLaboratory(row.id);
|
||||
})
|
||||
|
@ -48,14 +48,26 @@
|
||||
<el-table-column :label="t('admin.common.dataNumber')" prop="id" />
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="论文题目"
|
||||
:label="t('admin.form.paperTitle')"
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column :show-overflow-tooltip="true" label="刊物" prop="ext" />
|
||||
<el-table-column label="所属专家" prop="author" />
|
||||
<el-table-column align="center" label="关键词" prop="keyword" />
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
:label="t('admin.form.publication')"
|
||||
prop="ext"
|
||||
/>
|
||||
<el-table-column :label="t('admin.form.belongExpert')" prop="author" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.keywords')"
|
||||
prop="keyword"
|
||||
/>
|
||||
<!-- <el-zh-column align="center" label="浏览量" prop="readCount"/>-->
|
||||
<el-table-column align="center" label="出版日期" prop="publishTime">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.publishDate')"
|
||||
prop="publishTime"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.publishTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -100,7 +112,7 @@
|
||||
<el-form-item label="论文题目:" prop="title">
|
||||
<el-input v-model="form.title" placeholder="请输入论文题目" />
|
||||
</el-form-item>
|
||||
<el-form-item label="刊物:" prop="ext">
|
||||
<el-form-item :label="t('admin.form.publication')" prop="ext">
|
||||
<el-input v-model="form.ext" placeholder="请输入刊物" />
|
||||
</el-form-item>
|
||||
<el-form-item label="作者:" prop="author">
|
||||
@ -132,7 +144,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -143,6 +157,7 @@
|
||||
<script setup>
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import InputBoxAdd from "@/views/components/InputBoxAdd";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
@ -216,7 +231,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的论文项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的论文项?')
|
||||
.then(function () {
|
||||
return deletePaper(id);
|
||||
})
|
||||
|
@ -53,12 +53,16 @@
|
||||
/>
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="申请号"
|
||||
:label="t('webSearch.applicationNumber')"
|
||||
prop="applyCode"
|
||||
/>
|
||||
<el-table-column label="发明人" prop="inventor" />
|
||||
<el-table-column label="申请(专利权)人" prop="applyName" />
|
||||
<el-table-column align="center" label="申请日期" prop="applyAt">
|
||||
<el-table-column :label="t('admin.form.inventor')" prop="inventor" />
|
||||
<el-table-column :label="t('webSearch.applicant')" prop="applyName" />
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.applicationDate')"
|
||||
prop="applyAt"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -96,6 +100,7 @@ import dayjs from "dayjs";
|
||||
import { useRouter } from "vue-router";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import {
|
||||
deleteResearchPatentByIds,
|
||||
researchPatentList,
|
||||
@ -151,7 +156,7 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
modal.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
.then(function () {
|
||||
return deleteResearchPatentByIds(id);
|
||||
})
|
||||
|
@ -66,16 +66,24 @@
|
||||
:label="t('admin.common.type')"
|
||||
prop="kind"
|
||||
/>
|
||||
<!-- <el-zh-column label="所属专家" prop="inventor" />-->
|
||||
<el-table-column align="center" label="课题角色">
|
||||
<!-- <el-zh-column :label="t('admin.form.belongExpert')" prop="inventor" />-->
|
||||
<el-table-column align="center" :label="t('admin.table.topicRole')">
|
||||
<template #default="{ row }">
|
||||
<span>{{
|
||||
subjectRoleDict.find((item) => item.value === row.role)?.label
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column align="center" label="课题负责人" prop="director" />
|
||||
<el-table-column align="center" label="发布时间" prop="applyAt">
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.form.topicLeader')"
|
||||
prop="director"
|
||||
/>
|
||||
<el-table-column
|
||||
align="center"
|
||||
:label="t('admin.table.publishTime')"
|
||||
prop="applyAt"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -118,6 +126,7 @@
|
||||
<script setup>
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import {
|
||||
@ -178,7 +187,8 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的科研项目?')
|
||||
modal
|
||||
.confirm('是否确认删除数据编号为"' + id + '"的科研项目?')
|
||||
.then(function () {
|
||||
return deleteTechnologyProject(id);
|
||||
})
|
||||
|
@ -9,7 +9,10 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求名称:" prop="title">
|
||||
<el-form-item
|
||||
:label="t('admin.form.name', { type: t('admin.common.demand') })"
|
||||
prop="title"
|
||||
>
|
||||
<el-input v-model="formData.title"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -47,7 +50,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="需求描述:" prop="add">
|
||||
<el-form-item :label="t('webSearch.demandDescription')" prop="add">
|
||||
<editor v-model="formData.add" :minHeight="150" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -61,7 +64,7 @@
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="需求联系人:" prop="name">
|
||||
<el-form-item :label="t('admin.form.demandContact')" prop="name">
|
||||
<el-input
|
||||
v-model="formData.name"
|
||||
placeholder="请输入需求联系人"
|
||||
@ -69,7 +72,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系人手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.contactPhone')" prop="mobile">
|
||||
<el-input
|
||||
v-model="formData.mobile"
|
||||
placeholder="请输入联系人手机号"
|
||||
@ -99,7 +102,9 @@
|
||||
</el-form>
|
||||
<el-row justify="center">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" @click="cancel">{{ t("identity.entrance.back") }}</el-button>
|
||||
<el-button type="primary" @click="cancel">{{
|
||||
t("admin.identity.entrance.back")
|
||||
}}</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-card>
|
||||
|
@ -75,7 +75,7 @@
|
||||
:label="t('admin.form.mobile')"
|
||||
prop="mobile"
|
||||
/>
|
||||
<el-table-column align="center" label="发布时间">
|
||||
<el-table-column align="center" :label="t('admin.table.publishTime')">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.createTime).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
@ -114,6 +114,7 @@
|
||||
import { deleteLabPatentByIds } from "@/api/admin/laboratory/patent";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import modal from "@/plugins/modal";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import { serviceDemandList } from "@/api/admin/research/service-demand";
|
||||
@ -173,7 +174,8 @@ function resetQuery() {
|
||||
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
modal
|
||||
.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
.then(function () {
|
||||
return deleteLabPatentByIds(id);
|
||||
})
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
<el-row v-if="isAdd">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="姓名:" prop="name">
|
||||
<el-form-item :label="t('admin.form.fullName')" prop="name">
|
||||
<el-input v-model="modelValue.name"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -19,7 +19,7 @@
|
||||
|
||||
<el-row v-if="isAdd">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="手机号:" prop="mobile">
|
||||
<el-form-item :label="t('admin.form.mobile')" prop="mobile">
|
||||
<el-input v-model="modelValue.mobile"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -27,7 +27,7 @@
|
||||
|
||||
<el-row v-if="isAdd">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="身份证号:" prop="idCard">
|
||||
<el-form-item :label="t('admin.form.idCard')" prop="idCard">
|
||||
<el-input v-model="modelValue.idCard"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -60,8 +60,8 @@
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="keywords"
|
||||
placeholder="应用场景关键词+技术产品关键词"
|
||||
title="关键词"
|
||||
:placeholder="t('admin.form.inputKeywords')"
|
||||
:title="t('admin.form.keywords')"
|
||||
/>
|
||||
|
||||
<el-row v-if="isAdd">
|
||||
|
@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<el-form
|
||||
ref="formRef"
|
||||
:label-width="labelWidth + 'px'"
|
||||
:model="modelValue"
|
||||
:rules="rules"
|
||||
ref="formRef"
|
||||
:label-width="labelWidth + 'px'"
|
||||
:model="modelValue"
|
||||
:rules="rules"
|
||||
>
|
||||
<div v-if="showTitle" class="form_title">
|
||||
{{ t("admin.form.basicInfo") }}
|
||||
@ -13,7 +13,7 @@
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="企业logo:">
|
||||
<ImageUpload v-model="modelValue.image" :limit="1"/>
|
||||
<ImageUpload v-model="modelValue.image" :limit="1" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -36,9 +36,9 @@
|
||||
<el-col :span="24">
|
||||
<el-form-item label="联系方式" prop="phone">
|
||||
<el-input
|
||||
v-model="modelValue.phone"
|
||||
:maxlength="11"
|
||||
oninput="
|
||||
v-model="modelValue.phone"
|
||||
:maxlength="11"
|
||||
oninput="
|
||||
value = value
|
||||
.replace(/[^\d.]/g, '')
|
||||
.replace(/\.{2,}/g, '.')
|
||||
@ -79,10 +79,10 @@
|
||||
<el-form-item label="企业类型:" prop="kind">
|
||||
<el-select v-model="modelValue.kind" placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in enterpriseOptions"
|
||||
:key="item.key"
|
||||
:label="item.value"
|
||||
:value="item.key"
|
||||
v-for="item in enterpriseOptions"
|
||||
:key="item.key"
|
||||
:label="item.value"
|
||||
:value="item.key"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
@ -96,9 +96,9 @@
|
||||
</el-row>
|
||||
|
||||
<CityOptions
|
||||
ref="cityFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
ref="cityFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
/>
|
||||
|
||||
<el-row>
|
||||
@ -110,27 +110,27 @@
|
||||
</el-row>
|
||||
|
||||
<FieldOptions
|
||||
ref="fieldFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
ref="fieldFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
/>
|
||||
|
||||
<InputBoxAdd
|
||||
ref="keywordsFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="keywords"
|
||||
placeholder="应用场景关键词+技术产品关键词"
|
||||
title="关键词"
|
||||
ref="keywordsFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="keywords"
|
||||
placeholder="应用场景关键词+技术产品关键词"
|
||||
title="关键词"
|
||||
/>
|
||||
<InputBoxAdd
|
||||
v-if="isAdd"
|
||||
ref="directionsFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="directions"
|
||||
placeholder="请输入生产方向"
|
||||
title="生产方向"
|
||||
v-if="isAdd"
|
||||
ref="directionsFormRef"
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="directions"
|
||||
placeholder="请输入生产方向"
|
||||
title="生产方向"
|
||||
/>
|
||||
|
||||
<el-row>
|
||||
@ -149,9 +149,9 @@
|
||||
<el-col :span="24">
|
||||
<el-form-item :label="t('admin.form.businessLicense')" prop="license">
|
||||
<image-upload
|
||||
v-model="modelValue.license"
|
||||
:isShowTip="false"
|
||||
:limit="1"
|
||||
v-model="modelValue.license"
|
||||
:isShowTip="false"
|
||||
:limit="1"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -172,9 +172,9 @@
|
||||
<el-col :span="24">
|
||||
<el-form-item label="单位简介" prop="introduce">
|
||||
<WangEditor
|
||||
v-model="modelValue.introduce"
|
||||
:minHeight="300"
|
||||
@blur="formRef.validateField(`introduce`)"
|
||||
v-model="modelValue.introduce"
|
||||
:minHeight="300"
|
||||
@blur="formRef.validateField(`introduce`)"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -188,12 +188,12 @@ import FieldOptions from "../FieldOptions";
|
||||
import InputBoxAdd from "../InputBoxAdd";
|
||||
// import { researchSelect, laboratorySelect } from "@/api/identity/index";
|
||||
import WangEditor from "@/components/WangEditor";
|
||||
import {enterpriseOptions} from "@/utils/parameter";
|
||||
import {reactive, ref, toRefs} from "vue";
|
||||
import { enterpriseOptions } from "@/utils/parameter";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import ImageUpload from "@/components/ImageUpload/index.vue";
|
||||
import {useI18n} from "vue-i18n";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const {t} = useI18n();
|
||||
const { t } = useI18n();
|
||||
const props = defineProps({
|
||||
modelValue: Object,
|
||||
isAdd: {
|
||||
@ -209,7 +209,7 @@ const props = defineProps({
|
||||
default: 120,
|
||||
},
|
||||
});
|
||||
const {modelValue, isAdd, showTitle, labelWidth} = toRefs(props);
|
||||
const { modelValue, isAdd, showTitle, labelWidth } = toRefs(props);
|
||||
|
||||
const vNumber = {
|
||||
mounted: (el, _binding, vnode, _prevVnode) => {
|
||||
@ -243,9 +243,9 @@ const data = reactive({
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
username: [{required: true, message: "请输入联系人", trigger: "blur"}],
|
||||
username: [{ required: true, message: "请输入联系人", trigger: "blur" }],
|
||||
phone: [
|
||||
{required: true, message: "请输入联系方式", trigger: "blur"},
|
||||
{ required: true, message: "请输入联系方式", trigger: "blur" },
|
||||
{
|
||||
pattern: /^1[3456789]\d{9}$/,
|
||||
message: "手机号格式不正确",
|
||||
@ -253,7 +253,7 @@ const data = reactive({
|
||||
},
|
||||
],
|
||||
email: [
|
||||
{required: true, message: "请输入邮箱", trigger: "blur"},
|
||||
{ required: true, message: "请输入邮箱", trigger: "blur" },
|
||||
{
|
||||
pattern: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
|
||||
message: "邮箱格式不正确",
|
||||
@ -358,7 +358,7 @@ const data = reactive({
|
||||
],
|
||||
},
|
||||
});
|
||||
const {rules} = toRefs(data);
|
||||
const { rules } = toRefs(data);
|
||||
|
||||
const formRef = ref();
|
||||
const cityFormRef = ref();
|
||||
@ -383,11 +383,11 @@ const validateForm = async () => {
|
||||
if (isAdd.value) {
|
||||
const directionsFormValid = await directionsFormRef.value.validateForm();
|
||||
return (
|
||||
formValid &&
|
||||
cityFormValid &&
|
||||
fieldFormValid &&
|
||||
keywordsFormValid &&
|
||||
directionsFormValid
|
||||
formValid &&
|
||||
cityFormValid &&
|
||||
fieldFormValid &&
|
||||
keywordsFormValid &&
|
||||
directionsFormValid
|
||||
);
|
||||
} else {
|
||||
return formValid && cityFormValid && fieldFormValid && keywordsFormValid;
|
||||
|
@ -18,7 +18,7 @@
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row v-if="isAdd">
|
||||
<el-row v-if="isAdd && false">
|
||||
<el-col :span="24">
|
||||
<el-form-item :label="t('admin.form.organizationCode')" prop="code">
|
||||
<el-row justify="space-between" type="flex">
|
||||
@ -52,8 +52,8 @@
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="keywords"
|
||||
placeholder="应用场景关键词+技术产品关键词"
|
||||
title="关键词"
|
||||
:placeholder="t('admin.form.inputKeywords')"
|
||||
:title="t('admin.form.keywords')"
|
||||
/>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
@ -89,12 +89,92 @@
|
||||
v-model="modelValue"
|
||||
:labelWidth="labelWidth"
|
||||
fieldKey="researchs"
|
||||
placeholder="请输入研究方向"
|
||||
title="研究方向"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', { type: t('admin.form.researchDirection') })
|
||||
"
|
||||
:title="t('admin.form.researchDirection')"
|
||||
/>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="实验室简介" prop="introduction">
|
||||
<el-form-item
|
||||
:label="t('webSearch.technicalApplication')"
|
||||
prop="primaryTechnology"
|
||||
>
|
||||
<el-input
|
||||
v-model="modelValue.primaryTechnology"
|
||||
:autosize="{ minRows: 4 }"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', {
|
||||
type: t('webSearch.technicalApplication'),
|
||||
})
|
||||
"
|
||||
type="textarea"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
:label="t('webSearch.researchProject')"
|
||||
prop="researchProject"
|
||||
>
|
||||
<el-input
|
||||
v-model="modelValue.researchProject"
|
||||
:autosize="{ minRows: 4 }"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', {
|
||||
type: t('webSearch.researchProject'),
|
||||
})
|
||||
"
|
||||
type="textarea"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
:label="t('webSearch.representativeAchievements')"
|
||||
prop="achievement"
|
||||
>
|
||||
<el-input
|
||||
v-model="modelValue.achievement"
|
||||
:autosize="{ minRows: 4 }"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', {
|
||||
type: t('webSearch.representativeAchievements'),
|
||||
})
|
||||
"
|
||||
type="textarea"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item :label="t('webContact.phone')" prop="phone">
|
||||
<el-input
|
||||
v-model="modelValue.phone"
|
||||
:maxlength="11"
|
||||
oninput="value = value.replace(/\D+/, '')"
|
||||
:placeholder="
|
||||
t('admin.form.placeholder', { type: t('webContact.phone') })
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
<el-form-item
|
||||
:label="
|
||||
t('admin.form.introduction', {
|
||||
type: t('admin.common.lab'),
|
||||
})
|
||||
"
|
||||
prop="introduction"
|
||||
>
|
||||
<editor
|
||||
ref="introduceRef"
|
||||
v-model="modelValue.introduction"
|
||||
|
@ -3,8 +3,12 @@
|
||||
<el-card shadow="always" style="width: 55%; margin: 0 auto">
|
||||
<agent-form ref="agentFormRef" v-model="form" is-add />
|
||||
<div :style="{ marginLeft: labelWidth + 'px' }">
|
||||
<el-button @click="$router.go(-1)">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="$router.go(-1)">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
|
@ -8,8 +8,12 @@
|
||||
ref="enterpriseFormRef"
|
||||
/>
|
||||
<div :style="{ marginLeft: labelWidth + 'px' }">
|
||||
<el-button @click="$router.go(-1)">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="$router.go(-1)">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
@ -17,11 +21,11 @@
|
||||
<script setup>
|
||||
import { insertEnterprise } from "@/api/identity/index";
|
||||
import { ElMessage } from "element-plus";
|
||||
import {reactive, ref, toRefs} from "vue";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import EnterpriseForm from "../components/EnterpriseForm/index.vue";
|
||||
import {useI18n} from "vue-i18n";
|
||||
const {t} = useI18n();
|
||||
import { useI18n } from "vue-i18n";
|
||||
const { t } = useI18n();
|
||||
const router = useRouter();
|
||||
const labelWidth = 140;
|
||||
|
||||
|
@ -8,8 +8,12 @@
|
||||
ref="expertFormRef"
|
||||
/>
|
||||
<div :style="{ marginLeft: labelWidth + 'px' }">
|
||||
<el-button @click="$router.go(-1)">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="$router.go(-1)">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
|
@ -3,8 +3,12 @@
|
||||
<el-card shadow="always" style="width: 55%; margin: 0 auto">
|
||||
<laboratory-form ref="laboratoryFormRef" v-model="form" is-add />
|
||||
<div :style="{ marginLeft: labelWidth + 'px' }">
|
||||
<el-button @click="$router.go(-1)">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="$router.go(-1)">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
@ -15,7 +19,9 @@ import LaboratoryForm from "@/views/components/LaboratoryForm";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { useRouter } from "vue-router";
|
||||
import { useI18n } from "vue-i18n";
|
||||
|
||||
const { t } = useI18n();
|
||||
const props = defineProps({
|
||||
labelWidth: {
|
||||
type: Number,
|
||||
|
@ -3,8 +3,12 @@
|
||||
<el-card shadow="always" style="width: 55%; margin: 0 auto">
|
||||
<research-form ref="researchFormRef" v-model="form" is-add />
|
||||
<div :style="{ marginLeft: labelWidth + 'px' }">
|
||||
<el-button @click="router.push('/identity/index')">{{ t("admin.common.cancel") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="router.push('/identity/index')">{{
|
||||
t("admin.common.cancel")
|
||||
}}</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
|
@ -306,7 +306,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -222,7 +222,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -167,7 +167,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系电话" prop="phone">
|
||||
<el-form-item :label="t('webContact.phone')" prop="phone">
|
||||
<el-input
|
||||
v-model="form.phone"
|
||||
placeholder="请输入联系电话"
|
||||
@ -200,7 +200,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -229,7 +229,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -226,7 +226,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -370,7 +370,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -215,7 +215,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -187,7 +187,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -281,7 +281,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -342,7 +344,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitDataScope">确 定</el-button>
|
||||
<el-button type="primary" @click="submitDataScope">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancelDataScope">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -86,7 +86,9 @@
|
||||
</el-row>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="handleSelectUser">确 定</el-button>
|
||||
<el-button type="primary" @click="handleSelectUser">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="visible = false">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -59,8 +59,12 @@
|
||||
|
||||
<el-form label-width="100px">
|
||||
<div style="text-align: center; margin-left: -120px; margin-top: 30px">
|
||||
<el-button type="primary" @click="submitForm()">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="close()">{{ t("identity.entrance.back") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm()">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
<el-button @click="close()">{{
|
||||
t("admin.identity.entrance.back")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
|
@ -428,7 +428,9 @@
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
@ -475,7 +477,9 @@
|
||||
</el-upload>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="submitFileForm">确 定</el-button>
|
||||
<el-button type="primary" @click="submitFileForm">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="upload.open = false">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -1,67 +1,69 @@
|
||||
<template>
|
||||
<div class="user-info-head" @click="editCropper()">
|
||||
<img :src="options.img" title="点击上传头像" class="img-circle img-lg" />
|
||||
<div>
|
||||
<div class="user-info-head" @click="editCropper()">
|
||||
<img :src="options.img" title="点击上传头像" class="img-circle img-lg" />
|
||||
</div>
|
||||
<el-dialog
|
||||
:title="title"
|
||||
v-model="open"
|
||||
width="800px"
|
||||
append-to-body
|
||||
@opened="modalOpened"
|
||||
@close="closeDialog"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :xs="24" :md="12" :style="{ height: '350px' }">
|
||||
<vue-cropper
|
||||
ref="cropper"
|
||||
:img="options.img"
|
||||
:info="true"
|
||||
:autoCrop="options.autoCrop"
|
||||
:autoCropWidth="options.autoCropWidth"
|
||||
:autoCropHeight="options.autoCropHeight"
|
||||
:fixedBox="options.fixedBox"
|
||||
@realTime="realTime"
|
||||
v-if="visible"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :xs="24" :md="12" :style="{ height: '350px' }">
|
||||
<div class="avatar-upload-preview">
|
||||
<img :src="options.previews.url" :style="options.previews.img" />
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<br />
|
||||
<el-row>
|
||||
<el-col :lg="2" :md="2">
|
||||
<el-upload
|
||||
action="#"
|
||||
:http-request="requestUpload"
|
||||
:show-file-list="false"
|
||||
:before-upload="beforeUpload"
|
||||
>
|
||||
<el-button>
|
||||
选择
|
||||
<el-icon class="el-icon--right"><Upload /></el-icon>
|
||||
</el-button>
|
||||
</el-upload>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 2 }" :md="2">
|
||||
<el-button icon="Plus" @click="changeScale(1)"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 1 }" :md="2">
|
||||
<el-button icon="Minus" @click="changeScale(-1)"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 1 }" :md="2">
|
||||
<el-button icon="RefreshLeft" @click="rotateLeft()"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 1 }" :md="2">
|
||||
<el-button icon="RefreshRight" @click="rotateRight()"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 2, offset: 6 }" :md="2">
|
||||
<el-button type="primary" @click="uploadImg()">提 交</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-dialog>
|
||||
</div>
|
||||
<el-dialog
|
||||
:title="title"
|
||||
v-model="open"
|
||||
width="800px"
|
||||
append-to-body
|
||||
@opened="modalOpened"
|
||||
@close="closeDialog"
|
||||
>
|
||||
<el-row>
|
||||
<el-col :xs="24" :md="12" :style="{ height: '350px' }">
|
||||
<vue-cropper
|
||||
ref="cropper"
|
||||
:img="options.img"
|
||||
:info="true"
|
||||
:autoCrop="options.autoCrop"
|
||||
:autoCropWidth="options.autoCropWidth"
|
||||
:autoCropHeight="options.autoCropHeight"
|
||||
:fixedBox="options.fixedBox"
|
||||
@realTime="realTime"
|
||||
v-if="visible"
|
||||
/>
|
||||
</el-col>
|
||||
<el-col :xs="24" :md="12" :style="{ height: '350px' }">
|
||||
<div class="avatar-upload-preview">
|
||||
<img :src="options.previews.url" :style="options.previews.img" />
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<br />
|
||||
<el-row>
|
||||
<el-col :lg="2" :md="2">
|
||||
<el-upload
|
||||
action="#"
|
||||
:http-request="requestUpload"
|
||||
:show-file-list="false"
|
||||
:before-upload="beforeUpload"
|
||||
>
|
||||
<el-button>
|
||||
选择
|
||||
<el-icon class="el-icon--right"><Upload /></el-icon>
|
||||
</el-button>
|
||||
</el-upload>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 2 }" :md="2">
|
||||
<el-button icon="Plus" @click="changeScale(1)"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 1 }" :md="2">
|
||||
<el-button icon="Minus" @click="changeScale(-1)"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 1 }" :md="2">
|
||||
<el-button icon="RefreshLeft" @click="rotateLeft()"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 1, offset: 1 }" :md="2">
|
||||
<el-button icon="RefreshRight" @click="rotateRight()"></el-button>
|
||||
</el-col>
|
||||
<el-col :lg="{ span: 2, offset: 6 }" :md="2">
|
||||
<el-button type="primary" @click="uploadImg()">提 交</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
@ -147,6 +149,10 @@ function closeDialog() {
|
||||
options.img = userStore.avatar;
|
||||
options.visible = false;
|
||||
}
|
||||
|
||||
defineExpose({
|
||||
editCropper,
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
@ -147,8 +147,12 @@
|
||||
</el-tabs>
|
||||
<el-form label-width="100px">
|
||||
<div style="text-align: center; margin-left: -100px; margin-top: 10px">
|
||||
<el-button type="primary" @click="submitForm()">{{ t("admin.common.submit") }}</el-button>
|
||||
<el-button @click="close()">{{ t("identity.entrance.back") }}</el-button>
|
||||
<el-button type="primary" @click="submitForm()">{{
|
||||
t("admin.common.submit")
|
||||
}}</el-button>
|
||||
<el-button @click="close()">{{
|
||||
t("admin.identity.entrance.back")
|
||||
}}</el-button>
|
||||
</div>
|
||||
</el-form>
|
||||
</el-card>
|
||||
|
@ -63,7 +63,9 @@
|
||||
</el-row>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary" @click="handleImportTable">确 定</el-button>
|
||||
<el-button type="primary" @click="handleImportTable">{{
|
||||
t("admin.common.confirm")
|
||||
}}</el-button>
|
||||
<el-button @click="visible = false">取 消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
@ -55,7 +55,14 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { defineComponent, getCurrentInstance, onMounted, reactive } from "vue";
|
||||
import {
|
||||
defineComponent,
|
||||
getCurrentInstance,
|
||||
onMounted,
|
||||
reactive,
|
||||
ref,
|
||||
shallowRef,
|
||||
} from "vue";
|
||||
import {
|
||||
countExpertByArea,
|
||||
countExpertByCity,
|
||||
@ -243,7 +250,7 @@ onMounted(() => {
|
||||
};
|
||||
state.district = new AMap.DistrictSearch(state.opts); //注意:需要使用插件同步下发功能才能这样直接使用
|
||||
state.district.search("中国", (status, result) => {
|
||||
if (status == "complete") {
|
||||
if (status === "complete") {
|
||||
getData(result.districtList[0], "", 100000);
|
||||
}
|
||||
});
|
||||
@ -254,7 +261,7 @@ function goBack() {
|
||||
state.isShowGoBack = false;
|
||||
loading.value = true;
|
||||
state.district.search("中国", async (status, result) => {
|
||||
if (status == "complete") {
|
||||
if (status === "complete") {
|
||||
await getData(result.districtList[0], "", 100000);
|
||||
// snapTree.value = formatData(treeData.count);
|
||||
snapTree.value = treeData.count;
|
||||
|
@ -63,6 +63,7 @@ import {
|
||||
countDemandByProvince,
|
||||
countDemandByCity,
|
||||
countDemandByArea,
|
||||
banner,
|
||||
} from "@/api/website/home/index";
|
||||
import RegionPagine from "./RegionPagine.vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
@ -174,6 +175,7 @@ const state = reactive({
|
||||
loading: false,
|
||||
isShowGoBack: false,
|
||||
nameType: "",
|
||||
banner: "",
|
||||
// cityName: "中国",
|
||||
cityName: "china",
|
||||
areaCode: 10000,
|
||||
@ -460,6 +462,7 @@ function loadMap(mapName, data) {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
background: linear-gradient(0deg, #010101, #041744);
|
||||
|
||||
.tit {
|
||||
position: absolute;
|
||||
@ -467,16 +470,16 @@ function loadMap(mapName, data) {
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
font-size: 36px;
|
||||
font-family: Source Han Sans CN;
|
||||
font-family: Source Han Sans CN, sans-serif;
|
||||
font-weight: 300;
|
||||
color: #333333;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.map {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
// background-image: url(./img/lightEffect.png);
|
||||
background-image: url(./img/lightEffect.png);
|
||||
background-size: 644px 272px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center top;
|
||||
@ -523,21 +526,21 @@ function loadMap(mapName, data) {
|
||||
min-width: 200px;
|
||||
max-height: 256px;
|
||||
// overflow: hidden;
|
||||
border: 1px solid #dcdcdc;
|
||||
color: #666666;
|
||||
border: 1px solid #0054ff;
|
||||
color: rgba(161, 192, 255, 1);
|
||||
|
||||
& > div {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.head {
|
||||
border-bottom: 1px solid #dcdcdc;
|
||||
color: #333333;
|
||||
border-bottom: 1px solid #0054ff;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.a {
|
||||
flex: 1;
|
||||
border-right: 1px solid #dcdcdc;
|
||||
border-right: 1px solid #0054ff;
|
||||
text-align: center;
|
||||
line-height: 42px;
|
||||
overflow: hidden;
|
||||
|
Reference in New Issue
Block a user