Browse Source

创新平台页面添加,冲突修改

master
aBin 5 years ago
parent
commit
226ffd8e1f
  1. 243
      package-lock.json
  2. 1
      package.json
  3. 1
      public/index.html
  4. 8
      src/App.vue
  5. BIN
      src/assets/enterprise-banner.png
  6. 12
      src/common/portrait.styl
  7. 12
      src/components/HeadNav/HeadNav.vue
  8. 48
      src/components/Introduce/ContactMap.vue
  9. 8
      src/components/Introduce/ContactUs.vue
  10. 110
      src/components/Introduce/DeriveEnterprise.vue
  11. 42
      src/components/Introduce/PartnerShip.styl
  12. 13
      src/components/Introduce/PartnerShip.vue
  13. 10
      src/config/api.js
  14. 6
      src/main.js
  15. 2
      src/plugins/ant-design-vue.js
  16. 6
      src/router/index.js
  17. 8
      src/views/About/Children/SpinOffs.vue
  18. 142
      src/views/Cart/Cart.vue

243
package-lock.json

@ -1808,6 +1808,16 @@
"integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
"dev": true
},
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"cacache": {
"version": "13.0.1",
"resolved": "https://registry.npm.taobao.org/cacache/download/cacache-13.0.1.tgz?cache=0&sync_timestamp=1594427999421&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcacache%2Fdownload%2Fcacache-13.0.1.tgz",
@ -1840,6 +1850,34 @@
"integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=",
"dev": true
},
"chalk": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
"integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true,
"optional": true
},
"css-loader": {
"version": "3.6.0",
"resolved": "https://registry.npm.taobao.org/css-loader/download/css-loader-3.6.0.tgz?cache=0&sync_timestamp=1604507107408&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-loader%2Fdownload%2Fcss-loader-3.6.0.tgz",
@ -1893,6 +1931,13 @@
"universalify": "^0.1.0"
}
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"optional": true
},
"icss-utils": {
"version": "4.1.1",
"resolved": "https://registry.npm.taobao.org/icss-utils/download/icss-utils-4.1.1.tgz?cache=0&sync_timestamp=1602527330977&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficss-utils%2Fdownload%2Ficss-utils-4.1.1.tgz",
@ -2007,6 +2052,16 @@
"minipass": "^3.1.1"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
},
"terser-webpack-plugin": {
"version": "2.3.8",
"resolved": "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-2.3.8.tgz?cache=0&sync_timestamp=1603881757308&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-2.3.8.tgz",
@ -2023,6 +2078,32 @@
"terser": "^4.6.12",
"webpack-sources": "^1.4.3"
}
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.1.2",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.1.2.tgz",
"integrity": "sha512-8QTxh+Fd+HB6fiL52iEVLKqE9N1JSlMXLR92Ijm6g8PZrwIxckgpqjPDWRP5TWxdiPaHR+alUWsnu1ShQOwt+Q==",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
}
}
}
}
},
@ -2501,7 +2582,6 @@
"version": "1.0.10",
"resolved": "https://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz",
"integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=",
"dev": true,
"requires": {
"sprintf-js": "~1.0.2"
}
@ -2962,6 +3042,34 @@
"integrity": "sha1-nyKcFb4nJFT/qXOs4NvueaGww28=",
"dev": true
},
"bmaplib.curveline": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/bmaplib.curveline/-/bmaplib.curveline-1.0.0.tgz",
"integrity": "sha512-9wcFMVhiYxNPqpvsLDAADn3qDhNzXp2mA6VyHSHg2XOAgSooC7ZiujdFhy0sp+0QYjTfJ/MjmLuNoUg2HHxH4Q=="
},
"bmaplib.heatmap": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/bmaplib.heatmap/-/bmaplib.heatmap-1.0.4.tgz",
"integrity": "sha512-rmhqUARBpUSJ9jXzUI2j7dIOqnc38bqubkx/8a349U2qtw/ulLUwyzRD535OrA8G7w5cz4aPKm6/rNvUAarg/Q=="
},
"bmaplib.lushu": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/bmaplib.lushu/-/bmaplib.lushu-1.0.7.tgz",
"integrity": "sha512-LVvgpESPii6xGxyjnQjq8u+ic4NjvhdCPV/RiSS/PGTUdZKeTDS7prSpleJLZH3ES0+oc0gYn8bw0LtPYUSz2w=="
},
"bmaplib.markerclusterer": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/bmaplib.markerclusterer/-/bmaplib.markerclusterer-1.0.13.tgz",
"integrity": "sha512-VrLyWSiuDEVNi0yUfwOhFQ6z1oEEHS4w36GNu3iASu6p52QIx9uAXMUkuSCHReNR0bj2Cp9SA1dSx5RpojXajQ==",
"requires": {
"bmaplib.texticonoverlay": "^1.0.2"
}
},
"bmaplib.texticonoverlay": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/bmaplib.texticonoverlay/-/bmaplib.texticonoverlay-1.0.2.tgz",
"integrity": "sha512-4ZTWr4ZP3B6qEWput5Tut16CfZgII38YwM3bpyb4gFTQyORlKYryFp9WHWrwZZaHlOyYDAXG9SX0hka43jTADg=="
},
"bn.js": {
"version": "5.1.3",
"resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-5.1.3.tgz",
@ -7818,6 +7926,14 @@
"integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
"dev": true
},
"linkify-it": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz",
"integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==",
"requires": {
"uc.micro": "^1.0.1"
}
},
"loader-fs-cache": {
"version": "1.0.3",
"resolved": "https://registry.npm.taobao.org/loader-fs-cache/download/loader-fs-cache-1.0.3.tgz",
@ -8047,6 +8163,25 @@
"object-visit": "^1.0.0"
}
},
"markdown-it": {
"version": "8.4.2",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz",
"integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==",
"requires": {
"argparse": "^1.0.7",
"entities": "~1.1.1",
"linkify-it": "^2.0.0",
"mdurl": "^1.0.1",
"uc.micro": "^1.0.5"
},
"dependencies": {
"entities": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
"integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="
}
}
},
"md5.js": {
"version": "1.3.5",
"resolved": "https://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz",
@ -8064,6 +8199,11 @@
"integrity": "sha1-aZs8OKxvHXKAkaZGULZdOIUC/Vs=",
"dev": true
},
"mdurl": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
"integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4="
},
"media-typer": {
"version": "0.3.0",
"resolved": "https://registry.npm.taobao.org/media-typer/download/media-typer-0.3.0.tgz",
@ -11173,8 +11313,7 @@
"sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
"dev": true
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
},
"sshpk": {
"version": "1.16.1",
@ -12171,6 +12310,11 @@
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
"dev": true
},
"uc.micro": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
"integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA=="
},
"uglify-js": {
"version": "3.4.10",
"resolved": "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.4.10.tgz",
@ -12509,6 +12653,18 @@
"resolved": "https://registry.npm.taobao.org/vue/download/vue-2.6.12.tgz",
"integrity": "sha1-9evU+mvShpQD4pqJau1JBEVskSM="
},
"vue-baidu-map": {
"version": "0.21.22",
"resolved": "https://registry.npmjs.org/vue-baidu-map/-/vue-baidu-map-0.21.22.tgz",
"integrity": "sha512-WQMPCih4UTh0AZCKKH/OVOYnyAWjfRNeK6BIeoLmscyY5aF8zzlJhz/NOHLb3mdztIpB0Z6aohn4Jd9mfCSjQw==",
"requires": {
"bmaplib.curveline": "^1.0.0",
"bmaplib.heatmap": "^1.0.4",
"bmaplib.lushu": "^1.0.7",
"bmaplib.markerclusterer": "^1.0.13",
"markdown-it": "^8.4.0"
}
},
"vue-cli-plugin-ant-design": {
"version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/vue-cli-plugin-ant-design/download/vue-cli-plugin-ant-design-1.0.1.tgz",
@ -12582,87 +12738,6 @@
}
}
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.1.2",
"resolved": "https://registry.npm.taobao.org/vue-loader/download/vue-loader-16.1.2.tgz?cache=0&sync_timestamp=1608188050165&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-loader%2Fdownload%2Fvue-loader-16.1.2.tgz",
"integrity": "sha1-XAO2xQ0qX5g8fOuhXFDXjKKymPQ=",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1606792302448&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.0",
"resolved": "https://registry.npm.taobao.org/chalk/download/chalk-4.1.0.tgz",
"integrity": "sha1-ThSHCmGNni7dl92DRf2dncMVZGo=",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true,
"optional": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz",
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
"dev": true,
"optional": true
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
"integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.2.0.tgz",
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
}
}
},
"vue-quill-editor": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/vue-quill-editor/-/vue-quill-editor-3.0.6.tgz",

1
package.json

@ -17,6 +17,7 @@
"register-service-worker": "^1.7.1",
"stylus": "^0.54.8",
"vue": "^2.6.11",
"vue-baidu-map": "^0.21.22",
"vue-dompurify-html": "^2.3.0",
"vue-quill-editor": "^3.0.6",
"vue-router": "^3.2.0",

1
public/index.html

@ -6,6 +6,7 @@
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= htmlWebpackPlugin.options.title %></title>
<script type="text/javascript" src="//api.map.baidu.com/api?v=2.0&ak=KPWvSuCuXmgphVhYM6tVHmlkav3TGpu5"></script>
</head>
<body>
<noscript>

8
src/App.vue

@ -94,4 +94,12 @@ body::-webkit-scrollbar {
background: url('assets/t-top.png') center no-repeat;
background-size: contain;
}
.BMap_cpyCtrl {
display: none;
}
.anchorBL {
display: none;
}
</style>

BIN
src/assets/enterprise-banner.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

12
src/common/portrait.styl

@ -47,6 +47,11 @@
padding-bottom: 20px;
}
.py-10{
padding-top: 40px;
padding-bottom: 40px;
}
// margin
.ma-3 {
margin: 12px;
@ -326,6 +331,11 @@
font-size: 20px;
}
.font-bold-20{
font-size: 20px;
font-weight: bold;
}
.font-bold-16{
font-size: 16px;
font-weight: bold;
@ -358,8 +368,6 @@ h2{
color: rgba(0,0,0,.85)
}
.baseColor{
color: #13ACC4
}

12
src/components/HeadNav/HeadNav.vue

@ -20,7 +20,17 @@
</a-dropdown>
</div>
<a-icon class="icon-head" style="right: 150px" type="search" />
<a-icon class="icon-head baseColor" style="right: 100px" type="shopping-cart" />
<a-tooltip placement="bottom">
<template slot="title">
<span>点击查看购物车</span>
</template>
<a-icon
@click="$router.push('/Cart')"
class="icon-head baseColor"
style="right: 100px"
type="shopping-cart"
/>
</a-tooltip>
<router-link tag="span" to="/login">
<a-icon class="icon-head" style="right: 50px" type="user" />
</router-link>

48
src/components/Introduce/ContactMap.vue

@ -0,0 +1,48 @@
<!--
Copyright (c) 2020.
author: song
email: 15235360226@163.com
-->
<template>
<!--百度地图容器-->
<div id="map" style="width:100%;height:392px;"></div>
</template>
<script>
export default {
name: 'ContactMap',
components: {},
data() {
return {};
},
mounted() {
// API
var map = new BMap.Map('map'); // Map
// ,
var point = new BMap.Point(112.549977, 37.794254);
map.centerAndZoom(point, 18);
var marker = new BMap.Marker(point); //
// marker.setTitle('绿');
map.addOverlay(marker); //
var content = '<table>';
content = content + '<tr><td> 绿谷生物</td></tr>';
content = content + '<tr><td></td></tr>';
content = content + '<tr><td> 山西省太原市晋阳街202号英语周报大厦八层</td></tr>';
content += '</table>';
var infowindow = new BMap.InfoWindow(content);
marker.openInfoWindow(infowindow);
// nulladdOverlay
marker.setAnimation(Animation);
//
map.addControl(new BMap.MapTypeControl({ mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP] }));
map.setCurrentCity('太原'); //
map.enableScrollWheelZoom(true); //
},
methods: {},
};
</script>
<style lang="stylus" scoped></style>

8
src/components/Introduce/ContactUs.vue

@ -7,7 +7,7 @@
<template>
<div>
<div class="contact d-flex flex-nowrap">
<img :src="img" alt class="contact-img flex-1" />
<contact-map class="flex-1" />
<div class="contact-right">
<div>
<a-icon class="baseColor icon-size" type="user" />
@ -44,9 +44,11 @@
</template>
<script>
import ContactMap from './ContactMap.vue';
export default {
name: 'RichText',
components: {},
components: { ContactMap },
data() {
return {
sort: [
@ -64,7 +66,7 @@ export default {
<style lang="stylus" scoped>
.contact {
height: 444px;
height: 394px;
position: relative;
border: 1px solid rgba(112, 112, 112, 0.14901960784313725);
background: #fff;

110
src/components/Introduce/DeriveEnterprise.vue

@ -5,28 +5,39 @@
-->
<template>
<div class="d-flex flex-wrap" v-if="newPartners && newPartners.length > 0">
<div
:class="(index+1)%3===0? 'enterprise-box1' : ''"
:key="index"
@click="openProfile(item.name,item.description)"
class="enterprise-box d-flex flex-column align-center white mb-8"
v-for="(item,index) in newPartners"
>
<img :src="item.logoUrl" class="enterprise-pic my-2" />
<div class="font-bold-24 title-color my-2">{{ item.name }}</div>
<div class="enterprise-bg" v-if="newPartners && newPartners.length > 0">
<div class="d-flex flex-wrap inner py-10">
<div
class="font-16 textColor d-flex flex-wrap align-left fill-width px-3"
>{{ item.description }}</div>
<div class="d-flex flex-nowrap fill-width mr-3">
<div class="flex-1"></div>
<span class="baseColor">
了解更多
<a-icon type="arrow-right" />
</span>
:class="(index+1)%3===0? 'enterprise-box1' : ''"
:key="index"
@click="openProfile(item.name,item.description)"
class="enterprise-box d-flex flex-column align-center white mb-8"
v-for="(item,index) in newPartners"
>
<img :src="item.logoUrl" class="enterprise-pic my-2" />
<div class="font-bold-24 title-color my-2">{{ item.name }}</div>
<div
class="font-16 textColor d-flex flex-wrap align-left fill-width enterprise-txt"
>{{ item.description }}</div>
<div class="d-flex flex-nowrap fill-width py-5 enterprise-more">
<div class="flex-1"></div>
<span class="font-16 baseColor">
了解更多
<a-icon type="arrow-right" />
</span>
</div>
</div>
<company-profile :show-profile="showProfile" @closeProfile="closeProfile" v-if="showProfile" />
</div>
<div class="inner d-flex flex-row-reverse pb-10 enterprise-page">
<a-pagination
:default-page-size="6"
:total="newPartners.length"
@change="onChange"
show-less-items
v-model="current"
/>
</div>
<company-profile :showProfile="showProfile" @closeProfile="closeProfile" v-if="showProfile" />
</div>
</template>
@ -34,8 +45,8 @@
import { mapState, mapMutations, mapActions } from 'vuex';
import CompanyProfile from './CompanyProfile.vue';
export default {
components: { CompanyProfile },
name: 'DeriveEnterprise',
components: { CompanyProfile },
props: {
title: {
type: String,
@ -49,55 +60,14 @@ export default {
data() {
return {
current: 1,
showProfile: false, //
partners: [
{
typeOfTech: 2,
backendSearchList: [
{
description: '我是好人,谁是好人',
logo: 300,
logoUrl: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
name: '传控电子科技',
type: 1,
typeOfPlatform: 2,
typeOfTech: 2,
},
{
description: '我是好人,谁是好人',
logo: 300,
logoUrl: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
name: '传控电子科技',
type: 1,
typeOfPlatform: 2,
typeOfTech: 2,
},
{
description: '我是好人,谁是好人',
logo: 300,
logoUrl: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
name: '传控电子科技',
type: 1,
typeOfPlatform: 2,
typeOfTech: 2,
},
{
description: '我是好人,谁是好人',
logo: 300,
logoUrl: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
name: '传控电子科技',
type: 1,
typeOfPlatform: 2,
typeOfTech: 2,
},
],
},
],
};
},
computed: {
...mapState('home', ['profile']), //'partners',
...mapState('home', ['partners', 'profile']),
newPartners() {
let { partners } = this;
let arr = [];
@ -111,6 +81,7 @@ export default {
}
return arr;
}
return arr;
},
},
@ -119,20 +90,24 @@ export default {
const { title, typeOfPlatform } = this;
const params = {
param: {
pageNum: 1,
pageSize: 1,
pageNum: this.current,
pageSize: 6,
type: title === '合作伙伴' ? 1 : 2,
typeOfPlatform: typeOfPlatform === '关于我们' ? 2 : 1,
},
};
await this.getFrontSearchCompany(params);
console.log(this.newPartners);
},
methods: {
...mapMutations('home', ['setPartners', 'setProfile']),
...mapActions('home', ['getFrontSearchCompany']),
//
onChange(current) {
this.current = current;
},
//
openProfile(title, description) {
this.setProfile(null);
@ -141,7 +116,6 @@ export default {
description,
};
this.setProfile(profile);
console.log(this.profile);
this.showProfile = true;
},

42
src/components/Introduce/PartnerShip.styl

@ -16,18 +16,50 @@
}
//
.enterprise-bg{
width: 100%;
background: url('../../assets/enterprise-banner.png') right no-repeat;
background-size: 100% 100%;
}
.enterprise-box{
width: 22%;
// height: 113px;
margin-right: 17%;
border-radius: 4px;
box-shadow: 6px 6px 6px #eee;
width: 26%;
height: 382px;
margin-right: 11%;
position: relative;
padding: 0 16px;
.enterprise-pic{
height: 166px
}
.enterprise-txt{
display: -webkit-box;
overflow: hidden;
white-space: normal !important;
text-overflow: ellipsis;
word-wrap: break-word;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
text-align: justify;
line-height: 28px;
}
.enterprise-more{
position: absolute;
bottom: 0;
right: 12px;
}
}
.enterprise-box1{
margin-right: 0!important;
}
.enterprise-page >>> .ant-pagination-item-active{
background: #13ACC4;
}
.enterprise-page >>> .ant-pagination-item-active a{
color: #fff;
}

13
src/components/Introduce/PartnerShip.vue

@ -9,7 +9,7 @@
<div :key="index" class="mb-4" v-for="(item,index) in partners">
<p
class="font-bold-24 title-color"
>{{ item.typeOfTech===0 ? '高校' : item.typeOfTech===1 ? '院所' : '企业'}}</p>
>{{ item.typeOfTech===0 ? '高校' : item.typeOfTech===1 ? '院所' : '企业' }}</p>
<div
class="d-flex flex-wrap"
v-if="item.backendSearchList && item.backendSearchList.length > 0"
@ -26,7 +26,7 @@
</div>
</div>
</div>
<company-profile :showProfile="showProfile" @closeProfile="closeProfile" v-if="showProfile" />
<company-profile :show-profile="showProfile" @closeProfile="closeProfile" v-if="showProfile" />
</div>
</template>
@ -34,8 +34,8 @@
import { mapState, mapMutations, mapActions } from 'vuex';
import CompanyProfile from './CompanyProfile.vue';
export default {
components: { CompanyProfile },
name: 'PartnerShip',
components: { CompanyProfile },
props: {
title: {
type: String,
@ -48,9 +48,7 @@ export default {
},
data() {
return {
showProfile: false, //
};
return { showProfile: false };
},
computed: mapState('home', ['partners', 'profile']),
@ -61,7 +59,7 @@ export default {
const params = {
param: {
pageNum: 1,
pageSize: 1,
// pageSize: -1,
type: title === '合作伙伴' ? 1 : 2,
typeOfPlatform: typeOfPlatform === '关于我们' ? 2 : 1,
},
@ -81,7 +79,6 @@ export default {
description,
};
this.setProfile(profile);
console.log(this.profile);
this.showProfile = true;
},

10
src/config/api.js

@ -14,6 +14,7 @@ const Business = `${greenvalley}/Business`; // 衍生企业和合作伙伴查询
const carousel = `${greenvalley}/carousel`; // 轮播图相关接口
const page = `${greenvalley}/page`; // 页面详情相关接口
const achInstr = `${greenvalley}/achInstr`; // 轮播图相关接口
const service = `${greenvalley}/service`; // 服务相关接口
// websocket基础地址
export const WS_BASE_URL = msgUrl;
@ -53,9 +54,10 @@ export const frontSearchCompany = params => axios.post(`${Business}/FrontSearchC
// 介绍页面详情查询
export const getPageDetail = params => axios.post(`${page}/detail`, params);
export const FrontSearchCompany = params => axios.post(`${Business}/FrontSearchCompany`, params);
// 分类查询
export const selModel = params => axios.post(`${achInstr}/selModel`, params);
// 仪器列表查询
export const selInstrument = params => axios.post(`${achInstr}/selInstrument`, params);
// 仪器详情查询
@ -66,9 +68,15 @@ export const selInstrumentByRes = params => axios.post(`${achInstr}/selInstrumen
export const searchFront = params => axios.post(`${greenvalley}/institute/searchFront`, params);
// 研究院团队详情查询
export const teamSearch = params => axios.post(`${greenvalley}/teamGuide/teamSearch`, params);
// 成果列表查询
export const selRes = params => axios.post(`${achInstr}/selRes`, params);
// 成果详情查询
export const selResMes = params => axios.post(`${achInstr}/selResMes`, params);
// 服务列表查询
export const selService = params => axios.post(`${greenvalley}/serviceProject/selService`, params);
// 查询用户购物车
export const SearchCar = params => axios.post(`${service}/SearchCar`, params);

6
src/main.js

@ -12,6 +12,7 @@ import './assets/icon/iconfont.css';
import VueDOMPurifyHTML from 'vue-dompurify-html';
import moment from 'moment'; //导入文件
import echarts from 'echarts';
import BaiduMap from 'vue-baidu-map';
Vue.prototype.$moment = moment; //赋值使用
Vue.prototype.$echarts = echarts;
@ -20,6 +21,11 @@ Vue.config.productionTip = false;
Vue.use(VueDOMPurifyHTML);
Vue.use(BaiduMap, {
/* Visit http://lbsyun.baidu.com/apiconsole/key for details about app key. */
ak: 'YOUR_APP_KEY',
});
window.vm = new Vue({
router,
store,

2
src/plugins/ant-design-vue.js

@ -30,6 +30,7 @@ import {
Avatar,
Layout,
Breadcrumb,
Tooltip,
} from 'ant-design-vue';
import { ConfigProvider } from 'ant-design-vue';
Vue.component(ConfigProvider.name, ConfigProvider);
@ -61,6 +62,7 @@ Vue.use(Carousel);
Vue.use(Avatar);
Vue.use(Layout);
Vue.use(Breadcrumb);
Vue.use(Tooltip);
Vue.prototype.$message = message;
Vue.prototype.$notification = notification;

6
src/router/index.js

@ -175,6 +175,12 @@ const routes = [
},
],
},
// 购物车
{
path: '/Cart',
name: 'Cart',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Cart/Cart.vue'),
},
];
const router = new VueRouter({

8
src/views/About/Children/SpinOffs.vue

@ -3,9 +3,9 @@
<h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
<div class="py-5">
<derive-enterprise :title="title" :type-ofP-platform="typeOfPlatform" />
</div>
</div>
<div>
<derive-enterprise :title="title" :type-of-platform="typeOfPlatform" />
</div>
</div>
</template>
@ -34,6 +34,6 @@ export default {
<style lang="stylus" scoped>
.inner {
margin: 40px auto;
margin: 10px auto 15px;
}
</style>

142
src/views/Cart/Cart.vue

@ -0,0 +1,142 @@
<!--
Copyright (c) 2020.
author: song
email: 15235360226@163.com
-->
<template>
<div class="inner">
<bread-crumb :arr="arr" class="pb-5 mb-5" />
<div class="white pa-5 mb-5 d-flex flex-nowrap align-center justify-space-between">
<div>
<span class="font-16 textColor">联系人</span>
<a-input :default-value="name" style="width:auto" />
</div>
<div>
<span class="font-16 textColor">联系电话</span>
<a-input :default-value="phone" style="width:auto" />
</div>
<div>
<span class="font-16 textColor">公司名称</span>
<a-input :default-value="company" style="width:200px" />
</div>
</div>
<div class="cart-box">
<div :key="list.id" class="d-flex flex-column pa-5 white div-box mb-8" v-for="list in lists">
<p class="font-bold-20 title-color">{{ list.title }}</p>
<div
:key="index"
@click="jumpDetails(item)"
class="d-flex flex-nowrap flex-row pointer mb-8"
v-for="(item, index) in list.list"
>
<img :src="item.src" class="cart-pic mr-8" />
<div class="flex-1 flex-column">
<p class="font-bold-20 title-color">{{ item.title }}</p>
<p class="font-14 textColor">{{ item.content }}</p>
</div>
</div>
</div>
</div>
<div class="d-flex flex-row-reverse pb-10">
<a-button type="primary">提交</a-button>
</div>
</div>
</template>
<script>
import { mapState, mapMutations } from 'vuex';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
import { SearchCar } from 'config/api';
export default {
name: 'Cart',
components: { BreadCrumb },
data() {
return {
arr: [{ name: '购物车', url: '' }],
name: '张三',
phone: '15233330000',
company: '山西传控电子科技有限公司',
lists: [
{
id: 1,
title: '服务',
list: [
{
src: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
title: '检验检测服务',
content: '用户填写的需求描述',
},
{
src: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
title: '检验检测服务',
content: '用户填写的需求描述',
},
],
},
{
id: 2,
title: '设备',
list: [
{
src: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
title: '检验检测服务',
content: '用户填写的需求描述',
},
{
src: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=2059927486,2456161292&fm=26&gp=0.jpg',
title: '检验检测服务',
content: '用户填写的需求描述',
},
],
},
],
};
},
computed: mapState('home', []),
created() {
this.getData();
},
methods: {
...mapMutations('home', []),
//
async getData() {
try {
const params = { param: { pageNum: 1, pageSize: 10 } };
const res = await SearchCar(params);
const { data, msg, code } = res.data;
if (code === 200) {
console.log('data: ', data);
// this.lists = data.list;
}
} catch (error) {
console.log(error);
}
},
//
jumpDetails(item) {
console.log('item: ', item);
},
},
};
</script>
<style scoped lang="stylus">
.inner {
margin: 40px auto;
}
.cart-box {
.div-box {
box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}
.cart-pic {
width: 233px;
height: 128px;
}
}
</style>
Loading…
Cancel
Save