fix
This commit is contained in:
374
index.html
374
index.html
@ -2,218 +2,224 @@
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
||||
<link rel="icon" href="/favicon.ico">
|
||||
<script type="text/javascript" src='//webapi.amap.com/maps?v=1.4.11&key=35a871e5905ecfd749bd998448b9cd03'></script>
|
||||
<script type="text/javascript"
|
||||
src="https://webapi.amap.com/maps?v=1.4.11&key=35a871e5905ecfd749bd998448b9cd03&plugin=AMap.DistrictSearch"></script>
|
||||
<script src="//webapi.amap.com/ui/1.0/main.js?v=1.0.11"></script>
|
||||
<title>中科云</title>
|
||||
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
|
||||
<style>
|
||||
html,
|
||||
body,
|
||||
#app {
|
||||
height: 100%;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
<meta charset="utf-8">
|
||||
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
|
||||
<meta content="webkit" name="renderer">
|
||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
|
||||
<link href="/favicon.ico" rel="icon">
|
||||
<script type="text/javascript">
|
||||
window._AMapSecurityConfig = {
|
||||
securityJsCode: '7d1b758db4876389af608259c4c99832',
|
||||
}
|
||||
</script>
|
||||
<script src='//webapi.amap.com/maps?v=1.4.15&key=bfc7224388e835679ffe74cfbd28c8d6' type="text/javascript"></script>
|
||||
<script src="https://webapi.amap.com/maps?v=1.4.11&key=bfc7224388e835679ffe74cfbd28c8d6&plugin=AMap.DistrictSearch"
|
||||
type="text/javascript"></script>
|
||||
<script src="//webapi.amap.com/ui/1.0/main.js?v=1.0.11"></script>
|
||||
<title>中科云</title>
|
||||
<!--[if lt IE 11]>
|
||||
<script>window.location.href = '/html/ie.html';</script><![endif]-->
|
||||
<style>
|
||||
html,
|
||||
body,
|
||||
#app {
|
||||
height: 100%;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.chromeframe {
|
||||
margin: 0.2em 0;
|
||||
background: #ccc;
|
||||
color: #000;
|
||||
padding: 0.2em 0;
|
||||
}
|
||||
.chromeframe {
|
||||
margin: 0.2em 0;
|
||||
background: #ccc;
|
||||
color: #000;
|
||||
padding: 0.2em 0;
|
||||
}
|
||||
|
||||
#loader-wrapper {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 999999;
|
||||
}
|
||||
#loader-wrapper {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 999999;
|
||||
}
|
||||
|
||||
#loader {
|
||||
display: block;
|
||||
position: relative;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
margin: -75px 0 0 -75px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-webkit-animation: spin 2s linear infinite;
|
||||
-ms-animation: spin 2s linear infinite;
|
||||
-moz-animation: spin 2s linear infinite;
|
||||
-o-animation: spin 2s linear infinite;
|
||||
animation: spin 2s linear infinite;
|
||||
z-index: 1001;
|
||||
}
|
||||
#loader {
|
||||
display: block;
|
||||
position: relative;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
margin: -75px 0 0 -75px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-webkit-animation: spin 2s linear infinite;
|
||||
-ms-animation: spin 2s linear infinite;
|
||||
-moz-animation: spin 2s linear infinite;
|
||||
-o-animation: spin 2s linear infinite;
|
||||
animation: spin 2s linear infinite;
|
||||
z-index: 1001;
|
||||
}
|
||||
|
||||
#loader:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
right: 5px;
|
||||
bottom: 5px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-webkit-animation: spin 3s linear infinite;
|
||||
-moz-animation: spin 3s linear infinite;
|
||||
-o-animation: spin 3s linear infinite;
|
||||
-ms-animation: spin 3s linear infinite;
|
||||
animation: spin 3s linear infinite;
|
||||
}
|
||||
#loader:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
right: 5px;
|
||||
bottom: 5px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-webkit-animation: spin 3s linear infinite;
|
||||
-moz-animation: spin 3s linear infinite;
|
||||
-o-animation: spin 3s linear infinite;
|
||||
-ms-animation: spin 3s linear infinite;
|
||||
animation: spin 3s linear infinite;
|
||||
}
|
||||
|
||||
#loader:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
left: 15px;
|
||||
right: 15px;
|
||||
bottom: 15px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-moz-animation: spin 1.5s linear infinite;
|
||||
-o-animation: spin 1.5s linear infinite;
|
||||
-ms-animation: spin 1.5s linear infinite;
|
||||
-webkit-animation: spin 1.5s linear infinite;
|
||||
animation: spin 1.5s linear infinite;
|
||||
}
|
||||
#loader:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
left: 15px;
|
||||
right: 15px;
|
||||
bottom: 15px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-moz-animation: spin 1.5s linear infinite;
|
||||
-o-animation: spin 1.5s linear infinite;
|
||||
-ms-animation: spin 1.5s linear infinite;
|
||||
-webkit-animation: spin 1.5s linear infinite;
|
||||
animation: spin 1.5s linear infinite;
|
||||
}
|
||||
|
||||
|
||||
@-webkit-keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-ms-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
@-webkit-keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-ms-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
-ms-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
-ms-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-ms-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-ms-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
-ms-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
-ms-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#loader-wrapper .loader-section {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: 51%;
|
||||
height: 100%;
|
||||
background: #7171C6;
|
||||
z-index: 1000;
|
||||
-webkit-transform: translateX(0);
|
||||
-ms-transform: translateX(0);
|
||||
transform: translateX(0);
|
||||
}
|
||||
#loader-wrapper .loader-section {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: 51%;
|
||||
height: 100%;
|
||||
background: #7171C6;
|
||||
z-index: 1000;
|
||||
-webkit-transform: translateX(0);
|
||||
-ms-transform: translateX(0);
|
||||
transform: translateX(0);
|
||||
}
|
||||
|
||||
#loader-wrapper .loader-section.section-left {
|
||||
left: 0;
|
||||
}
|
||||
#loader-wrapper .loader-section.section-left {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
#loader-wrapper .loader-section.section-right {
|
||||
right: 0;
|
||||
}
|
||||
#loader-wrapper .loader-section.section-right {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
|
||||
.loaded #loader-wrapper .loader-section.section-left {
|
||||
-webkit-transform: translateX(-100%);
|
||||
-ms-transform: translateX(-100%);
|
||||
transform: translateX(-100%);
|
||||
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
}
|
||||
.loaded #loader-wrapper .loader-section.section-left {
|
||||
-webkit-transform: translateX(-100%);
|
||||
-ms-transform: translateX(-100%);
|
||||
transform: translateX(-100%);
|
||||
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
}
|
||||
|
||||
.loaded #loader-wrapper .loader-section.section-right {
|
||||
-webkit-transform: translateX(100%);
|
||||
-ms-transform: translateX(100%);
|
||||
transform: translateX(100%);
|
||||
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
}
|
||||
.loaded #loader-wrapper .loader-section.section-right {
|
||||
-webkit-transform: translateX(100%);
|
||||
-ms-transform: translateX(100%);
|
||||
transform: translateX(100%);
|
||||
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
}
|
||||
|
||||
.loaded #loader {
|
||||
opacity: 0;
|
||||
-webkit-transition: all 0.3s ease-out;
|
||||
transition: all 0.3s ease-out;
|
||||
}
|
||||
.loaded #loader {
|
||||
opacity: 0;
|
||||
-webkit-transition: all 0.3s ease-out;
|
||||
transition: all 0.3s ease-out;
|
||||
}
|
||||
|
||||
.loaded #loader-wrapper {
|
||||
visibility: hidden;
|
||||
-webkit-transform: translateY(-100%);
|
||||
-ms-transform: translateY(-100%);
|
||||
transform: translateY(-100%);
|
||||
-webkit-transition: all 0.3s 1s ease-out;
|
||||
transition: all 0.3s 1s ease-out;
|
||||
}
|
||||
.loaded #loader-wrapper {
|
||||
visibility: hidden;
|
||||
-webkit-transform: translateY(-100%);
|
||||
-ms-transform: translateY(-100%);
|
||||
transform: translateY(-100%);
|
||||
-webkit-transition: all 0.3s 1s ease-out;
|
||||
transition: all 0.3s 1s ease-out;
|
||||
}
|
||||
|
||||
.no-js #loader-wrapper {
|
||||
display: none;
|
||||
}
|
||||
.no-js #loader-wrapper {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.no-js h1 {
|
||||
color: #222222;
|
||||
}
|
||||
.no-js h1 {
|
||||
color: #222222;
|
||||
}
|
||||
|
||||
#loader-wrapper .load_title {
|
||||
font-family: 'Open Sans';
|
||||
color: #FFF;
|
||||
font-size: 19px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
z-index: 9999999999999;
|
||||
position: absolute;
|
||||
top: 60%;
|
||||
opacity: 1;
|
||||
line-height: 30px;
|
||||
}
|
||||
#loader-wrapper .load_title {
|
||||
font-family: 'Open Sans';
|
||||
color: #FFF;
|
||||
font-size: 19px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
z-index: 9999999999999;
|
||||
position: absolute;
|
||||
top: 60%;
|
||||
opacity: 1;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
#loader-wrapper .load_title span {
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
font-size: 13px;
|
||||
color: #FFF;
|
||||
opacity: 0.5;
|
||||
}
|
||||
</style>
|
||||
#loader-wrapper .load_title span {
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
font-size: 13px;
|
||||
color: #FFF;
|
||||
opacity: 0.5;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app">
|
||||
<div id="app">
|
||||
<div id="loader-wrapper">
|
||||
<div id="loader"></div>
|
||||
<div class="loader-section section-left"></div>
|
||||
<div class="loader-section section-right"></div>
|
||||
<div class="load_title">正在加载系统资源,请耐心等待</div>
|
||||
<div id="loader"></div>
|
||||
<div class="loader-section section-left"></div>
|
||||
<div class="loader-section section-right"></div>
|
||||
<div class="load_title">正在加载系统资源,请耐心等待</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="module" src="/src/main.js"></script>
|
||||
</div>
|
||||
<script src="/src/main.js" type="module"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
@ -188,8 +188,8 @@ function listToString(list, separator) {
|
||||
separator = separator || ",";
|
||||
for (let i in list) {
|
||||
if (undefined !== list[i].url && list[i].url.indexOf("blob:") !== 0) {
|
||||
strs += list[i].url.replace(baseUrl, "") + separator;
|
||||
// strs += list[i].url + separator;
|
||||
// strs += list[i].url.replace(baseUrl, "") + separator;
|
||||
strs += list[i].url + separator;
|
||||
}
|
||||
}
|
||||
return strs != "" ? strs.substr(0, strs.length - 1) : "";
|
||||
|
@ -212,8 +212,8 @@ function handlePage() {
|
||||
|
||||
function handlePath(path) {
|
||||
pagePath.value = path;
|
||||
// router.push(path);
|
||||
window.open(path, "_blank");
|
||||
router.push(path);
|
||||
// window.open(path, "_blank");
|
||||
}
|
||||
function logout() {
|
||||
ElMessageBox.confirm("确定注销并退出系统吗?", "提示", {
|
||||
|
@ -3,26 +3,26 @@
|
||||
* @type {[{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string}]}
|
||||
*/
|
||||
export const serviceDemandStatusDict = [
|
||||
{
|
||||
value: "0",
|
||||
label: "待受理",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "已受理",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "已驳回",
|
||||
elTagType: "danger",
|
||||
},
|
||||
{
|
||||
value: "4",
|
||||
label: "已结束",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "0",
|
||||
label: "待受理",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "已受理",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "已驳回",
|
||||
elTagType: "danger",
|
||||
},
|
||||
{
|
||||
value: "4",
|
||||
label: "已结束",
|
||||
elTagType: "warning",
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
@ -30,97 +30,112 @@ export const serviceDemandStatusDict = [
|
||||
* @type {[{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string},{label: string, value: string, elTagType: string}]}
|
||||
*/
|
||||
export const technologyDemandStatusDict = [
|
||||
{
|
||||
value: "0",
|
||||
label: "待受理",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "已发布",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "已驳回",
|
||||
elTagType: "danger",
|
||||
},
|
||||
{
|
||||
value: "3",
|
||||
label: "草稿箱",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "4",
|
||||
label: "已结束",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "0",
|
||||
label: "待受理",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "已发布",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "已驳回",
|
||||
elTagType: "danger",
|
||||
},
|
||||
{
|
||||
value: "3",
|
||||
label: "草稿箱",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "4",
|
||||
label: "已结束",
|
||||
elTagType: "warning",
|
||||
},
|
||||
];
|
||||
|
||||
// 1->专利|2->成果|3->服务需求|4->专家|5->科研项目|6->论文
|
||||
export const seeLogTypeDict = [
|
||||
{
|
||||
value: "1",
|
||||
label: "专利",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "成果",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "专利",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "成果",
|
||||
elTagType: "success",
|
||||
},
|
||||
|
||||
{
|
||||
value: "3",
|
||||
label: "服务需求",
|
||||
elTagType: "danger",
|
||||
},
|
||||
{
|
||||
value: "4",
|
||||
label: "专家",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "5",
|
||||
label: "科研项目",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "6",
|
||||
label: "论文",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "3",
|
||||
label: "服务需求",
|
||||
elTagType: "danger",
|
||||
},
|
||||
{
|
||||
value: "4",
|
||||
label: "专家",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "5",
|
||||
label: "科研项目",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "6",
|
||||
label: "论文",
|
||||
elTagType: "warning",
|
||||
},
|
||||
];
|
||||
|
||||
// 订单类型(1创新币充值2活动报名)
|
||||
export const orderTypeDict = [
|
||||
{
|
||||
value: "1",
|
||||
label: "创新币充值",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "活动报名",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "创新币充值",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "活动报名",
|
||||
elTagType: "success",
|
||||
},
|
||||
];
|
||||
|
||||
// 发票申请状态(0->未申请1->已申请2->已处理)
|
||||
export const invoiceStatusDict = [
|
||||
{
|
||||
value: "0",
|
||||
label: "未申请",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "已申请",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "已处理",
|
||||
elTagType: "success",
|
||||
},
|
||||
{
|
||||
value: "0",
|
||||
label: "未申请",
|
||||
elTagType: "warning",
|
||||
},
|
||||
{
|
||||
value: "1",
|
||||
label: "已申请",
|
||||
elTagType: "primary",
|
||||
},
|
||||
{
|
||||
value: "2",
|
||||
label: "已处理",
|
||||
elTagType: "success",
|
||||
},
|
||||
];
|
||||
|
||||
// 课题角色(1:承担单位,2:参与单位)
|
||||
export const subjectRoleDict = [
|
||||
{
|
||||
value: "1",
|
||||
label: "承担单位",
|
||||
elTagType: "primary",
|
||||
}
|
||||
,
|
||||
{
|
||||
value: "2",
|
||||
label: "参与单位",
|
||||
elTagType: "success",
|
||||
}
|
||||
];
|
@ -9,7 +9,7 @@ export function addViewHistory(type, itemId, itemName) {
|
||||
}
|
||||
const enterpriseId = enterprise.id;
|
||||
const enterpriseName = enterprise.name;
|
||||
const nickname = enterprise.userName;
|
||||
const nickname = enterprise.username;
|
||||
const phone = enterprise.phone;
|
||||
addViewRecord({
|
||||
type: type,
|
||||
|
@ -1,5 +1,5 @@
|
||||
<script setup>
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import {reactive, ref, toRefs} from "vue";
|
||||
|
||||
const data = reactive({
|
||||
queryParams: {
|
||||
@ -7,7 +7,7 @@ const data = reactive({
|
||||
pageSize: 10,
|
||||
},
|
||||
});
|
||||
const { queryParams } = toRefs(data);
|
||||
const {queryParams} = toRefs(data);
|
||||
const tableData = ref([]);
|
||||
const queryRef = ref(null);
|
||||
|
||||
@ -15,10 +15,11 @@ const queryRef = ref(null);
|
||||
* 删除指定行
|
||||
* @param row
|
||||
*/
|
||||
const deleteRecord = (row) => {};
|
||||
const deleteRecord = (row) => {
|
||||
};
|
||||
|
||||
// 重置查询条件 resetQuery
|
||||
export const resetQuery = () => {
|
||||
const resetQuery = () => {
|
||||
queryRef.value.resetFields();
|
||||
handleQuery();
|
||||
};
|
||||
@ -33,12 +34,12 @@ const handleQuery = () => {
|
||||
<!-- 时间段查询-->
|
||||
<el-form-item label="时间段">
|
||||
<el-date-picker
|
||||
v-model="queryParams.timeRange"
|
||||
end-placeholder="结束日期"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
type="datetimerange"
|
||||
value-format="YYYY-MM-dd"
|
||||
v-model="queryParams.timeRange"
|
||||
end-placeholder="结束日期"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
type="datetimerange"
|
||||
value-format="YYYY-MM-dd"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
@ -49,8 +50,8 @@ const handleQuery = () => {
|
||||
|
||||
<!-- el-radio-group 状态切换, 已审批和待审批 -->
|
||||
<el-radio-group v-model="queryParams.status" size="small" style="width: 100%">
|
||||
<el-radio label="已审批" value="1" />
|
||||
<el-radio label="待审批" value="2" />
|
||||
<el-radio label="已审批" value="1"/>
|
||||
<el-radio label="待审批" value="2"/>
|
||||
</el-radio-group>
|
||||
<!-- 用h2 展示提现金额,加粗字体-->
|
||||
<h2 style="font-weight: bold">提现金额 : {{ 312312 }}¥</h2>
|
||||
@ -58,22 +59,22 @@ const handleQuery = () => {
|
||||
<!--提现记录表格 element-plus -->
|
||||
<el-table :data="tableData" class="withdraw-table">
|
||||
<el-table-column
|
||||
label="提现金额"
|
||||
prop="amount"
|
||||
width="150"
|
||||
label="提现金额"
|
||||
prop="amount"
|
||||
width="150"
|
||||
></el-table-column>
|
||||
<el-table-column label="提现类型" prop="type" width="150"></el-table-column>
|
||||
<el-table-column
|
||||
label="提现状态"
|
||||
prop="status"
|
||||
width="150"
|
||||
label="提现状态"
|
||||
prop="status"
|
||||
width="150"
|
||||
></el-table-column>
|
||||
<el-table-column label="提现时间" prop="time" width="150"></el-table-column>
|
||||
<el-table-column label="操作" prop="action" width="150">
|
||||
<template #default="{ row }">
|
||||
<!--删除-->
|
||||
<el-button size="small" type="text" @click="deleteRecord(row)"
|
||||
>删除
|
||||
>删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
@ -107,7 +107,7 @@ import {
|
||||
updateTechnologyDemand,
|
||||
} from "@/api/admin/enterprise/demand";
|
||||
import { onMounted, reactive, ref, toRefs } from "vue";
|
||||
import { updateCount } from "../../../../api/admin/count";
|
||||
import { updateCount } from "@/api/admin/count";
|
||||
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
|
@ -31,9 +31,9 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button icon="plus" size="small" type="primary">新增</el-button>
|
||||
</el-col>
|
||||
<!-- <el-col :span="1.5">-->
|
||||
<!-- <el-button icon="plus" size="small" type="primary">新增</el-button>-->
|
||||
<!-- </el-col>-->
|
||||
<right-toolbar
|
||||
v-model:showSearch="showSearch"
|
||||
@queryTable="getList"
|
||||
|
@ -71,7 +71,7 @@
|
||||
icon="view"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleBrowseUnitInfo(row.id)"
|
||||
@click="handleBrowseUnitInfo(row)"
|
||||
>浏览单位信息
|
||||
</el-button>
|
||||
</template>
|
||||
|
@ -1,25 +1,32 @@
|
||||
<script setup>
|
||||
import Pagination from "@/components/Pagination/index.vue";
|
||||
import { customerBrowseList } from "@/api/admin/research/footprint";
|
||||
import { reactive, ref, toRefs } from "vue";
|
||||
import { seeLogTypeDict } from "@/constant/dict";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { seeLogList } from "@/api/admin/laboratory/paper";
|
||||
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
const data = reactive({
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
browseTimeRange: [],
|
||||
id: null,
|
||||
},
|
||||
});
|
||||
const { queryParams } = toRefs(data);
|
||||
|
||||
if (route.query.id) {
|
||||
queryParams.value.id = route.query.id;
|
||||
} else {
|
||||
router.push({ path: "/admin/research/paper" });
|
||||
}
|
||||
const queryRef = ref();
|
||||
const tableData = ref([]);
|
||||
const loading = ref(false);
|
||||
const total = ref(0);
|
||||
const getList = async () => {
|
||||
loading.value = true;
|
||||
const resp = await customerBrowseList(queryParams.value);
|
||||
const resp = await seeLogList(queryParams.value);
|
||||
tableData.value = resp.rows;
|
||||
total.value = resp.total;
|
||||
loading.value = false;
|
||||
@ -53,27 +60,15 @@ getList();
|
||||
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="queryRef" class="mb8" inline>
|
||||
<el-form ref="queryRef" class="mb8" :model="queryParams" inline>
|
||||
<!-- 企业名称-->
|
||||
<el-form-item label="企业名称" prop="enterpriseName">
|
||||
<el-form-item label="企业名称" prop="name">
|
||||
<el-input
|
||||
v-model="queryParams.enterpriseName"
|
||||
v-model="queryParams.name"
|
||||
placeholder="请输入企业名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<!-- 浏览时间范围-->
|
||||
<el-form-item label="浏览时间" prop="browseTime">
|
||||
<el-date-picker
|
||||
v-model="queryParams.browseTimeRange"
|
||||
end-placeholder="结束日期"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
type="datetimerange"
|
||||
unlink-panels
|
||||
value-format="YYYY-MM-dd"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="handleQuery">查询</el-button>
|
||||
<el-button @click="resetQuery">重置</el-button>
|
||||
@ -82,7 +77,6 @@ getList();
|
||||
<!-- 客户浏览数据列表-->
|
||||
<el-table :data="tableData">
|
||||
<!--多选-->
|
||||
<el-table-column type="selection" width="55"></el-table-column>
|
||||
<el-table-column label="企业名称" prop="enterpriseName"></el-table-column>
|
||||
<el-table-column label="浏览类别" prop="type">
|
||||
<template #default="{ row }">
|
||||
@ -94,17 +88,8 @@ getList();
|
||||
<el-table-column label="名称" prop="typeName"></el-table-column>
|
||||
<el-table-column label="联系人" prop="nickname"></el-table-column>
|
||||
<el-table-column label="手机" prop="phone"></el-table-column>
|
||||
<el-table-column label="浏览时长" prop="browseTime"></el-table-column>
|
||||
<el-table-column label="浏览次数" prop="seeCount"></el-table-column>
|
||||
<el-table-column label="浏览时间" prop="updateTime"></el-table-column>
|
||||
<!-- 操作-->
|
||||
<el-table-column label="操作" width="200">
|
||||
<template #default="{ row }">
|
||||
<el-button size="small" type="text" @click="handleDelete(row)"
|
||||
>删除</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
|
@ -1,32 +1,32 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form
|
||||
v-show="showSearch"
|
||||
ref="queryRef"
|
||||
:inline="true"
|
||||
:model="queryParams"
|
||||
@submit.prevent
|
||||
v-show="showSearch"
|
||||
ref="queryRef"
|
||||
:inline="true"
|
||||
:model="queryParams"
|
||||
@submit.prevent
|
||||
>
|
||||
<el-form-item label="专利名称" prop="title">
|
||||
<el-form-item label="专利名称" prop="patentName">
|
||||
<el-input
|
||||
v-model="queryParams.title"
|
||||
clearable
|
||||
placeholder="请输入专利名称"
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter="handleQuery"
|
||||
v-model="queryParams.patentName"
|
||||
clearable
|
||||
placeholder="请输入专利名称"
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button
|
||||
icon="Search"
|
||||
size="small"
|
||||
type="primary"
|
||||
@click="handleQuery"
|
||||
>搜索
|
||||
icon="Search"
|
||||
size="small"
|
||||
type="primary"
|
||||
@click="handleQuery"
|
||||
>搜索
|
||||
</el-button>
|
||||
<el-button icon="Refresh" size="small" @click="resetQuery"
|
||||
>重置
|
||||
>重置
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@ -52,35 +52,35 @@
|
||||
<!-- </router-link>-->
|
||||
<!-- </el-col>-->
|
||||
<right-toolbar
|
||||
v-model:showSearch="showSearch"
|
||||
@queryTable="getList"
|
||||
v-model:showSearch="showSearch"
|
||||
@queryTable="getList"
|
||||
></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<!-- 表格数据 -->
|
||||
<el-table v-loading="loading" :data="dataList">
|
||||
<el-table-column label="数据编号" prop="id" />
|
||||
<el-table-column label="数据编号" prop="id"/>
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="专利名称"
|
||||
prop="title"
|
||||
:show-overflow-tooltip="true"
|
||||
label="专利名称"
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
label="申请号"
|
||||
prop="applyCode"
|
||||
:show-overflow-tooltip="true"
|
||||
label="申请号"
|
||||
prop="applyCode"
|
||||
/>
|
||||
<el-table-column label="发明人" prop="inventor" />
|
||||
<el-table-column label="申请(专利权)人" prop="applyName" />
|
||||
<el-table-column label="发明人" prop="inventor"/>
|
||||
<el-table-column label="申请(专利权)人" prop="applyName"/>
|
||||
<el-table-column align="center" label="申请日期" prop="applyAt">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
align="center"
|
||||
class-name="small-padding fixed-width"
|
||||
label="操作"
|
||||
align="center"
|
||||
class-name="small-padding fixed-width"
|
||||
label="操作"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<!-- <el-button-->
|
||||
@ -92,22 +92,22 @@
|
||||
<!-- </el-button-->
|
||||
<!-- >-->
|
||||
<el-button
|
||||
icon="Delete"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleDelete(row.id)"
|
||||
>删除
|
||||
icon="Delete"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleDelete(row.id)"
|
||||
>删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
v-model:limit="queryParams.pageSize"
|
||||
v-model:page="queryParams.pageNum"
|
||||
:total="total"
|
||||
@pagination="getList"
|
||||
v-show="total > 0"
|
||||
v-model:limit="queryParams.pageSize"
|
||||
v-model:page="queryParams.pageNum"
|
||||
:total="total"
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
<!-- <!– 添加或修改数据配置对话框 –>-->
|
||||
@ -229,13 +229,13 @@ import {
|
||||
labPatentList,
|
||||
} from "@/api/admin/laboratory/patent";
|
||||
import dayjs from "dayjs";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { useRouter } from "vue-router";
|
||||
import { getCurrentInstance, reactive, ref, toRefs } from "vue";
|
||||
import {ElMessage, ElMessageBox} from "element-plus";
|
||||
import {useRouter} from "vue-router";
|
||||
import {getCurrentInstance, reactive, ref, toRefs} from "vue";
|
||||
|
||||
const router = useRouter();
|
||||
|
||||
const { proxy } = getCurrentInstance();
|
||||
const {proxy} = getCurrentInstance();
|
||||
|
||||
const dataList = ref([]);
|
||||
const open = ref(false);
|
||||
@ -248,7 +248,7 @@ const data = reactive({
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
inventor: undefined,
|
||||
patentName: undefined
|
||||
},
|
||||
// form: {},
|
||||
// rules: {
|
||||
@ -280,7 +280,7 @@ const data = reactive({
|
||||
// },
|
||||
});
|
||||
|
||||
const { queryParams } = toRefs(data);
|
||||
const {queryParams} = toRefs(data);
|
||||
|
||||
const queryRef = ref();
|
||||
// const patentRef = ref();
|
||||
@ -290,14 +290,14 @@ const queryRef = ref();
|
||||
const getList = async () => {
|
||||
loading.value = true;
|
||||
labPatentList(queryParams.value)
|
||||
.then((resp) => {
|
||||
dataList.value = resp.rows;
|
||||
total.value = resp.total;
|
||||
loading.value = false;
|
||||
})
|
||||
.catch(() => {
|
||||
loading.value = false;
|
||||
});
|
||||
.then((resp) => {
|
||||
dataList.value = resp.rows;
|
||||
total.value = resp.total;
|
||||
loading.value = false;
|
||||
})
|
||||
.catch(() => {
|
||||
loading.value = false;
|
||||
});
|
||||
};
|
||||
|
||||
/** 搜索按钮操作 */
|
||||
@ -315,16 +315,16 @@ function resetQuery() {
|
||||
/** 删除按钮操作 */
|
||||
function handleDelete(id) {
|
||||
ElMessageBox.confirm('是否确认删除数据编号为"' + id + '"的专利项?')
|
||||
.then(function () {
|
||||
return deleteLabPatentByIds(id);
|
||||
})
|
||||
.then(() => {
|
||||
getList();
|
||||
ElMessage.success("删除成功");
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
});
|
||||
.then(function () {
|
||||
return deleteLabPatentByIds(id);
|
||||
})
|
||||
.then(() => {
|
||||
getList();
|
||||
ElMessage.success("删除成功");
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
});
|
||||
}
|
||||
|
||||
/** 重置新增的表单以及其他数据 */
|
||||
|
@ -7,9 +7,9 @@
|
||||
:model="queryParams"
|
||||
@submit.prevent
|
||||
>
|
||||
<el-form-item label="成果名称" prop="title">
|
||||
<el-form-item label="成果名称" prop="name">
|
||||
<el-input
|
||||
v-model="queryParams.title"
|
||||
v-model="queryParams.name"
|
||||
clearable
|
||||
placeholder="请输入专利名称"
|
||||
size="small"
|
||||
@ -46,9 +46,13 @@
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column :show-overflow-tooltip="true" label="类型" prop="kind" />
|
||||
<el-table-column label="所属专家" prop="inventor" />
|
||||
<el-table-column label="课题角色" prop="applyName" />
|
||||
<el-table-column label="课题负责人" prop="applyName" />
|
||||
<!-- <el-table-column label="所属专家" prop="inventor" />-->
|
||||
<el-table-column label="课题角色" >
|
||||
<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">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
@ -60,13 +64,13 @@
|
||||
label="操作"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<el-button
|
||||
icon="download"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleTakeOff(row.id)"
|
||||
>下架
|
||||
</el-button>
|
||||
<!-- <el-button-->
|
||||
<!-- icon="download"-->
|
||||
<!-- size="small"-->
|
||||
<!-- type="text"-->
|
||||
<!-- @click="handleTakeOff(row.id)"-->
|
||||
<!-- >下架-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
icon="Delete"
|
||||
size="small"
|
||||
@ -97,6 +101,7 @@ import {
|
||||
deleteTechnologyProject,
|
||||
technologyProjectList,
|
||||
} from "@/api/admin/laboratory/research-project";
|
||||
import {subjectRoleDict} from "../../../../../constant/dict";
|
||||
|
||||
const router = useRouter();
|
||||
|
||||
|
@ -53,27 +53,14 @@ getList();
|
||||
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form ref="queryRef" class="mb8" inline>
|
||||
<el-form ref="queryRef" class="mb8" :model="queryParams" inline>
|
||||
<!-- 企业名称-->
|
||||
<el-form-item label="企业名称" prop="enterpriseName">
|
||||
<el-form-item label="企业名称" prop="name">
|
||||
<el-input
|
||||
v-model="queryParams.enterpriseName"
|
||||
v-model="queryParams.name"
|
||||
placeholder="请输入企业名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<!-- 浏览时间范围-->
|
||||
<el-form-item label="浏览时间" prop="browseTime">
|
||||
<el-date-picker
|
||||
v-model="queryParams.browseTimeRange"
|
||||
end-placeholder="结束日期"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
type="datetimerange"
|
||||
unlink-panels
|
||||
value-format="YYYY-MM-dd"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" @click="handleQuery">查询</el-button>
|
||||
<el-button @click="resetQuery">重置</el-button>
|
||||
@ -82,7 +69,7 @@ getList();
|
||||
<!-- 客户浏览数据列表-->
|
||||
<el-table :data="tableData">
|
||||
<!--多选-->
|
||||
<el-table-column type="selection" width="55"></el-table-column>
|
||||
<!-- <el-table-column type="selection" width="55"></el-table-column>-->
|
||||
<el-table-column label="企业名称" prop="enterpriseName"></el-table-column>
|
||||
<el-table-column label="浏览类别" prop="type">
|
||||
<template #default="{ row }">
|
||||
@ -94,17 +81,8 @@ getList();
|
||||
<el-table-column label="名称" prop="typeName"></el-table-column>
|
||||
<el-table-column label="联系人" prop="nickname"></el-table-column>
|
||||
<el-table-column label="手机" prop="phone"></el-table-column>
|
||||
<el-table-column label="浏览时长" prop="browseTime"></el-table-column>
|
||||
<el-table-column label="浏览次数" prop="seeCount"></el-table-column>
|
||||
<el-table-column label="浏览时间" prop="updateTime"></el-table-column>
|
||||
<!-- 操作-->
|
||||
<el-table-column label="操作" width="200">
|
||||
<template #default="{ row }">
|
||||
<el-button size="small" type="text" @click="handleDelete(row)"
|
||||
>删除</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<!-- 分页 -->
|
||||
<pagination
|
||||
|
@ -39,16 +39,20 @@
|
||||
|
||||
<!-- 表格数据 -->
|
||||
<el-table v-loading="loading" :data="dataList">
|
||||
<el-table-column label="数据编号" prop="id" />
|
||||
<el-table-column
|
||||
:show-overflow-tooltip="true"
|
||||
<el-table-column align="center" label="数据编号" prop="id" />
|
||||
<el-table-column align="center"
|
||||
:show-overflow-tooltip="true"
|
||||
label="科研项目名称"
|
||||
prop="title"
|
||||
/>
|
||||
<el-table-column :show-overflow-tooltip="true" label="类型" prop="kind" />
|
||||
<el-table-column label="所属专家" prop="inventor" />
|
||||
<el-table-column label="课题角色" prop="applyName" />
|
||||
<el-table-column label="课题负责人" prop="applyName" />
|
||||
<el-table-column align="center" :show-overflow-tooltip="true" label="类型" prop="kind" />
|
||||
<!-- <el-table-column label="所属专家" prop="inventor" />-->
|
||||
<el-table-column align="center" label="课题角色" >
|
||||
<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">
|
||||
<template #default="{ row }">
|
||||
<span>{{ dayjs(row.applyAt).format("YYYY-MM-DD") }}</span>
|
||||
@ -60,13 +64,13 @@
|
||||
label="操作"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<el-button
|
||||
icon="download"
|
||||
size="small"
|
||||
type="text"
|
||||
@click="handleTakeOff(row.id)"
|
||||
>下架
|
||||
</el-button>
|
||||
<!-- <el-button-->
|
||||
<!-- icon="download"-->
|
||||
<!-- size="small"-->
|
||||
<!-- type="text"-->
|
||||
<!-- @click="handleTakeOff(row.id)"-->
|
||||
<!-- >下架-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
icon="Delete"
|
||||
size="small"
|
||||
@ -97,6 +101,7 @@ import {
|
||||
deleteTechnologyProject,
|
||||
technologyProjectList,
|
||||
} from "@/api/admin/research/research-project";
|
||||
import {subjectRoleDict} from "@/constant/dict";
|
||||
|
||||
const router = useRouter();
|
||||
|
||||
|
@ -1,28 +1,28 @@
|
||||
<template>
|
||||
<div class="small" v-loading="loading">
|
||||
<div v-loading="loading" class="small">
|
||||
<div class="_title">
|
||||
<div
|
||||
v-if="!state.banner"
|
||||
style="height: 394px; background-color: #108de9"
|
||||
v-if="!state.banner"
|
||||
style="height: 394px; background-color: #108de9"
|
||||
></div>
|
||||
<div v-else style="height: 394px">
|
||||
<img
|
||||
:src="state.banner"
|
||||
style="width: 100%; height: 100%"
|
||||
alt="banner"
|
||||
:src="state.banner"
|
||||
alt="banner"
|
||||
style="width: 100%; height: 100%"
|
||||
/>
|
||||
</div>
|
||||
<div
|
||||
v-if="state.caseList.length"
|
||||
class="_li"
|
||||
:class="isFixed ? '_fixed' : ''"
|
||||
v-if="state.caseList.length"
|
||||
:class="isFixed ? '_fixed' : ''"
|
||||
class="_li"
|
||||
>
|
||||
<ul class="conter1000">
|
||||
<li
|
||||
:class="activeId == item.id ? '_active' : ''"
|
||||
v-for="(item, index) in state.caseList"
|
||||
:key="item.id"
|
||||
@click="setScrollTop(item.id, index)"
|
||||
v-for="(item, index) in state.caseList"
|
||||
:key="item.id"
|
||||
:class="activeId == item.id ? '_active' : ''"
|
||||
@click="setScrollTop(item.id, index)"
|
||||
>
|
||||
{{ item.title }}
|
||||
</li>
|
||||
@ -30,24 +30,24 @@
|
||||
</div>
|
||||
<h2 v-else style="text-align: center; line-height: 100px">暂无数据</h2>
|
||||
</div>
|
||||
<div class="box" v-show="!isShowMore">
|
||||
<div v-show="!isShowMore" class="box">
|
||||
<div
|
||||
class="_item"
|
||||
:ref="setItemRef"
|
||||
v-for="(item, index) in state.caseList"
|
||||
:key="index"
|
||||
:data-id="item.id"
|
||||
v-for="(item, index) in state.caseList"
|
||||
:key="index"
|
||||
:ref="setItemRef"
|
||||
:data-id="item.id"
|
||||
class="_item"
|
||||
>
|
||||
<h3 class="_tit text-center" style="font-size: 24px; color: #333333">
|
||||
{{ item.title }}
|
||||
</h3>
|
||||
<div class="_info conter1000">
|
||||
<div class="_r" v-if="isOddEvenNumber(index)">
|
||||
<img :src="item.image" alt srcset />
|
||||
<div v-if="isOddEvenNumber(index)" class="_r">
|
||||
<img :src="item.image" alt srcset/>
|
||||
</div>
|
||||
<div
|
||||
class="_l"
|
||||
:class="isOddEvenNumber(index) ? '_paddingl' : '_paddingr'"
|
||||
:class="isOddEvenNumber(index) ? '_paddingl' : '_paddingr'"
|
||||
class="_l"
|
||||
>
|
||||
<h3 :class="isOddEvenNumber(index) ? 'text-right' : ''">
|
||||
{{ item.title }}
|
||||
@ -55,21 +55,21 @@
|
||||
<!-- <p>{{ item.description }}</p> -->
|
||||
<p>{{ item.description }}</p>
|
||||
</div>
|
||||
<div class="_r" v-if="!isOddEvenNumber(index)">
|
||||
<img :src="item.image" alt srcset />
|
||||
<div v-if="!isOddEvenNumber(index)" class="_r">
|
||||
<img :src="item.image" alt srcset/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="_list conter1400">
|
||||
<ul>
|
||||
<li
|
||||
v-for="child in item.children.slice(0, 2)"
|
||||
:key="child.id"
|
||||
@click="handlePath(child.id)"
|
||||
v-for="child in item.children.slice(0, 2)"
|
||||
:key="child.id"
|
||||
@click="handlePath(child.id)"
|
||||
>
|
||||
<el-image
|
||||
style="width: 100%; height: 135px"
|
||||
:src="child.image"
|
||||
fit="cover"
|
||||
:src="child.image"
|
||||
fit="cover"
|
||||
style="width: 100%; height: 135px"
|
||||
></el-image>
|
||||
<div class="_head text_hidden">{{ child.title }}</div>
|
||||
<div class="_detail text_hidden">{{ child.description }}</div>
|
||||
@ -77,34 +77,35 @@
|
||||
</ul>
|
||||
<div class="_liBtn text-right">
|
||||
<el-button class="x_btns" @click="handleShowMore(item)"
|
||||
>查看更多</el-button
|
||||
>查看更多
|
||||
</el-button
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<seeMore
|
||||
v-if="isShowMore"
|
||||
:data="moreData"
|
||||
v-model:isShowMore="isShowMore"
|
||||
v-model:oneLevelTitle="oneLevelTitle"
|
||||
v-if="isShowMore"
|
||||
v-model:isShowMore="isShowMore"
|
||||
v-model:oneLevelTitle="oneLevelTitle"
|
||||
:data="moreData"
|
||||
></seeMore>
|
||||
<webFooter></webFooter>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { nextTick, onMounted, reactive } from "vue";
|
||||
import {nextTick, onMounted, reactive} from "vue";
|
||||
import seeMore from "./components/seeMore.vue";
|
||||
import webFooter from "@/components/webFooter/index.vue";
|
||||
import { banner } from "@/api/website/home/index";
|
||||
import { useRoute, useRouter } from "vue-router";
|
||||
import { getCase } from "@/api/website/solution";
|
||||
import {banner} from "@/api/website/home/index";
|
||||
import {useRoute, useRouter} from "vue-router";
|
||||
import {getCase} from "@/api/website/solution";
|
||||
// import { getCategory } from "../../../api/website/solution";
|
||||
|
||||
const router = useRouter();
|
||||
|
||||
function handlePath(id) {
|
||||
let routeData = router.resolve({ path: `/solution/detail/${id}/` });
|
||||
let routeData = router.resolve({path: `/solution/detail/${id}/`});
|
||||
window.open(routeData.href, "_blank");
|
||||
}
|
||||
|
||||
@ -137,6 +138,8 @@ const route = useRoute();
|
||||
watch(route, () => {
|
||||
initData();
|
||||
});
|
||||
|
||||
|
||||
onMounted(() => {
|
||||
initData();
|
||||
});
|
||||
@ -148,20 +151,20 @@ async function initData() {
|
||||
let mode = route.params.mode;
|
||||
// let key = keyDict[name];
|
||||
|
||||
getCase({ mode }).then((res) => {
|
||||
mode && getCase({mode}).then((res) => {
|
||||
state.caseList = res.data;
|
||||
initScroll();
|
||||
// loading.value = false;
|
||||
});
|
||||
loading.value = true;
|
||||
banner({ locals: `解决方案>${name}` })
|
||||
.then((resp) => {
|
||||
state.banner = resp.data[0].images;
|
||||
loading.value = false;
|
||||
})
|
||||
.catch(() => {
|
||||
loading.value = false;
|
||||
});
|
||||
banner({locals: `解决方案>${name}`})
|
||||
.then((resp) => {
|
||||
state.banner = resp.data[0].images;
|
||||
loading.value = false;
|
||||
})
|
||||
.catch(() => {
|
||||
loading.value = false;
|
||||
});
|
||||
}
|
||||
|
||||
function initScroll() {
|
||||
@ -183,20 +186,22 @@ function initScroll() {
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function getScroll() {
|
||||
return {
|
||||
left:
|
||||
window.pageXOffset ||
|
||||
document.documentElement.scrollLeft ||
|
||||
document.body.scrollLeft ||
|
||||
0,
|
||||
window.pageXOffset ||
|
||||
document.documentElement.scrollLeft ||
|
||||
document.body.scrollLeft ||
|
||||
0,
|
||||
top:
|
||||
window.pageYOffset ||
|
||||
document.documentElement.scrollTop ||
|
||||
document.body.scrollTop ||
|
||||
0,
|
||||
window.pageYOffset ||
|
||||
document.documentElement.scrollTop ||
|
||||
document.body.scrollTop ||
|
||||
0,
|
||||
};
|
||||
}
|
||||
|
||||
function setScrollTop(id, index) {
|
||||
// if (isShowMore.value) return false;
|
||||
isShowMore.value = false;
|
||||
@ -207,9 +212,11 @@ function setScrollTop(id, index) {
|
||||
});
|
||||
activeId.value = id;
|
||||
}
|
||||
|
||||
function isOddEvenNumber(num) {
|
||||
return num % 2 == 0 ? false : true;
|
||||
}
|
||||
|
||||
function handleShowMore(item) {
|
||||
console.log(item);
|
||||
moreData.value = item.children;
|
||||
@ -223,18 +230,22 @@ function handleShowMore(item) {
|
||||
<style lang="scss" scoped>
|
||||
.small {
|
||||
background-color: #fff;
|
||||
|
||||
._title {
|
||||
position: relative;
|
||||
|
||||
._li {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
height: 48px;
|
||||
background: rgba(0, 0, 0, 0.2);
|
||||
|
||||
> ul {
|
||||
display: flex;
|
||||
height: 48px;
|
||||
line-height: 48px;
|
||||
|
||||
li {
|
||||
flex: 1;
|
||||
text-align: center;
|
||||
@ -243,11 +254,13 @@ function handleShowMore(item) {
|
||||
display: inline-block;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
._active {
|
||||
background: #000000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
._fixed {
|
||||
position: fixed;
|
||||
top: 80px;
|
||||
@ -255,28 +268,36 @@ function handleShowMore(item) {
|
||||
background-color: #ccc;
|
||||
}
|
||||
}
|
||||
|
||||
.box {
|
||||
margin-bottom: 30px;
|
||||
|
||||
._item {
|
||||
._tit {
|
||||
margin: 0;
|
||||
padding: 100px 0 60px;
|
||||
}
|
||||
|
||||
._info {
|
||||
display: flex;
|
||||
|
||||
._paddingr {
|
||||
padding-right: 63px;
|
||||
}
|
||||
|
||||
._paddingl {
|
||||
padding-left: 63px;
|
||||
}
|
||||
|
||||
._l {
|
||||
flex: 1;
|
||||
|
||||
h3 {
|
||||
font-size: 18px;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
@ -284,9 +305,11 @@ function handleShowMore(item) {
|
||||
line-height: 24px;
|
||||
}
|
||||
}
|
||||
|
||||
._r {
|
||||
width: 420px;
|
||||
background: #f2f6ff;
|
||||
|
||||
img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
@ -294,19 +317,24 @@ function handleShowMore(item) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
._list {
|
||||
margin-top: 86px;
|
||||
|
||||
> ul {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
|
||||
li {
|
||||
cursor: pointer;
|
||||
width: calc(100% / 6);
|
||||
padding: 0 11px;
|
||||
|
||||
&:hover ._head,
|
||||
&:hover ._detail {
|
||||
opacity: 0.6;
|
||||
}
|
||||
|
||||
._head {
|
||||
margin: 5px 0;
|
||||
font-size: 17px;
|
||||
@ -315,6 +343,7 @@ function handleShowMore(item) {
|
||||
color: #333333;
|
||||
line-height: 19px;
|
||||
}
|
||||
|
||||
._detail {
|
||||
font-size: 15px;
|
||||
font-family: Source Han Sans CN;
|
||||
@ -324,6 +353,7 @@ function handleShowMore(item) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
._liBtn {
|
||||
margin-top: 36px;
|
||||
display: flex;
|
||||
|
@ -31,9 +31,9 @@ export default defineConfig(({ mode, command }) => {
|
||||
proxy: {
|
||||
// https://cn.vitejs.dev/config/#server-proxy
|
||||
"/dev-api": {
|
||||
// target: 'http://101.34.131.16:1618',
|
||||
target: "http://101.34.131.16:1618",
|
||||
// target: "http://101.34.131.16:1618",
|
||||
target: "http://192.168.0.201:1618",
|
||||
// target: "http://192.168.0.201:1618",
|
||||
// target: 'http://172.18.3.127:1618',
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, ""),
|
||||
|
Reference in New Issue
Block a user