!90 2022-1-23 Leung

Merge pull request !90 from Admin/sit-Leung
This commit is contained in:
Admin 2022-01-23 13:46:07 +00:00 committed by Gitee
commit ee970415ea
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
27 changed files with 491 additions and 298 deletions

View File

@ -56,7 +56,7 @@ export const getleckCourse = (name, offset) => {
* 加入购物车 * 加入购物车
*/ */
export const postCourseId = (productCode, buyCount, memberId, mobile, productImg, productName, productPrice, specifications, leftAllotment) => { export const postCourseId = (productCode, buyCount, memberId, mobile, productImg, productName, productPrice, specifications, leftAllotment, basePiont) => {
var data = { var data = {
buyCount: buyCount, buyCount: buyCount,
memberId: memberId, memberId: memberId,
@ -66,7 +66,8 @@ export const postCourseId = (productCode, buyCount, memberId, mobile, productImg
productName: productName, productName: productName,
productPrice: productPrice, productPrice: productPrice,
specifications: specifications, specifications: specifications,
leftAllotment: leftAllotment leftAllotment: leftAllotment,
basePiont: basePiont
} }
return fetch('/insertCartProductInfo', data, 'POST') return fetch('/insertCartProductInfo', data, 'POST')
} }
@ -78,11 +79,18 @@ export const isexistCart = (id, pet, address) => {
return fetch('getCartProductInfo?memberId=' + id, data, 'POST') return fetch('getCartProductInfo?memberId=' + id, data, 'POST')
} }
/**
* 支付监听
*/
export const monitorOrderNotify = (OrderNumber) => {
var data = {}
return fetch('monitorOrderNotify?OrderNumber=' + OrderNumber, data, 'POST')
}
/** /**
* 删除购物车 * 删除购物车
*/ */
export const deleteCart = ( productCode) => { export const deleteCart = ( productCode) => {
debugger;
var data = { var data = {
productCode productCode
} }

9
rc-busness/app.html Normal file
View File

@ -0,0 +1,9 @@
<!DOCTYPE html>
<html {{ HTML_ATTRS }}>
<head {{ HEAD_ATTRS }}>
{{ HEAD }}
</head>
<body {{ BODY_ATTRS }}>
{{ APP }}
</body>
</html>

View File

@ -0,0 +1,56 @@
<!doctype html>
<html class="no-js" lang="" style='font-size:16px;'>
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title></title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style type="text/css">
html,body{
width:100%;
height:100%;
overflow:hidden;
}
.wrapper{
width:100%;
height:100%;
display:flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
}
h2{
font-size: 2.5rem;
line-height: 3.5rem;
color:#e2001a;
}
a{
color:#666;
text-decoration: none;
padding-bottom:.25rem;
border-bottom: 1px solid #666;
}
a:hover {
color:#e2001a;
border-color: #e2001a;
}
</style>
</head>
<body>
<div class="wrapper">
<img src="./images/default.jpg">
<div>
<h2>检测到系统错误</h2>
<div>
请联系管理员或尝试其他操作
<br/><br/>
<a href="/">回到首页</a>
</div>
</div>
</div>
</body>
</html>

View File

@ -4,6 +4,12 @@ body {
line-height: 1.5; line-height: 1.5;
color: #666; color: #666;
} }
.el-message-box .el-button--primary{
background-color: #e1001a !important;
color:#fff;
border:unset;
}
.rc-menu--xs .rc-screen-reader{ .rc-menu--xs .rc-screen-reader{
left:28%; left:28%;
} }
@ -311,7 +317,7 @@ picture {
height: auto; height: auto;
position: fixed; position: fixed;
right: 0; right: 0;
top: 30%; top: 40%;
background: #FFFFFF; background: #FFFFFF;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.16); box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
border-radius: .25rem; border-radius: .25rem;

View File

@ -433,7 +433,7 @@ ul li ol li em strong i {
text-align: center; text-align: center;
li{ li{
float: left; float: left;
cursor:pointer;
} }
img{ img{
width: 96px; width: 96px;
@ -464,6 +464,7 @@ ul li ol li em strong i {
margin: 0 auto; margin: 0 auto;
} }
.rc-buy{ .rc-buy{
cursor: pointer;
img{ img{
width: 96px; width: 96px;
height: 96px; height: 96px;

View File

@ -16,6 +16,9 @@
background:#f6f6f6; background:#f6f6f6;
} }
} }
.usercontshow.rc-max-width--xl{
min-height:72vh;
}
.useredit{ .useredit{
display: none; display: none;
} }
@ -44,12 +47,12 @@ justify-content: center;
align-items: center; align-items: center;
font-size: 16px; font-size: 16px;
color: #FFFFFF; color: #FFFFFF;
margin:0 auto;
} }
.rc-max-width--xl{ .rc-max-width--xl{
padding: 0px 20px 24px 20px; padding: 0px 20px 0px 20px;
min-height: 60vh;
.rc-cat{ .rc-cat{
margin-top: 20px; margin-top: 20px;
} }
@ -121,12 +124,17 @@ color: #FFFFFF;
{ {
.rc-max-width--xl{ .rc-max-width--xl{
margin-bottom: 80px;
display: flex; display: flex;
flex-direction: row; flex-direction: row;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between justify-content: space-between
} }
.usercontshow{
min-height: 20vh;
margin-bottom: 2rem;
padding-left:.5rem;
padding-right:.5rem;
}
.rc-button{ .rc-button{
display: none; display: none;
@ -134,8 +142,8 @@ display: none;
.usercontend { .usercontend {
display:inline-block; display:inline-block;
width: 48%; width: 48%;
margin-top: 40px; //margin-bottom: 40px;
padding: 24px 20px; //padding: 24px 20px;
} }
.online{ .online{
@ -230,7 +238,7 @@ display: none;
-webkit-line-clamp: 2; -webkit-line-clamp: 2;
line-clamp: 2; line-clamp: 2;
-webkit-box-orient: vertical; -webkit-box-orient: vertical;
font-size: 20px; font-size: .875rem;
color: #333333; color: #333333;
} }
@ -253,19 +261,13 @@ display: none;
} }
.userdit{ .userdit{
width: 45%; width: 48%;
height: 164px; height: 164px;
display: inline-block; display: inline-block;
height: 164px;
border: 1px solid #D7D7D7;
border-radius: 3px;
margin-top: 65px;
box-sizing: border-box; box-sizing: border-box;
border: 1px solid #D7D7D7; border: 1px solid #D7D7D7;
border-radius: 3px; border-radius: 3px;
position: relative; position: relative;
height: 164px;
box-sizing: border-box;
margin-left: 20px; margin-left: 20px;
} }

View File

@ -107,7 +107,7 @@
width: 96px; width: 96px;
height: 96px; height: 96px;
display: block; display: block;
object-fit:contain;
} }
} }

View File

@ -12,7 +12,6 @@ ul li ol li em strong i {
} }
.rc-main { .rc-main {
position: relative; position: relative;
margin-top: 5.25rem;
.active{ .active{
border: 2px solid #E2001A; border: 2px solid #E2001A;
@ -33,7 +32,6 @@ ul li ol li em strong i {
width: 100%; width: 100%;
margin: 0 auto; margin: 0 auto;
overflow: hidden; overflow: hidden;
margin-top: 20px;
.ts-scrollable-container{ .ts-scrollable-container{
h2{ h2{
font-weight: bold; font-weight: bold;
@ -382,9 +380,9 @@ border-radius: 100px;
@media screen and (min-width: 768px){ @media screen and (min-width: 768px){
.usersearch { .usersearch {
width: 100%; width: 100%;
margin: 0 auto; margin-left:auto;
margin-right:auto;
overflow: hidden; overflow: hidden;
margin-top: 40px;
.ts-scrollable-container{ .ts-scrollable-container{
h2{ h2{
font-weight: bold; font-weight: bold;
@ -441,7 +439,6 @@ cursor: pointer;
} }
.rc-main { .rc-main {
margin-top: 7.25rem;
} }
.ts-scrollable-container{ .ts-scrollable-container{

View File

@ -459,11 +459,11 @@ export default {
font-size: 16px; font-size: 16px;
margin-left: 2px; margin-left: 2px;
width:100%; width:100%;
padding-bottom:.25rem; padding-bottom:.5rem;
background:url("../assets/image/ico-location.png") no-repeat 98% center; background:url("../assets/image/ico-location.png") no-repeat 98% center;
background-size:16px; background-size:16px;
position:relative; position:relative;
top:.5rem; top:.45rem;
padding-left:.875rem; padding-left:.875rem;
} }
.ts-area-picker-mobile{ .ts-area-picker-mobile{

View File

@ -14,6 +14,7 @@
</template> </template>
<script> <script>
import { mapMutations } from "vuex";
export default { export default {
data(){ data(){
return{ return{
@ -39,6 +40,7 @@ export default {
} }
}, },
methods:{ methods:{
...mapMutations(["checkIsLogin"]),
lianxi(item,index){ lianxi(item,index){
if(item.title=='在线客服'){ if(item.title=='在线客服'){
var option = { var option = {
@ -85,10 +87,14 @@ export default {
this.gotop = false this.gotop = false
} }
} }
},
created(){
}, },
mounted(){ mounted(){
//Check login //Check login
let usernot=JSON.parse(localStorage.getItem("userInfo")); this.checkIsLogin();
let usernot = this.$store.state.userInfo;
//console.log(usernot); //console.log(usernot);
if(usernot==null ||usernot==undefined){ if(usernot==null ||usernot==undefined){
this.loginornot=true this.loginornot=true

View File

@ -1,9 +1,9 @@
<template> <template>
<div class="crumbs" v-if="showTab"> <div class="ts-crumbs rc-max-width--xl rc-padding-y--md" v-if="showTab" :style="crumbStyle">
<el-breadcrumb separator-class="el-icon-arrow-right"> <el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item to="/" >{{ this.homepageName }}</el-breadcrumb-item> <el-breadcrumb-item to="/" >{{ this.homepageName }}</el-breadcrumb-item>
<el-breadcrumb-item :to=item.path v-for="(item, index) in crumbs" <el-breadcrumb-item :to=item.path v-for="(item, index) in displayData"
:key="index">{{ item.title }}</el-breadcrumb-item> :key="index">{{ item.title }}</el-breadcrumb-item>
</el-breadcrumb> </el-breadcrumb>
</div> </div>
@ -11,171 +11,76 @@
<script> <script>
import { mapState, mapMutations } from "vuex"; import { mapState, mapMutations } from "vuex";
import tabs from "~/components/tabs.vue";
export default { export default {
props:["crumbs"], props:["crumbs","crumbStyle"],
name:"crumbs", name:"crumbs",
data() { data() {
return { return {
homepageName:'首页' displayData:[],
homepageName:'定制营养方案',
nameMapping:{
'/productdetails/productlist':'产品分类',
'/usersearch/search':'产品搜索',
'/personal/mypersonal':'个人中心',
'/personal/usermember/':'会员权益',
'/personal/integral/':'积分明细',
'/personal/settlement/':'订单确认',
'/personal/useraddress/':'我的订单',
'/myorder/userrecord/':'购物车',
'/useraddress/openaddress/':'收货地址',
'/personal/discount/':'优惠券'
},
}; };
}, },
created(){ created(){
if(this.showTab != false) if(this.showTab != false)
this.showTab=true; this.showTab=true;
this.build();
}, },
watch: { watch: {
crumbs(val) {
this.crumbs = val;
this.build();
}
}, },
mounted() { mounted() {
}, },
methods: { methods: {
...mapMutations(["changemessage",'selectMenu']) //...mapMutations(["changemessage",'selectMenu']),
build() {
let _self = this;
this.displayData=[];
if(this.crumbs && this.crumbs.length>0)
{
this.crumbs.forEach(function(ele,index){
let displayObj= {path:'',title:''};
if(ele.path) {
displayObj.path = ele.path;
for(let path in _self.nameMapping) {
if(ele.path.indexOf(path)>-1) {
displayObj.path = path;
displayObj.title = _self.nameMapping[path];
}
}
}
if(ele.title) {
displayObj.title = ele.title;
}
_self.displayData.push(displayObj);
});
}
}
} }
}; };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.crumbs{ /deep/.el-breadcrumb__inner.is-link:hover {
width: 93%; color:#E2001A;
margin: 0 auto;
display: flex;
height: 40px;
align-items: center;
margin-top: 70px;
}
.tags-scroll-content {
position: relative;
box-sizing: border-box;
width: 100%;
height: 43px;
z-index: 0;
overflow: hidden;
// padding: 0 66px 0 21px;
}
.tabs {
user-select: none;
z-index: 20;
width: 100%;
height: 43px;
top: 60px;
height: 42px;
background: white;
.tag {
display: inline-block;
height: 43px;
// position: absolute;
padding-right: 40px;
width: 100%;
overflow-x: auto;
white-space: nowrap;
}
.tags-scroll-content > i {
height: 40px;
line-height: 40px;
background: white;
cursor: pointer;
z-index: 1;
font-size: 16px;
}
.el-icon-arrow-left {
position: absolute;
left: 0;
width: 21px;
box-shadow: 0px 1px 8px 0px rgba(70, 70, 70, 0.32);
}
.el-icon-arrow-right {
position: absolute;
right: 40px;
width: 21px;
}
.close {
position: absolute;
right: 0;
top: 0;
color: black;
background: white;
height: 40px;
padding-left: 15px;
line-height: 40px;
width: 40px;
border-left: 1px solid #f1f1f1 !important;
font-size: 16px;
cursor: pointer;
}
.el-tag--dark {
background: white;
em {
display: inline-block;
vertical-align: middle;
height: 5px;
margin-right: 7px;
width: 5px;
border-radius: 50%;
background-color: #85ef47 !important;
box-shadow: 0 0 7px #b7eb8f;
}
}
.el-tag--dark {
color: #323233 !important;
.el-icon-close {
color: black !important;
}
}
.el-tag {
.el-icon-close {
font-size: 16px;
&:hover {
color: red !important;
background: white !important;
}
display: inline-block;
}
// width: 140px;
em {
display: inline-block;
vertical-align: middle;
height: 5px;
margin-right: 7px;
width: 5px;
border-radius: 50%;
background-color: white;
}
cursor: pointer;
height: 40px;
line-height: 40px;
display: inline-block;
text-align: center;
padding: 0;
color: #969799;
font-size: 13px;
float: left;
border-radius: 0;
border: 0;
> span {
display: inline-block;
vertical-align: middle;
}
i {
display: inline-block;
vertical-align: middle;
top: 0px;
}
.el-tag__close {
right: 0px;
color: #777777;
&:hover {
color: white;
}
}
.el-xie{
list-style: none;
font-style: normal;
margin: 0 8px;
}
} }
.ts-crumbs{
padding-left:1.25rem;
} }
</style> </style>

View File

@ -0,0 +1,67 @@
<template>
<div class="wrapper">
<img src="/images/default.jpg">
<div v-if='error.statusCode==404'>
<h2>{{ error.statusCode }} 找不到指定页面</h2>
<div>
<a href="javascript:history.back()">返回上一页</a>
</div>
</div>
<div v-if='error.statusCode!=404'>
<h2>{{ error.statusCode }} 发现未知错误</h2>
<div>
<nuxt-link to="/">返回首页</nuxt-link>
</div>
</div>
</div>
</template>
<script>
export default {
props: ['error'],
layout: 'error',
created(){
},
method:{
backToLastPage(){
window.history.back();
},
backToHome(){
window.location.href="/";
}
}
}
</script>
<style lang="less" scoped >
html,body{
width:100%;
height:100%;
overflow:hidden;
}
.wrapper{
width:100%;
height:100%;
display:flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
}
h2{
font-size: 2.5rem;
line-height: 3.5rem;
color:#e2001a;
}
a{
color:#666;
text-decoration: none;
padding-bottom:.25rem;
border-bottom: 1px solid #666;
}
a:hover {
color:#e2001a;
border-color: #e2001a;
}
</style>

View File

@ -1,7 +1,5 @@
export default ({store, route, redirect}) => { export default ({store, route, redirect}) => {
route.matched.forEach((item, index) => { route.matched.forEach((item, index) => {
item.meta.title = route.meta[index].title || ''; item.meta.title = route.meta[index].title || '';
item.meta.redirect = route.meta[index].redirect || '';//设置重定向
}) })
} }

View File

@ -1,14 +1,14 @@
<template> <template>
<div> <div>
<div class="rc-header">
<Myheader></Myheader> <Myheader></Myheader>
</div> <div class="rc-top"></div>
<div class="rc-main"> <tabs :crumbs="crumbs"></tabs>
<tabs></tabs>
<div class="rc-main rc-max-width--xl">
<div class="cart-list"> <div class="cart-list">
<div class="header"> <div class="header">
<div class="list-left"> <div class="list-left">
<label class="check-label"> <label class="check-label" style="visibility: hidden;">
<input type="checkbox" v-model="checkAll" /> <input type="checkbox" v-model="checkAll" />
</label> </label>
<span class="name">商品</span> <span class="name">商品</span>
@ -22,7 +22,7 @@
<div class="header_ph"> <div class="header_ph">
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<div class="list-left"> <div class="list-left" style="visibility: hidden;">
<label class="check-label"> <label class="check-label">
<input type="checkbox" v-model="checkAll" /> <input type="checkbox" v-model="checkAll" />
</label> </label>
@ -76,7 +76,7 @@
<div class="rc-footera"> <div class="rc-footera">
<div class="rc-foote"> <div class="rc-foote">
<div class="rc-shop"> <div class="rc-shop">
<label> <label style="visibility: hidden;">
<input type="checkbox" v-model="checkAll" /> <input type="checkbox" v-model="checkAll" />
全选 全选
</label> </label>
@ -114,12 +114,21 @@
import Myheader from "~/components/header.vue"; import Myheader from "~/components/header.vue";
import MyFooter from '~/components/rc-footer.vue' import MyFooter from '~/components/rc-footer.vue'
import tabs from "@/components/tabs.vue"; import tabs from "@/components/tabs.vue";
import { mapMutations } from "vuex";
import { isexistCart, generateOrderWX, deleteCart } from "../../ajax/getData"; import { isexistCart, generateOrderWX, deleteCart } from "../../ajax/getData";
export default { export default {
middleware: "metaTitle", middleware: "metaTitle",
meta: { title: "购物车" }, meta: { title: "购物车" },
data() { data() {
return { return {
crumbs:[
{
path:'/productdetails/productlist/',
},
{
path:'/myorder/userrecord/'
}
],
ordersum: 1, ordersum: 1,
usercheckbox: false, usercheckbox: false,
shopnum: 0, shopnum: 0,
@ -174,26 +183,26 @@ export default {
}, },
mounted() { mounted() {
this.carmessage(); this.carmessage();
this.checkIsLogin();
}, },
components: { components: {
Myheader, Myheader,
tabs, tabs,
MyFooter, MyFooter
}, },
methods: { methods: {
// //
...mapMutations(["checkIsLogin"]),
async carmessage() { async carmessage() {
let user = JSON.parse(localStorage.getItem("userInfo")); let user = this.$store.state.userInfo;
this.userid = user.data.id; this.userid = user.data.id;
let data = await isexistCart(user.data.id); let data = await isexistCart(user.data.id);
this.cartData = data; this.cartData = data;
// this.goldmedal = data; // this.goldmedal = data;
}, },
async userjie(list) { async userjie(list) {
let user = JSON.parse(localStorage.getItem("userInfo")); let user = this.$store.state.userInfo;
console.log(user);
this.userid = user.data.id; this.userid = user.data.id;
let data = await generateOrderWX(list); let data = await generateOrderWX(list);
if (data) { if (data) {
@ -201,7 +210,6 @@ export default {
type: "warning", type: "warning",
message: data.msg, message: data.msg,
}); });
console.log(data);
this.$router.push({ this.$router.push({
path: "/personal/settlement", path: "/personal/settlement",
query: { query: {
@ -209,12 +217,11 @@ export default {
}, },
}); });
} }
console.log(data);
}, },
// //
async deletsmessage(productCode) { async deletsmessage(productCode) {
let user = JSON.parse(localStorage.getItem("userInfo")); let user = this.$store.state.userInfo;
this.userid = user.data.id; this.userid = user.data.id;
let data = await deleteCart( productCode); let data = await deleteCart( productCode);
if (data) { if (data) {
@ -267,6 +274,15 @@ export default {
// }); // });
}, },
plus(num, index) { plus(num, index) {
let leftAllotment = this.cartData[index].leftAllotment;
if(this.cartData[index].buyCount >= leftAllotment) {
this.$message({
type: "error",
message: "已达到本品最大购买上限",
});
return;
}
this.cartData[index].buyCount = this.cartData[index].buyCount =
parseInt(this.cartData[index].buyCount) + 1; parseInt(this.cartData[index].buyCount) + 1;
}, },
@ -287,7 +303,6 @@ export default {
if (this.ys1 == false) { if (this.ys1 == false) {
this.$nextTick(() => { this.$nextTick(() => {
this.userdelete = "删除"; this.userdelete = "删除";
console.log(this.userdelete);
}); });
} else if (this.ys1 == true) { } else if (this.ys1 == true) {
this.$nextTick(() => { this.$nextTick(() => {
@ -504,10 +519,6 @@ export default {
} }
} }
.rc-main { .rc-main {
width: 92%;
margin: 0 auto;
padding-top: 60px;
max-width: 1400px;
.cart-list { .cart-list {
width: 100%; width: 100%;
border: 1px solid #d7d7d7; border: 1px solid #d7d7d7;
@ -775,8 +786,8 @@ export default {
width: 100%; width: 100%;
} }
ul { ul {
margin-top: -32px; margin-top: -2rem;
margin-left: 140px; margin-left: 9.75rem;
width: 50%; width: 50%;
.del { .del {
display: none; display: none;
@ -796,6 +807,7 @@ export default {
bottom: 0; bottom: 0;
width: 100%; width: 100%;
z-index: 10; z-index: 10;
margin-bottom:0;
.rc-shop { .rc-shop {
display: none; display: none;
} }

View File

@ -4,6 +4,7 @@
<Myheader></Myheader> <Myheader></Myheader>
<!-- <tabs></tabs> --> <!-- <tabs></tabs> -->
<div class="rc-top"></div> <div class="rc-top"></div>
<tabs :crumbs="crumbs"></tabs>
<div class="rc-usermain"> <div class="rc-usermain">
<div class="rc rc-column"> <div class="rc rc-column">
@ -29,7 +30,12 @@
<div class="rc-contair"> <div class="rc-contair">
<div class="rc-left" ref="userleft" id="userleft" :style='usercolor'> <div class="rc-left" ref="userleft" id="userleft" :style='usercolor'>
<div> <div>
<i></i><span>{{item.couponTypeId=='4'?parseInt(((item.discount) *10))+ '折':item.couponAmount}}</span> <i v-if="(item.couponTypeId!='4' && item.couponAmount>0)">
</i>
<span>
{{item.couponTypeId=='4'?parseInt(((item.discount)*10))+'折':item.couponAmount}}
</span>
</div> </div>
<strong>{{ item.couponName }}</strong> <strong>{{ item.couponName }}</strong>
</div> </div>
@ -60,13 +66,21 @@
<script> <script>
import {allConfig,getdraw} from "../../ajax/getData"; import {allConfig,getdraw} from "../../ajax/getData";
// import tabs from "@/components/tabs.vue"; import tabs from "@/components/tabs.vue";
export default { export default {
// middleware: 'metaTitle', // middleware: 'metaTitle',
// // middleware: 'metaTitle', // // middleware: 'metaTitle',
// meta: {title: ''}, // meta: {title: ''},
data() { data() {
return { return {
crumbs:[
{
path:'/personal/mypersonal/',
},
{
path:'/personal/discount/',
}
],
userload: true, userload: true,
pastdue: false, pastdue: false,
unused: false, unused: false,
@ -209,6 +223,7 @@ export default {
}, },
components: { components: {
Myheader, Myheader,
tabs
}, },
}; };
import Myheader from "~/components/header.vue"; import Myheader from "~/components/header.vue";

View File

@ -2,7 +2,8 @@
<div> <div>
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top"></div> <div class="rc-top"></div>
<div class="rc-max-width--xl rc-padding-y--md"> <tabs :crumbs="crumbs"></tabs>
<div class="rc-max-width--xl rc-padding-bottom--md">
<ul> <ul>
<li v-for="(item,index) in userrecord" :key="index"> <li v-for="(item,index) in userrecord" :key="index">
{{item.title}} {{item.title}}
@ -36,6 +37,14 @@ import Myheader from '~/components/header.vue'
export default { export default {
data(){ data(){
return{ return{
crumbs:[
{
path:'/personal/mypersonal',
},
{
path:'/personal/integral/',
}
],
userrecord:[ userrecord:[
{ {
title:'日期', title:'日期',

View File

@ -3,6 +3,7 @@
<Myheader></Myheader> <Myheader></Myheader>
<!-- <tabs></tabs> --> <!-- <tabs></tabs> -->
<div class="rc-top"></div> <div class="rc-top"></div>
<tabs :crumbs="crumbs" :crumbStyle="`padding-left:0;`"></tabs>
<div class="rc-layout-container rc-one-column rc-full-width ts-mypersonal"> <div class="rc-layout-container rc-one-column rc-full-width ts-mypersonal">
<div class="rc-column"> <div class="rc-column">
<!-- <div class="rc-title"> <!-- <div class="rc-title">
@ -152,6 +153,11 @@ export default {
meta: {title: '个人中心'}, meta: {title: '个人中心'},
data() { data() {
return { return {
crumbs:[
{
path:'/personal/mypersonal',
}
],
userlog:false, userlog:false,
islogin:false, islogin:false,
dialogInfo1:false, dialogInfo1:false,

View File

@ -10,7 +10,7 @@ ul li ol li em strong i {
.settlement { .settlement {
padding-top: 60px;
} }
@ -189,6 +189,7 @@ ul li ol li em strong i {
width: 96px; width: 96px;
height: 96px; height: 96px;
display: block; display: block;
object-fit:contain;
} }
} }
@ -465,7 +466,9 @@ ul li ol li em strong i {
display: none; display: none;
border: none; border: none;
padding: 0; padding: 0;
&.show {
display:block;
}
&.active { &.active {
display: block; display: block;
border: none; border: none;

View File

@ -1,9 +1,7 @@
<template> <template>
<div class="settlement"> <div class="settlement">
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-main"> <div class="rc-top"></div>
<tabs></tabs>
</div>
<div class="rc_contline"></div> <div class="rc_contline"></div>
<div class="rc-main"> <div class="rc-main">
<div class="address-list"> <div class="address-list">
@ -28,7 +26,7 @@
<span>{{ item.address }}</span> <span>{{ item.address }}</span>
</div> </div>
</div> </div>
<div class="mypersonal add"> <div class="mypersonal add" :class="useraddress.length>0?'':'show'">
<div <div
class="my-delivery" class="my-delivery"
@click="addAddress" @click="addAddress"
@ -67,10 +65,12 @@
<span>配送方式:</span> <span>配送方式:</span>
<i>{{ shopprice.price }}</i> <i>{{ shopprice.price }}</i>
</li> </li>
<!--
<li> <li>
<span> 活动促销:</span> <span> 活动促销:</span>
<i>{{ shopprice.distribution }}</i> <i>{{ shopprice.distribution }}</i>
</li> </li>
-->
<li> <li>
<span>商品总价:</span> <span>商品总价:</span>
<i class="red">{{ sumPrice }}</i> <i class="red">{{ sumPrice }}</i>
@ -92,7 +92,7 @@
<em>{{ sumPrice }}</em> <em>{{ sumPrice }}</em>
</div> </div>
<div style="font-weight: bold"> <div style="font-weight: bold">
<span @click="jiesuan()">提交订单</span> <span @click="preJiesuan()">提交订单</span>
</div> </div>
</div> </div>
</div> </div>
@ -155,13 +155,21 @@ import Myheader from "~/components/header.vue";
import { userin, memberAddress, generateOrderWX } from "../../ajax/getData"; import { userin, memberAddress, generateOrderWX } from "../../ajax/getData";
import tabs from "@/components/tabs.vue"; import tabs from "@/components/tabs.vue";
import myAddress from "~/components/address.vue"; import myAddress from "~/components/address.vue";
import { mapMutations } from "vuex";
import itemMixin from "../../../smart-admin-web/src/components/main/components/side-menu/item-mixin"; import itemMixin from "../../../smart-admin-web/src/components/main/components/side-menu/item-mixin";
export default { export default {
middleware: "metaTitle", middleware: "metaTitle",
meta: { title: "订单结算" }, meta: { title: "订单结算" },
data() { data() {
return { return {
crumbs:[
{
path:'/productdetails/productlist/',
},
{
path:'/personal/settlement'
}
],
goldmedal: [], goldmedal: [],
dialogAddTitle: "", dialogAddTitle: "",
addressstype: null, addressstype: null,
@ -208,6 +216,7 @@ export default {
}, },
}, },
methods: { methods: {
...mapMutations(["checkIsLogin"]),
async getAddressList() { async getAddressList() {
let memberId = JSON.parse(localStorage.getItem("userInfo")).data.id; let memberId = JSON.parse(localStorage.getItem("userInfo")).data.id;
let { data } = await memberAddress("getAll", { memberId: memberId }); let { data } = await memberAddress("getAll", { memberId: memberId });
@ -272,17 +281,42 @@ export default {
this.dialogAdd = parm; this.dialogAdd = parm;
this.getAddressList(); this.getAddressList();
}, },
preJiesuan(){
let checkResult=true;
if(this.useraddress.length<=0) {
this.$message({
type: "error",
message: '请先添加收件信息',
});
checkResult=false;
}
if(checkResult)
this.jiesuan();
},
async jiesuan() { async jiesuan() {
let orderAddress = this.useraddress.filter((item) => item.isDefault); let orderAddress = this.useraddress.filter((item) => item.isDefault);
let userInfo = this.$store.state.userInfo;
if(!userInfo) {
this.$router.push({
path: "/userlogin/login",
query: {
},
});
return;
}
let postData = []; let postData = [];
this.goldmedal.forEach((item) => { this.goldmedal.forEach((item) => {
let basePoint = (item.basePoint?item.basePoint:0);
let oneProduct = { let oneProduct = {
basePoint:basePoint,
productName: item.productName, productName: item.productName,
buyCount: item.buyCount, buyCount: item.buyCount,
productId: item.productCode, productId: item.productCode,
payAmount: item.productPrice, payAmount: item.productPrice,
memberId: item.memberId, memberId: userInfo.data.id,
phoneNumber: item.mobile, phoneNumber: userInfo.data.mobile,
// couponId: "NGQ2022P12", // couponId: "NGQ2022P12",
// couponTypeId: "4", // couponTypeId: "4",
// couponName: "", // couponName: "",
@ -353,7 +387,8 @@ export default {
" " + " " +
postData[0].orderAddress.addressPhoneNumber, postData[0].orderAddress.addressPhoneNumber,
// wxPay: "weixin://wxpay/bizpayurl?pr=4RJbokxzz", // wxPay: "weixin://wxpay/bizpayurl?pr=4RJbokxzz",
wxPay: res.data, // wxPay: "weixin://wxpay/bizpayurl?pr=4RJbokxzz",
wxPay: res.msg,
}; };
this.$router.push({ this.$router.push({
path: "/personal/userpay", path: "/personal/userpay",
@ -378,6 +413,7 @@ export default {
mounted() { mounted() {
this.goldmedal = JSON.parse(this.$route.query.list); this.goldmedal = JSON.parse(this.$route.query.list);
this.getAddressList(); this.getAddressList();
this.checkIsLogin();
// this.addressstype = this.$route.query.stype; // this.addressstype = this.$route.query.stype;
// this.orderNumber = this.$route.query.orderNumber; // this.orderNumber = this.$route.query.orderNumber;
// this.canceldanhao(this.orderNumber); // this.canceldanhao(this.orderNumber);
@ -393,7 +429,7 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import url("../../assets/css/global.less"); //@import url("../../assets/css/global.less");
@import "./settlement.less"; @import "./settlement.less";
// @import url("../../assets/css/settlement.less"); // @import url("../../assets/css/settlement.less");
</style> </style>

View File

@ -2,6 +2,7 @@
<div> <div>
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top"></div> <div class="rc-top"></div>
<tabs :crumbs="crumbs"></tabs>
<div class="online bold"></div> <div class="online bold"></div>
<div class="usercontshow rc-max-width--xl"> <div class="usercontshow rc-max-width--xl">
<div class="rc-headera"> <div class="rc-headera">
@ -64,7 +65,7 @@
</div> </div>
<div class="pc-bottom"> <div class="pc-bottom">
<span @click="userpay(item, index)">{{ <span v-if="item.status!=1" @click="userpay(item, index)">{{
item.status == "0" item.status == "0"
? "取消订单" ? "取消订单"
: item.status == "1" : item.status == "1"
@ -137,11 +138,20 @@
<script> <script>
import Myheader from "~/components/header.vue"; import Myheader from "~/components/header.vue";
import MyFooter from '~/components/rc-footer.vue' import MyFooter from '~/components/rc-footer.vue';
import tabs from "~/components/tabs.vue";
import { customerorders, userindent, canceldanhao,generateOrderWX } from "../../ajax/getData"; import { customerorders, userindent, canceldanhao,generateOrderWX } from "../../ajax/getData";
export default { export default {
data() { data() {
return { return {
crumbs:[
{
path:'/personal/mypersonal/',
},
{
path:'/personal/useraddress/',
}
],
activeIndex: 0, activeIndex: 0,
userstype:'', userstype:'',
alllist:[], alllist:[],
@ -280,7 +290,8 @@ export default {
}, },
components: { components: {
Myheader, Myheader,
MyFooter MyFooter,
tabs
}, },
methods: { methods: {
async indet(mobile, stype) { async indet(mobile, stype) {
@ -297,7 +308,6 @@ export default {
this.alllist.push(this.goldmedal[i].orderDetailList[0]) this.alllist.push(this.goldmedal[i].orderDetailList[0])
this.allmessage.push(this.goldmedal[i].orderDetailList[0]) this.allmessage.push(this.goldmedal[i].orderDetailList[0])
if(this.goldmedal[i].status==0){ if(this.goldmedal[i].status==0){
console.log("+++++++++++++");
this.obligation.push(this.goldmedal[i].orderDetailList[0]); this.obligation.push(this.goldmedal[i].orderDetailList[0]);
}else if(this.goldmedal[i].status==1){ }else if(this.goldmedal[i].status==1){
this.receiving.push(this.goldmedal[i].orderDetailList[0]); this.receiving.push(this.goldmedal[i].orderDetailList[0]);
@ -407,7 +417,10 @@ export default {
this.receiving=[]; this.receiving=[];
this.pending=[]; this.pending=[];
}, 500); }, 500);
} else if(item.status == 1) { //
} }
if (item.buttontitle == "立即支付") { if (item.buttontitle == "立即支付") {
this.$router.push({ this.$router.push({
path: "/personal/userpay", path: "/personal/userpay",

View File

@ -2,7 +2,8 @@
<div> <div>
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top"></div> <div class="rc-top"></div>
<div class="rc-full-width rc-max-width--xl rc-padding-y--lg"> <tabs :crumbs="crumbs"></tabs>
<div class="rc-full-width rc-max-width--xl rc-padding-bottom--lg">
<div class="rc-main"> <div class="rc-main">
<div class="rc-center" > <div class="rc-center" >
@ -53,10 +54,19 @@
<script> <script>
import Myheader from '~/components/header.vue' import Myheader from '~/components/header.vue'
import Myfooter from '~/components/rc-footer.vue' import Myfooter from '~/components/rc-footer.vue'
import tabs from "~/components/tabs.vue";
export default { export default {
data(){ data(){
return{ return{
crumbs:[
{
path:'/personal/mypersonal',
},
{
path:'/personal/usermember/',
}
],
banners:[ banners:[
{src:require("../../assets/image/rc-new.png"),link:""}, {src:require("../../assets/image/rc-new.png"),link:""},
{src:require("../../assets/image/rc-new1.png"),link:""}, {src:require("../../assets/image/rc-new1.png"),link:""},
@ -251,7 +261,8 @@ methods:{
}, },
components:{ components:{
Myheader, Myheader,
Myfooter Myfooter,
tabs
}, },
mounted(){ mounted(){
console.log(this.$refs.userblock); console.log(this.$refs.userblock);

View File

@ -1,8 +1,8 @@
<template> <template>
<div class="page_modules"> <div class="page_modules">
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top rc-md-up"></div>
<div class="cont_modules"> <div class="cont_modules">
<tabs></tabs>
<el-row class="order_info"> <el-row class="order_info">
<el-col :span="6" class="ph_hidden"> <el-col :span="6" class="ph_hidden">
<ul class="li_inline"> <ul class="li_inline">
@ -19,7 +19,7 @@
<el-col :span="6" class="ready_right"> <el-col :span="6" class="ready_right">
<div class="inline_right"> <div class="inline_right">
<p>付款金额:</p> <p>付款金额:</p>
<p class="price">{{ userPayData.userprice }}</p> <p class="price">{{ userPayData.userprice }}</p>
</div> </div>
<div class="inline_right"> <div class="inline_right">
<p>收货信息:</p> <p>收货信息:</p>
@ -87,24 +87,27 @@ import Myheader from "~/components/header.vue";
import tabs from "@/components/tabs.vue"; import tabs from "@/components/tabs.vue";
import vueQr from 'vue-qr' import vueQr from 'vue-qr'
import { generateOrderAlipay, updateOrderWX } from "../../ajax/getData"; import { generateOrderAlipay, updateOrderWX, monitorOrderNotify } from "../../ajax/getData";
export default { export default {
data() { data() {
return { return {
activeIndex: 0, activeIndex: 0,
paymentTimer:undefined,
isSucess: false, isSucess: false,
dialogSuccess: false,
paytype: "微信", paytype: "微信",
userpaystype: [ userpaystype: [
{ {
paytype: "微信", paytype: "微信",
payimage: require("../../assets/pay/wx.png"), payimage: require("../../assets/pay/wx.png"),
}, },
/*
{ {
paytype: "支付宝", paytype: "支付宝",
payimage: require("../../assets/pay/zfb.png"), payimage: require("../../assets/pay/zfb.png"),
}, },
*/
], ],
dialogSuccess: true,
dialogFail: false, dialogFail: false,
userPayData: {}, userPayData: {},
qrtext:'', qrtext:'',
@ -113,15 +116,21 @@ export default {
computed: {}, computed: {},
mounted() { mounted() {
this.userPayData = JSON.parse(this.$route.query.userPayData); this.userPayData = JSON.parse(this.$route.query.userPayData);
//this.qrtext=this.userPayData.wxPay
this.qrtext=this.userPayData.wxPay; this.qrtext=this.userPayData.wxPay;
this.payOrderWX() this.payOrderWX()
}, },
methods: { methods: {
closeDialogSuccess() { closeDialogSuccess() {
this.qrtext = ''; this.qrtext = '';
// this.$router.push({ this.$router.push({
// path: "/index", path: "/myorder/usertion",
// }); query:{
stype:1,
orderNumber:this.userPayData.orderId
}
});
}, },
closeDialogFail() { closeDialogFail() {
this.qrtext = ''; this.qrtext = '';
@ -142,15 +151,20 @@ export default {
} }
}, },
// //
async payOrderWX() { async payOrderWX() {
let res = await updateOrderWX(); let res = await monitorOrderNotify(this.userPayData.orderId);
if (res.success) { if (res.success) {
this.qrtext = '成功加入群的二维码'; this.qrtext = '成功加入群的二维码';
this.dialogSuccess = true; this.dialogSuccess = true;
} else if (res.fail) { } else if (res.fail) {
this.dialogFail = true; this.dialogFail = true;
}else{ }else{
this.payOrderWX() let _self = this;
this.paymentTimer = setTimeout(function(){
_self.payOrderWX()
},5000);
} }
}, },
}, },
@ -290,7 +304,7 @@ export default {
} }
} }
.paycord { .paycord {
display: none; //display: none;
} }
} }
</style> </style>

View File

@ -2,8 +2,8 @@
<div> <div>
<div class="user"> <div class="user">
<Myheader></Myheader> <Myheader></Myheader>
<unlogin></unlogin> <div class="rc-top"></div>
<tabs></tabs> <tabs :crumbs="crumbs"></tabs>
<div class="online" id="fixed-catbar-seperator"></div> <div class="online" id="fixed-catbar-seperator"></div>
<div class="rc-top"></div> <div class="rc-top"></div>
<div <div
@ -135,7 +135,7 @@
<i class="ts-row-title">商品规格</i> <i class="ts-row-title">商品规格</i>
</div> </div>
<div class="ts-tag-list"> <div class="ts-tag-list">
<em v-for="(item, index) in newlist" :key="index" @click="selectsearch(item, index)" :class="[activeIndexa==index?'active':'unactive',item.leftAllotment>0?'':'disabled']"> <em v-for="(item, index) in newlist" :key="index" @click="selectsearch(item, index)" :class="[(activeIndexa==index && item.leftAllotment>0)?'active':'unactive',item.leftAllotment>0?'':'disabled']">
{{ item.specifications }} {{ item.specifications }}
</em> </em>
</div> </div>
@ -192,7 +192,7 @@
</li> </li>
</ul> </ul>
</div> </div>
<div class="rc-button" v-if="userbuy"> <div class="rc-button" v-if="(userbuy && curItem.leftAllotment>0)">
<span @click="usertanchu(curItem, 0)">加入购物车</span> <span @click="usertanchu(curItem, 0)">加入购物车</span>
<span @click="usertanchu(curItem, 1)">立即购买</span> <span @click="usertanchu(curItem, 1)">立即购买</span>
</div> </div>
@ -254,7 +254,7 @@
</nuxt-link> </nuxt-link>
</div> </div>
</el-dialog> </el-dialog>
<div class="rc-button rc-md-down"> <div class="rc-button rc-md-down" v-if="(userbuy && curItem.leftAllotment>0)">
<span @click="usertanchu(curItem, 0)">加入购物车</span> <span @click="usertanchu(curItem, 0)">加入购物车</span>
<span @click="usertanchu(curItem, 1)">立即购买</span> <span @click="usertanchu(curItem, 1)">立即购买</span>
</div> </div>
@ -290,6 +290,8 @@ export default {
let mainProductCode = context.route.query.mainProductCode; let mainProductCode = context.route.query.mainProductCode;
let productCode = context.route.query.productCode; let productCode = context.route.query.productCode;
let activeIndexa = 0; let activeIndexa = 0;
if(!productCode || productCode.length<=0)
throw new Error('Empty product code');
productCode = productCode.split(","); productCode = productCode.split(",");
// console.log(this.productCode); // console.log(this.productCode);
if(isRxGoods){ if(isRxGoods){
@ -321,10 +323,24 @@ export default {
stopIndex++; stopIndex++;
} }
} }
productAttachmentList = newlist[0].productAttachmentList; if(curItem.productAttachmentList != undefined)
productAttachmentList = curItem.productAttachmentList;
if(curItem.productName == undefined)
curItem = newlist[0];
userbuy = true; userbuy = true;
} }
if(!curItem || curItem.productName == undefined)
throw new Error("商品信息错误");
let crumbs = [
{
path:'/productdetails/productlist/',
},
{
title: curItem.productName,
}
];
return { return {
crumbs,
activeIndexa, activeIndexa,
curItem, curItem,
newlist, newlist,
@ -373,20 +389,6 @@ export default {
catimage: require("../../assets/image/unused.png"), catimage: require("../../assets/image/unused.png"),
}, },
], ],
fixedlist: [
{
title: "购物车",
catimage: require("../../assets/buy.png"),
},
{
title: "在线客服",
catimage: require("../../assets/service.png"),
},
{
title: "营养专家",
catimage: require("../../assets/consult.png"),
},
],
newlist: [ newlist: [
{ {
@ -567,9 +569,10 @@ export default {
this.usermessage.data.mobile, this.usermessage.data.mobile,
item.picFile, item.picFile,
item.productName, item.productName,
item.basePrice, item.ecPrice,
item.specifications, item.specifications,
item.leftAllotment item.leftAllotment,
item.basePoint
); );
if (data) { if (data) {
this.productlist = data; this.productlist = data;
@ -597,9 +600,11 @@ export default {
productName: item.productName, productName: item.productName,
productImg: item.picFile, productImg: item.picFile,
specifications: item.specifications, specifications: item.specifications,
buyCount: item.pcs, leftAllotment: item.leftAllotment,
memberId: "884258", basePoint: item.basePoint,
mobile: "13480231061", buyCount: this.sales_num,
memberId: "",
mobile: "",
checked: true, checked: true,
}, },
]; ];
@ -630,6 +635,8 @@ export default {
this.activeIndexa = index; this.activeIndexa = index;
this.curItem = item; this.curItem = item;
this.productAttachmentList = item.productAttachmentList; this.productAttachmentList = item.productAttachmentList;
this.crumbs.pop();
this.crumbs.push({title: item.productName});
}, },
}, },
@ -638,6 +645,5 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import url("../../assets/css/global.less");
@import url("../../assets/css/producted.less"); @import url("../../assets/css/producted.less");
</style> </style>

View File

@ -325,7 +325,6 @@ export default {
crumbs:[ crumbs:[
{ {
path:'/productdetails/productlist/', path:'/productdetails/productlist/',
title:'产品列表',
} }
], ],
value: "", value: "",

View File

@ -21,7 +21,7 @@
<div class="rc-max-width--xl rc-people rc-useaddress"> <div class="rc-max-width--xl rc-people rc-useaddress">
<span>详细地址:</span> <span>详细地址:</span>
<input type="text" placeholder="小区、门牌号等" class="userinput" v-model="alladdress"> <input type="text" placeholder="小区、门牌号等" class="userinput" v-model="alladdress">
<textarea rows="10" cols="30" placeholder="请输入详细地址"> <textarea rows="10" cols="30" placeholder="请输入详细地址" v-model="alladdress">
</textarea> </textarea>
</div> </div>
@ -101,9 +101,7 @@ export default {
handleClose1(){ handleClose1(){
this.dialogInfo1 = false this.dialogInfo1 = false
}, },
register(){ register(){
console.log(this.tel)
if (this.alladdress==='') { if (this.alladdress==='') {
this.$message({ this.$message({
type: 'warning', type: 'warning',

View File

@ -2,6 +2,7 @@
<div> <div>
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top"></div> <div class="rc-top"></div>
<tabs :crumbs="crumbs"></tabs>
<div class="online bold"></div> <div class="online bold"></div>
<div class="usercontshow rc-max-width--xl"> <div class="usercontshow rc-max-width--xl">
<div class="usercontend" v-for="(item, index) in list" :key="index"> <div class="usercontend" v-for="(item, index) in list" :key="index">
@ -67,10 +68,19 @@
<script> <script>
import Myheader from '~/components/header.vue' import Myheader from '~/components/header.vue'
import MyFooter from '~/components/rc-footer.vue' import MyFooter from '~/components/rc-footer.vue'
import tabs from "~/components/tabs.vue";
import { selectaddress,editupdate,editdelete} from "../../ajax/getData"; import { selectaddress,editupdate,editdelete} from "../../ajax/getData";
export default { export default {
data() { data() {
return { return {
crumbs:[
{
path:'/personal/mypersonal/',
},
{
path:'/useraddress/openaddress/',
}
],
chosenAddressId: "1", chosenAddressId: "1",
checked: true, checked: true,
userid: null, userid: null,
@ -176,7 +186,8 @@ export default {
}, },
components: { components: {
Myheader, Myheader,
MyFooter MyFooter,
tabs
}, },
mounted() { mounted() {
@ -191,6 +202,5 @@ export default {
</script> </script>
<style lang="less" scoped > <style lang="less" scoped >
@import url("../../assets/css/global.less");
@import url("../../assets/css/openaddress.less"); @import url("../../assets/css/openaddress.less");
</style> </style>

View File

@ -1,11 +1,8 @@
<template> <template>
<div> <div>
<transition name="fade">
<div class="userloding" v-show="isLoading"></div>
</transition>
<Myheader></Myheader> <Myheader></Myheader>
<div class="rc-top"></div> <div class="rc-top"></div>
<tabs :crumbs="crumbs"></tabs>
<div class="rc-max-width--xl rc-main"> <div class="rc-max-width--xl rc-main">
<div class="usersearch"> <div class="usersearch">
<div class="form-search"> <div class="form-search">
@ -41,7 +38,7 @@
</li> </li>
</ul> </ul>
</div> </div>
<div class="usersearch"> <div class="usersearch rc-margin-top--md">
<div class="usercontentshow" ref="usercontent"> <div class="usercontentshow" ref="usercontent">
<div class="usercontentshow rc-product"> <div class="usercontentshow rc-product">
<h2>我想搜</h2> <h2>我想搜</h2>
@ -121,7 +118,7 @@
</div> </div>
<div class="rc-column"> <div class="rc-column">
<div class="rc-click" @click="selectproduce(item)"> <div class="rc-click" @click="selectproduce(item)">
<span>{{ item.categoryName }}</span> <span>{{ item.name }}</span>
<i>{{ item.ecPrice?("¥"+item.ecPrice):'' }}</i> <i>{{ item.ecPrice?("¥"+item.ecPrice):'' }}</i>
</div> </div>
<strong <strong
@ -224,6 +221,7 @@
</div> </div>
</div> </div>
<div class="rc-button"> <div class="rc-button">
<span @click="openclose()">取消</span> <span @click="openclose()">取消</span>
<em @click="openclose()">确认</em> <em @click="openclose()">确认</em>
@ -308,10 +306,12 @@
</div> </div>
</div> </div>
</div> </div>
<!--
<div class="rc-button rc-padding-bottom--md"> <div class="rc-button rc-padding-bottom--md">
<span @click="openclose()">取消</span> <span @click="openclose()">取消</span>
<em @click="openclose()">确认</em> <em @click="openclose()">确认</em>
</div> </div>
-->
</el-dialog> </el-dialog>
</div> </div>
<!-- rc-main end --> <!-- rc-main end -->
@ -329,13 +329,18 @@
import Myheader from "~/components/header.vue"; import Myheader from "~/components/header.vue";
import MyFooter from '~/components/rc-footer.vue' import MyFooter from '~/components/rc-footer.vue'
import FixRight from "~/components/fixed-right.vue"; import FixRight from "~/components/fixed-right.vue";
import tabs from "~/components/tabs.vue";
import { biaome, userstype, searchchanpin, userquery } from "../../ajax/getData"; import { biaome, userstype, searchchanpin, userquery } from "../../ajax/getData";
export default { export default {
data() { data() {
return { return {
value: "", value: "",
crumbs:[
{
path:'/usersearch/search/',
}
],
isLoading: true, isLoading: true,
userserachlist: [ userserachlist: [
{ {
categoryName: [], // categoryName: [], //
@ -516,7 +521,8 @@ export default {
components: { components: {
Myheader, Myheader,
MyFooter, MyFooter,
FixRight FixRight,
tabs
}, },
mounted() { mounted() {
this.usetmessage(); this.usetmessage();