12.31移动端开源代码更新

pull/1/MERGE
hejinfu1026 2021-12-31 15:52:11 +08:00
parent 955ea2fdee
commit f4e2327095
9 changed files with 86 additions and 773 deletions

View File

@ -1,12 +1,12 @@
let domain = 'https://api.dev.java.crmeb.net/' let domain = 'https://xxx.xxx'
module.exports = { module.exports = {
// 请求域名 格式: https://您的域名 // 请求域名 格式: https://您的域名
// #ifdef MP // #ifdef MP
HTTP_REQUEST_URL: domain, HTTP_REQUEST_URL: domain,
// #endif // #endif
HTTP_ADMIN_URL:'https://xxx.xxx.xxx', //PC后台的API请求地址上传图片用
// #ifdef H5 // #ifdef H5
//H5接口是浏览器地址 //H5接口是浏览器地址
// HTTP_REQUEST_URL: window.location.protocol+"//"+window.location.host, // HTTP_REQUEST_URL: window.location.protocol+"//"+window.location.host,

View File

@ -59,7 +59,7 @@
"quickapp" : {}, "quickapp" : {},
/* */ /* */
"mp-weixin" : { "mp-weixin" : {
"appid" : "11", "appid" : "123",
"setting" : { "setting" : {
"urlCheck" : true, "urlCheck" : true,
"minified" : true, "minified" : true,

View File

@ -534,7 +534,7 @@
that.attribute.productAttr = res.data.productAttr || []; that.attribute.productAttr = res.data.productAttr || [];
that.productValue = res.data.productValue; that.productValue = res.data.productValue;
that.onceNum = res.data.storeCombination.onceNum; that.onceNum = res.data.storeCombination.onceNum;
that.DefaultSelect();
// that.PromotionCode = res.data.storeInfo.code_base // that.PromotionCode = res.data.storeInfo.code_base
// #ifdef H5 // #ifdef H5
that.setShare(); that.setShare();
@ -548,8 +548,19 @@
// #ifndef H5 // #ifndef H5
that.downloadFilestoreImage(); that.downloadFilestoreImage();
// #endif // #endif
let productAttr = res.data.productAttr.map(item => {
return {
attrName : item.attrName,
attrValues: item.attrValues.split(','),
id:item.id,
isDel:item.isDel,
productId:item.productId,
type:item.type
}
});
that.$set(that.attribute,'productAttr',productAttr);
// that.setProductSelect(); // that.setProductSelect();
that.DefaultSelect();
setTimeout(function() { setTimeout(function() {
that.infoScroll(); that.infoScroll();

View File

@ -315,7 +315,6 @@
that.$store.commit("PRODUCT_TYPE", 'normal'); that.$store.commit("PRODUCT_TYPE", 'normal');
let statusBarHeight = ''; let statusBarHeight = '';
var pages = getCurrentPages(); var pages = getCurrentPages();
//that.returnShow = pages.length === 1 ? false : true;
// //
uni.getSystemInfo({ uni.getSystemInfo({
success: function(res) { success: function(res) {
@ -324,18 +323,29 @@
//res.windowHeight:px*2rpx98 //res.windowHeight:px*2rpx98
}, },
}); });
this.isLogin && silenceBindingSpread(); // #ifndef APP-PLUS
this.navH = app.globalData.navHeight this.navH = app.globalData.navHeight
// #endif
// #ifdef APP-PLUS
this.navH = 90
// #endif
// #ifdef MP // #ifdef MP
let menuButtonInfo = uni.getMenuButtonBoundingClientRect() let menuButtonInfo = uni.getMenuButtonBoundingClientRect()
this.meunHeight = menuButtonInfo.height this.meunHeight = menuButtonInfo.height
this.backH = (that.navH / 2) + (this.meunHeight / 2) this.backH = (that.navH / 2) + (this.meunHeight / 2)
// #ifdef MP || APP-NVUE
// id
// if(options.spread) app.globalData.spread = options.spread;
setTimeout(()=>{ setTimeout(()=>{
if(options.spread){ if(options.spread){
app.globalData.spread = options.spread; app.globalData.spread = options.spread;
spread(options.spread).then(res => {}) spread(options.spread).then(res => {})
} }
},2000) },2000)
// #endif
that.$set(that,'theme',that.$Cache.get('theme')); //
// #endif
if (!options.scene && !options.id){ if (!options.scene && !options.id){
this.showSkeleton = false; this.showSkeleton = false;
this.$util.Tips({ this.$util.Tips({
@ -358,14 +368,12 @@
this.id = options.id; this.id = options.id;
} }
} }
// #endif
if (this.isLogin) { if (this.isLogin) {
this.id = options.id;
this.getSeckillDetail(); this.getSeckillDetail();
} else { } else {
this.$Cache.set('login_back_url', this.$Cache.set('login_back_url',
'/pages/activity/goods_seckill_details/index?id=' + this.id + '&spread=' + app.globalData.spid?app.globalData.spid:0); '/pages/activity/goods_seckill_details/index?id=' + this.id + '&spread=' + app.globalData.spread?app.globalData.spread:0);
toLogin(); toLogin();
} }
this.$nextTick(() => { this.$nextTick(() => {
@ -380,6 +388,7 @@
.exec(); .exec();
// #endif // #endif
}) })
silenceBindingSpread();
}, },
methods: { methods: {
kefuClick(){ kefuClick(){
@ -444,6 +453,17 @@
this.getProductReplyList(); this.getProductReplyList();
this.getProductReplyCount(); this.getProductReplyCount();
let productAttr = res.data.productAttr.map(item => {
return {
attrName : item.attrName,
attrValues: item.attrValues.split(','),
id:item.id,
isDel:item.isDel,
productId:item.productId,
type:item.type
}
});
this.$set(this.attribute,'productAttr',productAttr);
// #ifdef H5 // #ifdef H5
that.storeImage = that.storeInfo.image; that.storeImage = that.storeInfo.image;
that.make(); that.make();

View File

@ -507,7 +507,7 @@
return { return {
title: that.productInfo.storeName || '', title: that.productInfo.storeName || '',
imageUrl: that.productInfo.image || '', imageUrl: that.productInfo.image || '',
path: '/pages/goods_details/index?id=' + that.id + '&spid=' + that.uid, path: '/pages/goods_details/index?id=' + that.id + '&spread=' + that.uid,
} }
}, },
// #endif // #endif
@ -769,11 +769,17 @@
uni.setNavigationBarTitle({ uni.setNavigationBarTitle({
title: productInfo.storeName.substring(0, 7) + "..." title: productInfo.storeName.substring(0, 7) + "..."
}) })
// var navList = ['', '', '']; let productAttr = this.attr.productAttr.map(item => {
// if (goodArray.length) { return {
// navList.splice(2, 0, '') attrName : item.attrName,
// } attrValues: item.attrValues.split(','),
//that.$set(that, 'navList', navList); id:item.id,
isDel:item.isDel,
productId:item.productId,
type:item.type
}
});
this.$set(this.attr,'productAttr',productAttr);
if (that.isLogin) { if (that.isLogin) {
that.getCartCount(); that.getCartCount();
//#ifdef H5 //#ifdef H5

View File

@ -94,11 +94,11 @@
</navigator> </navigator>
</view> </view>
<view class="listBox acea-row"> <view class="listBox acea-row">
<view class="list" :class='item.isGet ? "listHui" : "listActive" ' v-for="(item, index) in couponList" :key="index"> <view class="list" :class='item.isUse ? "listHui" : "listActive" ' v-for="(item, index) in couponList.slice(0,2)" :key="index">
<view class="tit line1" :class='item.isGet ? "pricehui" : "titActive" '>{{item.name}}</view> <view class="tit line1" :class='item.isUse ? "pricehui" : "titActive" '>{{item.name}}</view>
<view class="price" :class='item.isGet ? "pricehui" : "icon-color" '>{{item.money?Number(item.money):''}}<text class="yuan"></text></view> <view class="price" :class='item.isUse ? "pricehui" : "icon-color" '>{{item.money?Number(item.money):''}}<text class="yuan"></text></view>
<view class="ling" v-if="!item.isGet" :class='item.isGet ? "pricehui" : "icon-color" ' @click="getCoupon(item.id,index)"></view> <view class="ling" v-if="!item.isUse" :class='item.isUse ? "pricehui" : "icon-color" ' @click="getCoupon(item.id,index)"></view>
<view class="ling" v-else :class='item.isGet ? "pricehui fonthui" : "icon-color" '>已领取</view> <view class="ling" v-else :class='item.isUse ? "pricehui fonthui" : "icon-color" '>已领取</view>
<view class="priceM">{{item.minPrice?Number(item.minPrice):''}}元可用</view> <view class="priceM">{{item.minPrice?Number(item.minPrice):''}}元可用</view>
</view> </view>
</view> </view>
@ -110,20 +110,6 @@
<b_combination></b_combination> <b_combination></b_combination>
<c_bargain></c_bargain> <c_bargain></c_bargain>
<!-- 精品推荐 -->
<view class='boutique'>
<swiper autoplay="true" indicator-dots="true" :circular="circular" :interval="interval"
:duration="duration" indicator-color="rgba(0,0,0,.4)" indicator-active-color="#fff">
<block v-for="(item,index) in bastBanner" :key="index">
<swiper-item>
<navigator :url='item.url' style='width:100%;height:100%;' hover-class='none'>
<image :src="item.pic" class="slide-image" />
</navigator>
</swiper-item>
</block>
</swiper>
</view>
<!-- 首页推荐 --> <!-- 首页推荐 -->
<!-- :class="iSshowH?'on':''" --> <!-- :class="iSshowH?'on':''" -->
<view class="sticky-box" :style="'top:'+(marTop)+'px;'"> <view class="sticky-box" :style="'top:'+(marTop)+'px;'">
@ -132,7 +118,7 @@
<view class="tab nav-bd" id="tab_list"> <view class="tab nav-bd" id="tab_list">
<view id="tab_item" :class="{ 'active': listActive == index}" class="item" <view id="tab_item" :class="{ 'active': listActive == index}" class="item"
v-for="(item, index) in explosiveMoney" :key="index" @click="ProductNavTab(item,index)"> v-for="(item, index) in explosiveMoney" :key="index" @click="ProductNavTab(item,index)">
<view class="txt">{{item.title}}</view> <view class="txt">{{item.name}}</view>
<view class="label">{{item.info}}</view> <view class="label">{{item.info}}</view>
</view> </view>
</view> </view>
@ -170,56 +156,6 @@
</view> </view>
</view> </view>
</view> </view>
<!-- 分类页 -->
<view class="productList" v-if="navIndex>0" :style="'margin-top:'+prodeuctTop+'px'">
<block v-if="sortProduct.length>0">
<view class='list acea-row row-between-wrapper' :class='is_switch==true?"":"on"'>
<view class='item' :class='is_switch==true?"":"on"' hover-class='none'
v-for="(item,index) in sortProduct" :key="index" @click="godDetail(item)">
<view class='pictrue' :class='is_switch==true?"":"on"'>
<image :src='item.image' :class='is_switch==true?"":"on"'></image>
<span class="pictrue_log_class"
:class="is_switch === true ? 'pictrue_log_big' : 'pictrue_log'"
v-if="item.activityH5 && item.activityH5.type === '1'">秒杀</span>
<span class="pictrue_log_class"
:class="is_switch === true ? 'pictrue_log_big' : 'pictrue_log'"
v-if="item.activityH5 && item.activityH5.type === '2'">砍价</span>
<span class="pictrue_log_class"
:class="is_switch === true ? 'pictrue_log_big' : 'pictrue_log'"
v-if="item.activityH5 && item.activityH5.type === '3'">拼团</span>
</view>
<view class='text' :class='is_switch==true?"":"on"'>
<view class='name line1'>{{item.storeName}}</view>
<view class='money font-color' :class='is_switch==true?"":"on"'><text
class='num'>{{item.price}}</text></view>
<view class='vip acea-row row-between-wrapper' :class='is_switch==true?"":"on"'>
<view class='vip-money' v-if="item.vipPrice && item.vipPrice > 0">{{item.vipPrice}}
<image src='../../static/images/vip.png'></image>
</view>
<view>已售{{Number(item.sales) + Number(item.ficti) || 0 }}{{item.unitName}}</view>
</view>
</view>
</view>
<view class='loadingicon acea-row row-center-wrapper' v-if='sortProduct.length > 0'>
<text class='loading iconfont icon-jiazai' :hidden='loading==false'></text>{{loadTitle}}
</view>
</view>
</block>
<Loading :loaded="loadend" :loading="loading"></Loading>
<block v-if="sortProduct.length == 0">
<view class="noCommodity">
<view class='pictrue'>
<image src='../../static/images/noShopper.png'></image>
</view>
<recommend :hostProduct="hostProduct"></recommend>
</view>
</block>
</view>
<!-- <coupon-window :window='window' :couponList="couponList" @onColse="onColse"></coupon-window> -->
<!-- #ifdef MP -->
<!-- <authorize @onLoadFun="onLoadFun" :isAuto="isAuto" :isShowAuth="isShowAuth" @authColse="authColse" :isGoIndex="false"></authorize> -->
<!-- #endif -->
</view> </view>
</view> </view>
</template> </template>
@ -325,7 +261,6 @@
imgUrls: [], imgUrls: [],
itemNew: [], itemNew: [],
menus: [], menus: [],
bastBanner: [],
bastInfo: '', bastInfo: '',
fastInfo: '', fastInfo: '',
fastList: [], fastList: [],
@ -361,7 +296,6 @@
limit: 10, limit: 10,
}, },
is_switch: true, is_switch: true,
hostProduct: [],
hotPage: 1, hotPage: 1,
hotLimit: 10, hotLimit: 10,
hotScroll: false, hotScroll: false,
@ -409,11 +343,6 @@
uni.getSystemInfo({ uni.getSystemInfo({
success(res) { success(res) {
that.$store.commit("SYSTEM_PLATFORM", res.platform); that.$store.commit("SYSTEM_PLATFORM", res.platform);
console.log(res.platform) //
console.log(res.model) //
console.log(res.screenWidth) //
console.log(res.screenHeight) //
} }
}); });
uni.getLocation({ uni.getLocation({
@ -460,7 +389,7 @@
let that = this; let that = this;
// //
setCouponReceive(id).then(function(res) { setCouponReceive(id).then(function(res) {
that.$set(that.couponList[index], 'isGet', true); that.$set(that.couponList[index], 'isUse', true);
that.$util.Tips({ that.$util.Tips({
title: '领取成功' title: '领取成功'
}); });
@ -540,55 +469,6 @@
}) })
}, },
// #endif // #endif
//
onColse() {
this.$set(this, "window", false);
},
//
get_product_list: function(isPage) {
let that = this;
if (that.loadend) return;
if (that.loading) return;
that.loading = true;
that.loadTitle = '';
getProductslist(that.where).then(res => {
if (that.where.page == 1 && res.data.list.length == 0) {
that.hotScroll = false
that.hotPage = 1
that.hostProduct = []
this.get_host_product()
}
let list = res.data.list;
let productList = that.$util.SplitArray(list, that.sortProduct);
let loadend = list.length < that.where.limit;
that.loadend = loadend;
that.loading = false;
that.loadTitle = loadend ? '已全部加载' : '加载更多';
that.$set(that, 'sortProduct', productList);
that.$set(that.where, 'page', that.where.page + 1);
}).catch(err => {
that.loading = false;
that.loadTitle = '加载更多';
});
},
/**
* 获取我的推荐
*/
get_host_product: function() {
let that = this;
that.loading = true;
if (that.hotScroll) return
getProductHot(
that.hotPage,
that.hotLimit,
).then(res => {
that.hotPage++
that.hotScroll = res.data.list.length < that.hotLimit
that.hostProduct = that.hostProduct.concat(res.data.list)
});
},
// //
getIndexConfig: function() { getIndexConfig: function() {
let that = this; let that = this;
@ -601,8 +481,6 @@
that.$set(that, "imgUrls", res.data.banner); that.$set(that, "imgUrls", res.data.banner);
that.$set(that, "menus", res.data.menus); that.$set(that, "menus", res.data.menus);
that.$set(that, "roll", res.data.roll ? res.data.roll : []); that.$set(that, "roll", res.data.roll ? res.data.roll : []);
that.$set(that, "bastBanner", res.data.bastBanner || []);
that.$set(that, "couponList", res.data.couponList || []);
// #ifdef H5 // #ifdef H5
that.$store.commit("SET_CHATURL", res.data.yzfUrl); that.$store.commit("SET_CHATURL", res.data.yzfUrl);
Cache.set('chatUrl', res.data.yzfUrl); Cache.set('chatUrl', res.data.yzfUrl);
@ -611,6 +489,7 @@
that.goodType = res.data.explosiveMoney[0].type that.goodType = res.data.explosiveMoney[0].type
this.getGroomList(); this.getGroomList();
this.shareApi(); this.shareApi();
this.getcouponList();
// #ifdef H5 // #ifdef H5
// that.subscribe = res.data.subscribe; // that.subscribe = res.data.subscribe;
// #endif // #endif
@ -665,46 +544,6 @@
Cache.set('chatUrl', data.yzfUrl); Cache.set('chatUrl', data.yzfUrl);
}) })
}, },
// setOpenShare:function(mss){
// getWechatConfig()
// .then(res => {
// let data = res.data;
// console.log('');
// console.log(data);
// WechatJSSDK.config({
// debug: true, // ,apialertpclogpc
// appId: data.appId, //
// timestamp: data.timestamp, //
// nonceStr: data.nonceStr, //
// signature: data.signature,//
// jsApiList: data.jsApiList // 使JS
// });
// WechatJSSDK.error(function(res){
// console.log('error')
// console.log(res);
// });
// WechatJSSDK.ready(function () { //
// WechatJSSDK.onMenuShareAppMessage({
// title: mss.title, //
// desc: mss.synopsis, //
// link: location.href, // JS
// imgUrl: mss.img, //
// success: function (res) {
// console.log('success');
// console.log(res);
// //
// },
// fail:function(err){
// console.log('err');
// console.log(err);
// }
// })
// });
// }).catch(err => {
// console.log(err);
// reject(err);
// });
// },
// //
setOpenShare: function(data) { setOpenShare: function(data) {
let that = this; let that = this;
@ -776,7 +615,24 @@
this.params.page++ this.params.page++
this.tempArr = this.tempArr.concat(data.list) this.tempArr = this.tempArr.concat(data.list)
}) })
} },
/**
* 获取我的推荐
*/
get_host_product: function() {
let that = this;
that.loading = true;
if (that.hotScroll) return
getProductHot(
that.hotPage,
that.hotLimit,
).then(res => {
that.hotPage++
that.hotScroll = res.data.list.length < that.hotLimit
that.hostProduct = that.hostProduct.concat(res.data.list)
});
},
}, },
mounted() { mounted() {
let self = this let self = this
@ -802,9 +658,7 @@
}; };
}, },
// #endif // #endif
//
onReachBottom() { onReachBottom() {
if (this.navIndex == 0) { if (this.navIndex == 0) {
// //
if (this.params.page != 1) { if (this.params.page != 1) {
@ -819,14 +673,6 @@
} }
} }
}, },
//
// onPageScroll(e) {
// console.log(e)
// let self = this
// if (e.scrollTop == 1276) {
// self.isFixed = true
// }
// }
} }
</script> </script>
<style> <style>
@ -1258,578 +1104,6 @@
} }
} }
.live-wrapper {
position: relative;
width: 100%;
overflow: hidden;
border-radius: 16rpx;
image {
width: 100%;
height: 400rpx;
}
.live-top {
z-index: 20;
position: absolute;
left: 0;
top: 0;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
width: 180rpx;
height: 54rpx;
border-radius: 0rpx 0px 18rpx 0px;
image {
width: 30rpx;
height: 30rpx;
margin-right: 10rpx;
/* #ifdef H5 */
display: block;
/* #endif */
}
}
.live-title {
position: absolute;
left: 0;
bottom: 6rpx;
width: 100%;
height: 70rpx;
line-height: 70rpx;
text-align: center;
font-size: 30rpx;
color: #fff;
background: rgba(0, 0, 0, .35);
}
&.mores {
width: 100%;
.item {
position: relative;
width: 320rpx;
display: inline-block;
border-radius: 16rpx;
overflow: hidden;
margin-right: 20rpx;
image {
width: 320rpx;
height: 180rpx;
border-radius: 16rpx;
}
.live-title {
height: 40rpx;
line-height: 40rpx;
text-align: center;
font-size: 22rpx;
}
.live-top {
width: 120rpx;
height: 36rpx;
font-size: 22rpx;
image {
width: 20rpx;
height: 20rpx;
}
}
}
}
}
.hot-img {
/* #ifndef H5 */
margin-top: 40rpx;
/* #endif */
swiper,
swiper-item image {
width: 100%;
height: 225rpx;
}
}
.explosion {
width: 100%;
height: 500rpx;
margin-top: 20rpx;
padding: 30rpx 20rpx;
background-image: url('~@/static/images/explosion.png');
background-size: 100% 100%;
border-radius: 13px;
.hd {
display: flex;
align-items: center;
image {
width: 147rpx;
height: 35rpx;
margin-right: 20rpx;
}
.txt {
width: 220rpx;
height: 36rpx;
background: linear-gradient(90deg, rgba(255, 168, 0, 1) 0%, rgba(255, 34, 15, 1) 100%);
border-radius: 26rpx 0px 26rpx 0px;
color: #fff;
text-align: center;
font-size: 22rpx;
box-shadow: 3px 1px 1px 1px rgba(255, 203, 199, .8);
}
}
.bd {
display: flex;
flex-wrap: wrap;
margin-top: 28rpx;
.item {
display: flex;
align-items: center;
justify-content: space-between;
position: relative;
width: 325rpx;
height: 180rpx;
margin-bottom: 20rpx;
margin-right: 20rpx;
background-color: #fff;
border-radius: 16rpx;
padding: 0 20rpx;
box-sizing: border-box;
image {
width: 160rpx;
height: 160rpx;
}
.con-box {
display: flex;
flex-direction: column;
justify-content: center;
width: 120rpx;
height: 100%;
.title {
color: #282828;
font-size: 30rpx;
}
.con {
color: #999999;
font-size: 20rpx;
}
.go {
display: flex;
align-items: center;
justify-content: center;
margin-top: 10rpx;
width: 112rpx;
height: 36rpx;
border-radius: 18rpx;
color: #fff;
font-size: 26rpx;
font-weight: bold;
font-style: italic;
image {
width: 26rpx;
height: 26rpx;
}
}
}
&:first-child .go {
background: linear-gradient(90deg, rgba(75, 196, 255, 1) 0%, rgba(32, 126, 255, 1) 100%);
}
&:nth-child(2) .go {
background: linear-gradient(90deg, rgba(255, 144, 67, 1) 0%, rgba(255, 83, 29, 1) 100%);
}
&:nth-child(3) .go {
background: linear-gradient(90deg, rgba(150, 225, 135, 1) 0%, rgba(72, 206, 44, 1) 100%);
}
&:nth-child(4) .go {
background: linear-gradient(90deg, rgba(255, 197, 96, 1) 0%, rgba(255, 156, 0, 1) 100%);
}
&:nth-child(2n) {
margin-right: 0;
}
}
}
}
.spike-box {
margin-top: 20rpx;
padding: 23rpx 20rpx;
border-radius: 24rpx;
background-color: #fff;
overflow: hidden;
box-shadow: 0px 0px 16px 3px rgba(0, 0, 0, 0.04);
.hd {
display: flex;
align-items: center;
justify-content: space-between;
.left {
display: flex;
align-items: center;
width: 500rpx;
.icon {
width: 38rpx;
height: 38rpx;
margin-right: 8rpx;
}
.title {
width: 134rpx;
height: 33rpx;
}
}
.more {
font-size: 26rpx;
color: #999;
.iconfont {
margin-left: 6rpx;
font-size: 25rpx;
}
}
}
.spike-wrapper {
width: 100%;
margin-top: 27rpx;
.spike-item {
display: inline-block;
width: 222rpx;
margin-right: 20rpx;
.img-box {
position: relative;
height: 222rpx;
image {
width: 100%;
height: 222rpx;
border-radius: 16rpx;
}
.msg {
position: absolute;
left: 10rpx;
bottom: 16rpx;
width: 86rpx;
height: 30rpx;
background: rgba(255, 255, 255, 1);
border: 1px solid rgba(255, 109, 96, 1);
border-radius: 6rpx;
font-size: 20rpx;
color: $theme-color;
}
}
.info {
margin-top: 8rpx;
padding: 0 10rpx;
.name {
font-size: 28rpx;
}
.price-box {
display: flex;
align-items: center;
justify-content: center;
.tips {
display: flex;
align-items: center;
justify-content: center;
width: 28rpx;
height: 28rpx;
background-color: $theme-color;
color: #fff;
font-size: 20rpx;
border-radius: 2px;
}
.price {
display: flex;
margin-left: 10rpx;
color: $theme-color;
font-size: 28rpx;
font-weight: bold;
text {
font-size: 18rpx;
}
}
}
}
}
}
}
.barg {
width: 100%;
height: 478rpx;
margin-top: 20rpx;
padding-left: 20rpx;
background-image: url('~@/static/images/barg002.png');
background-size: 100% 100%;
.title {
display: flex;
align-items: center;
justify-content: center;
padding-top: 42rpx;
image {
width: 463rpx;
height: 39rpx;
}
}
.barg-swiper {
margin-top: 43rpx;
padding-right: 20rpx;
.wrapper {
display: flex;
}
.list-box {
flex-shrink: 0;
width: 210rpx;
background-color: #fff;
border-radius: 16rpx;
overflow: hidden;
padding-bottom: 18rpx;
margin-right: 20rpx;
image {
width: 100%;
height: 210rpx;
}
.info-txt {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding-top: 15rpx;
.price {
font-weight: 700;
color: $theme-color;
}
.txt {
display: flex;
align-items: center;
justify-content: center;
width: 136rpx;
height: 33rpx;
margin-top: 10rpx;
background: linear-gradient(90deg, $bg-star 0%, $bg-end 100%);
border-radius: 17px;
font-size: 22rpx;
color: #fff;
}
}
}
.more-box {
flex-shrink: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 80rpx;
background-color: #fff;
border-radius: 16rpx;
image {
width: 24rpx;
height: 24rpx;
margin-top: 10rpx;
}
.txt {
display: block;
writing-mode: vertical-lr;
font-size: 26rpx;
line-height: 1.2;
}
}
}
}
.group-wrapper {
padding: 26rpx 20rpx;
margin-top: 20rpx;
background: #fff;
border-radius: 24rpx;
.hd {
display: flex;
align-items: center;
justify-content: space-between;
.left {
display: flex;
align-items: center;
.icon {
width: 38rpx;
height: 38rpx;
margin-right: 8rpx;
}
.title {
width: 134rpx;
height: 33rpx;
}
.person {
display: flex;
align-items: center;
margin-left: 40rpx;
.avatar-box {
display: flex;
align-items: center;
image {
width: 30rpx;
height: 30rpx;
border-radius: 50%;
margin-right: -10rpx;
}
}
.num {
margin-left: 18rpx;
font-size: 26rpx;
color: #999999;
}
}
}
.more {
font-size: 26rpx;
color: #999;
.iconfont {
margin-left: 6rpx;
font-size: 25rpx;
}
}
}
.group-scroll {
width: 100%;
margin-top: 25rpx;
.group-item {
display: inline-block;
width: 222rpx;
margin-right: 20rpx;
box-shadow: 0px 2px 6px 2px rgba(0, 0, 0, 0.03);
border-radius: 16rpx;
image {
width: 100%;
height: 222rpx;
border-radius: 16rpx 16rpx 0 0;
}
.info {
padding: 8rpx 13rpx;
.name {
font-size: 24rpx;
}
.price-box {
display: flex;
align-items: center;
margin-top: 10rpx;
.tips {
display: flex;
align-items: center;
justify-content: center;
width: 76rpx;
height: 30rpx;
margin-right: 6rpx;
background: linear-gradient(90deg, rgba(255, 0, 0, .1) 0%, rgba(255, 84, 0, .1) 100%);
border-radius: 2px;
font-size: 20rpx;
color: $theme-color;
}
.price {
font-size: 26rpx;
color: $theme-color;
font-weight: 700;
text {
font-size: 20rpx;
}
}
}
}
.bom-btn {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 48rpx;
background: linear-gradient(90deg, $bg-star 0%, $bg-end 100%);
border-radius: 0px 0px 16rpx 16rpx;
color: #fff;
}
}
}
}
.boutique {
margin-top: 30rpx;
height: 140rpx;
width: 100%;
swiper,
swiper-item,
.slide-image {
width: 100%;
height: 140rpx;
border-radius: 12rpx;
}
}
.nav-bd { .nav-bd {
display: flex; display: flex;

View File

@ -323,7 +323,9 @@
res.data.routine_my_menus.map((item) => { res.data.routine_my_menus.map((item) => {
if (item.url.indexOf('service') !== -1) that.servicePic = item.pic if (item.url.indexOf('service') !== -1) that.servicePic = item.pic
}) })
if(res.data.routine_my_banner){
that.imgUrls = res.data.routine_my_banner that.imgUrls = res.data.routine_my_banner
}
}); });
}, },
// //

View File

@ -164,8 +164,8 @@
that.$util.uploadImageOne({ that.$util.uploadImageOne({
url: 'user/upload/image', url: 'user/upload/image',
name: 'multipart', name: 'multipart',
model: "user", model: "maintain",
pid: 7 pid: 0
}, function(res) { }, function(res) {
that.newAvatar = res.data.url; that.newAvatar = res.data.url;
}); });

View File

@ -2,6 +2,7 @@ import {
TOKENNAME, TOKENNAME,
HTTP_REQUEST_URL HTTP_REQUEST_URL
} from '../config/app.js'; } from '../config/app.js';
import {HTTP_ADMIN_URL} from '@/config/app.js';
import store from '../store'; import store from '../store';
import { import {
pathToBase64 pathToBase64
@ -452,8 +453,7 @@ export default {
uni.showLoading({ uni.showLoading({
title: '图片上传中', title: '图片上传中',
}); });
let urlPath = HTTP_REQUEST_URL + '/api/front/' + uploadUrl + "?model=" + model + let urlPath = HTTP_ADMIN_URL + '/admin/upload/image' + "?model=" + model + "&pid=" + pid
"&pid=" + pid;
let localPath = res.tempFilePaths[0]; let localPath = res.tempFilePaths[0];
uni.uploadFile({ uni.uploadFile({
url: urlPath, url: urlPath,