Commit 5fe89c03 authored by LiXuyang's avatar LiXuyang

Merge remote-tracking branch 'origin/master'

parents b6508529 84b2461b
...@@ -117,6 +117,14 @@ export const PCFontRoute: AppRouteRecordRaw = { ...@@ -117,6 +117,14 @@ export const PCFontRoute: AppRouteRecordRaw = {
title: '', title: '',
}, },
}, },
{
path: '/aaaFont/demandHall/enrollApply',
name: 'demandHallEnrollApply',
component: () => import('@/views/AAAFont/demandHall/enrollApply.vue'),
meta: {
title: '',
},
},
{ {
path: '/aaaFont/tradingMarket/details/dataSet', path: '/aaaFont/tradingMarket/details/dataSet',
name: 'tradingMarketsDetail', name: 'tradingMarketsDetail',
......
...@@ -72,12 +72,12 @@ ...@@ -72,12 +72,12 @@
<el-row :gutter="20" style="margin-bottom: 20px"> <el-row :gutter="20" style="margin-bottom: 20px">
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="company" label="所属公司" class="formItemWrapper"> <el-form-item prop="company" label="所属公司" class="formItemWrapper">
<el-textarea v-model="formData.company" placeholder="请输入用户名" /> <el-textarea v-model="formData.company" placeholder="请输入所属公司" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="publishDate" label="发布日期" class="formItemWrapper"> <el-form-item prop="publishDate" label="发布日期" class="formItemWrapper">
<el-textarea v-model="formData.publishDate" placeholder="请输入密码" /> <el-textarea v-model="formData.publishDate" placeholder="请输入发布日期" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
...@@ -402,6 +402,11 @@ ...@@ -402,6 +402,11 @@
this.similar = false; this.similar = false;
}); });
}, },
handleApply() {
this.$router.push({
path: '/aaaFont/dataRegistration/enrollApply',
});
},
}, },
}; };
</script> </script>
......
<template>
<div style="display: flex; justify-content: center">
<el-card style="width: 1440px; margin: 30px 0">
<div style="display: flex; justify-content: center">
<div
style="
display: flex;
flex-direction: column;
justify-content: center;
width: 1440px;
margin-top: 10px;
"
>
<div style="padding: 0 10%">
<div style="flex-direction: column; margin-bottom: 30px; text-align: left">
<Icon style="color: #409eff" icon="ant-design:send-outlined" />需求信息</div
>
<el-form ref="form" :model="form" label-width="130px">
<Row class="row1">
<Col :span="12">
<el-form-item label="需求名称">
<el-input class="input1" v-model="form.demandName" />
</el-form-item>
</Col>
<Col :span="12">
<el-form-item label="需求描述">
<el-input class="input1" v-model="form.demandDescribe" />
</el-form-item>
</Col>
</Row>
<Row class="row1">
<Col :span="12">
<el-form-item label="所属公司">
<el-input class="input1" v-model="form.company" />
</el-form-item>
</Col>
<Col :span="12">
<el-form-item label="发布日期">
<el-input class="input1" v-model="form.releaseDate" />
</el-form-item>
</Col>
</Row>
<Row class="row1">
<Col :span="12">
<el-form-item label="预算金额">
<el-input class="input1" v-model="form.budget" />
</el-form-item>
</Col>
<Col :span="12">
<el-form-item label="联系人">
<el-input class="input1" v-model="form.contact" />
</el-form-item>
</Col>
</Row>
<Row class="row1">
<Col :span="12">
<!-- <el-form-item label="场景类型">
<el-Select placeholder="" class="input1" v-model="form.sceneType" clearable>
<el-option
v-for="item in sceneList"
:key="item.value"
:value="item.value"
:label="item.label"
/>
</el-Select>
</el-form-item> -->
<el-form-item label="联系方式">
<el-Select placeholder="" class="input1" v-model="form.phone" clearable>
<el-option
v-for="item in sceneList"
:key="item.value"
:value="item.value"
:label="item.label"
/>
</el-Select>
</el-form-item>
</Col>
<Col :span="12">
<!-- <el-form-item label="上传文件">
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList"
>
<el-button size="small" type="primary">选择文件</el-button>
<template #tip>
<div>可上传jpg/png/excel/word/pdf文件,且不超过5Mb</div>
</template>
</el-upload>
</el-form-item> -->
<el-form-item label="数据格式">
<el-Select placeholder="" class="input1" v-model="form.dataFormat" clearable>
<el-option
v-for="item in formatList"
:key="item.value"
:value="item.value"
:label="item.label"
/>
</el-Select>
</el-form-item>
</Col>
</Row>
<!-- <Row class="row1">
<Col :span="24">
<el-form-item label="数据结构">
<el-input
type="textarea"
rows="3"
style="width: 96%"
v-model="form.dataStructure"
/>
</el-form-item>
</Col>
</Row> -->
<Row class="row1">
<Col :span="12">
<el-form-item label="数据时效性">
<el-input class="input1" v-model="form.dataTimeliness" />
</el-form-item>
</Col>
<Col :span="12">
<el-form-item label="期望交付时间">
<el-input class="input1" v-model="form.expectedDeliveryDate" />
</el-form-item>
</Col>
</Row>
<!-- <Row class="row1">
<Col :span="12">
<el-form-item label="应用场景">
<el-input type="textarea" rows="3" class="input1" v-model="form.applyScene" />
</el-form-item>
</Col>
<Col :span="12">
<el-form-item label="算法规则简要说明">
<el-input type="textarea" rows="3" class="input1" v-model="form.ruleExplain" />
</el-form-item>
</Col>
</Row>
<Row class="row1">
<Col :span="12">
<el-form-item label="存证公证编号">
<el-input class="input1" v-model="form.applyScene" />
</el-form-item>
</Col>
<Col :span="12">
<el-form-item label="存证公证平台">
<el-input class="input1" v-model="form.ruleExplain" />
</el-form-item>
</Col>
</Row> -->
<Row>
<Col :span="24" style="margin-top: -10px; padding: 0 4% 0 0; text-align: right">
<el-button size="large" @click="handleCancel">取消</el-button>
<el-button type="primary" size="large" @click="handleSubmit">提交</el-button>
</Col>
</Row>
</el-form>
</div>
</div>
</div>
</el-card>
</div>
</template>
<script>
import { Col, Row } from 'ant-design-vue';
import Icon from '@/components/Icon/Icon.vue';
export default {
name: 'EnrollApply',
components: { Icon, Row, Col },
data() {
return {
form: {
enrollCode: '',
sceneType: '',
enrollDate: '',
applicant: '',
dataName: '',
industry: '',
dataSource: '',
dataStructure: '',
dataSize: '',
updateRate: '',
applyScene: '',
ruleExplain: '',
publicCode: '',
publicSituation: '',
demandName: '', //需求名称
demandDescription: '', //需求描述
companyName: '', //所属公司
releaseDate: '', //发布日期
demandType: '', //需求类别
budget: '', //预算金额
contact: '', //联系人
phone: '', //联系方式
dataFormat: '', //数据格式
updateFrequency: '', //更新频率
dataTimeliness: '', //数据时效性
expectedDeliveryDate: '', //预计交付日期
},
sceneList: [
{
label: '联系方式一',
value: '1',
},
{
label: '联系方式一',
value: '2',
},
{
label: '联系方式一',
value: '3',
},
],
formatList: [
{
label: 'CSV',
value: 'CSV',
},
{
label: 'Excel',
value: 'Excel',
},
{
label: 'JSON',
value: 'JSON',
},
{
label: 'XQL',
value: 'XQL',
},
],
applyInfo: [
{
span: 12,
label: '登记编号',
field: 'enrollCode',
},
{
span: 12,
label: '申请日期',
field: 'enrollDate',
},
{
span: 12,
label: '申请人',
field: 'applicant',
},
{
span: 12,
label: '数据知识产权名称',
field: 'dataName',
},
{
span: 12,
label: '所属行业',
field: 'industry',
},
{
span: 12,
label: '数据来源',
field: 'dataSource',
},
{
span: 24,
label: '数据结构',
field: 'dataStructure',
},
{
span: 12,
label: '数据规模',
field: 'dataSize',
},
{
span: 12,
label: '更新频次',
field: 'updateRate',
},
{
span: 12,
label: '应用场景',
field: 'applyScene',
},
{
span: 12,
label: '算法规则简要说明',
field: 'ruleExplain',
},
],
};
},
methods: {
handleSubmit() {
this.$message.success('提交成功!');
this.$router.go(-1);
},
handleCancel() {
this.$router.go(-1);
},
},
};
</script>
<style scoped>
.col-item {
display: flex;
gap: 10px;
margin: 20px 60px;
.item-label {
display: flex;
justify-content: right;
width: 127px;
}
.item-img {
width: 150px;
height: 100px;
}
.item-des {
width: 400px;
}
}
.input1 {
width: 90%;
}
.row1 {
margin: 30px 0;
}
</style>
...@@ -10,6 +10,23 @@ ...@@ -10,6 +10,23 @@
</el-carousel-item> </el-carousel-item>
</el-carousel> </el-carousel>
</div> </div>
<el-button
style="
z-index: 2;
width: 130px;
height: 50px;
margin-top: -150px;
margin-bottom: 150px;
border: 2px solid #fff;
background-color: rgb(255 255 255 / 20%);
color: #fff;
font-size: 18px;
backdrop-filter: blur(10px);
"
round
@click="handleApply"
>发布需求</el-button
>
<div class="type"> <div class="type">
<div class="type1"> <div class="type1">
<div class="w-1/7 type-left"> <div class="w-1/7 type-left">
...@@ -629,37 +646,43 @@ ...@@ -629,37 +646,43 @@
query: record, query: record,
}); });
}, },
handleApply() {
this.$router.push({
path: '/aaaFont/demandHall/enrollApply',
});
},
}, },
}; };
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
/*公共容器 所有子页面共享的css样式*/ /* 公共容器 所有子页面共享的css样式 */
.commonContainer { .commonContainer {
display: flex; display: flex;
position: relative;
flex-direction: column; flex-direction: column;
/*justify-content: center; !* 垂直居中 *!*/
/* justify-content: center; !* 垂直居中 *! */
align-items: center; /* 水平居中 */ align-items: center; /* 水平居中 */
text-align: center; text-align: center;
position: relative;
} }
/*子页面中文标题样式*/ /* 子页面中文标题样式 */
.content-item-h3 { .content-item-h3 {
z-index: 3;
height: 43px; height: 43px;
margin: 60px 0 0;
color: #383737ff;
font-size: 36px; font-size: 36px;
font-weight: 580; font-weight: 580;
z-index: 3;
color: #383737ff;
line-height: 43px;
letter-spacing: 10px; letter-spacing: 10px;
margin: 60px 0 0 0; line-height: 43px;
} }
.title_bottom { .title_bottom {
margin-top: 40px; margin-top: 40px;
color: #a3a3a3;
font-size: 24px; font-size: 24px;
font-weight: 500; font-weight: 500;
color: #a3a3a3;
letter-spacing: 4px; letter-spacing: 4px;
} }
...@@ -675,10 +698,10 @@ ...@@ -675,10 +698,10 @@
} }
.tab-pane { .tab-pane {
display: flex;
position: relative; position: relative;
margin-top: 80px;
width: 1440px; width: 1440px;
display: flex; margin-top: 80px;
} }
//tabs 按钮 //tabs 按钮
...@@ -686,9 +709,9 @@ ...@@ -686,9 +709,9 @@
position: absolute; position: absolute;
top: 0; top: 0;
right: 0; right: 0;
font-size: 18px;
margin-top: 3px; margin-top: 3px;
color: #3a5cde; color: #3a5cde;
font-size: 18px;
} }
.card-row { .card-row {
...@@ -699,8 +722,8 @@ ...@@ -699,8 +722,8 @@
text-align: left; text-align: left;
p { p {
margin-top: 18px;
height: 24px; height: 24px;
margin-top: 18px;
} }
.card-left { .card-left {
...@@ -721,37 +744,37 @@ ...@@ -721,37 +744,37 @@
.card_bottom { .card_bottom {
display: flex; display: flex;
justify-content: space-between;
align-items: center; align-items: center;
justify-content: space-between;
font-weight: 500; font-weight: 500;
.button { .button {
color: #1962e2;
border: #1962e2 2px solid; border: #1962e2 2px solid;
color: #1962e2;
} }
} }
.industry { .industry {
width: 100%;
margin-top: 100px;
background-color: #eff3fa;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
width: 100%;
margin-top: 100px;
background-color: #eff3fa;
.industry-row { .industry-row {
display: flex;
justify-content: space-between;
width: 1440px; width: 1440px;
margin-top: 72px; margin-top: 72px;
margin-bottom: 72px; margin-bottom: 72px;
display: flex;
justify-content: space-between;
.row-left { .row-left {
width: 464px; width: 464px;
height: 400px; height: 400px;
padding: 37px 24px 24px;
border-radius: 8px; border-radius: 8px;
background-color: #ffffff; background-color: #fff;
padding: 37px 24px 24px 24px;
.big-event { .big-event {
display: flex; display: flex;
...@@ -760,17 +783,17 @@ ...@@ -760,17 +783,17 @@
} }
.row-right { .row-right {
border-radius: 8px;
background-color: #ffffff;
width: 952px; width: 952px;
height: 400px; height: 400px;
padding: 33px 24px 24px 24px; padding: 33px 24px 24px;
border-radius: 8px;
background-color: #fff;
.right-li { .right-li {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
font-size: 18px;
margin: 30px 20px 20px 0; margin: 30px 20px 20px 0;
font-size: 18px;
.li-left { .li-left {
} }
...@@ -791,26 +814,28 @@ ...@@ -791,26 +814,28 @@
.custom-table { .custom-table {
margin-bottom: 72px; margin-bottom: 72px;
} }
.table-span { .table-span {
color: #1962e2;
margin-left: 80px; margin-left: 80px;
color: #1962e2;
} }
.table-span-label { .table-span-label {
margin-left: 80px; margin-left: 80px;
} }
.row-footer { .row-footer {
height: 242px;
opacity: 0.8;
background-color: #1962e2;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
justify-content: space-evenly; justify-content: space-evenly;
height: 242px;
opacity: 0.8;
background-color: #1962e2;
.footer-title { .footer-title {
height: 48px; height: 48px;
color: #ffffff; color: #fff;
font-size: 32px; font-size: 32px;
font-weight: 500; font-weight: 500;
} }
...@@ -818,36 +843,43 @@ ...@@ -818,36 +843,43 @@
.footer-button { .footer-button {
width: 160px; width: 160px;
height: 51px; height: 51px;
font-size: 18px; background-color: #fff;
background-color: #ffffff;
color: #1962e2; color: #1962e2;
font-size: 18px;
} }
} }
.type { .type {
width: 70%;
padding: 40px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 70%;
padding: 40px;
gap: 40px; gap: 40px;
.type1 { .type1 {
display: flex; display: flex;
} }
.type-left { .type-left {
border-right: 2px solid #f0f0f0;
padding: 5px 0;
margin-right: 80px;
display: flex; display: flex;
margin-right: 80px;
padding: 5px 0;
border-right: 2px solid #f0f0f0;
.icon { .icon {
font-size: 20px !important;
color: #4171fc; color: #4171fc;
font-size: 20px !important;
} }
.type-des { .type-des {
width: 100px; width: 100px;
} }
} }
::-webkit-scrollbar { ::-webkit-scrollbar {
height: 6px; height: 6px;
} }
.type-right { .type-right {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
...@@ -859,114 +891,135 @@ ...@@ -859,114 +891,135 @@
gap: 30px; gap: 30px;
} }
} }
.type-right:hover { .type-right:hover {
overflow: auto; overflow: auto;
} }
.tab { .tab {
width: 140px; width: 140px;
cursor: pointer;
padding: 8px 20px; padding: 8px 20px;
cursor: pointer;
} }
.tab2 { .tab2 {
width: 130px; width: 130px;
cursor: pointer;
padding: 8px 10px; padding: 8px 10px;
cursor: pointer;
} }
.active { .active {
font-weight: bolder;
background-color: #eff1f6; background-color: #eff1f6;
color: #668ef8; color: #668ef8;
font-weight: bolder;
} }
} }
.table { .table {
width: 70%;
padding: 40px 0;
display: flex; display: flex;
flex-wrap: wrap; /* 允许换行 */ flex-wrap: wrap; /* 允许换行 */
gap: 20px; /* 元素之间的间隔 */ width: 70%;
padding: 40px 0;
text-align: left; text-align: left;
gap: 20px; /* 元素之间的间隔 */
.card:hover { .card:hover {
box-shadow: 3px 2px 15px rgba(0, 0, 0, 0.2); box-shadow: 3px 2px 15px rgb(0 0 0 / 20%);
} }
.card { .card {
display: flex;
flex: 0 0 calc(25% - 30px);
flex-direction: column;
margin-left: 10px; margin-left: 10px;
border-radius: 15px; padding: 30px 20px;
transition: box-shadow 0.2s ease-in-out; transition: box-shadow 0.2s ease-in-out;
cursor: pointer;
border: 2px solid #eff1f6; border: 2px solid #eff1f6;
flex: 0 0 calc(25% - 30px); border-radius: 15px;
display: flex; cursor: pointer;
flex-direction: column;
gap: 40px; gap: 40px;
padding: 30px 20px;
.title { .title {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 20px; gap: 20px;
} }
.icon { .icon {
color: #82a0fc; color: #82a0fc;
font-size: 40px !important; font-size: 40px !important;
} }
.c-header { .c-header {
display: flex; display: flex;
gap: 20px; gap: 20px;
.ch-title { .ch-title {
font-weight: bolder;
font-size: 20px; font-size: 20px;
font-weight: bolder;
} }
.ch-tab { .ch-tab {
font-size: 12px; padding: 4px 10px;
background-color: #fff3ef; background-color: #fff3ef;
color: #fe9693; color: #fe9693;
padding: 4px 10px; font-size: 12px;
} }
.c-des { .c-des {
} }
} }
.c-footer { .c-footer {
display: flex; display: flex;
gap: 15px; gap: 15px;
.cf-money { .cf-money {
font-size: 30px;
color: #f53f3f; color: #f53f3f;
font-size: 30px;
} }
.cf-status { .cf-status {
display: flex; display: flex;
align-items: center; align-items: center;
color: #999999; color: #999;
} }
.cf-eye { .cf-eye {
display: flex; display: flex;
gap: 10px;
color: #999999;
align-items: center; align-items: center;
font-size: 14px;
padding-left: 10%; padding-left: 10%;
color: #999;
font-size: 14px;
gap: 10px;
} }
} }
} }
} }
.page { .page {
padding: 5px;
display: flex; display: flex;
gap: 20px; padding: 5px;
font-size: 20px; font-size: 20px;
gap: 20px;
.pg-left { .pg-left {
padding: 15px 18px; padding: 15px 18px;
background-color: #f6f7fa; background-color: #f6f7fa;
} }
.pg-right { .pg-right {
padding: 15px 18px; padding: 15px 18px;
background-color: #f6f7fa; background-color: #f6f7fa;
} }
.pg-num { .pg-num {
padding: 15px 18px; padding: 15px 18px;
background-color: #f6f7fa; background-color: #f6f7fa;
} }
.active { .active {
background-color: #4e80f8; background-color: #4e80f8;
color: #ffffff; color: #fff;
} }
} }
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment