Merge branch 'sit-Carl' of gitee.com:carl_Ming_1/smart-admin into sit-Leung
@ -165,6 +165,7 @@ export const useredit = (mobile, pet,address) => {
|
||||
storeCode:'',
|
||||
remark:'',
|
||||
memberMark:'',
|
||||
|
||||
remark:''
|
||||
}
|
||||
return fetch('member?type=add', data, 'POST' )
|
||||
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
@ -1,5 +1,4 @@
|
||||
/*Body*/
|
||||
html,body{height:100%;}
|
||||
body{
|
||||
font-family: DINPro,'PingFang SC',miui,'Hiragino Sans GB','Microsoft Yahei',sans-serif;
|
||||
line-height: 1.5;
|
||||
@ -156,7 +155,6 @@ img, picture {
|
||||
}
|
||||
li{
|
||||
border-radius: 100px;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
.active{
|
||||
@ -236,7 +234,6 @@ img, picture {
|
||||
max-width: 460px;
|
||||
margin-left: auto!important;
|
||||
margin-right: auto!important;
|
||||
box-shadow:unset;
|
||||
}
|
||||
|
||||
.ts-standard-input{
|
||||
@ -283,7 +280,7 @@ img, picture {
|
||||
width:100%;
|
||||
}
|
||||
.rc-top{
|
||||
margin-top: 90px;
|
||||
margin-top: 74px;
|
||||
}
|
||||
.ts-right-arr {
|
||||
border-bottom:1px solid #E1001A;
|
||||
@ -359,7 +356,7 @@ img, picture {
|
||||
font-size:16px;
|
||||
}
|
||||
.rc-top{
|
||||
margin-top: 150px;
|
||||
margin-top: 124px;
|
||||
}
|
||||
.ts-product-list{
|
||||
text-align: left;
|
||||
|
@ -147,10 +147,9 @@
|
||||
height:auto;
|
||||
max-height: 15.68rem;
|
||||
display: block;
|
||||
overflow:hidden;
|
||||
video{
|
||||
width:100%;
|
||||
height:100%;
|
||||
max-width:100%;
|
||||
max-height:100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -291,11 +290,9 @@
|
||||
color: #444444;
|
||||
border: 1px solid #D7D7D7;
|
||||
}
|
||||
|
||||
// .usermain{
|
||||
// display: none;
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -484,7 +481,7 @@ img{
|
||||
.rc-ma
|
||||
{
|
||||
.rc-margin-y--xl{
|
||||
//margin-bottom: 1.88rem;
|
||||
margin-bottom: 1.88rem;
|
||||
}
|
||||
// padding:60px 0;
|
||||
|
||||
|
@ -1,11 +1,3 @@
|
||||
.rc-usermain{
|
||||
width:100%;
|
||||
padding-bottom:2.8rem;
|
||||
ol{
|
||||
overflow-x:hidden;
|
||||
overflow-y:auto;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width:768px){
|
||||
.rc-button{
|
||||
width: 100%;
|
||||
@ -35,8 +27,12 @@ span{
|
||||
}
|
||||
}
|
||||
.rc-usermain{
|
||||
width: 92%;
|
||||
margin: 0 auto;
|
||||
|
||||
ul{
|
||||
height: 4.375rem;
|
||||
height: 70px;
|
||||
display: block;
|
||||
border-bottom: 1px solid #D8D8D8;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@ -47,15 +43,17 @@ span{
|
||||
li{
|
||||
float: left;
|
||||
width: 30%;
|
||||
position:relative;
|
||||
padding-right:.625rem;
|
||||
|
||||
|
||||
}
|
||||
li:after{
|
||||
// height: 2px;
|
||||
// border: 1px solid red;
|
||||
// display: block;
|
||||
content:"|";
|
||||
color: #707070;
|
||||
position:absolute;
|
||||
top:0;
|
||||
right:0;
|
||||
margin-left: 5px;
|
||||
|
||||
}
|
||||
li:last-child:after{
|
||||
content:"";
|
||||
@ -64,14 +62,16 @@ span{
|
||||
}
|
||||
|
||||
ol{
|
||||
margin-top:1rem;
|
||||
max-height:70vh;
|
||||
li{
|
||||
font-style: normal;
|
||||
height: 2rem;
|
||||
display: block;
|
||||
height: 32px;
|
||||
margin-top: 16px;
|
||||
display: flex;
|
||||
// justify-content: space-between;
|
||||
align-items: center;
|
||||
font-size: .875rem;
|
||||
color: #666666;
|
||||
font-size: 14px;
|
||||
text-align: center;
|
||||
i{
|
||||
font-style: normal;
|
||||
@ -130,7 +130,10 @@ span{
|
||||
}
|
||||
}
|
||||
.rc-usermain{
|
||||
width: 92%;
|
||||
margin: 0 auto;
|
||||
margin-top: 60px;
|
||||
|
||||
ul{
|
||||
height: 64px;
|
||||
background: #F6F6F6;
|
||||
@ -147,19 +150,20 @@ span{
|
||||
li{
|
||||
float: left;
|
||||
width: 42%;
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
ol{
|
||||
max-height:37.5rem;
|
||||
li{
|
||||
font-style: normal;
|
||||
display: block;
|
||||
height: 48px;
|
||||
margin-top: 16px;
|
||||
display: flex;
|
||||
border: 1px solid #D7D7D7;
|
||||
border-top:0;
|
||||
// justify-content: space-between;
|
||||
align-items: center;
|
||||
color: #666666;
|
||||
|
@ -1,9 +1,7 @@
|
||||
.container{
|
||||
min-height:80vh;
|
||||
height:100%;
|
||||
display:flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
//background-color:#f6f6f6;
|
||||
background-color:#f6f6f6;
|
||||
}
|
||||
.ts-max-width--460{
|
||||
border-radius: 3px;
|
||||
@ -141,7 +139,7 @@
|
||||
}
|
||||
}
|
||||
// /* 最小768px最大1920 *pc端/
|
||||
@media screen and (min-width: 769px) {
|
||||
@media screen and (min-width: 768px) and (max-width: 1920px) {
|
||||
.usecheck{
|
||||
display: flex;
|
||||
text-align: left;
|
||||
|
@ -8,9 +8,6 @@ ul li ol li em strong i {
|
||||
.rc-center{
|
||||
overflow:hidden;
|
||||
}
|
||||
.r-block{
|
||||
border-radius:.25rem;
|
||||
}
|
||||
//手机端
|
||||
@media screen and (max-width: 768px) {
|
||||
.ts-mypersonal{
|
||||
@ -143,7 +140,6 @@ ul li ol li em strong i {
|
||||
}
|
||||
.rc-cordd{
|
||||
color:#666666;
|
||||
position:relative;
|
||||
span{
|
||||
display: inline-block;
|
||||
margin-top: 16px;
|
||||
@ -253,15 +249,6 @@ ul li ol li em strong i {
|
||||
width: 440px;
|
||||
height: 652px;
|
||||
}
|
||||
|
||||
.ts-mypersonal{
|
||||
margin-left:0;
|
||||
.rc-column{
|
||||
padding-left:0;
|
||||
padding-right:0;
|
||||
}
|
||||
}
|
||||
|
||||
.online{
|
||||
margin:40px auto;
|
||||
}
|
||||
@ -379,25 +366,13 @@ ul li ol li em strong i {
|
||||
background: #D7D7D7;
|
||||
margin-top: 16px;
|
||||
border-radius: 4px;
|
||||
position:relative;
|
||||
margin-top:3.32rem;
|
||||
.r-block{
|
||||
width: 0%;
|
||||
height: 100%;
|
||||
background: #008900;
|
||||
}
|
||||
.ts-point-tag{
|
||||
background:url("../image/img-pointBg.png") no-repeat center top;
|
||||
background-size:contain;
|
||||
height:2.375rem;
|
||||
width:3.625rem;
|
||||
text-align:center;
|
||||
position:absolute;
|
||||
font-size:.875rem;
|
||||
line-height:2rem;
|
||||
left:0;
|
||||
top:-2.6rem;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
.rc-value{
|
||||
display: flex;
|
||||
|
@ -41,7 +41,8 @@ color: #333333;
|
||||
}
|
||||
}
|
||||
.rc-main {
|
||||
|
||||
width: 92%;
|
||||
margin: 0 auto;
|
||||
.rc-userbottom{
|
||||
display: none;
|
||||
}
|
||||
@ -303,6 +304,8 @@ color: #333333;
|
||||
@media screen and (min-width: 768px) and (max-width: 1920px) {
|
||||
|
||||
.rc-main {
|
||||
width: 92%;
|
||||
margin: 0 auto;
|
||||
.rc-userbottomm{
|
||||
display: none;
|
||||
}
|
||||
|
@ -1,351 +0,0 @@
|
||||
|
||||
// 手机端
|
||||
@media screen and(min-width: 320px) and(max-width:768px) {
|
||||
.active {
|
||||
font-size: 14px;
|
||||
color: #e2001a;
|
||||
cursor: pointer;
|
||||
}
|
||||
.unactive {
|
||||
font-size: 14px;
|
||||
color: #444444;
|
||||
cursor: pointer;
|
||||
}
|
||||
.rc-layout-container {
|
||||
|
||||
|
||||
width: 100%;
|
||||
.rc-main {
|
||||
.rc-usermaina{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.rc-headera {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
height: 64px;
|
||||
align-items: center;
|
||||
}
|
||||
.rc-userheader{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.rc-center {
|
||||
width: 100%;
|
||||
height: 245px;
|
||||
margin-top: 8px;
|
||||
.rc-usermain {
|
||||
.pc-bottom{
|
||||
display: none;
|
||||
}
|
||||
|
||||
display: flex;
|
||||
.rc-image {
|
||||
border: 1px solid #D8D8D8;
|
||||
margin-top: 17px;
|
||||
;
|
||||
img {
|
||||
width: 96px;
|
||||
height: 96px;
|
||||
display: block;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.rc-right {
|
||||
|
||||
.rc-userbottomm{
|
||||
display: none;
|
||||
}
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
margin-left: 16px;
|
||||
justify-content: center;
|
||||
em
|
||||
{
|
||||
font-style: normal;
|
||||
display: block;
|
||||
font-size: 16px;
|
||||
margin-top: 18px;
|
||||
font-weight: bold;
|
||||
|
||||
color: #E1001A;
|
||||
}
|
||||
}
|
||||
.rc-userright {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
color: #666666;
|
||||
font-size: 14px;
|
||||
span{
|
||||
display: block;
|
||||
margin-top: 16px;
|
||||
}
|
||||
}
|
||||
.rc-userbottom {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-top: 8px;
|
||||
span{
|
||||
color: #666666;
|
||||
font-size: 14px;
|
||||
}
|
||||
i{
|
||||
font-style: normal;
|
||||
color: #E1001A;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rc-bottom {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-top: 24px;
|
||||
span {
|
||||
display: block;
|
||||
width: 130px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
line-height: 40px;
|
||||
text-align: center;
|
||||
color: #e2001a;
|
||||
height: 40px;
|
||||
border: 2px solid #e2001a;
|
||||
justify-content: center;
|
||||
border-radius: 30px;
|
||||
font-weight: bold;
|
||||
}
|
||||
span:last-child{
|
||||
margin-left: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rc-title {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-bottom: 1px solid #d8d8d8;
|
||||
justify-content: space-between;
|
||||
span{
|
||||
font-size: 14px;
|
||||
color: #999999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
em{
|
||||
font-style: normal;
|
||||
font-size: 14px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
i{
|
||||
font-style: normal;
|
||||
font-size: 14px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
.rc-usertitle strong{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// /* 最小768px最大1920 *pc端/
|
||||
@media screen and (min-width: 768px) and (max-width: 1920px) {
|
||||
.active {
|
||||
font-size: 18px;
|
||||
color: #e2001a;
|
||||
cursor: pointer;
|
||||
// margin-left: 40px;
|
||||
}
|
||||
.unactive {
|
||||
font-size: 18px;
|
||||
color: #444444;
|
||||
cursor: pointer;
|
||||
// margin-left: 80px;
|
||||
}
|
||||
.rc-layout-container {
|
||||
.rc-main {
|
||||
.rc-headera {
|
||||
display: flex;
|
||||
height: 64px;
|
||||
align-items: center;
|
||||
border: 1px solid #D7D7D7;
|
||||
border-radius: 3px 3px 0px 0px;
|
||||
font-size: 18px;
|
||||
span:first-child{
|
||||
margin-left: 40px;
|
||||
}
|
||||
span{
|
||||
margin-left: 80px;
|
||||
}
|
||||
}
|
||||
|
||||
.rc-userheader{
|
||||
width: 100%;
|
||||
height: 64px;
|
||||
background: #F6F6F6;
|
||||
border: 1px solid #D7D7D7;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 18px;
|
||||
span:first-child{
|
||||
margin-left: 173px;
|
||||
}
|
||||
span:last-child{
|
||||
margin-right: 87px;
|
||||
}
|
||||
}
|
||||
|
||||
.rc-center {
|
||||
width: 100%;
|
||||
height: 220px;
|
||||
border: 1px solid #D7D7D7;
|
||||
.rc-usermain {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
height: 164px;
|
||||
.rc-usercenter{
|
||||
width: 25%;
|
||||
em{
|
||||
font-size: 18px;
|
||||
}
|
||||
}
|
||||
.rc-image {
|
||||
border: 1px solid #D8D8D8;
|
||||
margin-left: 40px;
|
||||
|
||||
img {
|
||||
width: 96px;
|
||||
height: 96px;
|
||||
display: block;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.rc-right {
|
||||
.rc-userbottom{
|
||||
display: none;
|
||||
}
|
||||
display: flex;
|
||||
|
||||
width: 100%;
|
||||
margin-left: 16px;
|
||||
|
||||
em
|
||||
{
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
margin-top: 18px;
|
||||
|
||||
color: #E1001A;
|
||||
}
|
||||
}
|
||||
.rc-userright {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
color: #666666;
|
||||
font-size: 16px;
|
||||
span{
|
||||
display: block;
|
||||
margin-top: 6px;
|
||||
}
|
||||
}
|
||||
.rc-userbottomm {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
width: 58%;
|
||||
font-size: 20px;
|
||||
color: #E1001A;
|
||||
font-weight: bold;
|
||||
i{
|
||||
font-style: normal;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.pc-bottom {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
flex-direction: column;
|
||||
margin-right: 40px;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
width: 130px;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
line-height: 40px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
color: #e2001a;
|
||||
height: 40px;
|
||||
border: 2px solid #e2001a;
|
||||
justify-content: center;
|
||||
border-radius: 30px;
|
||||
}
|
||||
span:last-child{
|
||||
margin-top: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rc-bottom {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.rc-title {
|
||||
height: 55px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-bottom: 1px solid #d8d8d8;
|
||||
justify-content: space-between;
|
||||
span{
|
||||
font-size: 16px;
|
||||
color: #999999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
strong{
|
||||
font-style: normal;
|
||||
font-size: 16px;
|
||||
color: #444444;
|
||||
}
|
||||
em{
|
||||
font-style: normal;
|
||||
font-size: 16px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
i{
|
||||
font-style: normal;
|
||||
font-size: 16px;
|
||||
margin-left: 40px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
.rc-usertitle{
|
||||
margin-right: 73px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
em{
|
||||
display: block;
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 85 KiB After Width: | Height: | Size: 85 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 170 KiB After Width: | Height: | Size: 170 KiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 286 KiB After Width: | Height: | Size: 286 KiB |
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
@ -393,7 +393,7 @@ export default {
|
||||
mounted() {
|
||||
//判断用户有无登录显示红点
|
||||
let usernot=JSON.parse(localStorage.getItem("userInfo"));
|
||||
//console.log(usernot);
|
||||
console.log(usernot);
|
||||
if(usernot==null ||usernot==undefined){
|
||||
console.log(usernot);
|
||||
this.loginornot=true
|
||||
@ -401,19 +401,21 @@ export default {
|
||||
this.loginornot=false
|
||||
this.usermessage=usernot;
|
||||
}
|
||||
//console.log(this.loginornot);
|
||||
console.log(this.loginornot);
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
||||
bindTracking: function(){
|
||||
//console.log('bindTracking');
|
||||
console.log('bindTracking');
|
||||
},
|
||||
|
||||
//
|
||||
//跳转搜索
|
||||
searchturn(){
|
||||
this.$router.push({ name: "usersearch-search",})
|
||||
this.$router.push({ name: "usersearch-search",
|
||||
|
||||
})
|
||||
},
|
||||
//判断有无登录跳转不同页面
|
||||
turnlogin(){
|
||||
|
288
rc-busness/components/magnifier.vue
Normal file
@ -0,0 +1,288 @@
|
||||
<template>
|
||||
<div class="magnify">
|
||||
<div class="left_contaner">
|
||||
<div class="middle_img" @mouseover="boxMouseOver" @mouseleave="boxMouseLeave">
|
||||
<img :src="middleImg" alt="" style="width:100%">
|
||||
<div class="shade" @mouseover="shadeMouseOver" @mousemove="shadeMouseMove" ref="shade" v-show="isShade"></div>
|
||||
</div>
|
||||
<div class="carousel">
|
||||
<div class="left_arrow arrow" @click="leftArrowClick">
|
||||
<img src="../assets/image/userleft.jpg" alt="">
|
||||
</div>
|
||||
|
||||
<div class="show_box">
|
||||
<ul class="picture_container" ref="middlePicture">
|
||||
<li class="picture_item" @click="tabPicture(item,index)" v-for="(item, index) in pictureList" :key="index">
|
||||
<img :src="item.attachmentPath" class="small_img" alt="">
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="right_arrow arrow" @click="rightArrowClick">
|
||||
<img src="../assets/image/userright.png" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="right_contanier" v-show="isBig">
|
||||
<img :src="middleImg" ref="bigImg" class="big_img" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import $ from 'jquery'
|
||||
export default {
|
||||
props:['parentmsg'],
|
||||
props: {
|
||||
|
||||
tableLabelTest:Array,
|
||||
imgList: Array, // 图片数据
|
||||
zoom: {
|
||||
default: 2, // 缩略比例,放大比例
|
||||
type: Number
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
middleImgWidth:350,
|
||||
middleImgHeight:350,
|
||||
thumbnailHeight:100,
|
||||
|
||||
tableLabelTest1:this.tableLabelTest,
|
||||
pictureList: [
|
||||
{url: require("../assets/four.png")},
|
||||
{url: require("../assets/cat.png")},
|
||||
{url: require("../assets/one.png")},
|
||||
{url: require("../assets/six.png")},
|
||||
{url: require("../assets/six.png")},
|
||||
{url: require("../assets/six.png")},
|
||||
{url: require("../assets/four.png")},
|
||||
{url: require("../assets/cat.png")},
|
||||
{url: require("../assets/one.png")},
|
||||
{url: require("../assets/six.png")},
|
||||
{url: require("../assets/six.png")},
|
||||
{url: require("../assets/six.png")},
|
||||
],
|
||||
menu:[],
|
||||
middleImg: '', // 中图图片地址
|
||||
bigImg: '', // 大图图片地址
|
||||
isShade: false, // 控制阴影显示与否
|
||||
isBig: false, // 控制放大图显示与否
|
||||
initX: 0, // 初始clientX值
|
||||
initY: 0, // 初始clientY值
|
||||
leftX: 0, // 初始定位left
|
||||
topY: 0, // 初始定位top
|
||||
middleLeft: 0, // 当前放置小图盒子的定位left值,
|
||||
itemWidth: 80, // 缩略图每张的宽度
|
||||
}
|
||||
},
|
||||
watch:{
|
||||
data:'ifadroind',// 值可以为methods的方法名
|
||||
inputName: function(newValue) {
|
||||
this.pictureList=newValue;
|
||||
this.menu=newValue;
|
||||
console.log(this.newValue);
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
},
|
||||
|
||||
mounted() {
|
||||
let user= JSON.parse(localStorage.getItem("message"));
|
||||
console.log(user);
|
||||
if(user!==null){
|
||||
this.pictureList=user;
|
||||
}
|
||||
if (user && user.length) {
|
||||
this.pictureList = user
|
||||
}
|
||||
this.middleImg = this.pictureList[0].attachmentPath;
|
||||
console.log(this.middleImg);
|
||||
// 计算缩略图的宽度,默认是显示4张图片,两边箭头的宽度和为50
|
||||
// this.itemWidth = (this.middleImgWidth-30) / 2
|
||||
this.ifadroind();
|
||||
this.$nextTick(() => {
|
||||
console.log(this.menu);
|
||||
// 容器的高
|
||||
const imgWidth = this.middleImgHeight + this.thumbnailHeight + 20
|
||||
// 设置容器宽高
|
||||
// $('.magnify').css({
|
||||
// width: this.middleImgWidth,
|
||||
// height: imgWidth
|
||||
// })
|
||||
|
||||
// 设置移动阴影图宽高
|
||||
$('.middle_img .shade').css({
|
||||
width: this.middleImgWidth/this.zoom,
|
||||
height: this.middleImgHeight/this.zoom
|
||||
})
|
||||
// 设置缩略图容器高
|
||||
$('.carousel').css({
|
||||
height: this.thumbnailHeight
|
||||
})
|
||||
// 设置每个缩略图宽
|
||||
// $('.picture_item').css({
|
||||
// width: this.itemWidth
|
||||
// })
|
||||
// 设置放大后图片容器的宽高,left
|
||||
$('.right_contanier').css({
|
||||
left: this.middleImgWidth,
|
||||
width: imgWidth,
|
||||
height: imgWidth
|
||||
})
|
||||
// 设置放大图片的宽高(图片的放大倍数)
|
||||
$('.right_contanier .big_img').css({
|
||||
width: imgWidth * this.zoom,
|
||||
height: imgWidth * this.zoom
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
methods: {
|
||||
//判断是手机打开还是电脑打开
|
||||
ifadroind(){
|
||||
var sUserAgent = navigator.userAgent.toLowerCase();
|
||||
var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
|
||||
var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
|
||||
var bIsMidp = sUserAgent.match(/midp/i) == "midp";
|
||||
var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";
|
||||
var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";
|
||||
var bIsAndroid = sUserAgent.match(/android/i) == "android";
|
||||
var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";
|
||||
var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
|
||||
|
||||
if ((bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM)) {
|
||||
//Mob Screen
|
||||
}else{
|
||||
//PC screen size
|
||||
this.middleImgWidth=560;
|
||||
this.middleImgHeight=560;
|
||||
}
|
||||
$('.middle_img').css({
|
||||
width: this.middleImgWidth,
|
||||
height: this.middleImgHeight
|
||||
})
|
||||
},
|
||||
// 产品图片鼠标移入事件,显示阴影,显示大图
|
||||
boxMouseOver (e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
this.isShade = true
|
||||
this.isBig = true
|
||||
// 计算阴影的位置
|
||||
let x = e.offsetX - $('.shade').width()/2
|
||||
let y = e.offsetY - $('.shade').height()/2
|
||||
let maxLeft = $('.middle_img').width() - $('.shade').width()
|
||||
let maxTop = $('.middle_img').height() - $('.shade').height()
|
||||
x = x <= 0 ? 0 : x
|
||||
x = x >= maxLeft ? maxLeft : x
|
||||
y = y <= 0 ? 0 : y
|
||||
y = y >= maxTop ? maxTop : y
|
||||
$('.shade').css({
|
||||
left: x,
|
||||
top: y
|
||||
})
|
||||
},
|
||||
// 鼠标在阴影移动
|
||||
shadeMouseMove (e) {
|
||||
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
|
||||
//用页面x - 父盒子的offsetLeft - 父盒子的左边框宽度
|
||||
var x = this.getEventPage(e).pageX - $('.middle_img')[0].offsetParent.offsetLeft - $('.middle_img')[0].offsetParent.clientLeft;
|
||||
//用页面y - 父盒子的offsetTop - 父盒子的上边框宽度
|
||||
var y = this.getEventPage(e).pageY - $('.middle_img')[0].offsetParent.offsetTop - $('.middle_img')[0].offsetParent.clientTop;
|
||||
|
||||
//让阴影的坐标居中
|
||||
x -= $('.shade').width() / 2;
|
||||
y -= $('.shade').height() / 2;
|
||||
|
||||
// 移动边界限制
|
||||
let maxLeft = $('.middle_img').width() - $('.shade').width()
|
||||
let maxTop = $('.middle_img').height() - $('.shade').height()
|
||||
x = x <= 0 ? 0 : x
|
||||
x = x >= maxLeft ? maxLeft : x
|
||||
y = y <= 0 ? 0 : y
|
||||
y = y >= maxTop ? maxTop : y
|
||||
// 重新赋值当前的定位值
|
||||
$('.shade').css({
|
||||
left: x,
|
||||
top: y
|
||||
})
|
||||
// 计算出实时的大图的定位,首先计算出比例
|
||||
// 比例为x:大图宽度/小图宽度 y: 大图高度/小图高度,将小图的定位乘以比例就是大图的定位
|
||||
const xRate = $('.big_img').width() / $('.middle_img').width()
|
||||
const yRate = $('.big_img').height() / $('.middle_img').height()
|
||||
$('.big_img').css({
|
||||
left: -x*xRate,
|
||||
top: -y*yRate
|
||||
})
|
||||
// console.log(e, x, y, xRate, yRate, 66677)
|
||||
},
|
||||
// 鼠标移入阴影,去除自定义事件
|
||||
shadeMouseOver (e) {
|
||||
e.preventDefault();
|
||||
e.stopPropagation();
|
||||
// console.log(88888, e)
|
||||
},
|
||||
// 图片移出隐藏阴影和大图
|
||||
boxMouseLeave () {
|
||||
this.isShade = false
|
||||
this.isBig = false
|
||||
},
|
||||
// 切换图片
|
||||
tabPicture (item,index) {
|
||||
this.middleImg = item.attachmentPath
|
||||
this.$emit('changeName',item)
|
||||
console.log(item,index)
|
||||
},
|
||||
// 点击左边箭头
|
||||
leftArrowClick () {
|
||||
if (this.middleLeft < 0) {
|
||||
// 每次向右平移一个图片盒子的宽度
|
||||
this.middleLeft += this.itemWidth
|
||||
$('.picture_container').animate({
|
||||
left: this.middleLeft
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
// 点击右边箭头
|
||||
rightArrowClick () {
|
||||
// 每次向左平移一个盒子的宽度,最多移动的宽度为(图片数组长度-1)*每张缩略图的宽度
|
||||
if (this.middleLeft > -this.itemWidth*(this.pictureList.length-1)) {
|
||||
this.middleLeft -= this.itemWidth
|
||||
$('.picture_container').animate({
|
||||
left: this.middleLeft
|
||||
}, 500)
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 获取网页滚出去的距离(包括上面滚出去的部分和左边滚出去的部分)
|
||||
* @returns {{scrollTop: (Number|number), scrollLeft: (Number|number)}}
|
||||
*/
|
||||
getPageScroll() {
|
||||
return {
|
||||
scrollTop: window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0,
|
||||
scrollLeft: window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取事件对象点击的点,相对于文档左上角的坐标
|
||||
* @param e
|
||||
* @returns {{pageX: *, pageY: *}}
|
||||
*/
|
||||
getEventPage(e) {
|
||||
return {
|
||||
pageX: e.clientX + this.getPageScroll().scrollLeft,
|
||||
pageY: e.clientY + this.getPageScroll().scrollTop
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import url("../assets/css/magnifier.less");
|
||||
</style>
|
@ -101,6 +101,11 @@
|
||||
<a href="javascript:;" data-modal-trigger="modal-whereToBuy" onclick='bindTracking(this)' evt-name='页内弹窗' evt-cat='footererBtnClick' evt-val='在哪购买' class="rc-btn rc-btn--inverse rc-btn--icon-label rc-icon rc-bag--xs rc-brand3" title="Where to buy" role="menuitem">
|
||||
在哪购买
|
||||
</a>
|
||||
<!--
|
||||
<a class="rc-btn rc-btn--inverse rc-btn--icon-label rc-icon rc-language--xs rc-brand3" role="menuitem" data-modal-trigger="country-lang-selector">
|
||||
Language
|
||||
</a>
|
||||
-->
|
||||
<a class="rc-btn rc-btn--inverse rc-btn--icon-label rc-icon rc-up--xs rc-brand3" role="menuitem" href="#">
|
||||
回到顶部
|
||||
</a>
|
||||
@ -144,15 +149,15 @@
|
||||
<div class="ts-row-body">
|
||||
<p>
|
||||
<a href="https://weibo.com/chinaroyalcanin" target='_blank' class="rc-img--round rc-img--round--sm rc-margin-right--xs">
|
||||
<img src='/images/ico-weibo.png'>
|
||||
<img src="../assets/showimage/ico-weibo.png">
|
||||
</a>
|
||||
|
||||
<a href="https://www.zhihu.com/org/huang-jia-chong-wu-shi-pin" target='_blank' class="rc-img--round rc-img--round--sm rc-margin-right--xs">
|
||||
<img src='/images/ico-zhihu.png'>
|
||||
<img src="../assets/showimage/ico-zhihu.png">
|
||||
</a>
|
||||
|
||||
<a href="https://space.bilibili.com/2136859062" target='_blank' class="rc-img--round rc-img--round--sm rc-margin-right--xs">
|
||||
<img src='/images/ico-bilibili.png'>
|
||||
<img src="../assets/showimage/ico-bilibili.png">
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
@ -171,7 +176,7 @@
|
||||
<div class="rc-four-column rc-layout-container">
|
||||
<div class="rc-column ts-qr-container rc-text--center">
|
||||
<a href="weixin://dl/business/?t=xjjEG3b5Ycu" target='_blank' onclick='return bindTracking(this,2000)' evt-name='页脚跳转' evt-cat='footerLinkClick' evt-val='产品验证'>
|
||||
<img src="/images/qrcode-chanpin.jpg">
|
||||
<img src="../assets/showimage/qrcode-chanpin.jpg">
|
||||
<span>
|
||||
产品验证
|
||||
</span>
|
||||
@ -180,7 +185,7 @@
|
||||
|
||||
<div class="rc-column ts-qr-container rc-text--center">
|
||||
<a href="weixin://dl/business/?t=BE1OA2AngRs" target='_blank' onclick='return bindTracking(this,2000)' evt-name='页脚跳转' evt-cat='footerLinkClick' evt-val='皇家爱宠荟会员中心'>
|
||||
<img src="/images/qrcode-aichong.jpg">
|
||||
<img src="../assets/showimage/qrcode-aichong.jpg">
|
||||
<span>
|
||||
皇家爱宠荟会员中心
|
||||
</span>
|
||||
@ -188,7 +193,7 @@
|
||||
</div>
|
||||
|
||||
<div class="rc-column ts-qr-container rc-text--center">
|
||||
<img src="/images/qrcode-royal-elite.jpg">
|
||||
<img src="../assets/showimage/qrcode-royal-elite.jpg">
|
||||
<span class='rc-text-center'>
|
||||
皇家兽医精英荟
|
||||
</span>
|
||||
@ -196,7 +201,7 @@
|
||||
|
||||
<div class="rc-column ts-qr-container rc-text--center">
|
||||
<a href="https://v.douyin.com/e12mtGA/" target='_blank'>
|
||||
<img src="/images/qrcode-douyin.jpg">
|
||||
<img src="../assets/showimage/qrcode-douyin.jpg">
|
||||
<span>
|
||||
皇家宠物食品抖音官方账号
|
||||
</span>
|
||||
|
@ -38,7 +38,6 @@ export default {
|
||||
css: [
|
||||
'vant/lib/index.css',
|
||||
'element-ui/lib/theme-chalk/index.css',
|
||||
{src:'@/assets/css/global.less'},
|
||||
{src:'@/assets/css/royalcanin-custom.css'},
|
||||
{ src: "swiper/css/swiper.css" }
|
||||
|
||||
@ -77,10 +76,8 @@ export default {
|
||||
},
|
||||
// Build Configuration: https://go.nuxtjs.dev/config-build
|
||||
build: {
|
||||
analyze: true,
|
||||
assetFilter: function(assetFilename) {
|
||||
return assetFilename.endsWith('.js');
|
||||
}
|
||||
analyze: true, assetFilter: function(assetFilename) { return assetFilename.endsWith('.js'); }
|
||||
|
||||
},
|
||||
// axios: {
|
||||
// proxy: true,
|
||||
|
28614
rc-busness/package-lock.json
generated
Normal file
@ -16,17 +16,20 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@nuxtjs/axios": "^5.13.6",
|
||||
"@vant/touch-emulator": "^1.3.2",
|
||||
"amfe-flexible": "^2.2.1",
|
||||
"core-js": "^3.15.1",
|
||||
"element-ui": "^2.15.6",
|
||||
"ip": "^1.1.5",
|
||||
"jquery": "^3.6.0",
|
||||
"less": "^4.1.2",
|
||||
"less-loader": "^6.0.0",
|
||||
"nuxt": "^2.15.7",
|
||||
"nuxt-tailvue": "^1.0.95",
|
||||
"qrcodejs2": "^0.0.2",
|
||||
"swiper": "^5.4.5",
|
||||
"vant": "^2.12.22",
|
||||
"vuex-persistedstate": "^4.1.0",
|
||||
"vue-awesome-swiper": "^4.1.1"
|
||||
"vue-awesome-swiper": "^4.1.1",
|
||||
"vuex-persistedstate": "^4.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vant/area-data": "^1.1.5",
|
||||
|
@ -3,22 +3,30 @@
|
||||
|
||||
<div>
|
||||
<Myheader></Myheader>
|
||||
<div class="rc-top"></div>
|
||||
|
||||
<unlogin></unlogin>
|
||||
<!-- Suppose in header end -->
|
||||
<van-swipe :autoplay="3000" class="rc-padding-bottom--md">
|
||||
<van-swipe-item v-for="(banner, index) in showingBanners" :key="index">
|
||||
<van-swipe :autoplay="3000">
|
||||
<van-swipe-item v-for="(banner, index) in banners" :key="index">
|
||||
<img :src="banner.src" class="useraimg"/>
|
||||
</van-swipe-item>
|
||||
</van-swipe>
|
||||
|
||||
|
||||
<div class="online bold rc-md-down" id="fixed-catbar-seperator"></div>
|
||||
<!-- <div v-swiper:mySwiper="swiperOption" class="swiperWrap">
|
||||
<div class="swiper-wrapper">
|
||||
<div class="swiper-slide" v-for="(banner,index ) in banners" :key="index">
|
||||
<img :src="banner.src">
|
||||
</div>
|
||||
</div>
|
||||
<div class="swiper-pagination swiper-pagination-bullets"></div>
|
||||
</div> -->
|
||||
<div class="rc-max-width--xl">
|
||||
<div class="usermain">
|
||||
<div :class="searchBar?'rc-ma':'rc-ma searchBara'">
|
||||
<div v-if="!searchBar" class="online bold rc-md-down"></div>
|
||||
<ul class="ul-zhuan rc-margin-y--md">
|
||||
<ul class="ul-zhuan rc-margin-y--xl">
|
||||
<li
|
||||
v-for="(item, index) in discountlist"
|
||||
:key="index"
|
||||
@ -31,7 +39,6 @@
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="online bold rc-md-up" v-show="catproduct"></div>
|
||||
|
||||
<div class="rc-full-width">
|
||||
@ -111,94 +118,6 @@
|
||||
</ul>
|
||||
|
||||
|
||||
<nuxt-link :to="`/productdetails/productlist/`">
|
||||
<div class="userserlect">
|
||||
<span class="ts-standard-btn center">查看更多</span>
|
||||
</div>
|
||||
</nuxt-link>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</van-tab>
|
||||
</van-tabs>
|
||||
<div class="rc-selection">
|
||||
<ol>
|
||||
<li
|
||||
v-for="(item, index) in selection"
|
||||
:key="index"
|
||||
@click="selectGo(item, index)"
|
||||
:class="activeInde2 == index ? 'userselection' : 'unselection'"
|
||||
>
|
||||
<span>{{ item.title }}</span>
|
||||
</li>
|
||||
</ol>
|
||||
<div class="rc-maa">
|
||||
<ul>
|
||||
<li
|
||||
v-for="(item, index) in doglist"
|
||||
:key="index"
|
||||
@click="selectGoo(item, index)"
|
||||
:class="activeInde3 == index ? 'active' : 'unactive'"
|
||||
>
|
||||
<img :src="item.catimage" alt="">
|
||||
<span>{{ item.title }}</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="">
|
||||
<ul class="ts-product-list rc-margin-bottom--lg">
|
||||
<li v-for="(item,index) in rccontair" :key="index" class="rc-margin-top--md">
|
||||
<div class="rc-click rc-margin-bottom--md" @click="selectproduce(item,index)">
|
||||
<div class="rc-rccontair">
|
||||
<img :src=item.catimage alt="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="rc-column">
|
||||
<div class="rc-click" @click="selectproduce(item,index)">
|
||||
<span>{{item.title}}</span>
|
||||
<i>0.001{{item.price}}</i>
|
||||
</div>
|
||||
<strong class="ts-standard-btn ts-standard-btn--two rc-margin-y--md center" @click="selectproduce(item,index)">立即购买</strong>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<nuxt-link :to="`/productdetails/productlist/`">
|
||||
<div class="userserlect">
|
||||
<span class="ts-standard-btn center">查看更多</span>
|
||||
</div>
|
||||
</nuxt-link>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="online bold" v-show="twomao"></div>
|
||||
<div class="selectionswitch rc-full-width rc-max-width--xl rc-padding-y--md" v-show="twomao" ref="catgan">
|
||||
<h2 class="rc-beta rc-text--center">全价猫干粮</h2>
|
||||
<van-tabs @change='catclick' class="van-tabs">
|
||||
<van-tab v-for="(item,index) in discoun" :key="index" :title="item.title">
|
||||
<div class="rc-contair">
|
||||
<ul class="ts-product-list rc-margin-bottom--lg">
|
||||
<li v-for="(item,index) in catgan" :key="index" class="rc-margin-top--md">
|
||||
<div class="rc-click rc-margin-bottom--md" @click="selectproduce(item,index)">
|
||||
<div class="rc-rccontair">
|
||||
<img :src=item.picture alt="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="rc-column">
|
||||
<div class="rc-click" @click="selectproduce(item,index)">
|
||||
<span>{{item.name}}</span>
|
||||
<i>0.001{{item.price}}</i>
|
||||
</div>
|
||||
<strong class="ts-standard-btn ts-standard-btn--two rc-margin-y--md center" @click="selectproduce(item,index)">立即购买</strong>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<nuxt-link :to="`/productdetails/productlist/`">
|
||||
<div class="userserlect">
|
||||
<span class="ts-standard-btn center">查看更多</span>
|
||||
@ -295,7 +214,7 @@
|
||||
<div class="rc-click" @click="selectproduce(item,index)">
|
||||
<div class="uservideo">
|
||||
<video width="300px" height="251" controls="controls">
|
||||
<source :src= item.video type="video/ogg">
|
||||
<source :src= item.video type="video/ogg" autoplay>
|
||||
</video>
|
||||
</div>
|
||||
|
||||
@ -314,12 +233,10 @@
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="online bold" v-show="threemao"></div>
|
||||
|
||||
|
||||
<div class="selectionswitch rc-full-width rc-max-width--xl rc-padding-y--md" v-show="threemao" ref="doggshi">
|
||||
<h2 class="rc-beta rc-text--center">全价犬湿粮</h2>
|
||||
<van-tabs @change='userdog' class="van-tabs">
|
||||
@ -700,9 +617,11 @@
|
||||
</template>
|
||||
<script>
|
||||
let vm=null;
|
||||
import $ from 'jquery'
|
||||
import Myheader from "~/components/header.vue";
|
||||
import Myfooter from "~/components/rc-footer.vue";
|
||||
import unlogin from "~/components/unlogin.vue";
|
||||
import '@vant/touch-emulator';
|
||||
import { userquery,postCourseId,biaomessage,userque,searchchanpin } from "../ajax/getData";
|
||||
const settings = require("@/config");
|
||||
export default {
|
||||
@ -763,6 +682,7 @@
|
||||
selection:[
|
||||
{
|
||||
title: "幼猫",
|
||||
|
||||
},
|
||||
{
|
||||
title: "成猫",
|
||||
@ -772,24 +692,21 @@
|
||||
},
|
||||
{
|
||||
title: "品种猫",
|
||||
|
||||
},
|
||||
{
|
||||
title: "亚健康",
|
||||
|
||||
},
|
||||
],
|
||||
banners:{
|
||||
'mobile':[
|
||||
{src:"/images/banner/one.jpg",link:""},
|
||||
{src:"/images/banner/two.jpg",link:""},
|
||||
{src:"/images/banner/three.jpg",link:""},
|
||||
{src:"/images/banner/four.jpg",link:""}
|
||||
|
||||
banners:[
|
||||
{src:require("../assets/image/one.jpg"),link:""},
|
||||
{src:require("../assets/image/two.jpg"),link:""},
|
||||
{src:require("../assets/image/three.jpg"),link:""},
|
||||
{src:require("../assets/image/four.jpg"),link:""},
|
||||
],
|
||||
'pc':[
|
||||
{src:"/images/banner/pc-banner1.png",link:""},
|
||||
{src:"/images/banner/pc-banner2.png",link:""}
|
||||
]
|
||||
},
|
||||
showingBanners:[],
|
||||
|
||||
userdoglist: [
|
||||
{
|
||||
title: "小型犬",
|
||||
@ -908,29 +825,29 @@
|
||||
catlistvideo: [
|
||||
{
|
||||
title: "明星猫粮",
|
||||
video:"/images/cat/one.mp4",
|
||||
catimage: "/images/cat/one.jpg",
|
||||
video:require("../assets/cat/one.mp4"),
|
||||
catimage: require("../assets/cat/one.jpg"),
|
||||
detail:'为10月龄及以上英国短毛猫成猫量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
{
|
||||
title: "猫湿粮",
|
||||
video:"/images/cat/two.mp4",
|
||||
catimage: "/images/cat/two.jpg",
|
||||
video:require("../assets/cat/two.mp4"),
|
||||
catimage: require("../assets/cat/two.jpg"),
|
||||
detail:'为10月龄及以上英国短毛猫成猫量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
{
|
||||
title: "猫干粮",
|
||||
video:"/images/cat/three.mp4",
|
||||
catimage: "/images/cat/three.jpg",
|
||||
video:require("../assets/cat/three.mp4"),
|
||||
catimage: require("../assets/cat/three.jpg"),
|
||||
detail:'为10月龄及以上英国短毛猫成猫量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
{
|
||||
title: "猫干粮",
|
||||
video:"/images/cat/four.mp4",
|
||||
catimage: "/images/cat/four.jpg",
|
||||
video:require("../assets/cat/four.mp4"),
|
||||
catimage: require("../assets/cat/four.jpg"),
|
||||
detail:'为10月龄及以上英国短毛猫成猫量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
@ -940,29 +857,29 @@
|
||||
doglistvideo: [
|
||||
{
|
||||
title: "明星狗粮",
|
||||
video:"/images/dog/one.mp4",
|
||||
catimage: "/images/dog/one.jpg",
|
||||
video:require("../assets/dog/one.mp4"),
|
||||
catimage: require("../assets/dog/one.jpg"),
|
||||
detail:'为10月龄及以上成犬量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
{
|
||||
title: "狗湿粮",
|
||||
video:"/images/dog/two.mp4",
|
||||
catimage: "/images/dog/two.jpg",
|
||||
video:require("../assets/dog/two.mp4"),
|
||||
catimage: require("../assets/dog/two.jpg"),
|
||||
detail:'为10月龄及以上英国成犬量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
{
|
||||
title: "狗干粮",
|
||||
video:"/images/dog/three.mp4",
|
||||
catimage: "/images/dog/three.jpg",
|
||||
video:require("../assets/dog/three.mp4"),
|
||||
catimage: require("../assets/dog/three.jpg"),
|
||||
detail:'为10月龄及以上英国犬成犬量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
{
|
||||
title: "狗干粮",
|
||||
video:"/images/dog/four.mp4",
|
||||
catimage: "/images/dog/four.jpg",
|
||||
video:require("../assets/dog/four.mp4"),
|
||||
catimage: require("../assets/dog/four.jpg"),
|
||||
detail:'为10月龄及以上英国成犬量身打造的精准营养',
|
||||
price:'¥123.45',
|
||||
},
|
||||
@ -991,6 +908,7 @@
|
||||
title: "皇家英国短毛猫全价湿粮",
|
||||
price:'¥123.45',
|
||||
ordernum: 1,
|
||||
|
||||
catimage: require("../assets/image/rc-cat.png"),
|
||||
},
|
||||
|
||||
@ -1056,12 +974,12 @@
|
||||
},
|
||||
on: {
|
||||
slideChange(Swiper) {
|
||||
//console.log('onSlideChangeEnd',this);
|
||||
console.log('onSlideChangeEnd',this);
|
||||
// vm.ifadroind('','',this.realIndex);
|
||||
vm.useraindex=this.realIndex;
|
||||
},
|
||||
tap() {
|
||||
//console.log('onTap', this);
|
||||
console.log('onTap', this);
|
||||
}
|
||||
// slideChange() {
|
||||
// console.log('onSlideChangeEnd', this);
|
||||
@ -1309,12 +1227,11 @@
|
||||
},
|
||||
handleScroll(e)
|
||||
{
|
||||
let fixedCatbarSeperator = document.getElementById("fixed-catbar-seperator");
|
||||
if(!fixedCatbarSeperator)
|
||||
{
|
||||
return;
|
||||
}
|
||||
let scrolltop = document.documentElement.scrollTop || document.body.scrollTop;
|
||||
let fixedCatbarSeperator = document.querySelector("#fixed-catbar-seperator");
|
||||
// console.log(fixedCatbarSeperator.offsetTop,scrolltop);
|
||||
if(fixedCatbarSeperator!=='null' &&fixedCatbarSeperator!=='underfined'){
|
||||
console.log('-====');
|
||||
if((scrolltop-fixedCatbarSeperator.offsetTop)>0)
|
||||
{
|
||||
this.gotop = true
|
||||
|
@ -1,8 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<Myheader></Myheader>
|
||||
<div class="rc-top"></div>
|
||||
<div class="rc-main rc-layout-container rc-max-width--lg">
|
||||
|
||||
<div class="rc-usermain ">
|
||||
<ul>
|
||||
<li v-for="(item,index) in userrecord" :key="index">
|
||||
@ -10,23 +9,29 @@
|
||||
</li>
|
||||
</ul>
|
||||
<ol>
|
||||
|
||||
<li v-for="(item,index) in usermessage" :key="index">
|
||||
<span>{{item.startDate}}</span>
|
||||
<em>{{item.changeValue}}</em>
|
||||
<i>{{item.remark}}</i>
|
||||
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="rc-button">
|
||||
<div class="rc-order">
|
||||
<span>积分兑换</span>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<Myfooter v-on:litentop='showmesg'></Myfooter>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Myheader from '~/components/header.vue'
|
||||
import Myfooter from '~/components/rc-footer.vue'
|
||||
import { memberAccount } from "../../ajax/getData";
|
||||
export default {
|
||||
data(){
|
||||
@ -103,7 +108,6 @@ export default {
|
||||
},
|
||||
components:{
|
||||
Myheader,
|
||||
Myfooter
|
||||
},
|
||||
|
||||
}
|
||||
@ -111,4 +115,6 @@ export default {
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import url("../../assets/css/integral.less");
|
||||
|
||||
|
||||
</style>
|
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<div>
|
||||
<Myheader></Myheader>
|
||||
<!-- <tabs></tabs> -->
|
||||
<div class="rc-top"></div>
|
||||
<tabs></tabs>
|
||||
<div class="rc-layout-container rc-one-column rc-full-width ts-mypersonal">
|
||||
<div class="rc-column">
|
||||
<!-- <div class="rc-title">
|
||||
@ -47,8 +47,9 @@
|
||||
<div class="rc-cordd">
|
||||
<span>距离升级还差:</span> <span class="lackOfPoint">{{ rcvalue }}</span>
|
||||
<div class="block">
|
||||
<div class="ts-point-tag rc-md-up"></div>
|
||||
<div class="r-block" ref="userblock"></div>
|
||||
<!-- <el-slider v-model="value" range show-stops :max="10"> </el-slider> -->
|
||||
|
||||
</div>
|
||||
<div class="rc-value">
|
||||
<span>0</span>
|
||||
@ -128,7 +129,7 @@
|
||||
|
||||
|
||||
|
||||
<MyFooter></MyFooter>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
@ -137,7 +138,6 @@
|
||||
|
||||
<script>
|
||||
import Myheader from '~/components/header.vue'
|
||||
import MyFooter from '~/components/rc-footer.vue'
|
||||
import tabs from "@/components/tabs.vue";
|
||||
export default {
|
||||
middleware: 'metaTitle',
|
||||
@ -201,7 +201,6 @@ export default {
|
||||
},
|
||||
components: {
|
||||
Myheader,
|
||||
MyFooter,
|
||||
tabs,
|
||||
},
|
||||
watch:{
|
||||
@ -313,7 +312,7 @@ obligation(item,index){
|
||||
var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
|
||||
|
||||
if (!(bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM)) {
|
||||
//console.log("当前是电脑打开")
|
||||
console.log("当前是电脑打开")
|
||||
if(this.userlog==true){
|
||||
this.usermessage='关注皇家爱宠荟,修改个人资料',
|
||||
this.dialogInfo1=true;
|
||||
@ -323,7 +322,7 @@ obligation(item,index){
|
||||
}
|
||||
|
||||
}else{
|
||||
//console.log("当前是手机打开")
|
||||
console.log("当前是手机打开")
|
||||
this.dialogInfo1=false;
|
||||
}
|
||||
},
|
||||
@ -343,7 +342,8 @@ obligation(item,index){
|
||||
this.$router.push({
|
||||
path: `/useraddress/openaddress/`
|
||||
})
|
||||
//console.log('这是地址的跳转');
|
||||
console.log('这是地址的跳转');
|
||||
|
||||
}
|
||||
if(index==0){
|
||||
this.userlog=true
|
||||
@ -368,18 +368,20 @@ obligation(item,index){
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
//console.log(this.islogin)
|
||||
//console.log(this.userid);
|
||||
console.log(this.islogin)
|
||||
console.log(this.userid);
|
||||
let userwidth=0;
|
||||
this.ifadroind();
|
||||
let user= JSON.parse(localStorage.getItem("userInfo"));
|
||||
//console.log(user)
|
||||
console.log(user)
|
||||
if(user!==null){
|
||||
//console.log('11')
|
||||
console.log('11')
|
||||
this.userid=user.data;
|
||||
console.log(this.userid);
|
||||
this.usertitle=this.userid.memberName;
|
||||
|
||||
this.rcrcord=this.userid.availiblePoint;
|
||||
|
||||
if(this.userid.memberLevel==1){
|
||||
let userlength=this.userid.availiblePoint.toString().length;
|
||||
this.userimage=require('../../assets/image/rc-new.png');
|
||||
@ -388,7 +390,7 @@ obligation(item,index){
|
||||
this.rcvalue=this.uservalue-this.userid.availiblePoint; //新手总积分减去本身的积分
|
||||
if(userlength==1||userlength==2||userlength==3||userlength==4){
|
||||
userwidth=this.userid.availiblePoint/100
|
||||
//console.log(userwidth);
|
||||
console.log(userwidth);
|
||||
}
|
||||
}
|
||||
else if(this.userid.memberLevel==2){
|
||||
@ -404,15 +406,8 @@ obligation(item,index){
|
||||
userwidth=100
|
||||
}
|
||||
this.$refs.userblock.style.width=userwidth+'%'
|
||||
let tagEle=document.querySelector('.ts-point-tag');
|
||||
if(tagEle){
|
||||
tagEle.innerText=this.userid.availiblePoint;
|
||||
let tagEleLeft=userwidth-1;
|
||||
if(tagEleLeft<=0)
|
||||
tagEleLeft=0;
|
||||
tagEle.style.left=tagEleLeft+"%";
|
||||
}
|
||||
} else{
|
||||
console.log('---');
|
||||
this.userid=[];
|
||||
}
|
||||
|
||||
@ -420,6 +415,8 @@ obligation(item,index){
|
||||
console.log(this.userid)
|
||||
this.islogin=true;
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<Myheader></Myheader>
|
||||
<tabs></tabs>
|
||||
<div class="online"></div>
|
||||
<div class="rc-main" v-for="(item,index) in goldmedal" :key="index" >
|
||||
<div class="rc-border"></div>
|
||||
@ -104,7 +105,10 @@
|
||||
<script>
|
||||
import Myheader from "~/components/header.vue";
|
||||
import {userin} from "../../ajax/getData";
|
||||
import tabs from "@/components/tabs.vue";
|
||||
export default {
|
||||
middleware: 'metaTitle',
|
||||
meta: {title: '订单结算'},
|
||||
data() {
|
||||
return {
|
||||
goldmedal:[],
|
||||
@ -187,6 +191,7 @@ jiesuan(){
|
||||
},
|
||||
components: {
|
||||
Myheader,
|
||||
tabs
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
@ -1,8 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<Myheader></Myheader>
|
||||
<div class="rc-top"></div>
|
||||
<div class="rc-full-width rc-layout-container">
|
||||
<div class="rc-header">
|
||||
<div class="rc-main">
|
||||
<div class="rc-headera">
|
||||
<span
|
||||
@ -127,30 +126,18 @@ export default {
|
||||
buttontitle:'立即支付',
|
||||
userprice: "167.00",
|
||||
catimage: require("../../assets/image/rc-win.png"),
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:167
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
ordernumber: "1111111111111111111",
|
||||
|
||||
usereat: "每年4次免积分产品试吃",
|
||||
ordernum: 0,
|
||||
buttontitle:'再次购买',
|
||||
catimage: require("../../assets/image/usereat.png"),
|
||||
orderstype: 2,
|
||||
userprice: "167.00",
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:167
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
ordernumber: "1111111111111111111",
|
||||
@ -160,13 +147,6 @@ export default {
|
||||
catimage: require("../../assets/image/usercar.png"),
|
||||
orderstype: 3,
|
||||
userprice: "167.00",
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:167
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
ordernumber: "1111111111111111111",
|
||||
@ -183,13 +163,6 @@ export default {
|
||||
catimage: require("../../assets/image/consult.png"),
|
||||
orderstype: 2,
|
||||
userprice: "167.00",
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:167
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
ordernumber: "1111111111111111111",
|
||||
@ -198,13 +171,6 @@ export default {
|
||||
catimage: require("../../assets/image/rc-book.png"),
|
||||
orderstype: 3,
|
||||
userprice: "167.00",
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:100
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
ordernumber: "1111111111111111111",
|
||||
@ -213,13 +179,6 @@ export default {
|
||||
catimage: require("../../assets/image/userself.png"),
|
||||
orderstype: 3,
|
||||
userprice: "167.00",
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:100
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
usereat: "每年积分兑换1次价值288元的免费体检及100元医院绝育券",
|
||||
@ -227,13 +186,6 @@ export default {
|
||||
catimage: require("../../assets/image/rc-health.png"),
|
||||
orderstype: 3,
|
||||
userprice: "167.00",
|
||||
orderDetailList:{
|
||||
userlist:{
|
||||
num:10,
|
||||
pcs:10,
|
||||
ecprice:100
|
||||
}
|
||||
}
|
||||
},
|
||||
],
|
||||
};
|
||||
@ -243,6 +195,7 @@ export default {
|
||||
let user= JSON.parse(localStorage.getItem("userInfo"));
|
||||
this.userdata=user;
|
||||
let stype=this.$route.query.stype
|
||||
|
||||
if(user=='' ||user==null){
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
@ -252,6 +205,8 @@ export default {
|
||||
}else{
|
||||
this.indet(user.data.mobile,stype);
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
components: {
|
||||
Myheader,
|
||||
@ -260,12 +215,13 @@ export default {
|
||||
async indet(mobile,stype){
|
||||
let data=await userindent(mobile,);
|
||||
this.activeIndex=stype;
|
||||
//this.goldmedal=data;
|
||||
this.goldmedal=data;
|
||||
let list=[];
|
||||
let fahuolist=[];
|
||||
console.log(this.goldmedal);
|
||||
for(let i=0;i<this.goldmedal.length;i++){
|
||||
list.push(this.goldmedal[i].orderDetailList);
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
@ -280,12 +236,14 @@ export default {
|
||||
});
|
||||
this.indet(this.userdata.data.mobile);
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
userpay(item,index){
|
||||
console.log(item);
|
||||
if(item.status==0){
|
||||
this.canceldanhao(item.orderNumber);
|
||||
|
||||
}
|
||||
console.log(item.buttontitle);
|
||||
if(item.buttontitle=='立即支付'){
|
||||
@ -303,6 +261,8 @@ export default {
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
},
|
||||
selectGoods(item, index) {
|
||||
this.activeIndex = index;
|
||||
@ -339,6 +299,360 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import url("../../assets/css/global.less");
|
||||
@import url("../../assets/css/useraddress.less");
|
||||
|
||||
// 手机端
|
||||
@media screen and(min-width: 320px) and(max-width:768px) {
|
||||
.active {
|
||||
font-size: 14px;
|
||||
color: #e2001a;
|
||||
cursor: pointer;
|
||||
}
|
||||
.unactive {
|
||||
font-size: 14px;
|
||||
color: #444444;
|
||||
cursor: pointer;
|
||||
}
|
||||
.rc-header {
|
||||
|
||||
|
||||
width: 100%;
|
||||
.rc-main {
|
||||
width: 92%;
|
||||
margin: 0 auto;
|
||||
.rc-usermaina{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.rc-headera {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
height: 64px;
|
||||
align-items: center;
|
||||
}
|
||||
.rc-userheader{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.rc-center {
|
||||
width: 100%;
|
||||
height: 245px;
|
||||
margin-top: 8px;
|
||||
.rc-usermain {
|
||||
.pc-bottom{
|
||||
display: none;
|
||||
}
|
||||
|
||||
display: flex;
|
||||
.rc-image {
|
||||
border: 1px solid #D8D8D8;
|
||||
margin-top: 17px;
|
||||
;
|
||||
img {
|
||||
width: 96px;
|
||||
height: 96px;
|
||||
display: block;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.rc-right {
|
||||
|
||||
.rc-userbottomm{
|
||||
display: none;
|
||||
}
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
margin-left: 16px;
|
||||
justify-content: center;
|
||||
em
|
||||
{
|
||||
font-style: normal;
|
||||
display: block;
|
||||
font-size: 16px;
|
||||
margin-top: 18px;
|
||||
font-weight: bold;
|
||||
|
||||
color: #E1001A;
|
||||
}
|
||||
}
|
||||
.rc-userright {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
color: #666666;
|
||||
font-size: 14px;
|
||||
span{
|
||||
display: block;
|
||||
margin-top: 16px;
|
||||
}
|
||||
}
|
||||
.rc-userbottom {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-top: 8px;
|
||||
span{
|
||||
color: #666666;
|
||||
font-size: 14px;
|
||||
}
|
||||
i{
|
||||
font-style: normal;
|
||||
color: #E1001A;
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rc-bottom {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-top: 24px;
|
||||
span {
|
||||
display: block;
|
||||
width: 130px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
line-height: 40px;
|
||||
text-align: center;
|
||||
color: #e2001a;
|
||||
height: 40px;
|
||||
border: 2px solid #e2001a;
|
||||
justify-content: center;
|
||||
border-radius: 30px;
|
||||
font-weight: bold;
|
||||
}
|
||||
span:last-child{
|
||||
margin-left: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rc-title {
|
||||
height: 52px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-bottom: 1px solid #d8d8d8;
|
||||
justify-content: space-between;
|
||||
span{
|
||||
font-size: 14px;
|
||||
color: #999999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
em{
|
||||
font-style: normal;
|
||||
font-size: 14px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
i{
|
||||
font-style: normal;
|
||||
font-size: 14px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
.rc-usertitle strong{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// /* 最小768px最大1920 *pc端/
|
||||
@media screen and (min-width: 768px) and (max-width: 1920px) {
|
||||
.active {
|
||||
font-size: 18px;
|
||||
color: #e2001a;
|
||||
cursor: pointer;
|
||||
// margin-left: 40px;
|
||||
}
|
||||
.unactive {
|
||||
font-size: 18px;
|
||||
color: #444444;
|
||||
cursor: pointer;
|
||||
// margin-left: 80px;
|
||||
}
|
||||
.rc-header {
|
||||
.rc-main {
|
||||
width: 92%;
|
||||
margin: 0 auto;
|
||||
|
||||
.rc-headera {
|
||||
display: flex;
|
||||
height: 64px;
|
||||
align-items: center;
|
||||
border: 1px solid #D7D7D7;
|
||||
border-radius: 3px 3px 0px 0px;
|
||||
font-size: 18px;
|
||||
span:first-child{
|
||||
margin-left: 40px;
|
||||
}
|
||||
span{
|
||||
margin-left: 80px;
|
||||
}
|
||||
}
|
||||
|
||||
.rc-userheader{
|
||||
width: 100%;
|
||||
height: 64px;
|
||||
background: #F6F6F6;
|
||||
border: 1px solid #D7D7D7;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 18px;
|
||||
span:first-child{
|
||||
margin-left: 173px;
|
||||
}
|
||||
span:last-child{
|
||||
margin-right: 87px;
|
||||
}
|
||||
}
|
||||
|
||||
.rc-center {
|
||||
width: 100%;
|
||||
height: 220px;
|
||||
border: 1px solid #D7D7D7;
|
||||
.rc-usermain {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
height: 164px;
|
||||
.rc-usercenter{
|
||||
width: 25%;
|
||||
em{
|
||||
font-size: 18px;
|
||||
}
|
||||
}
|
||||
.rc-image {
|
||||
border: 1px solid #D8D8D8;
|
||||
margin-left: 40px;
|
||||
|
||||
img {
|
||||
width: 96px;
|
||||
height: 96px;
|
||||
display: block;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.rc-right {
|
||||
.rc-userbottom{
|
||||
display: none;
|
||||
}
|
||||
display: flex;
|
||||
|
||||
width: 100%;
|
||||
margin-left: 16px;
|
||||
|
||||
em
|
||||
{
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
margin-top: 18px;
|
||||
|
||||
color: #E1001A;
|
||||
}
|
||||
}
|
||||
.rc-userright {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
color: #666666;
|
||||
font-size: 16px;
|
||||
span{
|
||||
display: block;
|
||||
margin-top: 6px;
|
||||
}
|
||||
}
|
||||
.rc-userbottomm {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
width: 58%;
|
||||
font-size: 20px;
|
||||
color: #E1001A;
|
||||
font-weight: bold;
|
||||
i{
|
||||
font-style: normal;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
.pc-bottom {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
flex-direction: column;
|
||||
margin-right: 40px;
|
||||
|
||||
span {
|
||||
display: block;
|
||||
width: 130px;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
line-height: 40px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
color: #e2001a;
|
||||
height: 40px;
|
||||
border: 2px solid #e2001a;
|
||||
justify-content: center;
|
||||
border-radius: 30px;
|
||||
}
|
||||
span:last-child{
|
||||
margin-top: 15px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rc-bottom {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.rc-title {
|
||||
height: 55px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-bottom: 1px solid #d8d8d8;
|
||||
justify-content: space-between;
|
||||
span{
|
||||
font-size: 16px;
|
||||
color: #999999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
strong{
|
||||
font-style: normal;
|
||||
font-size: 16px;
|
||||
color: #444444;
|
||||
}
|
||||
em{
|
||||
font-style: normal;
|
||||
font-size: 16px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
i{
|
||||
font-style: normal;
|
||||
font-size: 16px;
|
||||
margin-left: 40px;
|
||||
|
||||
color: #333333;
|
||||
}
|
||||
.rc-usertitle{
|
||||
margin-right: 73px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
em{
|
||||
display: block;
|
||||
margin-left: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
@ -2,11 +2,14 @@
|
||||
<div>
|
||||
<div class="user" v-for="(item,index) in newlist" :key="index">
|
||||
<Myheader></Myheader>
|
||||
<div class="rc-top"></div>
|
||||
<unlogin></unlogin>
|
||||
<tabs></tabs>
|
||||
<div class="online" ></div>
|
||||
<div class="online" id="fixed-catbar-seperator"></div>
|
||||
<div class="rc-top"></div>
|
||||
<div class="rc-usermain ts-product-detail rc-max-width--xl rc-layout-container rc-two-column rc-border-bottom rc-border-colour--brand4">
|
||||
<!--
|
||||
<magnifier v-bind:parentmsg="msg" ></magnifier>
|
||||
-->
|
||||
<div class="rc-column">
|
||||
<div data-js-carousel="" data-image-gallery="true">
|
||||
<div class="rc-carousel rc-carousel__gallery-image" data-zoom-container="328b2e5f-6904-4cac-9709-51ed18d2500f" data-zoom-factor="2">
|
||||
@ -44,14 +47,14 @@
|
||||
</div>
|
||||
|
||||
<div class="ts-product-header rc-column" id="328b2e5f-6904-4cac-9709-51ed18d2500f">
|
||||
<div class="usermain fixed-catbar-seperator">
|
||||
<div class="usermain">
|
||||
<div class="online bold rc-md-down"></div>
|
||||
<div class="rc-main">
|
||||
<div class="rc-title">
|
||||
<h2>{{ item.productName }}</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="online rc-md-down" id="fixed-catbar-seperator"></div>
|
||||
<div class="online rc-md-down"></div>
|
||||
<div class="rc-main">
|
||||
<div class="productdetails">
|
||||
<div class="rc-productdetail">
|
||||
@ -220,6 +223,7 @@
|
||||
|
||||
<script>
|
||||
import Myheader from "~/components/header.vue";
|
||||
import magnifier from "@/components/magnifier.vue";
|
||||
import tabs from "@/components/tabs.vue";
|
||||
import unlogin from "~/components/unlogin.vue";
|
||||
import { mapMutations } from "vuex";
|
||||
@ -316,6 +320,7 @@ export default {
|
||||
components: {
|
||||
Myheader,
|
||||
tabs,
|
||||
magnifier,
|
||||
unlogin,
|
||||
Myfooter
|
||||
|
||||
@ -329,14 +334,19 @@ export default {
|
||||
console.log(this.productCode)
|
||||
this.userquery(this.productCode);
|
||||
console.log(this.userlistmenu)
|
||||
this.$nextTick(()=>{})
|
||||
this.$nextTick(()=>{
|
||||
|
||||
})
|
||||
if(stype==1){
|
||||
this.userbuy=true;
|
||||
}else if(stype==2){
|
||||
console.log('这是要消失的')
|
||||
this.$nextTick(() => {
|
||||
this.userbuy=false;
|
||||
|
||||
})
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -346,11 +356,7 @@ export default {
|
||||
...mapMutations(["changemessage"]),
|
||||
handleScroll(e)
|
||||
{
|
||||
let fixedCatbarSeperator = document.getElementById("fixed-catbar-seperator");
|
||||
if(!fixedCatbarSeperator)
|
||||
{
|
||||
return;
|
||||
}
|
||||
let fixedCatbarSeperator = document.querySelector("#fixed-catbar-seperator");
|
||||
let scrolltop = document.documentElement.scrollTop || document.body.scrollTop;
|
||||
if(fixedCatbarSeperator!=='null' ){
|
||||
if((scrolltop-fixedCatbarSeperator.offsetTop))
|
||||
@ -546,11 +552,13 @@ if(this.usermessage.data!==''||this.usermessage.data!==undefined){
|
||||
console.log(data);
|
||||
},
|
||||
usertanchu(item,orderm){
|
||||
|
||||
let user= localStorage.getItem("userInfo");
|
||||
if(user==undefined||user==null||user==''){
|
||||
this.dialogInfo2=true;
|
||||
return
|
||||
}else{
|
||||
|
||||
this.courseId(item);
|
||||
if(orderm==0){
|
||||
this.$message({
|
||||
@ -564,7 +572,12 @@ usertanchu(item,orderm){
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
},
|
||||
userget(){
|
||||
|
||||
|
@ -466,27 +466,13 @@ export default {
|
||||
openclose(){
|
||||
this.dialogInfo1=false;
|
||||
},
|
||||
selectproduce(item){
|
||||
if(item.productList[0]==undefined){
|
||||
item.productlist[0].productCode=0;
|
||||
}
|
||||
if(item.productList[0]==undefined){
|
||||
item.productlist[0]=[];
|
||||
}
|
||||
selectproduce(){
|
||||
this.$router.push({
|
||||
path: "/productdetails/producted",
|
||||
query: {
|
||||
stype: 1,
|
||||
productCode:item.productList[0].productCode
|
||||
},
|
||||
});
|
||||
|
||||
// this.$router.push({
|
||||
// path: "/productdetails/producted",
|
||||
// query: {
|
||||
// stype: 1,
|
||||
// }
|
||||
// });
|
||||
},
|
||||
ifadroind(){
|
||||
var sUserAgent = navigator.userAgent.toLowerCase();
|
||||
@ -500,7 +486,7 @@ export default {
|
||||
var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
|
||||
|
||||
if (!(bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM)) {
|
||||
//console.log("当前是电脑打开")
|
||||
console.log("当前是电脑打开")
|
||||
this.$nextTick(() => {
|
||||
|
||||
this.isadrond=false;
|
||||
@ -512,7 +498,7 @@ export default {
|
||||
|
||||
|
||||
}else{
|
||||
//console.log("当前是手机打开")
|
||||
console.log("当前是手机打开")
|
||||
this.$nextTick(() => {
|
||||
|
||||
this.isadrond=true;
|
||||
@ -614,6 +600,7 @@ export default {
|
||||
this.userserachlist.push(categoryName)
|
||||
}
|
||||
}
|
||||
|
||||
this.usersearch(this.userserachlist)
|
||||
},
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
// <!-- -->
|
||||
<template>
|
||||
|
||||
<div class="container rc-full-width">
|
||||
<Myheader></Myheader>
|
||||
<div class="rc-top"></div>
|
||||
|
||||
<div class="content ts-max-width--460">
|
||||
<h2 class="rc-beta rc-text--center">账号注册</h2>
|
||||
@ -116,12 +117,12 @@ export default {
|
||||
loading:false,
|
||||
usertitle:true,
|
||||
gender: '',
|
||||
inRank:false,
|
||||
ifpassword:false
|
||||
inRank:false
|
||||
|
||||
};
|
||||
},
|
||||
components: {
|
||||
Myheader,
|
||||
// Myheader,
|
||||
},
|
||||
computed: {
|
||||
usertel () {
|
||||
@ -142,6 +143,19 @@ export default {
|
||||
return ''
|
||||
}
|
||||
},
|
||||
// test () {
|
||||
// if (this.sms === ""){
|
||||
// return ''
|
||||
// }else if(this.sms.length !== 5){
|
||||
// return '验证码格式错误'
|
||||
// }else {
|
||||
// return ''
|
||||
// }
|
||||
// }
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
mounted(){
|
||||
},
|
||||
@ -151,26 +165,32 @@ export default {
|
||||
|
||||
//获取验证码
|
||||
async usermsg() {
|
||||
//console.log("-----");
|
||||
console.log("-----");
|
||||
let data = await sendMsg(this.tel);
|
||||
if(data){
|
||||
//console.log(data);
|
||||
//this.captchadata=data.msgNum;
|
||||
console.log(data);
|
||||
this.captchadata=data.msgNum;
|
||||
this.tamp=data.tamp;
|
||||
this.hash=data.hash;
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
//发送验证码数据
|
||||
async vadmsg() {
|
||||
//console.log("-----");
|
||||
let data = await vadatnmsg(this.sms,this.hash,this.tamp);
|
||||
console.log("-----");
|
||||
let data = await vadatnmsg(this.captchadata,this.hash,this.tamp);
|
||||
if(data){
|
||||
return data;
|
||||
console.log(data);
|
||||
if(!data.code==1){
|
||||
return false
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
checkBox(){
|
||||
//console.log(event.target.checked)
|
||||
console.log(event.target.checked)
|
||||
this.usercheckbox=event.target.checked
|
||||
|
||||
},
|
||||
@ -181,7 +201,7 @@ export default {
|
||||
if(data){
|
||||
console.log(data);
|
||||
}
|
||||
//console.log(data);
|
||||
console.log(data);
|
||||
},
|
||||
//注册账户
|
||||
sendCode () {
|
||||
@ -222,13 +242,13 @@ export default {
|
||||
return
|
||||
|
||||
}
|
||||
// if(this.sms!==this.captchadata){
|
||||
// this.$message({
|
||||
// type: 'warning',
|
||||
// message: '验证码输入有误请重新输入'
|
||||
// });
|
||||
// return
|
||||
// }
|
||||
if(this.sms!==this.captchadata){
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '验证码输入有误请重新输入'
|
||||
});
|
||||
return
|
||||
}
|
||||
if(this.sms==''){
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
@ -241,7 +261,7 @@ export default {
|
||||
console.log('----');
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '请先同意隐私声明和账号使用协议'
|
||||
message: '请先勾选'
|
||||
});
|
||||
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
|
||||
this.$message({
|
||||
@ -253,31 +273,30 @@ export default {
|
||||
}
|
||||
}
|
||||
else{
|
||||
//let user= JSON.parse(localStorage.getItem("userInfo"));
|
||||
let data = await this.vadmsg();
|
||||
if(data.code=="1")
|
||||
{
|
||||
data=await useredit(this.tel);
|
||||
if(data.code=='1'){
|
||||
let couponId='0000000123';
|
||||
this.serdiscount(this.tel,couponId);
|
||||
setTimeout(() => {
|
||||
this.serdiscount(this.tel,"0000000140");
|
||||
}, 100);
|
||||
setTimeout(() => {
|
||||
this.serdiscount(this.tel,"0000000122");
|
||||
}, 500);
|
||||
this.$router.push({
|
||||
path: "/",
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
let user= JSON.parse(localStorage.getItem("userInfo"));
|
||||
console.log(this.tel);
|
||||
let data=await useredit(this.tel);
|
||||
this.vadmsg();
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: data.msg
|
||||
});
|
||||
if(data){
|
||||
let couponId='0000000123';
|
||||
this.serdiscount(user.data.mobile,couponId);
|
||||
setTimeout(() => {
|
||||
this.serdiscount(user.data.mobile,"0000000140");
|
||||
}, 100);
|
||||
setTimeout(() => {
|
||||
this.serdiscount(user.data.mobile,"0000000122");
|
||||
}, 500);
|
||||
|
||||
}
|
||||
|
||||
return
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="container rc-full-width">
|
||||
<Myheader></Myheader>
|
||||
<div class="rc-top"></div>
|
||||
|
||||
<div class="content ts-max-width--460">
|
||||
<h2 class="rc-beta rc-text--center">{{ usertitle ? "账号登录" : "" }}</h2>
|
||||
<!-- Deprecated : No tab switching as no password
|
||||
@ -15,6 +15,7 @@
|
||||
>
|
||||
</div>
|
||||
-->
|
||||
|
||||
<div class="rc-layout-container rc-one-column">
|
||||
<div class="rc-column">
|
||||
<input
|
||||
@ -145,7 +146,7 @@ export default {
|
||||
swiperData: [
|
||||
// { index: 1 ,title:'短信验证码登录'},
|
||||
// { index: 2 ,title:'密码登录'},
|
||||
]
|
||||
],
|
||||
};
|
||||
},
|
||||
components: {
|
||||
@ -180,8 +181,10 @@ export default {
|
||||
}
|
||||
},
|
||||
},
|
||||
|
||||
components: {},
|
||||
mounted() {
|
||||
//console.log(this.$route.params);
|
||||
console.log(this.$route.params);
|
||||
},
|
||||
// watch: function () {
|
||||
// console.log(this.inRank);
|
||||
@ -192,15 +195,16 @@ export default {
|
||||
checkBox(){
|
||||
console.log(event.target.checked)
|
||||
this.usercheckbox=event.target.checked
|
||||
|
||||
},
|
||||
|
||||
//获取验证码
|
||||
async usermsg() {
|
||||
//console.log("-----");
|
||||
console.log("-----");
|
||||
let data = await sendMsg(this.tel);
|
||||
if(data){
|
||||
console.log(data);
|
||||
//this.captchadata=data.msgNum;
|
||||
this.captchadata=data.msgNum;
|
||||
this.tamp=data.tamp;
|
||||
this.hash=data.hash;
|
||||
}
|
||||
@ -209,11 +213,16 @@ export default {
|
||||
|
||||
//发送验证码数据
|
||||
async vadmsg() {
|
||||
//console.log("-----");
|
||||
let data = await vadatnmsg(this.sms,this.hash,this.tamp);
|
||||
console.log("-----");
|
||||
let data = await vadatnmsg(this.captchadata,this.hash,this.tamp);
|
||||
if(data){
|
||||
return data;
|
||||
console.log(data.code);
|
||||
if(!data.code==1){
|
||||
return false
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
onClickHander(e) {
|
||||
console.log(e);
|
||||
@ -230,7 +239,7 @@ export default {
|
||||
},
|
||||
//注册账户
|
||||
useredd() {
|
||||
//console.log("---注册账户");
|
||||
console.log("---注册账户");
|
||||
this.usertitle = false;
|
||||
},
|
||||
|
||||
@ -278,6 +287,15 @@ export default {
|
||||
message: '手机号码输入有误'
|
||||
});
|
||||
return
|
||||
|
||||
}
|
||||
|
||||
if(this.sms!==this.captchadata){
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '验证码输入有误请重新输入'
|
||||
});
|
||||
return
|
||||
}
|
||||
if(this.sms==''){
|
||||
this.$message({
|
||||
@ -286,11 +304,12 @@ export default {
|
||||
});
|
||||
return
|
||||
}
|
||||
console.log(this.usercheckbox);
|
||||
if(this.usercheckbox==false){
|
||||
//console.log('----');
|
||||
console.log('----');
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '请先同意隐私声明和账号使用协议'
|
||||
message: '请先勾选'
|
||||
});
|
||||
if (!/^[1][3,4,5,7,8][0-9]{9}$/.test(this.tel) || this.tel === "") {
|
||||
this.$message({
|
||||
@ -302,33 +321,61 @@ export default {
|
||||
}
|
||||
}
|
||||
else{
|
||||
let data=await this.vadmsg();
|
||||
if(data.code=="1")
|
||||
{
|
||||
data = await userLongin(this.tel);
|
||||
if(data.msg=='SUCCESS'){
|
||||
console.log(this.tel);
|
||||
let data = await userLongin(this.tel);
|
||||
console.log(data);
|
||||
this.vadmsg();
|
||||
|
||||
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: '登录成功'
|
||||
});
|
||||
if(data.msg=='SUCCESS'){
|
||||
this.$router.push({
|
||||
path: "/",
|
||||
|
||||
});
|
||||
let token=JSON.stringify(data);
|
||||
this.changeClod({ cloud: token });
|
||||
return;
|
||||
}
|
||||
}
|
||||
}else{
|
||||
this.$message({
|
||||
type: 'warning',
|
||||
message: data.msg
|
||||
});
|
||||
}
|
||||
|
||||
return
|
||||
}},
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
},
|
||||
|
||||
// reallR () {
|
||||
// this.zhud=true
|
||||
// this.loading=true
|
||||
// axios.post('https://www.daxunxun.com/users/register', {
|
||||
// username: this.tel,
|
||||
// password: this.password
|
||||
// }).then(res=>{
|
||||
// this.zhud=false
|
||||
// this.loading=false
|
||||
// if (res.data === 2) {
|
||||
// Toast('用户名已注册,请直接登录')
|
||||
// } else if (res.data === 0) {
|
||||
// Toast('注册失败')
|
||||
// } else {
|
||||
// Toast('注册成功')
|
||||
// }
|
||||
// })
|
||||
// }
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@import url("../../assets/css/global.less");
|
||||
@import url("../../assets/css/login.less");
|
||||
</style>
|
Before Width: | Height: | Size: 117 KiB |
Before Width: | Height: | Size: 136 KiB |