yujialong 5 months ago
parent f093e88379
commit f2330c9a44
  1. 1
      src/api/index.js
  2. BIN
      src/assets/images/logo.png
  3. 38
      src/layouts/footer/index.vue
  4. 37
      src/layouts/header/index.vue
  5. 2
      src/mixins/article/index.js
  6. 1730
      src/pages/application/index.vue
  7. 29
      src/pages/course/index.vue
  8. 2
      src/pages/index/list/index.vue
  9. 3
      src/pages/shop/list/index.vue
  10. 0
      src/pages/shop/show/index.vue
  11. 2
      src/router/modules/index.js
  12. 26
      src/router/modules/shop.js
  13. 4
      src/setting.js

@ -24,6 +24,7 @@ export default {
seoList: `/iasf/seo/list`, seoList: `/iasf/seo/list`,
columnDisplayFloatingBar: `/iasf/SysFloatingColumnSchemeService/SysFloatingColumnScheme/columnDisplayFloatingBar`, columnDisplayFloatingBar: `/iasf/SysFloatingColumnSchemeService/SysFloatingColumnScheme/columnDisplayFloatingBar`,
showTheFooterAccordingToTheColumn: `/iasf/SysFooterSetupService/SysFooterSetup/showTheFooterAccordingToTheColumn`, showTheFooterAccordingToTheColumn: `/iasf/SysFooterSetupService/SysFooterSetup/showTheFooterAccordingToTheColumn`,
findLogo: `/iasf/LogoService/Logo/findById`,
listMarketing: `/nakadai/nakadai/mall/marketing/promotion/pagingQueryList`, listMarketing: `/nakadai/nakadai/mall/marketing/promotion/pagingQueryList`,
courseProduct: `/iasf/productDetails/courseProduct`, courseProduct: `/iasf/productDetails/courseProduct`,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

After

Width:  |  Height:  |  Size: 19 KiB

@ -118,44 +118,6 @@
</div> </div>
</template> </template>
<div v-if="showContactPath.includes($route.path)" class="contact">
<div class="inner">
<div class="title">
<h6>Contact us</h6>
<p class="text">CONTACT US</p>
</div>
<div class="region">
<img class="dot" src="@/assets/images/dot.png" alt="">
<p class="name">Shenzhen</p>
</div>
<div class="info">
<!-- <img class="logo"
src="@/assets/images/logo.png"
alt=""> -->
<div class="texts">
<div class="lines">
<div class="line">
<img class="icon" src="@/assets/images/mail.png" alt="">
Email: {{ isSfel ? 'fel@mail.iasf.ac.cn' : 'std@mail.iasf.ac.cn' }}
</div>
<div class="line">
<img class="icon" src="@/assets/images/tel.png" alt="">
Telephone: {{ isSfel ? '0755-21096052' : '0086-755-21096026' }}
</div>
<div class="line">
<img class="icon" src="@/assets/images/address.png" alt="">
Address: {{ isSfel ? '自由电子激光工程经理部' :
'268 Zhenyuan St, Building A3, Floor 3-6, Guangming District, Shenzhen, Guangdong, P.R.China' }}
</div>
</div>
<div class="qrcode">
<!-- <img src="@/assets/images/about/qrcode.png" alt=""> -->
</div>
</div>
</div>
</div>
</div>
<div class="tool"> <div class="tool">
<div v-for="(item, i) in floatings" :key="i" class="float"> <div v-for="(item, i) in floatings" :key="i" class="float">
<div class="item" :style="{ backgroundImage: 'url(' + item.pictureAddress + ')' }"></div> <div class="item" :style="{ backgroundImage: 'url(' + item.pictureAddress + ')' }"></div>

@ -1,12 +1,10 @@
<template> <template>
<div :class="['header', { channel: isHome, estate: isEstate, iasf: isIasf }]"> <div :class="['header', { channel: isHome, estate: isEstate, iasf: isIasf }]">
<a class="logo" @click="toIndex"> <a class="logo" @click="toIndex">
<template v-if="GTA"> <template>
<img src="@/assets/images/logo2.png" alt=""> <img :src="logoForm.logoUrl" alt="">
产业学院平台 {{ logoForm.title }}
</template> </template>
<img v-else src="@/assets/images/logo.png" alt="">
</a> </a>
<!-- pc端 --> <!-- pc端 -->
<template v-if="$store.getters.getModelType"> <template v-if="$store.getters.getModelType">
@ -50,6 +48,10 @@ export default {
modelType: false, modelType: false,
navShow: true, navShow: true,
qrcodeVisible: false, qrcodeVisible: false,
logoForm: {
title: '',
logoUrl: require('@/assets/images/logo.png')
},
}; };
}, },
components: { components: {
@ -79,6 +81,7 @@ export default {
window.removeEventListener('scroll', this.handleScroll) window.removeEventListener('scroll', this.handleScroll)
}, },
mounted () { mounted () {
this.getLogo()
this.setKeyword('') this.setKeyword('')
window.addEventListener('scroll', this.handleScroll) // window.addEventListener('scroll', this.handleScroll) //
document.body.addEventListener('click', e => { document.body.addEventListener('click', e => {
@ -90,12 +93,17 @@ export default {
...mapMutations('content', [ ...mapMutations('content', [
'setKeyword' 'setKeyword'
]), ]),
// logo
async getLogo () {
const res = await this.$post(`${this.api.findLogo}?siteId=${this.site}`)
if (res.data) {
this.logoForm = res.data
}
},
toIndex () { toIndex () {
this.$refs.nav.jump() this.$refs.nav.jump()
}, },
stop () { stop () { },
},
/** /**
* pc端下,当导航栏条目大于10的情况下,显示更多按钮 * pc端下,当导航栏条目大于10的情况下,显示更多按钮
* type : true显示,false隐藏 * type : true显示,false隐藏
@ -146,7 +154,11 @@ export default {
if (this.GTA) { if (this.GTA) {
window.open('https://izhixinyun.com/#/login') window.open('https://izhixinyun.com/#/login')
} else { } else {
this.qrcodeVisible = true if (this.site == 7) {
window.open('https://www.occupationlab.com/#/login')
} else {
this.qrcodeVisible = true
}
} }
}, },
// //
@ -195,13 +207,14 @@ $height: 90px;
.logo { .logo {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
font-size: 20px; font-size: 18px;
font-weight: 600; font-weight: 700;
color: #333; color: #333;
cursor: pointer; cursor: pointer;
img { img {
width: 150px; max-height: 50px;
margin-right: 10px;
} }
} }

@ -8,7 +8,7 @@ export default {
}, },
computed: { computed: {
site () { site () {
return this.$route.query.siteId || this.$store.state.content.site return this.$route.query.siteId || (location.href.includes('eduvessel') ? 7 : 1)
} }
}, },
mounted () { mounted () {

File diff suppressed because it is too large Load Diff

@ -36,6 +36,11 @@
:class="{ active: form.classificationTagId === item.categoryId }" @click="changeType(item.categoryId)"> :class="{ active: form.classificationTagId === item.categoryId }" @click="changeType(item.categoryId)">
{{ item.name }}</dd> {{ item.name }}</dd>
</dl> </dl>
<dl>
<dt>是否免费</dt>
<dd v-for="(item, i) in types" :key="i" :class="{ active: form.courseType === item.id }"
@click="changeCourseType(item.id)">{{ item.name }}</dd>
</dl>
</div> </div>
<div class="courses"> <div class="courses">
@ -92,9 +97,24 @@ export default {
value: 'id', value: 'id',
label: 'columnName' label: 'columnName'
}, },
types: [
{
id: '',
name: '不限'
},
{
id: 1,
name: '免费'
},
{
id: 0,
name: '付费'
}
],
form: { form: {
categoryId: '', categoryId: '',
classificationTagId: '' classificationTagId: '',
courseType: '',
}, },
categories: [], categories: [],
classifications: [], classifications: [],
@ -147,7 +167,7 @@ export default {
pageNum: this.page, pageNum: this.page,
pageSize: this.pageSize, pageSize: this.pageSize,
columnId: this.id, columnId: this.id,
keyWord: this.keyword keyWord: this.keyword,
}).then(({ data }) => { }).then(({ data }) => {
this.list = data.records this.list = data.records
this.total = +data.total this.total = +data.total
@ -238,6 +258,11 @@ export default {
this.form.classificationTagId = id this.form.classificationTagId = id
this.initData() this.initData()
}, },
//
changeCourseType (id) {
this.form.courseType = id
this.initData()
},
handleCurrentChange (val) { handleCurrentChange (val) {
this.page = val this.page = val
this.getData() this.getData()

@ -8,7 +8,7 @@
<el-carousel-item v-if="item.pic && item.isEnable" :key="i"> <el-carousel-item v-if="item.pic && item.isEnable" :key="i">
<div class="pic" :style="{ backgroundImage: 'url(' + item.pic + ')' }"></div> <div class="pic" :style="{ backgroundImage: 'url(' + item.pic + ')' }"></div>
<div class="text-wrap"> <div class="text-wrap">
<div v-if="!GTA && !i" class="qrcode-wrap"> <div v-if="!GTA && site == 1 && !i" class="qrcode-wrap">
<img class="qrcode" src="https://occupationlab.com/images/mini-program.jpg" alt=""> <img class="qrcode" src="https://occupationlab.com/images/mini-program.jpg" alt="">
<p class="text">扫小程序下单</p> <p class="text">扫小程序下单</p>
</div> </div>

@ -363,6 +363,7 @@ export default {
} }
}).catch(err => { }) }).catch(err => { })
}, },
// //
getData () { getData () {
this.loadIns = Loading.service() this.loadIns = Loading.service()
@ -505,7 +506,7 @@ export default {
}, },
// //
toDetail (id) { toDetail (id) {
this.$router.push(`/index/show?id=${id}`); this.$router.push(`/shop/show?id=${id}`);
} }
} }
}; };

@ -2,8 +2,6 @@ import BasicLayout from "@/layouts/home";
const meta = {}; const meta = {};
const pre = "index-";
export default { export default {
path: "/index", path: "/index",
name: "index", name: "index",

@ -0,0 +1,26 @@
import BasicLayout from "@/layouts/home";
const meta = {};
export default {
path: "/shop",
name: "shop",
redirect: {
name: `shop`
},
meta,
component: BasicLayout,
children: [
{
name: 'shop',
path: `/shop`,
component: () => import("@/pages/shop/list"),
meta: { title: "职站商城" }
},
{
path: `show`,
component: () => import("@/pages/shop/show"),
meta: { title: "产品详情" }
},
]
};

@ -7,7 +7,7 @@ const isGta = url.includes('139.159.254.212'); // 国泰安
let host = `${location.origin}/` let host = `${location.origin}/`
if (isDev) { if (isDev) {
host = 'http://192.168.31.217:10000/' host = 'http://192.168.31.217:10000/'
host = 'https://huorantech.com' // host = 'https://huorantech.com'
// host = 'http://139.159.254.212/' // host = 'http://139.159.254.212/'
} }
@ -18,7 +18,7 @@ const Setting = {
titleSuffix: '深圳或然科技官网', // 网页标题的后缀 titleSuffix: '深圳或然科技官网', // 网页标题的后缀
routerMode: "hash", // 路由模式,可选值为 history 或 hash routerMode: "hash", // 路由模式,可选值为 history 或 hash
apiBaseURL: host, // 接口请求地址 apiBaseURL: host, // 接口请求地址
huoranApi: `http://121.37.12.51`, huoranApi: `https://occupationlab.com`,
autoLogoutTime: 3600000, // 长时间未操作,自动退出登录时间 autoLogoutTime: 3600000, // 长时间未操作,自动退出登录时间
modalDuration: 3, // 接口请求返回错误时,弹窗的持续时间,单位:秒 modalDuration: 3, // 接口请求返回错误时,弹窗的持续时间,单位:秒
errorModalType: "Message", // 接口请求返回错误时,弹窗的类型,可选值为 Message 或 Notice errorModalType: "Message", // 接口请求返回错误时,弹窗的类型,可选值为 Message 或 Notice

Loading…
Cancel
Save