修改tooId字段,给未设置大小的图片设置默认值、避免重绘,

main
hcj 10 months ago
parent 10528a725b
commit e13cbdabec
  1. 4
      .env.production
  2. 20
      .env.staging
  3. 3
      package.json
  4. 148
      src/page/common/pagecomponent/commonfooter_new.vue
  5. 542
      src/page/common/pagecomponent/commonheader.vue
  6. 7
      src/page/homepage/home/home.vue
  7. 74
      src/page/homepage/traininstitute/teacherDetail.vue
  8. 6
      src/page/personalpage/testmanagement/mytool.vue
  9. 2
      vue.config.js

@ -9,6 +9,6 @@ VUE_APP_BASE_API = '/prod-api'
# VUE_APP_BASE_TARGET = 'https://www.keyitest.cn/prod-api'
# VUE_APP_BASE_TARGET = 'http://www.bjkeyware.com/test-api'
# VUE_APP_BASE_TARGET = 'http://www.bjkeyware.com/prod-api'
VUE_APP_BASE_TARGET = 'https://www.bjkeyware.com/prod-api'
VUE_APP_BASE_TARGET = 'http://192.168.0.229:9999'
# VUE_APP_BASE_TARGET = 'http://192.168.0.229:9999'

@ -1,7 +1,17 @@
NODE_ENV = production
# 测试环境配置
ENV = 'staging'
ENV = 'development'
# KeySaas测试云平台/开发环境
VUE_APP_BASE_API = '/prod-api'
VUE_APP_BASE_TARGET = 'http://192.168.0.229:9999'
# VUE_APP_BASE_TARGET = 'http://192.168.0.129:9999'
# VUE_APP_BASE_TARGET = 'http://172.16.36.180:9999'
# VUE_APP_BASE_TARGET = 'http://172.16.36.176:9998'
# VUE_APP_BASE_TARGET = 'https://www.keyitest.cn/test-api'
# VUE_APP_BASE_TARGET = 'http://www.bjkeyware.com/test-api'
# KeySaas测试云平台/测试环境
VUE_APP_BASE_API = '/stage-api'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true

@ -37,7 +37,8 @@
"devDependencies": {
"@vue/cli-plugin-babel": "^3.0.0-rc.5",
"@vue/cli-service": "^3.0.0-rc.5",
"vue-template-compiler": "^2.5.16"
"vue-template-compiler": "^2.5.16",
"webpack-bundle-analyzer": "^4.10.2"
},
"postcss": {
"plugins": {

@ -0,0 +1,148 @@
<template>
<!-- 尾部 -->
<div>
<div style="background: #0a1f33; color: #ffffff; height: 270px; margin-top: -1px">
<div style="display: flex; width: 1200px; margin: 0 auto; height: 180px; justify-content: space-between">
<div style="line-height: 180px">
<el-link :underline="false" @click="openurl('/')">首页</el-link>
<el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/market')">工具服务</el-link>
<el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/crowdsourcing')">众包服务</el-link>
<el-divider direction="vertical"></el-divider>
<!-- <el-link :underline="false" @click="stepurl('http://train.keyitest.cn/')">培训学院</el-link> -->
<el-link :underline="false" @click="openurl('/ability')">人才服务</el-link>
<el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/college')">培训服务</el-link>
<el-divider direction="vertical"></el-divider>
<!-- <el-link :underline="false" @click="openurl('/news')">行业动态</el-link>
<el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/employ')">人员聘用</el-link>
<el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/cooperation')">合作伙伴</el-link>
<el-divider direction="vertical"></el-divider> -->
<el-link :underline="false" @click="openurl('/about')">关于我们</el-link>
<!-- <el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/aboutus/joinus')">加入我们</el-link>
<el-divider direction="vertical"></el-divider>
<el-link :underline="false" @click="openurl('/home')">招聘信息</el-link> -->
</div>
<div class="vider">
<el-divider direction="vertical"></el-divider>
</div>
<div style="display: flex; font-size: 14px; cursor: pointer">
<img style="width: 100px; height: 100px; margin-top: 40px; margin-right: 35px"
src="/assets/homepage/xcx.jpg" alt="" />
<img style="width: 100px; height: 100px; margin-top: 40px" src="/assets/home/erweima.jpg" alt="" />
<div style="
margin-left: 25px;
color: #bfbfbf;
display: flex;
flex-direction: column;
justify-content: center;
">
<p>联系我们</p>
<div style="display: flex; align-items: center; margin: 10px 0">
<p>咨询热线010-80750213</p>
</div>
<div style="display: flex; align-items: center">
<p>邮箱keyware@keyware.com.cn</p>
</div>
</div>
</div>
</div>
<el-divider></el-divider>
<div class="bottoaxwa" style="text-align: center; color: #b3b3b3; opacity: 0.7; margin-top: 30px">
<img src="/assets/home/plice.png" style="width: 20px; height: 20px" alt="" />
<a target="_blank" style="margin-right: 10px"
href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=11011402054123">京公网安备11011402054123号</a>
<a target="_blank" href="https://beian.miit.gov.cn">京ICP备18018633号-3</a>
</div>
<img class="footer" id="gotoTop" @click="gotoTop" src="/assets/home/gtop.png" alt="" />
</div>
</div>
</template>
<script>
import $ from 'jquery'
export default {
data() {
return {}
},
mounted() {
// this.gotoTop(600)
},
methods: {
openurl(url) {
// console.log(url)
// window.open(url,'_blank')
this.$router.push(url)
},
stepurl(url) {
window.open(url, '_blank')
},
gotoTop() {
let scoHeight = document.documentElement.scrollTop
// console.log(scoHeight);
// while (scoHeight > 0) {
// window.requestAnimationFrame(() => {
// document.documentElement.scrollTop = scoHeight - 10;
// })
// }
},
},
}
</script>
<style scoped>
* {
margin: 0;
padding: 0;
}
.el-link.el-link--default {
font-size: 14px;
color: #b3b3b3;
}
.el-divider {
background-color: #b3b3b3;
margin: 0 20px;
background: #ffffff;
opacity: 0.5;
}
.vider>>>.el-divider--vertical {
height: 130px;
background: #ffffff;
opacity: 0.23;
margin: 25px 30px;
}
.el-divider--horizontal {
margin: 0;
background: #ffffff;
opacity: 0.23;
}
.footer {
position: fixed;
right: 50px;
bottom: 50px;
/* width: 50px;
height: 50px; */
/* display: none; */
}
.bottoaxwa {
display: flex;
align-items: center;
justify-content: center;
}
.bottoaxwa a {
text-decoration: none;
color: #b3b3b3;
}
</style>

@ -34,27 +34,29 @@
</span>
</el-menu>
</div> -->
<div v-if="menulist&&menulist.length>0" class='headermenu'>
<div v-if="menulist && menulist.length > 0" class='headermenu'>
<div v-for="(item, key) in menulist" :key="key" class="topmenuitem">
<a v-if="item.stepHref" :href="item.href" target="blank" >
<p class='menutitl' v-if="!item.highlight" >{{item.title}}</p>
<p v-else style="color:#0066EB">{{item.title}}</p>
<a v-if="item.stepHref" :href="item.href" target="blank">
<p class='menutitl' v-if="!item.highlight">{{ item.title }}</p>
<p v-else style="color:#0066EB">{{ item.title }}</p>
</a>
<router-link v-else :to="item.link">
<!-- <router-link v-else :to="item.link == '/market' ||item.link == '/college' ? '':item.link"> -->
<p class='menutitl' v-if="!item.highlight" >{{item.title}}<i v-if="item.submenu && item.submenu.length>0" class="el-icon-caret-bottom"></i></p>
<p v-else style="color:#0066EB">{{item.title}}<i v-if="item.submenu && item.submenu.length>0" class="el-icon-caret-bottom"></i></p>
<p class='menutitl' v-if="!item.highlight">{{ item.title }}<i
v-if="item.submenu && item.submenu.length > 0" class="el-icon-caret-bottom"></i></p>
<p v-else style="color:#0066EB">{{ item.title }}<i v-if="item.submenu && item.submenu.length > 0"
class="el-icon-caret-bottom"></i></p>
</router-link>
<div v-if="item.submenu && item.submenu.length>0" class='submenuwarp' >
<div v-if="item.submenu && item.submenu.length > 0" class='submenuwarp'>
<div v-for="(subitem, subkey) in item.submenu" :key="subkey" v-show="subitem.show">
<a v-if="item.stepHref" :href="subitem.href" target="blank" >
<p class='menutitlChild' v-if="!subitem.highlight" >{{subitem.title}}</p>
<p v-else style="color:#0066EB">{{subitem.title}}</p>
<a v-if="item.stepHref" :href="subitem.href" target="blank">
<p class='menutitlChild' v-if="!subitem.highlight">{{ subitem.title }}</p>
<p v-else style="color:#0066EB">{{ subitem.title }}</p>
</a>
<router-link :to='subitem.link' class="submenop">
<p class='menutitlChild' v-if="!subitem.highlight" >{{subitem.title}}</p>
<p v-else style="color:#0066EB">{{subitem.title}}</p>
<p class='menutitlChild' v-if="!subitem.highlight">{{ subitem.title }}</p>
<p v-else style="color:#0066EB">{{ subitem.title }}</p>
</router-link>
</div>
</div>
@ -72,15 +74,17 @@
<div class="permissions" @click="mypermissions('message')" style="margin-right:10px">
<el-badge :value="messageCount" :max="100" :hidden="messageCount==0" :class="messageCount>0?'baggeitem':'baggeitemda'">
<el-badge :value="messageCount" :max="100" :hidden="messageCount == 0"
:class="messageCount > 0 ? 'baggeitem' : 'baggeitemda'">
<img style="margin-right:5px" src="/assets/home/xiaoxi.png" alt="">
</el-badge>
<p style="margin-left:5px;width:65px;">站内消息</p>
</div>
<div class="predropdown">
<el-dropdown trigger="click" placement='bottom' >
<el-dropdown trigger="click" placement='bottom'>
<div class="avatar-wrapper">
<img style="width:54px;height:54px;margin:13px 0 5px 0px;cursor:pointer;border-radius:50%" :src="userinform.avatar" alt="">
<img style="width:54px;height:54px;margin:13px 0 5px 0px;cursor:pointer;border-radius:50%"
:src="userinform.avatar" alt="">
</div>
<el-dropdown-menu slot="dropdown" style="top:66px!important">
<el-dropdown-item @click.native="mypermissions('imembers')">个人中心</el-dropdown-item>
@ -107,22 +111,22 @@
</div>
</template>
<script>
import $ from 'jquery'
import {mapGetters} from "vuex";
import store from "@/store";
import {listMyMessageCount} from '@/api/system/message'
export default {
props:['menulist'],
data(){
// import $ from 'jquery'
import { mapGetters } from "vuex";
import store from "@/store";
import { listMyMessageCount } from '@/api/system/message'
export default {
props: ['menulist'],
data() {
return {
searchcontent:'',
disnonelog:true,
searchcontent: '',
disnonelog: true,
messageCount: 0,
cartCount: 0
}
},
computed: {
...mapGetters(['token','logindate','avatar','userinform']),
...mapGetters(['token', 'logindate', 'avatar', 'userinform']),
count() {
return store.getters.messageCount;  //
},
@ -131,70 +135,70 @@
},
},
created() {
if(this.token){
if (this.token) {
listMyMessageCount().then(response => {
this.messageCount = response.data;
this.cartCount = response.cartCount;
store.commit('SET_MESSAGECOUNT', this.messageCount);
store.commit('SET_CARTCOUNT', this.cartCount);
}).catch(()=>{
}).catch(() => {
// console.log('')
})
}
},
watch:{
$route:{
watch: {
$route: {
handler(val, old) {
if(!val.query.type){
this.disnonelog=true;
}else{
this.disnonelog=false;
if (!val.query.type) {
this.disnonelog = true;
} else {
this.disnonelog = false;
}
if(this.menulist && this.menulist.length>0){
if (this.menulist && this.menulist.length > 0) {
// console.log('',this.menulist)
if(val.name=='home'){
let activehome=this.menulist.filter(item=>item.title=='首页')
activehome[0].highlight=true
if (val.name == 'home') {
let activehome = this.menulist.filter(item => item.title == '首页')
activehome[0].highlight = true
// console.log('',activehome)
}else{
let activehome=this.menulist.filter(item=>item.title=='首页')
activehome[0].highlight=false
} else {
let activehome = this.menulist.filter(item => item.title == '首页')
activehome[0].highlight = false
}
if(val.path.indexOf('/market')===0){
let activeName=this.menulist.filter(item=>item.title=='工具服务')
activeName[0].highlight=true
if (val.path.indexOf('/market') === 0) {
let activeName = this.menulist.filter(item => item.title == '工具服务')
activeName[0].highlight = true
// console.log('',activeName)
}else{
let activeName=this.menulist.filter(item=>item.title=='工具服务')
activeName[0].highlight=false
} else {
let activeName = this.menulist.filter(item => item.title == '工具服务')
activeName[0].highlight = false
}
if(val.path.indexOf('/crowdsourcing')===0){
if (val.path.indexOf('/crowdsourcing') === 0) {
// console.log('')
let activeNamecrowd=this.menulist.filter(item=>item.title=='众包服务')
activeNamecrowd[0].highlight=true
let activeNamecrowd = this.menulist.filter(item => item.title == '众包服务')
activeNamecrowd[0].highlight = true
// console.log('',activeNamecrowd)
}else{
let activeNamecrowd=this.menulist.filter(item=>item.title=='众包服务')
activeNamecrowd[0].highlight=false
} else {
let activeNamecrowd = this.menulist.filter(item => item.title == '众包服务')
activeNamecrowd[0].highlight = false
}
if(val.path.indexOf('/ability')===0){
if (val.path.indexOf('/ability') === 0) {
// console.log('')
let activeNamecrowd=this.menulist.filter(item=>item.title=='人才服务')
activeNamecrowd[0].highlight=true
let activeNamecrowd = this.menulist.filter(item => item.title == '人才服务')
activeNamecrowd[0].highlight = true
// console.log('',activeNamecrowd)
}else{
let activeNamecrowd=this.menulist.filter(item=>item.title=='人才服务')
activeNamecrowd[0].highlight=false
} else {
let activeNamecrowd = this.menulist.filter(item => item.title == '人才服务')
activeNamecrowd[0].highlight = false
}
if(val.path.indexOf('/college')===0){
let activecollege=this.menulist.filter(item=>item.title=='培训服务')
activecollege[0].highlight=true
if (val.path.indexOf('/college') === 0) {
let activecollege = this.menulist.filter(item => item.title == '培训服务')
activecollege[0].highlight = true
// console.log('',activecollege)
}else{
let activecollege=this.menulist.filter(item=>item.title=='培训服务')
activecollege[0].highlight=false
} else {
let activecollege = this.menulist.filter(item => item.title == '培训服务')
activecollege[0].highlight = false
}
// if(val.path.indexOf('/news')===0){
// // console.log('')
@ -205,18 +209,18 @@
// let activeindusty=this.menulist.filter(item=>item.title=='')
// activeindusty[0].highlight=false
// }
if(val.path.indexOf('/about')===0){
let activeabout=this.menulist.filter(item=>item.title=='关于我们')
activeabout[0].highlight=true
if (val.path.indexOf('/about') === 0) {
let activeabout = this.menulist.filter(item => item.title == '关于我们')
activeabout[0].highlight = true
// console.log('',activeabout)
}else{
let activeabout=this.menulist.filter(item=>item.title=='关于我们')
activeabout[0].highlight=false
} else {
let activeabout = this.menulist.filter(item => item.title == '关于我们')
activeabout[0].highlight = false
}
}
// console.log('--', val,old)
},
immediate:true
immediate: true
},
count(newVal, oldVal) {
this.messageCount = newVal;
@ -225,44 +229,44 @@
this.cartCount = newVal;
}
},
mounted(){
mounted() {
// console.log('this.disnonelog',this.disnonelog,this.token)
},
destroyed() {
},
methods:{
methods: {
///
jump(type){
jump(type) {
this.$router.push(`/login?type=${type}`)
},
//logo
tishou(){
tishou() {
this.$router.push('/')
},
//
mypermissions(type){
let currentdata=Date.parse(new Date());
let logindate=this.logindate;
let timedifference=currentdata-(parseInt(logindate)+432000000);
if(timedifference>0){
this.$confirm('登录状态失效,请您重新登录' , '提示', {
mypermissions(type) {
let currentdata = Date.parse(new Date());
let logindate = this.logindate;
let timedifference = currentdata - (parseInt(logindate) + 432000000);
if (timedifference > 0) {
this.$confirm('登录状态失效,请您重新登录', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(()=> {
}).then(() => {
this.$router.push('/login?type=log')
}).catch(()=>{
}).catch(() => {
// console.log('')
})
}else{
if(type=='message'){
} else {
if (type == 'message') {
this.$router.push('/console/message')
}else if(type=='shopping'){
} else if (type == 'shopping') {
this.$router.push('/console/cart')
}else if(type=='workbench'){
} else if (type == 'workbench') {
this.$router.push('/console/myparticipate')
}else if(type=='imembers'){
} else if (type == 'imembers') {
this.$router.push('/console/profile')
}
// console.log('');
@ -282,123 +286,145 @@
},
}
}
}
</script>
<style scoped>
*{margin:0;padding:0}
.fixhead{
position:fixed;
top:0;
z-index:99;
background:#FFFFFF;
width:100%;
* {
margin: 0;
padding: 0
}
.fixhead {
position: fixed;
top: 0;
z-index: 99;
background: #FFFFFF;
width: 100%;
box-shadow: 0 6px 9px 0 rgb(0 0 0 / 6%);
}
.reg{
height:88px;
width:100%;
}
.reg {
height: 88px;
width: 100%;
background-image: url('/organmanage/assets/reg/nav.png');
background-size:100% 88px;
background-repeat:no-repeat;
}
.header{
background-size: 100% 88px;
background-repeat: no-repeat;
}
.header {
/* width:100%; */
height:78px;
text-align:center;
height: 78px;
text-align: center;
display: flex;
position: relative;
}
.header /deep/ .el-menu.el-menu--horizontal {
}
.header /deep/ .el-menu.el-menu--horizontal {
border: none;
}
.header /deep/ .el-menu-item {
}
.header /deep/ .el-menu-item {
padding: 10px 15px;
height: 78px;
font-size: 15px;
color: #000000;
font-weight: bold;
}
.header /deep/ .el-submenu__title {
}
.header /deep/ .el-submenu__title {
font-size: 15px;
color: #000000;
font-weight: bold;
}
.headermenu{
width:680px;
display:flex;
margin:0 auto;
}
.headermenu {
width: 680px;
display: flex;
margin: 0 auto;
justify-content: space-between;
align-content: center;
flex-direction: row;
text-align:center;
line-height:78px;
text-align: center;
line-height: 78px;
/* margin:0 30px 0 10px; */
}
.topmenuitem{
}
.topmenuitem {
/* width: 120px; */
height:78px;
font-weight:400;
position:relative;
}
.topmenuitem a{
height: 78px;
font-weight: 400;
position: relative;
}
.topmenuitem a {
text-decoration: none;
font-size:15px;
font-size: 15px;
color: #000000;
font-weight: bold;
}
.topmenuitem:hover{
}
.topmenuitem:hover {
/* border-bottom:3px solid #FFFF; */
}
.menutitl {
}
.menutitl {
font-size: 15px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #1A1A1A;
line-height: 78px;
}
.menutitl:hover {
color:#0066EB;
}
.menutitlChild {
}
.menutitl:hover {
color: #0066EB;
}
.menutitlChild {
font-size: 15px;
font-family: Microsoft YaHei;
font-weight: 400;
color: #1A1A1A;
line-height: 40px;
}
.menutitlChild:hover {
color:#0066EB;
}
.topmenuitem:hover .menutitl{
}
.menutitlChild:hover {
color: #0066EB;
}
.topmenuitem:hover .menutitl {
/* font-size:18px; */
/* color:#0066EB; */
}
.topmenuitem>>>a.is-active{
}
.topmenuitem>>>a.is-active {
/* font-size:18px; */
color:#0066EB;
}
.topmenuitem:hover .submenuwarp{
display:initial;
}
.submenuwarp{
position:absolute;
left:0px;
color: #0066EB;
}
.topmenuitem:hover .submenuwarp {
display: initial;
}
.submenuwarp {
position: absolute;
left: 0px;
top: 77px;
width:200px;
width: 200px;
background-color: #FFFFFF;
/* background-color: #FEB45FFF; */
z-index:3;
display:flex;
flex-direction:column;
display:none;
z-index: 3;
display: flex;
flex-direction: column;
display: none;
border-radius: 2px;
padding: 0 10px;
/* border: 1px solid #ccc; */
}
/* .submenuwarp::before {
}
/* .submenuwarp::before {
content: "";
display: block;
position: absolute;
@ -408,137 +434,164 @@
border-style: dashed solid dashed dashed;
border-color:transparent transparent #CCC transparent;
} */
.submenop {
text-decoration:none;
line-height:40px;
text-align:left;
color:#000;
}
.submenudd:hover{
background-color:#FFF3EDFF;
.submenop {
text-decoration: none;
line-height: 40px;
text-align: left;
color: #000;
}
.submenudd:hover {
background-color: #FFF3EDFF;
/* color:#FEB45FFF; */
}
.submenuwarp .submenudd{
width:200px;
height:36px;
font-size:14px !important;
display:block;
line-height:36px;
color:#333333FF;
}
.logoimg{
}
.submenuwarp .submenudd {
width: 200px;
height: 36px;
font-size: 14px !important;
display: block;
line-height: 36px;
color: #333333FF;
}
.logoimg {
/* cursor:pointer;
position:absolute;
margin-left:20%;
margin-top:10px;
z-index:99 */
}
@media screen and (max-width: 1700px) {
.logoimg{
}
.logoimg img {
width: 138px;
height: 64px;
}
@media screen and (max-width: 1700px) {
.logoimg {
/* cursor:pointer;
position:absolute;
margin-left:10%;
margin-top:10px */
}
.headermenu{
width:680px;
.headermenu {
width: 680px;
}
.worker{
.worker {
/* position:absolute;
margin-left:74%!important;
height:80px;
margin-top:-80px */
}
}
@media screen and (max-width: 1500px) {
.logoimg{
}
@media screen and (max-width: 1500px) {
.logoimg {
/* cursor:pointer;
position:absolute;
margin-left:5%;
margin-top:10px */
}
.worker{
.worker {
/* position:absolute;
margin-left:70%!important;
height:80px;
margin-top:-80px */
}
}
.worker{
}
.worker {
/* position:absolute;
margin-left:70%;
height:80px;
margin-top:-80px */
}
.worker>>>.el-divider--vertical{
}
.worker>>>.el-divider--vertical {
height: 27px;
background: #1A1A1A;
opacity: 0.15;
margin:25px 10px 25px 15px;
}
.loginbtn{
margin-left:20px;
width:60px;
height:30px;
font-size:15px;
color:rgba(255,255,255,1);
margin: 25px 10px 25px 15px;
}
.loginbtn {
margin-left: 20px;
width: 60px;
height: 30px;
font-size: 15px;
color: rgba(255, 255, 255, 1);
background: linear-gradient(45deg, #2978EE, #0066EB);
border:none;
border-radius:6px;
line-height:30px;
cursor:pointer;
text-align:center;
}
.regbtn{
margin-left:20px;
width:60px;
height:30px;
font-size:15px;
color:#0066EB;
background:transparent;
border: none;
border-radius: 6px;
line-height: 30px;
cursor: pointer;
text-align: center;
}
.regbtn {
margin-left: 20px;
width: 60px;
height: 30px;
font-size: 15px;
color: #0066EB;
background: transparent;
border: 1px solid #0066EB;
border-radius:6px;
line-height:30px;
cursor:pointer;
text-align:center;
}
.permissions{
display:flex;
align-items:center;
margin-left:10px;
cursor:pointer;
}
.avatar-wrapper img:hover{
opacity:0.5;
border-radius: 6px;
line-height: 30px;
cursor: pointer;
text-align: center;
}
.permissions {
display: flex;
align-items: center;
margin-left: 10px;
cursor: pointer;
}
.avatar-wrapper img:hover {
opacity: 0.5;
/* transition: 0.3s; */
}
.baggeitem {
margin-top:5px;
margin-right:15px;
}
.baggeitemda {
margin-top:5px;
}
.baggeitem {
margin-top: 5px;
margin-right: 15px;
}
.baggeitemda {
margin-top: 5px;
/* margin-right:10px; */
}
.el-dropdown-menu__item{
padding:0px 20px!important;
}
.el-dropdown-menu__item {
padding: 0px 20px !important;
/* margin: 10px 0!important; */
}
.el-dropdown-menu{
}
.el-dropdown-menu {
top: 60px !important;
margin-top:10px!important;
}
.tostnew {
margin-top: 10px !important;
}
.tostnew {
position: absolute;
top: -13px;
right: -23px;
}
.tostnewimg {
}
.tostnewimg {
width: 58px;
height: 26px;
}
.tostnewtext {
}
.tostnewtext {
position: absolute;
top: 16px;
right: 5px;
@ -547,6 +600,5 @@
font-size: 12px !important;
color: #FFFFFF;
line-height: 26px !important;
}
}
</style>

@ -939,6 +939,10 @@ export default {
.rapidhatching:hover p {
color: #0066eb;
}
.rapidhatching img{
width: 125px;
height: 170px;
}
.cetype {
display: flex;
justify-content: space-between;
@ -1139,6 +1143,9 @@ export default {
justify-content: center;
cursor: pointer;
}
.titlesty img{
width: 120px;
}
.titlesty p {
font-size: 32px;
color: #1a1a1a;

@ -41,11 +41,7 @@
培养一支数量充足结构合理素质优良的专业知识丰富实践技能过硬的师资队伍培训后可以进入公司师资库成为双师型教师成为关键公司特聘讲师
</div>
<div class="modelConT">培训内容</div>
<timeLineWrap
v-for="item in teachTrainData"
:key="item.time"
:timeLineData="item"
>
<timeLineWrap v-for="item in teachTrainData" :key="item.time" :timeLineData="item">
<!-- <template slot="contentRow">
<div>ssss</div>
</template> -->
@ -177,8 +173,7 @@
</div>
<div class="modellineLR3">
<div class="modellineLRAcom">
<span>报到地点</span
>润华君悦酒店本次培训食宿统一安排费用自理不安排接站
<span>报到地点</span>润华君悦酒店本次培训食宿统一安排费用自理不安排接站
</div>
<!-- <div class="modellineLRAcom">
住宿费单间330元//人含三餐标间230元//人含三餐暑期资源有限优先选择
@ -192,12 +187,10 @@
</div>
<div class="modellineLR3">
<div class="modellineLRAcom">
<span>报名方式1</span
><span @click="gosign" class="alink">点击报名</span>
<span>报名方式1</span><span @click="gosign" class="alink">点击报名</span>
</div>
<div class="modellineLRAcom">
<span>报名方式2</span
><span class="alink1">扫描右侧二维码报名</span>
<span>报名方式2</span><span class="alink1">扫描右侧二维码报名</span>
</div>
<div class="modellineLRAcom">
<span> 项目负责人</span>牛中东 13683248482同微信
@ -231,7 +224,7 @@
</div>
</div>
<!-- 悬浮按钮 -->
<div class="fixBtn" @click="gosign">
<div class="fixBtn" @click="gosign" v-show="singBtnShow">
点击报名
<img src="/assets/newtrain/teainfo3.png" alt="" />
</div>
@ -240,12 +233,14 @@
<script>
// import { mapGetters } from 'vuex'
import { getTeacherForm } from '@/api/train'
import teachTrainData from "@/config/teacherTrain";
import timeLineWrap from "../../../components/timeLineWrap/index.vue";
export default {
data() {
return {
teachTrainData: teachTrainData,
singBtnShow:false
};
},
components: {
@ -254,7 +249,16 @@ export default {
computed: {
// ...mapGetters(['token']),
},
created() {},
created() {
getTeacherForm().then(res => {
console.log(res);
if (res.code != 200) {
this.singBtnShow = false
}else{
this.singBtnShow = true
}
})
},
methods: {
gosign() {
// if (!this.token) {
@ -276,14 +280,16 @@ export default {
</script>
<style scoped>
.model2{
.model2 {
margin-bottom: 40px;
}
.modelTitle {
width: 100%;
display: flex;
align-items: center;
}
.modelTitleL {
flex: 1;
font-weight: 800;
@ -291,21 +297,25 @@ export default {
color: #1b68de;
transform: translateY(-8px);
}
.modelTitleR {
display: flex;
flex-direction: column;
justify-content: center;
}
.modelTitleRT {
font-weight: bold;
font-size: 25px;
color: #1b68de;
}
.modelTitleRB {
width: 1127px;
height: 16px;
margin-top: 15px;
}
.modelTitleRB img {
width: 100%;
height: 100%;
@ -315,26 +325,31 @@ export default {
width: 1200px;
margin: auto;
}
.teacherDetail {
width: 100%;
background: linear-gradient(0deg, #ffffff, #ffffff, #cadefc);
overflow: hidden;
}
.topbg {
display: flex;
align-items: center;
justify-content: center;
margin: 70px 0 40px 0;
}
.topbg1 {
width: 156px;
height: 68px;
}
.topbg2 {
width: 264px;
height: 68px;
margin-left: 20px;
}
.toptitle {
font-weight: bold;
font-size: 32px;
@ -342,9 +357,11 @@ export default {
line-height: 65px;
text-align: center;
}
.toptitle span {
color: #1b68de;
}
.topbbox {
width: 100%;
height: 203px;
@ -361,6 +378,7 @@ export default {
margin-bottom: 30px;
text-indent: 2em;
}
.modelConT {
font-weight: bold;
font-size: 20px;
@ -368,6 +386,7 @@ export default {
line-height: 39px;
margin: 20px 0;
}
.modelCon {
font-weight: 500;
font-size: 16px;
@ -383,27 +402,32 @@ export default {
text-align: center;
margin-bottom: 26px;
}
.zsimg {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.zsimg img {
width: 516px;
height: 345px;
}
.modellineL {
display: flex;
align-items: center;
justify-content: space-around;
}
.modellineLL {
width: 2px;
height: 240px;
background: #1b68de;
position: relative;
}
.modellineLLCricle {
position: absolute;
left: -6px;
@ -413,32 +437,39 @@ export default {
border-radius: 50%;
border: 2px solid #1b68de;
}
.modellineLLCricle1 {
top: 10px;
}
.modellineLLCricle2 {
top: 154px;
}
.modellineLRA {
background: #f8f9fa;
border-radius: 6px;
padding: 0 40px;
box-sizing: border-box;
}
.modellineLRAcom {
font-weight: 500;
font-size: 16px;
color: #4d4d4d;
line-height: 36px;
}
.modellineLRAcom span {
font-weight: 800;
}
.modellineLRAcom .alink {
cursor: pointer;
font-weight: 500;
color: #1b68de;
}
.modellineLRAcom .alink1 {
cursor: pointer;
font-weight: 500;
@ -448,6 +479,7 @@ export default {
.modellineLRAcom1 {
font-size: 15px;
}
.modellineLR61 {
width: 1087px;
height: 110px;
@ -455,6 +487,7 @@ export default {
justify-content: center;
flex-direction: column;
}
.modellineLR62 {
width: 1087px;
height: 80px;
@ -462,9 +495,11 @@ export default {
display: flex;
align-items: center;
}
.modellineLL2 {
height: 350px;
}
.modellineLR2 {
width: 1087px;
height: 338px;
@ -475,6 +510,7 @@ export default {
padding: 0 40px;
box-sizing: border-box;
}
.modellineLR2T {
border-bottom: 1px dashed #e0e0e0;
display: flex;
@ -482,34 +518,41 @@ export default {
padding: 25px 0;
box-sizing: border-box;
}
.modellineLRAcomflex {
display: flex;
align-items: flex-start;
margin: 10px 0;
}
.modellineLR2TL {
font-size: 16px;
color: #4d4d4d;
line-height: 36px;
font-weight: 800;
}
.modellineLR2TB {
display: flex;
flex-direction: column;
align-items: center;
margin-left: 100px;
}
.modellineLR2TB img {
width: 114px;
height: 108px;
}
.modellineLR2B {
padding-top: 20px;
box-sizing: border-box;
}
.modellineLL3 {
height: 119px;
}
.modellineLR3 {
width: 1087px;
background: #f8f9fa;
@ -521,6 +564,7 @@ export default {
justify-content: center;
position: relative;
}
.posiimg {
position: absolute;
top: 50%;
@ -529,6 +573,7 @@ export default {
width: 114px;
height: 108px;
}
.fixBtn {
width: 160px;
height: 68px;
@ -546,6 +591,7 @@ export default {
color: #ffffff;
cursor: pointer;
}
.fixBtn img {
width: 40px;
height: 40px;

@ -42,7 +42,7 @@
<el-button
v-if="tool.deliver_type == 'License'"
style="background: #f2a51a"
@click="zhuceCodeFn(tool.toolId)"
@click="zhuceCodeFn(tool.tool_id)"
>注册码</el-button
>
<!-- SaaS按月 按钮在线试用+专属账密 -->
@ -210,6 +210,7 @@ export default {
zhuceCodeFn(toolId) {
this.toolId = toolId
this.jiqimaOpen = true
console.log(this.toolId);
},
//
jiqimaOpenClose() {
@ -221,6 +222,7 @@ export default {
toolId: this.toolId,
registerCode: this.jiqicode,
}
console.log(data);
getCodeByCode(data).then((res) => {
if (res.code == 200) {
this.jiqimaOpen = false
@ -260,6 +262,8 @@ export default {
return item.status == 1
})
this.loading = false
console.log(this.onTools);
})
},
// 使

@ -1,5 +1,6 @@
const webpack = require('webpack')
const path = require('path')
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
/**
* 配置参考:
* https://cli.vuejs.org/zh/config/
@ -51,6 +52,7 @@ module.exports = {
'window.Quill': 'quill/dist/quill.js',
'Quill': 'quill/dist/quill.js'
}),
new BundleAnalyzerPlugin()
],
},

Loading…
Cancel
Save