Merge branch 'dev' of http://47.109.205.240:3000/Web/daimp-front into dev
This commit is contained in:
commit
63f2686c80
BIN
sub-operation-service/src/assets/images/ecommerce/contact.png
Normal file
BIN
sub-operation-service/src/assets/images/ecommerce/contact.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
BIN
sub-operation-service/src/assets/images/finance/customs.png
Normal file
BIN
sub-operation-service/src/assets/images/finance/customs.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.5 KiB |
BIN
sub-operation-service/src/assets/images/finance/productInt.png
Normal file
BIN
sub-operation-service/src/assets/images/finance/productInt.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.5 KiB |
BIN
sub-operation-service/src/assets/images/finance/wydk.png
Normal file
BIN
sub-operation-service/src/assets/images/finance/wydk.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.2 MiB |
BIN
sub-operation-service/src/assets/images/finance/wydk1.png
Normal file
BIN
sub-operation-service/src/assets/images/finance/wydk1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 509 KiB |
BIN
sub-operation-service/src/assets/images/logo2.png
Normal file
BIN
sub-operation-service/src/assets/images/logo2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
@ -216,7 +216,7 @@ export default {
|
||||
if (params.seriesName !== 'mouseoutSeries') {
|
||||
return `
|
||||
<span style="color:#FFF">
|
||||
${params.seriesName}<br/>
|
||||
${params.seriesName}(万亩)<br/>
|
||||
<span style="display:inline-block;
|
||||
margin-right:5px;
|
||||
border-radius:10px;
|
||||
|
@ -34,7 +34,7 @@
|
||||
<div class="layout-header-bottom-left">
|
||||
<div class="layout-header-bottom-search">
|
||||
<div class="title">
|
||||
<img :src="getAssetsFile('images/logo1.png')" />
|
||||
<img :src="getAssetsFile('images/logo2.png')" />
|
||||
</div>
|
||||
<div class="search-warp">
|
||||
<el-input v-model="keyword" placeholder="请输入关键词进行搜索"></el-input>
|
||||
|
@ -184,13 +184,13 @@ export const constantRoutes = [
|
||||
path: 'detail',
|
||||
component: () => import('@/views/ruralFinance/integratedSector/detail.vue'),
|
||||
name: 'integratedSectorDetail',
|
||||
meta: { title: '查看详情', hideInBread: true },
|
||||
meta: { title: '查看详情' },
|
||||
},
|
||||
{
|
||||
path: 'loan',
|
||||
component: () => import('@/views/ruralFinance/integratedSector/loan.vue'),
|
||||
name: 'integratedSectorLoan',
|
||||
meta: { title: '我要贷款', hideInBread: true },
|
||||
meta: { title: '我要贷款' },
|
||||
},
|
||||
],
|
||||
},
|
||||
@ -602,7 +602,7 @@ export const constantRoutes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
component: () => import('@/views/ecommerce/supplierDetail.vue'),
|
||||
component: () => import('@/views/ecommerce/agriculturalDetail.vue'),
|
||||
name: 'supplierDetail',
|
||||
meta: { title: '农产品详情', headerActive: 'ecommerce', hideInBread: true },
|
||||
},
|
||||
|
@ -9,28 +9,28 @@ import { reactive, ref } from 'vue';
|
||||
// #region
|
||||
const dataList = ref([
|
||||
{
|
||||
name: '豆菜类作物 25万亩',
|
||||
value: 60.8,
|
||||
name: '豆菜类作物',
|
||||
value: 25,
|
||||
money: 100,
|
||||
},
|
||||
{
|
||||
name: '根菜类作物 20万亩',
|
||||
value: 44.4,
|
||||
name: '根菜类作物',
|
||||
value: 20,
|
||||
money: 88,
|
||||
},
|
||||
{
|
||||
name: '叶菜类作物 10万亩',
|
||||
value: 24.3,
|
||||
name: '叶菜类作物',
|
||||
value: 10,
|
||||
money: 92,
|
||||
},
|
||||
{
|
||||
name: '茄科类作物 20万亩',
|
||||
value: 32.7,
|
||||
name: '茄科类作物',
|
||||
value: 20,
|
||||
money: 56,
|
||||
},
|
||||
{
|
||||
name: '其他蔬菜作物 20万亩',
|
||||
value: 32.9,
|
||||
name: '其他蔬菜作物',
|
||||
value: 20,
|
||||
money: 18,
|
||||
},
|
||||
]);
|
||||
|
@ -50,7 +50,7 @@
|
||||
<div class="goods-num">
|
||||
<div class="num-title">数量:</div>
|
||||
<div class="num-warp">
|
||||
<el-input-number v-model="saveInfo.num" :min="1" :max="10" />
|
||||
<el-input-number v-model="saveInfo.num" :min="1" :max="99999" />
|
||||
<span v-if="currentStock !== 0" class="is-have">有货: {{ currentStock }}</span>
|
||||
<span v-else class="is-have">售罄</span>
|
||||
</div>
|
||||
@ -63,6 +63,10 @@
|
||||
<div class="item-btn reservation" @click="addGoodToCart">
|
||||
<span>加入购物车</span>
|
||||
</div>
|
||||
<div class="contact" @click="showPhone = true">
|
||||
<div><img :src="getAssetsFile('images/ecommerce/contact.png')" alt="" width="15" /></div>
|
||||
<div>联系客服</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -129,6 +133,16 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<el-dialog v-model="showPhone" title="联系客服" width="400" align-center style="text-align: left">
|
||||
<span>该号码为虚拟号码</span>
|
||||
<div>400-059-0985-5109</div>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="danger" @click="showPhone = false">关闭</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
</common>
|
||||
</div>
|
||||
@ -153,6 +167,7 @@ const router = useRouter();
|
||||
const goodId = route.query.id; // 获取参数
|
||||
const pId = route.query.pid;
|
||||
const currentWeight = ref(0);
|
||||
const showPhone = ref(false);
|
||||
|
||||
let bannerList = reactive(['images/ecommerce/' + 'banner.png', 'images/ecommerce/' + 'banner.png']);
|
||||
const tabList = reactive([
|
||||
@ -614,15 +629,22 @@ const toCopy = () => {};
|
||||
}
|
||||
}
|
||||
.top-btn {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
.contact {
|
||||
text-align: center;
|
||||
cursor: pointer;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.contact:hover {
|
||||
}
|
||||
.item-btn {
|
||||
display: inline-block;
|
||||
margin: 8px 24px 8px 0;
|
||||
margin-top: 16px;
|
||||
padding: 0 24px;
|
||||
padding: 7px 24px;
|
||||
margin-right: 20px;
|
||||
font-size: 20px;
|
||||
border-radius: 12px;
|
||||
color: $color-fff;
|
||||
line-height: 42px;
|
||||
&.sign {
|
||||
background: $color-main;
|
||||
cursor: pointer;
|
||||
|
@ -50,7 +50,7 @@
|
||||
<div class="goods-num">
|
||||
<div class="num-title">数量:</div>
|
||||
<div class="num-warp">
|
||||
<el-input-number v-model="saveInfo.num" :min="1" :max="10" />
|
||||
<el-input-number v-model="saveInfo.num" :min="1" :max="99999" />
|
||||
<span v-if="currentStock !== 0" class="is-have">有货: {{ currentStock }}</span>
|
||||
<span v-else class="is-have">售罄</span>
|
||||
</div>
|
||||
|
@ -1,19 +1,238 @@
|
||||
<template>
|
||||
<div></div>
|
||||
<div>
|
||||
<common>
|
||||
<template #main>
|
||||
<el-card style="border-radius: 16px" :body-style="{ padding: 0 }">
|
||||
<div class="product-card">
|
||||
<div style="padding: 20px; display: flex; justify-content: space-between">
|
||||
<div style="display: flex">
|
||||
<img :src="getAssetsFile(currentDetail.img)" width="120px" alt="" />
|
||||
<div style="display: flex; align-items: center">
|
||||
<div style="font-size: 20px; font-weight: bold; margin: 0 20px">{{ currentDetail.title }}</div>
|
||||
<div style="display: flex" class="tags">
|
||||
<div>额度高</div>
|
||||
<div>政策扶持</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin: auto 0">
|
||||
<el-button style="background-color: #25bf82; color: #ffffff; padding: 20px; font-size: 20px" @click="goLoan">我要贷款</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; margin-top: 40px; justify-content: space-around; text-align: center">
|
||||
<div>
|
||||
<div class="subTitle">最高50万</div>
|
||||
<div class="subContent">货款额度</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="subTitle">4.15%起</div>
|
||||
<div class="subContent">产品利率</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="subTitle">最长60个月</div>
|
||||
<div class="subContent">货款期限</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; justify-content: space-between; padding: 40px">
|
||||
<div style="font-size: 18px">
|
||||
<div class="subs">最快放款:<span>即时放款</span></div>
|
||||
<div class="subs">适用范围:<span>临沧市</span></div>
|
||||
</div>
|
||||
<div style="font-size: 18px">
|
||||
<div class="subs">担保方式:<span>信用、抵押</span></div>
|
||||
<div class="subs">
|
||||
所属机构:<span>{{ currentDetail.type }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div style="font-size: 18px">
|
||||
<div class="subs">还款方式:<span>等额本息、先息后本</span></div>
|
||||
<div class="subs"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-for="(item, index) in currentDetail.content" :key="index">
|
||||
<div style="padding: 10px 20px">
|
||||
<div style="display: flex">
|
||||
<!-- <img :src="getAssetsFile('images/finance/productInt.png')" alt="" height="40" />-->
|
||||
<div class="titles">
|
||||
<div>{{ item.title }}</div>
|
||||
<div class="underLine"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="contents" v-html="item.content"></div>
|
||||
</div>
|
||||
<!-- <div style="padding: 20px">-->
|
||||
<!-- <div style="display: flex">-->
|
||||
<!-- <!– <img :src="getAssetsFile('images/finance/customs.png')" alt="" height="40" />–>-->
|
||||
<!-- <div class="titles">-->
|
||||
<!-- <div>适用客户</div>-->
|
||||
<!-- <div class="underLine"></div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div class="contents" style="text-indent: 0">-->
|
||||
<!-- 广泛覆盖从事特色产业经营、农村电商购销、农业产业链供销以及在农行有金融资产或信贷关系等客户,贷款可用于生产经营和消费,包括但不限于以下范围:<br />1.在农行存款、理财、基金等金融资产达到一定标准的农户。<br />2.在农行办理住房贷款且尚未结清的农户。<br />3.在农行办理过农户贷款且信用记录良好的农户。<br />4.从事茶叶、林果、蔬菜、烟草、谷物种植和畜牧、家禽、渔业养殖等农行认可的特色产业经营农户。<br />5.农行认可的信用村内有资产、有收入、有诚信的农户。<br />6.与农行合作的农业产业化龙头企业上下游农户。<br />7.与农行合作的电商平台上下游购销农户。<br />8.纳入政府增信机制或融资性担保公司担保的农户。-->
|
||||
<!-- </div>-->
|
||||
</el-card>
|
||||
</template>
|
||||
</common>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref } from 'vue';
|
||||
import { ref, onMounted } from 'vue';
|
||||
import common from '../components/common.vue';
|
||||
import { getAssetsFile } from '../../../utils/index.js';
|
||||
import { useRoute, useRouter } from 'vue-router';
|
||||
|
||||
/* --------------- data --------------- */
|
||||
// #region
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
|
||||
const detailId = route.query.id;
|
||||
|
||||
const mockData = ref([
|
||||
{
|
||||
id: 1,
|
||||
img: 'images/finance/nyyh.png',
|
||||
title: '惠农e贷',
|
||||
type: '农业银行',
|
||||
content: [
|
||||
{
|
||||
title: '一、产品简介',
|
||||
content:
|
||||
'惠农e贷是中国农业银行专为广大农民量身打造的便捷高效线上贷款产品,一部手机实现在线申请、在线取款、在线还款,农民\n' + '足不出户办理贷款。',
|
||||
},
|
||||
{
|
||||
title: '二、产品优势',
|
||||
content:
|
||||
'<p>快:批量作业、自动授信、自动放贷,线上7×24小时服务。</p><p>准:精准对接贷款需求,系统自动核定贷款额度。</p><p>简:申请简便,即可手机银行线上自助申请,也可网点柜台提交申请,借款还款手机分分钟搞定。</p><p>信:符合条件可办理纯信用无担保贷款,也可选用抵押、保证担保贷款。</p><p>惠:利率优惠、随借随还、循环使用,实际使用贷款按日起息,不用款不计利息。</p>',
|
||||
},
|
||||
{
|
||||
title: '三、贷款要素',
|
||||
content:
|
||||
'贷款额度:3000元起步,最高不超过50万元。<p>贷款期限:根据您的生产经营周期及收入等情况综合确定,最长不超过8年。</p><p>贷款利率:根据您的信用状况、担保方式等情况综合确定。</p><p>还款方式:根据贷款期限可灵活选用定期结息到期还本、一次性利随本清、等额本息分期还款等多种方式。</p>',
|
||||
},
|
||||
{
|
||||
title: '四、适用对象',
|
||||
content:
|
||||
'惠农e贷全面支持农村和城郊结合部的种植养殖、生产加工、商贸流通等一二三类产业。<p>种植养殖:牛、羊、猪、鸡等养殖,水稻、玉米、小麦、茶叶、花卉、水果等。</p><p>生产加工:禽蛋肉奶食品加工、手工作坊、乡村车间等。</p><p>商贸流通:农家乐、农资店、小卖店、面条馆、理发店、家电维修店、物流配送中心等。</p>',
|
||||
},
|
||||
{
|
||||
title: '五、贷款条件',
|
||||
content: '品行端正、信用记录良好;<p>有固定生产经营项目,有稳定收入来源;</p><p>提供真实、准确、有效的家庭资产、经营、收入等信息资料。</p>',
|
||||
},
|
||||
{
|
||||
title: '六、合作机构信息公示',
|
||||
content: '农户贷款合作机构信息目录',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
img: 'images/finance/yzcx.png',
|
||||
title: '农贷通',
|
||||
type: '邮政银行',
|
||||
content: [
|
||||
{
|
||||
title: '一、产品简介',
|
||||
content: '向遵纪守法、诚实守信、有劳动能力的农户发放的,用于支持其生产经营性用途以及改善乡村居民生活环境的贷款。',
|
||||
},
|
||||
{
|
||||
title: '二、服务介绍',
|
||||
content:
|
||||
'适用对象:农户。<p>授信额度:单户贷款最高1000万元。</p><p>贷款期限:最长10年。</p><p>担保方式:信用、保证、抵押、质押。</p><p>利率:以各地实际利率为准。</p>',
|
||||
},
|
||||
{
|
||||
title: '三、办理渠道',
|
||||
content: '邮储银行各大开办信贷业务的网点。客户服务热线:95580。',
|
||||
},
|
||||
],
|
||||
},
|
||||
]);
|
||||
|
||||
const currentDetail = ref(mockData.value[0]);
|
||||
// #endregion
|
||||
|
||||
/* --------------- methods --------------- */
|
||||
// #region
|
||||
const goLoan = () => {
|
||||
router.push({
|
||||
path: '/sub-operation-service/finance/integratedSector/loan',
|
||||
query: { id: detailId },
|
||||
});
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
if (detailId) {
|
||||
for (let i in mockData.value) {
|
||||
if (detailId == mockData.value[i].id) {
|
||||
currentDetail.value = mockData.value[i];
|
||||
console.log(currentDetail.value);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
// #endregion
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped></style>
|
||||
<style lang="scss" scoped>
|
||||
.contents {
|
||||
text-indent: 2em;
|
||||
font-size: 18px;
|
||||
text-align: left;
|
||||
padding: 10px 20px;
|
||||
}
|
||||
.product-card {
|
||||
border-radius: 16px;
|
||||
width: 100%;
|
||||
background: linear-gradient(to top, #25bf82 -100%, #ffffff 90%);
|
||||
}
|
||||
.tags {
|
||||
font-size: 14px;
|
||||
color: #25bf82;
|
||||
div {
|
||||
margin-right: 10px;
|
||||
padding: 5px;
|
||||
border: 1px solid #25bf82;
|
||||
background-color: rgba(37, 191, 130, 0.1);
|
||||
border-radius: 8px;
|
||||
}
|
||||
}
|
||||
.subs {
|
||||
text-align: left;
|
||||
span {
|
||||
font-size: 18px;
|
||||
color: #25bf82;
|
||||
font-weight: bold;
|
||||
display: inline-block;
|
||||
max-width: 8em; /* 大约6个汉字的宽度 */
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
}
|
||||
.subTitle {
|
||||
font-size: 26px;
|
||||
color: #25bf82;
|
||||
font-weight: bold;
|
||||
}
|
||||
.subContent {
|
||||
font-size: 18px;
|
||||
}
|
||||
.titles {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.underLine {
|
||||
background-color: #25bf82;
|
||||
width: 100%;
|
||||
border-radius: 4px;
|
||||
height: 8px;
|
||||
}
|
||||
</style>
|
||||
|
@ -92,7 +92,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div style="margin: auto 0">
|
||||
<el-button style="background-color: #25bf82; color: #ffffff; border-radius: 11px; padding: 20px; font-size: 18px"> 查看详情 </el-button>
|
||||
<el-button class="detailBtn" @click="goDetail(item.id)"> 查看详情 </el-button>
|
||||
</div>
|
||||
</div>
|
||||
</el-card>
|
||||
@ -104,8 +104,8 @@
|
||||
<script setup>
|
||||
import { ref } from 'vue';
|
||||
import common from '../components/common.vue';
|
||||
import { getAssetsFile } from '../../../utils/index.js';
|
||||
|
||||
import { getAssetsFile } from '@/utils/index.js';
|
||||
import { useRoute, useRouter } from 'vue-router';
|
||||
/* --------------- data --------------- */
|
||||
// #region
|
||||
const chooseMoney = ref(0);
|
||||
@ -113,6 +113,8 @@ const chooseDate = ref(0);
|
||||
const chooseWay = ref(0);
|
||||
const chooseUse = ref(0);
|
||||
const chooseType = ref(0);
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
|
||||
const pagination = ref({
|
||||
total: 2,
|
||||
@ -178,6 +180,14 @@ const sortFunction = (type) => {};
|
||||
const getList = () => {
|
||||
console.log('刷新数据');
|
||||
};
|
||||
|
||||
const goDetail = (id) => {
|
||||
router.push({
|
||||
path: '/sub-operation-service/finance/integratedSector/detail',
|
||||
query: { id: id },
|
||||
});
|
||||
};
|
||||
|
||||
// #endregion
|
||||
</script>
|
||||
|
||||
@ -245,4 +255,11 @@ const getList = () => {
|
||||
height: 15px;
|
||||
}
|
||||
}
|
||||
.detailBtn {
|
||||
background-color: #25bf82;
|
||||
color: #ffffff;
|
||||
border-radius: 11px;
|
||||
padding: 20px;
|
||||
font-size: 18px;
|
||||
}
|
||||
</style>
|
||||
|
@ -1,18 +1,46 @@
|
||||
<template>
|
||||
<div></div>
|
||||
<div>
|
||||
<common>
|
||||
<template #main>
|
||||
<el-card style="border-radius: 16px" :body-style="{ padding: 0 }">
|
||||
<div style="padding: 20px">
|
||||
<img :src="getAssetsFile(currentPic)" style="width: 100%" alt="" />
|
||||
</div>
|
||||
</el-card>
|
||||
</template>
|
||||
</common>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref } from 'vue';
|
||||
import { onMounted, ref } from 'vue';
|
||||
import common from '../components/common.vue';
|
||||
import { getAssetsFile } from '@/utils/index.js';
|
||||
import { useRoute, useRouter } from 'vue-router';
|
||||
|
||||
/* --------------- data --------------- */
|
||||
// #region
|
||||
|
||||
const router = useRouter();
|
||||
const route = useRoute();
|
||||
|
||||
const id = route.query.id;
|
||||
|
||||
const currentPic = ref('images/finance/wydk.png');
|
||||
|
||||
// #endregion
|
||||
|
||||
/* --------------- methods --------------- */
|
||||
// #region
|
||||
|
||||
onMounted(() => {
|
||||
if (id) {
|
||||
if (id == '1') {
|
||||
currentPic.value = 'images/finance/wydk.png';
|
||||
} else if (id == '2') {
|
||||
currentPic.value = 'images/finance/wydk1.png';
|
||||
}
|
||||
}
|
||||
});
|
||||
// #endregion
|
||||
</script>
|
||||
|
||||
|
@ -17,13 +17,7 @@
|
||||
</div>
|
||||
<span :class="n.isOpen ? 'active' : ''" class="item-title">{{ n.title }}</span>
|
||||
<img v-if="n.children && n.isOpen" alt="" :src="getAssetsFile('images/smartFarm/closing.png')" class="isOpen" />
|
||||
<img
|
||||
v-if="n.children && !n.isOpen"
|
||||
alt=""
|
||||
:src="getAssetsFile('images/smartFarm/down_1@2x.png')"
|
||||
class="isOpen fz"
|
||||
@click.stop="openList(index)"
|
||||
/>
|
||||
<img v-if="n.children && !n.isOpen" alt="" :src="getAssetsFile('images/smartFarm/down_1@2x.png')" class="isOpen fz" />
|
||||
</div>
|
||||
<div v-if="n.children && n.isOpen" class="item-children">
|
||||
<div v-for="(item, indexC) in n.children" :key="indexC">
|
||||
|
Loading…
x
Reference in New Issue
Block a user