diff --git a/app.js b/app.js
index 7ad62bb..a188f0a 100644
--- a/app.js
+++ b/app.js
@@ -92,8 +92,22 @@ App({
if(!app.globalData.userInfo){
var user = wx.getStorageSync("userinfo");
if (user && user.user_id){
- app.globalData.userInfo=wx.getStorageSync("userinfo");
- app.globalData.user_id= app.globalData.userInfo.user_id;
+ //--生成会员 --
+ app.promiseGet("/api/weshop/users/get/" + user.store_id + "/" + user.user_id,{}).then(res=>{
+ if(res.data.code==0){
+ user=res.data.data;
+ //-- 小程序会员被解绑了,就要清空会员 --
+ if(user['is_weappuser']==0){
+ user=null;
+ app.globalData.userInfo=null;
+ app.globalData.user_id= 0;
+ }else{
+ app.globalData.userInfo=user;
+ app.globalData.user_id= user.user_id;
+ }
+ wx.setStorageSync("userinfo",user);
+ }
+ })
}
}
wx.getSystemInfo({
@@ -110,26 +124,40 @@ App({
var th=this;
var pages = getCurrentPages(); //获取加载的页面
var currentPage = pages[pages.length - 1]; //获取当前页面的对象
- if(!currentPage || currentPage.route.indexOf('error/error')==-1){
- var tt=this.globalData.wxapp_buy_obj;
- if (!tt){
- this.get_isbuy(function (){
- tt=th.globalData.wxapp_buy_obj;
- if (tt.isout == 1){
- th.promiseGet('/api/weshop/store/get/'+t.stoid,{}).then(res=>{
- wx.reLaunch({
- url: "/pages/error/error?msg=该商城已到期,暂停浏览!\r\n可联系:"+res.data.data.store_tel,
- });
- })
- }
- else if (tt.isbuy == 0)
- wx.reLaunch({
- url: "/pages/error/error?msg=还未购买小程序",
- });
- })
- }
- }
-
+ var turl="/api/weshop/storeconfig/get/" + th.globalData.setting.stoid;
+
+ th.promiseGet(turl,{}).then(res=>{
+ var o=res;
+ if(o.data.code==0){
+ th.globalData.config2 = o.data.data;
+ //有配置成要验证过期,因为过期的小程序没有办法审核
+ if(th.globalData.config2.is_overdue){
+
+ //要开始验证,小程序有没有购买和过期
+ if(!currentPage || currentPage.route.indexOf('error/error')==-1){
+ var tt=this.globalData.wxapp_buy_obj;
+ if (!tt){
+ this.get_isbuy(function (){
+ tt=th.globalData.wxapp_buy_obj;
+ if (tt.isout == 1){
+ th.promiseGet('/api/weshop/store/get/'+t.stoid,{}).then(res=>{
+ wx.reLaunch({
+ url: "/pages/error/error?msg=该商城已到期,暂停浏览!\r\n可联系:"+res.data.data.store_tel,
+ });
+ })
+ }
+ else if (tt.isbuy == 0)
+ wx.reLaunch({
+ url: "/pages/error/error?msg=还未购买小程序",
+ });
+ })
+ }
+ }
+ }
+ }
+ })
+
+
},
//---初始化第三方----
@@ -547,7 +575,11 @@ App({
this.globalData.room_id=null; //关闭要把房间号关闭
this.globalData.room_goods_id=null; //关闭要把物流清空
this.globalData.config2=null; //清除config2的缓存
- this.globalData.config=null; //清除config的缓存
+ this.globalData.config=null; //清除config的缓存
+ this.globalData.gr_index=0; //商品分组的序列
+ for(var i = 1; i < 50; i++) {
+ clearInterval(i);
+ }
},
clear_word:function (word) {
diff --git a/app.json b/app.json
index 0bf80c8..70151a1 100644
--- a/app.json
+++ b/app.json
@@ -30,7 +30,6 @@
"pages/activity/seckill_list/seckill_list",
"pages/activity/pind_list/pind_list",
"pages/togoin/togoin",
- "pages/getphone/getphone",
"pages/team/team_success/team_success",
"pages/team/team_show/team_show",
"pages/team/team_ping/team_ping",
@@ -86,18 +85,18 @@
"pages/template/index",
"pages/store/index",
"pages/user/choice_guide/choice_guide",
- "pages/cart/cart2_inte/cart2_inte",
- "pages/giftpack/festival/festival",
- "pages/team/team_more/team_more",
- "pages/user/collect_list/collect_list",
- "pages/user/deposit/deposit",
- "pages/user/deposit/prepaid/msg/msg",
- "pages/user/deposit/prepaid/prepaid",
- "pages/distribution/distribution"
+ "pages/cart/cart2_inte/cart2_inte",
+ "pages/giftpack/festival/festival",
+ "pages/team/team_more/team_more",
+ "pages/user/collect_list/collect_list",
+ "pages/user/deposit/deposit",
+ "pages/user/deposit/prepaid/msg/msg",
+ "pages/user/deposit/prepaid/prepaid",
+ "pages/distribution/distribution"
],
"plugins": {
"live-player-plugin": {
- "version": "1.2.1",
+ "version": "1.2.5",
"provider": "wx2b03c6e691cd7370"
}
},
diff --git a/app.wxss b/app.wxss
index 20b67fd..a0c24ef 100644
--- a/app.wxss
+++ b/app.wxss
@@ -4,6 +4,9 @@
.pd10 {
padding: 10rpx;
}
+.pd16 {
+ padding: 16rpx;
+}
.pd20 {
padding: 20rpx;
}
@@ -13,6 +16,9 @@
.pdt20 {
padding-top: 20rpx;
}
+.pdb0 {
+ padding-bottom: 0 !important;
+}
.pdb20 {
padding-bottom: 20rpx;
}
@@ -134,6 +140,10 @@
font-weight: bold;
}
+.mgb20 {
+ margin-bottom: 20rpx;
+}
+
.mgv20 {
margin-top: 20rpx;
margin-bottom: 20rpx;
@@ -144,6 +154,10 @@
margin-right: 20rpx;
}
+.h68 {
+ height: 68rpx;
+}
+
.ib{
display: inline-block;
}
diff --git a/components/diy_advertising/diy_advertising.wxml b/components/diy_advertising/diy_advertising.wxml
index 8a0396c..baf1cbb 100644
--- a/components/diy_advertising/diy_advertising.wxml
+++ b/components/diy_advertising/diy_advertising.wxml
@@ -11,10 +11,10 @@
-
+
-
+
@@ -35,11 +35,11 @@
-
+
-
+
@@ -63,11 +63,11 @@
-
+
-
+
@@ -90,8 +90,8 @@
200*200
-
-
+
+
@@ -100,8 +100,8 @@
200*200
-
-
+
+
@@ -119,10 +119,10 @@
>
-
+
-
+
@@ -134,11 +134,11 @@
-
+
-
+
@@ -150,10 +150,10 @@
-
+
-
+
@@ -172,11 +172,11 @@
-
+
-
+
@@ -187,11 +187,11 @@
-
+
-
+
@@ -205,11 +205,11 @@
-
+
-
+
@@ -220,11 +220,11 @@
-
+
-
+
@@ -242,11 +242,11 @@
-
+
-
+
@@ -258,10 +258,10 @@
-
+
-
+
@@ -276,11 +276,11 @@
-
+
-
+
@@ -291,11 +291,11 @@
-
+
-
+
@@ -315,11 +315,11 @@
-
+
-
+
@@ -330,11 +330,11 @@
-
+
-
+
@@ -348,11 +348,11 @@
-
+
-
+
@@ -364,11 +364,11 @@
-
+
-
+
@@ -383,11 +383,11 @@
-
+
-
+
@@ -411,14 +411,14 @@
-
+
{{item.title}}
-
+
{{item.title}}
diff --git a/components/diy_goodsGroup/diy_goodsGroup.js b/components/diy_goodsGroup/diy_goodsGroup.js
index 5072fd3..0183113 100644
--- a/components/diy_goodsGroup/diy_goodsGroup.js
+++ b/components/diy_goodsGroup/diy_goodsGroup.js
@@ -260,6 +260,7 @@ Component({
//---卡的初始化----
card_init: function() {
var th = this,os=getApp().globalData.setting;
+ if(!getApp().globalData.user_id) return false;
getApp().request.get("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.user_id, {
isShowLoading:false,
success: function(e) {
@@ -389,12 +390,12 @@ Component({
//--- 设置 ---
set_good:async function(goods){
var now=ut.gettimestamp();
- var th=this;
- for(var i in goods){
+ var th=this;
+ if(!goods || goods.length==0) return false;
+ for(var i in goods){
var val=goods[i];
var item = {};
var prom_id = null;
- console.log(val.goodsid);
//app.request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + val.goods_id, {}).then(res => {
item.goods_name = val.goods_name;
@@ -422,7 +423,7 @@ Component({
url = "/api/ms/flash_sale/get/" + os.stoid + "/" + prom_id;
}
- if(url!=null){
+ if(url!=null && url!=''){
await getApp().request.promiseGet(url, {}).then(res => {
var prom =null;
if(res && res.data) res.data.data;
diff --git a/components/diy_goodsGroup/diy_goodsGroup.wxml b/components/diy_goodsGroup/diy_goodsGroup.wxml
index 458a9e3..e57fa8c 100644
--- a/components/diy_goodsGroup/diy_goodsGroup.wxml
+++ b/components/diy_goodsGroup/diy_goodsGroup.wxml
@@ -19,7 +19,7 @@
@@ -166,7 +166,7 @@
-
-
-
@@ -628,7 +628,7 @@
-
+
-
跳过 {{sec_show}}
diff --git a/components/full_screen/full_screen.wxss b/components/full_screen/full_screen.wxss
index f6dde99..f5220b9 100644
--- a/components/full_screen/full_screen.wxss
+++ b/components/full_screen/full_screen.wxss
@@ -8,8 +8,6 @@
background-size: 100% 100%;
background-repeat: no-repeat;
}
-
-
.skip_box{
float: right; margin-top: 10rpx; margin-right: 10rpx;
background-color: gainsboro; width: 120rpx;
diff --git a/components/goods_list/goods_list.js b/components/goods_list/goods_list.js
index 5284d4c..79830f6 100644
--- a/components/goods_list/goods_list.js
+++ b/components/goods_list/goods_list.js
@@ -33,48 +33,55 @@ Component({
methods: {
init: function () {
var th = this;
+ if(!getApp().globalData.user_id) return false;
getApp().request.get("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.user_id, {
isShowLoading:false,
success: function (e) {
- getApp().globalData.userInfo = e.data.data;
- getApp().getConfig2(function (e) {
- var swithc_list = e.switch_list;
- var sw_arr = JSON.parse(swithc_list);
- //---如果后台有开等级卡的开关---
- if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
- th.setData({
- rank_switch: true
- });
- //---回调卡的列表---
- th.getPlusCardType(function (ob) {
- th.setData({
- card_list: ob.card_list
- });
- var ti = setInterval(function () {
- var user = getApp().globalData.userInfo;
- if (!user) return false;
- clearInterval(ti);
- if (user.card_field && user['card_expiredate']) {
- var str = user['card_expiredate'].replace(/-/g, '/');
- var end = new Date(str);
- end = Date.parse(end) / 1000;
- var now = ut.gettimestamp();
- //--- 判断是等级会员,且在有效期范围内 ---
- if (user.card_field && now < end) {
- var card_name = ob.name_map.get(user.card_field);
- if (card_name.length > 4) card_name = card_name.substring(0, 8);
- th.setData({
- card_field: user.card_field,
- card_name: card_name,
- card_list: ob.card_list
- });
- }
- }
- }, 500)
- })
- }
- })
- }
+ if(e.code==0 && e.data && e.data.data){
+ getApp().globalData.userInfo = e.data.data;
+ getApp().getConfig2(function (e) {
+ var swithc_list = e.switch_list;
+ var sw_arr = JSON.parse(swithc_list);
+ //---如果后台有开等级卡的开关---
+ if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
+ th.setData({
+ rank_switch: true
+ });
+ //---回调卡的列表---
+ th.getPlusCardType(function (ob) {
+ th.setData({
+ card_list: ob.card_list
+ });
+ var ti = setInterval(function () {
+ var user = getApp().globalData.userInfo;
+ if (!user) return false;
+ clearInterval(ti);
+ if (user.card_field && user['card_expiredate']) {
+ var str = user['card_expiredate'].replace(/-/g, '/');
+ var end = new Date(str);
+ end = Date.parse(end) / 1000;
+ var now = ut.gettimestamp();
+ //--- 判断是等级会员,且在有效期范围内 ---
+ if (user.card_field && now < end) {
+ var card_name = ob.name_map.get(user.card_field);
+ if (card_name.length > 4) card_name = card_name.substring(0, 8);
+ th.setData({
+ card_field: user.card_field,
+ card_name: card_name,
+ card_list: ob.card_list
+ });
+ }
+ }
+ }, 500)
+ })
+ }
+ })
+
+ }
+
+
+
+ }
})
},
// get_list: function () {
diff --git a/custom-tab-bar/index.js b/custom-tab-bar/index.js
index ee0f199..80fd4a5 100644
--- a/custom-tab-bar/index.js
+++ b/custom-tab-bar/index.js
@@ -12,7 +12,29 @@ Component({
lifetimes: {
- attached: function() {
+ attached: function() {
+ var th=this;
+
+ getApp().promiseGet("/api/weshop/storeDistribut/get/"+os.stoid,{}).then(rs=>{
+ var dis=rs.data.data;
+ if( dis && dis.switch==0){
+ th.setData({is_no_distri:1})
+ }
+ })
+
+ getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{
+ if(res.data.code==0){
+ var arr = res.data.data.pageData;
+ if (arr.length > 0) {
+ var item=arr[0];
+ if(item.is_sy==0){
+ var now = Date.parse(new Date());now = now / 1000;
+ if(item.end_time
-
-
- {{cartGoodsNum}}
-
-
-
-
- {{item.nav_name}}
-
-
+
+
+
+ {{cartGoodsNum}}
+
+
+
+
+ {{item.nav_name}}
+
+
+
+
+
+
+
+
+
+
+ {{item.nav_name}}
+
+
+
-
-
-
\ No newline at end of file
diff --git a/custom-tab-bar/index.wxss b/custom-tab-bar/index.wxss
index 571e147..9d5b4b3 100644
--- a/custom-tab-bar/index.wxss
+++ b/custom-tab-bar/index.wxss
@@ -1,5 +1,6 @@
.main_bar{
width:100%; border-top: 1rpx solid #ebebeb; position: fixed; bottom: 0; left: 0; z-index: 10000;
+ display: flex; justify-content: space-around;
}
.tabbar_item{
position:relative;height:100%;float:left;text-align:center;padding:0px 0;
diff --git a/packageA/pages/cardDetails/cardDetails.js b/packageA/pages/cardDetails/cardDetails.js
new file mode 100644
index 0000000..ca60dd5
--- /dev/null
+++ b/packageA/pages/cardDetails/cardDetails.js
@@ -0,0 +1,98 @@
+// pages/i_service/cardDetails/cardDetails.js
+const app = getApp();
+let self = null;
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ self = this;
+ this.data.options = options;
+ // this.setData({
+ // options,
+ // });
+ app.isLogin().then(function(data) {//进入页面前已经授权登录成功
+ self.setData({
+ userInfo: data,
+ imghost: app.globalData.setting.imghost,
+ });
+ });
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ if(app.globalData.userInfo) {
+ if(!this.data.isLogin) {
+ this.setData({
+ userInfo: app.globalData.userInfo,
+ imghost: app.globalData.setting.imghost,
+ isLogin: true,
+ });
+
+ app.request.get("/api/weshop/serviceCard/get/" + app.globalData.setting.stoid + '/' + this.data.options.id, {
+ isShowLoading: false,
+ success: function(res) {
+ self.setData({
+ details: res.data.data
+ });
+ },
+ });
+
+
+ };
+ };
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload: function () {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function () {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage: function () {
+
+ }
+})
\ No newline at end of file
diff --git a/packageA/pages/cardDetails/cardDetails.json b/packageA/pages/cardDetails/cardDetails.json
new file mode 100644
index 0000000..87b2198
--- /dev/null
+++ b/packageA/pages/cardDetails/cardDetails.json
@@ -0,0 +1,6 @@
+{
+ "navigationBarTitleText": "卡项详情",
+ "usingComponents": {
+
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/cardDetails/cardDetails.wxml b/packageA/pages/cardDetails/cardDetails.wxml
new file mode 100644
index 0000000..bd610df
--- /dev/null
+++ b/packageA/pages/cardDetails/cardDetails.wxml
@@ -0,0 +1,19 @@
+
+
+
+
+
+ {{details.money}}
+ {{details.serviceName}}
+
+
+ 有效天数:{{details.validDays}}天
+
+
+
+
+ —— 详情 ——
+ {{details.serviceContent}}
+
+
diff --git a/packageA/pages/cardDetails/cardDetails.wxss b/packageA/pages/cardDetails/cardDetails.wxss
new file mode 100644
index 0000000..bfeac5b
--- /dev/null
+++ b/packageA/pages/cardDetails/cardDetails.wxss
@@ -0,0 +1,43 @@
+page,
+.page {
+ height: 100%;
+}
+
+page {
+ background-color: #f2f2f2;
+}
+
+.image {
+ width: 100%;
+ display: block;
+}
+
+.price {
+ color: #FF6768;
+ font-size: 60rpx;
+}
+
+.price::before {
+ content: '¥';
+ font-size: 40rpx;
+}
+
+.line {
+ position: relative;
+}
+
+.line::before {
+ content: '';
+ position: absolute;
+ width: 60%;
+ height: 1rpx;
+ background-color: #7b7b7b;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+ z-index: 1;
+}
+
+.title {
+ padding: 10rpx;
+}
\ No newline at end of file
diff --git a/packageA/pages/cardList/cardList.js b/packageA/pages/cardList/cardList.js
new file mode 100644
index 0000000..00c2c47
--- /dev/null
+++ b/packageA/pages/cardList/cardList.js
@@ -0,0 +1,217 @@
+// pages/i_service/cardList/cardList.js
+const app = getApp();
+let self = null;
+
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ list: null,
+ isLoading: false, // 检测是否已经发送请求,防止重复发送请求
+ noMore: false, // 检测是否有更多数据,true为没有更多数据,false为还有数据
+ pageNum: 1, // 当前页数
+
+ currentQuery: {
+ store_id: app.globalData.setting.stoid,
+ },
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function (options) {
+ self = this;//保存全局指针
+ app.isLogin().then(function(data) {//进入页面前已经授权登录成功
+ self.setData({
+ userInfo: data,
+ imghost: app.globalData.setting.imghost,
+ });
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function () {
+ let url = '/api/weshop/serviceCard/page';
+ let currentQuery = this.data.currentQuery;
+ if(app.globalData.userInfo) {
+ if(!this.data.isLogin) {
+ this.setData({
+ userInfo: app.globalData.userInfo,
+ imghost: app.globalData.setting.imghost,
+ isLogin: true,
+ });
+
+ this.getData(true, url, currentQuery);
+
+ // app.request.promiseGet("/api/weshop/ad/page?pid=2&store_id=" + app.globalData.setting.stoid, {
+ // data: {
+ // enabled: 1
+ // }
+ // }).then(res => {
+ // console.log('res==>1', res);
+ // });
+
+
+ app.request.promiseGet("/api/weshop/ad/page?pid=2&store_id=" + app.globalData.setting.stoid, {
+ data: {
+ enabled: 1
+ }
+ }).then(res => {
+
+ if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){
+ var a = res.data.data.pageData;
+ var arr = new Array();
+ for (var i = 0; i < a.length; i++) {
+ var tt = {
+ 'ad_code': self.data.imghost + a[i].ad_code,
+ 'media_link': '',
+ 'ad_weapplink':a[i].ad_weapplink
+ };
+ arr.push(tt);
+ }
+ if (arr.length > 0) self.setData({
+ banner: arr,
+ });
+ console.log('banner==>', arr);
+ wx.stopPullDownRefresh();
+ }
+ })
+
+ };
+ };
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide: function () {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload: function () {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh: function () {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function () {
+ this.scrollToLower('/api/weshop/serviceCard/page', this.data.currentQuery);
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage: function () {
+
+ },
+
+ /**
+ * promiseGet请求数据
+ */
+ getData: function(isInit, url, data) {
+ return new Promise(function(resolve, reject) {
+
+ app.request.promiseGet(url, {
+ data: data,
+ isShowLoading: true,
+ })
+ .then(function(res) {
+ // console.log('1121', res.data.code);
+ if(res.data.code == 0) {
+
+ self.setData({
+ isLoading: false
+ });
+
+ if(isInit) {// 第一次加载
+ self.setData({
+ list: res.data.data
+ });
+ } else {
+ self.setData({
+ 'list.pageData': self.data.list.pageData.concat(res.data.data.pageData)
+ });
+ };
+
+ if((res.data.data.pageData.length == 0) || (res.data.data.pageSize * res.data.data.page >= res.data.data.total)) {
+ self.setData({
+ noMore: true
+ });
+ };
+
+ } else {
+ self.setData({
+ 'list.pageData': []
+ });
+ };
+ resolve();
+ })
+ .catch(function(err) {
+ console.log('出错拉!!!!',err);
+ self.setData({
+ 'list.pageData': []
+ });
+ });
+
+ });
+
+ },
+
+
+ /**
+ * 上拉加载数据
+ */
+ scrollToLower(url, requestData, callback) {
+ // 数据总量
+ let total = this.data.list.total;
+ // 单页最大数据量
+ let pageSize = this.data.list.pageSize;
+ // 如果数据总量不为0且小于或等于单页最大数据量,说明数据已全部加载,显示‘没有更多了’
+ if((total != 0)&&(total <= pageSize)) {
+ this.setData({
+ noMore: true
+ });
+ };
+
+ if(!this.data.isLoading && !this.data.noMore) {
+ this.setData({
+ isLoading: true,
+ pageNum: this.data.pageNum + 1
+ });
+ requestData.page = this.data.pageNum;
+
+ this.getData(false, url, requestData)
+ .then(function() {
+ callback();
+ });
+ };
+ },
+
+ go_goods: function(e) {
+ var gid = e.currentTarget.dataset.gid;
+ var url = "/packageA/pages/goodsInfo/goodsInfo?goods_id=" + gid;
+ app.goto(url);
+ },
+})
\ No newline at end of file
diff --git a/packageA/pages/cardList/cardList.json b/packageA/pages/cardList/cardList.json
new file mode 100644
index 0000000..e05a1ed
--- /dev/null
+++ b/packageA/pages/cardList/cardList.json
@@ -0,0 +1,7 @@
+{
+ "navigationBarTitleText": "卡项列表",
+ "enablePullDownRefresh": false,
+ "usingComponents": {
+ "nodata": "/components/nodata/nodata"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/cardList/cardList.wxml b/packageA/pages/cardList/cardList.wxml
new file mode 100644
index 0000000..d558238
--- /dev/null
+++ b/packageA/pages/cardList/cardList.wxml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item.serviceName}}
+ 有效天数:{{item.validDays}}
+
+
+ {{item.money}}
+ 卡项详情
+
+
+
+
+
+
+
+ - 已经到底了 -
+
+
diff --git a/packageA/pages/cardList/cardList.wxss b/packageA/pages/cardList/cardList.wxss
new file mode 100644
index 0000000..4d4c4ae
--- /dev/null
+++ b/packageA/pages/cardList/cardList.wxss
@@ -0,0 +1,67 @@
+/* pages/i_service/cardList/cardList.wxss */
+page,
+.page {
+ height: 100%;
+}
+
+page {
+ background-color: #f2f2f2;
+}
+
+.scroll-view {
+ height: calc(100% - 300rpx);
+}
+
+.swiper {
+ background-color: #f2f2f2;
+}
+
+.image {
+ display: block;
+ width: 240rpx;
+ height: 240rpx;
+ background-color: pink;
+}
+
+.price {
+ color: #FF6768;
+ font-size: 28rpx;
+}
+
+.price::before {
+ content: '¥';
+ font-size: 24rpx;
+}
+
+.btn-details {
+ color: white;
+ font-size: 24rpx;
+ border-radius: 6rpx;
+ background-color: #FF6768;
+ padding: 20rpx;
+}
+
+.scroll-view {
+ /* height: calc(100% - 300rpx); */
+}
+
+.noMore {
+ padding: 20rpx;
+ color: #bbb;
+ text-align: center;
+ font-size: 26rpx;
+ background-color: transparent !important;
+}
+
+.space-bt {
+ justify-content: space-between;
+}
+
+.ali-c {
+ align-items: center;
+}
+
+.swiper-img {
+ display: block;
+ margin: auto;
+}
\ No newline at end of file
diff --git a/packageA/pages/distribution/card/card.js b/packageA/pages/distribution/card/card.js
index 7b16f02..6edc0e9 100644
--- a/packageA/pages/distribution/card/card.js
+++ b/packageA/pages/distribution/card/card.js
@@ -22,6 +22,9 @@ Page({
userInfo: data,
});
});
+ wx.setNavigationBarTitle({
+ title: "我的名片",
+ });
},
/**
diff --git a/packageA/pages/distribution/commision/commision.js b/packageA/pages/distribution/commision/commision.js
index 67603f4..210ee15 100644
--- a/packageA/pages/distribution/commision/commision.js
+++ b/packageA/pages/distribution/commision/commision.js
@@ -28,6 +28,10 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
+ wx.setNavigationBarTitle({
+ title: "佣金明细",
+ });
+
this.setData({
currentSelect: this.data.dropdownArr[0],
});
diff --git a/packageA/pages/distribution/goods/g_filter.wxs b/packageA/pages/distribution/goods/g_filter.wxs
new file mode 100644
index 0000000..608fb4d
--- /dev/null
+++ b/packageA/pages/distribution/goods/g_filter.wxs
@@ -0,0 +1,69 @@
+var g_filters = {
+ //-- 判断是不是有等级价 --
+ is_has_rank:function(rank_switch,item){
+ if(!rank_switch) return false;
+ if(item.cardprice1 || item.cardprice2 || item.cardprice3) {return true}
+ return false;
+ },
+
+ //-- 判断,不是等级会员时候,要显示的最低等级价和名称 --
+ get_card_price:function(goods,all_card,type){
+ var price1=parseFloat(goods['cardprice1']);
+ var price2 = parseFloat(goods['cardprice2']);
+ var price3 = parseFloat(goods['cardprice3']);
+ if(!all_card){
+ if(type==0) return 0;
+ return "";
+ }
+
+ var min_price=null;
+ var min_name=null;
+ //---设置对应的价格名字----
+ for(var i=0;i<3;i++) {
+ var vl=all_card[i];
+ if(!vl) continue;
+
+ if(vl['CorrPrice']=="Price1" && price1>0)
+ {
+ if(min_price==null) {
+ min_price=price1;min_name=vl['CardName'];
+ }
+ else if(price10)
+ {
+ if(min_price==null) {
+ min_price=price2;min_name=vl['CardName'];
+ }
+ else if(price20)
+ {
+ if(min_price==null) {
+ min_price=price3;min_name=vl['CardName'];
+ }
+ else if(price34 ) min_name=min_name.substring(0, 8);
+ return min_name;
+ },
+}
+module.exports = {
+ is_has_rank:g_filters.is_has_rank,
+ get_card_price:g_filters.get_card_price,
+}
\ No newline at end of file
diff --git a/packageA/pages/distribution/goods/goods.js b/packageA/pages/distribution/goods/goods.js
index 853501e..466737a 100644
--- a/packageA/pages/distribution/goods/goods.js
+++ b/packageA/pages/distribution/goods/goods.js
@@ -1,6 +1,8 @@
// packageA//pages/distribution/commision/commision.js
const app = getApp();
let self = null;
+var os = app.globalData.setting,
+ut = require("../../../../utils/util.js");
Page({
@@ -28,12 +30,18 @@ Page({
currentQuery: {
store_id: app.globalData.setting.stoid,
},
+ default_img: '/miniapp/images/default_g_img.gif',
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
+
+ wx.setNavigationBarTitle({
+ title: "上下架商品",
+ });
+
self = this;//保存全局指针
app.isLogin().then(function(data) {//进入页面前已经授权登录成功
self.setData({
@@ -91,6 +99,7 @@ Page({
// 请求数据
currentQuery.is_mainshow = 1;
currentQuery.isonsale = 1;
+ currentQuery.searchtype = 2;
// url = '/api/weshop/goods/page?is_mainshow=1&isonsale=1&dis_type=1';
// this.getData(true, '/api/weshop/goods/page?is_mainshow=1&isonsale=1&dis_type=1', this.data.currentQuery);
} else {//下架商品
@@ -98,6 +107,7 @@ Page({
// url = '/api/weshop/goods/page?dis_type=1';
// this.getData(true, '/api/weshop/goods/page?dis_type=1', this.data.currentQuery);
};
+ currentQuery.orderType = 'desc';
currentQuery.dis_type = 1;
this.getData(true, url, currentQuery);
@@ -121,6 +131,61 @@ Page({
brandList: res.data.data,
});
});
+
+
+
+ //更新一下会员的信息
+ if(getApp().globalData.user_id) {
+ // if(!getApp().globalData.userInfo['is_distribut']){
+ // this.setData({ishidden_comise:1})
+ // }
+ getApp().request.get("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.user_id, {
+ isShowLoading:false,
+ success: function (e) {
+ getApp().globalData.userInfo = e.data.data;
+ getApp().getConfig2(function (e) {
+ var swithc_list = e.switch_list;
+ var sw_arr = JSON.parse(swithc_list);
+ //---如果后台有开等级卡的开关---
+ if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
+ self.setData({
+ rank_switch: true
+ });
+ //---回调卡的列表---
+ self.getPlusCardType(function (ob) {
+ self.setData({
+ card_list: ob.card_list
+ });
+ var ti = setInterval(function () {
+ var user = getApp().globalData.userInfo;
+ if (!user) return false;
+ clearInterval(ti);
+ if (user.card_field && user['card_expiredate']) {
+ var str = user['card_expiredate'].replace(/-/g, '/');
+ var end = new Date(str);
+ end = Date.parse(end) / 1000;
+ var now = ut.gettimestamp();
+ //--- 判断是等级会员,且在有效期范围内 ---
+ if (user.card_field && now < end) {
+ var card_name = ob.name_map.get(user.card_field);
+ if (card_name.length > 4) card_name = card_name.substring(0, 8);
+ self.setData({
+ card_field: user.card_field,
+ card_name: card_name,
+ card_list: ob.card_list
+ });
+ }
+ }
+ }, 500)
+ })
+ }
+ })
+ }
+ })
+ }
+
+
+
};
};
},
@@ -262,21 +327,26 @@ Page({
*/
search(callback) {
let url = '';
+ let currentTabIndex = 0;
let data = this.data.currentQuery;
if(data.orderField) delete data.orderField;
if(data.orderType) delete data.orderType;
- if(this.data.inputVal) {
- data.key = this.data.inputVal;
- };
+ // if(this.data.inputVal) {
+ data.key_str = this.data.inputVal;
+
+ // };
if(this.data.isHiddenDropdown) {
if(data.nation_id) delete data.nation_id;
if(data.brand_id) delete data.brand_id;
if(data.startprice) delete data.startprice;
if(data.endprice) delete data.endprice;
};
+ if(data.key_str != '') {
+ currentTabIndex = 5;
+ };
this.setData({
list: null,
- currentTabIndex: 5
+ currentTabIndex,
});
// console.log('data', data);
@@ -288,8 +358,8 @@ Page({
url = '/api/weshop/goods/page?searchtype=1';
};
this.getData(true, url, data)
- .then(function() {
- callback();
+ .then(function(callback) {
+ if(callback) callback();
});
},
@@ -298,6 +368,7 @@ Page({
*/
clickSort() {
let data = this.data.currentQuery;
+ // if(data.orderType == 'desc') delete data.orderType;
if(!this.data.isSort) {
this.setData({
isSort: true,
@@ -342,8 +413,15 @@ Page({
isDescending = false;
};
};
+
if(data.page) delete data.page;
- if(data.key) delete data.key;
+ if(data.key_str) delete data.key_str;
+
+ // data.orderType = 'desc';
+ // if(data.nation_id) delete data.nation_id;
+ // if(data.brand_id) delete data.brand_id;
+ // if(data.startprice) delete data.startprice;
+ // if(data.endprice) delete data.endprice;
this.setData({
currentTabIndex: currentIndex,
@@ -358,7 +436,8 @@ Page({
switch(currentIndex) {
case 0: {
if(data.orderField) delete data.orderField;
- if(data.orderType) delete data.orderType;
+ // if(data.orderType) delete data.orderType;
+ data.orderType = 'desc';
if(options.index == 1) {//下架:已选
data.searchtype = 1;
data.dis_type = 1;
@@ -367,30 +446,33 @@ Page({
};
case 1: {
if(options.index == 0) {//上架:销量排序
- if(data.orderType) delete data.orderType;
+ // if(data.orderType) delete data.orderType;
data.orderField = 'sales_sum';
} else {//下架:必营
if(data.searchtype) delete data.searchtype;
if(data.orderField) delete data.orderField;
- if(data.orderType) delete data.orderType;
+ // if(data.orderType) delete data.orderType;
data.dis_type = 0;
};
+ data.orderType = 'desc';
break;
};
case 2: {
if(options.index == 0) {//上架:评论排序
- if(data.orderType) delete data.orderType;
+ // if(data.orderType) delete data.orderType;
data.orderField = 'comment_count';
} else {//下架:销量排序
- if(data.orderType) delete data.orderType;
+ // if(data.orderType) delete data.orderType;
data.orderField = 'sales_sum';
data.dis_type = 1;
data.searchtype = 1;
};
+ data.orderType = 'desc';
break;
};
case 3: {
- data.orderField = 'shop_price';
+ // if(data.orderType) delete data.orderType;
+ data.orderField = 'final_price';
data.dis_type = 1;
break;
};
@@ -427,12 +509,12 @@ Page({
/**
* promiseGet请求数据
*/
- getData: function(isInit, url, data) {
+ getData: function(isInit, url, data, isShowLoading) {
return new Promise(function(resolve, reject) {
app.request.promiseGet(url, {
data: data,
- isShowLoading: true,
+ isShowLoading: !isShowLoading ? isShowLoading : true,
})
.then(function(res) {
// console.log('1121', res.data.code);
@@ -574,19 +656,45 @@ Page({
let checkedArr = this.data.checkedArr;
let checkedList = this.handleValues(checkedArr);
- app.request.promisePost('/api/weshop/users/distribut/UpGoods', {
- is_json: true,
- data: {
- storeId: app.globalData.setting.stoid,
- userId: app.globalData.user_id,
- goods: checkedList,
- },
- }).then(function() {
- self.setData({
- isCheckAll: false,
+ if(checkedArr && checkedArr.length != 0 ) {
+ app.request.promisePost('/api/weshop/users/distribut/UpGoods', {
+ is_json: true,
+ data: {
+ storeId: app.globalData.setting.stoid,
+ userId: app.globalData.user_id,
+ goods: checkedList,
+ searchtype: 2,
+ },
+ }).then(function(res) {
+ if(res.data.code == 0) {
+ self.setData({
+ isCheckAll: false,
+ checkedArr: null,
+ });
+ wx.showToast({
+ title: '上架成功',
+ icon: 'success',
+ duration: 1000,
+ });
+
+ self.getData(true, '/api/weshop/goods/page?is_mainshow=1&isonsale=1&dis_type=1', self.data.currentQuery, false);
+ } else {
+ wx.showToast({
+ title: '上架失败',
+ icon: 'success',
+ duration: 1000,
+ });
+ }
+
});
- self.getData(true, '/api/weshop/goods/page?is_mainshow=1&isonsale=1&dis_type=1', self.data.currentQuery);
- });
+ } else {
+ wx.showToast({
+ title: '请选择上架商品',
+ icon: 'none',
+ duration: 1000,
+ });
+ };
+
},
/**
@@ -598,26 +706,51 @@ Page({
userId: app.globalData.user_id,
};
let isCheckAll = this.data.isCheckAll;
+ let checkedArr = this.data.checkedArr;
if(isCheckAll) {
// console.log('全选啦~');
data.type = 1;
} else {
- let checkedArr = this.data.checkedArr;
- let checkedList = this.handleValues(checkedArr);
+ // var checkedArr = this.data.checkedArr;
+ var checkedList = this.handleValues(checkedArr);
data.goods = checkedList;
};
- app.request.promisePost('/api/weshop/users/distribut/DownGoods', {
- is_json: true,
- data: data,
- }).then(function() {
- // console.log('data', self.data.currentQuery);
- self.setData({
- isCheckAll: false,
+
+ if(checkedArr && checkedArr.length != 0) {
+ app.request.promisePost('/api/weshop/users/distribut/DownGoods', {
+ is_json: true,
+ data: data,
+ }).then(function(res) {
+ if(res.data.code == 0) {
+ self.setData({
+ isCheckAll: false,
+ checkedArr: null,
+ });
+ wx.showToast({
+ title: '下架成功',
+ icon: 'success',
+ duration: 1000,
+ });
+ self.getData(true, '/api/weshop/goods/page?dis_type=1&searchtype=1', self.data.currentQuery, false);
+ } else {
+ wx.showToast({
+ title: '下架失败',
+ icon: 'success',
+ duration: 1000,
+ });
+ }
+
});
- self.getData(true, '/api/weshop/goods/page?dis_type=1&searchtype=1', self.data.currentQuery);
- });
+ } else {
+ wx.showToast({
+ title: '请选择下架商品',
+ icon: 'none',
+ duration: 1000,
+ });
+ };
+
},
/**
@@ -694,7 +827,10 @@ Page({
if(!data.nation_id && !data.brand_id && !startprice && !endprice && !this.data.inputVal) {
this.setData({
isHiddenDropdown: true,
+ currentTabIndex: 0,
});
+ if(data.orderField) delete data.orderField;
+ this.getData(true, '/api/weshop/goods/page', data);
return;
};
@@ -737,5 +873,47 @@ Page({
price: null,
inputVal: null,
});
- }
+ },
+
+
+ //--- 获取卡类列表 ---
+ getPlusCardType: function (func) {
+ var storid = os.stoid;
+ var th = this;
+ getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid,
+ {}).then(res => {
+
+ if(res.data.code!=0 || !res.data.data){
+ var ob = {
+ "card_list": [],
+ "name_map": ""
+ };
+ func(ob);
+ return false;
+ }
+
+ var plusCard = res.data.data;
+ var arr = [1219, 2089, 3031];
+ var new_arr = new Array();
+ var card_name_map = new Map();
+
+ var user = getApp().globalData.userInfo;
+ if(plusCard) {
+ for (var i = 0; i < plusCard.length; i++) {
+ if ((!user || user.card_field == null || user.card_field == "") && (plusCard[i].IsStopBuy == true)) {
+ continue;
+ }
+ var name = "card" + plusCard[i].CorrPrice.toLowerCase();
+ card_name_map.set(name, plusCard[i].CardName);
+ new_arr.push(plusCard[i]);
+
+ }
+ }
+ var ob = {
+ "card_list": new_arr,
+ "name_map": card_name_map
+ };
+ func(ob);
+ })
+ },
})
\ No newline at end of file
diff --git a/packageA/pages/distribution/goods/goods.json b/packageA/pages/distribution/goods/goods.json
index 8ed1185..be24e2b 100644
--- a/packageA/pages/distribution/goods/goods.json
+++ b/packageA/pages/distribution/goods/goods.json
@@ -2,6 +2,6 @@
"usingComponents": {
"nodata": "/components/nodata/nodata"
},
- "navigationBarTitleText": "我的名片",
+ "navigationBarTitleText": "",
"enablePullDownRefresh": false
}
\ No newline at end of file
diff --git a/packageA/pages/distribution/goods/goods.wxml b/packageA/pages/distribution/goods/goods.wxml
index 4d6b65b..aa6f6a3 100644
--- a/packageA/pages/distribution/goods/goods.wxml
+++ b/packageA/pages/distribution/goods/goods.wxml
@@ -1,4 +1,5 @@
+
@@ -12,13 +13,13 @@
-
+
国家
{{item.name}}
-
+
品牌
{{item.name}}
@@ -67,34 +68,34 @@
-
+
-
+
-
+
-
+
{{item.goods_name}}
- {{item.prom_integral}}积分
+ {{item.prom_integral}}积分
+
- ¥
- {{item.prom_price}}
+
+ {{item.prom_price}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -108,19 +109,19 @@
- ¥
- {{filter.toFix(item[card_field],2)}}
-
-
- {{card_name}}
+
+ {{filter.toFix(item[card_field],2)}}
+
+
+ {{card_name}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -128,15 +129,15 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -147,23 +148,23 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
-
+
- ¥
- {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
-
- image>
- {{g_filter.get_card_price(item,card_list,1)}}
+
+ {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
+
+ image>
+ {{g_filter.get_card_price(item,card_list,1)}}
@@ -172,15 +173,15 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -191,51 +192,51 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
- 分成金额:{{item.commission}}
+ 分成金额:{{filter.toFix(item.commission, 2)}}
-
+
-
+
{{item.goods_name}}
-
-
-
+
+
+
- {{item.prom_integral}}积分
+ {{item.prom_integral}}积分
+
- ¥
- {{item.prom_price}}
+
+ {{item.prom_price}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -249,19 +250,19 @@
- ¥
- {{filter.toFix(item[card_field],2)}}
-
-
- {{card_name}}
+
+ {{filter.toFix(item[card_field],2)}}
+
+
+ {{card_name}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -269,15 +270,15 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -288,23 +289,23 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
- ¥
- {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
-
- image>
- {{g_filter.get_card_price(item,card_list,1)}}
+
+ {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
+
+ image>
+ {{g_filter.get_card_price(item,card_list,1)}}
@@ -313,15 +314,15 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -332,21 +333,21 @@
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
- 分成金额:{{item.commission}}
+ 分成金额:{{filter.toFix(item.commission, 2)}}
@@ -361,9 +362,9 @@
-
+
-
-
+
{{it.goods_name}}
- 规格:{{it.goods_price}}
-
+ 规格:{{it.goods_spec}}
+
最新佣金比例:{{filter.toFix(it.commission/it.goods_price*100, 1)}}%
佣金:{{it.commission}}
{{filter.status((item.level-1), commisionArr)}}:{{it.commission}}
- {{it.goods_price}}
+ {{filter.toFix(it.goods_price, 2)}}
订单号:{{item.order_sn}}
{{filter.format_time(item.create_time, 1)}}
- 获得分成:{{item.money}}
+ 获得分成:{{filter.toFix(item.money, 2)}}
diff --git a/packageA/pages/distribution/rank/rank.js b/packageA/pages/distribution/rank/rank.js
index aaca578..dd29d33 100644
--- a/packageA/pages/distribution/rank/rank.js
+++ b/packageA/pages/distribution/rank/rank.js
@@ -21,6 +21,10 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
+ wx.setNavigationBarTitle({
+ title: "分销排行榜",
+ });
+
self = this;//保存全局指针
app.isLogin().then(function(data) {//进入页面前已经授权登录成功
self.setData({
diff --git a/packageA/pages/distribution/rookie/rookie.js b/packageA/pages/distribution/rookie/rookie.js
index b2c775c..b7defcc 100644
--- a/packageA/pages/distribution/rookie/rookie.js
+++ b/packageA/pages/distribution/rookie/rookie.js
@@ -19,7 +19,10 @@ Page({
*/
onLoad: function (options) {
self = this;
-
+
+ wx.setNavigationBarTitle({
+ title: "新手必看",
+ });
// 判断会员是否授权登录,
// 没有登录则跳转到登录页,
// 已登录则设置已登录状态,请求加载数据
diff --git a/packageA/pages/distribution/shop/shop.js b/packageA/pages/distribution/shop/shop.js
index 696d252..32c1409 100644
--- a/packageA/pages/distribution/shop/shop.js
+++ b/packageA/pages/distribution/shop/shop.js
@@ -36,13 +36,18 @@ Page({
card_list: null,
isAll: true,
-
+
+ default_img: '/miniapp/images/default_g_img.gif',
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
+
+ wx.setNavigationBarTitle({
+ title: "我的小店",
+ });
self = this;//保存全局指针
app.isLogin().then(function(data) {//进入页面前已经授权登录成功
self.setData({
@@ -62,9 +67,9 @@ Page({
success: function (e) {
if(e.data.code==0){
self.setData({
- userInfo2: e.data.data,
+ userInfo2:e.data.data,
});
- } ;
+ };
},
});
@@ -122,7 +127,7 @@ Page({
});
// 请求数据
- app.request.promiseGet('/api/weshop/users/distribut/pagemyshop', {
+ app.request.promiseGet('/api/weshop/users/distribut/pagemyshop?orderType=desc', {
data: this.data.currentQuery,
}).then(res => {
self.setData({
@@ -132,7 +137,7 @@ Page({
});
// 新品
- app.request.promiseGet('/api/weshop/users/distribut/pagemyshop?type=2', {
+ app.request.promiseGet('/api/weshop/users/distribut/pagemyshop?type=2&orderType=desc', {
data: self.data.currentQuery,
}).then(res => {
self.setData({
@@ -406,7 +411,8 @@ Page({
*/
clickSort(e) {
let data = this.data.currentQuery;
- data.orderField = 'shop_price';
+ // data.orderField = 'shop_price';
+ data.orderField = 'prom_price';
if(data.page) {
delete data.page;
};
@@ -464,6 +470,7 @@ Page({
};
this.setData({
list: null,
+ isAll: true,
currentTabIndex: currentIndex,
isSort,
pageNum: 1,
@@ -489,9 +496,12 @@ Page({
if(currentIndex == 3) {
// console.log('点击价格');
+ if(data.orderType) {// 清除orderType
+ delete data.orderType;
+ };
return;
};
-
+ data.orderType = 'desc';
this.data.currentQuery = data;
this.getData(true, '/api/weshop/users/distribut/pagemyshop', data);
},
@@ -685,7 +695,7 @@ Page({
isAll: false,
});
- this.getData(true, '/api/weshop/users/distribut/pagemyshop?type=2', data);
+ this.getData(true, '/api/weshop/users/distribut/pagemyshop?type=2&orderType=desc', data);
// app.request.promiseGet('/api/weshop/users/distribut/pagemyshop?type=2', {
// data: data,
// }).then(res => {
@@ -696,5 +706,25 @@ Page({
},
+ /**
+ * 点击新品
+ */
+ // imgError(e) {
+ // this.setData({
+ // noImg: true,
+ // });
+ // },
+
+
+ bind_bnerr2: function (e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _errurl = e.target.dataset.url;
+ var ii = _errurl.indexOf(oo.imghost);
+ if (ii != -1) {
+ var _errObj = {};
+ _errObj[_errImg] = this.data.iurl+"/miniapp/images/default_g_img.gif";
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ }
+ },
})
\ No newline at end of file
diff --git a/packageA/pages/distribution/shop/shop.wxml b/packageA/pages/distribution/shop/shop.wxml
index e33c3f9..b1a4555 100644
--- a/packageA/pages/distribution/shop/shop.wxml
+++ b/packageA/pages/distribution/shop/shop.wxml
@@ -67,26 +67,26 @@
-
+
- {{item.goods_name}}
+ {{item.goods_name}}
-
- {{item.prom_integral}}积分
+
+ {{item.prom_integral}}积分
+
- ¥
- {{item.prom_price}}
+
+ {{item.prom_price}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -97,38 +97,38 @@
-
+
- ¥
- {{filter.toFix(item[card_field],2)}}
-
-
- {{card_name}}
+
+ {{filter.toFix(item[card_field],2)}}
+
+
+ {{card_name}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -136,43 +136,43 @@
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
-
- ¥
- {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
-
- image>
- {{g_filter.get_card_price(item,card_list,1)}}
-
-
+
+
+ {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
+
+ image>
+ {{g_filter.get_card_price(item,card_list,1)}}
+
+
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -180,24 +180,24 @@
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
- 分成金额:{{item.fcommission}}
+ 分成金额:{{filter.toFix(item.commission,2)}}
@@ -209,25 +209,25 @@
-
+
- {{item.goods_name}}
+ {{item.goods_name}}
-
- {{item.prom_integral}}积分
+
+ {{item.prom_integral}}积分
+
- ¥
- {{item.prom_price}}
+
+ {{item.prom_price}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -238,38 +238,38 @@
-
+
- ¥
- {{filter.toFix(item[card_field],2)}}
-
+
+ {{filter.toFix(item[card_field],2)}}
+
- {{card_name}}
+ {{card_name}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -277,43 +277,43 @@
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
- ¥
- {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
-
+
+ {{filter.toFix(g_filter.get_card_price(item,card_list,0),2)}}
+
image>
- {{g_filter.get_card_price(item,card_list,1)}}
+ {{g_filter.get_card_price(item,card_list,1)}}
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
@@ -321,24 +321,24 @@
-
+
- ¥
- {{filter.toFix(item.shop_price,2)}}
+
+ {{filter.toFix(item.shop_price,2)}}
- ¥
- {{item.market_price}}
+
+ {{item.market_price}}
- 分成金额:1.00
+ 分成金额:{{filter.toFix(item.commission,2)}}
diff --git a/packageA/pages/distribution/shop/shop.wxss b/packageA/pages/distribution/shop/shop.wxss
index e2c4529..6842380 100644
--- a/packageA/pages/distribution/shop/shop.wxss
+++ b/packageA/pages/distribution/shop/shop.wxss
@@ -104,6 +104,10 @@ page {
/* word-break: break-all;
word-wrap: break-word; */
}
+.money::before {
+ content: '¥';
+ font-size: 22rpx;
+}
.md {
position: relative;
}
@@ -578,18 +582,18 @@ checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
.card_bg {
box-sizing: border-box;
padding: 2rpx 10rpx;
- height: 28rpx;
+ /* height: 28rpx; */
border-radius: 26rpx;
- font-size: 18rpx;
- line-height: 28rpx;
- max-width: 210rpx;
+ font-size: 20rpx;
+ /* line-height: 28rpx; */
+ max-width: 200rpx;
background: #333;
color: #fff;
margin-left: 8rpx;
display: flex;
align-items: center;
- position: relative;
- top: -4rpx;
+ /* position: relative;
+ top: -4rpx; */
}
.card_bg image {
@@ -614,3 +618,5 @@ checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
+
+
diff --git a/packageA/pages/goodsInfo/buy_integral.wxml b/packageA/pages/goodsInfo/buy_integral.wxml
new file mode 100644
index 0000000..be8b5ca
--- /dev/null
+++ b/packageA/pages/goodsInfo/buy_integral.wxml
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+
+ {{data.goods_name}}
+
+
+ {{prom_integral}}积分
+ +
+ {{prom_price}}元
+ 0积分
+
+
+
+
+
+ 已售:{{prom_act.buy_num}}
+ 可售:{{prom_act.limitqty-prom_act.buy_num}}
+
+
+
+
+
+
+
+
+ {{def_pick_store.pickup_name}}
+
+ 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
+
+
+
+
+
+
+
+ 选择门店
+
+
+
+ 更多门店
+
+
+
+ (库存不足)
+
+ (库存不足)
+
+ (配送不匹配)
+ (库存不足)
+
+
+
+ 地址:{{def_pick_store.fulladdress}}
+
+
+
+
+ 商品属性
+
+
+ {{item.gg}}
+
+
+
+
+
+ 购买数量
+
+ -
+
+ +
+
+
+
+
+
+
+
+
+ 配送不匹配
+
+
+
+
+
+
+ 库存不足
+
+
+
+
+
+ 库存不足
+
+
+
+ 库存不足
+
+
+
+ 请先选择门店
+
+
+
+ 库存不足
+
+
+ 立即兑换
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/goodsInfo/buy_integral_normal.wxml b/packageA/pages/goodsInfo/buy_integral_normal.wxml
new file mode 100644
index 0000000..82293cc
--- /dev/null
+++ b/packageA/pages/goodsInfo/buy_integral_normal.wxml
@@ -0,0 +1,131 @@
+
+
+
+
+
+
+
+ {{sele_g.goods_name}}
+
+ ¥
+
+ {{sele_g[card_field]}}
+ {{sele_g.shop_price}}
+
+
+
+ 已售:{{sele_g.sales_sum}}
+
+ 可售:{{def_pick_store.CanOutQty}}
+ 可售:0
+
+ 可售:{{sele_g.store_count}}
+
+
+
+
+
+
+
+
+
+ {{def_pick_store.pickup_name}}
+
+ 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
+
+
+
+
+
+
+
+ 选择门店
+
+
+
+ 更多门店
+
+
+
+ (库存不足)
+
+ (库存不足)
+
+ (配送不匹配)
+ (库存不足)
+
+
+ 地址:{{def_pick_store.fulladdress}}
+
+
+
+
+ 商品属性
+
+
+ {{item.gg}}
+
+
+
+
+
+ 购买数量
+
+ -
+
+ +
+
+
+
+
+
+
+
+
+
+
+ 配送不匹配
+
+
+
+
+ 库存不足
+
+
+
+
+
+ 库存不足
+
+
+
+ 库存不足
+
+
+
+ 请先选择门店
+
+
+
+ 库存不足
+
+
+
+ 加入购物车
+ 立即购买
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/goodsInfo/buy_pt.wxml b/packageA/pages/goodsInfo/buy_pt.wxml
new file mode 100644
index 0000000..cfeab1b
--- /dev/null
+++ b/packageA/pages/goodsInfo/buy_pt.wxml
@@ -0,0 +1,199 @@
+
+
+
+
+
+
+
+
+
+ {{sele_g.goods_name}}
+
+
+
+
+ ¥ {{sele_g[card_field]}}
+
+
+ ¥ {{sele_g.shop_price}}
+
+
+ ¥ {{prom_price}}
+
+
+
+
+ 已售:{{sele_g.sales_sum}}
+
+ 可售:{{def_pick_store.CanOutQty}}
+ 可售:0
+
+ 可售:{{sele_g.store_count}}
+
+
+
+
+ 已售:{{prom_act.buy_num}}
+ 已售:{{prom_act.buy_num}}
+ 可售:{{prom_act.goods_num-prom_act.buy_num}}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{def_pick_store.pickup_name}}
+
+
+
+ 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
+
+
+
+
+
+
+
+ 选择门店
+
+
+
+ 更多门店
+
+
+
+ (配送不匹配)
+ (库存不足)
+ 地址:{{def_pick_store.fulladdress}}
+
+
+
+ 商品属性
+
+
+ {{item.gg}}
+
+
+
+
+
+
+ {{item.gg}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 购买数量
+
+ -
+
+ +
+
+
+
+
+
+
+
+ 选择门店
+
+
+
+
+ {{item.name}}
+
+
+ {{item.pickup_name}}
+
+
+
+
+
+ {{sec_sto.name}}
+
+ {{item.pickup_name}}
+
+
+
+
+
+
+
+
+
+
+
+ 配送不匹配
+
+
+
+
+
+ 库存不足
+
+
+
+
+
+ 库存不足
+
+
+
+ 库存不足
+
+
+
+ 请先选择门店
+
+
+
+ 库存不足
+
+
+ 立即购买
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 配送不匹配
+
+
+ 确定
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/goodsInfo/filter.wxs b/packageA/pages/goodsInfo/filter.wxs
new file mode 100644
index 0000000..5c5f0a2
--- /dev/null
+++ b/packageA/pages/goodsInfo/filter.wxs
@@ -0,0 +1,14 @@
+var is_has = function (text,val) {
+ if(text.indexOf(","+val+",")==-1) return false;
+ return true
+}
+function format_tt(ts) {
+ if(ts==null || ts==undefined || ts=='') return "";
+ var d = getDate(ts*1000)
+ var fm=(d.getMonth()+1)+"月"+ d.getDate()+"日";
+ return fm;
+}
+module.exports = {
+ is_has: is_has,
+ format_tt:format_tt
+}
diff --git a/packageA/pages/goodsInfo/g_filter.wxs b/packageA/pages/goodsInfo/g_filter.wxs
new file mode 100644
index 0000000..e9033b0
--- /dev/null
+++ b/packageA/pages/goodsInfo/g_filter.wxs
@@ -0,0 +1,117 @@
+var g_filters = {
+ //-- 判断是不是有等级价 --
+ is_has_rank:function(rank_switch,item){
+ if(!rank_switch) return false;
+ if(item.cardprice1 || item.cardprice2 || item.cardprice3) {return true}
+ return false;
+ },
+
+ //-- 判断,不是等级会员时候,要显示的最低等级价和名称 --
+ get_card_price:function(goods,all_card,type){
+ var price1=parseFloat(goods['cardprice1']);
+ var price2=parseFloat(goods['cardprice2']);
+ var price3=parseFloat(goods['cardprice3']);
+ if(!all_card){
+ if(type==0) return 0;
+ return "";
+ }
+
+ var arr=[];
+ var min_price= 0;
+ var min_name="";
+
+ var min_price=null;
+ var min_name=null;
+ //---设置对应的价格名字----
+ for(var i=0;i<3;i++) {
+ var vl=all_card[i];
+ if(!vl) continue;
+ if(vl['CorrPrice']=="Price1" && price1>0)
+ {
+ if(min_price==null) {
+ min_price=price1;min_name=vl['CardName'];
+ }
+ else if(price10)
+ {
+ if(min_price==null) {
+ min_price=price2;min_name=vl['CardName'];
+ }
+ else if(price20)
+ {
+ if(min_price==null) {
+ min_price=price3;min_name=vl['CardName'];
+ }
+ else if(price34) min_name=min_name.substring(0, 8);
+ return min_name;
+ },
+
+ toFix: function (val, count,set) {
+ if(val===undefined) return 0;
+ if(val===null) return 0;
+ if(val==='') return 0;
+ val = parseFloat(val);
+ if(set==1 && val==0) return val;
+ return val.toFixed(count)
+ },
+
+ //折扣数值处理,小数位数为1时,只显示1位;小数位数为2时,才显示2位;
+ num: function(value) {
+ if(value != 0) {
+ var val = value.toFixed(2).toString();
+ if(val.indexOf('.') != -1) {
+ var arrval = val.split('.');
+ if(arrval[1].length == 1 && arrval[1][0] == 0) {
+ val = val.slice(0,-2);
+ };
+
+ if(arrval[1].length == 2 && arrval[1][1] == 0) {
+ val = val.slice(0,-1);
+ };
+ };
+ return val;
+ } else {
+ return value.toFixed(0);
+ };
+ },
+}
+module.exports = {
+ is_has_rank:g_filters.is_has_rank,
+ get_card_price:g_filters.get_card_price,
+ num:g_filters.num,
+}
\ No newline at end of file
diff --git a/packageA/pages/goodsInfo/goodsInfo.js b/packageA/pages/goodsInfo/goodsInfo.js
new file mode 100644
index 0000000..708a1e2
--- /dev/null
+++ b/packageA/pages/goodsInfo/goodsInfo.js
@@ -0,0 +1,5130 @@
+var t = require("../../../utils/util.js"),
+ ut = t,
+ e = require("../../../utils/common.js"),
+ a = require("../../../utils/wxParse/wxParse.js"),
+ s = getApp(),
+ i = s.request,
+ rq = i,
+ oo = s.globalData,
+ o = s.globalData.setting,
+ os = o;
+//评价加载更多
+var more = function(e) {
+ return e && e.__esModule ? e : {
+ default: e
+ };
+ }(require("../../../utils/LoadMore.js")),
+ n = new more.default();
+var utils = require('../../../utils/util.js');
+var regeneratorRuntime = require('../../../utils/runtime.js');
+
+Page({
+ data: {
+ start_stop: 2, //秒杀开始 结束 的控制(1正在进行,2即将开始)
+ color_type: 0, //线条控制
+ color_type_one: 0,
+ color_type_two: 1,
+
+ gid: "",
+ stoid: o.stoid,
+ url: o.url,
+ resourceUrl: o.h5_url, //公众号那边的图片文件域名
+ iurl: o.imghost,
+ defaultAvatar: o.resourceUrl + "/static/images/user68.jpg",
+
+ data: null,
+ content: "", //商品详情
+ comments: null, //商品评论
+ c_curr_p: 1, //评论分页
+ com_num: 0, //评论人数
+ gallery: null, //图片滚动
+ is_collect: 0,
+ collect_id: 0,
+ cartGoodsNum: 0,
+ specSelect: 0,
+ optionItemId: 0,
+ goodsInputNum: 1,
+ openSpecModal: !1,
+ openSpecModal_pt: !1, //拼单的弹起,
+ openPromModal: !1,
+ activeCategoryId: 0,
+ supportPageScroll: !1,
+ address: {
+ address: "",
+ district: 0
+ },
+ shipping: "",
+ shippingCost: 0,
+ enterAddressPage: !1,
+ categories: [{
+ name: "商品",
+ id: 0
+ }, {
+ name: "详情",
+ id: 1
+ }, {
+ name: "评论",
+ id: 2
+ }],
+ activeCategoryId2: 0,
+ categories2: [{
+ name: "商品详情",
+ id: 0
+ }, {
+ name: "规格参数",
+ id: 1
+ }],
+ activeCategoryId3: 1,
+ categories3: [{
+ name: "全部",
+ id: 1,
+ num: 0
+ },
+ {
+ name: "有图",
+ id: 5,
+ num: 0
+ },
+
+ {
+ name: "好评",
+ id: 2,
+ num: 0
+ }, {
+ name: "中评",
+ id: 3,
+ num: 0
+ }, {
+ name: "差评",
+ id: 4,
+ num: 0
+ },
+ ],
+
+ select: {
+ price: 0,
+ stock: 0,
+ specName: "",
+ activity: null
+ },
+
+ //已选的商品(属性)
+ sele_g_spec_name: '',
+ sele_g_id: '',
+ sele_g: null,
+ //门店相关
+ ismend: 0,
+ is_sec_mend: 0,
+ sto_sele_name: "", //选中的门店名称
+ sto_sele_id: "", //选中的门店id
+ sto_sele_distr: "", //选择的门店的配送方式
+ is_show_sto_cat: 1, //是否显示门店分类
+ only_pk: null,
+ all_sto: null,
+ sec_sto: null, //选择了的门店分类
+ pickpu_list: null, //读出的所有门店list
+ def_pickpu_list: null, //一开始5个门店list
+ sec_pick_index: 0, //第二级门店选择ID
+ fir_pick_index: 0, //第一级门店选择ID
+ all_pick_list:null,//所有的门店先记录起来
+ //同一条形码的所有商品
+ sku_g: null,
+ sku_g_pt: null, //---拼单的普通购买---
+ //联系电话
+ mobile: '',
+ //分类,品牌,国别名称
+ cat_name: '',
+ brand_name: '',
+ nation_name: '',
+
+ //商品的活动类型 0普通 1秒杀 2团购 3优惠 4 积分购 6拼单
+ prom_type: 0,
+ prom_time_text: "",
+ prom_price: null,
+ prom_buy_limit: 0,
+ djs: null,
+ prom_st: 0,
+ prom_r_null: 0,
+ prom_end_time: null,
+ prom_start_time: null,
+ prom_act: null,
+ pd_xx: 0,
+ is_normal: 0, //是否普通购买
+ teamgroup: null, //有多少人开团
+ grounp_tatal: 0, //有几个人开团
+ timer: [],
+
+ //商品的购买次数
+ prom_buy_num: -1,
+ g_buy_num: null,
+ prom_goods_num: 0, //活动商品数量
+ prom_buy_num: 0, //活动商品购买数量
+ prom_redis_num: 0, //活动商品redis数量
+
+ //拼单的规则显示
+ is_show_gz: 0,
+ //会员自己的购买的拼单商品的情况
+ user_order_pt_state: 0,
+ //购买的订单
+ buy_order: null,
+ //1加入购物车 2立即购买
+ openSpecModal_ind: 0,
+
+ //---计时器开关----
+ is_timer: 1,
+ isshow: 0,
+ bconfig: null, //基础配置
+
+ fir_comments: null, //详情页上的评价
+ fir_quan: null, //详情页上的券
+ quan_list: null, //券列表
+
+ coupon: 0,
+ //会员分享的头像
+ share_head: "",
+ share_goods_img: "",
+
+ //----------视频图片data参数---------
+ current: 0, //图片计数
+ swiperCurrent: 0, //轮播的下标
+ hiddenn: 0, //控制轮播计数显示
+
+ currentTab: 0, // 选择器控制参数
+ mapurl: "",
+ mapurl_f_img: "",
+ videopicture: 0, //视频图片的控制
+
+ video: 0, //视频图片切换器
+ index: 0,
+ noon: 0, //开始视频的隐藏
+
+ screenWidth: 0,
+ canvasHidden: 1,
+
+ //--推荐--
+ store_config: null,
+ is_show_pl: 0, //是否品类
+ is_show_pp: 0, //是否品牌
+ is_show_gb: 0, //是否国别
+ is_closecoupon: 0,
+
+ //是否点赞中
+ iszaning: 0,
+
+ select_store: 0, //选择更多
+ index: 1,
+ more_store: 0, //选择门店
+ sort_store: 0, //门店分类
+ choice_sort_store: 0, //选择分类门店
+ new_user: 0, //新用户
+
+ def_pick_store: null, // 默认的门店
+ fir_def_store:null, //客户默认的门店的
+ lat: null, //维度
+ lon: null, //经度
+
+ is_get_local_ok: 0, //获取坐标是否完成
+ region_name: "门店分类", //区域的名字
+ is_gps: 1,
+ open_ind_store: 0, //哪里打开的门店列表的控制属性
+ default_store: {}, //创建添加默认门店地址的对象
+
+ comments_no_more:0,
+ get_c:0, //获取评价是不是成
+ is_collect_load:0, //是不是处理
+ is_newsales_rules:0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存
+ sales_rules:1, //默认是线上销售
+
+ wait_for_user_store:null,
+ prom_goods:null, //商品优惠列表
+ order_prom:null, //订单优惠
+ collocationGoods:null, //搭配购
+
+ poster:null, //自定义海报
+ share_b_img:'', //自定义分享的背景
+
+ showPoster: false,
+ hui_condition:null,
+ sto_sele_name_1:'',//分享的门店名称
+
+ },
+
+ //------初始化加载----------
+ onLoad: function(t) {
+ // wx.setNavigationBarTitle({
+ // title: "商品详情",
+ // })
+ var ee = this,
+ that = ee,
+ th = ee,
+ gid = t.goods_id,
+ first_leader=t.first_leader,
+ room_id=t.room_id,
+ room_user_share=t.room_user_share; //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id
+
+ //-- 自定义海报 --
+ getApp().request.promiseGet("/api/weshop/goods/poster/page", {
+ data:{store_id:os.stoid, type:1, is_use:1}
+ }).then(res=>{
+ if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0]){
+
+ var poster_data=res.data.data.pageData[0];
+ var json_str=poster_data.jsonStr;
+
+ if(json_str){
+ var json_data=JSON.parse(json_str);
+ if(json_data.bg_img){
+
+ //-- 把图片那到本地 --
+ wx.getImageInfo({
+ src:json_data.bg_img,
+ success: function(res) {
+ var path= res.path;
+ th.setData({share_b_img:path})
+ },
+ fail: function(res) {}
+ });
+ }
+ th.setData({poster:json_data})
+
+ }
+ }
+ })
+
+ //---获取手机地址坐标--
+ //--如果tg_id是空的话,分享回来--
+ if (gid == undefined || gid == null || gid == "") {
+ var gid_str = decodeURIComponent(t.scene);
+ gid_str=gid_str.split("_");
+ gid=gid_str[0];
+ if(gid_str.length>1){
+ first_leader=gid_str[1];
+ }
+ //-- 如果有room_id的获取 --
+ if(gid_str.length>2 && gid_str[2]){
+ room_id=gid_str[2];
+ room_user_share=1;
+ }
+
+ }
+ ee.setData({ gid: gid});
+ if(first_leader){
+ console.log("log---".first_leader);
+
+ getApp().globalData.first_leader=first_leader;
+ //调用接口判断是不是会员
+ getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+os.stoid+"/"+first_leader,{}).then(res=>{
+ if(res.data.code==0){
+ getApp().globalData.guide_id=res.data.data.id;
+ }
+ })
+ }
+
+ //-- 如果有房间号 --
+ if(room_id){
+ getApp().globalData.room_id=room_id;
+ getApp().globalData.room_goods_id=gid;
+ //如果是会员分享过来的要记录
+ if(room_user_share)
+ getApp().globalData.room_user_share=room_user_share;
+ }
+
+ var c_guide_id=t.c_guide_id;
+ if(c_guide_id){
+ th.data.c_guide_id=c_guide_id;
+ }
+
+ getApp().getConfig(function(e) {
+ ee.setData({sto_sele_name_1:e.store_name})
+ })
+
+ //----获取系统参数-----
+ getApp().getConfig2(function(e) {
+ ee.setData({
+ bconfig: e,
+ sales_rules:e.sales_rules,
+ });
+
+ if (e.categoryset.indexOf("," + 1 + ",") != -1) {
+ ee.setData({
+ is_show_pl: 1
+ });
+ }
+ if (e.categoryset.indexOf("," + 3 + ",") != -1) {
+ ee.setData({
+ is_show_pp: 1
+ });
+ }
+ if (e.categoryset.indexOf("," + 2 + ",") != -1) {
+ ee.setData({
+ is_show_gb: 1
+ });
+ }
+
+ var json_d = JSON.parse(e.switch_list);
+ ee.setData({
+ store_config: e,
+ sys_switch:json_d,
+ is_closecoupon: json_d.is_closecoupon,
+ is_newsales_rules:json_d.is_newsales_rules
+ });
+ ee.init(gid);
+ //------几人评价-------
+ //n.init(th, "", "comments");
+
+ th.requestCardNum(), wx.pageScrollTo && th.setData({
+ supportPageScroll: !0
+ });
+
+ //计算等级价相关
+ var swithc_list=e.switch_list;
+ var sw_arr=JSON.parse(swithc_list);
+ //---如果后台又开等级卡的开关---
+ if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){
+ th.setData({rank_switch:true});
+ //---回调卡的列表---
+ th.getPlusCardType(function(ob){
+ th.setData({card_list:ob.card_list});
+ var ti = setInterval(function () {
+ var user = getApp().globalData.userInfo;
+ if (!user) return false;
+ clearInterval(ti);
+
+ if(user.card_field && user['card_expiredate']){
+ var str = user['card_expiredate'].replace(/-/g, '/');
+ var end = new Date(str);
+ end = Date.parse(end) / 1000;
+ var now = ut.gettimestamp();
+ //--- 判断是等级会员,且在有效期范围内 ---
+ if(user.card_field && now6) card_name=card_name.substring(0,6);
+
+ var is_near_date=0;
+ if(end-now<60*60*30*24) is_near_date=1; //如果小于30天
+ th.setData({card_field:user.card_field,card_name:card_name,card_list:ob.card_list,is_near_date:is_near_date});
+ }
+ }
+ }, 500)
+ })
+ }
+
+ },1);
+
+ //获取用户设备信息,屏幕宽度
+ wx.getSystemInfo({
+ success: res => {
+ that.setData({
+ screenWidth: res.screenWidth
+ })
+ }
+ });
+
+ //获取用户的默认门店
+ getApp().get_user_store(function(e) {
+ if(!e) {
+ th.data.fir_def_store={}; //赋值空对象
+ return false;
+ }
+ var ee=JSON.parse(JSON.stringify(e));
+ //--定时器推迟一下--
+ setTimeout(function () {
+ if(th.data.data) var g_distr_type=th.data.data.distr_type;
+ //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对--
+ if(ee.distr_type!=0 && g_distr_type!=0 && ee.distr_type!=g_distr_type ){
+ //th.data.fir_def_store={}; //赋值空对象
+ //return false;
+ //th.data.fir_def_store.is_no_dis=1;
+ ee.is_no_dis=1;
+ }
+
+ var appd=getApp().globalData;
+ var w_time = setInterval(function() {
+ if (that.data.is_get_local_ok == 0) return false;
+ clearInterval(w_time);
+ var distance = null;
+ var e=JSON.parse(JSON.stringify(ee));
+
+ //如果有开启近距离的话,同时距离优不一样了
+ if (that.data.lat != null) {
+ //如果经纬度有变化的话
+ if( appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){
+ that.data.fir_def_store=e;
+ that.setData({
+ def_pick_store: e,
+ sto_sele_name: e.pickup_name,
+ sto_sele_id: e.pickup_id,
+ sto_sele_distr: e.distr_type
+ })
+ }else{
+ //要用接口是获取距离,js的计算不准
+ getApp().request.promiseGet("/api/weshop/pickup/list",{
+ data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon},
+ }).then(res=>{
+ if(res.data.code==0){
+ e=res.data.data.pageData[0];
+ if (e){
+ e.is_no_dis=ee.is_no_dis;
+ appd.pk_store=e;
+ that.data.fir_def_store=e;
+ that.setData({
+ def_pick_store: e,
+ sto_sele_name: e.pickup_name,
+ sto_sele_id: e.pickup_id,
+ sto_sele_distr: e.distr_type
+ })
+ }
+
+ }
+ })
+ }
+
+ //e.distance = distance;
+ appd.lat=that.data.lat;
+ appd.lon=that.data.lon;
+
+ }else{
+ if (e) {
+ e.distance = null;
+ that.data.fir_def_store=e;
+ that.setData({
+ def_pick_store: e,
+ sto_sele_name: e.pickup_name,
+ sto_sele_id: e.pickup_id,
+ sto_sele_distr: e.distr_type
+ })
+ }
+ }
+ }, 500)
+ },700)
+
+ });
+
+ },
+
+ //------------程序初始化入口-------------
+ async init(gid) {
+ var ee = this,
+ th = ee,
+ gallery = null,
+ is_collect = 0,
+ collect_id = 0,
+ categories3 = ee.data.categories3,
+ fir_com = null,
+ fir_quan = null,
+ mapurl = null,
+ mapurl_f_img = null;
+
+
+ //------图片滚动----------
+ await getApp().request.promiseGet("/api/weshop/goodsimages/page", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid,
+ },
+ }).then(res => {
+
+ var t = res;
+ var g = t.data.data.pageData;
+ if (g.length == 0) {
+ var ie = {
+ "image_url": o.imghost + "/public/images/default_goods_image_240.gif"
+ };
+ g.push(ie);
+ gallery = g;
+ return;
+ }
+ for (var i = 0; i < g.length; i++) {
+ if (g[i].image_url.indexOf(o.imghost) == -1)
+ g[i].image_url = o.imghost + g[i].image_url;
+ }
+ gallery = g;
+ })
+ //------是否收藏----------
+ await getApp().request.promiseGet("/api/weshop/goodscollect/page", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid,
+ user_id: oo.user_id,
+ }
+ }).then(res => {
+ var t = res;
+ var data = t.data.data.pageData;
+ if (data.length > 0) {
+ //ee.setData({ is_collect: 1, collect_id: data[0].collect_id, });
+ is_collect = 1;
+ collect_id = data[0].collect_id;
+ }
+ })
+
+ //------获取评价的统计数量----
+ await getApp().request.promiseGet("/api/weshop/comment/countlist/", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid
+ },
+ //failRollback: !0,
+
+ }).then(res => {
+ var t = res;
+ var g = t.data.data[0];
+ if (g != null && g != undefined) {
+ var allnum = g.c0 + g.c1 + g.c2 + g.c3 + g.c4 + g.c5;
+ var num2 = g.c4 + g.c5;
+ var num3 = g.c3;
+ var num4 = g.c0 + g.c1 + g.c2;
+
+ var dd = ee.data.categories3;
+ dd[0].num = allnum;
+ dd[1].num = g.cimg;
+ dd[2].num = num2;
+ dd[3].num = num3;
+ dd[4].num = num4;
+
+ categories3 = dd;
+ }
+ })
+
+ //----获取详情页的评价----
+ await getApp().request.promiseGet("/api/weshop/comment/pageComment", {
+ data: {
+ store_id: os.stoid,
+ goods_id: gid,
+ pageSize: 3,
+ parent_id: 0,
+ page:1,
+ is_show:1,
+ },
+ }).then(res => {
+ fir_com = res.data.data.pageData;
+ })
+
+ if (fir_com) {
+ for (var ind in fir_com) {
+ if (fir_com[ind].head_pic == "") fir_com[ind].head_pic = ee.data.iurl + "/miniapp/images/hui_hear_pic.png";
+ if (fir_com[ind].img) fir_com[ind].img = ut.unserialize(fir_com[ind].img);
+ if (fir_com[ind].weapp_img) fir_com[ind].weapp_img = JSON.parse(fir_com[ind].weapp_img);
+ }
+ }
+
+ if (th.data.is_closecoupon != 1) {
+ //----获取详情页的券的数量----
+ await getApp().request.promiseGet("/api/weshop/prom/coupon/pageCouponList", {
+ data: {
+ store_id: os.stoid,
+ type: 1,
+ pageSize: 3,
+ page: 1,
+ is_share:0,
+ },
+ }).then(res1 => {
+ fir_quan = res1.data.data.pageData;
+ })
+ }
+
+ //--------获取视频图片---------
+ // await getApp().request.promiseGet("/api/weshop/goodsVideos/get/" + os.stoid + "/" + ee.data.gid, {
+ // 1: 1
+ // }).then(res1 => {
+ // if (res1.data.code == 0) {
+ // mapurl = res1.data.data.video_url;
+ // mapurl_f_img = res1.data.data.video_img;
+ // }
+ // })
+
+ ee.setData({
+ gallery: gallery,
+ is_collect: is_collect,
+ collect_id: collect_id,
+ categories3: categories3,
+ fir_quan: fir_quan,
+ fir_comments: fir_com,
+ mapurl_f_img: mapurl_f_img,
+ mapurl: mapurl,
+ });
+
+ },
+
+ //---展示---
+ onShow: function() {
+ var goods_list = null,th = this,that=this;
+
+ //优惠券要实时更新
+ getApp().getConfig2(function(e) {
+ var json_d = JSON.parse(e.switch_list);
+ th.setData({is_closecoupon: json_d.is_closecoupon})
+ th.setData({is_open_offline: json_d.is_pricing_open})
+ },1)
+
+
+ var ui = setInterval(function () {
+ goods_list = th.selectComponent("#goods_list");
+ if (goods_list) {
+ clearInterval(ui);
+ goods_list.init();
+ return false
+ }
+ }, 300)
+
+ this.data.is_timer = 1;
+ var ee = this,
+ gid = this.data.gid,
+ i = getApp().request;
+
+ this.wait_for_store_config();
+
+ i.get("/api/weshop/serviceCard/get/" + o.stoid + "/" + ee.data.gid, {
+ failRollback: !0,
+ success: function(t) {
+ if (t.data.code == 0) {
+ console.log('xx==><==', t.data.data);
+ // let data = {
+ // goods_name: t.data.data.serviceName,
+ // };
+ that.setData({
+ 'data.goods_name': t.data.data.serviceName,
+ 'data.shop_price': t.data.data.money,
+ 'data.validDays': t.data.data.validDays,
+ 'data.serviceContent': t.data.data.serviceContent,
+ 'data.image_url': t.data.data.imgUrl,
+ 'data.goods_id': t.data.data.id,
+ });
+ // self.setData({
+ // details: t.data.data,
+ // data,
+ // });
+ // if (t.data.data.is_on_sale != 1) {
+ // wx.showModal({
+ // title: '商品已经下架',
+ // showCancel: !1,
+ // complete: function() {
+ // wx.navigateBack();
+ // }
+ // });
+ // }
+
+ // var timestamp = Date.parse(new Date());
+ // timestamp = timestamp / 1000;
+ // if (t.data.data.on_time > timestamp) {
+ // wx.showModal({
+ // title: '商品还未上架',
+ // showCancel: !1,
+ // complete: function() {
+ // wx.navigateBack();
+ // }
+ // });
+ // }
+
+ // if (t.data.data.down_time > 0) {
+ // if (t.data.data.down_time < timestamp) {
+ // wx.showModal({
+ // title: '商品已经到期下架',
+ // showCancel: !1,
+ // complete: function() {
+ // wx.navigateBack();
+ // }
+ // });
+ // }
+ // }
+
+ // ee.check_is_youhui(ee.data.gid);
+
+ // t.data.data.on_time = ut.formatTime(t.data.data.on_time, 'yyyy-MM-dd hh:mm:ss');
+ // var txt = (t.data.data.shop_price / t.data.data.market_price * 10).toFixed(2).toString();
+
+
+ // if(txt != 0) {
+ // if(txt.indexOf('.') != -1) {
+ // var arrtxt = txt.split('.');
+ // if(arrtxt[1].length == 1 && arrtxt[1][0] == 0) {
+ // txt = txt.slice(0,-2);
+ // };
+
+ // if(arrtxt[1].length == 2 && arrtxt[1][1] == 0) {
+ // txt = txt.slice(0,-1);
+ // };
+ // };
+ // } else {
+ // txt = 0;
+ // }
+
+
+ // t.data.data['disc'] = txt;
+
+ // if (t.data.data.original_img.indexOf(o.imghost) == -1)
+ // t.data.data.original_img = o.imghost + t.data.data.original_img;
+
+ // if (t.data.data.goods_content == null) t.data.data.goods_content = "";
+
+ // //-----商品详情---
+ // if(!t.data.data.goods_content) t.data.data.goods_content=" ";
+ // a.wxParse("content", "html", t.data.data.goods_content, ee, 6);
+ // e.wxParseAddFullImageUrl(ee, "content");
+
+ // ee.setData({
+ // data: t.data.data,
+ // sele_g: t.data.data,
+ // userInfo:getApp().globalData.userInfo
+ // });
+
+
+ // //获取统一条形码,普通商品和优惠促销的商品
+ // if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 2 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5){
+ // //默认门店要拿下门店库存
+ // if(that.data.sales_rules==2 && that.data.is_newsales_rules){
+ // //获取门店
+ // ee.get_sto();
+ // //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存
+ // getApp().waitfor2(that,"wait_for_user_store","fir_def_store",function(){
+ // if(th.data.fir_def_store && th.data.fir_def_store.pickup_id ){
+ // var lock=0,plist=null;
+ // //先读取门店的lock,采用链式写法,少用await
+ // getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
+ // data:{store_id:os.stoid,wareId:ee.data.data.goods_id,storageId:that.data.fir_def_store.pickup_id,pageSize:1000}
+ // }).then(res=>{
+ // if(res.data.code==0 && res.data.data.total>0){
+ // for(var i in res.data.data.pageData)
+ // lock+=res.data.data.pageData[i].outQty
+ // }
+ // //---通过接口获取门店的线下库存信息--
+ // return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
+ // data:{storageNos:that.data.fir_def_store.pickup_no,wareIds:encodeURIComponent(th.data.data.erpwareid),storeId:os.stoid}
+ // })
+ // }).then(res=>{
+ // if(res.data.code==0 && res.data.data.total>0){
+ // plist=res.data.data.pageData[0];
+ // }
+ // if(plist && plist.CanOutQty-lock>0){
+ // that.data.fir_def_store.CanOutQty=plist.CanOutQty-lock;
+ // }else{
+ // that.data.fir_def_store.CanOutQty=0;
+ // }
+ // //--给门店赋值线下库存--
+ // th.setData({def_pick_store:that.data.fir_def_store});
+ // })
+ // }
+ // })
+ // }else{
+ // //获取门店
+ // ee.get_sto();
+ // }
+
+ // ee.get_sku(o.stoid, t.data.data.sku, gid);
+ // }
+ // else {
+ // var gg = "", item = t.data.data;
+
+ // if(item.goods_spec=="null" || item.goods_spec==null ) item.goods_spec="";
+ // if(item.goods_color=="null" || item.goods_color==null) item.goods_color="";
+
+ // if (item.goods_spec != "" && item.goods_color != "") {
+ // gg = item.goods_spec + "/" + item.goods_color;
+ // } else if (item.goods_spec != "" || item.goods_color != "") {
+ // gg = item.goods_spec + item.goods_color;
+ // } else {
+ // gg = "规格1";
+ // }
+ // t.data.data.gg = gg;
+ // var uu = [];
+ // uu.push(t.data.data);
+ // ee.setData({
+ // sku_g: uu,
+ // });
+ // }
+ // ee.data.g_buy_num = new Map();
+ // ee.check_prom(gid, ee.data.data.prom_type, ee.data.data.prom_id);
+
+ // var th = ee;
+ // if (ee.data.cat_name == '') {
+ // //过去国别,分类,品牌的名称
+ // i.get("/api/weshop/goodscategory/get/" + o.stoid + "/" + th.data.data.cat_id, {
+ // success: function(t) {
+ // var dd = t.data.data;
+ // if (t.data.code == 0) {
+ // th.setData({
+ // cat_name: dd.name
+ // });
+ // }
+ // }
+ // });
+ // //过去国别,分类,品牌的名称
+ // i.get("/api/weshop/brand/get/" + o.stoid + "/" + th.data.data.brand_id, {
+ // success: function(t) {
+ // var dd = t.data.data;
+ // if (t.data.code == 0) {
+ // th.setData({
+ // brand_name: dd.name
+ // });
+ // }
+ // }
+ // });
+ // //过去国别,分类,品牌的名称
+ // i.get("/api/weshop/nation/get/" + o.stoid + "/" + th.data.data.nation_id, {
+ // success: function(t) {
+ // var dd = t.data.data;
+ // if (t.data.code == 0) {
+ // th.setData({
+ // nation_name: dd.name
+ // });
+ // }
+ // }
+ // });
+ // }
+
+ } else {
+ wx.showModal({
+ title: t.data.msg,
+ showCancel: !1,
+ complete: function() {
+ wx.navigateBack();
+ }
+ });
+ };
+ }
+ });
+ this.data.enterAddressPage && (this.data.enterAddressPage = !1);
+
+ },
+ enterAddress: function() {
+ this.data.enterAddressPage = !0, wx.navigateTo({
+ url: "/pages/user/address_list/address_list?operate=selectAddress"
+ });
+ },
+ onUnload: function() {
+ for(var i = 1; i < 100; i++) {
+ clearInterval(i);
+ }
+ },
+ onHide: function() {
+ this.data.is_timer = 0;
+ for(var i = 1; i < 100; i++) {
+ clearInterval(i);
+ }
+ },
+ //----------三个选项按钮-----------
+ tabClick: function(t) {
+ var e = t.currentTarget.id;
+ this.setData({
+ activeCategoryId: e
+ }), 1 == e ? this.tabGoodsContent() : 2 == e && this.tabComment();
+ },
+ tabClick2: function(t) {
+ this.setData({
+ activeCategoryId2: t.currentTarget.id
+ });
+ },
+
+ tabClick3: function(t) {
+ var e = this;
+ if (t.currentTarget.id != this.data.activeCategoryId3) {
+ e.data.c_curr_p = 1;
+ this.setData({
+ activeCategoryId3: t.currentTarget.id,
+ comments: null,comments_no_more:0,get_c:0,
+ });
+ this.requestComments_new();
+ }
+ },
+
+ doScrollTop: function() {
+ wx.pageScrollTo({
+ scrollTop: 0
+ });
+ },
+
+ tabComment: function() {
+ this.setData({
+ activeCategoryId: 2,comments_no_more:0,get_c:0
+ }), this.data.comments || this.requestComments_new();
+ },
+
+ //商品详情的时候调用
+ tabGoodsContent: function() {
+ var th = this,
+ i = getApp().request;
+ this.setData({
+ activeCategoryId: 1
+ });
+
+ if (th.data.cat_name == '') {
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/goodscategory/get/" + o.stoid + "/" + th.data.data.cat_id, {
+ success: function(t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ cat_name: dd.name
+ });
+ }
+ }
+ });
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/brand/get/" + o.stoid + "/" + th.data.data.brand_id, {
+ success: function(t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ brand_name: dd.name
+ });
+ }
+ }
+ });
+ //过去国别,分类,品牌的名称
+ i.get("/api/weshop/nation/get/" + o.stoid + "/" + th.data.data.nation_id, {
+ success: function(t) {
+ var dd = t.data.data;
+ if (t.data.code == 0) {
+ th.setData({
+ nation_name: dd.name
+ });
+ }
+ }
+ });
+ }
+ },
+
+ //获取redis中的数量
+ async getactLen(func) {
+ var r_num = 0,
+ prom_type = this.data.prom_type,
+ prom_id = this.data.prom_id;
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ if (em.data.code == 0) {
+ r_num = em.data.data;
+ }
+ })
+ func(r_num);
+ },
+
+ //------------加入购物车--------------
+ addCart: function(t) {
+ var th = this;
+ var ind = t.currentTarget.dataset.openSpecModal_ind;
+ if(!ind) ind = t.currentTarget.dataset.openspecmodal_ind;
+ th.setData({
+ open_ind_store: ind
+ });
+ //如果是秒杀的话,要看redis够不够
+ if (this.data.prom_type == 1) {
+ this.getactLen(function(num) {
+ if (num < th.data.goodsInputNum) {
+ getApp().my_warnning("秒杀库存不足!", 0, th);
+ return false;
+ } else {
+ th.add_cart_func(t);
+ }
+ });
+ } else {
+ th.add_cart_func(t);
+ }
+ },
+
+
+
+ //-- 加入购物的函数 --
+ add_cart_func_inte: function(t) {
+ var i = getApp().request;
+ if (oo.user_id == null) {
+ return s.my_warnning("还未登录!", 0, this);
+ }
+ if(!getApp().globalData.userInfo){
+ return s.my_warnning("还未登录!", 0, this);
+ }
+
+ var e = this,
+ th = e,
+ a = 0,
+ o = this.data.data;
+ a = o.goods_id;
+
+ //----------添加到购物车时,要判断限购数量,--------
+ e.get_buy_num(o, function(ee) {
+ //---判断商品是否超出限购---
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+ if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品限购'
+ });
+ return false;
+ }
+ }
+ //---判断商品是否超出活动限购---
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
+ if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动限购'
+ });
+ return false;
+ }
+ }
+
+ if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
+ if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ this.setData({
+ sto_sele_name: ""
+ });
+ if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
+
+ //--------------此时操作的数据------------
+ var newd = {
+ goods_id: o.goods_id,
+ goods_num: th.data.goodsInputNum,
+ pick_id: th.data.sto_sele_id,
+ user_id: oo.user_id,
+ store_id: th.data.stoid,
+ goods_price: th.data.prom_price,
+ integral:th.data.prom_integral,
+ member_goods_price: o.shop_price,
+ goods_name: o.goods_name,
+ goods_sn: o.goods_sn,
+ sku: o.sku,
+ };
+
+ //---是不是从收藏夹出来的---
+ if(th.data.c_guide_id){
+ newd['guide_id'] = th.data.c_guide_id;
+ newd['guide_type']=2;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type']=3;
+ }else{
+ if(getApp().globalData.guide_id){
+ newd['guide_id'] = getApp().globalData.guide_id;
+ newd['guide_type']=0;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type']=1;
+ }
+ }
+
+ //让商品带上房间号
+ //让商品带上房间号
+ if(th.data.sys_switch.is_skuroom_id==1){
+ if(th.data.data.goods_id==getApp().globalData.room_goods_id){
+ newd.room_id=getApp().globalData.room_id;
+ }
+ }else{
+ if(newd.goods_id==getApp().globalData.room_goods_id) newd.room_id=getApp().globalData.room_id;
+ }
+
+ //如果是积分够,is_integral_normal就要有积分购普通购买字段
+ if(o.prom_type==4){
+ newd.is_integral_normal=1;
+ }
+
+ //-----如果是秒杀,团购,积分购,拼团-----
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count 0) {
+ if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品限购'
+ });
+ return false;
+ }
+ }
+ //---判断商品是否超出活动限购---
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
+ if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动限购'
+ });
+ return false;
+ }
+ }
+
+ if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
+ if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ this.setData({
+ sto_sele_name: ""
+ });
+ if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
+
+ //--------------此时操作的数据------------
+ var newd = {
+ goods_id: o.goods_id,
+ goods_num: th.data.goodsInputNum,
+ pick_id: th.data.sto_sele_id,
+ user_id: oo.user_id,
+ store_id: th.data.stoid,
+ goods_price: o.shop_price,
+ member_goods_price: o.shop_price,
+ goods_name: o.goods_name,
+ goods_sn: o.goods_sn,
+ sku: o.sku,
+ };
+
+ //---是不是从收藏夹出来的---
+ if(th.data.c_guide_id){
+ newd['guide_id'] = th.data.c_guide_id;
+ newd['guide_type']=2;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type']=3;
+ }else{
+ if(getApp().globalData.guide_id){
+ newd['guide_id'] = getApp().globalData.guide_id;
+ newd['guide_type']=0;
+ if ("add" == t.currentTarget.dataset.action) newd['guide_type']=1;
+ }
+ }
+
+ //让商品带上房间号
+ //让商品带上房间号
+ if(th.data.sys_switch.is_skuroom_id==1){
+ if(th.data.data.goods_id==getApp().globalData.room_goods_id){
+ newd.room_id=getApp().globalData.room_id;
+ }
+ }else{
+ if(newd.goods_id==getApp().globalData.room_goods_id) newd.room_id=getApp().globalData.room_id;
+ }
+
+ //如果是积分够,is_integral_normal就要有积分购普通购买字段
+ if(o.prom_type==4){
+ newd.is_integral_normal=1;
+ }
+
+ //如果有线下取价
+ if(o.offline_price){
+ newd.offline_price=o.offline_price;
+ newd.pricing_type=o.pricing_type;
+ }
+
+ //-----如果是秒杀,团购,积分购,拼团-----
+ if (th.data.prom_type == 1) {
+ newd.goods_price = th.data.prom_price;
+ newd.member_goods_price = th.data.prom_price,
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
+
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count 0){
+ var CanOutQty=res.data.data.pageData[0].CanOutQty;
+ if(CanOutQty0){
+
+ var lock=0;
+ for(var i in res_data.data.data.pageData){
+ lock+=res_data.data.data.pageData[i].outQty;
+ }
+
+ if(CanOutQty<=lock){
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ th.add_cart_next(e,t,a,o,newd,CanOutQty-lock);
+ }else{
+ th.add_cart_next(e,t,a,o,newd,CanOutQty);
+ }
+ }
+ })
+ }else{
+ return s.my_warnning("库存不足!", 0, th);
+ }
+
+ }
+ }
+ })
+ }else{
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+ if (o.store_count now){
+ var card_price=o[getApp().globalData.userInfo['card_field']];
+ //如果会员有等级价
+ if(getApp().globalData.userInfo['card_field']!=undefined && getApp().globalData.userInfo['card_field']!=null
+ && getApp().globalData.userInfo['card_field']!="" && card_price>0){
+ newd.goods_price=card_price;
+ newd.member_goods_price=card_price;
+ }
+ }
+ }
+ }
+
+ //if (this.data.data.goods.is_virtual) return this.buyVirtualGoods(d);
+ if ("add" == t.currentTarget.dataset.action) {
+
+ if(th.data.prom_goods){
+ newd.prom_type = 3;
+ newd.prom_id = th.data.prom_goods[0].prom_id;
+ }
+
+ //----先看会员在购物车中是否加入了该商品-----
+ i.get("/api/weshop/cart/page", {
+ data: {
+ store_id: e.data.stoid,
+ user_id: oo.user_id,
+ goods_id: a,
+ pick_id: e.data.sto_sele_id,
+ },
+ success: function(re) {
+
+ //-------如果购物车中有相关的数据---------
+ if (re.data.data.total > 0) {
+
+ var item = re.data.data.pageData[0];
+
+ //判断数量,要看下购物车中有没有该商品
+ if(CanOutQty){
+ if(item.goods_num+ th.data.goodsInputNum>CanOutQty){
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ }else{
+ if(item.goods_num+ th.data.goodsInputNum>o.store_count){
+ return s.my_warnning("库存不足!", 0, th);
+ }
+ }
+
+ var updata = {
+ id: item.id,
+ goods_num: e.data.goodsInputNum + item.goods_num,
+ goods_price: newd.goods_price,
+ member_goods_price:newd.goods_price,
+ store_id: th.data.stoid,
+ };
+
+ //---是不是从收藏夹出来的---
+ if(th.data.c_guide_id){
+ updata['guide_id'] = th.data.c_guide_id;
+ updata['guide_type']=3; //加入购物车之后就变成了3
+ }else {
+ if (getApp().globalData.guide_id) {
+ updata['guide_id'] = getApp().globalData.guide_id;
+ updata['guide_type'] = 0;
+ }
+ }
+
+ i.put("/api/weshop/cart/update", {
+ data: updata,
+ success: function(t) {
+ getApp().my_warnning('加入购物车成功', 1, th, 450);
+ var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
+ th.setData({
+ cartGoodsNum: c_num
+ });
+ th.closeSpecModal();
+ }
+ });
+ } else {
+
+
+ i.post("/api/weshop/cart/save", {
+ data: newd,
+ success: function(t) {
+ getApp().my_warnning('加入购物车成功', 1, th, 450);
+ var c_num = th.data.cartGoodsNum + e.data.goodsInputNum;
+ th.setData({
+ cartGoodsNum: c_num
+ });
+ th.closeSpecModal();
+ }
+ });
+ }
+ }
+ });
+ }
+ //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d);
+ else {
+
+ if(th.data.prom_goods){
+ var prom_d=th.data.prom_goods;
+ for(var i in prom_d){
+ //判断活动有俩种条件,0元 1件
+ var condition_t=prom_d[i].prom_type;
+ switch(condition_t) {
+ case 0: //按钱
+ if(newd.goods_price>=condition_t){
+ newd.prom_type = 3;
+ newd.prom_id = prom_d[i].prom_id;
+ }
+ break
+ case 1://按购买数量
+ if(newd.goods_num>=condition_t){
+ newd.prom_type = 3;
+ newd.prom_id = prom_d[i].prom_id;
+ }
+ break;
+ }
+ }
+
+ }
+
+ newd['pick_name'] = th.data.sto_sele_name;
+ newd['pick_dis'] = th.data.sto_sele_distr;
+ th.buyNow(newd);
+ }
+ },
+
+
+ //----------购买虚拟商品------
+ buyVirtualGoods: function(e) {
+ Object.assign(e, {
+ goods_name: this.data.data.goods.goods_name,
+ spec_name: this.data.select.specName,
+ price: this.data.select.price
+ }), wx.navigateTo({
+ url: "/pages/virtual/buy_step/buy_step?" + t.Obj2Str(e)
+ });
+ },
+ //----------积分兑换---------
+ exchange: function(e) {
+ this.data.shippingCost < 0 || this.data.select.stock <= 0 || wx.navigateTo({
+ url: "/pages/cart/integral/integral?" + t.Obj2Str(e)
+ });
+ },
+
+
+ //----------立即购买-----------
+ buyNow: function(e) {
+ // this.data.shippingCost < 0 || this.data.select.stock <= 0 || (Object.assign(e, {
+ // action: "buy_now"
+ // }),
+ s.set_b_now(e);
+ if(e.prom_type==4){
+ var url="/pages/cart/cart2_inte/cart2_inte?is_bnow=1&goods_id=" + e.goods_id;
+ getApp().goto(url);
+ }else{
+ wx.redirectTo({
+ url: "/pages/cart/cart2/cart2?is_bnow=1&goods_id=" + e.goods_id,
+ });
+ }
+ },
+
+ //----------增加购买数量-----------
+ addCartNum: function(t) {
+ this.checkCartNum(this.data.goodsInputNum + 1);
+ },
+ //----------减少购买数量-----------
+ subCartNum: function(t) {
+ this.checkCartNum(this.data.goodsInputNum - 1);
+ },
+ //----------输入框输入购买数量-----------
+ inputCartNum: function(t) {
+ this.checkCartNum(Number(t.detail.value));
+ },
+
+ //----------增加购买数量-----------
+ addCartNum_inte: function(t) {
+ this.checkCartNum_inte(this.data.goodsInputNum + 1);
+ },
+ //----------减少购买数量-----------
+ subCartNum_inte: function(t) {
+ this.checkCartNum_inte(this.data.goodsInputNum - 1);
+ },
+ //----------输入框输入购买数量-----------
+ inputCartNum_inte: function(t) {
+ this.checkCartNum_inte(Number(t.detail.value));
+ },
+
+
+ //------检查数量是不是超出限购------
+ checkCartNum: function(t) {
+ var th = this;
+ this.data.sele_g = this.data.data;
+ this.get_buy_num(this.data.sele_g, async function() {
+ // this.get_buy_num(this.data.sele_g, async function() {
+
+ //--判断商品是否超出限购--
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+
+ var gd_buy_num=th.data.g_buy_num.get(th.data.sele_g.goods_id);
+
+ if (t + gd_buy_num > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '超出商品限购',
+ });
+
+ var num= th.data.sele_g.viplimited-gd_buy_num;
+ if(num<0) num=0;
+ th.setData({goodsInputNum:num})
+ return false;
+ }
+ }
+
+ //--判断商品是否超出活动限购--
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && !th.data.is_normal) {
+ if (t + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '超出商品活动限购',
+ });
+
+ var num=th.data.prom_buy_limit- th.data.prom_buy_num ;
+ if(num<0) num=0;
+ th.setData({goodsInputNum:num})
+ return false;
+ }
+ }
+
+ if (th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) {
+ var redis_num = 0;
+ //------判断活动是否抢光-----
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
+ os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, {
+ 1: 1
+ }).then(res => {
+ redis_num = res.data.data;
+ });
+
+ if (t > redis_num) {
+ wx.showModal({
+ title: '超出商品活动库存',
+ });
+ th.setData({goodsInputNum:redis_num})
+ return false;
+ }
+
+ }
+
+ var e = th.data.sele_g.store_count;
+ if(th.data.sales_rules==2){
+ if(!th.data.def_pick_store){
+ wx.showModal({ title: '请选择门店', });
+ return false;
+ }else{
+ e=th.data.def_pick_store.CanOutQty;
+ }
+ }
+
+ //库存不足,不增加
+ if(e e || 0 == e ? t = e : t < 1 && (t = 1);
+ th.setData({ goodsInputNum: t });
+ th.is_show_more_buy();
+
+ })
+ },
+
+ //----- 检查一下积分购的限购之类的问题 -----
+ checkCartNum_inte: function(t) {
+ var th = this;
+ this.get_buy_num(this.data.data, async function() {
+
+ //--判断商品是否超出限购--
+ if (th.data.g_buy_num != null && th.data.data.viplimited > 0) {
+
+ var gd_buy_num=th.data.g_buy_num.get(th.data.sele_g.goods_id);
+
+ if (t + gd_buy_num > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '超出商品限购',
+ });
+
+ var num= th.data.sele_g.viplimited-gd_buy_num;
+ if(num<0) num=0;
+ th.setData({goodsInputNum:num})
+ return false;
+ }
+ }
+
+ //--判断商品是否超出活动限购--
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) {
+ if (t + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '超出商品活动限购',
+ });
+
+ var num=th.data.prom_buy_limit- th.data.prom_buy_num ;
+ if(num<0) num=0;
+ th.setData({goodsInputNum:num})
+ return false;
+ }
+ }
+
+ if (th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) {
+ var redis_num = 0;
+ //------判断活动是否抢光-----
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
+ os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, {
+ 1: 1
+ }).then(res => {
+ redis_num = res.data.data;
+ });
+
+ if (t > redis_num) {
+ wx.showModal({
+ title: '超出商品活动库存',
+ });
+ th.setData({goodsInputNum:redis_num})
+ return false;
+ }
+
+ }
+
+ var e = th.data.sele_g.store_count;
+ if(th.data.sales_rules==2){
+ if(!th.data.def_pick_store){
+ wx.showModal({ title: '请选择门店', });
+ return false;
+ }else{
+ e=th.data.def_pick_store.CanOutQty;
+ }
+ }
+
+ //库存不足,不增加
+ if(e e || 0 == e ? t = e : t < 1 && (t = 1);
+ th.setData({ goodsInputNum: t });
+ })
+ },
+
+
+ closeSpecModal: function() {
+ if(this.data.openSpecModal_pt && this.data.is_normal){
+ this.get_sto();
+ }
+
+ this.setData({
+ openSpecModal: !1,
+ openSpecModal_pt: !1
+ });
+ },
+
+ openSpecModel: function(t) {
+ var th=this;
+ var open_store = t.currentTarget.dataset.ind;
+ this.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ open_ind_store: open_store,
+ })
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ wx.navigateTo({
+ url: '/pages/togoin/togoin',
+ })
+ return false;
+ }
+
+ var ind = t.currentTarget.dataset.ind;
+ this.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: ind,
+ });
+
+ var is_open=th.data.config
+
+
+ this.get_off_price();
+
+ },
+
+ //----获取线下价格-------
+ get_off_price(){
+ var th=this;
+ //没有开启就返回
+ if(!th.data.is_open_offline) return false;
+ //先看下购买的功能有没有到期
+ getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{
+ //未购买
+ if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){
+ return false;
+ }else{
+ //已经过期
+ var item=res.data.data.pageData[0];
+ if(item.end_time0){
+ cur_price=cur_goods[th.data.card_field];
+ }
+
+ var user_info = getApp().globalData.userInfo;
+ //获取一下接口,判断是不是有线下接口,必须是普通商品,全局优惠活动也是不行
+ if(cur_goods.prom_type==0 && !this.data.prom_goods){
+ cur_goods.offline_price=null;
+ //如果没有门店,不用计算线下价格
+ var def_pick_store=this.data.def_pick_store;
+ if(!def_pick_store) return false;
+ getApp().request.get("/api/weshop/goods/listWarePrice", {
+ data:{VIPId:encodeURIComponent(user_info.erpvipid),
+ store_id:os.stoid,
+ PickupId:def_pick_store.pickup_id,
+ WareIds:encodeURIComponent(cur_goods.erpwareid)},
+ success:function(res){
+ if(res.data.code==0 && res.data.data && res.data.data.length>0){
+ var datalist=res.data.data;
+ if(datalist[0].WarePrice {
+ var e = res;
+ if (e.data.code == 0) arrdata = e.data.data.pageData;
+ })
+ if(!arrdata) return fasle;
+
+ var arrsku = new Array();
+ var gitem = null;
+ var gb = 1,gg = "";
+ for (var i = 0; i < arrdata.length; i++) {
+ var goodsinfo=arrdata[i],prom=null;
+ if (goodsinfo.goods_id != g_id) {
+ if(goodsinfo.prom_type==1){
+ await getApp().request.promiseGet("/api/ms/flash_sale/get/"+os.stoid+"/"+goodsinfo.prom_id,{
+ }).then(res=>{
+ if(res.data.code==0) prom=res.data.data;
+ })
+ }
+ if(goodsinfo.prom_type==6){
+ await getApp().request.promiseGet("/api/weshop/teamlist/get/"+os.stoid+"/"+goodsinfo.prom_id,{
+ }).then(res=>{
+ if(res.data.code==0) prom=res.data.data;
+ })
+ }
+ }
+ //---如果有活动,不算在一起---
+ if(prom){
+ if(prom.is_end==0 && prom.end_time>now && prom.start_time{
+ if(res.data.code==0 && res.data.data.total>0){
+ for(var i in res.data.data.pageData)
+ lock+=res.data.data.pageData[i].outQty
+ }
+ //---通过接口获取门店的线下库存信息--
+ return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
+ data:{storageNos:that.data.def_pick_store.pickup_no,wareIds:encodeURIComponent(th.data.sele_g.erpwareid),storeId:os.stoid}
+ })
+ }).then(res=>{
+ if(res.data.code==0 && res.data.data.total>0){
+ plist=res.data.data.pageData[0];
+ }
+ if(plist && plist.CanOutQty-lock>0){
+ that.data.def_pick_store.CanOutQty=plist.CanOutQty-lock;
+ }else{
+ that.data.def_pick_store.CanOutQty=0;
+ }
+ //--给门店赋值线下库存--
+ th.setData({def_pick_store:that.data.def_pick_store});
+ })
+ }
+
+
+ this.sele_spec_chech_activity();
+ },
+
+ //选择了不同的规格的时候要判断是不是有活动正在进行中
+ async sele_spec_chech_activity(){
+ //---如果是活动的时候---
+ var prom=null,goodsinfo=this.data.sele_g,th=this;
+ if(goodsinfo.prom_type==1){
+ await getApp().request.promiseGet("/api/ms/flash_sale/get/"+os.stoid+"/"+goodsinfo.prom_id,{
+ }).then(res=>{
+ if(res.data.code==0){
+ prom=res.data.data;
+ }
+ })
+ }
+ if(goodsinfo.prom_type==6){
+ await getApp().request.promiseGet("/api/weshop/teamlist/get/"+os.stoid+"/"+goodsinfo.prom_id,{
+ }).then(res=>{
+ if(res.data.code==0){
+ prom=res.data.data;
+ }
+ })
+ }
+ //----------如果有活动,并且在进行中,就不计算线下库存---------------
+ var now=ut.gettimestamp();
+ if(prom){
+ if(prom.is_end==0 && prom.end_time>now && prom.start_time {
+ var e = res;
+
+ if (e.data.code == 0) {
+
+ //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
+ if(dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store)=='{}') && th.data.bconfig && th.data.bconfig.is_sort_storage){
+ th.setData({
+ def_pick_store:e.data.data.pageData[0],
+ sto_sele_name: e.data.data.pageData[0].pickup_name,
+ sto_sele_id: e.data.data.pageData[0].pickup_id,
+ sto_sele_distr: e.data.data.pageData[0].distr_type
+ });
+ th.data.fir_def_store=e.data.data.pageData[0];
+ }
+
+ //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
+ if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store)!='{}'){
+ for (var k = 0; k < e.data.data.pageData.length; k++) {
+ if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
+ e.data.data.pageData.splice(k, 1); //删除
+ break;
+ }
+ }
+ e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
+ }
+
+
+ th.setData({all_pick_list:e.data.data.pageData});
+
+ //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购--
+ if(th.data.sales_rules==2 && !th.data.is_newsales_rules && ((th.data.prom_type!=1 && th.data.prom_type!=6 && th.data.prom_type!=4) || is_normal==1)){
+ setTimeout(function(){
+ th.deal_pickup_dline(e);
+ },800)
+ }else{
+ setTimeout(function(){
+ th.deal_pickup(e); //--普通门店排版--
+ },800)
+ }
+ }
+ })
+ }, 200)
+
+ },
+
+
+ //------------处理门店---------------
+ deal_pickup(e){
+ var th=this;
+ if(!th.data.sele_g) return false
+
+ var g_distr_type=th.data.sele_g.distr_type;
+ wx.hideLoading();
+
+ //单总量超出5个的时候
+ if (e.data.data.total > 5) {
+ getApp().request.get("/api/weshop/storagecategory/page", {
+ data: {
+ store_id: o.stoid,
+ is_show: 1,
+ pageSize: 1000,
+ orderField:"sort",
+ orderType:'asc',
+ },
+ success: function(ee) {
+ if (ee.data.code == 0) {
+
+ if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
+ var def_arr = new Array();
+ var ishas = 0;
+ //-- 开始就看5个门店 --
+ for (var k = 0; k < 5; k++) {
+ if (k == e.data.data.pageData.length) break;
+ def_arr.push(e.data.data.pageData[k]);
+ }
+
+ th.setData({
+ def_pickpu_list: def_arr,
+ pickpu_list: ee.data.data.pageData
+ });
+ var sto_cate = ee.data.data.pageData;
+ var sto_arr = e.data.data.pageData;
+ var newarr = new Array();
+ var qita = new Array();
+
+ //----要进行门店分组--------
+ for (var i = 0; i < sto_arr.length; i++) {
+ //找一下这个门店有没有在分类数组内
+ var find2 = 0, find2name = "",sort=0;
+ for (var m = 0; m < sto_cate.length; m++) {
+ if (sto_arr[i].category_id == sto_cate[m].cat_id) {
+ find2 = sto_cate[m].cat_id;
+ find2name = sto_cate[m].cat_name;
+ sort = sto_cate[m].sort;
+ break;
+ }
+ }
+
+ if (newarr.length > 0) {
+ var find = 0;
+ //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
+ if (find2 != 0) {
+ for (var ii = 0; ii < newarr.length; ii++) {
+ if (sto_arr[i].category_id == newarr[ii].cat_id) {
+ newarr[ii].s_arr.push(sto_arr[i]);
+ find = 1;
+ break;
+ }
+ }
+ if (find == 0) {
+ var arr0 = new Array();
+ arr0.push(sto_arr[i]);
+ var item = {
+ cat_id: find2,
+ name: find2name,
+ sort:sort,
+ s_arr: arr0
+ };
+ newarr.push(item);
+ }
+ } else {
+ qita.push(sto_arr[i]);
+ }
+ } else {
+ //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
+ if (find2 != 0) {
+ var arr0 = new Array();
+ arr0.push(sto_arr[i]);
+ var item = {
+ cat_id: find2,
+ name: find2name,
+ sort:sort,
+ s_arr: arr0
+ };
+ newarr.push(item);
+ } else {
+ qita.push(sto_arr[i]);
+ }
+ }
+ }
+
+ //门店分类要排序下
+ function compare(property){
+ return function(a,b){
+ var value1 = a[property];
+ var value2 = b[property];
+ return value1 - value2;
+ }
+ }
+ if(newarr.length>0)
+ newarr.sort(compare("sort"));
+
+
+ //----安排其他的分类-----
+ if (qita.length > 0) {
+ var item = {
+ cat_id: -1,
+ name: "其他",
+ s_arr: qita
+ };
+ newarr.push(item);
+ }
+
+ th.setData({
+ is_show_sto_cat: 1,
+ all_sto: newarr
+ });
+
+ } else {
+ th.setData({
+ is_show_sto_cat: -1,
+ only_pk: e.data.data.pageData
+ });
+ //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
+ if (!th.data.def_pick_store) {
+ th.setData({def_pick_store:e.data.data.pageData[0]})
+ }
+ }
+ } else {
+ th.setData({
+ is_show_sto_cat: -1,
+ only_pk: e.data.data.pageData
+ });
+ //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
+ if (!th.data.def_pick_store) {
+ th.setData({def_pick_store:e.data.data.pageData[0]})
+ }
+
+ }
+ }
+ });
+ } else {
+ th.setData({
+ is_show_sto_cat: 0,
+ only_pk: e.data.data.pageData
+ });
+ //-----如果没有默认门店,要取第一个门店作为默认店------
+ if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
+ th.setData({
+ def_pick_store:e.data.data.pageData[0],
+ sto_sele_name: e.data.data.pageData[0].pickup_name,
+ sto_sele_id: e.data.data.pageData[0].pickup_id,
+ sto_sele_distr: e.data.data.pageData[0].distr_type
+ })
+ }
+ }
+ },
+
+ //------------处理线下门店库存--------
+ deal_pickup_dline(e){
+ var pkno=[],th=this;
+ if(!th.data.sele_g) return false;
+
+ if(this.data.def_pick_store){
+ pkno.push(this.data.def_pick_store.pickup_no);
+ }
+ for(var i in e.data.data.pageData){
+ var item=e.data.data.pageData[i];
+ if(pkno.indexOf(item.pickup_no)<0)
+ pkno.push(item.pickup_no);
+ }
+ var pkno_str=pkno.join(",");
+ var o_plist=e.data.data.pageData;
+ var new_list=[];
+ var is_find_def_store=0;
+
+
+ var g_distr_type=th.data.sele_g.distr_type;
+ var lock=[];
+ //先读取门店的lock,采用链式写法,少用await
+ getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
+ data:{store_id:os.stoid,wareId:th.data.sele_g.goods_id,pageSize:1000}
+ }).then(res=>{
+ if(res.data.code==0 && res.data.data.total>0){
+ lock=res.data.data.pageData
+ }
+ //---通过接口获取门店的线下库存信息--
+ return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
+ data:{storageNos:pkno_str,wareIds:encodeURIComponent(th.data.sele_g.erpwareid),storeId:os.stoid,pageSize:2000}
+ })
+ }).then(res=>{
+
+ wx.hideLoading();
+ if(res.data.code==0){
+ if(res.data.data.pageData && res.data.data.pageData.length>0){
+ var plist=res.data.data.pageData;
+ var def_pick_store=th.data.def_pick_store;
+ //以原来的数组为外循环,保证距离的顺序
+ for(var kk in o_plist){
+ for(var ii in plist){
+ //线下的门店小心
+ var n_item=plist[ii];
+ if(n_item.StorageNo==o_plist[kk].pickup_no){
+
+ //拿到锁库的数量
+ var lock_num=th.find_lock_num(o_plist[kk].pickup_id,lock);
+ //可出库数大于预出库库存的数量,可以判断为有库存
+ if(n_item.CanOutQty>lock_num){
+ o_plist[kk].CanOutQty=n_item.CanOutQty-lock_num;
+ new_list.push(o_plist[kk]);
+ //--如果找到默认门店,同时也应该判断配送方式对不对--
+ if(th.data.fir_def_store && n_item.StorageNo==th.data.fir_def_store.pickup_no && (g_distr_type==0 || th.data.fir_def_store.distr_type==0 || th.data.def_pick_store.distr_type==g_distr_type ) ){
+ th.data.fir_def_store.CanOutQty=n_item.CanOutQty-lock_num;
+ if(def_pick_store.pickup_id==th.data.fir_def_store.pickup_id)
+ th.setData({def_pick_store:th.data.fir_def_store})
+ is_find_def_store=1;
+ }
+ }
+ break;
+ }
+ }
+ }
+
+ //数据组装下
+ var em={};em.data={};em.data.data={};
+ em.data.data.total=new_list.length;
+ em.data.data.pageData=new_list;
+
+ //--如果找到默认门店,同时也应该判断配送方式对不对--
+ if(th.data.fir_def_store && !is_find_def_store && th.data.fir_def_store.pickup_id && (g_distr_type==0 || th.data.fir_def_store.distr_type==0 || th.data.def_pick_store.distr_type==g_distr_type ) ){
+ th.data.fir_def_store.CanOutQty=0;
+ //--当选择的门店是客户默认的门店的时候--
+ if(th.data.def_pick_store && th.data.fir_def_store.pickup_id==th.data.def_pick_store.pickup_id) {
+ th.setData({def_pick_store:th.data.fir_def_store});
+ em.data.data.pageData.unshift(th.data.def_pick_store);
+ }else{
+ em.data.data.pageData.splice(1,0,th.data.fir_def_store);
+ }
+ }
+
+ //---把数组组装进去---
+ th.deal_pickup(em);
+ }else{
+ th.setData({def_pick_store:null,all_sto:null,only_pk:null,def_pickpu_list:null})
+ }
+ }else{
+ th.setData({def_pick_store:null,all_sto:null,only_pk:null,def_pickpu_list:null})
+ }
+ })
+ },
+
+ find_lock_num(pick_id,lock){
+ var lock_num=0;
+ if(!lock) return 0;
+ if(lock.length<0) return 0;
+ for(var i in lock){
+ if(pick_id==lock[i].pickupId){
+ lock_num+=lock[i].outQty;
+ }
+ }
+ return lock_num;
+ },
+
+ //----------取货门店被点击的效果------
+ getmendian: function(t) {
+ this.setData({
+ ismend: 1,
+ });
+ },
+
+ //----------隐藏取货门店,选取门店----------
+ hidemend: function(e) {
+ var pid = e.target.dataset.p_id;
+ var pname = e.target.dataset.p_name;
+ var p_distr_t = e.target.dataset.p_dis;
+ this.setData({
+ ismend: 0,
+ is_sec_mend: 0,
+ sto_sele_id: pid,
+ sto_sele_name: pname,
+ sto_sele_distr: p_distr_t
+ });
+ },
+
+ //------显示取货2级----------
+ show_sec: function(t) {
+ var index = t.target.dataset.index;
+ var item = this.data.all_sto[index];
+ this.setData({
+ is_sec_mend: 1,
+ sec_sto: item
+ });
+ },
+
+ //------隐藏取货门店2级----
+ hide_sec_mend: function() {
+ this.setData({
+ is_sec_mend: 0,
+ });
+ },
+
+ //评论的调用
+ requestComments_new: async function(){
+ var e = this, th = e,ee=e; var tp = e.data.activeCategoryId3;
+ var t = '/api/weshop/comment/pageComment?page=' + e.data.c_curr_p;
+
+ wx.showLoading();
+ var req_where = {
+ store_id: o.stoid, pageSize: 5,is_show:1,
+ parent_id: 0, goods_id: th.data.gid, commenttype: tp,
+ }
+ if (getApp().globalData.userInfo) {
+ req_where.userId = getApp().globalData.userInfo.user_id;
+ }
+
+ var rs_data=null;
+ await getApp().request.promiseGet(t, { data: req_where}).then(res=>{
+ var tot = res.data.data.total;
+ e.data.c_curr_p++;
+ e.setData({
+ com_num: tot, //已经有加载
+ });
+ if (res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
+ rs_data=res.data.data.pageData;
+ }else{
+ th.setData({comments_no_more:1,auto:1});
+ }
+ })
+
+ if (rs_data){
+ //var cda = th.data.comments;
+ var cda = rs_data,com_data=th.data.comments;
+ for (var ind in cda) {
+ var ep = cda[ind];
+ if (cda[ind].head_pic == '') {
+ cda[ind].head_pic = th.data.iurl + "/miniapp/images/hui_hear_pic.png";
+ }
+ if (ep.weapp_img != "" && ut.isString(ep.weapp_img)) {
+ cda[ind].weapp_img = JSON.parse(ep.weapp_img);
+ }
+ if (ep.img != "" && ut.isString(ep.img)) {
+ cda[ind].img = ut.unserialize(ep.img);
+ }
+
+ //--测量多有字的宽带,计算有多少行--
+ var widh=ut.measureText(ep.content,30);
+ var lines=widh/712;
+ cda[ind].seeMore=false;
+ if(lines>3) cda[ind].seeMore=true;
+
+ await getApp().request.promiseGet("/api/weshop/comment/pageComment", {
+ data: {store_id: o.stoid, parent_id: ep.comment_id }
+ }).then(res => {
+ if (res.data.data.pageData && res.data.data.pageData.length > 0) {
+ cda[ind].replay_list = res.data.data.pageData;
+ }
+ })
+ }
+
+ if (!com_data) com_data = cda;
+ else com_data = com_data.concat(cda);
+
+ th.setData({ comments: com_data});
+ }
+ th.setData({get_c: 1});
+ wx.hideLoading();
+ },
+
+ //加载更多是靠这个函数
+ onReachBottom: function() {
+ if (this.data.activeCategoryId == 2){
+ if(!this.data.comments_no_more) this.requestComments_new();
+ }
+
+ var goods_list = this.selectComponent("#goods_list"); //组件的id
+ if (goods_list) goods_list.get_list();
+ },
+
+ //--------检查是否活动,活动是否开始,或者是否结束-------
+ async check_prom(gid, prom_type, prom_id) {
+ var ee = this,
+ th = ee;
+ if (prom_type == 3 || prom_type == 0 || prom_type == 2 || prom_type == 5) {
+ this.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ return false;
+ }
+
+
+
+ //if (prom_type != 3 && prom_type!=0){
+ //---判断秒杀----
+ if (prom_type == 1) {
+ //-------判断活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ if (em.data.code == 0) {
+
+ if (em.data.data <= 0) ee.setData({
+ prom_r_null: 1
+ });
+ //拿取价格并且判断时间--
+ getApp().request.get("/api/ms/flash_sale/get/" +
+ os.stoid + "/" + prom_id, {
+ success: function(t) {
+ if (t.data.code != 0) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ return false;
+ }
+ //----已经结束-----
+ if (t.data.data.is_end == 1) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ ee.get_sto();
+ return false;
+ }
+ //----已经过期-----
+ var now = ut.gettimestamp();
+ if (t.data.data.end_time < now) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ return false;
+ }
+
+ /*-- 还没有开始预热的也不显示 --*/
+ if (t.data.data.show_time > now) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ ee.get_sto();
+ return false;
+ }
+
+ var t_gd = ee.data.data;
+ var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
+ var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
+
+ ee.setData({
+ prom_price: t.data.data.price,
+ prom_type: 1,
+ prom_id: prom_id,
+ prom_buy_limit: t.data.data.buy_limit,
+ prom_act: t.data.data,
+ prom_end_time: prom_end_time,
+ prom_start_time: prom_start_time,
+ isshow: 1,
+ });
+
+ ee.get_sto();
+
+
+ var newTime = ut.gettimestamp();
+ var endTime2 = t.data.data.end_time;
+ var endTime1 = t.data.data.start_time;
+
+ //---苹果机不兼容---
+ /*----
+ var endTime2 = new Date(prom_end_time).getTime();
+ var endTime1 = new Date(prom_start_time).getTime();----*/
+
+ if (endTime1 > newTime) {
+ ee.setData({
+ prom_time_text: '距秒杀开始还有'
+ })
+ ee.countDown(endTime1, 0);
+ } else {
+ if (endTime2 > newTime) {
+ ee.setData({
+ prom_time_text: '距秒杀结束还有',
+ prom_st: 1
+ })
+ ee.countDown(endTime2);
+ }
+ }
+ }
+ });
+ }
+ })
+ }
+
+ if(prom_type==4){
+ //th.setData({is_integral_normal:1});
+ var rdata={
+ store_id:o.stoid,stype:1,stypeup:1,goods_id:gid
+ }
+
+ var integrals=0;
+ var get_datas= {
+ user_id:getApp().globalData.user_id, store_id:o.stoid,
+ };
+ await getApp().request.promiseGet("/api/weshop/users/getAllPoints", {
+ data: get_datas
+ }).then(res => {
+ if(res.data.code==0){
+ integrals=res.data.data.Integral;
+ }
+ })
+
+ //获取一下积分活动
+ await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList", {
+ data: rdata
+ }).then(res => {
+ //调用接口有数据的时候
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0) {
+ var inte_data=res.data.data.pageData[0];
+ var can_integral=(parseFloat(integrals)>=parseFloat(inte_data.integral));
+ ee.setData({
+ prom_price:parseFloat(inte_data.addmoney),
+ prom_integral:parseFloat(inte_data.integral),
+ prom_type: 4,
+ prom_id: inte_data.id,
+ prom_buy_limit: inte_data.limitvipqty,
+ prom_act: inte_data,
+ isshow: 1,
+ can_integral:can_integral,
+ is_shopbuy: parseInt(inte_data.is_shopbuy?inte_data.is_shopbuy:0)
+ });
+ ee.get_sto();
+
+ }else{
+ ee.setData({prom_type: 0, isshow: 1,});
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ ee.get_sto();
+ return false;
+ }
+ })
+
+ }
+
+
+ //---判断拼单----
+ if (prom_type == 6) {
+ //-------判断活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
+ 1: 1
+ }).then(res => {
+ var em = res;
+ if (em.data.code == 0) {
+
+
+ if (em.data.data <= 0) ee.setData({
+ prom_r_null: 1
+ });
+ //拿取价格并且判断时间--
+ getApp().request.get("/api/weshop/teamlist/get/" +
+ os.stoid + "/" + prom_id, {
+ success: function(t) {
+ if (t.data.code != 0) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ ee.get_sto();
+ return false;
+ }
+ //----已经结束-----
+ if (t.data.data.is_end == 1) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ return false;
+ }
+ //----已经过期-----
+ var now = ut.gettimestamp();
+ if (t.data.data.end_time < now) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ ee.get_sto();
+ return false;
+ }
+
+ /*-- 还没有开始预热的也不显示 --*/
+ if (t.data.data.show_time > now) {
+ ee.setData({
+ prom_type: 0,
+ isshow: 1,
+ });
+ ee.get_sku(os.stoid, ee.data.data.sku, gid);
+ ee.get_sto();
+ return false;
+ }
+
+ //-------查看自己是不是有买过该团的商品,并还为支付,或者在进行中-------
+ getApp().request.get("/api/weshop/order/page", {
+ data: {
+ pt_prom_id: prom_id,
+ user_id: oo.user_id,
+ store_id: os.stoid,
+ pageSize: 1,
+ page: 1
+ },
+ success: function(e) {
+ if (e.data.code == 0 && e.data.data.pageData.length > 0) {
+ var odr = e.data.data.pageData[0];
+ th.data.buy_order = odr;
+ if (odr.pt_status == 0 && odr.order_status == 1) {
+ th.setData({
+ user_order_pt_state: 1
+ });
+ }
+ if (odr.pt_status == 1 && odr.order_status == 1) {
+ if (odr.is_zsorder == 4) {
+ getApp().request.promiseGet("/api/weshop/teamgroup/page/", {
+ data: {
+ store_id: os.stoid,
+ team_id: odr.pt_prom_id,
+ listno: odr.pt_listno
+ }
+ }).then(res => {
+ var now = ut.gettimestamp();
+ if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
+ var tgr = res.data.data.pageData[0];
+ //如果团的时间已经到了
+ if (now >= tgr.kt_end_time) {
+ th.update_jiti(tgr.id);
+ } else {
+ th.setData({
+ user_order_pt_state: 2
+ });
+ }
+ }
+ })
+
+ } else {
+ th.setData({
+ user_order_pt_state: 2
+ });
+ }
+ }
+
+ if (odr.pt_status == 2 && odr.is_zsorder == 4) {
+ th.setData({
+ user_order_pt_state: 3,
+ });
+ th.data.wk_order_id = odr.order_id;
+ }
+ }
+ },
+ });
+
+ //----------查看阶梯团------------
+ if (t.data.data.ct_rylist != "" && t.data.data.ct_rylist != null && t.data.data.ct_rylist != undefined) {
+ t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist);
+ var max_num = 0;
+ t.data.data.ct_rylist.forEach(function(val, ind) {
+ if (parseInt(val.rynum) > max_num) max_num = parseInt(val.rynum);
+ })
+ t.data.data.max_ct_num = max_num;
+ }
+
+ var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
+ var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
+ ee.setData({
+ prom_price: t.data.data.price,
+ prom_type: 6,
+ prom_id: prom_id,
+ prom_buy_limit: t.data.data.buy_limit,
+ prom_act: t.data.data,
+ prom_end_time: prom_end_time,
+ prom_start_time: prom_start_time,
+ isshow: 1,
+ });
+
+ ee.get_sto();
+
+ var newTime = now;
+ var endTime2 = t.data.data.end_time;
+ var endTime1 = t.data.data.start_time;
+
+ if (endTime1 > newTime) {
+ ee.setData({
+ prom_time_text: '距拼单开始还剩:'
+ })
+ ee.countDown(endTime1, 0);
+ } else {
+ if (endTime2 > newTime) {
+ ee.setData({
+ prom_time_text: '距拼单结束还剩:',
+ prom_st: 1
+ })
+ ee.countDown(endTime2);
+ }
+ }
+ //-------查看有多少人在开这个团-------
+ th.get_team_group(prom_id);
+ }
+ });
+ }
+ })
+ }
+
+ },
+
+ //--获取有多少人在开团--
+ async get_team_group(prom_id) {
+ var teamgroup = [],
+ th = this,
+ grounp_tatal = 0;
+ //如果活动是开团不是商家团
+ if (this.data.prom_act.kttype > 1) {
+ //获取活动从表信息team_id
+ await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
+ data: {
+ store_id: os.stoid,
+ pageSize: 3,
+ page: 1,
+ state: 2,
+ team_id: prom_id
+ }
+ }).then(res => {
+ teamgroup = res.data.data.pageData;
+ grounp_tatal = res.data.data.total;
+ })
+ //获取订单的总数这个接口不能用
+ for (i = 0; i < teamgroup.length; i++) {
+ await getApp().request.promiseGet("/api/weshop/order/page", {
+ data: {
+ store_id: os.stoid,
+ pt_status: 1,
+ pt_listno: teamgroup[i].listno
+ }
+ }).then(res => {
+ var order = res.data.data.pageData;
+ teamgroup[i].open_num = order.length;
+ })
+ await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + teamgroup[i].openvipid, {}).then(res => {
+ var user = res.data.data;
+ teamgroup[i].user = user;
+ })
+ }
+
+ if (teamgroup.length > 0) {
+ th.setData({
+ teamgroup: teamgroup,
+ grounp_tatal: grounp_tatal
+ });
+ th.countDown2();
+ }
+ }
+ },
+
+ //---小于10的格式化函数----
+ timeFormat(param) {
+ return param < 10 ? '0' + param : param;
+ },
+
+ //----倒计时函数-----
+ countDown(time, prom_st) {
+ if (!this.data.is_timer) return false;
+ var th = this;
+ // 获取当前时间,同时得到活动结束时间数组
+ var endTime = time;
+ var newTime = ut.gettimestamp();
+ // 对结束时间进行处理渲染到页面
+ var obj = null;
+ // 如果活动未结束,对时间进行处理
+ if (endTime - newTime > 0) {
+ var time = (endTime - newTime);
+ // 获取天、时、分、秒
+ var day = parseInt(time / (60 * 60 * 24));
+ var hou = parseInt(time % (60 * 60 * 24) / 3600);
+ var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
+ var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
+ obj = {
+ day: this.timeFormat(day),
+ hou: this.timeFormat(hou),
+ min: this.timeFormat(min),
+ sec: this.timeFormat(sec)
+ }
+ } else {
+ if (th.data.prom_st == 0) {
+ //var endTime2 = new Date(th.data.prom_end_time).getTime();
+ var endTime2 = th.data.prom_act.end_time;
+ th.setData({
+ prom_time_text: '距结束还剩:',
+ prom_st: 1
+ })
+ setTimeout(function() {
+ th.countDown(endTime2)
+ }, 1000);
+ return false;
+
+ } else {
+ //活动已结束,全部设置为'00'
+ obj = {
+ day: '00',
+ hou: '00',
+ min: '00',
+ sec: '00'
+ }
+ th.setData({
+ prom_time_text: '活动已经结束:',
+ prom_st: 3
+ })
+ th.setData({
+ djs: obj
+ });
+ return false;
+ }
+ }
+
+ th.setData({
+ djs: obj
+ });
+ setTimeout(function() {
+ th.countDown(endTime)
+ }, 1000);
+ },
+
+
+ //-------------获取购买数量的总函数----------------
+ get_buy_num: function(gd, func) {
+ var map = this.data.g_buy_num,
+ th = this,
+ user_id = getApp().globalData.user_id;
+ if (user_id == null) {
+ map.set(gd.goods_id, 0);
+ th.setData({
+ g_buy_num: map,
+ prom_buy_num: 0,
+ });
+ "function" == typeof func && func();
+ return false;
+ }
+
+ if (map.has(gd.goods_id)) {
+ "function" == typeof func && func();
+ } else {
+ //----获取商品购买数----
+ getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
+ data: {
+ store_id: os.stoid,
+ user_id: user_id,
+ goods_id: gd.goods_id
+ },
+ success: function(t) {
+ if (t.data.code == 0) {
+ var g_buy_num = t.data.data.goodsbuynum;
+ if (gd.prom_type == 1 || gd.prom_type == 2 || gd.prom_type == 4 || gd.prom_type == 6) {
+ //----获取活动购买数----
+ getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
+ data: {
+ store_id: os.stoid,
+ user_id: user_id,
+ goods_id: gd.goods_id,
+ prom_type: gd.prom_type,
+ prom_id: gd.prom_id
+ },
+ //-----获取-----
+ success: function(tt) {
+ if (tt.data.code == 0) {
+ map.set(gd.goods_id, g_buy_num);
+ th.setData({
+ g_buy_num: map,
+ prom_buy_num: tt.data.data.goodsbuynum,
+ });
+ "function" == typeof func && func();
+ }
+ }
+ });
+ } else {
+ map.set(gd.goods_id, g_buy_num);
+ th.setData({
+ g_buy_num: map
+ });
+ "function" == typeof func && func();
+ }
+ }
+ }
+ });
+ }
+ },
+
+ //--拼单推荐的显示---
+ tj_Click: function(e) {
+ var ind = parseInt(e.target.dataset.ind);
+ this.setData({
+ is_show_gz: ind
+ });
+ },
+
+ //--------拼团玩法显示详情--------
+ show_pt_xx: function(e) {
+ this.setData({
+ pd_xx: 1,
+ })
+ },
+ close_pt_xx: function() {
+ this.setData({
+ pd_xx: 0,
+ })
+ },
+
+ //--点击弹起拼单--
+ openSpecModel_pt: function(e) {
+
+
+ this.setData({ open_ind_store: 4});//拼团直接给4
+
+
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ wx.navigateTo({
+ url: '/pages/togoin/togoin',
+ })
+ return false;
+ }
+
+ var th = this;
+ var ind = parseInt(e.currentTarget.dataset.it);
+ //如果是拼单活动的普通购买
+ if (ind == 1) {
+ //如果拼单的sku data是空的,就要先获取一下
+ if (th.data.sku_g_pt) {
+ th.get_sto(1);
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ } else {
+ th.get_sto(1);
+ th.get_sku(o.stoid, th.data.data.sku, th.data.gid, 1, function() {
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ });
+ }
+ } else {
+
+ //拼单商品从这里进,先判断有没有买过商品,
+ getApp().request.get("/api/weshop/order/page", {
+ data: {
+ pt_prom_id: th.data.prom_act.id,
+ user_id: oo.user_id,
+ store_id: os.stoid,
+ pageSize: 1,
+ page: 1
+ },
+ success: function(e) {
+ //--跳转到已经购买的情况--
+ if (e.data.data.pageData.length > 0) {
+ var odr = e.data.data.pageData[0];
+ //还未支付
+ if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
+ wx.showModal({
+ title: "您已经购买了该商品待支付中",
+ success: function(a) {
+ if (a.confirm) {
+ wx.navigateTo({
+ url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
+ });
+ }
+ }
+ });
+ } else if (odr.pt_status == 1 && odr.order_status == 1) {
+
+ if(this.data.is_go_to_team_show) return false;
+ this.data.is_go_to_team_show=1;
+ wx.showLoading();
+
+ wx.redirectTo({
+ url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
+ });
+ } else {
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ }
+
+ } else {
+ th.setData({
+ is_normal: ind,
+ openSpecModal_pt: 1
+ });
+ }
+ }
+ });
+ }
+ },
+
+ //-----------------拼单生成方法---------------------
+ addCart_pt: function() {
+ var th = this;
+ if (this.data.is_normal == 0) {
+ //看一下有没有起购数,如果有起购数,要计算起购数
+ var qnum = parseFloat(th.data.prom_act.minbuynum);
+ if (qnum > 0 && th.data.goodsInputNum < qnum) {
+ getApp().confirmBox("拼团商品至少要买" + qnum + "件!");
+ return false;
+ }
+
+ th.addcart_pt_func();
+ } else {
+ th.addcart_pt_func();
+ }
+ },
+
+ addcart_pt_func: function() {
+ if (oo.user_id == null) {
+ s.my_warnning("还未登录!", 0, this);
+ return;
+ }
+ var e = this,
+ th = e,
+ o = this.data.sele_g;
+ if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
+
+ //----------添加到购物车时,要判断限购数量,--------
+ e.get_buy_num(o, async function(ee) {
+
+ //---判断商品是否超出限购---
+ if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
+ if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品限购'
+ });
+
+ var num=th.data.prom_buy_limit-th.data.prom_buy_num;
+ if(num<0) num=0;
+ th.setData({goodsInputNum:num})
+ return false;
+ }
+ }
+ //---判断商品是否超出活动限购,拼团的普通购买不计算活动的限购---
+ if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && th.data.is_normal!=1) {
+ if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动限购'
+ });
+
+ var num=th.data.prom_buy_limit-th.data.prom_buy_num;
+ if(num<0) num=0;
+ th.setData({goodsInputNum:num})
+ return false;
+ }
+ }
+
+ var redis_num = 0
+ //不是普通购买的时候
+ if(th.data.is_normal!=1){
+ //-------判断活动是否抢光---------
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + th.data.sele_g.prom_id, {
+ 1: 1
+ }).then(res => {
+ redis_num = res.data.data;
+ })
+
+ if (th.data.goodsInputNum > redis_num) {
+ wx.showModal({
+ title: '提示',
+ content: '超出商品活动库存'
+ });
+
+ th.setData({goodsInputNum:redis_num})
+
+ return false;
+ }
+ }
+
+ if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
+ if (th.data.goodsInputNum > o.store_count) {
+ th.setData({goodsInputNum:o.store_count})
+ return s.my_warnning("超出商品库存", 0, th);
+ }
+
+ if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
+ this.setData({
+ sto_sele_name: ""
+ });
+ if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
+ //--------------此时操作的数据------------
+ var newd = {
+ goods_id: o.goods_id,
+ goods_num: th.data.goodsInputNum,
+ pick_id: th.data.sto_sele_id,
+ user_id: oo.user_id,
+ store_id: th.data.stoid,
+ goods_price: o.shop_price,
+ goods_name: o.goods_name,
+ goods_sn: o.goods_sn,
+ sku: o.sku,
+ };
+
+ //---是不是从收藏夹出来的---
+ if(th.data.c_guide_id){
+ newd['guide_id'] = th.data.c_guide_id;
+ newd['guide_type']=2;
+
+ }else{
+ if(getApp().globalData.guide_id){
+ newd['guide_id'] = getApp().globalData.guide_id;
+ newd['guide_type']=0;
+
+ }
+ }
+
+ //让商品带上房间号
+ if(th.data.sys_switch.is_skuroom_id==1){
+ if(th.data.data.goods_id==getApp().globalData.room_goods_id){
+ newd.room_id=getApp().globalData.room_id;
+ }
+ }else{
+ if(newd.goods_id==getApp().globalData.room_goods_id){
+ newd.room_id=getApp().globalData.room_id;
+ }
+ }
+
+ //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
+
+ if(th.data.is_normal == 1){
+ var conf=th.data.bconfig;
+ if(conf.switch_list){
+ var s_list=JSON.parse(conf.switch_list);
+ //如果后台有开启等级价的功能
+ if(parseInt(s_list.rank_switch)==2){
+ var card_price=o[getApp().globalData.userInfo['card_field']];
+ //如果会员有等级价
+ if(getApp().globalData.userInfo['card_field']!=undefined && getApp().globalData.userInfo['card_field']!=null
+ && getApp().globalData.userInfo['card_field']!="" && card_price>0){
+ newd.goods_price=card_price;
+ }
+ }
+ }
+ }
+
+
+ //-----如果是秒杀,团购,积分购,拼团,且不是普通购买-----
+ if (th.data.prom_type == 6 && th.data.is_normal!= 1) {
+ newd.goods_price = th.data.prom_price;
+ newd.prom_type = th.data.prom_type;
+ newd.prom_id = th.data.prom_id;
+ newd.kt_type = th.data.prom_act.kttype; //开团类型
+ newd.is_pt_tz = 0;
+ //th.data.sto_sele_distr=1; //直接用自提的方式提交
+ if (newd.kt_type > 1) {
+ newd.is_pt_tz = 1; //开团类型
+ }
+ if (newd.kt_type == 3) {
+ th.data.sto_sele_distr = 1;
+ }
+
+ } else if (th.data.prom_type == 3) {
+ newd.prom_type = 0;
+ newd.prom_id = 0;
+ }
+
+ newd['pick_name'] = th.data.sto_sele_name;
+ newd['pick_dis'] = th.data.sto_sele_distr;
+ newd['is_normal'] = th.data.is_normal;
+
+ th.buyNow_pt(newd);
+ })
+ },
+ //----------立即购买_pt-----------
+ buyNow_pt: function(e) {
+ s.set_b_now(e);
+ wx.navigateTo({
+ url: "/pages/cart/cart2_pt/cart2_pt?is_bnow=1&goods_id=" + e.goods_id,
+ });
+ },
+
+ //-------跳转pt商品-------
+ go_to_nopay: function() {
+ var th = this;
+ url="/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
+ getApp().goto(url);
+
+ },
+ //-------跳转pt teamshow-------
+ go_to_team_show: function() {
+
+ if(this.data.is_go_to_team_show) return false;
+ this.data.is_go_to_team_show=1;
+ wx.showLoading();
+
+ var th = this;
+ var url="/pages/team/team_success/team_success?ordersn=" + th.data.buy_order.order_sn;
+ wx.redirectTo({
+ url:url,
+ })
+
+ },
+
+ //---拼团倒计时---
+ countDown2() {
+ if (!this.data.is_timer) return false;
+ var th = this;
+ // 获取当前时间,同时得到活动结束时间数组
+ var newTime = ut.gettimestamp();
+ var List = th.data.teamgroup;
+ for (var j = 0; j < List.length; j++) {
+ // 对结束时间进行处理渲染到页面
+ var endTime = List[j].kt_end_time;
+ let obj = null;
+ // 如果活动未结束,对时间进行处理
+ if (endTime - newTime > 0) {
+ let time = (endTime - newTime);
+ // 获取天、时、分、秒
+ let day = parseInt(time / (60 * 60 * 24));
+ let hou = parseInt(time % (60 * 60 * 24) / 3600);
+ let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
+ let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
+ obj = {
+ day: this.timeFormat(day),
+ hou: this.timeFormat(hou),
+ min: this.timeFormat(min),
+ sec: this.timeFormat(sec)
+ }
+ } else {
+ //活动已结束,全部设置为'00'
+ obj = {
+ day: '00',
+ hou: '00',
+ min: '00',
+ sec: '00'
+ }
+ }
+ var txt = "timer[" + j + "]";
+ th.setData({
+ [txt]: obj
+ });
+ }
+ setTimeout(th.countDown2, 1000);
+ },
+ //跳转参加团
+ go_cj_team: function(e) {
+ var ind = e.currentTarget.dataset.ind;
+ var item = this.data.teamgroup[ind];
+ var id = item.id;
+ var th = this;
+
+ getApp().request.get("/api/weshop/order/page", {
+ data: {
+ pt_prom_id: item.team_id,
+ user_id: oo.user_id,
+ store_id: os.stoid,
+ pageSize: 1,
+ page: 1
+ },
+ success: function(e) {
+ if (e.data.code != 0) {
+ getApp().my_warnning("读取订单失败", 0, th);
+ return fasle;
+ }
+ //--跳转到已经购买的情况--
+ if (e.data.data.pageData.length > 0) {
+ var odr = e.data.data.pageData[0];
+ //还未支付
+ if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
+ wx.showModal({
+ title: "您已经购买了该商品待支付中",
+ success: function(a) {
+ if (a.confirm) {
+ wx.navigateTo({
+ url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
+ });
+ }
+ }
+ });
+ } else if (odr.pt_status == 1 && odr.order_status == 1) {
+
+ if(this.data.is_go_to_team_show) return false;
+ this.data.is_go_to_team_show=1;
+ wx.showLoading();
+
+ wx.redirectTo({
+ url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
+ });
+ } else {
+ wx.navigateTo({
+ url: "/pages/team/team_show/team_show?tg_id=" + id,
+ });
+ }
+ }
+ //--跳转到参团--
+ else {
+ wx.navigateTo({
+ url: "/pages/team/team_show/team_show?tg_id=" + id,
+ });
+ }
+ }
+ })
+
+ },
+
+ //跳到团更多
+ go_t_more: function() {
+ var team_id = this.data.prom_id;
+ wx.navigateTo({
+ url: "/pages/team/team_more/team_more?team_id=" + team_id,
+ });
+ },
+
+ //--点赞功能--
+ click_zan: function(e) {
+ var com_id = e.currentTarget.dataset.com_id;
+ var item_id = e.currentTarget.dataset.item_id;
+ var app = getApp(),
+ th = this;
+
+ if (app.globalData.userInfo == null || app.globalData.userInfo == undefined) {
+ app.confirmBox("您还未登录");
+ return false;
+ }
+
+ var iszan = th.data.comments[item_id].userZanNum;
+ if (this.data.iszaning) return false;
+ this.data.iszaning = 1;
+
+
+ app.request.post("/api/weshop/commentZan/save", {
+ data: {
+ store_id: o.stoid,
+ user_id: app.globalData.user_id,
+ goods_id: th.data.gid,
+ comment_id: com_id
+ },
+ success: function(ee) {
+
+ if (ee.data.code == "-1") {
+ app.my_warnning("不能给自己点赞", 0, th);
+ th.data.iszaning = 0;
+ return;
+ }
+
+ if (ee.data.code == 0 && iszan != 1) {
+ var num = th.data.comments[item_id].zan_num;
+ num++;
+ var text = "comments[" + item_id + "].zan_num";
+ var text1 = "comments[" + item_id + "].userZanNum";
+ var _errObj = {};
+ _errObj[text] = num;
+ _errObj[text1] = 1;
+ th.setData(_errObj);
+
+ } else {
+ var num = th.data.comments[item_id].zan_num;
+ num--;
+ var text = "comments[" + item_id + "].zan_num";
+ var text1 = "comments[" + item_id + "].userZanNum";
+ var _errObj = {};
+ _errObj[text] = num;
+ _errObj[text1] = 0;
+ th.setData(_errObj);
+ }
+
+ setTimeout(function() {
+ th.data.iszaning = 0;
+ }, 500)
+
+ }
+ })
+ },
+
+ /*----券的开关---*/
+ switchCoupon: async function(event) {
+ var coupon = event.currentTarget.dataset.coupon;
+ var app = getApp();
+ var url = "/api/weshop/prom/coupon/pageCouponList";
+ var quan_list = this.data.quan_list;
+ var th = this;
+
+ //当开启,且列表为空的情况下要
+ if (!quan_list && coupon == "1") {
+ wx.showLoading();
+ await app.request.promiseGet(url, {
+ data: {
+ store_id: os.stoid,
+ type: 1,
+ pageSize: 100,
+ page: 1,
+ user_id: app.globalData.user_id,
+ is_share:0
+ }
+ }).then(res => {
+ wx.hideLoading();
+ quan_list = res.data.data.pageData;
+ })
+
+ if (quan_list) {
+ for (var ind in quan_list) {
+ var ep = quan_list[ind];
+ var start = ut.formatTime(ep.use_start_time, "yyyy-MM-dd");
+ var end = ut.formatTime(ep.use_end_time, "yyyy-MM-dd");
+ start = start.replace("00:00:00", "");
+ end = end.replace("00:00:00", "");
+ quan_list[ind].start = start;
+ quan_list[ind].end = end;
+ }
+ }
+
+ th.setData({
+ coupon: coupon,
+ quan_list: quan_list
+ });
+ } else {
+ th.setData({
+ coupon: coupon
+ });
+ }
+ },
+
+ //--查看评价--
+ look_pj: function() {
+ this.tabComment();
+ this.doScrollTop();
+ },
+
+ //-----领取券-----
+ get_quan: function(e) {
+ var cid = e.currentTarget.dataset.cid;
+ var index = e.currentTarget.dataset.ind;
+ var item = this.data.quan_list[index];
+
+
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ wx.navigateTo({
+ url: '/pages/togoin/togoin',
+ })
+ return false;
+ }
+
+
+ //如果券还在领取中,不能再点
+ if (item.linging == 1) {
+ getApp().my_warnning('领取中..', 0, this);
+ return false;
+ }
+
+ //如果领取的次数到了
+ if (item.everyone_num > 0 && item.lqnum >= item.everyone_num) {
+ getApp().my_warnning('领取失败,您已领完该券', 0, this);
+ return false;
+ }
+
+ var lq_num = item.lqnum;
+
+ var pdata = {
+ 'uid': oo.user_id,
+ 'cid': cid,
+ 'store_id': os.stoid,
+ 'type': 5
+ };
+
+ //-- 导购ID --
+ if(getApp().globalData.guide_id){
+ pdata.guide_id=getApp().globalData.guide_id;
+ }
+
+ var app = getApp(),
+ th = this;
+ app.request.post("/api/weshop/couponList/saveCouponList", {
+ data: pdata,
+ success: function(res) {
+ if (res.data.code == 0) {
+ app.my_warnning("领取成功", 1, th);
+ lq_num++;
+ var text = "quan_list[" + index + "].lqnum";
+ var text2 = "quan_list[" + index + "].linging";
+ var obj = {};
+ obj[text] = lq_num;
+ obj[text2] = 0;
+ th.setData(obj);
+ } else {
+ app.confirmBox(res.data.msg);
+ var text2 = "quan_list[" + index + "].linging";
+ var obj = {};
+ obj[text2] = 0;
+ th.setData(obj);
+ }
+ }
+ })
+ },
+
+ //--定义的保存图片方法,分享团---
+ saveImageToPhotosAlbum: function() {
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ //getApp().my_warnning("请先登录",0,this);
+ wx.navigateTo({ url: '/pages/togoin/togoin', })
+ return false;
+ }
+
+ //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团
+ var type = this.data.prom_type;
+ if (type == 6) type = 2;
+ if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3;
+
+ wx.showLoading({
+ title: '生成中...',
+ })
+ var that = this,
+ th = that;
+ //设置画板显示,才能开始绘图
+ that.setData({
+ canvasHidden: false
+ })
+
+ var app = getApp();
+ var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
+ var path2 = that.data.data.original_img;
+ var scene = th.data.gid+"";
+ var user_id = getApp().globalData.user_id?getApp().globalData.user_id:0;
+ if(user_id>0) {
+ scene+="_"+user_id;
+ }
+ //-- 如果不是会员分享过来的要分享给别人 --
+ if(getApp().globalData.room_id && th.data.data.goods_id==getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) {
+ //固定房间是第3个字符
+ if(!user_id) scene+="_0";
+ scene+="_"+getApp().globalData.room_id ;
+ }
+ ///二微码
+ var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
+ os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo";
+
+ console.log(path3);
+
+ //读取文件成功则OK--
+ wx.getImageInfo({
+ src: path3,
+ success: function(res) {
+ //回调写法
+ th.get_head_temp(th.get_goods_temp, function() {
+ var vpath = res.path;
+ var context = wx.createCanvasContext('share');
+ //先画背景
+ var pg_path = "../../../images/share/share_bg.png";
+
+ // context.fillStyle="#FFFFFF";
+ // context.fillRect(0,0,554 * unit, 899 * unit);
+
+ //-- 如果有自定义海报的时候,判断背景的图片 --
+ if(th.data.share_b_img){
+ pg_path=th.data.share_b_img;
+ }
+ context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
+
+ //-- 是自定义海报的情况下 --
+ if(th.data.poster && parseInt(th.data.poster.style)==2) {
+ //在线上分享人的情况下
+ if(parseInt(th.data.poster.show_headpic)){
+ //获取坐标
+ var x=parseFloat(th.data.poster.head_x)*2;
+ var y=parseFloat(th.data.poster.head_y)*2;
+ var x1=(x+90) *unit;
+ var y1=(y+50) *unit;
+ //--昵称---
+ context.setFontSize(24 * unit)
+ context.setFillStyle("black")
+ context.fillText(app.globalData.userInfo.nickname, x1, y1);
+ var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
+ //强烈推荐 改许程
+ var tj_path = "../../../images/share/q_tj.png";
+ context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit)
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white")
+ context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
+
+ //context.setFillStyle("black")
+ //context.setFontSize(24 * unit)
+ //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit);
+ }
+ } else {
+ //--昵称---
+ context.setFontSize(24 * unit)
+ context.setFillStyle("black")
+ context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
+ var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
+ //强烈推荐 改许程
+ var tj_path = "../../../images/share/q_tj.png";
+ context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit);
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white");
+ context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
+ }
+
+
+ //---产品名称---
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ if(type!=4){
+ context.setFillStyle("black");
+ context.setFontSize(21.3 * unit)
+ th.draw_Text(context, th.data.data.goods_name,
+ 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
+ //------产品的价格-------
+ context.setFontSize(23 * unit)
+ context.setFillStyle("red")
+ context.fillText("¥", 416 * unit, 185 * unit);
+ context.setFontSize(31 * unit)
+ var pri0 = th.data.data.shop_price;
+ if (th.data.prom_act)
+ pri0 = th.data.prom_act.price;
+ pri0 = parseFloat(pri0).toFixed(2);
+ context.fillText(pri0, 438 * unit, 185 * unit);
+ //---市场价划掉---
+ context.setFillStyle("gray")
+ context.setFontSize(22 * unit)
+ context.fillText("¥" + th.data.data.market_price, 426 * unit, 213 * unit);
+ context.setStrokeStyle('gray');
+ context.setLineWidth(1 * unit);
+ context.moveTo(426 * unit, 206 * unit);
+ context.lineTo(510 * unit, 206 * unit);
+ context.stroke();
+
+ }else{
+ context.setFillStyle("black");
+ context.setFontSize(21.3 * unit)
+ th.draw_Text(context, th.data.data.goods_name,
+ 38 * unit, 170 * unit, 20 * unit, 300*unit, unit);
+ //------ 产品的价格 -----
+ var pri0 = th.data.prom_act.addmoney;
+ var integral=th.data.prom_act.integral;
+ var text= "";
+ if(integral){text=integral+"积分"; }
+ if(pri0 && integral){ text+="+";}
+ if(pri0){ text+="¥"+pri0;}
+
+ if(!pri0 && !integral){ text="0积分";}
+ context.setFillStyle("red");
+ context.fillText(text, 38 * unit, 235 * unit);
+
+ }
+
+ //---中间大图---
+ context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
+ //-------大图后面就不一样了-----------
+ switch (type) {
+ case 0: //普通商品的展示
+ case 4:
+ //中间的几个字
+ if(th.data.poster && parseInt(th.data.poster.style)==2 ){
+ if(parseInt(th.data.poster.show_quality)){
+ var g_path = "../../../images/share/s_gou.png";
+ context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("正品保证", 84 * unit, 690 * unit);
+
+ context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("纯实体店", 246 * unit, 690 * unit);
+
+ context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("官方验证", 420 * unit, 690 * unit);
+ }
+
+ }else{
+ var g_path = "../../../images/share/s_gou.png";
+ context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("正品保证", 84 * unit, 690 * unit);
+
+ context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("纯实体店", 246 * unit, 690 * unit);
+
+ context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("官方验证", 420 * unit, 690 * unit);
+ }
+
+
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 710 * unit)
+ context.lineTo(520 * unit, 710 * unit)
+ context.stroke();
+
+ //---文字---
+ context.setFillStyle("black")
+ context.setFontSize(22 * unit)
+
+ if(type==0){
+ // 原来start --->
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
+
+ context.setFontSize(22 * unit)
+ context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 806 * unit);
+ context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit);
+
+ }else{
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
+ context.setFontSize(22 * unit)
+ context.fillText("长按识别二维码", 40 * unit, 806 * unit);
+ context.fillText("立即开始兑换", 40 * unit, 846 * unit);
+
+
+ }
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 410 * unit, 726 * unit, 115 * unit, 125 * unit);
+ }
+
+ break;
+ case 1: //秒杀商品的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+
+ //画秒杀的图片
+ var miaos_path = '../../../images/share/miao_share.png';
+ context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit);
+
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 786 * unit);
+ //---文字---
+ context.setFontSize(22 * unit)
+ context.setFillStyle("black")
+ context.fillText("特惠好物,限时秒杀", 40 * unit, 826 * unit);
+ context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 866 * unit);
+
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+ break;
+
+ case 2: //会员团和商家团的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+ //---文字---
+
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
+
+ //绘制成团图片
+ var ct_img = "../../../images/share/ct_num.png";
+ context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
+ var ct_num = th.data.prom_act.ct_num;
+ context.setFontSize(14 * unit)
+ context.font = 'normal';
+ context.setFillStyle("red")
+ if (ct_num < 10) {
+ context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit);
+ } else {
+ context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit);
+ }
+ context.setFontSize(22 * unit)
+ context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit);
+
+ context.setFillStyle("gray")
+ context.fillText("快来和我一起拼团吧!", 40 * unit, 806 * unit);
+ context.setFillStyle("black")
+ context.font = 'normal bold 18px sans-serif';
+ context.setFontSize(21.3 * unit)
+ context.fillText("长按识别二维码,立即参团", 40 * unit, 836 * unit);
+
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+ break
+ case 3: //阶梯团的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+ //---文字---
+
+ context.setFillStyle("black")
+ context.setFontSize(24 * unit)
+ context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
+
+ //---绘制中间阶梯的价格---
+ var list = th.data.prom_act.ct_rylist;
+ for (var i = 0; i < list.length; i++) {
+ var item = list[i];
+ var wi = i * 90 * unit;
+ context.font = 'normal';
+ context.setFontSize(16 * unit)
+ context.setFillStyle("red")
+ context.fillText("¥", 40 * unit + wi, 756 * unit);
+ context.setFontSize(22 * unit)
+ var pri = parseFloat(item.price).toFixed(2);
+ context.fillText(pri, 56 * unit + wi, 756 * unit);
+ context.setFillStyle("gray")
+ context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit);
+ }
+ //----------------下面部分----------------
+ // context.setFillStyle("gray")
+ // context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit);
+ // context.setFillStyle("black")
+ // context.font = 'normal bold 18px sans-serif';
+ // context.setFontSize(22 * unit)
+ // context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
+ //context.setFillStyle("gray")
+ context.setFillStyle("black")
+ context.fillText("快来和我一起拼团吧!", 40 * unit, 820 * unit);
+ //context.font = 'normal bold 18px sans-serif';
+ context.setFontSize(22 * unit)
+ context.fillText("长按识别二维码,立即参团", 40 * unit, 850 * unit);
+
+
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+ break
+
+
+ }
+
+
+ //--- 如果是自定义海报的时候 ---
+ if(th.data.poster && parseInt(th.data.poster.style)==2){
+
+ //如果显示会员信息的话
+ if(parseInt(th.data.poster.show_headpic)){
+ //获取坐标
+ var x= parseFloat(th.data.poster.head_x)*2;
+ var y=parseFloat(th.data.poster.head_y)*2;
+ //---绘制圆形要放在最后----
+ context.save();
+ context.beginPath();
+ var h_x = x* unit;
+ var h_y = y * unit;
+ var h_r = 40 * unit;
+ var cx = h_x + h_r;
+ var cy = h_y + h_r;
+ context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
+ context.closePath();
+ context.fill();
+ context.clip();
+ context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
+ context.restore();
+ }
+
+ }else{
+ //---绘制圆形要放在最后----
+ context.save();
+ context.beginPath();
+ var h_x = 60 * unit;
+ var h_y = 24 * unit;
+ var h_r = 40 * unit;
+ var cx = h_x + h_r;
+ var cy = h_y + h_r;
+ context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
+ context.closePath();
+ context.fill();
+ context.clip();
+ context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
+ context.restore();
+ }
+
+
+ //把画板内容绘制成图片,并回调 画板图片路径
+ context.draw(false, function() {
+ setTimeout(function() {
+ wx.canvasToTempFilePath({
+ x: 0,
+ y: 0,
+ width: 750,
+ height: 1217,
+ destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
+ destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
+ canvasId: 'share',
+ success: function(res) {
+ that.setData({
+ shareImgPath: res.tempFilePath,
+ canvasHidden: true
+ })
+ if (!res.tempFilePath) {
+ wx.showModal({
+ title: '提示',
+ content: '图片绘制中,请稍后重试',
+ showCancel: false
+ })
+ return false;
+ }
+ // wx.previewImage({
+ // //将图片预览出来
+ // urls: [that.data.shareImgPath]
+ // });
+ that.setData({
+ showPoster: true,
+ });
+ wx.hideLoading();
+ }
+ })
+ }, 500)
+
+ });
+ });
+ }
+ });
+ },
+
+
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ draw_Text: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
+ var lineWidth = 0;
+ var lastSubStrIndex = 0; //每次开始截取的字符串的索引
+ var han = 0;
+ for (let i = 0; i < str.length; i++) {
+ if (han == 2) return;
+ //lineWidth += ctx.measureText(str[i]).width;
+ lineWidth += ut.measureText(str[i], 21.3 * unit);
+ if (lineWidth > canvasWidth) {
+ han++;
+
+ if (han == 2)
+ ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
+ else
+ ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
+
+ initHeight += 22; //22为字体的高度
+ lineWidth = 0;
+ lastSubStrIndex = i;
+ titleHeight += 20;
+ }
+ if (i == str.length - 1) { //绘制剩余部分
+ ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
+ }
+ }
+ },
+
+ // ----视频图片----
+ // 图片计数器
+ swiperChange: function(e) {
+ var that = this;
+ if (e.detail.current > 0) {
+ that.setData({
+ hiddenn: 1,
+ videopicture: 1,
+ })
+ } else {
+ that.setData({
+ hiddenn: 0,
+ videopicture: 0,
+ })
+ }
+ if (e.detail.source == 'touch') {
+ that.setData({
+ current: e.detail.current
+ })
+ }
+ },
+
+ /*---视频相关--*/
+ videopicture: function(e) {
+ var vipi = e.currentTarget.dataset.vipi;
+ this.setData({
+ videopicture: vipi,
+ swiperCurrent: vipi,
+ noon: 0,
+ current: 1
+ });
+ },
+
+ videoPlay: function(e) {
+ var _index = e.currentTarget.id
+ this.setData({
+ _index: _index,
+ noon: 1
+ })
+
+ setTimeout(function() {
+ //将点击视频进行播放
+ var videoContext = wx.createVideoContext(_index)
+ videoContext.play();
+ }, 500)
+ },
+
+
+
+ //--获取头像的本地缓存,回调写法--
+ get_head_temp: function(tt, func) {
+ var ee = this;
+ if (ee.data.share_head) {
+ tt(func);
+ return false;
+ }
+ //---获取分享图片的本地地址,头像和商品图片----
+ var path2 = getApp().globalData.userInfo.head_pic;
+ if (path2 == "") {
+ ee.data.share_head = "../../../images/share/hui_hear_pic.png";
+ tt(func);
+ } else {
+ path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
+ path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
+ wx.getImageInfo({
+ src: path2,
+ success: function(res) {
+ //res.path是网络图片的本地地址
+ ee.data.share_head = res.path;
+ tt(func);
+ },
+ fail: function(res) {
+ ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
+ tt(func);
+ }
+ });
+ }
+ },
+ //--获取商品图片的本地缓存,回调写法--
+ get_goods_temp: function(tt) {
+ var ee = this;
+ if (ee.data.share_goods_img) {
+ tt();
+ return false;
+ }
+ //获取商品是分享图信息
+ wx.getImageInfo({
+ src: ee.data.data.original_img,
+ success: function(res) {
+ //res.path是网络图片的本地地址
+ ee.data.share_goods_img = res.path;
+ tt();
+ },
+ fail: function(res) {
+
+ ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
+ tt();
+ }
+ });
+ },
+
+ //--外侧评价的点击效果---
+ clik_evaluate: function(e) {
+ var val = e.currentTarget.dataset.val;
+ this.setData({
+ activeCategoryId: 2,
+ activeCategoryId3: val,
+ comments: null
+ });
+ this.requestComments_new();
+ },
+
+ //--跳转到商品详情页面--
+ go_goods: function(e) {
+ var gid = e.currentTarget.dataset.gid;
+ var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid;
+ getApp().goto(url);
+ },
+
+ //--跳转到支付尾款界面--
+ go_pay_wk: function() {
+ var url = "/pages/cart/cart_wk/cart_wk?order_id=" + this.data.wk_order_id;
+ getApp().goto(url);
+ },
+
+ pop_err_img: function(e) {
+ var txt = e.currentTarget.dataset.errorimg;
+ var ob = {};
+ ob[txt] = this.data.iurl + "/miniapp/images/default_g_img.gif";
+ this.setData(ob);
+ },
+
+ //--调用更新阶梯团的接口--
+ update_jiti: function(id) {
+ var th = this;
+ //--更新阶梯团--
+ getApp().request.put("/api/weshop/teamgroup/updateTeamOrder/" + os.stoid + "/" + id, {
+ success: function(ee) {
+ //--等于0是要去支付尾款,接口调用失败,就要去查看参团详情--
+ if (ee.data.code == 0) {
+ th.setData({
+ user_order_pt_state: 3,
+ });
+ } else if (ee.data.code == -1) {
+ th.setData({
+ user_order_pt_state: 2,
+ });
+ }
+ }
+ })
+ },
+ // 选择门店
+ choice_store: function(ee) {
+ var th = this;
+ var ind=ee.currentTarget.dataset.ind;
+ var bconfig = th.data.bconfig;
+
+ if(!th.data.only_pk && !th.data.def_pickpu_list){
+ getApp().confirmBox("门店库存不足", null, 25000, !1);
+ return false;
+ }
+
+ if(th.data.only_pk && !th.data.only_pk.length){
+ getApp().confirmBox("门店库存不足", null, 25000, !1);
+ return false;
+ }
+ if(th.data.def_pickpu_list && !th.data.def_pickpu_list.length){
+ getApp().confirmBox("门店库存不足", null, 25000, !1);
+ return false;
+ }
+
+
+ if (bconfig && bconfig.is_sort_storage) {
+ wx.getLocation({
+ type: 'gcj02',
+ success: function(res) {
+
+ th.data.lat = res.latitude;
+ th.data.lon = res.longitude;
+ th.data.is_get_local_ok = 1;
+ th.setData({
+ is_gps: 1
+ });
+ //th.onShow();
+ th.get_sto(th.data.is_normal);
+ },
+ fail: function(res) {
+ //th.onShow();
+ th.data.is_get_local_ok = 1;
+ th.get_sto(th.data.is_normal);
+ if (res.errCode == 2) {
+ th.setData({
+ is_gps: 0
+ });
+ if (th.data.is_gps == 0) {
+ getApp().confirmBox("请开启GPS定位", null, 25000, !1);
+ }
+ } else {
+ th.setData({
+ is_gps: "3"
+ });
+ }
+
+ }
+ })
+ }else{
+ th.data.is_get_local_ok = 1;
+ th.get_sto(th.data.is_normal);
+ }
+
+ if(ind!=undefined && ind!=null ){
+ this.setData({
+ open_ind_store: ind,
+ store: 1,
+ openSpecModal: !1,
+ openSpecModal_pt: !1
+ })
+ }else{
+ this.setData({
+ store: 1,
+ openSpecModal: !1,
+ openSpecModal_pt: !1
+ })
+ }
+ },
+ //关闭选择门店
+ close_popup: function(e) {
+ var th=this;
+ this.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ fir_pick_index:0,
+ sec_pick_index:0
+ })
+
+ var openindstore=this.data.open_ind_store;
+ if (openindstore == 1) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ } else if (openindstore == 2) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ }
+ else if (openindstore == 4) { //4就是拼团
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ }
+ else {
+ th.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0
+ })
+ }
+
+
+ },
+
+ //选择更多门店
+ more_store: function() {
+ this.setData({
+ sort_store: 1
+ });
+ },
+ sort_store: function() {
+
+ },
+ // 返回按钮
+ returns: function() {
+ this.setData({
+ sort_store: 0,
+ choice_sort_store: 0
+ });
+ },
+ //---选择分类门店---
+ choice_sort_store: function(e) {
+ var index = e.currentTarget.dataset.index;
+ var region_name = e.currentTarget.dataset.region;
+ var item = this.data.all_sto[index];
+ this.setData({
+ region_name: region_name,
+ sort_store: 0,
+ choice_sort_store: 1,
+ sec_sto: item,
+ sec_pick_index: 0
+ });
+ },
+
+ choose_for_store_fir: function(e) {
+ var index_c = e.currentTarget.dataset.ind;
+ var th=this;
+ th.setData({
+ fir_pick_index: index_c
+ })
+
+ },
+
+ //如果开启线下库存,已经急速库存才会使用
+ async check_the_pick(item,func){
+ var th=this;
+ var goodsinfo=th.data.sele_g;
+ var erpwareid=goodsinfo.erpwareid;
+ var plist=null;
+ var lock=0;
+
+ //---如果是活动的时候,同时不是普通购买---
+ if((th.data.prom_type==1 || th.data.prom_type==6 || th.data.prom_type==4) && !th.data.is_normal ) {
+ func(); return false;
+ }
+
+ if(this.data.sales_rules!=2){
+ func();
+ }else{
+
+ //先读取门店的lock
+ await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
+ data:{store_id:os.stoid,wareId:goodsinfo.goods_id,storageId:item.pickup_id,pageSize:1000}
+ }).then(res=>{
+ if(res.data.code==0 && res.data.data.total>0){
+ for(var i in res.data.data.pageData )
+ lock+=res.data.data.pageData[i].outQty;
+ }
+ })
+ //读取线下的门店库存
+ await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
+ data:{storageNos:item.pickup_no,wareIds:encodeURIComponent(erpwareid),storeId:os.stoid}
+ }).then(res=>{
+ if(res.data.code==0 && res.data.data.total>0){
+ plist=res.data.data.pageData[0];
+ }
+ })
+
+ if(plist && plist.CanOutQty-lock>0){
+ item.CanOutQty=plist.CanOutQty-lock;
+ func();
+ return false;
+ }
+ getApp().my_warnning(item.pickup_name+"库存不足!", 0, th);
+
+ }
+ },
+
+
+ //确定def_pick为选择的门店
+ sure_pick: function(e) {
+ var th = this;
+ var item = null;
+ var openindstore = th.data.open_ind_store;
+
+ if (th.data.choice_sort_store == 0) {
+ var index = th.data.fir_pick_index;
+ if (th.data.is_show_sto_cat == 1) {
+ item = th.data.def_pickpu_list[index];
+ } else {
+ item = th.data.only_pk[index]; //当没有门店分类的时候
+ }
+
+ } else {
+ var index = th.data.sec_pick_index;
+ item = th.data.sec_sto.s_arr[index];
+ }
+
+ //判断门店的配送方式是不是匹配
+ var g_distr_type = th.data.sele_g.distr_type;
+ if(item.distr_type!=0 && g_distr_type!=0 && item.distr_type!=g_distr_type){
+ wx.showToast({
+ title: "门店配送方式不匹配",
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
+
+ //--回调函数的用法--
+ th.check_the_pick(item,function(){
+ th.setData({
+ def_pick_store: item,
+ sto_sele_name: item.pickup_name,
+ sto_sele_id: item.pickup_id,
+ sto_sele_distr: item.distr_type,
+ store: 0,
+ choice_sort_store: 0,
+ fir_pick_index: 0
+ });
+
+ if (openindstore == 1) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ } else if (openindstore == 2) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ });
+ }
+ else if (openindstore == 4) { //4就是拼团
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ }
+ else {
+ th.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0
+ })
+ }
+ //如果商品没有其他活动,要取一下线下价格
+ th.get_off_price();
+ })
+ },
+ //---点击二级之后的选择---
+ choose_for_store: function(e) {
+ var index_c = e.currentTarget.dataset.ind;
+ var th=this;
+ th.setData({
+ sec_pick_index: index_c,
+ fir_pick_index: index_c
+ })
+
+ },
+ //把选择的门店设置成默认的门店def_pick
+ set_def_pick: function(e) {
+ var th = this;
+ var item = null;
+ if (th.data.choice_sort_store == 0) {
+ var index = th.data.fir_pick_index;
+ if (th.data.is_show_sto_cat == 1) {
+ item = th.data.def_pickpu_list[index];
+ } else {
+ item = th.data.only_pk[index]; //当没有门店分类的时候
+ }
+ } else {
+ var index = th.data.sec_pick_index;
+ item = th.data.sec_sto.s_arr[index];
+ }
+
+ //判断门店的配送方式是不是匹配
+ var g_distr_type = th.data.sele_g.distr_type;
+ if(item.distr_type!=0 && g_distr_type!=0 && item.distr_type!=g_distr_type){
+ wx.showToast({
+ title: "门店配送方式不匹配",
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
+
+ //先设置之前,要判断是不是有库存
+ th.check_the_pick(item,function(){
+ var store_id = o.stoid;
+ var user_id = getApp().globalData.user_id;
+ var def_pickup_id = item.pickup_id;
+
+ getApp().request.put('/api/weshop/users/update', {
+ data: {
+ user_id:user_id,
+ def_pickup_id:def_pickup_id
+ },
+ success: function(res) {
+ if (res.data.code == 0) {
+ if (th.data.choice_sort_store == 0) th.setData({
+ fir_pick_index: 0
+ });
+ getApp().globalData.pk_store = item;
+ } else {
+ //s.showWarning("设置默认门店地址失败", null, 500, !1);
+ getApp().my_warnning("设置默认门店地址失败",0,th)
+ }
+
+ }
+ });
+
+ th.setData({
+ def_pick_store: item,
+ sto_sele_name: item.pickup_name,
+ sto_sele_id: item.pickup_id,
+ sto_sele_distr: item.distr_type,
+ store: 0,
+ choice_sort_store: 0
+ });
+
+ var openindstore = th.data.open_ind_store;
+ if (openindstore == 1) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ });
+ } else if (openindstore == 2) {
+ th.setData({
+ openSpecModal: !0,
+ openSpecModal_ind: openindstore,
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ });
+ }
+ else if (openindstore == 4) { //4就是拼团
+ th.setData({
+ openSpecModal_pt: 1, //打开拼团购买界面
+ store: 0, //关闭门店
+ choice_sort_store: 0, //关闭门店2级
+ sort_store: 0, //关闭门店2级
+ });
+ }
+
+ else {
+ th.setData({
+ store: 0,
+ choice_sort_store: 0,
+ sort_store: 0,
+ })
+ }
+
+ //如果商品没有其他活动,要取一下线下价格
+ th.get_off_price();
+
+ })
+ },
+
+ wait_for_store_config: function() {
+ var th = this;
+ var t_time = setInterval(function() {
+ if (th.data.bconfig == null) false;
+ var e = th.data.bconfig;
+ if (e && e.is_sort_storage) {
+ wx.getLocation({
+ type: 'gcj02',
+ success: function(res) {
+ th.data.lat = res.latitude;
+ th.data.lon = res.longitude;
+ th.data.is_get_local_ok = 1;
+ },
+ fail: function(res) {
+ if (res.errCode == 2) {
+ th.setData({
+ is_gps: 0
+ });
+ if (th.data.is_gps == 0) {
+ getApp().confirmBox("请开启GPS定位", null, 10000, !1);
+ }
+
+ } else {
+ th.setData({
+ is_gps: "3"
+ });
+ }
+
+ th.data.is_get_local_ok = 1;
+ }
+ })
+ } else {
+ th.data.is_get_local_ok = 1;
+ }
+ clearInterval(t_time);
+ }, 500)
+ },
+ //显示全部
+ toggleHandler: function(e) {
+ var that = this,
+ index = e.currentTarget.dataset.index;
+ for (var i = 0; i < that.data.comments.length; i++) {
+ if (index == i) {
+ for (var i = 0; i < that.data.comments.length; i++) {
+ that.data.comments[index].auto = true;
+ that.data.comments[index].seeMore = false;
+ }
+ }
+ }
+ that.setData({
+ comments: that.data.comments
+ })
+ },
+
+ //收起更多
+ toggleContent: function(e) {
+ var that = this,
+ index = e.currentTarget.dataset.index;
+ for (var i = 0; i < that.data.comments.length; i++) {
+ if (index == i) {
+ that.data.comments[index].auto = true;
+ that.data.comments[index].seeMore = true;
+ }
+ }
+ that.setData({
+ comments: that.data.comments
+ })
+ },
+
+ //--- 获取卡类列表 ---
+ getPlusCardType: function (func) {
+ var storid = os.stoid;
+ var th = this;
+ var user=getApp().globalData.userInfo;
+ if(!user) return false;
+ getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => {
+ var plusCard = res.data.data;
+ var arr = [1219, 2089, 3031];
+ var new_arr = new Array();
+ var card_name_map=new Map();
+ for (var i = 0; i < plusCard.length; i++) {
+ if((user.card_field==null || user.card_field=="") && plusCard[i].IsStopBuy==true) continue;
+ var name="card"+plusCard[i].CorrPrice.toLowerCase();
+ card_name_map.set(name,plusCard[i].CardName);
+ }
+
+ var ob={"card_list":plusCard,"name_map":card_name_map};
+ func(ob);
+ })
+ },
+
+ go_plus:function(){
+ getApp().goto("/pages/user/plus/plus");
+ },
+ go_card_info:function(){
+ getApp().goto("/pages/user/cardinfo/cardinfo");
+ },
+ //-- 根据ID拿出门店 --
+ get_pick_from_list(pid){
+ var all_pick_list=this.data.all_pick_list;
+ for(var i in all_pick_list){
+ var item=all_pick_list[i];
+ if(item.pickup_id==pid){
+ return item;
+ }
+ }
+ },
+ //-----显示优惠券的时候情况-----
+ show_more_cx:function () {
+ if(this.data.is_more_cx){
+ this.setData({is_more_cx:0});
+ }else{
+ this.setData({is_more_cx:1});
+ }
+ },
+
+ //----跳转到搭配购买----
+ go_prom_list:function () {
+
+ var url= "../../../packageA/pages/prom_list/prom_list?goods_id="+this.data.gid;
+ var room_id= getApp().globalData.room_id;
+ if(room_id && this.data.gid==getApp().globalData.room_goods_id){
+ url+="&room_id="+room_id;
+ }
+ wx.navigateTo({ url: url,})
+ },
+
+ //---检查有没有优惠活动---
+ check_is_youhui:function(gid){
+ var th=this;
+ //调用接口判断订单优惠,
+ getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+gid+"/0", {}).then(res => {
+ if(res.data.code==0){
+ var r_data=res.data.data;
+ var max=0,min=0;
+ if(r_data.collocationList){
+ for(var i in r_data.collocationList){
+ if(max==0) max=r_data.collocationList[i].price;
+ if(min==0) min=r_data.collocationList[i].price;
+
+ if(maxparseFloat(r_data.collocationList[i].price)) min=r_data.collocationList[i].price;
+ }
+ r_data.collocationPromList.max=(max+th.data.data.shop_price).toFixed(2);
+ r_data.collocationPromList.min=(min+th.data.data.shop_price).toFixed(2);
+ }
+ th.setData({
+ order_prom:r_data.promOrder,
+ collocationGoods:r_data.collocationPromList,
+ prom_goods:r_data.promGoodsLists,
+ })
+
+ th.is_show_more_buy();
+ }
+ })
+ },
+
+ closePoster() {
+ this.setData({
+ showPoster: false,
+ });
+ },
+
+ // 保存图片到手机
+ savePic() {
+ console.log('保存图片');
+ var self = this;
+ // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
+ this.getSetting().then((res) => {
+ // 判断用户是否授权了保存到相册的权限,如果没有发起授权
+ if (!res.authSetting['scope.writePhotosAlbum']) {
+ this.authorize().then(() => {
+ // 同意授权后保存下载文件
+ this.saveImage(self.data.shareImgPath)
+ .then(() => {
+ self.setData({
+ showPoster: false
+ });
+ });
+ })
+ } else {
+ // 如果已经授权,保存下载文件
+ this.saveImage(self.data.shareImgPath)
+ .then(() => {
+ self.setData({
+ showPoster: false
+ });
+ });
+ }
+
+ })
+ },
+
+ // 获取用户已经授予了哪些权限
+ getSetting() {
+ return new Promise((resolve, reject) => {
+ wx.getSetting({
+ success: res => {
+ resolve(res)
+ }
+ })
+ })
+ },
+
+ // 发起首次授权请求
+ authorize() {
+ // isFirst 用来记录是否为首次发起授权,
+ // 如果首次授权拒绝后,isFirst赋值为1
+ let isFirst = wx.getStorageSync('isFirst') || 0;
+ return new Promise((resolve, reject) => {
+ wx.authorize({
+ scope: 'scope.writePhotosAlbum',
+ // 同意授权
+ success: () => {
+ resolve();
+ },
+ // 拒绝授权,这里是用户拒绝授权后的回调
+ fail: res => {
+ if(isFirst === 0) {
+ wx.setStorageSync('isFirst', 1);
+ wx.showToast({
+ title: '保存失败',
+ icon: 'none',
+ duration: 1000
+ })
+ } else {
+ this.showModal();
+ }
+ console.log('拒绝授权');
+ reject();
+ }
+ })
+ })
+ },
+
+
+ // 保存图片到系统相册
+ saveImage(saveUrl) {
+ var self = this;
+ return new Promise((resolve, reject) => {
+ wx.saveImageToPhotosAlbum({
+ filePath: saveUrl,
+ success: (res) => {
+ wx.showToast({
+ title: '保存成功',
+ duration: 1000,
+ });
+ self.setData({
+ showPlaybill: 'true'
+ });
+ resolve();
+ },
+ fail: () => {
+ wx.showToast({
+ title: '保存失败',
+ duration: 1000,
+ });
+ }
+ })
+ })
+ },
+
+ previewImage() {
+ wx.previewImage({
+ //将图片预览出来
+ urls: [this.data.shareImgPath]
+ });
+ },
+
+ is_show_more_buy:function(){
+ var prom_goods=this.data.prom_goods;
+ var per_price=this.data.sele_g.shop_price
+ if(this.data.card_field && this.data.sele_g[this.data.card_field]>0){
+ per_price=this.data.sele_g[this.data.card_field];
+ }
+ var all_price=per_price*this.data.goodsInputNum;
+ var con=null;
+ for(var i in prom_goods){
+ var item=prom_goods[i];
+ if(item.prom_type==1){
+ if(item.condition>this.data.goodsInputNum) {
+ con=item;
+ con.need=(item.condition-this.data.goodsInputNum)+"件";
+ break;
+ }
+ }else{
+ if(item.condition>all_price){
+ con=item;
+ con.need=(item.condition-all_price)+"元";
+ break;
+ }
+ }
+ }
+
+ this.setData({hui_condition:con});
+
+ },
+
+ //-- 积分购 --
+ go_pay_integral:function(){
+ this.get_sto(0)
+ this.setData({openSpecModal_inte:1});
+ },
+ //-- 积分购普通购买 --
+ go_pay_integral_normal:function(){
+ this.get_sto(1)
+ this.setData({openSpecModal_inte_normal:1});
+ },
+
+ closeSpecModal_inte:function(){
+ this.setData({openSpecModal_inte:0});
+ } ,
+ closeSpecModal_inte_normal:function(){
+ this.setData({openSpecModal_inte_normal:0});
+ },
+
+ addCart_inte:function(t){
+ this.add_cart_func_inte(t);
+ },
+
+
+
+
+ onShareTimeline() {
+ return {
+ title:this.data.data.goods_name + '-' + getApp().globalData.config.store_name,
+ imageUrl:this.data.gallery[0].image_url,
+ }
+ },
+
+
+
+});
+
+
diff --git a/packageA/pages/goodsInfo/goodsInfo.json b/packageA/pages/goodsInfo/goodsInfo.json
new file mode 100644
index 0000000..ab98d72
--- /dev/null
+++ b/packageA/pages/goodsInfo/goodsInfo.json
@@ -0,0 +1,9 @@
+{
+ "navigationBarTitleText": "卡项详情",
+ "enablePullDownRefresh": false,
+ "usingComponents": {
+ "nav_box": "/components/nav_box/nav_box",
+ "warn": "/components/long_warn/long_warn",
+ "goods_recommend": "/components/goods_list/goods_list"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/goodsInfo/goodsInfo.wxml b/packageA/pages/goodsInfo/goodsInfo.wxml
new file mode 100644
index 0000000..f584c32
--- /dev/null
+++ b/packageA/pages/goodsInfo/goodsInfo.wxml
@@ -0,0 +1,1472 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ¥{{filters.toFix(data.shop_price,2)}}
+
+ {{data.goods_name}}
+
+
+
+
+ 耗时:{{data.sales_sum}}
+ 次数:{{data.disc}}
+
+ 有效天数:{{data.validDays}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 详情
+
+
+ {{data.serviceContent}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 客服
+
+
+
+
+
+ 收藏
+
+
+
+
+ {{cartGoodsNum}}
+ 购物车
+
+
+ 立即购买
+
+
+
+
+
+
+
+ 加入购物车
+ 立即购买
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{data.goods_name}}
+
+
+
+ ¥
+
+ {{sele_g[card_field]}}
+
+ {{data.shop_price}}
+
+ ¥{{prom_price}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 购买数量
+
+ -
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 选择门店
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/packageA/pages/goodsInfo/goodsInfo.wxss b/packageA/pages/goodsInfo/goodsInfo.wxss
new file mode 100644
index 0000000..388ad0f
--- /dev/null
+++ b/packageA/pages/goodsInfo/goodsInfo.wxss
@@ -0,0 +1,2735 @@
+@import "../../../utils/wxParse/wxParse.wxss";
+.container { margin-bottom: 100rpx; overflow: hidden;}
+image {
+ vertical-align: top;
+}
+.goods-detail{overflow: hidden}
+
+.type-navbar {
+ display: flex;
+ justify-content: center;
+ width: 100%;
+ /* height: 80rpx; */
+ /* margin-bottom: 20rpx; */
+ background-color: #fff;
+ /* border-bottom: 1rpx #fafafa solid; */
+}
+.type-box {
+ width: 25%;
+ box-sizing: border-box;
+ font-size: 28rpx;
+ line-height: 76rpx;
+ padding: 0 20rpx;
+ text-align: center;
+ display: inline-block;
+ overflow: hidden;
+}
+.type-navbar-item {
+ /* border-bottom: 4rpx solid #fff; */
+ display: flex;
+ justify-content: center;
+ width: 100%;
+}
+.type-item-on {
+ color: #F95D74;
+ font-weight: bold;
+ /* border-bottom: 4rpx solid #F95D74; */
+ position: relative;
+}
+.type-item-on:after {
+ content: '';
+ position: absolute;
+ width: 50%;
+ height: 4rpx;
+ background-color: #F95D74;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ margin: 0 auto;
+}
+.swiper_box {
+ width: 100%;
+ height: 750rpx;
+}
+.goods-title {
+ display: flex;
+ justify-content: space-between; overflow: hidden;
+ /* height: 108rpx; */
+}
+.goods-name {
+ width: 560rpx;
+ line-height: 46rpx;
+ font-size: 32rpx;
+ font-weight: bold;
+ color: #333;
+ margin-top: 30rpx;
+ margin-bottom:30rpx;
+ flex: 1;
+ text-align: justify;
+}
+
+.goods-collect {
+ width: 112rpx;
+ padding-top: 30rpx;
+}
+
+.collect-img {
+ width: 50rpx;
+ height: 44rpx;
+ margin: 0 auto;
+ overflow: hidden;
+}
+
+.collect-des {
+ text-align: center;
+ font-size: 24rpx;
+ color: #333;
+}
+
+.goods-price {
+ font-size: 60rpx;
+ /* padding: 20rpx 34rpx; */
+ padding:0rpx 34rpx;
+ /* line-height: 60rpx; */
+ color: #999;
+
+ /* margin-top: 46rpx; */
+ margin-top:26rpx;
+ padding-bottom:20rpx;
+}
+
+.prom-info {
+ margin: 10rpx 0;
+ color: #f23030;
+}
+
+.prom-info>.prom-type {
+ color: white;
+ background-color: #f23030;
+ margin-right: 14rpx;
+ padding: 2rpx 8rpx;
+ border-radius: 4rpx;
+}
+.market-price {
+ display: flex;
+ margin-left: -5rpx;
+}
+
+.market-price .yuan{
+ top:24rpx;
+ font-size: 36rpx
+}
+
+.market-price>view>text {
+ text-decoration: line-through;
+}
+
+.market-price>.yj{
+ color: #999999; font-size: 26rpx;margin-left: 16rpx;position: relative;top:30rpx;
+}
+
+.goods-price>.tm{ color: #999999; font-size: 26rpx;margin-top: 10rpx;}
+
+.goods-num {
+ display: flex;
+ font-size: 24rpx;
+ justify-content: space-between;
+}
+
+.goods-detail .twen{
+ background: #fff;height: 60rpx; line-height: 60rpx; font-size: 30rpx;padding-left: 30rpx;display: flex;
+}
+.goods-detail .twen .img{ width: 32rpx; height: 32rpx; margin-left: 200rpx; background: #fff}
+.goods-detail .twen image.img{vertical-align:auto;}
+
+
+.logistics-item {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 90rpx;
+ /*border-bottom: 1px solid #f5f5f5;*/
+ font-size: 32rpx;
+ color: #666;
+}
+.logistics-item .small{color: #999; font-size: 24rpx;}
+
+.item-title { width: 180rpx;}
+.item-mes {
+ color: #333; width: 420rpx;
+ height: 90rpx; line-height: 90rpx;
+}
+.item-img { width: 32rpx; height: 32rpx;}
+.prom-item {
+ color: #f23030;
+ border: 1px solid #f23030;
+ border-radius: 18rpx;
+ line-height: 40rpx;
+ height: 40rpx;
+ padding: 2rpx 8rpx;
+}
+
+.guarantee {
+ justify-content: space-around;
+}
+
+.ico-item {
+ width: 32rpx;
+ height: 32rpx;
+ margin-right: 10rpx;
+}
+
+.guarantee>view {
+ display: flex;
+ align-items: center;
+ height: 32rpx;
+ color: #666;
+}
+
+.user-comment {
+ margin: 10rpx 0;
+ font-size: 28rpx;
+}
+
+.good-comment,.comment-num {
+ display: flex;
+}
+
+.recommend {
+ background-color: #fff;
+ border-bottom: 1px solid #ddd;
+ padding-bottom: 20rpx;
+}
+
+.recommend-title {
+ height: 70rpx;
+ line-height: 70rpx;
+ font-size: 28rpx;
+ padding: 0 30rpx;
+}
+
+.recommend-ul {
+ display: flex;
+ justify-content: flex-start;
+}
+
+.recommend-ul .li {
+ width: 25%;
+ box-sizing: border-box;
+ text-align: center;
+ font-size: 28rpx;
+ color: #333;
+}
+
+.li-img {
+ width: 120rpx;
+ height: 120rpx;
+ margin: 0 auto;
+}
+
+.li-title {
+ height: 58rpx;
+ line-height: 30rpx;
+ margin: 10rpx 0;
+}
+
+.comment-item {
+ background-color: #fff;
+ font-size: 28rpx;
+}
+
+.comment-title {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ height: 102rpx;
+ margin: 0 30rpx;
+ color: #333;
+ border-bottom: 1px solid #eee;
+}
+
+.user-name {
+ display: flex;
+ align-items: center;
+}
+
+.user-pic {
+ width: 54rpx;
+ height: 54rpx;
+ margin-right: 10rpx;
+ border-radius: 50%;
+ overflow: hidden;
+}
+
+.stars {
+ float: left;
+ display: flex;
+ height: 42rpx;
+ line-height: 42rpx;
+ margin: 15rpx 0;
+ width: 200rpx;
+}
+
+.star {
+ width: 26rpx;
+ height: 26rpx;
+ margin-right: 5rpx;
+}
+
+.state-spec {
+ margin: 15rpx 0;
+ float: right;
+ font-size: 24rpx;
+ color: #666;
+ width: 460rpx;
+ text-align: right;
+}
+
+.comment-cont {
+ padding: 0 30rpx 30rpx;
+ border-bottom: 1px solid #eee;
+}
+
+.comment-mes {
+ line-height: 42rpx;
+}
+
+.img-ul {
+ display: flex;
+ flex-wrap: wrap;
+}
+
+.img-li {
+ width: 150rpx;
+ height: 150rpx;
+ margin-top: 8rpx;
+ margin-right: 10rpx;
+}
+
+.comment-btn {
+ height: 60rpx;
+ padding: 20rpx 30rpx;
+}
+
+.comment-btn .btn {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ height: 60rpx;
+ width: 45%;
+ border: 1px solid #eee;
+}
+
+.comment-btn .btn-img {
+ width: 30rpx;
+ height: 28rpx;
+ margin: 0 10rpx;
+}
+
+.reply-ul {
+ margin-top: 20rpx;
+}
+
+.reply-li {
+ color: #aaa;
+}
+
+.join-cart {
+ position: fixed;
+ left: 0;
+ bottom: 0;
+ display: flex;
+ width: 100%;
+ height: 100rpx;
+ background-color: #fff;
+ z-index: 9;
+ border-top: 4rpx solid #eee;
+
+}
+
+.join-cart>view {
+ width: 29%;
+}
+
+.join-cart>.new_split {
+ width: 13%;
+ text-align: center;
+ padding: 0;
+ margin: 0;
+}
+
+.cart-ico {
+ font-size: 24rpx;
+ color: #333;
+}
+
+.shopping-cart {
+ position: relative;
+}
+
+.cs-img {
+ width: 45rpx;
+ height: 40rpx;
+ margin-top: 15rpx;
+}
+
+.sc-img {
+ width: 42rpx;
+ height: 40rpx;
+ margin-top: 15rpx;
+}
+
+.cart-num {
+ position: absolute;
+ left: 50%;
+ top: 1rpx;
+ width: 40rpx;
+ height: 40rpx;
+ line-height: 40rpx;
+ text-align: center;
+ border-radius: 50%;
+ color: #fff;
+ background-color: rgba(217,81,99,0.9);
+}
+
+.cart-btn {
+ font-size: 28rpx;
+ color: #fff;
+ line-height: 70rpx;
+ margin-top: 16rpx;
+ text-align: center;
+
+
+}
+
+.join-btn {
+ background-color: #ffb03f;
+ height: 70rpx;
+border-radius: 55rpx 0rpx 0rpx 55rpx;
+margin-top: 16rpx;
+
+
+}
+
+view.cart-btn-lg {
+ width: 50%;
+}
+
+.buy-btn {
+ background-color: #f23030;
+ height: 70rpx;
+border-radius: 0 56rpx 55rpx 0;
+
+}
+
+.buy-btn-all{
+ background-color: #f23030;
+ height: 70rpx;
+ border-radius: 56rpx;
+}
+
+
+.toTop {
+ position: fixed;
+ z-index: 3;
+ right: 20rpx;
+ bottom: 160rpx;
+ width: 68rpx;
+ height: 68rpx;
+ border: 1px solid #ddd;
+ border-radius: 50%;
+ overflow: hidden;
+ cursor: pointer;
+}
+
+.comment-more {
+ height: 56rpx;
+ line-height: 56rpx;
+ font-size: 26rpx;
+ color: #999;
+ text-align: center;
+ background-color: #eee;
+}
+
+.goods-more {
+ background-color: #fff;
+}
+
+.goods-norms {
+ background-color: #fff;
+}
+
+.type-navbar2 {
+ display: flex;
+ height: 72rpx;
+ border-top: 1px solid #ddd;
+ border-bottom: 1px solid #ddd;
+}
+
+.type-box2 {
+ width: 50%;
+ font-size: 26rpx;
+ line-height: 72rpx;
+ text-align: center;
+ overflow: hidden;
+}
+
+.type-item2-on {
+ color: #f23030;
+}
+
+.parameter {
+ padding: 40rpx 0;
+}
+
+.table {
+ width: 698rpx;
+ margin: 0 auto;
+ border: 1px solid #ddd;
+ border-bottom: none;
+}
+
+.tb {
+ width: 100%;
+ min-height: 69rpx;
+ line-height: 69rpx;
+ border-bottom: 1px solid #ddd;
+ font-size: 28rpx;
+ text-align: center;
+ color: #333;
+}
+
+.th-thitle {
+ font-weight: bold;
+ background-color: #f5fafe;
+}
+
+.td-cont {
+ display: flex;
+}
+
+.td-title {
+ width: 259rpx;
+ background-color: #f5fafe;
+ border-right: 1px solid #ddd;
+}
+
+.td-text {
+ width: 439rpx;
+}
+
+.goods-comment {
+ background-color: #fff;
+}
+
+.type-navbar3 {
+ display: flex;
+ height: 88rpx;
+ border-top: 1px solid #ddd;
+ border-bottom: 1px solid #ddd;
+ padding: 10rpx 0;
+}
+
+.type-box3 {
+ width: 20%;
+ font-size: 30rpx;
+ line-height: 44rpx;
+ text-align: center;
+ overflow: hidden;
+}
+
+.type-item3-on {
+ color: #f23030;
+}
+
+.spec-model {
+ position: fixed;
+ bottom: 0;
+ z-index: 20;
+ background: white;
+ width: 100%;
+ /* padding: 0 30rpx; */
+ font-size: 32rpx;
+ box-sizing: border-box;
+ border-radius: 20rpx;
+ /* height: 72%; */
+}
+
+.spec-model .pding{padding: 0 30rpx;}
+
+.spec-goods {
+ padding: 30rpx 0 20rpx;
+ /* float: left; */
+ display: flex;
+ width: 100%;
+ border-bottom:2rpx solid #eee;
+}
+
+.spec-img {
+ /* float: left; */
+ height: 186rpx;
+ width: 186rpx;
+ border: 4rpx solid #eee
+}
+
+.spec-goods-info {
+ /* float: left; */
+ padding: 0 25rpx;
+ width: 400rpx;
+}
+
+.spec-goods-name {
+ font-size: 30rpx;
+ line-height: 35rpx;
+ height: 70rpx;
+ margin: 15rpx 20rpx 25rpx 0;
+ overflow: hidden;
+ text-overflow: ellipsis;color: #333;
+}
+
+.spec-goods-price {
+ color: #d60021;
+ font-size: 33rpx;
+ font-weight: bold;
+}
+
+.spec-goods-stock {
+ margin-top: 3rpx;
+ font-size: 24rpx;
+ color: #999999;
+ margin-right: 15rpx;
+}
+
+.spec-name {
+ clear: both;
+ padding: 20rpx 0;
+ font-size: 30rpx;color: #333;
+}
+
+.quhuo{font-size: 30rpx; color: #000}
+.b_num{
+ display: flex;
+ font-size: 30rpx;
+ color: #333;
+ padding: 20rpx;
+}
+
+.count {
+ position: fixed;
+ display: flex;
+ height: 50rpx;
+ border: 1rpx solid #000;
+ font-size: 28rpx;
+ right: 30rpx;
+}
+
+
+.count>view,.count>input {
+ width: 60rpx;
+ height: 50rpx;
+ line-height: 50rpx;
+ text-align: center;
+}
+.spec_bt{
+ background: fff;color: #333; margin-left: 10rpx;padding: 4rpx 15rpx 4rpx; display: inline-block;
+ border-radius:30rpx;font-size: 24rpx;border: 1rpx solid #ccc; margin: 10rpx; height: 40rpx; line-height: 40rpx;
+}
+.spec_bt.act{background: #d60021;color: #fff;border: 1rpx solid #d60021;}
+.sub {
+ border-right: 1px solid #000;
+}
+
+.add {
+ border-left: 1px solid #000;
+}
+
+.spec-btn {
+ color: black;
+ background-color: white;
+ padding: 10rpx 10rpx;
+ font-size: 26rpx;
+ line-height: 28rpx;
+ float: left;
+ border: 1rpx solid #dedede;
+ margin: 4rpx 10rpx 4rpx 0;
+ border-radius: 4rpx;
+}
+
+.spec-btn-click {
+ color: white;
+ background-color: #f23030;
+ border: 1rpx solid #f23030;
+}
+
+.spec-cart-btns {
+ width: 92%;
+ line-height: 70rpx;
+ margin: 20rpx auto;
+ /* margin-top: 160rpx; */
+ border-radius: 20rpx;
+/* position: fixed;
+bottom: 50rpx;
+left: 4%; */
+}
+
+.spec-cart-btn {
+
+ width:100%;
+ font-size: 30rpx;
+ text-align: center;
+ color: white;
+ border-radius: 40rpx;
+}
+
+.spec-cart-btn.w40 {
+ width: 46%;
+}
+
+.spec-add-cart {
+ background-color: #ffb03f;
+}
+
+.spec-buy {
+ background-color: #f23030;
+ /* margin-left: 34rpx; */
+}
+
+.spec-cart-disable {
+ background: #bbbbbb;
+}
+
+.spec-cart-btn-lg {
+ width: 614rpx;
+}
+
+.prom-model {
+ position: fixed;
+ bottom: 0;
+ z-index: 20;
+ background: white;
+ width: 100%;
+ padding: 0 30rpx 30rpx;
+ font-size: 32rpx;
+ box-sizing: border-box;
+ overflow-x: hidden;
+}
+
+.prom-model .prom-title {text-align: center;margin: 30rpx 0;}
+.prom-model .logistics-item {border: 0;}
+.prom-model .item-mes {width: 500rpx;}
+.integral-btn {width: 100%; padding: 0rpx;margin: 0rpx;}
+.clear{clear: both;}
+.sto_v .title,.sto_v .stitle{ border-top: 1rpx solid #dedede;border-bottom: 1rpx solid #dedede; height: 78rpx; line-height: 78rpx;}
+.sto_v .title .tubiao,.sto_v .stitle .tubiao{width: 32rpx; height: 32rpx; margin-top: 23rpx;}
+.itemlists .item{border-bottom: 1rpx solid #dedede; height: 72rpx; line-height: 72rpx;font-size: 28rpx; margin: 0 10rpx;}
+
+.cshu{margin-bottom: 30rpx; margin-top: 20rpx;}
+.cshu view{color: #999; font-size: 30rpx; margin-left: 26rpx;}
+
+
+/*---活动特殊显示---*/
+.prom_show{height: 120rpx; display: flex;}
+.prom_show .secondkill-img{width: 100%; height: 100%;}
+.prom_show .spike-img{width: 283rpx; height: 57rpx; top:35rpx;
+left:31rpx;}
+.prom_show .stop{ color:#d81731;top: 17rpx;right:65rpx; font-weight:600;}
+.prom_show .start{ color:#009ae2;top: 17rpx;right:65rpx; font-weight:600;}
+.prom_show .timeac { font-size: 32rpx; height: 120rpx; color: #333; }
+.prom_show .timeac.left{width: 66%; color: #fff;background:#f23030;}
+.prom_show .timeac.right{width: 34%;background-color: #d7d7d7; text-align: center}
+
+.prom_show .secview .day{padding-right:10rpx;}
+.prom_show .secview .time-val{width:36rpx;height:36rpx;border-radius:7rpx; line-height: 36rpx;}
+.prom_show .secview .time{margin-right:10rpx; margin-left:10rpx;}
+
+
+.prom_show .timeac.left view{ margin-left: 20rpx}
+.prom_show .timeac.left view.firview{margin-top: 10rpx}
+.prom_show .timeac.left view .tr_line{ text-decoration: line-through; font-size: 28rpx;}
+.prom_show .timeac.left view .bprice{ font-size: 50rpx; }
+
+.prom_show .timeac.right view.firview{margin-top:12rpx; margin-bottom: 10rpx}
+.prom_show .timeac.right view.secview{display: flex; text-align: center; justify-content:center; flex-direction: row;}
+.prom_show .timeac.right view .tui-conutdown-box{
+ /* background: #6b6b6b; */
+ width: auto;
+ /* min-width: 45rpx; */
+ height: 45rpx; color: #c4182e; font-size: 27rpx; text-align: center; line-height: 46rpx;}
+
+.huise{ background:gray}
+.lanse{background:#0199e2}
+
+
+/*------拼单------*/
+.pt_view{ text-align: center; width: 100%; height: 100rpx; line-height: 100rpx; font-size: 26rpx}
+.pt_view .secondkill-img{width: 100%;height: 100%;}
+.pt_fir{ background: #fff;margin-bottom: 10rpx; }
+.pt_fir .pt_fir_title{display: flex; align-items: center; margin-left: 10rpx; margin-top: 20rpx; font-size: 28rpx; position: relative;}
+.pt_fir .pt_fir_title .kt_type{ color: #fff;background:#e9030d; width: 100rpx; line-height: 40rpx; border-radius: 6rpx; margin: 0 10rpx;
+ height: 40rpx; font-size: 24rpx; text-align: center;}
+.pt_fir .pt_fir_title .price{color: #e9030d;font-size: 26rpx;}
+.pt_fir .pt_fir_title .bigw{font-size: 36rpx;}
+.pt_fir .pt_fir_title .tprice{text-decoration: line-through;color: #949494}
+.pt_fir .pt_fir_title .tprice.ml50{margin-left: 50rpx}
+
+.pt_fir .pt_fir_title .js{padding: 0 15rpx;height: 40rpx;background:#e9030d; text-align: center; border-radius: 8rpx; color: #fff; margin-left: 10rpx;}
+.pt_fir .pt_fir_title .tuannum{color: #e9030d; position: absolute; right: 20rpx; font-size: 26rpx;}
+.pding{padding-top: 20rpx;padding-left: 20rpx;height: 81%;
+ padding-right: 20rpx;font-size: 26rpx;color: #ea120f}
+.pdres{margin-left: 10rpx;color: #8f8f94}
+.ptgz{position: relative;font-size: 30rpx;padding-left: 20rpx;margin-top: 10rpx; overflow: hidden }
+.shuxian{width: 6rpx;height: 28rpx; background: #ea120f; display: inline-block;top: 5rpx;position: relative; margin-right: 5rpx}
+.ptgz_an{position: absolute;top:5rpx; right: 6rpx}
+.ptgz_an .arrow-two{width:18rpx;height:18rpx;border-color:#da0b31; margin-top:30rpx;}
+
+.pt_fir.se{height: auto; margin-bottom: 10rpx}
+.t_gz{padding: 10rpx 20rpx; font-size:28rpx }
+
+.pt_fir.se1{height: auto; margin: 0}
+.pt_fir.se2{height: auto; margin: 0;border-top:6rpx solid #eeeeee;border-bottom:2rpx solid #eeeeee;}
+
+.pt_hb{height:78rpx; line-height: 75rpx; position: relative; font-size: 32rpx;overflow: hidden;width:695rpx;margin-left:28rpx;
+ border-bottom: 1rpx solid #E5E5E5 }
+.ptgz_an.xq{font-size: 32rpx; color:#d40024}
+.wf{display: flex; padding: 20rpx 0;}
+.wf .item{width: 24.5%; text-align: center; font-size: 26rpx; color: #666}
+.wf .item .item_txy{position: relative;width: 60rpx; height: 60rpx; background: #ea120f; border-radius: 50%;left: 50%;margin-left: -30rpx;
+ border: 3px #dfdfdf solid; text-align: center;line-height: 60rpx; color: #fff; margin-bottom: 10rpx;}
+.wf .item .item_txy.hs{ background: #cbcbcb;}
+.po{margin-bottom: 20rpx;}
+
+.cart-btn.line-h{ line-height: 26rpx;}
+.cart-btn .fir-v{ margin-top: 10rpx;}
+
+.hyt{ padding: 0 20rpx; font-size: 30rpx; display: flex; align-items:center; margin-top: 10rpx;}
+.hyt .r_f{color: #e9120f;font-size: 26rpx;position: relative;top:3rpx}
+.hyt .byj{color: #e9120f;font-size: 32rpx;position: relative;top:5rpx}
+
+.pt_fir .pt_fir_title.no-mar-b{margin-bottom: 0;padding-bottom: 10rpx; margin-left: 20rpx}
+.pt_fir .pt_fir_title.boder-1{border-bottom: 1rpx #e7e7e7 solid}
+
+.jie_price{padding: 10rpx 30rpx;}
+.jie_price_title{font-size: 30rpx; color: #a26270; margin-bottom: 10rpx}
+.price_list{display: flex; width: 100%;}
+.price_item{width: 25%;font-size: 28rpx; color: #4c336c}
+
+.pt_fir.se2 .zzk-1{margin-top: 23rpx; font-size: 30rpx;position: relative; margin-bottom: 30rpx; border-left:4rpx solid red;margin-left:14rpx;height:30rpx;line-height:30rpx;padding-left:5rpx;}
+.ckgd{position: absolute;top:0;right:57rpx; color:#d70025; font-size: 32rpx;}
+.ckgd .arrow-one{width:18rpx;height:18rpx;border-color:#da0b31;margin-top:5rpx;}
+.bview{
+ position: fixed; top:0; left:0; width: 100%; height: 100%;
+ background-color: rgba(0, 0, 0, 0.5);
+}
+.juzhong{
+ position: fixed; top:0; left:0; width: 100%; height: 100%;
+ display: flex;
+ flex-direction:row;
+ justify-content: center;
+ align-items: center;
+}
+
+.juzhong .xq{ padding: 0 20rpx; background: #fff; font-size: 30rpx; padding-bottom: 20rpx;}
+.juzhong .xq .title{text-align: center; margin: 20rpx 0; position: relative; height: 50rpx;}
+.juzhong .xq .hs1{font-size: 28rpx; color: #ab8f9e}
+.juzhong .xq .title .close{position: absolute;top: 0; right: 0; width: 45rpx; height: 45rpx;}
+
+.pt_qd{margin-top: 40rpx; height: auto;}
+.spec-cart-btn.w100{width: 95%; margin-left: 0; height: 75rpx; line-height:75rpx;margin: auto; }
+
+.sto_v{color: #333;}
+.ellipsis{overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
+
+
+/*---多少人参加团--*/
+.group {
+ padding-top:25rpx;
+ width: 91%;
+ min-height: 92rpx;
+ border-bottom:2rpx solid #eee;
+ padding-bottom:25rpx;
+
+}
+
+.group .group-list {
+
+ height: 90rpx;
+ padding: 0 130rpx 0 100rpx;
+ width: 470rpx;
+
+ position: absolute;
+}
+
+.group .group-list .gtou {
+ width: 80rpx;
+ height: 80rpx;
+ float: left;
+ position: relative;
+ top: 6rpx;
+ left: -96rpx;
+}
+
+.group .group-list .gtou image {
+ width: 80rpx;
+ height: 80rpx;
+ border-radius: 200rpx;
+ background-color: green;
+}
+
+.group .group-list .gdn {
+ float: left;
+ font-size: 26rpx;
+ line-height: 48rpx;
+ height: 48rpx;
+ width: 168rpx;
+ position: relative;
+ left: -80rpx;
+ top:20rpx;
+ font-weight:600;
+}
+
+.group .group-list .ghaicha {
+ width:300rpx;
+ font-size: 27rpx;
+ margin-left:180rpx;
+ top:13rpx;
+ left:-3rpx;
+ font-weight:600;
+
+
+}
+
+.group .group-list .ghaicha .gred {
+ height: 48rpx;
+ width: 300rpx;
+}
+
+.gsj {
+ float: left;
+ color: #8f8f94;
+}
+
+.group .group-list .cjt {
+ height:42rpx;
+ width: 137rpx;
+ position: absolute;
+ right: 4rpx;
+ top:25rpx;
+ line-height: 42rpx;
+ font-size: 24rpx;
+ color: #fff;
+ border:2rpx solid #d60024;
+ background-color:#d60024;
+ border-radius:25rpx;
+
+}
+
+.gbody {
+ background-color: white;
+}
+.t_show{overflow: hidden; display: flex; width: 300rpx; color: #292929; line-height: 36rpx;font-size:26rpx;
+}
+.join-cart>view.set_width {
+ width:58%;
+}
+
+/*秒杀样式zwp*/
+#zwpMs{
+ width: 31%;
+ color: #fff;
+ background: url(https://mshopimg.yolipai.net/miniapp/images/user/bgred.png) no-repeat;
+ background-size: 100% 60px;
+}
+
+
+/*--------- 修改后的样式 -----------*/
+.elli{
+ overflow : hidden;
+ text-overflow: ellipsis;
+ display: -webkit-box;
+ -webkit-line-clamp: 2;
+ -webkit-box-orient: vertical;
+}
+.one_elli{
+ overflow : hidden;
+ text-overflow: ellipsis;
+ white-space:nowrap;
+}
+
+.tuwen_title{ height: 86rpx; background-color:#eeeeee; margin-bottom: 32rpx; position: relative;
+ display: flex; justify-content: center;align-items: center; }
+
+.tuwen_title .g_line{
+ width:496rpx;
+ height:1rpx;
+ border-bottom:#ababab 1rpx solid;
+}
+.tuwen_title .center_s{
+ width: 124rpx; position: absolute; height: 34rpx; background-color:#eeeeee; font-size: 32rpx; display: flex;
+ overflow: hidden; justify-content: center;align-items: center;
+}
+.tuwen_title .center_s image{ width: 34rpx; height: 26rpx; margin-right: 10rpx}
+.t_g_info{ margin: 0 34rpx;margin-bottom: 20rpx; display: flex; align-items: center }
+.red_shu{ width: 10rpx; height: 36rpx; background-color:#da0035; margin-right: 8rpx; }
+
+.tb-l{ line-height: 96rpx;}
+.table_s{ border:#e4e4e4 1rpx solid; width: 682rpx; margin: 0 34rpx;font-size: 30rpx;}
+.tb_item{display: flex; height: 96rpx; border-bottom: 1rpx solid #e4e4e4 }
+.item_left{width: 214rpx; height: 100%; background: #f9f9f9 ;border-right:1rpx solid #e4e4e4} .item_left text{ margin-left: 44rpx;}
+.item_right{width: 468rpx; height: 100%; overflow : hidden;white-space:nowrap;
+ text-overflow: ellipsis;}
+.item_right text{ margin-left: 66rpx;}
+
+.bzfu_img{ width: 164rpx; height:34rpx; margin-right: 18rpx; margin-left: 12rpx }
+ .bz_view{ height:100rpx; padding: 0 34rpx 0 13rpx; color: #333; font-size: 28rpx;
+ /* border-bottom: 3rpx solid #eee; */
+ /* border-top: 3rpx solid #eee; */}
+ .bz_view view{ width: 460rpx; max-height: 70rpx; overflow: hidden;}
+
+.bb_view{ display: flex;align-items: center;justify-content: space-between; padding: 0 34rpx; color: #333;
+ font-size: 30rpx; height: 104rpx; line-height: 104rpx; overflow: hidden; padding-right:26rpx }
+.red_bb{ color: #d70026; min-width:158rpx;width: auto;}
+.bg_jj{ width: 18rpx; height:18rpx;
+ border-top: 2rpx solid #d70026;
+ border-right: 2rpx solid #d70026;
+ transform: rotate(45deg);display:inline-block;
+ margin-bottom:3rpx;
+}
+.bg_jj.down1{transform: rotate(135deg);}
+
+.bz-content {
+ flex-grow: 1;
+ text-align: justify;
+}
+
+/* 顶部边框 */
+.topframe{
+ width: 100%;
+ height: 172rpx;
+ flex-direction: row;
+ justify-content: space-between;
+ border-bottom: 6rpx solid #eeeeee;
+ overflow: hidden;
+}
+/* 评价人边框*/
+.topframe .topframe-top{
+ display: flex;
+ margin-top: 40rpx;
+ margin-bottom: 36rpx;
+ color: #7d7d7d;
+ padding-left: 20rpx;
+ font-size: 32rpx;
+}
+/*评价人数量*/
+.topframe .topframe-top .topframe-top-val{
+ margin-left: 15rpx;
+
+}
+.topframe-top-content{
+ display: flex;
+ width: 36%;
+}
+/* 好评 */
+.topframe-praise{
+ width: 61%;
+ text-align: right;
+ color: #dc4355;
+ font-size: 28rpx;
+}
+/* 按钮列表 */
+.buttem-list{
+ width: 100%;
+ display: flex;
+ font-size: 20rpx;
+ overflow: hidden;
+}
+
+.buttem-list .item{
+ min-width: 17%;
+ font-size: 24rpx;
+ border-radius: 20rpx;
+ background:#ffe3e2;
+ height:38rpx;
+ text-align: center;
+ line-height: 38rpx;
+ margin-left: 20rpx;
+}
+
+.buttem-list .item.red{
+ color: #fff;
+ background: #d60022;
+}
+
+/* 用户评价 */
+.middle{
+ width: 95%;
+ margin:0 auto;
+}
+.middle-img-frame{
+ height:65rpx;
+ display: flex;
+ margin-top: 32rpx;
+
+}
+/* 评价的用户图片 */
+.middle-img{
+ width:60rpx;
+ height:60rpx;
+ border-radius: 50%;
+ -moz-border-radius: 50%;
+ -webkit-border-radius: 50%;
+ margin-right: 15rpx;
+}
+/* 评价的用户边框 */
+.middle-user-frame{
+ height: 65rpx;
+ overflow: hidden;
+}
+.middle-user{
+ height: 25;
+ font-size: 28rpx;
+}
+/* 评价图片 */
+.middle-img-two{
+ width: 115rpx;
+ height: 25rpx;
+ text-align: center;
+ margin-bottom:20rpx;
+ margin-left:5rpx;
+}
+.xc-pirces{
+ margin-top: 14rpx;
+}
+/* 评价文字 */
+.middle-font{
+ font-size: 30rpx;
+
+}
+.iddle-goods-img{
+ width: 100%;
+ display: flex;
+ margin-top:22rpx;
+}
+/* 商品图片 */
+.goods-img{
+ width: 156rpx;
+ height: 156rpx;
+ margin-left: 22rpx;
+ height: 100%;
+}
+.parameter-frame{
+ margin-top:14rxp;
+ margin-bottom: 14rpx;
+ width:50%;
+ height: 30rpx;
+}
+.z_parameter{
+ width:98%;
+ height: 45rpx;
+ display:flex;
+ line-height: 45rpx;
+ margin-top: 20rpx;
+ margin-bottom: 14rpx;
+ justify-content : space-between;
+}
+.parameter-font{
+ font-size: 26rpx;
+
+}
+/* 规格 */
+.parameter-state{
+ width: 100rpx;
+ font-size: 24rpx;
+ color: #c4c4c4;
+}
+.parameter-dian{
+ display: flex;
+ width: 94rpx;
+ height: 33rpx;
+ font-size: 20rpx;
+ border-radius: 20rpx;
+ line-height:33rpx;
+ padding-left: 25rpx;
+ border:4rpx solid #eeeeee;
+
+}
+/* 点赞图片 */
+.parameter-img{
+ width: 27rpx;
+ height: 27rpx;
+ margin-top: 3rpx;
+}
+.parameter-val{
+ margin-left:25rpx;
+ font-size: 26rpx;
+ color: #999;
+}
+/* 回复 */
+.reply{
+ width: 95%;
+ height: 120rpx;
+ padding-top: 14rpx;
+ border-top:3rpx solid #eeeeee;
+ margin:0 auto;
+
+}
+.shop-reply{
+ height: 30rpx;
+ color:#d60022;
+ font-size:24rpx;
+ overflow: hidden;
+}
+.shop-font{
+ width: 94%;
+ font-size: 24rpx;
+ padding-top: 10rpx;
+
+}
+.line_bulge{
+ width: 17rpx;
+ height: 17rpx;
+ border-top: 1rpx solid #eeeeee;
+ border-left: 1rpx solid #eeeeee;
+ transform:rotate(45deg);
+ position: absolute;
+ top: -12rpx;
+ left:50rpx;
+ background:#fff;
+}
+
+
+.xc_comment{
+ display: flex;
+ width: 100%;
+ height: 42rpx;
+ padding-left: 34rpx;
+ color: #333;
+
+}
+.xc_comment-have-pictures{
+ width: 153rpx;
+ height: 42rpx;
+ line-height: 42rpx;
+ text-align: center;
+ background: #ffe3e2;
+ color: 28rpx;
+ border-radius:20rpx;
+ font-size: 24rpx;
+}
+.xc_comment-discuss{
+ width: 152rpx;
+ height: 42rpx;
+ line-height: 42rpx;
+ text-align: center;
+ background: #ffe3e2;
+ color: 28rpx;
+ border-radius:20rpx;
+ font-size: 24rpx;
+ margin-left: 28rpx
+}
+
+.xc_comment-detail{
+ display: flex;
+ margin-top: 40rpx;
+ width: 524rpx;
+ margin-left: 34rpx;
+ border-radius: 25rpx;
+ border: 2rpx solid #d6d4d5;
+ overflow: hidden;
+}
+
+.xc_user-img{
+ border-radius:50%;
+}
+
+.xc_comment-user{
+ display: flex;
+ margin-top: 22rpx;
+ margin-left: 22rpx;
+}
+.xc_user{
+ width: 170rpx;
+ height: 60rpx;
+ margin-left: 6rpx;
+ overflow: hidden;
+}
+.xc_user-name{ height: 25rpx;}
+.xc_comment-img{
+ width: 22rpx;
+ height: 22rpx;
+ margin-top: 14rpx;
+ margin-right: 5rpx
+}
+.xc_comment-font{
+ height: 75rpx;
+ margin-left: 22rpx;
+ white-space:normal;
+ overflow: hidden;
+ margin-top: 8rpx;
+ line-height: 38rpx;
+
+}
+.xc_comment-val{
+ width: 88%;
+ height: 30rpx;
+ margin-left: 22rpx;
+ display: flex;
+ margin-top: 15rpx;
+ margin-bottom:15rpx;
+}
+
+.xc_comment-time{
+ height: 30rpx;
+ font-size: 24rpx;
+ color: #a5a5a5;
+ overflow: hidden;
+}
+
+.xc_goods-img{
+ width: 180rpx;height: 180rpx;
+}
+.xc_comment-left{
+ display:inline-block;
+ width: 312rpx;
+}
+.xc_goods-img-frame{
+ display:inline-block;
+ width: 40%;
+ height: 90%;
+ text-align: center;
+ padding-top: 30rpx;
+ vertical-align: top;
+}
+.xc_imgs{
+ width: 50rpx;
+ height:50rpx;
+ border-radius:50%;
+ margin-right: 5rpx;
+}
+
+.pj_word_size{ font-size: 28rpx}
+.pj_scroll{
+ white-space: nowrap;
+ /* height: 324rpx; */
+ margin-bottom: 50rpx;
+ display: flex;
+ align-items: center;
+ /* box-shadow: 0 8px 12px #e7e9eb; */
+}
+
+
+/*领券*/
+.three-level-word{
+ font-size: 25rpx;
+}
+.four-level-word{
+ font-size: 23rpx;
+}
+.cx-frame{
+ /* border-top:3rpx solid #eee; */
+ width:99%;
+ height: 95rpx;
+ line-height: 95rpx;
+ padding-left:24rpx;
+
+
+}
+.cx-frame .cx-sizs{
+ width: 68rpx;
+ height: 100%;
+ line-height: 100rpx;
+ overflow: hidden;
+ margin-left: 10rpx;
+}
+.xc-coupon-fram{
+ position: relative;
+ width:200rpx;
+ padding-top:30rpx;
+
+}
+.xc-coupon-fram .xc-coupon{
+ width:175rpx ;
+ height: 40rpx;
+ line-height: 40rpx;
+ background-color:#d60021 ;
+ margin:0 auto;
+ color:#fff;
+
+
+}
+.xc-coupon-fram .xc-circular{
+ width: 22rpx;
+ height:22rpx;
+ background-color:#fff;
+ position:absolute;
+ top: 40rpx;
+}
+.xc-coupon-fram .xc-one{
+ left:3rpx;
+}
+.xc-coupon-fram .xc-two{
+ left: 178rpx;
+}
+
+.cx-obtain-coupon{
+ width: 65rpx;
+ height: 100%;
+ padding-left:15rpx;
+ color: #d70025;
+ position: absolute;
+ right: 5rpx;
+}
+
+/* 自定义弹出窗口 */
+.cx-popup{
+ width:100%;
+ background: #fff;
+ z-index: 35;
+ border-top-left-radius: 25rpx;
+ border-top-right-radius: 25rpx;
+ position:fixed;
+ bottom:0;
+}
+
+.cx-popup .top{
+ width: 90%;
+ height:85rpx;
+ border-bottom: 4rpx solid #d5d5d5;
+ padding-top: 50rpx;
+ font-weight:600;
+
+}
+.cx-popup .top-frame{
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ overflow: hidden;
+}
+.xc-valid-coupon{
+ width: 90%;
+ height:40rpx;
+ padding-top: 24rpx;
+ overflow: hidden;
+}
+.xc-frame{
+ position: relative;
+}
+.xc-coupon-frame{
+ width: 90%;
+ max-height: 560rpx;
+ overflow: auto;
+
+}
+.xc-coupon-frame .coupon{
+ width:99%;
+ height: 168rpx;
+ border-radius: 25rpx;
+ border:3rpx solid #ffdcdc;
+ overflow: hidden;
+ margin-top:16rpx;
+
+}
+.xc-coupon-left{
+ width: 216rpx;
+ height: 100%;
+ background-color: #ffeeef;
+ border-right: 4rpx dashed #ffdbd9;
+ overflow: hidden;
+ line-height: 100%;
+
+}
+.xc-money{
+ color: #f30026;
+ text-align:center;
+}
+.xc-rmb{
+ width:44rpx;
+ padding-top:7rpx;
+}
+.xc-money-frame{
+ margin-left:35rpx;
+ margin-top:48rpx;
+
+}
+.xc-spacing{
+ letter-spacing:4rpx;
+}
+.xc-circular-one{
+ position: absolute;
+ top:-8rpx;
+ left:208rpx;
+ width: 27rpx;
+ height: 30rpx;
+ background: #fff;
+ overflow: hidden;
+}
+.xc-circular-two{
+ position: absolute;
+ top:150rpx;
+ left:207rpx;
+ width: 27rpx;
+ height:30rpx;
+ background: #fff;
+}
+.xc-detail-coupon{
+ margin-left: 22rpx;
+ overflow: hidden;
+ padding-top: 43rpx;
+
+}
+.xc-coupon-right{
+ width: 455rpx;
+ height: 100%;
+ background: #fffaf9;
+}
+.xc-below{
+ margin-top:22rpx;
+
+}
+.xc-get{
+
+ width: 132rpx;
+ height: 48rpx;
+ color: #fff;
+ text-align: center;
+ border-radius:20rpx;
+ line-height:48rpx;
+ margin-left:20rpx;
+}
+
+.background{
+ background:#f40028;
+}
+/*--不可使用--*/
+.background.nouse{
+ background:gainsboro;
+}
+
+.xc-background{
+ background:#b9b9b9;
+}
+
+
+.cx-confirm{
+ width: 100%;
+ height: 160rpx;
+
+}
+.cx-confirm .confirm{
+ width: 372rpx;
+ height: 60rpx;
+ background: #f40026;
+ color: #fff;
+ border-radius:20rpx;
+ line-height:60rpx;
+
+}
+
+.up{ animation: up .7s; }
+.down{ animation: down 1s; }
+@keyframes up { 0% { transform: translateY(550rpx); } 100% { transform: translateY(0); } }
+@keyframes down { 0% { transform: translateY(0); } 100% { transform: translateY(550rpx); } }
+
+
+/* 分享 */
+.xc-share-frame{
+ width: 129rpx;
+ height: 48rpx;
+ border-top-left-radius: 18rpx;
+ border-bottom-left-radius: 18rpx;
+ background: #d60021;
+ position:absolute;
+ left:622rpx;
+ top:-37rpx;
+ line-height:50rpx;
+ margin-top:52rpx;
+}
+.xc-share-frame-jieti{
+ width: 129rpx;
+ height: 48rpx;
+ border-top-left-radius: 18rpx;
+ border-bottom-left-radius: 18rpx;
+ background: #d60021;
+ line-height:50rpx;
+}
+
+.xc-share-frame .share-font,.xc-share-frame-jieti .share-font{
+ font-size: 32rpx;
+ color:#fff;
+ margin-left:10rpx;
+
+}
+
+.xc-share-frame .share-frame,.xc-share-frame-jieti .share-frame{
+ width: 30rpx;
+ height: 30rpx;
+ margin-top:9rpx;
+ margin-left: 10rpx;
+
+}
+.xc-share {
+ width:90%;
+ height:800rpx;
+ background:#fff;
+ z-index:35;
+}
+.img-frame{
+ position: absolute;
+ top: 175rpx;
+ left:100rpx;
+ z-index: 55;
+ overflow:hidden;
+
+}
+.img-frame .img{
+ width: 100rpx;
+ height: 100rpx;
+
+}
+.xc-share .top{
+ height: 85rpx;
+ width: 100%;
+ border-bottom: 4rpx dashed #f5f5f5;
+ overflow:hidden;
+
+}
+.xc-share .name{
+ font-size: 25rpx;
+ margin-left:180rpx;
+ color:#000;
+
+}
+
+.xc-share .recommend{
+ width: 110rpx;
+ height: 12rpx;
+ color: #fff;
+ background: #d60021;
+ font-size: 20rpx;
+ border-radius:25rpx;
+ margin-left:10rpx;
+ line-height:37rpx;
+}
+.xc-left-circle{
+ width: 40rpx;
+ height: 25rpx;
+ position: absolute;
+ top:280rpx;
+ left:29rpx;
+ z-index: 55;
+ background:#727272;
+ border-radius:50rpx 50rpx 0 0;
+ transform:rotate(90deg);
+
+}
+.xc-right-circle{
+ width: 40rpx;
+ height: 25rpx;
+ position: absolute;
+ top: 280rpx;
+ left:683rpx;
+ z-index: 55;
+ background:#727272;
+ border-radius:50rpx 50rpx 0 0;
+ transform:rotate(270deg);
+
+}
+.xc-circle-frame{
+ width: 25rpx;
+ height: 40rpx;
+ overflow: hidden;
+}
+.xc-goods-name{
+ width: 95%;
+ font-size: 35rpx;
+ padding-left: 75rpx;
+ height: 50rpx;
+ padding-top: 10rpx;
+ color:#000;
+
+}
+.xc-good-img{
+ width: 100%;
+ height: 381rpx;
+ margin-top:5rpx;
+
+}
+.xc-good-img .img{
+ width: 90%;
+ height: 381rpx;
+}
+.xc-ensure-frame{
+ width: 90%;
+ height: 60rpx;
+ border-bottom: 2rpx solid #d8d6d7;
+}
+.xc-ensure{
+ width: 30%;
+ height: 60rpx;
+ line-height: 60rpx;
+}
+xc-ensure-div{
+ width: 100%;
+ height: 60rpx;
+}
+.xc-ensure .word{
+ font-size: 25rpx;
+ color: #d30025;
+ margin-left:9rpx;
+
+}
+.xc-ensure .img{
+ width: 25rpx;
+ height: 25rpx;
+ margin-top:18rpx;
+
+}
+
+.xc-bottmon{
+ width: 100%;
+}
+.xc-bottmon .xc-left{
+ width: 55%;
+ margin-top:30rpx;
+ padding-left:20rpx;
+
+}
+.xc-left .xc-top{
+ font-size: 25rpx;
+ height:40rpx;
+ line-height:40rpx;
+ color:#000;
+}
+.xc-left .xc-middle{
+ font-size: 25rpx;
+ color: #b2b2b2;
+ height:30rpx;
+ line-height:30rpx;
+}
+.xc-left .xc-buttem{
+ font-size: 25rpx;
+ height:100rpx;
+ line-height:100rpx;
+ color:#000;
+}
+.xc-ensure-right{
+ width: 30%;
+}
+.xc-qrcode{
+ width:120rpx;
+ height: 120rpx;
+ margin-top:43rpx;
+ margin-left:80rpx;
+
+}
+.xc-close{
+ width:50rpx;
+ height:50rpx;
+ border-radius:50%;
+ border:3rpx solid #fff;
+ text-align:center;
+ line-height: 41rpx;
+ font-size:50rpx;
+ color:#fff;
+ font-weight: lighter;
+ font-family:MingLiU;
+ transform:rotate(270deg);
+ overflow:auto;
+ margin-top:6rpx;
+ margin-bottom:1rpx;
+
+}
+.xc-close-frame{
+ position:absolute;
+ margin-top:30rpx;
+ width:90%;
+ display:flex;
+ justify-content:center;
+ overflow: auto;
+
+}
+.xc-guanbi{
+ width: 100%;
+ height: 80rpx;
+ overflow: hidden;
+}
+
+
+/* 自定义弹出窗口 */
+.cx-popup{
+ width:100%;
+ background: #fff;
+ z-index: 35;
+ border-top-left-radius: 10rpx;
+ border-top-right-radius: 10rpx;
+ position:fixed;
+ bottom:0;
+}
+
+.xc-top-content{
+ width: 88%;
+ height:85rpx;
+ padding-top: 50rpx;
+ font-size: 36rpx;
+}
+
+
+.xc-valid-coupon{
+ width: 90%;
+ height:40rpx;
+ padding-top: 24rpx;
+ overflow: hidden;
+}
+.xc-frame{
+ width: 100%;
+ margin-top:20rpx;
+
+}
+
+.xc-frame .list-frame{
+ width: 90%;
+ height: 100%;
+ overflow-y:scroll;
+
+ margin-top:20rpx;
+
+}
+.xc-close-frame{
+ margin-top:30rpx;
+ width:15%;
+ display:flex;
+}
+
+.xc-close{
+ width:70rpx;
+ height:70rpx;
+ border-radius:50%;
+ border:5rpx solid #a5a5a7;
+ text-align:center;
+ line-height: 55rpx;
+ font-size:80rpx;
+ color:#a5a5a7;
+ font-family:"微软正黑体";
+ margin-top:8rpx;
+
+}
+.xc-money{
+ color: #ff0013;
+}
+
+.xc-money-frame{
+ margin-left:35rpx;
+
+}
+.xc-coupon-effect{
+ width: 99%;
+ height: 128rpx;
+ border-bottom:3rpx solid #ddd;
+
+
+}
+.xc-goods-coupon{
+ width: 80%;
+ height:100%;
+
+}
+.xc-title{
+ width:50%;
+ margin-left:222rpx;
+
+}
+.xc-coupon-money{
+ color: #c91e31;
+ font-size: 35rpx;
+ margin-top:20rpx;
+
+}
+.xc-coupon-time{
+ height: 50rpx;
+ font-size: 27rpx;
+ color: #a4a4a4;
+}
+.xc-coupon-time .time{
+ margin-left: 15rpx;
+ font-size: 27rpx;
+}
+.xc-coupon-selection{
+ width:99%;
+ height:100%;
+
+
+}
+.xc-confirm {
+ width: 90%;
+ height: 75rpx;
+ margin:0 auto;
+ background:#c41830;
+ color:#fff;
+ border-radius:10rpx;
+ font-size:30rpx;
+ margin-top: 50rpx;
+}
+.xc-not-Selection{
+ width: 60rpx;
+ height: 60rpx;
+ background: #eeeeee;
+}
+
+/*---------------视频图片---------------*/
+.xc-imageCount {
+ width:95rpx;
+ height:50rpx;
+ background-color: rgba(0, 0, 0, 0.3);
+ border-radius:40rpx;
+ line-height:50rpx;
+ color:#fff;
+ text-align:center;
+ font-size:26rpx;
+ position:absolute;
+
+ right:23rpx;
+ bottom:21rpx;
+}
+
+
+/* 视频图片的边框 */
+.xc-videos-picture{
+ width: 100%;
+ height: 750rpx;
+}
+/* 视频 */
+.xc-videos{
+ width: 100%;
+ height:544rpx;
+
+
+}
+/* 点击视频或图片 */
+.xc-video-picture{
+
+ bottom: 20rpx;
+ left: 0rpx;
+ display: flex;
+ align-items: center;
+ justify-content:center;
+ width: 45%;
+ height: 60rpx;
+ margin-left: 215rpx;
+
+}
+.xc-video-button:before{
+ content: "";
+ position: absolute;
+ left: 48%;
+ top: 40%;
+ width: 0;
+ height: 0;
+ margin-left: -36rpx;
+ margin-top: -10rpx;
+ border-width:13rpx;
+ border-style: dashed;
+ border-color: transparent transparent transparent #fff;
+ font-size: 0;
+ line-height: 0;
+ z-index: 2;
+ -webkit-backface-visibility: hidden;
+}
+.xc-video-buttons:before{
+ content: "";
+ position: absolute;
+ left: 50%;
+ top:41%;
+ width: 0;
+ height: 0;
+ margin-left: -36rpx;
+ margin-top: -10rpx;
+ border-width:13rpx;
+ border-style: dashed;
+ border-color: transparent transparent transparent #000;
+ font-size: 0;
+ line-height: 0;
+ z-index: 2;
+ -webkit-backface-visibility: hidden;
+}
+
+.xc-video{
+ width:100rpx;
+ height: 50rpx;
+ line-height: 50rpx;
+ text-align: center;
+ margin-left:-30rpx;
+
+
+}
+/* 图片 */
+.xc-picture{
+ color: #000;
+ background: #dcdcdc;
+ width: 94rpx;
+ height: 45rpx;
+ font-size: 25rpx;
+ border-radius: 25rpx;
+ font-family: 'SimHei',Arial;
+ text-align: center;
+ line-height: 45rpx;
+ margin-left:53rpx
+
+}
+/* 点击视频 */
+.xc-video-button{
+ position: relative;
+ color: #000;
+ background: #dcdcdc;
+ width: 85rpx;
+ height: 45rpx;
+ line-height: 45rpx;
+ font-size: 30rpx;
+ border-radius: 25rpx;
+ font-family: 'SimHei',Arial;
+ padding-left: 11rpx;
+}
+
+
+.xc-sn{
+ color: #fff;
+ background: #c7161e;
+ border-color: transparent transparent transparent #fff;
+}
+/* 图片 */
+.xc-pictures{
+ width: 100%;
+ height:529rpx;
+
+}
+/*视频封面的图片 */
+.xc-picturess{
+ position: relative;
+ width: 100%;
+ height:529rpx;
+}
+/* 播放 */
+.xc-play{
+ width: 130rpx;
+ height: 130rpx;
+ position: absolute;
+ top:207rpx;
+ left:309rpx;
+}
+
+.xc-video-buttons{
+ position: relative;
+ color: #000;
+ background: #dcdcdc;
+ width: 85rpx;
+ height: 45rpx;
+ line-height: 45rpx;
+ font-size: 30rpx;
+ border-radius: 25rpx;
+ font-family: 'SimHei',Arial;
+ padding-left: 11rpx;
+}
+
+
+.wsize{font-size: 32rpx}
+.five-level-word{font-size: 28rpx;}
+
+
+/*-- 推荐商品 --*/
+.xc-goods{
+ height: auto;
+ background: #f2f2f2;
+ padding: 0 20rpx;
+ margin-top: -25rpx;
+ padding-bottom: 20rpx
+}
+
+.xc-goods-recommend {
+ border-radius: 20rpx;
+ width:345rpx;
+ height: 450rpx;
+ margin-top: 25rpx;
+ display: inline-block;
+
+}
+
+.xc-goods-recommend.ml{ margin-left: 22rpx}
+
+.xc-goods-recommend .xc-goods-imgs{
+ width: 100%;
+ height: 325rpx;
+ border-radius:20rpx 20rpx 0 0;
+}
+
+.xc-goods-bottom{
+ width: 345rpx;
+ height: 134rpx;
+ background: #fff;
+ border-radius:0 0 20rpx 20rpx;
+ bottom:-8rpx;
+ left:0rpx;
+}
+.xc-goods-bottom .monry-frame{
+ width:283rpx;
+height:52rpx;
+padding-left:24rpx;
+
+}
+.xc-good-explain{
+ width: 283rpx;
+ height:60rpx;
+ word-break: normal;
+ margin-left:30rpx;
+ font-size: 26rpx;
+ line-height: 30rpx;
+ margin-top: 5rpx;
+}
+.money-color-val{
+ color: #c6172f;
+}
+.rmb-symbol{
+ line-height:81rpx;
+ height:53rpx;
+ font-size: 28rpx;
+}
+.xc-original-price{
+ color: #c0c0c0;
+}
+/* 文字中间加线条 */
+.word-lines{
+ text-decoration:line-through;
+ line-height:90rpx;
+ margin-left:10rpx;
+ font-size: 20rpx;
+}
+
+ .xc-linellae-frame{
+ width: 100%;
+ height: 60rpx;
+ background: #f2f2f2;
+}
+.xc-linellae-frame .xc-linellae{
+ width: 386rpx;
+ height: 1rpx;
+ border-bottom: 1rpx solid #a5a5a5;
+}
+.xc-recommend-frame{
+background:#f2f2f2;
+width:97rpx;
+height:100%;
+padding-left: 10rpx;
+}
+.xc-recommend-frame .xc-recommend{
+ width: 35rpx;
+ height: 27rpx;
+}
+.xc-recommend-frame .xc-recommend-word{
+ width:58rpx;
+font-size:24rpx;
+color: #a9a9a9;
+margin-left: 5rpx;
+margin-bottom: 5rpx;
+margin-top: 1rpx;
+
+}
+.xc-price-frame{
+ color: #ec0022;
+height:44rpx;
+}
+.xc-price-frame .sign{
+margin-top:19rpx;
+margin-left:-4px;
+}
+.xc-val-price{
+margin-left:24rpx;
+color: #ec0022;
+padding-top:13rpx;
+}
+.xc-val-price .save{
+ border-radius:10rpx;
+ margin-top:5rpx;
+ background:#fed2d9;
+ min-width:230rpx;
+ height:40rpx;
+ line-height:40rpx;
+ width: auto;
+ padding-left:12rpx;
+ padding-right:12rpx;
+
+}
+.xc-unit-price{
+ margin-top:25rpx;
+padding-left:-4rpx;
+
+}
+.xc-explain{
+ color:#292929;
+ width:542rpx;
+}
+.xc-item{width: 16%; font-size: 26rpx; color: #666;margin-right:5rpx;}
+.xc-item .yuan{
+ width: 38rpx;
+ height: 38rpx;
+ line-height: 38rpx;
+ border:1rpx solid #f3f1f2;
+margin-left:33rpx;
+
+}
+.xc-item .word{
+ width:104rpx;
+ margin-top:16rpx;
+ color:#363636;
+ font-weight:600;
+
+}
+.xc-item .circle-color{
+ background: #d60024;
+ color: #fff;
+}
+.xc-item .circle-color1{
+ background: #fefefe;
+ color: #666666;
+}
+.link{
+height:6rpx;
+width:180rpx;
+top:54rpx;
+left:32px;
+}
+.link1{
+height:6rpx;
+width:166rpx;
+top:54rpx;
+left:264rpx;
+}
+.link2{
+ height:6rpx;
+width:157rpx;
+top:54rpx;
+right:87rpx;
+}
+.link-color-red{
+ background: #d60024;}
+.link-color{
+ background: #e5e5e5;
+}
+.xc-qt-price{
+ top:-15rpx;
+left:25rpx;
+ color: #fff;
+}
+.xc-qt-price .xc-qtunit-price{
+ margin-left:6rpx;
+margin-top:-4rpx;
+}
+.xc-nanber{
+ top:-25rpx;
+left:289rpx;
+
+}
+.xc-qtsign{
+margin-top:5rpx;
+
+}
+.xc-people-img{
+ height: 36rpx;
+ width: 36rpx;
+ background: #fff;
+ border-radius: 7rpx;
+
+}
+.xc-people-img .imgs{
+ width: 28rpx;
+ height: 28rpx;
+ margin-top:4rpx;
+
+}
+.xc-people-val{
+
+ height: 32rpx;
+ border-top: 1rpx solid #fff;
+ border-bottom: 1rpx solid #fff;
+ border-right: 1rpx solid #fff;
+ border-radius:0 7rpx 7rpx 0;
+ line-height:32rpx;
+ margin-left:-6rpx;
+ padding: 0 12rpx;
+}
+.word-color{
+ color:#d70024;
+}
+.word-color-lan{
+ color:#0393e1;
+}
+.pt_view .hy-stop{
+ top: -23rpx;
+ right: 56rpx;
+}
+.xc-time-val{width:36rpx;height:36rpx;border-radius:7rpx; line-height: 36rpx;}
+.xc-time{margin-right:10rpx; margin-left:10rpx; margin-top:-32rpx;
+}
+.xc-goods-explain{
+ width:100%;
+ padding-left:30rpx;
+ margin-left:-9rpx;
+ height: 150rpx
+}
+.xc-partner-frame{
+border-bottom:2rpx solid #eee;
+width:100%;
+padding:0 20rpx;
+height:56rpx;
+}
+.xc-person-number{
+ width:120rpx;
+ color: #999999;
+ padding-left:8rpx;
+ text-align: left
+}
+
+.xc-miaosha-time{
+right:17rpx; top:55rpx;
+}
+.pd_top1{padding-top: 10rpx}
+.s_ms_bth{margin-top: 85rpx}
+
+
+.no_pj_list{text-align: center; width: 100%; color: #999; margin: 30rpx 0; display: inline-block; font-size: 28rpx}
+/* 门店地址 */
+.xc-address_frame{
+ /* border-top:1rpx solid #eee; */
+ width: 100%;
+ height: auto;
+}
+.on_height{
+height: 90rpx;
+}
+.sn_height{
+ min-height: 170rpx; height: auto;padding: 10rpx 0;
+}
+.xc-address_frame .address_frame{
+ width: 92%;
+padding-left: 10rpx;
+margin: auto;
+
+}
+.shop_name{
+
+}
+.stores-img{
+width: 40rpx;
+ height: 35rpx;
+ margin-right: 10rpx;
+}
+.shop_name{
+ margin-right: 10rpx;
+}
+.address{
+ width: 87%;
+ margin-top: 5rpx;
+ margin-bottom: 5rpx;
+}
+.distance{
+ padding-left: 15rpx;
+ padding-right: 15rpx;
+ background: #eee;
+ border-radius: 20rpx;
+ margin-right: 5rpx;
+ color: #999;
+ height: 38rpx;
+line-height: 38rpx;
+
+}
+/* 选择门店的弹窗 */
+.mongolia-layer{
+ position: fixed;
+left: 0;
+top: 0;
+right: 0;
+bottom: 0;
+z-index: 11;
+background: rgba(0,0,0,0.4);
+width: 100%;
+height: 91.9%;
+
+}
+
+.popup-frame{
+ position: fixed;
+bottom:99rpx;
+z-index: 20;
+background: white;
+width: 100%;
+border-radius: 20rpx 20rpx 0 0;
+height: 72%;
+bottom: 0;
+}
+.popup-top{
+ border-bottom: 1rpx solid #eee;
+ height: 155rpx;
+ width: 95%;
+ margin: auto;
+ line-height: 155rpx;
+
+}
+.bg_rights{
+ border-top: 2rpx solid ;
+ border-right: 2rpx solid ;
+ transform: rotate(45deg);
+ display:inline-block;
+ width:15rpx;height:15rpx;
+ border-color:#da0b31;
+}
+.modal-closes {
+ position: absolute;
+ right: 30rpx;
+ top: -15rpx;
+ height: 25rpx;
+
+}
+.choose_more{
+ margin-top: 40rpx;
+ margin-right: 20rpx;
+
+}
+.choose_mores{
+ margin-top: 30rpx;
+ margin-right: 15rpx;
+
+}
+.store-list{
+ width: 95%;
+ height: 72%;
+ overflow-y: scroll;
+ margin: auto;
+}
+.store-list .store_choose{
+ width: 100%;
+ height: 120rpx;
+ line-height: 125rpx;
+ border-bottom: 1rpx solid #eee;
+
+}
+.store-list .store_choose .store{
+width: 100%;
+margin: auto;
+line-height: 37rpx;
+padding-left: 20rpx;
+
+}
+.xc-hook{
+ width: 35rpx;
+ height: 35rpx;
+ transform: rotate(-145deg);
+line-height: 37rpx;
+text-align: center;
+}
+ .xc-hooks{
+ width: 30rpx;
+ height: 30rpx;
+ border: 1rpx solid #999;
+ }
+ .address-frame{
+ width: 93%;
+margin-left: 7rpx;
+
+ }
+ .nearby_store{
+margin-left: 17rpx;
+ }
+ .address_name{
+ margin-right: 10rpx;
+
+ }
+ .address-val{
+ height: 38rpx;
+line-height: 38rpx;
+
+ }
+ .store-bottom{
+ width: 85%;
+ margin: auto;
+ height: 70rpx;
+ }
+ .determine{
+ width: 260rpx;
+ height: 55rpx;
+ border-radius: 50rpx;
+ line-height: 55rpx;
+ }
+ .default{
+ width: 260rpx;
+ height: 55rpx;
+ border:3rpx solid #c8c8c8;
+ border-radius: 50rpx;
+ line-height: 55rpx;
+ }
+ .store-bottom-frame{
+ width: 95%;
+ margin: auto;
+
+ }
+ /* 门店分类列表 */
+.sort_store_list{
+ height: 82%;
+ overflow: hidden;
+ overflow-y: scroll;
+ width: 95%;
+ margin: auto;
+}
+.sort_store_list .sort-store-frame{
+ width: 100%;
+height: 100rpx;
+line-height:100rpx;
+border-bottom: 1rpx solid #eee;
+
+}
+.sort_store_list .sort-store-frame .sort-store{
+ width: 94.5%;
+ margin: auto;
+}
+.black_rights-frame{
+width: 50%;
+}
+.black_rights-frame .black_rights{
+ border-top: 3rpx solid;
+border-right: 3rpx solid;
+transform: rotate(45deg);
+display: inline-block;
+width: 20rpx;
+height: 20rpx;
+}
+.xc-val-money{
+ height:55rpx;
+}
+
+.xc-distance-bottom{
+ margin-bottom: 40rpx;
+}
+.xc-distance-top{
+margin-top: 10rpx;
+}
+.xc-width{
+ width: 100%;
+}
+.right-arrow{ width: 15rpx; height:15rpx;
+ border-top: 2rpx solid #d70026;
+ border-right: 2rpx solid #d70026;
+ transform: rotate(45deg);display:inline-block;
+ margin-bottom:3rpx;
+}
+.xc-goods-attribute{
+ border-bottom: 1px solid #eee;
+padding-bottom: 15px;
+margin-bottom:40rpx;
+}
+.xc-val-fream{
+ width: 105rpx;
+}
+.is_stock{
+width: 58%;
+height: 70rpx;
+border-radius: 55rpx;
+}
+.select_store_height{
+ height: 50rpx;
+}
+.butttem5{
+ margin-bottom: 5rpx;
+}
+
+.no_pj_list{text-align: center; width: 100%; color: #999; margin-top: 30rpx; display: inline-block; font-size: 28rpx}
+
+
+.join-cart>view.no_store {
+ width: 58%; background-color: #adadad;
+}
+
+.s_btn{ margin-top: 25rpx; }
+/* 美妆价的样式 */
+.beauty-makeup-frame{
+ width: 101.5%;
+ margin: auto;
+ height: 120rpx;
+ border-radius: 15rpx;
+ margin-top: 18px;
+
+}
+.beauty-makeup-frame .left{
+ width: 80%;
+ height: 100%;
+ background:#f7f7f7;
+ border-radius: 20rpx 0rpx 0rpx 20rpx;
+ padding-left: 20rpx;
+}
+ .card-frame{
+ margin-top: 0rpx; padding-right: 23rpx;
+ margin-right: 15rpx;
+}
+.advert-card{
+ margin-top: 0rpx!important;
+
+}
+.beauty-makeup-frame .right{
+ width: 20%;
+ height: 100%;
+ background:#f3efe3;
+ border-radius: 0rpx 20rpx 20rpx 0rpx;
+ }
+.grade-card-frame{
+
+ height:45rpx ;
+ background: #3c300a;
+ border-radius: 20rpx;
+ margin-top: 10px;
+ margin-left: 7rpx;
+ justify-content: center;
+ padding: 0 15rpx;
+}
+.grade-card-frame .img{
+ width: 24rpx;
+ height: 24rpx;
+ margin-top: 2px;
+
+}
+.grade-card-frame .card-name{
+ margin-left: 8rpx;
+ /* max-width: 120rpx; */
+ max-width: 165rpx;
+}
+.card-effect{
+ margin-left: 15rpx;
+}
+.at_once_carde{
+ width:65rpx;
+ height: 75rpx;
+ line-height:38rpx;
+}
+.bg_right{ width: 18rpx; height:18rpx;
+ border-top: 2rpx solid #333;
+ border-right: 2rpx solid #333;
+ transform: rotate(45deg);display:inline-block;
+ margin-bottom:3rpx;
+
+}
+.carde_frame{
+ height: 50rpx;
+ line-height: 18rpx
+}
+
+button.custom-service { line-height: normal; border: 0;}
+button.custom-service::after{
+ border: 0;
+}
+.no_store{color:#d60021; font-size: 26rpx;}
+.cx_show_view{ width: 580rpx; line-height: 30rpx; margin-bottom: 6rpx; }
+.cx_show_view .word{ width: 400rpx}
+.prom_condition {
+ color: #d60021;
+ width: 180rpx;
+ height: 30rpx;
+ font-size: 20rpx;
+ padding-top: 0.01rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ border: #d60021 solid 1rpx;
+ border-radius: 10rpx;
+ margin-right:10rpx ;
+ margin-left: 10rpx;
+
+}
+.hui_img{ width: 44rpx; height: 44rpx; margin-right: 8rpx}
+.order_hui{color: #444; width: 420rpx}
+.order_hui view{ height: 34rpx; line-height: 34rpx;}
+.dp_img{width: 240rpx; height: 240rpx; margin: 0 40rpx}
+.dp_cx_view{border-bottom: 0.02rpx solid #eee; padding-bottom: 40rpx}
+.act_content{ margin-top: 40rpx}
+.act_content view{ margin-bottom: 12rpx}
+.color_b{color: #ff9c00}
+
+.poster-container {
+ box-sizing: border-box;
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+ width: calc(100% - 120rpx);
+ z-index: 1000;
+}
+.mask {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ z-index: 999;
+ background-color: rgba(0,0,0,.4);
+}
+.poster-wrapper {
+ width: 100%;
+}
+
+.poster {
+ box-sizing: border-box;
+ width: 100%;
+ height: 1055rpx;
+ border-radius: 20rpx;
+ /* box-shadow: 0 8px 12px #666; */
+ position: relative;
+ z-index: 999;
+ overflow: hidden;
+}
+.poster-img {
+ display: block;
+ width: 100%;
+ height: 100%;
+}
+.btn-container {
+ display: flex;
+ justify-content: space-around;
+}
+.btn-share {
+ display: block;
+ background-color: #FE6867;
+ color: white;
+ border-radius: 8rpx;
+ line-height: 80rpx;
+ margin-top: 28rpx;
+ padding: 0 60rpx;
+}
+/* .btn-close {
+ background-color: rgba(0,0,0,.5);
+ color: white;
+ width: 40rpx;
+ height: 40rpx;
+ line-height: 40rpx;
+ text-align: center;
+ border-radius: 50%;
+ position: absolute;
+ right: 20rpx;
+ top: 10rpx;
+} */
+
+.goods-price .rel_txt{
+ position: relative; top: 32rpx; font-size: 30rpx;
+}
+.goods-price .rel_img{width: 62rpx; height: 62rpx;position: relative; top: 12rpx;}
+
+.btn-close {
+ /* background-color: rgba(0,0,0,.5); */
+ color: #ccc;
+ width: 50rpx;
+ height: 50rpx;
+ line-height: 50rpx;
+ text-align: center;
+ border-radius: 50%;
+ position: absolute;
+ right: 20rpx;
+ top: 20rpx;
+}
+
+.icon-close {
+ font-size: 48rpx;
+}
+.quan_price{
+ background-color: #ff4700; color: #fff; padding: 10rpx 25rpx; margin-left: 10rpx; border-radius: 30rpx;
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/appment_main.js b/packageA/pages/my_service/appment_main.js
new file mode 100644
index 0000000..34f6d04
--- /dev/null
+++ b/packageA/pages/my_service/appment_main.js
@@ -0,0 +1,653 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ inurl: a.url, //接口网址
+ iurl: a.imghost, //服务器网址
+ store: 0, //是否显示服务门店列表
+ beautician: 0, //是否显示美容师列表
+ beautician_name: "", //选中的美容师名称
+ beauticianID: "", //美容师id
+ bea_index: "", //美容师列表下标
+ placeholder: "填写备注", //备注为空的placeholder
+ store_list: [], //门店列表
+ beautician_list: [], //美容师列表
+ store_name: "", //选择的服务门店
+ fir_pick_index: 0, //选择的门店下标
+ curpage: 1, //当前分页数
+ pageSize: 8, //页大小
+ total: 0,
+ ismore: 0, //是否加载完毕
+ itemId: "", //服务id
+ project_id: "", //项目id
+ isScroll: true, //scroll-y是否可以滑动
+ key_word: "", //是否按门店文字查询
+ is_service_read: 0, //是否调用过门店接口
+ is_search: 0, //是否通过key_word调用接口
+ is_success: 0, //是否提交成功
+ remarks: "", //备注
+ storageId: "", //线下门店id
+ url: "/pages/user/my_service/appment_main", //本页面地址路径用于选择时间页面跳转回来
+ buyType: "", //项目类型
+ time: "", //选择预约时间
+ tment_count: "", //可预约人数
+ lat: "", //纬度坐标
+ lon: "", //经度坐标
+ is_gps: 1, //是否开启gps
+ validay: "", //服务项目有效期
+ is_sub: 0, //判断是否重复提交
+ is_textea: 1, //备注是否是可输入
+ },
+ //控制备注输入
+ check_text: function() {
+ var th = this;
+ var is_textea = th.data.is_textea;
+ th.setData({
+ is_textea: 1,
+ beautician: 0
+ })
+ },
+ onclickstore: function() {
+ var th = this;
+ var store = th.data.store;
+ if (store) {
+ th.setData({
+ store: 0,
+ is_textea: 1
+ })
+ } else {
+ th.setData({
+ beautician: 0,
+ store: 1,
+ is_textea: 0
+ })
+ if (th.data.store_list.length < 1) {
+ wx.showLoading({
+ title: '加载中',
+ })
+ th.query_store();
+ }
+ }
+ },
+ //输入的备注
+ input_remarks: function(e) {
+ var remarks = e.detail.value;
+ this.setData({
+ remarks: remarks
+ })
+ },
+ //提交成功及发送模版代码
+ success: function() {
+ var th = this;
+ var store = th.data.store_name; //门店名称
+ var bea_name = th.data.beautician_name; //美容师名称
+ var time = th.data.time; //预约时间
+ var is_sub = th.data.is_sub; //是否重复提交
+ var url = th.data.inurl + "/api/weshop/marketing/reservation/reservation/insert"; //接口路径
+ var serviceId = th.data.itemId; //服务id
+ var beauticianID = th.data.beauticianID; //美容师id
+ var buyType = th.data.buyType; //服务项目类型
+ var storeId = a.stoid; //商家id
+ var storageId = th.data.storageId; //门店id
+ var userId = d.user_id; //用户id
+ var remarks = th.data.remarks; //用户备注
+ var project_id = th.data.project_id; //项目id
+ var validay = th.data.validay;
+ var json = {
+ "arrangeTime": time + ":00",
+ "beauticianId": beauticianID,
+ "buyType": buyType,
+ "effectiveDay": "",
+ "number": "",
+ "projectId": project_id,
+ "remark": remarks,
+ "serviceId": serviceId,
+ "states": 0,
+ "storageId": storageId,
+ "storeId": storeId,
+ "userId": userId,
+ "validay": validay
+ }
+ var data = JSON.stringify(json);
+ wx.request({
+ url: url,
+ data: json,
+ method: 'post',
+ header: {
+ 'content-type': 'application/json'
+ }, // 设置请求的 header
+ success: function(res) {
+ th.setData({
+ is_sub: 0
+ })
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ getApp().my_warnning("预约成功", 1, th);
+ var store_name = th.data.store_name; //预约门店
+ var number = res.data.data.Number;
+ var temp_url = "/api/wx/open/app/user/sendSubscribeMsg"; //模版接口
+ var userinfo = getApp().globalData.userInfo;
+ var name = d.userInfo.nickname;
+ var json = {
+ // "formId": formid,
+ "keyWord": [{
+ "keyword": res.data.data.ServiceName
+ },
+ {
+ "keyword": time.substring(0, 16)
+ }, {
+ "keyword": res.data.data.BeauticianName
+ }, {
+ "keyword": res.data.data.StorageName
+ }, {
+ "keyword": res.data.data.Address
+ }
+ ],
+ "page": "/pages/user/my_service/tment_details?number=" + number,
+ "storeId": a.stoid,
+ "typeId": "1011",
+ "userId": d.user_id
+ };
+ var data = JSON.stringify(json);
+ //调用发送预约成功模版接口
+ wx.request({
+ url: th.data.inurl + temp_url,
+ data: data,
+ method: 'post',
+ header: {
+ 'content-type': 'application/json'
+ }, // 设置请求的 header
+ success: function(data) {}
+ })
+ setTimeout(function() {
+ wx.redirectTo({
+ url: "/pages/user/my_service/tment_details?number=" + number
+ });
+ }, 1000);
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ th.settime();
+ }
+ }
+ })
+
+ },
+ //定时显示texteat
+ settime: function() {
+ var th = this;
+ setTimeout(function() {
+ th.setData({
+ is_textea: 1
+ })
+ }, 2000);
+ },
+ //提交预约
+ sub_success: function(e) {
+ var th = this;
+ var temp_url = th.data.inurl + "/api/wx/weappSendlist/page";
+ var template_id = "";
+ if (th.data.is_sub == 1) {
+ return false;
+ }
+ var store = th.data.store_name; //门店名称
+ var bea_name = th.data.beautician_name; //美容师名称
+ var time = th.data.time; //预约时间
+ var is_sub = th.data.is_sub; //是否重复提交
+ th.setData({
+ is_textea: 0,
+ is_sub: 1
+ })
+ //提交预约前的判断
+ if (store == "") {
+ getApp().my_warnning("请选择服务门店", 0, th);
+ th.setData({
+ is_sub: 0
+ })
+ th.settime();
+ return false;
+ } else if (bea_name == "") {
+ getApp().my_warnning("请选择美容师", 0, th);
+ th.setData({
+ is_sub: 0
+ })
+ th.settime();
+ return false;
+ } else if (time == undefined || time == '') {
+ getApp().my_warnning("请选择预约时间", 0, th);
+ th.setData({
+ is_sub: 0
+ })
+ th.settime();
+ return false;
+ } else {
+ var version ="";
+ //判断微信版本是否达到预约成功订阅的要求
+ wx.getSystemInfo({
+ success(res) {
+ version = res.version;
+ }
+ })
+ wx.showLoading({
+ title: '加载中',
+ })
+ if (th.ver(version, '7.0.4') >= 0) {
+ //获取模版id
+ getApp().request.promiseGet(temp_url, {
+ data: {
+ store_id: a.stoid,
+ typeid: "1011"
+ }
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data.pageData.length > 0) {
+ template_id = res.data.data.pageData[0].template_id;
+ // //授权订阅
+ wx.requestSubscribeMessage({
+ tmplIds: [template_id],
+ success(res) {
+ th.success();
+ },
+ fail(res) {
+ th.success();
+ }
+ })
+ } else {
+ th.success();
+ }
+ })
+ } else {
+ // 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
+ wx.showModal({
+ title: '提示',
+ content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
+ })
+ th.setData({
+ is_sub: 0
+ })
+ }
+
+ }
+ },
+ //版本判断
+ ver:function(v1,v2){
+ v1 = v1.split('.')
+ v2 = v2.split('.')
+ var num1 = "" ;
+ var num2 = "";
+ var len = Math.max(v1.length, v2.length)
+
+ while (v1.length < len) {
+ v1.push('0')
+ }
+ while (v2.length < len) {
+ v2.push('0')
+ }
+
+ for (let i = 0; i < len; i++) {
+ num1 = parseInt(v1[i])
+ num2 = parseInt(v2[i])
+
+ if (num1 > num2) {
+ return 1
+ } else if (num1 < num2) {
+ return -1
+ }
+ }
+ return 0
+ },
+ goto: function(e) {
+ var th = this;
+ th.setData({
+ beautician: 0,
+ is_textea: 0
+ })
+ if (th.data.store_name == "") {
+ getApp().my_warnning("请选择服务门店", 0, th);
+ th.settime();
+ } else if (th.data.beautician_name == "") {
+ getApp().my_warnning("请选择美容师", 0, th);
+ th.settime();
+ } else {
+ th.setData({
+ is_textea: 1
+ })
+ var url = e.currentTarget.dataset.url;
+ getApp().goto(url);
+ }
+ },
+ //点击选择门店
+ choose_for_store: function(e) {
+ var th = this;
+ var index_c = e.currentTarget.dataset.ind;
+ var fir_pick_index = th.data.fir_pick_index;
+ //判断是否点击选中的门店,防止重复点击重复设置选中下标
+ if (index_c == fir_pick_index) {
+ return false;
+ } else {
+ th.setData({
+ fir_pick_index: index_c,
+ beautician_name: "",
+ time: "",
+ tment_count: ""
+ })
+ }
+ },
+ //确认选择门店
+ choice_store: function() {
+ var th = this;
+ var index = th.data.fir_pick_index;
+ var store_name = th.data.store_list[index].StorageName;
+ var Id = th.data.store_list[index].Id;
+ th.setData({
+ store: 0,
+ store_name: store_name,
+ storageId: Id,
+ is_textea: 1
+ })
+ },
+ onReachBottom: function() {
+ var th = this;
+ if (this.data.total <= th.data.pageSize) return;
+ if (this.data.ismore) return;
+
+ wx.showLoading({
+ title: '加载中...',
+ })
+ th.query_store();
+ },
+ //分页查询门店信息
+ query_store: function() {
+ var th = this;
+ th.setData({
+ is_textea: 0
+ })
+ var itemId = th.data.itemId; //服务id
+ var url = "/api/weshop/marketing/reservation/storage/pagenew";
+ var key_word = th.data.key_word;
+ key_word = key_word.replace(/\s+/g, "");
+ getApp().request.promiseGet(url, {
+ data: {
+ userId:getApp().globalData.user_id,
+ storeId: a.stoid,
+ serviceId: itemId,
+ latitude: th.data.lat,
+ longitude: th.data.lon,
+ page: th.data.curpage,
+ pageSize: th.data.pageSize,
+ keyWord: key_word
+ }
+ }).then(res => {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ th.data.curpage++;
+ var arr1 = th.data.store_list;
+ var arr2 = res.data.data.pageData;
+ var arr3 = [...arr1, ...arr2];
+ var ismore = 0;
+ if (arr3.length == res.data.data.total) ismore = 1
+ th.setData({
+ store_list: arr3,
+ total: res.data.data.total,
+ ismore: ismore,
+ is_service_read: 1,
+ }), wx.stopPullDownRefresh(); //停止下拉刷新
+ if (key_word != "" && res.data.data.pageData.length < 1) {
+ th.setData({
+ is_search: 1
+ })
+ }
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ th.settime();
+ }
+ })
+ },
+ //查询
+ query_beautician: function() {
+ var th = this;
+ th.setData({
+ is_textea: 0
+ })
+ if (th.data.store_name == "") {
+ getApp().my_warnning("请选择服务门店", 0, th);
+ th.settime();
+ } else {
+ wx.showLoading({
+ title: '加载中',
+ })
+ var itemid = th.data.itemId; //正式使用的项目id
+ var storageId = th.data.storageId; //正式使用的线下门店id
+ var url = "/api/weshop/marketing/reservation/staff/pagenew"; //接口地址
+
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ serviceId: itemid,
+ storageId: storageId
+ }
+ }).then(res => {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ th.setData({
+ beautician_list: res.data.data
+ })
+ if (res.data.data.length < 1) {
+ getApp().my_warnning("暂无美容师", 0, th);
+ th.settime();
+ } else {
+ if (th.data.beautician == 0) {
+ th.setData({
+ beautician: 1,
+ })
+ } else {
+ th.setData({
+ beautician: 0,
+ })
+ }
+ }
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ th.settime();
+ }
+ })
+ }
+ },
+ choice_beautician: function(e) {
+ var th = this;
+ var bea_index = e.currentTarget.dataset.baaindex;
+ var bea_name = th.data.beautician_list[bea_index].StaffName;
+ var BeauticianID = th.data.beautician_list[bea_index].staffid;
+ var StorageId=th.data.beautician_list[bea_index].StorageId
+
+ th.setData({
+ beautician_name: bea_name,
+ beautician: 0,
+ bea_index: bea_index,
+ beauticianID: BeauticianID,
+ time: "",
+ tment_count: "",
+ is_textea: 1,
+ StorageId:StorageId
+ })
+
+ },
+ //获取搜索门店输入的值
+ input_store: function(e) {
+ this.setData({
+ key_word: e.detail.value
+ })
+ },
+ //搜索门店
+ search_store: function() {
+ var th = this;
+ var key_word = th.data.key_word;
+ var store_list = th.data.store_list;
+ th.setData({
+ curpage: 1,
+ is_search: 0,
+ store_list: []
+ })
+ wx.showLoading({
+ title: '加载中',
+ })
+ th.query_store();
+ },
+ //美容师预约跳转页面
+ nav_bea: function() {
+ var th = this;
+ th.setData({
+ beautician: 0
+ })
+ var storageId = th.data.storageId; //线下门店id
+ var itemId = th.data.itemId; //服务id
+ var project_id = th.data.project_id;
+ if (storageId == "") {
+ getApp().my_warnning("请选择服务门店", 0, th);
+ th.settime();
+ } else {
+ th.setData({
+ is_textea: 1
+ })
+ wx.navigateTo({
+ url: "/pages/user/my_service/cosmetology_list?" + 'storageId=' + storageId + '&' + 'itemId=' + itemId + '&' + "projectId=" + project_id
+ });
+
+ }
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var th = this;
+ th.setData({
+ itemId: options.service_id,
+ buyType: options.BuyType,
+ project_id: options.ProjectID,
+ validay: options.Validay
+ });
+ wx.getLocation({
+ type: 'gcj02',
+ success: function(res) {
+ th.data.lat = res.latitude;
+ th.data.lon = res.longitude;
+ th.data.is_get_local_ok = 1;
+ th.setData({
+ is_gps: 1
+ });
+ },
+ fail: function(res) {
+ if (res.errCode == 2) {
+ th.setData({
+ is_gps: 0
+ });
+ if (th.data.is_gps == 0) {
+ getApp().confirmBox("请开启GPS定位", null, 25000, !1);
+ th.settime();
+ }
+ } else {
+ th.setData({
+ is_gps: "3"
+ });
+ }
+
+ th.data.is_get_local_ok = 1;
+ }
+ });
+
+ // 获取当前默认导购信息及归属门店信息
+ getApp().request.promiseGet('/api/weshop/shoppingGuide/geIdStaffInfo', {
+ data: {
+ store_id: 1,
+ guide_id: 73,
+ UserCode: '01',
+ }
+ }).then(res => {
+ console.log('res==>', res.data.data);
+ th.setData({
+ store_name: res.data.data.StorageName,
+ beautician_name: res.data.data.StaffName,
+ });
+ });
+
+ },
+ //查询剩下可预约人数
+ query_more: function() {
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/can/reservation/countnew";
+ var beauticianID = th.data.beauticianID; //美容师id
+ var projectID = th.data.itemId; //服务id
+ var seekTime = th.data.time; //预约日期
+ var storageId = th.data.storageId; //门店id
+ var storeId = a.stoid; //商家id
+ getApp().request.promiseGet(url, {
+ data: {
+ beauticianId: beauticianID,
+ seekTime: seekTime,
+ serviceId: projectID,
+ storageId: storageId,
+ storeId: storeId
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var tment_count = res.data.data.CanReservation;
+ th.setData({
+ tment_count: tment_count
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ th.settime();
+ }
+ })
+
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {
+ var th = this;
+ var seekTime = th.data.time; //预约日期
+ if (seekTime != "") {
+ th.query_more();
+ }
+ th.setData({
+ time: th.data.time.substring(0, 16),
+ is_textea: 1
+ })
+ th.query_project();
+ },
+ //获取单个服务项目信息
+ query_project: function() {
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/sm/page"; //获取服务项目接口
+ var project_id = th.data.project_id; //服务项目id
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ projectId: project_id
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ th.setData({
+ validay: res.data.data.pageData[0].Validay
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ th.settime();
+ }
+ })
+ },
+ //关闭导航
+ close: function() {
+ var th = this;
+ var nav_b = th.selectComponent("#nav_b"); //组件的id
+ nav_b.close_box();
+ }
+})
\ No newline at end of file
diff --git a/packageA/pages/my_service/appment_main.json b/packageA/pages/my_service/appment_main.json
new file mode 100644
index 0000000..104895a
--- /dev/null
+++ b/packageA/pages/my_service/appment_main.json
@@ -0,0 +1,7 @@
+{
+ "navigationBarTitleText": "预约服务",
+ "usingComponents": {
+ "warn": "/components/long_warn/long_warn",
+ "nav_b": "/components/nav_b/nav_b"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/appment_main.wxml b/packageA/pages/my_service/appment_main.wxml
new file mode 100644
index 0000000..788e683
--- /dev/null
+++ b/packageA/pages/my_service/appment_main.wxml
@@ -0,0 +1,152 @@
+
+
+
+
+
+
+
+
+
+ 门
+ 店
+
+
+
+
+ {{store_name==""?'选择服务门店':store_name}}
+ ∟
+
+
+
+
+
+
+ 美
+ 容
+ 师
+
+
+
+
+
+ {{beautician_name==''?'选择美容师':beautician_name}}
+ ∟
+
+
+
+
+
+ {{item.StaffName}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 预约时间
+
+
+
+
+ {{time==""?'选择时间':time}}
+ ∟
+
+
+
+
+
+
+ 注:剩余可预约人数{{tment_count}}人
+
+
+
+
+ 我的预约
+
+
+
+
+
+
+
+
+
+
+ 选择服务门店
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item.StorageName}}
+
+ 距您:{{item.Distance}}km
+
+
+ {{item.Address}}
+
+
+
+
+ 没有找到{{key_word}}门店
+
+
+
+
+ 数据加载完毕
+
+
+
+
+
+ 确定
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/appment_main.wxss b/packageA/pages/my_service/appment_main.wxss
new file mode 100644
index 0000000..ba5d2c1
--- /dev/null
+++ b/packageA/pages/my_service/appment_main.wxss
@@ -0,0 +1,288 @@
+.container {
+ border-top: 7rpx solid rgb(245, 245, 245);
+}
+
+.main {
+ width: 100%;
+ height: 305rpx;
+}
+
+.angle {
+ transform: rotate(-45deg);
+ margin-right: 15rpx;
+ margin-bottom: 10rpx;
+ font-size: 26rpx;
+ color: rgb(142, 142, 142);
+}
+.StaffName{
+ max-width: 350rpx;
+}
+.angler {
+ transform: rotate(227deg);
+ margin-bottom: 0rpx;
+}
+
+.users {
+ background-color: rgb(255, 255, 255);
+}
+
+.user {
+ width: 40rpx;
+ height: 40rpx;
+ margin-left: 15rpx;
+}
+
+.Fram {
+ padding: 0rpx 60rpx;
+ margin-top: 60rpx;
+ background-color: rgb(255, 255, 255);
+}
+
+.subSuccess {
+ position: fixed;
+ z-index: 3;
+ top: 420rpx;
+ left: 110rpx;
+ width: 540rpx;
+ height: 315rpx;
+ background-color: rgb(155, 155, 155);
+ text-align: center;
+ border-radius: 20rpx;
+ color: rgb(255, 255, 255);
+ font-weight: bold;
+}
+
+.Success {
+ width: 110rpx;
+ height: 110rpx;
+ margin-top: 70rpx;
+ margin-bottom: 30rpx;
+}
+
+.appment, .sub_appment {
+ width: 270rpx;
+ height: 60rpx;
+ line-height: 55rpx;
+ border-radius: 40rpx;
+}
+
+button {
+ height: 100%;
+ background-color: rgb(214, 1, 33);
+}
+
+.appment {
+ background-color: rgb(238, 238, 238);
+}
+
+.sub_appment {
+ background-color: rgb(214, 1, 33);
+ color: rgb(255, 255, 255);
+}
+
+.head {
+ width: 122rpx;
+ margin-right: 40rpx;
+ height: 50rpx;
+ line-height: 50rpx;
+}
+
+.textarea {
+ width: 420rpx;
+ background-color: rgb(238, 238, 238);
+ border-radius: 6rpx;
+ height: 130rpx;
+ padding-left: 40rpx;
+ padding-right: 15rpx;
+ padding-top: 15rpx;
+ padding-bottom: 15rpx;
+}
+
+.mabot {
+ margin-bottom: 35rpx;
+}
+
+.select {
+ width: 420rpx;
+ height: 55rpx;
+ line-height: 55rpx;
+ background-color: rgb(238, 238, 238);
+ border-radius: 6rpx;
+ padding-left: 40rpx;
+ padding-right: 15rpx;
+}
+
+.Cosmetology {
+ padding-left: 40rpx;
+ padding-right: 15rpx;
+ width: 365rpx;
+ background-color: rgb(238, 238, 238);
+ height: 50rpx;
+ line-height: 50rpx;
+ border-radius: 6rpx;
+}
+
+.beauticians {
+ width: 407rpx;
+ z-index: 3;
+ top: 45rpx;
+ left: -1rpx;
+ padding: 0rpx 5rpx;
+ border: 2rpx solid rgb(238, 238, 238);
+ background-color: rgb(255, 255, 255);
+ padding-bottom: 5rpx;
+ height: 279rpx;
+ overflow-x: scroll;
+ overflow-y: scroll;
+}
+
+.beautician {
+ height: 70rpx;
+ border-bottom: 2rpx solid rgb(238, 238, 238);
+ padding-left: 25rpx;
+}
+
+.beaclone {
+ border-bottom: 0rpx;
+}
+
+.notes {
+ margin-top: 15rpx;
+ margin-bottom: 60rpx;
+ margin-right: 8rpx;
+}
+
+.color {
+ color: rgb(172, 172, 172);
+}
+
+.submitMax {
+ margin-top: 50rpx;
+ padding: 0rpx 15rpx;
+}
+
+.Remarks {
+ margin-top: 15rpx;
+}
+
+/* 蒙尘 */
+
+.disgraceful {
+ position: fixed;
+ z-index: 4;
+ width: 100%;
+ height: 100%;
+ top: 0rpx;
+ left: 0rpx;
+ background-color: rgba(0, 0, 0, 0.4);
+}
+
+.storeList {
+ z-index: 5;
+ left: 0rpx;
+ border-top-left-radius: 25rpx;
+ border-top-right-radius: 25rpx;
+ background-color: rgb(255, 255, 255);
+ width: 100%;
+ padding: 45rpx 0rpx;
+}
+
+.storeListpadd {
+ padding: 0rpx 31rpx;
+}
+
+.choice {
+ margin-bottom: 5rpx;
+}
+
+.inputstore {
+ width: 510rpx;
+ height: 43rpx;
+ line-height: 43rpx;
+ border-radius: 30rpx;
+ border: 2rpx solid rgb(238, 238, 238);
+ padding-left: 30rpx;
+}
+
+.searchbar {
+ height: 95rpx;
+ border-bottom: 2rpx solid rgb(238, 238, 238);
+}
+
+.search {
+ width: 125rpx;
+ height: 45rpx;
+ line-height: 45rpx;
+ background-color: rgb(219, 27, 52);
+ border-radius: 30rpx;
+ color: rgb(255, 255, 255);
+}
+
+.stores {
+ height: 500rpx;
+ overflow-y: scroll;
+}
+
+.store {
+ margin: 0rpx 16rpx;
+ padding-right: 15rpx;
+ border-bottom: 2rpx solid rgb(238, 238, 238);
+ padding: 20rpx 0rpx;
+}
+
+.icon {
+ padding: 0rpx 15rpx;
+}
+
+.circular {
+ width: 37rpx;
+ height: 37rpx;
+ border-radius: 50%;
+ border: 2rpx solid rgb(52, 52, 52);
+ margin: 0rpx 15rpx;
+}
+
+.store_name_dis {
+ width: 90%;
+}
+
+.name_dis {
+ margin-bottom: 5rpx;
+}
+
+.store_name {
+ max-width: 420rpx;
+}
+
+.store_dis {
+ height: 30rpx;
+ line-height: 30rpx;
+ padding: 5rpx 15rpx;
+ background-color: rgb(227, 227, 227);
+ border-radius: 25rpx;
+ margin-right: 20rpx;
+ color: rgb(159, 159, 159);
+ max-width: 200rpx;
+}
+
+.store_address {
+ color: rgb(159, 159, 159);
+}
+
+.determine {
+ background-color: rgb(196, 24, 26);
+ width: 500rpx;
+ border-radius: 35rpx;
+ height: 60rpx;
+ color: rgb(255, 255, 255);
+ margin: 20rpx 0rpx;
+}
+
+.value {
+ max-width: 300rpx;
+}
+
+.notstore {
+ height: 80rpx;
+ color: rgb(159, 159, 159);
+}
diff --git a/packageA/pages/my_service/beauty_deta.js b/packageA/pages/my_service/beauty_deta.js
new file mode 100644
index 0000000..eaf4fdb
--- /dev/null
+++ b/packageA/pages/my_service/beauty_deta.js
@@ -0,0 +1,420 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ inurl: a.url, //接口网址
+ iurl: a.imghost,
+ url: "", //选择选择时间后返回的页面
+ defimgurl: "/miniapp/images/no-head.jpg",
+ seekTime: "", //当前服务预约选择的时间
+ time_list: [], //可预约时间
+ name: "", //美容师姓名
+ comment: "", //美容师评价
+ aweeks: [], //七天的预约时间
+ head_img: "", //美容师头像
+ time:['08:00','08:30', '09:00', '09:30', '10:00', '10:30', '11:00', '11:30', '12:00', '12:30', '13:00', '13:30', '14:00','14:30', '15:00', '15:30', '16:00', '16:30', '17:00','17:30', '18:00','18:30', '19:00', '19:30', '20:00', '20:30', '21:00', '21:30', '22:00','22:30'],
+ weeks: [], //星期几数组
+ time_index: -1, //选择预约时间下标
+ date_id: 0, //选择日期的id
+ beautician_id: "", //美容师id
+ itemId: "", //服务id
+ number: "", //预约单号
+ modify: 0, //是否是修改时间
+ iscos: 0, //是否是从美容师列表过来的
+ hours: "", //获取当前时分秒
+ projectId: "", //项目id
+ StaffName: "", //美容师名称
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var th = this;
+ var myDate = new Date();
+ var minutes = myDate.getMinutes(); //获取当前分钟数(0-59)
+ var hours = myDate.getHours() + ":" + minutes; //获取当前小时数(0-23)
+ var beautician_id = options.BeauticianID;
+ var storageId = options.StorageId;
+
+
+ th.setData({
+ beautician_id: beautician_id,
+ itemId: options.itemId,
+ modify: options.modify,
+ hours: hours,
+ projectId: options.projectId,
+ storageId:storageId
+ })
+ if (options.url != undefined) {
+ th.setData({
+ url: options.url
+ })
+ }
+ if (options.number != undefined) {
+ th.setData({
+ number: options.number
+ })
+ }
+ if (options.iscos != undefined) {
+ th.setData({
+ iscos: options.iscos
+ })
+ }
+ if (options.StaffName!=undefined){
+ th.setData({
+ StaffName: options.StaffName
+ })
+ }
+ th.query_beatea(th.query_aweek);
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {
+ var th = this;
+ //获取当前时间
+ var myDate = new Date();
+ // var date = myDate.getHours(); //获取当前小时数(0-23);
+ let str = myDate.toTimeString(); //"10:55:24 GMT+0800 (中国标准时间)"
+ let date = str.substring(0, 8); // '10:55:24'
+ th.setData({
+ hours: date
+ });
+ },
+
+ //图片失败,默认图片
+ bind_bnerr1: function(e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _Img = e.target.dataset.img;
+ if (_Img != undefined) {
+ var _errObj = {};
+ _errObj[_errImg] = "/miniapp/images/no-head.jpg";
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ }
+ },
+ //选择服务日期
+ check_date: function(e) {
+ var th = this;
+ var id = e.currentTarget.dataset.dateid;
+ var date_id = th.data.date_id;
+ var seekTime = th.data.aweeks[id].time;
+ if (id != date_id) {
+ th.setData({
+ date_id: id,
+ seekTime: seekTime
+ })
+ th.query_date();
+ }
+ },
+ //获取美容师信息
+ query_beatea: function(func) {
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/staff/get"; //接口路径
+ var beautician_id = th.data.beautician_id;
+ getApp().request.promiseGet(url, {
+ data: {
+ beauticianId: beautician_id,
+ storeId: a.stoid,
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ var ob={
+ name: data.StaffName,
+ comment: data.Remark1,
+ head_img: data.PhotoUrl
+ };
+ if(!th.data.storageId){
+ ob.storageId=data.StorageId;
+ }
+ th.setData(ob);
+ func();
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+ },
+ //返回上个页面
+ navigateBack: function() {
+ var th = this;
+ var modify = th.data.modify; //是否是更改时间
+ var seekTime = th.data.seekTime; //选择的日期
+ var time_list = th.data.time_list;
+ var time_index = th.data.time_index;
+ if (time_index == -1) {
+ getApp().my_warnning("请选择预约时间", 0, th);
+ return false;
+ }
+ var date_id = th.data.date_id;
+ var date = th.data.aweeks[date_id].time;
+ var time = date + " " + time_list[time_index] + ":00";
+ if (modify == 1) {
+ var json = {
+ "arrangeTime": time,
+ "number": th.data.number,
+ "remark": "更改时间",
+ "states": 0,
+ "storeId": a.stoid
+ };
+ var data = JSON.stringify(json);
+ var url = th.data.inurl + "/api/weshop/marketing/reservation/reservation/update"; //预约接口地址
+ wx.request({
+ url: url,
+ data: data,
+ method: 'put',
+ header: {
+ 'content-type': 'application/json'
+ }, // 设置请求的 header
+ success: function(res) {
+ if (res.data.code == 0) {
+ getApp().my_warnning(res.data.data, 1, th);
+ setTimeout(function() {
+ wx.navigateBack({
+ //返回
+ delta: 1
+ })
+ }, 1000);
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ }
+ })
+ } else {
+ var pages = getCurrentPages(); //当前页面
+ var iscos = th.data.iscos;
+ var delta = 1;
+ if (Number(iscos) == 1) {
+ delta = delta + Number(iscos); //返回哪个页面
+ var prevPage = pages[pages.length - 2 - Number(iscos)]; //上一页面
+ prevPage.setData({
+ //直接给上一个页面赋值
+ time: time,
+ beautician_name: th.data.StaffName,
+ beauticianID: th.data.beautician_id
+ });
+ wx.navigateBack({
+ //返回
+ delta: 2
+ })
+ } else {
+ var prevPage = pages[pages.length - 2]; //上一页面
+ prevPage.setData({
+ //直接给上一个页面赋值
+ time: time
+ });
+ wx.navigateBack({
+ //返回
+ delta: 1
+ })
+ }
+ }
+ },
+ //选择时间
+ Selection_time: function(e) {
+ var th = this;
+ var index = e.currentTarget.dataset.index;
+ var time_index = th.data.time_index;
+ if (index == time_index) {
+ return false;
+ } else {
+ th.setData({
+ time_index: index
+ })
+ }
+ },
+ //查询七天预约时间
+ query_aweek: function() {
+ var th = this;
+ var beautician_id = th.data.beautician_id; //美容师id
+ var storageId=th.data.storageId;
+
+ var itemId = th.data.itemId; //服务id
+ var projectId = th.data.projectId; //项目id
+ var url = "/api/weshop/marketing/reservation/staff/seven/time/listnew"; //接口地址
+ getApp().request.promiseGet(url, {
+ data: {
+ projectId: projectId,
+ beauticianId: beautician_id,
+ serviceId: itemId,
+ storeId: a.stoid,
+ storageId:storageId
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var data = res.data.data;
+ var arr = [];
+ for (var i in data) {
+ var em = {
+ "time": i,
+ "val": data[i]
+ };
+ arr.push(em);
+ }
+ arr.sort(th.sort_arr);
+ var weeks = ["今天", "明天", "后天"];
+ var week = "";
+ for (var i = 3; i < arr.length; i++) {
+ var date = new Date(arr[i].time);
+ if (date.getDay() == 0) week = "周日"
+ if (date.getDay() == 1) week = "周一"
+ if (date.getDay() == 2) week = "周二"
+ if (date.getDay() == 3) week = "周三"
+ if (date.getDay() == 4) week = "周四"
+ if (date.getDay() == 5) week = "周五"
+ if (date.getDay() == 6) week = "周六"
+ weeks[i] = week;
+ }
+ th.setData({
+ aweeks: arr,
+ weeks: weeks
+ })
+ th.query_date();
+
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+
+ },
+
+ query_date: function() {
+ var th = this;
+ var projectId = th.data.projectId;
+ var date_id = th.data.date_id; //日期下标
+ var SeekTime = th.data.aweeks[date_id].time;
+ var val = th.data.aweeks[date_id].val;
+
+ var url = "/api/weshop/marketing/reservation/staff/time/listnew";
+ getApp().request.promiseGet(url, {
+ data: {
+ projectId: projectId,
+ staffId: th.data.beautician_id,
+ storageId:th.data.storageId,
+ serviceId: th.data.itemId,
+ seekTime: SeekTime,
+ storeId: a.stoid,
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var hours = th.data.hours;
+ var time_list = res.data.data;
+ var time = th.data.time;
+ var date_id = th
+ var new_time = [];
+ var date = th.data.hours.substring(0,2);
+
+ //不等于空就是有可以预约的时间
+ if (time_list != null) {
+ if (res.data.data && res.data.data[0]!= undefined) {
+ if (res.data.data[0].GroupHour && res.data.data[0].GroupHour.length > 11) {
+ getApp().my_warnning(res.data.data[0].GroupHour, 0, th);
+ }
+ }
+ //循环固定和可预约的时间
+ for (var i = 0; i < time.length; i++) {
+ for (var ii = 0; ii < time_list.length; ii++) {
+ //判断固定的时间和可以预约的时间
+ if (time[i] == time_list[ii].begintime.substring(0, 5)) {
+ var date_id = th.data.date_id;
+ if (date > time_list[ii].begintime.substring(0, 2) && date_id == 0) {
+ new_time[i] = "";
+ break;
+ }else{
+ new_time[i] = time_list[ii].begintime.substring(0, 5);
+ break;
+ }
+ } else {
+ new_time[i] = "";
+ }
+ }
+ }
+ }else{
+ for(var i = 0 ;i b) {
+ return 1;
+ }
+ return 0;
+ },
+
+ check_is_in_arr:function(val,pdata) {
+ if(!val || !pdata) return false;
+ for(var i in pdata){
+ if(pdata[i].begintime.indexOf(val)!=-1){
+ return true;
+ }
+ }
+ return false;
+ }
+
+
+
+})
\ No newline at end of file
diff --git a/pages/getphone/getphone.json b/packageA/pages/my_service/beauty_deta.json
index fb13409..710a83b 100644
--- a/pages/getphone/getphone.json
+++ b/packageA/pages/my_service/beauty_deta.json
@@ -1,6 +1,6 @@
{
- "navigationBarTitleText": "绑定手机",
- "usingComponents": {
+ "navigationBarTitleText": "美容师详情",
+ "usingComponents": {
"warn": "/components/long_warn/long_warn"
}
-}
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/beauty_deta.wxml b/packageA/pages/my_service/beauty_deta.wxml
new file mode 100644
index 0000000..57591e4
--- /dev/null
+++ b/packageA/pages/my_service/beauty_deta.wxml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/beauty_deta.wxss b/packageA/pages/my_service/beauty_deta.wxss
new file mode 100644
index 0000000..09fc465
--- /dev/null
+++ b/packageA/pages/my_service/beauty_deta.wxss
@@ -0,0 +1,134 @@
+.container {
+ border-top: 7rpx solid rgb(245, 245, 245);
+}
+
+.backcolor {
+ position: absolute;
+ top: 0rpx;
+ left: 0rpx;
+ z-index: 0;
+ width: 100%;
+ height: 270rpx;
+ background-color: rgb(214, 1, 33);
+
+}
+
+.comments {
+ position: absolute;
+ top: 45rpx;
+ left: 0rpx;
+ z-index: 1;
+ padding: 0rpx 23rpx;
+}
+
+.name {
+ font-weight: bold;
+ float: left;
+ width: 250rpx;
+}
+
+.head {
+ width: 130rpx;
+ height: 130rpx;
+ border-radius: 50%;
+ float: right;
+ margin: 0rpx 15rpx;
+ /* border: 2rpx solid red; */
+}
+
+.introduce {
+ margin-top: 90rpx;
+ text-indent: 2em;
+ color: rgb(102, 102, 102);
+}
+
+.Personal {
+ width: 640rpx;
+ height: 300rpx;
+ background-color: rgb(255, 255, 255);
+ border-radius: 5rpx;
+ box-shadow: 0rpx 2rpx 2rpx 2rpx rgb(250, 228, 230);
+ margin-bottom: 65rpx;
+ padding-top: 40rpx;
+ padding-left: 35rpx;
+ padding-right: 35rpx;
+}
+
+.choice {
+ height: 70rpx;
+ background-color: rgb(214, 1, 33);
+ color: rgb(255, 255, 255);
+ margin-top: 30rpx;
+}
+
+.scroll-h {
+ white-space: nowrap;
+ width: 704rpx;
+ overflow: visible;
+ height: 125rpx;
+ color: transparent;
+}
+
+.scroll-item-h {
+ display: inline-block;
+ width: 172rpx;
+ text-align: center;
+ overflow: visible;
+ height: 70rpx;
+ padding: 15rpx 0rpx;
+}
+::-webkit-scrollbar{
+ width: 0;
+ height: 0;
+ color: transparent;
+}
+.box {
+ width: 0px;
+ height: 0px;
+ margin-left: 15rpx;
+ border-top: 21rpx solid transparent;
+ border-right: 21rpx solid transparent;
+ border-left: 21rpx solid transparent;
+ display: inline-block;
+ transform: rotate(180deg);
+ border-bottom: 21rpx solid rgb(214, 1, 33);
+}
+
+.bd {
+ /* border: 2rpx solid rgb(238, 238, 238); */
+ background-color: rgb(255, 255, 255);
+ color: rgb(20, 20, 20);
+}
+
+.chbd {
+ border: 2rpx solid rgb(214, 1, 33);
+ background-color: rgb(214, 1, 33);
+ color: rgb(255, 255, 255);
+}
+
+.Times {
+ background-color: rgb(238, 243, 247);
+ margin-bottom: 30rpx;
+ padding:34rpx 27rpx;
+}
+
+.Time {
+ border: 2rpx solid rgb(238, 238, 238);
+ width: 160rpx;
+ height: 70rpx;
+ background-color: rgb(255, 255, 255);
+ text-align: center;
+ padding-top: 15rpx;
+ padding-bottom: 15rpx;
+}
+.chTime{
+ border-color: rgb(214, 1, 33);
+}
+.nochTime{
+ color: rgb(174,177,177);
+ background-color: rgb(250,250,250);
+}
+.abs {
+ left: 55rpx;
+ bottom: -39rpx;
+}
diff --git a/packageA/pages/my_service/cosmetology_list.js b/packageA/pages/my_service/cosmetology_list.js
new file mode 100644
index 0000000..5d71119
--- /dev/null
+++ b/packageA/pages/my_service/cosmetology_list.js
@@ -0,0 +1,108 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ defimgurl: "/miniapp/images/no-head.jpg",
+ iurl: a.imghost,
+ cosmetology_list: [], //美容师列表
+ is_cosmetology_read: 0, //是否有读过美容师接口,该属性用在没有美容师列表的排版
+ curpage: 1, //当前分页数
+ pageSize: 10, //页大小
+ total: 0, //总数量
+ ismore: 0, //是否加载完毕
+ itemId: 0, //服务id,
+ storageId: 0, //线下门店id
+ projectId:"",//项目id
+ },
+ onReachBottom: function() {
+ var th = this;
+ if (this.data.total <= th.data.pageSize) return;
+ if (this.data.ismore) return;
+ wx.showLoading({
+ title: '加载中...',
+ })
+ th.query_cology();
+ },
+ query_cology: function() {
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/staff/pagenew";
+ var itemId = th.data.itemId; //服务id
+ var storageId = th.data.storageId;
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ serviceId: itemId,
+ storageId: storageId,
+ page: th.data.curpage,
+ pageSize: th.data.pageSize
+ }
+ }).then(res => {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ th.data.curpage++;
+ var arr1 = th.data.cosmetology_list;
+ var arr2 = res.data.data;
+ var arr3 = [...arr1, ...arr2];
+
+
+ th.setData({
+ cosmetology_list: arr3,
+ total: res.data.data.total,
+ is_service_read: 1,
+ is_cosmetology_read:1
+ }), wx.stopPullDownRefresh(); //停止下拉刷新
+ } else {
+ th.setData({
+ is_cosmetology_read:1,
+ ismore:1
+ })
+ }
+ })
+ },
+ //图片失败,默认图片
+ bind_bnerr1: function(e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _Img = e.target.dataset.img;
+ if (_Img != undefined) {
+ var _errObj = {};
+ _errObj[_errImg] = "/miniapp/images/no-head.jpg";
+ console.log(_errObj,"zzzzzzz");
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ }
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var th = this;
+ th.setData({
+ projectId: options.projectId,
+ itemId: options.itemId,
+ storageId: options.storageId
+ })
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {
+ var th = this;
+ th.data.curpage++;
+ th.setData({
+ cosmetology_list: [],
+ total: 0,
+ is_service_read: 0,
+ is_cosmetology_read:0
+ })
+ th.query_cology();
+ },
+
+})
\ No newline at end of file
diff --git a/packageA/pages/my_service/cosmetology_list.json b/packageA/pages/my_service/cosmetology_list.json
new file mode 100644
index 0000000..90bf58b
--- /dev/null
+++ b/packageA/pages/my_service/cosmetology_list.json
@@ -0,0 +1,6 @@
+{
+ "navigationBarTitleText": "美容师列表",
+ "usingComponents": {
+ "warn": "/components/long_warn/long_warn"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/cosmetology_list.wxml b/packageA/pages/my_service/cosmetology_list.wxml
new file mode 100644
index 0000000..66049b0
--- /dev/null
+++ b/packageA/pages/my_service/cosmetology_list.wxml
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item.StaffName}}
+
+
+
+
+
+
+
+
+ {{it.LabelName}}
+
+
+
+
+
+
+
+ 预约
+
+
+
+
+ {{item.Remark1}}
+
+
+
+ 暂无介绍
+
+
+
+
+
+
+
+ 到底了
+
+
+
+
+
+
+
+
+
+ 暂无美容师
+
+
+ 其他项目
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/cosmetology_list.wxss b/packageA/pages/my_service/cosmetology_list.wxss
new file mode 100644
index 0000000..4a8fb7b
--- /dev/null
+++ b/packageA/pages/my_service/cosmetology_list.wxss
@@ -0,0 +1,124 @@
+page{
+ height: 100%;
+}
+.container{
+ background-color: rgb(255,255,255);
+}
+.appointment {
+ width: 100%;
+ height: 305rpx;
+}
+
+.single {
+ margin-left: 10rpx;
+ border-bottom: 1rpx solid rgb(229, 229, 229);
+ padding-bottom: 30rpx;
+ padding-left: 20rpx;
+ padding-right: 35rpx;
+ padding-top: 30rpx;
+}
+
+.portrait {
+ width: 140rpx;
+ height: 140rpx;
+ border-radius: 50%;
+ margin-right: 30rpx;
+}
+.UserName{
+ max-width: 250rpx;
+}
+.Stars {
+ width: 25rpx;
+ height: 25rpx;
+ margin-right: 7rpx;
+}
+.Labels{
+ width: 100%;
+ margin-top: 15rpx;
+}
+.Label {
+ margin-top: 25rpx;
+}
+
+.Labelitem {
+ width: 100rpx;
+ height: 30rpx;
+ border-radius: 20rpx;
+ line-height: 30rpx;
+ margin-right: 10rpx;
+ padding:0rpx 9rpx;
+}
+
+.itone {
+ border: 2rpx solid rgb(22, 232, 131);
+ color: rgb(22, 232, 131);
+}
+
+.itwo {
+ border: 2rpx solid rgb(92, 135, 248);
+ color: rgb(92, 135, 248);
+}
+
+.ith {
+ border: 2rpx solid rgb(244, 143, 55);
+ color: rgb(244, 143, 55);
+}
+
+.gofu {
+ width: 120rpx;
+ padding: 5rpx 0rpx;
+ border-radius: 25rpx;
+}
+
+.go {
+ border: 1rpx solid rgb(196, 26, 46);
+ color: rgb(196, 26, 46);
+ background-color: rgb(255,255,255);
+}
+
+.gofull {
+ border: 1rpx solid rgb(185, 185, 185);
+ color: rgb(185, 185, 185);
+ background-color: rgb(255,255,255);
+}
+
+.information {
+ margin-top: 25rpx;
+ text-indent: 2em;
+ color: rgb(103, 103, 103);
+}
+/* 无订单 */
+.empty_order image {
+ width: 330rpx;
+ height: 280rpx;
+ margin-top: 120rpx;
+}
+
+.empty_order .xc-ash {
+ margin-top: 10rpx;
+ font-weight: 600px;
+}
+
+.empty_order navigator {
+ margin-top: 60rpx;
+ border-radius: 40rpx;
+}
+
+.empty_order navigator view {
+ width: 247rpx;
+ height: 56rpx;
+ background-color: rgb(255, 72, 72);
+ border-radius: 40rpx;
+}
+.After_all {
+ height: 80rpx;
+}
+
+.After_all .Line {
+ border-top: 3rpx solid rgb(0, 0, 0);
+ width: 130rpx;
+}
+
+.After_all .end {
+ margin: 0rpx 15rpx;
+}
diff --git a/packageA/pages/my_service/hist_service.js b/packageA/pages/my_service/hist_service.js
new file mode 100644
index 0000000..4365592
--- /dev/null
+++ b/packageA/pages/my_service/hist_service.js
@@ -0,0 +1,157 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ iurl: a.imghost,
+ isPickerShow: false,
+ isPickerRender: false,
+ startTime: "",
+ endTime: "",
+ pickerConfig: {
+ endDate: true,
+ column: "",
+ dateLimit: true,
+ initStartTime: "2019-01-01 12:32:44",
+ initEndTime: "2019-12-01 12:32:44",
+ limitStartTime: "1917-05-06 12:32:44",
+ limitEndTime: "2055-05-06 12:32:44"
+ },
+ hist_List: [], //服务项目列表
+ is_service_read: 0,
+ curpage: 1, //当前分页数
+ pageSize: 15, //页大小
+ total: 0,
+ ismore: 0, //是否加载完毕
+ is_screen: 0, //是否通过筛选来选择历史服务
+ is_reset: 0, //是否重复点击
+ is_nav: 1, //是否显示导航栏
+ },
+ pickerShow: function() {
+ this.setData({
+ isPickerShow: true,
+ isPickerRender: true,
+ chartHide: true
+ });
+ },
+ pickerHide: function() {
+ var th = this;
+ th.setData({
+ isPickerShow: false,
+ chartHide: false
+ });
+ },
+ //--选择时间--
+ setPickerTime: function(val) {
+ let data = val.detail,
+ gl_data = getApp().globalData,
+ th = this;
+ th.setData({
+ startTime: data.startTime,
+ endTime: data.endTime,
+ val: 0,
+ distance: 0,
+ hist_List: [],
+ curpage: 1,
+ is_screen: 1,
+ is_nav: 1
+ });
+ th.query_hist();
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var th = this;
+ th.query_hist();
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {},
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom: function() {
+ var th = this;
+ if (th.data.total <= th.data.pageSize) return false;
+ if (th.data.ismore) return false;
+
+ wx.showLoading({
+ title: '加载中...',
+ })
+ th.query_hist();
+ },
+ //重置历史服务数据
+ his_reset: function() {
+ var th = this;
+ var is_reset = th.data.is_reset;
+ if (is_reset == 0) {
+ th.setData({
+ hist_List: [],
+ curpage: 1,
+ is_service_read: 0,
+ is_screen: 1,
+ is_reset: 1,
+ startTime: "",
+ endTime: "",
+ is_nav: 1
+ })
+ th.query_hist();
+ }
+ },
+ query_hist: function() {
+
+ var th = this;
+ var startTime = th.data.startTime.substring(0, 10); //开始
+ var endTime = th.data.endTime.substring(0, 10); //结束
+ var url = "/api/weshop/marketing/reservation/history/reservation/page";
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ beginDate: startTime,
+ endDate: endTime,
+ page: th.data.curpage,
+ pageSize: th.data.pageSize
+ }
+ }).then(res => {
+ wx.hideLoading();
+ th.setData({
+ is_reset: 0
+ })
+ if (res.data.code == 0) {
+ th.data.curpage++;
+ var arr1 = th.data.hist_List;
+ var arr2 = res.data.data.pageData;
+ var arr3 = [...arr1, ...arr2];
+ var ismore = 0;
+ if (arr3.length == res.data.total) ismore = 1
+ th.setData({
+ hist_List: arr3,
+ total: res.data.data.total,
+ ismore: ismore,
+ is_service_read: 1,
+ }), wx.stopPullDownRefresh(); //停止下拉刷新
+ } else {
+ th.setData({
+ is_service_read: 1,
+ is_screen: 0,
+ ismore: 1
+ })
+ if (startTime!="") {
+ th.setData({
+ total:0
+ })
+ }
+ }
+ })
+ }
+})
\ No newline at end of file
diff --git a/packageA/pages/my_service/hist_service.json b/packageA/pages/my_service/hist_service.json
new file mode 100644
index 0000000..b81e3be
--- /dev/null
+++ b/packageA/pages/my_service/hist_service.json
@@ -0,0 +1,7 @@
+{
+ "navigationBarTitleText": "历史预约",
+ "usingComponents": {
+ "timePicker": "/components/timePicker/timePicker",
+ "warn": "/components/long_warn/long_warn"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/hist_service.wxml b/packageA/pages/my_service/hist_service.wxml
new file mode 100644
index 0000000..2e8cb8e
--- /dev/null
+++ b/packageA/pages/my_service/hist_service.wxml
@@ -0,0 +1,77 @@
+
+
+
+
+ 共使用
+ {{total}}
+ 次服务
+
+
+
+ 重置
+
+
+
+ 筛选
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item.ServiceName==''?'匿名':item.ServiceName}}
+
+ (服务美容师:
+
+
+ (预约美容师:
+
+ {{item.BeauticianName}}
+ )
+
+ {{item.ArrangeTime}}
+
+
+
+ 未服务
+ 已服务
+ 已过期
+ 已取消
+ 已评价
+
+
+
+
+
+
+ 到底了
+
+
+
+
+
+ 该时间段无预约记录
+
+
+
+
+
+
+ 暂无服务记录
+
+
+ 前往使用
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/hist_service.wxss b/packageA/pages/my_service/hist_service.wxss
new file mode 100644
index 0000000..8882a8d
--- /dev/null
+++ b/packageA/pages/my_service/hist_service.wxss
@@ -0,0 +1,121 @@
+page {
+ height: 100%;
+}
+
+.box {
+ width: 0px;
+ height: 0px;
+ margin-left: 15rpx;
+ border-top: 11rpx solid rgba(0, 0, 0, 0);
+ border-right: 10rpx solid rgba(0, 0, 0, 0);
+ border-left: 10rpx solid rgba(0, 0, 0, 0);
+ display: inline-block;
+ margin-bottom: 10rpx;
+ color: red;
+ transform: rotate(0deg);
+ border-bottom: 18rpx solid rgb(153, 153, 153);
+}
+
+.exption {
+ padding: 0rpx 45rpx;
+ background-color: rgb(238, 238, 238);
+ height: 70rpx;
+ color: rgb(153, 153, 153);
+ position: fixed;
+ top:0rpx;
+ left: 0rpx;
+ width: 660rpx;
+}
+
+.count {
+ margin: 0rpx 5rpx;
+}
+
+.Resetfram {
+ margin-right: 40rpx;
+}
+
+.Reset {
+ margin-right: 5rpx;
+}
+
+.Resetsub {
+ width: 30rpx;
+ height: 30rpx;
+}
+.items{
+ margin-top: 70rpx;
+}
+.item {
+ margin: 0rpx 25rpx;
+ padding: 0rpx 20rpx;
+ height: 100rpx;
+ border-bottom: 1rpx solid rgb(242, 242, 242);
+}
+
+.itemName {
+ margin-right: 10rpx;
+ max-width: 130rpx;
+}
+
+.itemUsna {
+ max-width: 150rpx;
+}
+
+.serState {
+ color: rgb(255, 82, 125);
+}
+
+.container {
+ position: fixed;
+ width: 100%;
+ top: 0rpx;
+}
+
+/* 无历史服务 */
+
+.empty_order {
+ height: 100%;
+ background-color: rgb(238, 238, 238);
+}
+
+.empty_order image {
+ width: 329rpx;
+ height: 229rpx;
+ margin-top: 202rpx;
+}
+
+.empty_order .xc-ash {
+ margin-top: 10rpx;
+ font-weight: 600px;
+}
+
+.empty_order navigator {
+ margin-top: 65rpx;
+ border-radius: 40rpx;
+}
+
+.empty_order navigator view {
+ width: 247rpx;
+ height: 65rpx;
+ background-color: rgb(255, 72, 72);
+ border-radius: 40rpx;
+}
+
+.After_all {
+ height: 80rpx;
+}
+
+.After_all .Line {
+ border-top: 3rpx solid rgb(0, 0, 0);
+ width: 130rpx;
+}
+
+.After_all .end {
+ margin: 0rpx 15rpx;
+}
+.slot{
+ color: rgb(153, 153, 153);
+ height:300rpx;
+ width:100%;
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/i_service.js b/packageA/pages/my_service/i_service.js
new file mode 100644
index 0000000..20d4b62
--- /dev/null
+++ b/packageA/pages/my_service/i_service.js
@@ -0,0 +1,256 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ qr_code_object: {
+ val: "12121",
+ content: "请将二维码展示给核销员,服务更快捷!"
+ },
+ iurl: a.imghost,
+ defimgurl: "/miniapp/images/yyservice/yyxmdefault.jpg",
+ service_List: [], //服务项目列表
+ is_service_read: 0,
+ curpage: 1, //当前分页数
+ pageSize: 10, //页大小
+ total: 0,
+ ismore: 0, //是否加载完毕
+ userinfo: null,
+ is_sub: 0, //是否重复提交预约
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var userinfo = getApp().globalData.userInfo;
+ if (userinfo == null) {
+ //界面必须使用warn 做ID,并调用
+ return false;
+ }
+ this.setData({
+ userinfo: userinfo
+ });
+ var th = this;
+ th.query_service();
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {
+ var th = this;
+ var my_confirm = th.selectComponent("#my_confirm"); //组件的id
+ my_confirm.open_cancel(0);
+ },
+ onReachBottom: function() {
+ var th = this;
+ if (this.data.total <= th.data.pageSize) return;
+ if (this.data.ismore) return;
+
+ th.query_service();
+ },
+ //查询服务项目列表
+ query_service: function() {
+ wx.showLoading({
+ title: '加载中',
+ })
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/sm/page?State=1";
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ page: th.data.curpage,
+ pageSize: th.data.pageSize
+ }
+ }).then(res => {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ th.data.curpage++;
+ var arr1 = th.data.service_List;
+ var arr2 = res.data.data.pageData;
+ var arr3 = [...arr1, ...arr2];
+ var ismore = 0;
+ if (arr3.length == res.data.data.total) ismore = 1
+ th.setData({
+ service_List: arr3,
+ total: res.data.data.total,
+ ismore: ismore,
+ is_service_read: 1,
+ }),
+ wx.stopPullDownRefresh(); //停止下拉刷新
+ } else {
+ th.setData({
+ is_service_read: 1
+ })
+ }
+ })
+ },
+ /*-- 打开服务项目 --*/
+ open_fw: function(e) {
+ wx.showLoading({
+ title: '加载中',
+ })
+ var th = this;
+ var url = e.currentTarget.dataset.url;
+ var service_id = e.currentTarget.dataset.service_id; //服务id
+ var project_id = e.currentTarget.dataset.project_id;
+ var ind = e.currentTarget.dataset.ind;
+ var item = this.data.service_List[ind];
+ var ewm = "^" + th.data.userinfo.erpvipid + "|" + item.ProjectID + "|" + item.BuyType + "|TY01|";
+ var tt = th.format_time(1);
+ ewm = ewm + tt;
+ th.data.qr_code_object.val = ewm;
+ th.data.qr_code_object.is_fw = 1;
+ var qc_com = th.selectComponent("#qc_com"); //组件的id
+ getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/check", {
+ data: {
+ serviceId: service_id,
+ storeId: a.stoid,
+ userId: d.user_id
+ }
+ }).then(res => {
+ wx.hideLoading();
+ th.setData({
+ is_sub: 0
+ })
+ if (res.data.data != null) {
+ var my_confirm = th.selectComponent("#my_confirm"); //组件的id
+ my_confirm.open_cancel(1);
+ my_confirm.open(
+ "已有预约记录!",
+ "预约详情",
+ "继续使用",
+ function() {
+ my_confirm.open_cancel(0);
+ var deta_url = "/pages/user/my_service/tment_details?number=" + res.data.data.Number;
+ wx.navigateTo({
+ url: deta_url
+ })
+ },
+ function() {
+ my_confirm.open_cancel(0);
+ qc_com.open(th.data.qr_code_object)
+ }
+
+ )
+
+ } else {
+ qc_com.open(th.data.qr_code_object)
+ }
+ })
+
+ },
+ //图片失败,默认图片
+ bind_bnerr1: function(e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _Img = e.target.dataset.img;
+ if (_Img != undefined) {
+ var _errObj = {};
+ _errObj[_errImg] = "/miniapp/images/no_cate_def.png";
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ }
+ },
+ format_time: function(isFull) {
+ var d = new Date();
+ var m = d.getMonth() + 1;
+ if (m < 10) m = "0" + m;
+ var dd = d.getDate();
+ if (dd < 10) dd = "0" + dd;
+ var fm = [d.getFullYear(), m, dd].join('-');
+ if (isFull == 1)
+ fm = fm + ' ' + [d.getHours(), d.getMinutes(), d.getSeconds()].join(':')
+ return fm;
+ },
+ //跳转到首页
+ goto: function(e) {
+ var url = e.currentTarget.dataset.url;
+ getApp().goto(url);
+ },
+ //校正是否可预约
+ correcting: function(e) {
+ var th = this;
+ wx.showLoading({
+ title: '加载中',
+ })
+ if (th.data.is_sub == 0) {
+ th.setData({
+ is_sub: 1
+ })
+ var url = e.currentTarget.dataset.url;
+ var service_id = e.currentTarget.dataset.service_id; //服务id
+ var project_id = e.currentTarget.dataset.project_id;
+ getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/check", {
+ data: {
+ serviceId: service_id,
+ storeId: a.stoid,
+ userId: d.user_id
+ }
+ }).then(res => {
+ wx.hideLoading();
+ th.setData({
+ is_sub: 0
+ })
+ if (res.data.code == 0) {
+ if (res.data.data != null) {
+
+ var number = res.data.data.Number;
+ var my_confirm = th.selectComponent("#my_confirm"); //组件的id
+ my_confirm.open_cancel(1);
+ my_confirm.open(
+ "已有预约记录!",
+ "预约详情",
+ "继续预约",
+ function() {
+ my_confirm.open_cancel(0);
+ var deta_url = "/pages/user/my_service/tment_details?number=" + number;
+ wx.navigateTo({
+ url: deta_url
+ })
+ },
+ function() {
+ my_confirm.open_cancel(0);
+ getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/sm/check", {
+ data: {
+ projectId: project_id,
+ serviceId: service_id,
+ storeId: a.stoid,
+ userId: d.user_id
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ wx.navigateTo({
+ url: url
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+ }
+ )
+ } else {
+ wx.navigateTo({
+ url: url,
+ })
+ }
+
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+ }
+ },
+ //关闭导航
+ close: function () {
+ var th = this;
+ var nav_b = th.selectComponent("#nav_b"); //组件的id
+ nav_b.close_box();
+ }
+
+})
\ No newline at end of file
diff --git a/packageA/pages/my_service/i_service.json b/packageA/pages/my_service/i_service.json
new file mode 100644
index 0000000..516d6e0
--- /dev/null
+++ b/packageA/pages/my_service/i_service.json
@@ -0,0 +1,9 @@
+{
+ "navigationBarTitleText": "服务项目",
+ "usingComponents": {
+ "qr_code": "/components/qr_code/qr_code",
+ "warn": "/components/long_warn/long_warn",
+ "my_confirm": "/components/my_confirm/my_confirm",
+ "nav_b": "/components/nav_b/nav_b"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/i_service.wxml b/packageA/pages/my_service/i_service.wxml
new file mode 100644
index 0000000..7191905
--- /dev/null
+++ b/packageA/pages/my_service/i_service.wxml
@@ -0,0 +1,103 @@
+
+
+
+ 服务记录
+ 历史预约
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item.ServiceName}}
+
+
+
+ 剩余次数:
+ {{item.ObtainTimes}}
+
+
+
+ 有效期至
+ {{item.Validay==""?"长期有效":item.Validay}}
+
+
+
+
+
+
+
+
+ 帮你预约
+
+
+
+
+
+
+
+
+
+
+
+ 到底了
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 暂无服务卡项,立即购买!
+
+
+ 回到首页
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/i_service.wxss b/packageA/pages/my_service/i_service.wxss
new file mode 100644
index 0000000..a047ecd
--- /dev/null
+++ b/packageA/pages/my_service/i_service.wxss
@@ -0,0 +1,173 @@
+page {
+ overflow-x: scroll;
+}
+
+/* 背景定位 */
+
+.backimage {
+ position: absolute;
+ top: 0rpx;
+ left: 0rpx;
+ z-index: 0;
+ width: 100%;
+ /* height: 100%; */
+}
+
+/* 历史服务定位 */
+
+.History {
+ position: absolute;
+ top: 30rpx;
+ right: 20rpx;
+ z-index: 1;
+ color: rgb(255, 255, 255);
+}
+
+.rel {
+ background-color: rgb(255, 255, 255);
+ width: 350rpx;
+ height: 430rpx;
+ border-radius: 20rpx;
+ display: inline-block;
+ margin-right: 15rpx;
+ margin-bottom: 20rpx;
+ box-shadow: 0rpx 3rpx 3rpx 3rpx rgb(233, 233, 233);
+}
+
+.abs {
+ left: 10rpx;
+ top: 10rpx;
+}
+
+.equity_money {
+ width: 50rpx;
+ height: 55rpx;
+}
+
+.Serviceitems {
+ position: absolute;
+ top: 370rpx;
+ left: 0rpx;
+ z-index: 2;
+ padding-left: 18rpx;
+ padding-bottom: 20rpx;
+}
+
+.itemimage {
+ width: 120rpx;
+ height: 120rpx;
+ border-radius: 50%;
+ margin-top: 30rpx;
+ margin-bottom: 20rpx;
+}
+
+.itemName {
+ margin-bottom: 25rpx;
+ color: rgb(48, 48, 48);
+}
+
+.itemName .Name {
+ max-width: 250rpx;
+ text-align: center;
+}
+
+.itemCount {
+ margin-bottom: 5rpx;
+ color: rgb(177, 177, 177);
+ align-items: baseline;
+}
+
+.itemEffective {
+ margin-bottom: 30rpx;
+ color: rgb(177, 177, 177);
+ align-items: baseline;
+}
+
+.functionMax {
+ padding: 0rpx 25rpx;
+ color: rgb(254, 255, 255);
+}
+
+.Use {
+ width: 170rpx;
+ height: 50rpx;
+ line-height: 50rpx;
+ border-radius: 25rpx;
+ background-color: red;
+}
+
+.appointment {
+ width: 115rpx;
+ height: 50rpx;
+ line-height: 50rpx;
+ border-radius: 25rpx;
+ margin-left: 20rpx;
+}
+
+.Date {
+ margin-left: 10rpx;
+}
+
+/* 无服务项目 */
+
+.cover {
+ position: fixed;
+ z-index: 1;
+ left: 0rpx;
+ top: 390rpx;
+ width: 100%;
+ height: 200rpx;
+ background-color: rgb(255, 255, 255);
+}
+
+/* 无历史服务 */
+
+.empty_order {
+ position: fixed;
+ left: 0rpx;
+ top: 500rpx;
+ z-index: 2;
+ width: 100%;
+}
+
+.empty_order image {
+ width: 329rpx;
+ height: 229rpx;
+ margin-top: 80rpx;
+}
+
+.empty_order .xc-ash {
+ margin-top: 10rpx;
+ font-weight: 600px;
+}
+
+.empty_order navigator {
+ margin-top: 60rpx;
+ border-radius: 40rpx;
+}
+
+.empty_order navigator view {
+ width: 247rpx;
+ height: 56rpx;
+ background-color: rgb(255, 72, 72);
+ border-radius: 40rpx;
+}
+
+.After_all {
+ height: 80rpx;
+}
+
+.After_all .Line {
+ border-top: 3rpx solid rgb(0, 0, 0);
+ width: 130rpx;
+}
+
+.After_all .end {
+ margin: 0rpx 15rpx;
+}
+
+.btn {
+ background-color: red;
+ padding: 10rpx 20rpx;
+ border-radius: 30rpx;
+}
diff --git a/packageA/pages/my_service/my_service.js b/packageA/pages/my_service/my_service.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packageA/pages/my_service/my_service.js
diff --git a/packageA/pages/my_service/my_service.wxml b/packageA/pages/my_service/my_service.wxml
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packageA/pages/my_service/my_service.wxml
diff --git a/packageA/pages/my_service/tment_details.js b/packageA/pages/my_service/tment_details.js
new file mode 100644
index 0000000..7cdc06b
--- /dev/null
+++ b/packageA/pages/my_service/tment_details.js
@@ -0,0 +1,137 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ url: a.url,
+ iurl: a.imghost,
+ tment_details: [], //预约详情
+ number: "", //订单号
+ arrangeTime: "", //预约年月日
+ day: "", //判断是上午还是下午
+ states: 3, //3为取消预约
+ },
+ //取消预约
+ cancel_tment: function(e) {
+ var th = this;
+ var my_confirm = th.selectComponent("#my_confirm"); //组件的id
+ my_confirm.open(
+ "确定取消?",
+ "取消",
+ "确定",
+ function() {
+ my_confirm.open_cancel(0);
+ },
+ function() {
+ var index = e.currentTarget.dataset.index;
+ var states = th.data.states;
+ var tment_details = th.data.tment_details;
+ var number = th.data.number;
+ var json = {
+ "number": number,
+ "storeId": a.stoid,
+ "states": states
+ };
+ var data = JSON.stringify(json);
+ var url = th.data.url + "/api/weshop/marketing/reservation/reservation/update"; //预约接口地址
+ wx.request({
+ url: url,
+ data: data,
+ method: 'put',
+ header: {
+ 'content-type': 'application/json'
+ }, // 设置请求的 header
+ success: function(res) {
+ my_confirm.open_cancel(0);
+ if (res.data.code == 0) {
+ getApp().my_warnning("取消成功", 1, th);
+ var start = 'tment_details[' + 0 + '].State';
+ th.setData({
+ [start]: 3
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ }
+ })
+ }
+ );
+
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var th = this;
+ th.setData({
+ number: options.number
+ })
+ },
+ //查询美容师详情
+ query_bea: function() {
+ var th = this;
+ var number = th.data.number;
+ var url = "/api/weshop/marketing/reservation/reservation/page";
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ number: number
+ }
+ }).then(res => {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ var data = res.data.data.pageData;
+ var arrangeTime = data[0].ArrangeTime.substring(0, 11);
+ var day = data[0].ArrangeTime.substring(11, 16);
+ th.setData({
+ tment_details: data,
+ arrangeTime: arrangeTime,
+ day: day
+ })
+
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+ },
+ //显示核销码
+ code_show: function(e) {
+ var th = this;
+ //--获取成功的时候--
+ var no = e.currentTarget.dataset.order_sn;
+ var qc_com = th.selectComponent("#qc_com"); //组件的id
+ var obj = {
+ val: no,
+ content: "请将二维码展示给核销员,使用更快捷"
+ };
+ qc_com.open(obj)
+ },
+ //跳到首页
+ goto: function(e) {
+ var th = this;
+ wx.navigateTo({
+ url: '/pages/index/index/index',
+ })
+ },
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {
+ var th = this;
+ th.query_bea();
+ },
+ //关闭导航
+ close: function () {
+ var th = this;
+ var nav_b = th.selectComponent("#nav_b"); //组件的id
+ nav_b.close_box();
+ }
+})
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_details.json b/packageA/pages/my_service/tment_details.json
new file mode 100644
index 0000000..98e6ad7
--- /dev/null
+++ b/packageA/pages/my_service/tment_details.json
@@ -0,0 +1,9 @@
+{
+ "navigationBarTitleText": "预约详情",
+ "usingComponents": {
+ "qr_code": "/components/qr_code/qr_code",
+ "warn": "/components/long_warn/long_warn",
+ "my_confirm": "/components/my_confirm/my_confirm",
+ "nav_b": "/components/nav_b/nav_b"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_details.wxml b/packageA/pages/my_service/tment_details.wxml
new file mode 100644
index 0000000..a6c137b
--- /dev/null
+++ b/packageA/pages/my_service/tment_details.wxml
@@ -0,0 +1,126 @@
+
+
+
+
+
+ 预约状态:
+ 未服务
+ 已服务
+ 已过期
+ 已取消
+ 已评价
+
+
+
+
+
+
+ 预约订单:
+ {{number}}
+
+
+
+
+
+
+ 预约门店:
+ {{item.StorageName}}
+
+
+
+
+ 预约项目:
+ {{item.ServiceName}}
+
+
+
+
+ 预约时间:
+ {{arrangeTime}}
+ {{day}}
+
+
+
+
+
+
+
+
+ 服务美容师:
+
+
+ 预约美容师:
+
+
+ {{item.BeauticianName}}
+
+
+
+
+
+ 预
+ 约
+ 人:
+
+ {{item.VIPName}}
+
+
+
+
+ 手
+ 机
+ 号:
+
+ {{item.MobileTel}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 温馨提示
+
+ 1.预约成功后需在指定时间前到达;
+ 2.如有任何问题可致电咨询;
+ 3.如需退约,需提前取消。
+
+
+
+
+
+ 取消预约
+
+
+ 我的服务
+
+
+
+ 更改时间
+
+
+ 发表评价
+
+
+ 查看评价
+
+
+ 重新预约
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_details.wxss b/packageA/pages/my_service/tment_details.wxss
new file mode 100644
index 0000000..d525a6a
--- /dev/null
+++ b/packageA/pages/my_service/tment_details.wxss
@@ -0,0 +1,118 @@
+page {
+ width: 100%;
+ background-color: rgb(238, 238, 238);
+}
+
+/* 公用 */
+
+.lf {
+ padding: 0rpx 40rpx;
+}
+
+.bt {
+ margin: 0rpx 15rpx;
+ padding: 0rpx 25rpx;
+ border-top: 2rpx dashed rgb(238, 238, 238);
+ padding-top: 50rpx;
+ padding-bottom: 50rpx;
+}
+
+.bmt {
+ margin-bottom: 35rpx;
+}
+
+.name {
+ width: 160rpx;
+ margin-right: 25rpx;
+}
+
+.value {
+ max-width: 390rpx;
+}
+
+/* 公用 */
+
+.container {
+ padding-bottom:70rpx;
+}
+
+.padding{
+ margin: 0rpx 20rpx;
+}
+
+.Subscriber {
+ overflow: hidden;
+ margin-top: 25rpx;
+ background-color: rgb(255, 255, 255);
+ border-radius: 10rpx;
+}
+
+.statusBar {
+ height: 80rpx;
+ background-color: rgb(214, 1, 33);
+ color: rgb(255, 255, 255);
+}
+
+.date {
+ margin-right: 25rpx;
+}
+
+.items {
+ margin: 40rpx 0rpx;
+}
+
+.Tips {
+ margin-top: 20rpx;
+ padding-top: 35rpx;
+ height: 255rpx;
+ border-radius: 10rpx;
+ background-color: rgb(255, 255, 255);
+ margin-bottom: 50rpx;
+}
+
+.Cozy {
+ width: 165rpx;
+ height: 43rpx;
+ margin-bottom: 20rpx;
+ color: rgb(255, 255, 255);
+ background-size: 100%;
+}
+
+.subs {
+ width: 710rpx;
+ padding: 15rpx 20rpx;
+ position: fixed;
+ bottom:0rpx;
+ background-color: rgb(255,255,255);
+}
+
+.sub {
+ width: 325rpx;
+ height: 65rpx;
+ border-radius: 30rpx;
+ color: rgb(255, 255, 255);
+}
+.code{
+ margin-left: 10rpx;
+ width: 50rpx;
+ height: 50rpx;
+}
+.rb {
+ background-color: rgb(214, 1, 33);
+}
+
+/* 棒槌 */
+
+.Stickl {
+ width: 39rpx;
+ height: 10rpx;
+ background-color: rgb(153, 153, 153);
+ transform: rotate(270deg);
+ border-radius: 20rpx;
+ left: 95rpx;
+ top: -15rpx;
+}
+
+.Stickr {
+ left: 590rpx;
+}
diff --git a/packageA/pages/my_service/tment_eval.js b/packageA/pages/my_service/tment_eval.js
new file mode 100644
index 0000000..3c60c6a
--- /dev/null
+++ b/packageA/pages/my_service/tment_eval.js
@@ -0,0 +1,287 @@
+ var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ url: a.url, //接口网址
+ iurl: a.imghost,
+ defimgurl: "/miniapp/images/no-head.jpg",
+ stars_index: -1, //当前点击的星星下标
+ labels: [], //星级标签数组
+ sub_evaluate: 0, //是否评价成功
+ proposal: "", //用户输入的建议
+ proposal_size: 100, //评价意见和建议限定字数
+ number: "", //订单单号
+ beautician: "", //美容师信息
+ fromType: "服务评价", //评价来源
+ arrangeTime: "", //服务日期
+ is_evaluate: 0, //是否评价
+ EvaluateDatetime: "", //评价时间
+ is_act:0, //是否能购获取图片
+ actId:0, //活动ID
+ giftBagId:0, //礼包ID
+
+ },
+ //点击星级
+ check_stars: function(e) {
+ var th = this;
+ var is_evaluate = th.data.is_evaluate; //0可点击
+ if (is_evaluate == 0) {
+ var index = e.currentTarget.dataset.index;
+ var stars_index = th.data.stars_index;
+ if (index != stars_index) {
+ var url = "/api/weshop/marketing/reservation/star/label/list";
+ getApp().request.promiseGet(url, {
+ data: {
+ Star: index + 1,
+ storeId: a.stoid
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ th.setData({
+ labels: res.data.data
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ return;
+ }
+ })
+ th.setData({
+ stars_index: index
+ })
+ }
+ }
+ },
+ //输入评价意见和建议
+ input_proposal: function(e) {
+ var th = this;
+ var value = e.detail.value;
+ th.setData({
+ proposal: value
+ })
+ },
+ //图片失败,默认图片
+ bind_bnerr1: function (e) {
+ var th = this;
+ var _errImg = e.target.dataset.errorimg;
+ var _Img = e.target.dataset.img;
+ if (_Img != undefined) {
+ var _errObj = {};
+ _errObj[_errImg] = "/miniapp/images/no-head.jpg";
+ th.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ }
+ },
+ //选择标签
+ check_label: function(e) {
+ var th = this;
+ var evaluate = th.data.is_evaluate; //0为未评价,未评价才可点击标签
+ if (evaluate == 0) {
+ var index = e.currentTarget.dataset.index;
+ var label_id = th.data.labels[index].check;
+ var labels = 'labels[' + index + '].check';
+ if (label_id) {
+ label_id = 0
+ } else {
+ label_id = 1
+ }
+ th.setData({
+ [labels]: label_id
+ })
+ }
+ },
+ //查询美容师信息
+ query_bea: function() {
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/reservation/page";
+ var number = th.data.number; //订单编号
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ number: number
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var data = res.data.data.pageData;
+ var arrangeTime = data[0].ArrangeTime;
+ th.setData({
+ beautician: data,
+ arrangeTime: arrangeTime
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+ },
+ //获取预约评价
+ evaluate_get: function() {
+ var th = this;
+ var url = "/api/weshop/evaluation/evaluate/get";
+ getApp().request.promiseGet(url, {
+ data: {
+ number: th.data.number,
+ storeId: a.stoid
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ th.setData({
+ stars_index: res.data.data.Star-1,
+ labels: res.data.data.EvaluationList,
+ proposal: res.data.data.Remark,
+ EvaluateDatetime: res.data.data.EvaluateDatetime.substring(0, 19)
+ })
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ })
+ },
+ //提交评价
+ evaluate_save: function() {
+ var th = this;
+ var stars = th.data.stars_index; //评价星级
+ var proposal = th.data.proposal;
+ //判断是否评级
+ if (stars < 0) {
+ getApp().my_warnning("请进行评分", 0, th);
+ return false;
+ } else if (proposal == "") {
+ getApp().my_warnning("给点建议呗", 0, th);
+ return false;
+ }
+ wx.showLoading({
+ title: '加载中',
+ })
+ var labels = th.data.labels; //星级标签数组
+ var evaLabList = []; //用户选择的评价标签
+ // 查询评价标签
+ for (var i = 0; i < labels.length; i++) {
+ if (labels[i].check) {
+ evaLabList.push(labels[i].LabelName);
+ }
+ }
+ var url = th.data.url + "/api/weshop/evaluation/evaluate/insert";
+ var posNo = th.data.number; //收银单号
+ var proposal = th.data.proposal; //用户建议内容
+ var fromType = th.data.fromType; //评价来源
+ var json = {
+ "evaLabList": evaLabList,
+ "fromType": 2,
+ "number": posNo,
+ "remark": proposal,
+ "star": stars + 1,
+ "storeId": a.stoid
+ };
+ var data = JSON.stringify(json); //转换成json格式
+ wx.request({
+ url: url,
+ data: data,
+ method: 'POST',
+ header: {
+ 'content-type': 'application/json'
+ }, // 设置请求的 header
+ success: function(res) {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ getApp().my_warnning("评价成功", 1, th);
+ var namber=th.data.number;
+ setTimeout(function() {
+ wx.redirectTo({
+ url: "/pages/user/my_service/tment_eval?Number="+namber+"&evaluate="+1
+ });
+ }, 2000);
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ }
+ }
+ })
+
+ },
+ //图片失败,默认图片
+ bind_bnerr1: function(e) {
+ var th = this;
+ var _errImg = e.target.dataset.errorimg;
+ var _Img = e.target.dataset.img;
+ if (_Img != undefined) {
+
+ var _errObj = {};
+ _errObj[_errImg] = th.data.iurl+"/miniapp/images/no-head.jpg";
+ th.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ }
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var th = this;
+ th.setData({
+ number: options.Number,
+ is_evaluate: options.evaluate
+ })
+ th.query_bea();
+ th.judge_act();
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow: function() {
+ var th = this;
+ var is_evaluate = th.data.is_evaluate;
+ if (is_evaluate == 1) {
+ th.evaluate_get();
+ }
+ },
+ //评价其他跳转
+ evaluate_qt:function(){
+
+ wx.redirectTo({
+ url: "/pages/user/my_service/tment_order_list?state="+2
+ });
+ },
+ //点击领取礼包
+ clike_lb:function(){
+
+ var id=this.data.actId;
+ var gifbagid = this.data.gifbagid;
+ console.log(id,"订单", this.data.number),
+ wx.redirectTo({
+ url: "/pages/giftpack/evaluategift/evaluategift?actId="+id+ "&orderType=2&orderNumber="+this.data.number
+ });
+
+ },
+
+ //--评价有礼判断---
+ judge_act: function () {
+ var th = this;
+ var url = "/api/weshop/marketing/comment/act/judge";
+ getApp().request.promiseGet(url, {
+ data: {
+ orderNumber: th.data.number,
+ orderType: 2,
+ storeId: a.stoid,
+ userId: d.user_id
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var id = res.data.data.id;
+ var giftbagid = res.data.data.giftbagid;
+ th.setData({
+ is_act: 1,
+ actId: id,
+ giftBagId: giftbagid
+ })
+ } else{
+ th.setData({
+ is_act:0
+ })
+ }
+ })
+ },
+
+})
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_eval.json b/packageA/pages/my_service/tment_eval.json
new file mode 100644
index 0000000..8d44d3f
--- /dev/null
+++ b/packageA/pages/my_service/tment_eval.json
@@ -0,0 +1,7 @@
+{
+ "navigationBarTitleText": "预约评价",
+ "usingComponents": {
+ "qr_code": "/components/qr_code/qr_code",
+ "warn": "/components/long_warn/long_warn"
+ }
+}
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_eval.wxml b/packageA/pages/my_service/tment_eval.wxml
new file mode 100644
index 0000000..2a52ff8
--- /dev/null
+++ b/packageA/pages/my_service/tment_eval.wxml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+ 服务美容师:
+
+ {{it.BeauticianName}}
+
+
+
+
+ 服务项目:
+ {{it.ServiceName}}
+
+
+
+
+ 服务时间:
+ {{it.WriteTime}}
+
+
+
+
+ 评价时间:
+ {{EvaluateDatetime}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{proposal}}
+
+
+
+
+
+
+ {{item.LabelName}}
+
+
+
+
+
+
+ {{item.LabelName}}
+
+
+
+
+
+
+
+
+ 满意的话请打五星噢,谢谢您的支持!
+
+
+
+
+
+
+
+
+ 评价成功
+
+
+
+
+
+
+ 确认提交
+
+
+
+
+
+
+ 评价其他
+
+
+
+ 点击领取礼品
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_eval.wxss b/packageA/pages/my_service/tment_eval.wxss
new file mode 100644
index 0000000..8b0b898
--- /dev/null
+++ b/packageA/pages/my_service/tment_eval.wxss
@@ -0,0 +1,144 @@
+.container {
+ border-top: 7rpx solid rgb(245, 245, 245);
+ padding-bottom: 100rpx;
+ background-color: rgb(255, 255, 255);
+}
+
+.head {
+ height: 270rpx;
+}
+
+.headimg {
+ width: 190rpx;
+ height: 190rpx;
+ border-radius: 50%;
+}
+
+.item {
+ margin-bottom: 20rpx;
+}
+
+.itemlf {
+ width: 195rpx;
+}
+
+.itemlr {
+ width: 360rpx;
+}
+
+.starss {
+ margin-top: 15rpx;
+ border-top: 3rpx dashed rgb(203, 203, 203);
+ padding-top: 25rpx;
+ padding-left: 15rpx;
+}
+
+.stars {
+ width: 50rpx;
+ height: 50rpx;
+ margin-right: 20rpx;
+}
+
+.datetime {
+ width: 190rpx;
+}
+
+.tea_labs {
+ padding: 0rpx 56rpx;
+ margin-top: 20rpx;
+}
+
+.proposal {
+ right: 20rpx;
+ bottom: 20rpx;
+ color: rgb(152, 152, 152);
+}
+
+.textarea {
+ width: 100%;
+ height: 200rpx;
+ margin-top: 70rpx;
+ border: 2rpx solid rgb(203, 203, 203);
+ border-radius: 13rpx;
+ padding-top: 25rpx;
+ padding-left: 30rpx;
+ margin-bottom: 30rpx;
+ padding-right: 15rpx;
+ padding-bottom: 20rpx;
+}
+
+.labels {
+ display: inline-block;
+ max-height: 240rxp;
+ line-height: 50rpx;
+ padding-left: 15rpx;
+}
+
+.label {
+ padding: 0rpx 10rpx;
+ height: 48rpx;
+ line-height: 48rpx;
+ border: 2rpx solid rgb(218, 218, 218);
+ color: rgb(152, 152, 152);
+ border-radius: 5rpx;
+ margin-right: 20rpx;
+ width: 165rpx;
+ display: inline-block;
+ text-align: center;
+ margin-bottom: 10rpx;
+}
+
+/* 选择标签的样式 */
+
+.checklabel {
+ border: 2rpx solid rgb(214, 1, 33);
+ background-color: rgb(255, 231, 235);
+ color: rgb(214, 1, 33);
+}
+
+.feedback {
+ color: rgb(152, 152, 152);
+ margin-bottom: 70rpx;
+}
+
+.Subs {
+ background-color: rgb(255, 255, 255);
+ position: fixed;
+ width: 100%;
+ bottom: 40rpx;
+}
+
+.Submission {
+ width: 400rpx;
+ height: 65rpx;
+ border-radius: 60rpx;
+ background-color: rgb(214, 1, 33);
+ color: rgb(255, 255, 255);
+}
+.Submission.yellow-b{
+ background-color: #ffb03f;
+
+}
+
+.clonri {
+ margin: 0rpx;
+}
+
+.subSuccess {
+ position: fixed;
+ z-index: 3;
+ top: 435rpx;
+ left: 66rpx;
+ background-color: #a6a6a6a4;
+ width: 615rpx;
+ height: 315rpx;
+ border-radius: 20rpx;
+ color: rgb(255, 255, 255);
+}
+
+.Success {
+ width: 110rpx;
+ height: 110rpx;
+ margin-top: 50rpx;
+ margin-bottom: 45rpx;
+}
diff --git a/packageA/pages/my_service/tment_order_list.js b/packageA/pages/my_service/tment_order_list.js
new file mode 100644
index 0000000..8ad4b7f
--- /dev/null
+++ b/packageA/pages/my_service/tment_order_list.js
@@ -0,0 +1,230 @@
+var e = getApp(),
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ url: a.url, //接口网址
+ iurl: a.imghost, //图片网址
+ activeCategoryId: 0, //类别选中下标
+ defimgurl: "/miniapp/images/yyservice/yyxmdefault.jpg",
+ categories: [{
+ name: "全部",
+ id: 0
+ }, {
+ name: "未服务",
+ id: 1
+ }, {
+ name: "已服务",
+ id: 2
+ }, {
+ name: "已过期",
+ id: 3
+ }],
+ tm_order_list: [], //我的预约订单列表
+ curpage: 1, //当前分页数
+ pageSize: 10, //页大小
+ total: 0,
+ ismore: 0, //是否加载完毕
+ is_read: 0, //是否加载接口
+ states: 4, //4为取消预约
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad: function(options) {
+ var state=options.state;
+ if (state != null && state != undefined && state!=""){
+ this.setData({ activeCategoryId: state });
+ }
+
+ },
+ changeTab: function(e) {
+ var th = this;
+ var id = e.currentTarget.dataset.id;
+ var activeCategoryId = th.data.activeCategoryId;
+ if (id != activeCategoryId) {
+ th.setData({
+ activeCategoryId: id,
+ tm_order_list: [],
+ curpage: 1,
+ ismore: 0,
+ is_read: 0
+ })
+ th.query_orderList();
+ } else {
+ return false;
+ }
+ },
+ //显示核销码
+ code_show: function(e) {
+ var th = this;
+ //--获取成功的时候--
+ var no = e.currentTarget.dataset.order_sn;
+ var qc_com = th.selectComponent("#qc_com"); //组件的id
+ var obj = {
+ val: no,
+ content: "请将二维码展示给核销员,使用更快捷"
+ };
+ qc_com.open(obj)
+ },
+ query_orderList: function() {
+ wx.showLoading({
+ title: '加载中',
+ })
+ var th = this;
+ var url = "/api/weshop/marketing/reservation/reservation/page";
+
+ var state_index = th.data.activeCategoryId;
+ if (state_index == 0) {
+ state_index = "";
+ } else {
+ --state_index;
+ }
+ th.setData({
+ is_read: 0
+ })
+ getApp().request.promiseGet(url, {
+ data: {
+ storeId: a.stoid,
+ userId: d.user_id,
+ state: state_index,
+ page: th.data.curpage,
+ pageSize: th.data.pageSize
+ }
+ }).then(res => {
+ wx.hideLoading();
+ if (res.data.code == 0) {
+ th.data.curpage++;
+ var arr1 = th.data.tm_order_list;
+ var arr2 = res.data.data.pageData;
+ var arr3 = [...arr1, ...arr2];
+ for(var i = 0;i
+
+
+
+ {{item.name}}
+
+
+
+
+
+
+
+
+ 订单编号:{{item.Number}}
+
+
+ 未服务
+ 已服务
+ 已过期
+ 已取消
+ 已评价
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 预约门店:
+ {{item.StorageName}}
+
+
+ 预约项目:
+ {{item.ServiceName}}
+
+
+
+ 服务美容师:
+
+
+
+ 预约美容师:
+
+
+ {{item.BeauticianName}}
+
+
+ 预约时间:
+ {{item.ArrangeTime}}
+
+
+ 服务时间:
+ {{item.WriteTime}}
+
+
+
+
+
+
+
+
+ 取消预约
+
+
+ 查看详情
+
+ 更改时间
+ 发表评价
+ 重新预约
+ 评价详情
+
+
+
+
+ 到底了
+
+
+
+
+
+
+
+
+
+
+ 无预约记录
+
+
+ 立即预约
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packageA/pages/my_service/tment_order_list.wxss b/packageA/pages/my_service/tment_order_list.wxss
new file mode 100644
index 0000000..2219dee
--- /dev/null
+++ b/packageA/pages/my_service/tment_order_list.wxss
@@ -0,0 +1,152 @@
+page {
+ height: 100%;
+}
+
+.container {
+ background-color: rgb(255, 255, 255);
+}
+
+.type-navbar {
+ border-top: 3rpx solid rgb(221, 221, 221);
+ display: flex;
+ justify-content: space-between;
+ position: fixed;
+ background-color: rgb(255,255,255);
+ width:696rpx;
+}
+.itemMax{
+ margin-top: 93rpx;
+}
+
+.type-box {
+ height: 88rpx;
+ line-height: 88rpx;
+ padding: 0rpx 15rpx;
+ border-bottom: 5rpx solid rgb(255, 255, 255);
+}
+
+.chtypebox {
+ border-bottom: 5rpx solid rgb(224, 18, 18);
+}
+
+.Commodity_number {
+ height: 80rpx;
+ border-top: 13rpx solid rgb(245, 245, 245);
+}
+
+.Commodity_number image {
+ width: 30rpx;
+ height: 32rpx;
+}
+
+.padding {
+ padding: 0rpx 27rpx;
+}
+
+.lin {
+ border-left: 2rpx solid rgb(211, 29, 54);
+ margin-left: 17rpx;
+ margin-right: 14rpx;
+ height: 40rpx;
+}
+
+.order_number {
+ max-width: 550rpx;
+}
+.state{
+ color: rgb(216,63,82);
+}
+.items {
+ border-top: 4rpx solid rgb(245, 245, 245);
+ border-bottom: 4rpx solid rgb(245, 245, 245);
+ height: 260rpx;
+}
+.code{
+ width: 55rpx;
+ height: 55rpx;
+}
+.itemimage {
+ width: 190rpx;
+ height: 190rpx;
+ margin-right: 20rpx;
+ border-radius: 50%;
+ border: 1px solid #eee;
+}
+
+.details {
+ height: 190rpx;
+}
+
+.itemname {
+ width: 150rpx;
+ margin-right: 20rpx;
+}
+
+.itemvalue {
+ max-width: 300rpx;
+}
+
+.Unimportance {
+ width: 140rpx;
+ height: 40rpx;
+ line-height: 40rpx;
+ border-radius: 8rpx;
+ background-color: rgb(255, 255, 255);
+ margin-left: 20rpx;
+ border: 2rpx solid rgb(191, 191, 191);
+}
+
+.important {
+ background-color: rgb(212, 28, 52);
+ border: 2rpx solid rgb(212, 28, 52);
+ color: rgb(255, 255, 255);
+}
+
+.Unim {
+ height: 110rpx;
+}
+
+.exactly {
+ height: 80rpx;
+ background-color: rgb(245, 245, 245);
+}
+
+.exactly_text {
+ margin: 0rpx 15rpx;
+}
+
+.line {
+ border-top: 2rpx solid rgb(0, 0, 0);
+ width: 130rpx;
+}
+
+/* 无预约 */
+
+.empty_order image {
+ width: 300rpx;
+ height: 280rpx;
+ margin-top: 202rpx;
+}
+
+.empty_order .xc-ash {
+ margin-top: 10rpx;
+ font-weight: 600px;
+}
+
+.empty_order navigator {
+ margin-top: 60rpx;
+ border-radius: 40rpx;
+}
+
+.empty_order navigator view {
+ width: 247rpx;
+ height: 65rpx;
+ background-color: rgb(255, 72, 72);
+ border-radius: 40rpx;
+}
+.base{
+ display: flex;
+ height: 38rpx;
+ line-height: 38rpx;
+ align-items: baseline;
+}
\ No newline at end of file
diff --git a/packageA/pages/prom_list/prom_list.js b/packageA/pages/prom_list/prom_list.js
index b109c30..ddfd0af 100644
--- a/packageA/pages/prom_list/prom_list.js
+++ b/packageA/pages/prom_list/prom_list.js
@@ -627,7 +627,7 @@ Page({
var user_info = getApp().globalData.userInfo;
if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
wx.navigateTo({
- url: '/pages/getphone/getphone',
+ url: '/pages/togoin/togoin',
})
return false;
}
diff --git a/packageA/pages/quan_list/quan_list.js b/packageA/pages/quan_list/quan_list.js
index a37841c..47a2fba 100644
--- a/packageA/pages/quan_list/quan_list.js
+++ b/packageA/pages/quan_list/quan_list.js
@@ -85,7 +85,7 @@ Page({
var user_info = getApp().globalData.userInfo;
if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
wx.navigateTo({
- url: '/pages/getphone/getphone',
+ url: '/pages/togoin/togoin',
})
return false;
}
diff --git a/packageA/pages/quan_pro/quan_pro.js b/packageA/pages/quan_pro/quan_pro.js
index 370eced..ca3a874 100644
--- a/packageA/pages/quan_pro/quan_pro.js
+++ b/packageA/pages/quan_pro/quan_pro.js
@@ -80,7 +80,7 @@ Page({
var user_info = getApp().globalData.userInfo;
if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
wx.navigateTo({
- url: '/pages/getphone/getphone',
+ url: '/pages/togoin/togoin',
})
return false;
}
diff --git a/packageA/pages/service_share/g_filter.wxs b/packageA/pages/service_share/g_filter.wxs
new file mode 100644
index 0000000..9b68b2e
--- /dev/null
+++ b/packageA/pages/service_share/g_filter.wxs
@@ -0,0 +1,85 @@
+var g_filters = {
+ //-- 判断是不是有等级价 --
+ is_has_rank:function(rank_switch,item){
+ if(!rank_switch) return false;
+ if(item.cardprice1 || item.cardprice2 || item.cardprice3) {return true}
+ return false;
+ },
+
+ //-- 判断,不是等级会员时候,要显示的最低等级价和名称 --
+ get_card_price:function(goods,all_card,type){
+ var price1=parseFloat(goods['cardprice1']);
+ var price2=parseFloat(goods['cardprice2']);
+ var price3=parseFloat(goods['cardprice3']);
+ if(!all_card){
+ if(type==0) return 0;
+ return "";
+ }
+
+ var arr=[];
+ var min_price= 0;
+ var min_name="";
+
+ var min_price=null;
+ var min_name=null;
+ //---设置对应的价格名字----
+ for(var i=0;i<3;i++) {
+ var vl=all_card[i];
+ if(!vl) continue;
+ if(vl['CorrPrice']=="Price1" && price1>0)
+ {
+ if(min_price==null) {
+ min_price=price1;min_name=vl['CardName'];
+ }
+ else if(price10)
+ {
+ if(min_price==null) {
+ min_price=price2;min_name=vl['CardName'];
+ }
+ else if(price20)
+ {
+ if(min_price==null) {
+ min_price=price3;min_name=vl['CardName'];
+ }
+ else if(price34) min_name=min_name.substring(0, 8);
+ return min_name;
+ },
+}
+module.exports = {
+ is_has_rank:g_filters.is_has_rank,
+ get_card_price:g_filters.get_card_price,
+}
\ No newline at end of file
diff --git a/packageA/pages/service_share/service_share.js b/packageA/pages/service_share/service_share.js
index 43fb45c..e595611 100644
--- a/packageA/pages/service_share/service_share.js
+++ b/packageA/pages/service_share/service_share.js
@@ -1,66 +1,884 @@
-// packageA//pages/service_share/service_share.js
+// packageA//pages/goods_share/goods_share.js
+var app=getApp(),oo = app.globalData.setting,os=oo,ut = require("../../../utils/util.js");
Page({
-
/**
* 页面的初始数据
*/
data: {
-
+ // 控制价格
+ active1: false,
+ // 控制佣金
+ active2: false,
+ url:oo.imghost,
+ orderField:'sales_sum',
+ orderType:'desc',
+ list:[],
+ is_load:0, //是否正在加载
+ is_no_data:0, //没有数据
+ is_no_more:0, //没有更多数据
+ key_str:'',
+ pattern:0, //分成的方式
+ currentPage:1, //当前的页码
+
+ canvasHidden: 1, //-- 隐藏画布 --
+ dis_switch:0, //-- 分销开关 --
+ pattern:0, //-- 分成的方式 --
+ share_hidden:1, //-- 分享的按钮隐藏 --
+ share_good:null ,//--- 要分享的商品 ---
+
+ isSale: true,
},
-
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
-
- },
-
- /**
- * 生命周期函数--监听页面初次渲染完成
- */
- onReady: function () {
-
+ var th=this;
+ //接受有没有导购的参数
+ var first_leader=options.first_leader;
+ var StaffId=options.StaffId;
+ var StorageId=options.StorageId;
+ if(first_leader){
+ //-- user_id代过来免登录 --
+ getApp().globalData.user_id=first_leader;
+ getApp().getUserFir();
+
+ //设置分享会员和导购id和归属门店ID
+ this.setData({first_leader:first_leader,StaffId:StaffId,StorageId:StorageId});
+ }
+ this.requestGoodsList();
+
+ //-- 自定义海报 --
+ getApp().request.promiseGet("/api/weshop/goods/poster/page",{
+ data:{store_id:os.stoid, type:1, is_use:1 }
+ }).then(res=>{
+ if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0] ){
+
+ var poster_data=res.data.data.pageData[0];
+ var json_str=poster_data.jsonStr;
+
+ if(json_str){
+ var json_data=JSON.parse(json_str);
+ if(json_data.bg_img){
+
+ //-- 把图片那到本地 --
+ wx.getImageInfo({
+ src:json_data.bg_img,
+ success: function(res) {
+ var path= res.path;
+ th.setData({share_b_img:path})
+ },
+ fail: function(res) {}
+ });
+ }
+
+ th.setData({poster:json_data})
+
+ }
+ }
+ })
+
+ //获取分销的配置
+ getApp().request.promiseGet("/api/weshop/storeDistribut/get/"+oo.stoid,{}).then(res=>{
+ if(res.data.code==0){
+ th.setData({dis_switch:res.data.data.switch,pattern:res.data.data.pattern});
+ }
+ });
+ //获取用户设备信息,屏幕宽度
+ wx.getSystemInfo({
+ success: res => {
+ th.setData({
+ screenWidth: res.screenWidth
+ })
+ }
+ });
+
},
- /**
- * 生命周期函数--监听页面显示
- */
+ /*** 生命周期函数--监听页面显示***/
onShow: function () {
-
+ var th=this;
+ getApp().getConfig2(function(rs){
+ //计算等级价相关
+ var swithc_list=rs.switch_list;
+ var sw_arr=JSON.parse(swithc_list);
+ //---如果后台又开等级卡的开关---
+ if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){
+ th.setData({rank_switch:true});
+ var user=getApp().globalData.userInfo;
+
+ //---回调卡的列表---
+ th.getPlusCardType(function(ob){
+ th.setData({card_list:ob.card_list});
+
+ var ti=setInterval(function(){
+ if(!user) return false;
+ clearInterval(ti);
+
+ if(user.card_field && user['card_expiredate']){
+ var str = user['card_expiredate'].replace(/-/g, '/');
+ var end = new Date(str);
+ end = Date.parse(end) / 1000;
+ var now = ut.gettimestamp();
+ //--- 判断是等级会员,且在有效期范围内 ---
+ if(user.card_field && now4) card_name=card_name.substring(0,4);
+ th.setData({card_field:user.card_field,card_name:card_name,card_list:ob.card_list});
+ }
+ }
+ },1000)
+ })
+
+ }
+ });
},
/**
* 生命周期函数--监听页面隐藏
*/
- onHide: function () {
-
- },
-
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function () {
-
- },
-
- /**
- * 页面相关事件处理函数--监听用户下拉动作
- */
- onPullDownRefresh: function () {
-
- },
-
- /**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function () {
-
- },
-
- /**
+ onHide: function () {},
+ /**e
* 用户点击右上角分享
*/
onShareAppMessage: function () {
+ var th = this;
+ var item=this.data.share_good;
+ var price = item.money;
+ var title= item.serviceName;
+ var img=this.data.url+item.original_img;
+
+ var url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + item.goods_id;
+ if(getApp().globalData.user_id){
+ url+="&first_leader="+getApp().globalData.user_id;
+ }
+ var ob={
+ title: price + "元 " +title,
+ path:url,
+ imageUrl: img,
+ };
+ th.setData({share_hidden:1});
+ th.insert_goods_share();
+ return ob;
+
+ },
+
+ // 点击价格排序
+ sort1() {
+ this.setData({
+ isSale: false,
+ isPrice: true,
+ isNew: false,
+ });
+ if(this.data.active2) {
+ this.setData({
+ active2: !this.data.active2,
+
+ });
+ };
+ if(this.data.orderField!="money"){
+ this.setData({
+ active1: 1,orderField:'money',orderType:'asc',is_no_data:0,is_no_more:0,list:[],
+ });
+ }else{
+
+ var ty=this.data.orderType=='asc'?'desc':'asc';
+ this.setData({
+ orderType:ty,is_no_data:0,is_no_more:0,list:[],
+ });
+ }
+
+ this.data.is_load=0;
+ this.data.currentPage=1;
+ this.requestGoodsList();
+
+ },
+ // 点击佣金排序
+ sort2() {
+ if(this.data.active1) {
+ this.setData({
+ active1: !this.data.active1
+ });
+ };
+ if(this.data.orderField!="commission"){
+
+ if(this.data.pattern==0){
+ this.setData({
+ active2: 1,orderField:'commission',orderType:'asc',is_no_data:0,is_no_more:0,list:[],
+ });
+ }else{
+ this.setData({
+ active2: 1,orderField:'(fir_rate+sec_rate+thi_rate)',orderType:'asc',is_no_data:0,is_no_more:0,list:[],
+ });
+ }
+
+
+ }else{
+ this.setData({
+ orderType: (this.data.orderType=='asc'?'desc':'asc'),is_no_data:0,is_no_more:0,list:[],
+ });
+ }
+ this.data.is_load=0;
+ this.data.currentPage=1;
+ this.requestGoodsList();
+ },
+
+ //-- ----销量----
+ sale_sort(){
+ if(this.data.orderField!="sales_sum"){
+ this.setData({
+ active1: 0,active2:0,orderType:'desc',is_no_data:0,is_no_more:0,orderField:'sales_sum',list:[],
+ isSale: true,
+ isPrice: false,
+ isNew: false,
+ });
+ this.data.is_load=0;
+ this.data.currentPage=1;
+ this.requestGoodsList();
+ }
+ },
+
+ //-- ---最新---
+ new_sort:function(){
+ if(this.data.orderField!="is_new"){
+ this.setData({
+ active1: 0,active2:0,orderType:'desc',is_no_data:0,is_no_more:0,list:[],
+ isSale: false,
+ isPrice:false,
+ isNew: true,
+ });
+ this.data.is_load=0;
+ this.data.currentPage=1;
+ this.requestGoodsList();
+ }
+ },
+
+ requestGoodsList:function(){
+ var th=this;
+ if(th.data.is_load) return false; //-- 正在加载
+ if(th.data.is_no_data) return false; //-- 没有数据
+ if(th.data.is_no_more) return false; //-- 没有更多
+ th.data.is_load=1;
+
+ var url="/api/weshop/serviceCard/page";
+ var req_data={
+ page:this.data.currentPage,
+ is_mainshow:1,
+ isonsale:1,
+ store_id:oo.stoid,
+ orderField:this.data.orderField,
+ orderType:this.data.orderType,
+ }
+ if(this.data.key_str && this.data.key_str.trim()){
+ var str=this.data.key_str.trim();
+ req_data.key_str=str;
+ }
+ //-- ---调用接口----
+ app.request.promiseGet(url,{data:req_data,isShowLoading:1}).then(res=>{
+ th.data.is_load=0;
+ if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){
+ th.data.currentPage++;
+ var data=res.data.data.pageData;
+ if(res.data.data.page*10>res.data.data.total){th.setData({is_no_more:1});}
+ var list=th.data.list;
+ list=list.concat(data);
+ th.setData({list:list});
+ }else{
+ if(th.data.currentPage==1){
+ th.setData({is_no_data:1});
+ }
+ }
+ })
+ },
+
+
+ //--- 获取卡类列表 ---
+ getPlusCardType: function (func) {
+ var storid = oo.stoid;
+ var th = this;
+ getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => {
+
+ if(res.data.code!=0 || !res.data.data){
+ var ob={"card_list":[],"name_map":''};
+ func(ob);
+ return false;
+ }
- }
+ var plusCard = res.data.data;
+ var arr = [1219, 2089, 3031];
+ var new_arr = new Array();
+ var card_name_map=new Map();
+ var user = getApp().globalData.userInfo;
+ for (var i = 0; i < plusCard.length; i++) {
+ if ((!user || user.card_field==null || user.card_field=="") && (plusCard[i].IsStopBuy==true)) {
+ continue;
+ }
+ var name="card"+plusCard[i].CorrPrice.toLowerCase();
+ card_name_map.set(name,plusCard[i].CardName);
+ new_arr.push(plusCard[i]);
+ }
+
+ var ob={"card_list":new_arr,"name_map":card_name_map};
+ func(ob);
+ })
+ },
+
+
+ //---图片失败,默认图片---
+ bind_bnerr2: function (e) {
+ var _errImg = e.target.dataset.errorimg;
+ var _errObj = {};
+ _errObj[_errImg] ="/miniapp/images/default_g_img.gif";
+ this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
+ },
+ //-- ---更多加载----
+ refresh:function(){
+ this.requestGoodsList();
+ },
+
+ //--定义的保存图片方法,分享团---
+ saveImageToPhotosAlbum: function() {
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ //getApp().my_warnning("请先登录",0,this);
+ wx.navigateTo({ url: '/pages/togoin/togoin', })
+ return false;
+ }
+ //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团
+ var type = 0;
+ wx.showLoading({
+ title: '生成中...',
+ })
+ var that = this, th = that;
+ //设置画板显示,才能开始绘图
+ that.setData({
+ canvasHidden: false,share_hidden:1
+ })
+
+ //点击分享
+ this.insert_goods_share();
+
+ var app = getApp();
+ var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
+ var scene = th.data.share_good.goods_id+"";
+ var user_id=getApp().globalData.user_id?getApp().globalData.user_id:0;
+ if(user_id>0){
+ scene+="_"+user_id;
+ }
+
+ ///二微码
+ var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
+ os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo";
+
+ //读取文件成功则OK--
+ wx.getImageInfo({
+ src: path3,
+ success: function(res) {
+ //回调写法
+ th.get_head_temp(th.get_goods_temp, function() {
+ var vpath = res.path;
+ var context = wx.createCanvasContext('share');
+ //先画背景
+ var pg_path = "../../../images/share/share_bg.png";
+ // var pg_path = "../../../images/share/share_bg.png";
+
+ //-- 如果有自定义海报的时候,判断背景的图片 --
+ if(th.data.share_b_img){
+ pg_path=th.data.share_b_img;
+ }
+ context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
+
+ //-- 是自定义海报的情况下 --
+ if(th.data.poster && parseInt(th.data.poster.style)==2){
+ //在线上分享人的情况下
+ if(parseInt(th.data.poster.show_headpic)){
+ //获取坐标
+ var x=parseFloat(th.data.poster.head_x)*2;
+ var y=parseFloat(th.data.poster.head_y)*2;
+ var x1=(x+90) *unit;
+ var y1=(y+50) *unit;
+ //--昵称---
+ context.setFontSize(24 * unit)
+ context.setFillStyle("black")
+ context.fillText(app.globalData.userInfo.nickname, x1, y1);
+ var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
+ //强烈推荐 改许程
+ var tj_path = "../../../images/share/q_tj.png";
+ context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit)
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white")
+ context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
+ }
+ }else{
+ //--昵称---
+ context.setFontSize(24 * unit)
+ context.setFillStyle("black")
+ context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
+ var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
+ //强烈推荐 改许程
+ var tj_path = "../../../images/share/q_tj.png";
+ context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit)
+ context.setLineJoin('round'); //交点设置成圆角
+ context.setFillStyle("white")
+ context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 76 * unit);
+ }
+
+
+ //---产品名称---
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ context.setFillStyle("black");
+ context.setFontSize(21.3 * unit)
+ // th.draw_Text(context, th.data.share_good.goods_name,
+ th.draw_Text(context, th.data.share_good.serviceName,
+ 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
+ //------产品的价格-------
+ context.setFontSize(23 * unit)
+ context.setFillStyle("red")
+ context.fillText("¥", 416 * unit, 185 * unit);
+ context.setFontSize(31 * unit)
+ var pri0 = th.data.share_good.money;
+ // var pri0 = th.data.share_good.shop_price;
+ if (th.data.prom_act)
+ pri0 = th.data.prom_act.price;
+
+ pri0 = parseFloat(pri0).toFixed(2);
+ context.fillText(pri0, 438 * unit, 185 * unit);
+ //---市场价划掉---
+ // sty:这里不需要
+ // context.setFillStyle("gray")
+ // context.setFontSize(22 * unit)
+ // context.fillText("¥" + th.data.share_good.market_price, 426 * unit, 213 * unit);
+ // context.setStrokeStyle('gray')
+ // context.setLineWidth(1 * unit)
+ // context.moveTo(426 * unit, 206 * unit)
+ // context.lineTo(510 * unit, 206 * unit)
+ // context.stroke();
+
+ //---中间大图---
+ context.drawImage(th.data.share_goods_img, 68 * unit, 242 * unit, 410 * unit, 410 * unit);
+ //-------大图后面就不一样了-----------
+ switch (type) {
+ case 0: //普通商品的展示
+ //中间的几个字
+ if(th.data.poster && parseInt(th.data.poster.style)==2 ){
+ if(parseInt(th.data.poster.show_quality)){
+ var g_path = "../../../images/share/s_gou.png";
+ context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("正品保证", 84 * unit, 690 * unit);
+
+ context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("纯实体店", 246 * unit, 690 * unit);
+
+ context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("官方验证", 420 * unit, 690 * unit);
+ }
+
+ }else{
+ var g_path = "../../../images/share/s_gou.png";
+ context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("正品保证", 84 * unit, 690 * unit);
+
+ context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("纯实体店", 246 * unit, 690 * unit);
+
+ context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
+ context.setFillStyle("red")
+ context.setFontSize(18 * unit)
+ context.fillText("官方验证", 420 * unit, 690 * unit);
+ }
+
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 710 * unit)
+ context.lineTo(520 * unit, 710 * unit)
+ context.stroke();
+ //---文字---
+ context.setFillStyle("black")
+ context.setFontSize(22 * unit)
+ // 原来start --->
+ context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 776 * unit);
+ context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 826 * unit);
+
+ //---二维吗图---
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+
+ break;
+ case 1: //秒杀商品的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+
+ //画秒杀的图片
+ var miaos_path = '../../../images/share/miao_share.png';
+ context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit);
+
+ //---文字---
+ context.setFontSize(22 * unit)
+ context.setFillStyle("black")
+ context.fillText("特惠好物,限时秒杀", 40 * unit, 806 * unit);
+ context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit);
+ //---二维吗图---
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+
+
+ break;
+
+ case 2: //会员团和商家团的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+ //---文字---
+ context.setFontSize(22 * unit)
+ context.font = 'normal bold';
+ context.setFillStyle("black")
+ context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
+
+ //绘制成团图片
+ var ct_img = "../../../images/share/ct_num.png";
+ context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
+ var ct_num = th.data.prom_act.ct_num;
+ context.setFontSize(14 * unit)
+ context.font = 'normal';
+ context.setFillStyle("red")
+ if (ct_num < 10) {
+ context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit);
+ } else {
+ context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit);
+ }
+ context.setFontSize(22 * unit)
+ context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit);
+ context.setFillStyle("gray")
+ context.fillText("快来和我一起拼团吧!", 40 * unit, 826 * unit);
+ context.setFillStyle("black")
+ context.font = 'normal bold 18px sans-serif';
+ context.setFontSize(21.3 * unit)
+ context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit);
+ //---二维吗图---
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+ break
+ case 3: //阶梯团的展示
+ //---画线---
+ context.setLineWidth(1 * unit)
+ context.moveTo(32 * unit, 670 * unit)
+ context.lineTo(520 * unit, 670 * unit)
+ context.stroke();
+ //---文字---
+ context.setFontSize(22 * unit)
+ context.font = 'normal bold';
+ context.setFillStyle("black")
+ context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
+ //---绘制中间阶梯的价格---
+ var list = th.data.prom_act.ct_rylist;
+ for (var i = 0; i < list.length; i++) {
+ var item = list[i];
+ var wi = i * 90 * unit;
+ context.font = 'normal';
+ context.setFontSize(16 * unit)
+ context.setFillStyle("red")
+ context.fillText("¥", 40 * unit + wi, 756 * unit);
+ context.setFontSize(22 * unit)
+ var pri = parseFloat(item.price).toFixed(2);
+ context.fillText(pri, 56 * unit + wi, 756 * unit);
+ context.setFillStyle("gray")
+ context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit);
+ }
+ //----------------下面部分----------------
+ context.setFillStyle("gray")
+ context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit);
+ context.setFillStyle("black")
+ context.font = 'normal bold 18px sans-serif';
+ context.setFontSize(22 * unit)
+ context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
+
+ //-- 自定义海报 --
+ if(th.data.poster){
+ var erm_x= parseFloat(th.data.poster.ewm_x)*2;
+ var erm_y= parseFloat(th.data.poster.ewm_y)*2;
+ context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
+ }else{
+ //---二维吗图---
+ context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
+ }
+ break
+ }
+
+
+ //--- 如果是自定义海报的时候 ---
+ if(th.data.poster && parseInt(th.data.poster.style)==2){
+ //如果显示会员信息的话
+ if(parseInt(th.data.poster.show_headpic)){
+ //获取坐标
+ var x= parseFloat(th.data.poster.head_x)*2;
+ var y=parseFloat(th.data.poster.head_y)*2;
+ //---绘制圆形要放在最后----
+ context.save();
+ context.beginPath();
+ var h_x = x* unit;
+ var h_y = y * unit;
+ var h_r = 40 * unit;
+ var cx = h_x + h_r;
+ var cy = h_y + h_r;
+ context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
+ context.closePath();
+ context.fill();
+ context.clip();
+ context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
+ context.restore();
+ }
+
+ }else{
+ //---绘制圆形要放在最后----
+ context.save();
+ context.beginPath();
+ var h_x = 60 * unit;
+ var h_y = 24 * unit;
+ var h_r = 40 * unit;
+ var cx = h_x + h_r;
+ var cy = h_y + h_r;
+ context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
+ context.closePath();
+ context.fill();
+ context.clip();
+ context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
+ context.restore();
+ }
+
+
+ //把画板内容绘制成图片,并回调 画板图片路径
+ context.draw(false, function() {
+ setTimeout(function() {
+ wx.canvasToTempFilePath({
+ x: 0,
+ y: 0,
+ width: 750,
+ height: 1217,
+ destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
+ destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
+ canvasId: 'share',
+ success: function(res) {
+ that.setData({
+ shareImgPath: res.tempFilePath,
+ canvasHidden: true
+ })
+ if (!res.tempFilePath) {
+ wx.showModal({
+ title: '提示',
+ content: '图片绘制中,请稍后重试',
+ showCancel: false
+ })
+ return false;
+ }
+ wx.previewImage({
+ //将图片预览出来
+ urls: [that.data.shareImgPath]
+ });
+ wx.hideLoading();
+ }
+ })
+ }, 500)
+
+ });
+ });
+ }
+ });
+
+ },
+
+ //点击分享商品
+ share_good:function(e){
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ //getApp().my_warnning("请先登录",0,this);
+ wx.navigateTo({ url: '/pages/togoin/togoin', })
+ return false;
+ }
+
+ var index=e.currentTarget.dataset.index;
+ var item=this.data.list[index];
+ this.setData({share_hidden:0,share_good:item});
+ },
+
+ cancel:function(){
+ this.setData({share_hidden:1});
+ },
+
+ //--获取头像的本地缓存,回调写法--
+ get_head_temp: function(tt, func) {
+ var ee = this;
+ if (ee.data.share_head) {
+ tt(func);
+ return false;
+ }
+ //---获取分享图片的本地地址,头像和商品图片----
+ var path2 = getApp().globalData.userInfo.head_pic;
+ if (path2 == "") {
+ ee.data.share_head = "../../../images/share/hui_hear_pic.png";
+ tt(func);
+ } else {
+ path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
+ path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
+ wx.getImageInfo({
+ src: path2,
+ success: function(res) {
+ //res.path是网络图片的本地地址
+ ee.data.share_head = res.path;
+ tt(func);
+ },
+ fail: function(res) {
+ ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
+ tt(func);
+ }
+ });
+ }
+ },
+ //--获取商品图片的本地缓存,回调写法--
+ get_goods_temp: function(tt) {
+ var ee = this;
+ //获取商品是分享图信息
+ wx.getImageInfo({
+ src: ee.data.url+ee.data.share_good.original_img,
+ success: function(res) {
+ //res.path是网络图片的本地地址
+ ee.data.share_goods_img = res.path;
+ tt();
+ },
+ fail: function(res) {
+ ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
+ tt();
+ }
+ });
+ },
+
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ draw_Text: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
+ var lineWidth = 0;
+ var lastSubStrIndex = 0; //每次开始截取的字符串的索引
+ var han = 0;
+ for (let i = 0; i < str.length; i++) {
+ if (han == 2) return;
+ //lineWidth += ctx.measureText(str[i]).width;
+ lineWidth += ut.measureText(str[i], 21.3 * unit);
+ if (lineWidth > canvasWidth) {
+ han++;
+
+ if (han == 2)
+ ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
+ else
+ ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
+
+ initHeight += 22; //22为字体的高度
+ lineWidth = 0;
+ lastSubStrIndex = i;
+ titleHeight += 20;
+ }
+ if (i == str.length - 1) { //绘制剩余部分
+ ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
+ }
+ }
+ },
+
+ //-------搜索的相关功能------
+ set_search_value:function(e){
+ var key_str=e.detail.value;
+ if(key_str) key_str=key_str.trim();
+ this.setData({key_str:key_str});
+
+ },
+ search_data:function(){
+ this.setData({
+ is_no_data:0,is_no_more:0,list:[],
+ });
+ this.data.is_load=0;
+ this.data.currentPage=1;
+ this.requestGoodsList();
+ },
+
+ go_goods:function(e){
+ var index=e.currentTarget.dataset.index;
+ var item=this.data.list[index];
+ var url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + item.goods_id;
+ getApp().goto(url);
+ },
+
+ insert_goods_share:function(){
+ var th = this;
+ var item=this.data.share_good;
+ var url="/api/weshop/sharetypeList/save";
+ var req_data={
+ shareActId:item.id,
+ shareActName:item.serviceName,
+ shareType:8,
+ shareUserId:th.data.first_leader,
+ shareStaffId:th.data.StaffId,
+ shareStorageId:th.data.StorageId,
+ shareTime:ut.gettimestamp(),
+ storeId:os.stoid
+ }
+ //插入数据
+ getApp().request.post(url,{
+ data:req_data,
+ success:function(){
+
+ }
+ });
+
+ //收入线下数据
+ req_data.userId=th.data.first_leader;
+ delete req_data.shareUserId;
+ //插入数据
+ getApp().request.post('/api/weshop/MdShareType/saveShare',{
+ data:req_data,
+ success:function(){}
+ })
+
+ },
+
+
+ goto:function(e) {
+ var url = e.currentTarget.dataset.url;
+ app.goto(url);
+ },
+
+
})
\ No newline at end of file
diff --git a/packageA/pages/service_share/service_share.json b/packageA/pages/service_share/service_share.json
index 8835af0..9368c19 100644
--- a/packageA/pages/service_share/service_share.json
+++ b/packageA/pages/service_share/service_share.json
@@ -1,3 +1,8 @@
{
- "usingComponents": {}
+ "navigationBarTitleText": "服务卡项分享",
+ "usingComponents": {
+ "nodata": "/components/nodata/nodata",
+ "share_button": "/components/share/share"
+ },
+ "enablePullDownRefresh": false
}
\ No newline at end of file
diff --git a/packageA/pages/service_share/service_share.wxml b/packageA/pages/service_share/service_share.wxml
index 9775d45..d55e18f 100644
--- a/packageA/pages/service_share/service_share.wxml
+++ b/packageA/pages/service_share/service_share.wxml
@@ -1,2 +1,103 @@
-
-packageA//pages/service_share/service_share.wxml
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+ 销量
+
+
+ 价格
+
+
+ 价格
+
+
+
+
+ 最新
+
+
+
+
+
+
+
+
+
+
+ {{item.serviceName}}
+ 有效天数:{{item.validDays}}
+
+ ¥{{item.money}}
+ 已售:{{item.sales_sum}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 分享
+
+
+
+
+
+ 暂无数据
+ - 已全部加载 -
+
+
+
+
+
+
+
+
diff --git a/packageA/pages/service_share/service_share.wxss b/packageA/pages/service_share/service_share.wxss
index 2deaaef..dd8b17b 100644
--- a/packageA/pages/service_share/service_share.wxss
+++ b/packageA/pages/service_share/service_share.wxss
@@ -1 +1,143 @@
-/* packageA//pages/service_share/service_share.wxss */
\ No newline at end of file
+/* packageA//pages/goods_share/goods_share.wxss */
+.red {
+ color: #FE6867;
+}
+.gray {
+ color: #7b7b7b;
+}
+page {
+ background-color: #f2f2f2;
+ height: 100%;
+}
+.container {
+ background-color: white;
+ height: 100%;
+}
+.search-container {
+ display: flex;
+ padding: 26rpx 20rpx;
+ border-bottom: 2rpx solid #f8f8f8;
+}
+.input-container {
+ flex: 1;
+ border-radius: 6rpx 0 0 6rpx;
+ overflow: hidden;
+}
+.search {
+ background-color: #f0f0f0;
+ padding: 10rpx 20rpx;
+ font-size: 28rpx;
+}
+.btn-search {
+ background-color: #FE6867;
+ color: white;
+ padding: 0 30rpx;
+ display: flex;
+ align-items: center;
+ border-radius: 0 6rpx 6rpx 0;
+}
+.title {
+ display: flex;
+ font-size: 30rpx;
+ border-bottom: 2rpx solid #f8f8f8;
+}
+.title .iconfont {
+ color: #ccc;
+ font-size: 16rpx;
+ margin-left: 8rpx;
+}
+.title-item {
+ width: 25%;
+ box-sizing: border-box;
+ text-align: center;
+ padding: 20rpx;
+}
+.list-container {
+ height: calc(100% - 118rpx);
+}
+.list {
+ height: calc(100% - 82rpx);
+ background-color: #f2f2f2;
+}
+.list-item {
+ display: flex;
+ padding: 20rpx;
+ border-bottom: 2rpx solid #f8f8f8;
+ background-color: white;
+}
+.img-container {
+ background-color: #f0f0f0;
+ width: 248rpx;
+ height: 248rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+.img-container:after {
+ /* font-family: iconfont;
+ content: '\e8c1';
+ color: #bbb;
+ font-size: 80rpx; */
+}
+.details {
+ flex: 1;
+ padding-left: 20rpx;
+}
+.btn-share {
+ display: inline-block;
+ background-color: #FE6867;
+ color: white;
+ padding: 8rpx 30rpx;
+ border-radius: 6rpx;
+}
+.pdt14 {
+ padding-top: 14rpx;
+}
+
+.no-more {
+ line-height: 3;
+ color: #ccc;
+ background-color: #f2f2f2;
+}
+.nodata {
+ text-align: center;
+ background-color: #f2f2f2;
+}
+
+.name {
+ height: 76rpx;
+}
+
+.plus_show{
+ background-color: #FE6867;
+ color: #fff;
+ padding: 3rpx 5rpx;
+ border-radius:8rpx ;
+ margin-left: 10rpx;
+ margin-right: 5rpx;
+}
+
+.card_bg {
+ box-sizing: border-box;
+ padding: 2rpx 10rpx;
+ height: 28rpx;
+ border-radius: 26rpx;
+ font-size: 18rpx;
+ line-height: 28rpx;
+ max-width: 210rpx;
+ background: #333;
+ color: #fff;
+ margin-left: 8rpx;
+}
+
+.card_bg image {
+ width: 19rpx;
+ height: 19rpx;
+ margin-right: 8rpx;
+}
+
+.txt_line{
+ text-decoration: line-through; position: relative;
+ top: 23rpx;color: #adadad;
+ font-size: 24rpx; margin-left: 10rpx;
+ }
diff --git a/pages/cart/cart/cart.js b/pages/cart/cart/cart.js
index ec343f7..09cb9fe 100644
--- a/pages/cart/cart/cart.js
+++ b/pages/cart/cart/cart.js
@@ -89,23 +89,44 @@ Page({
});
},1)
-
- //--获取是否又秒杀活动--
- getApp().request.promiseGet("/api/ms/flash_sale/spikepage", {
- data: {
- store_id: oo.stoid,
- timetype: 2,
- is_end: 0,
- is_show: 1,
- pageSize: 1
- },
- }).then(res => {
- if (res.data.code == 0 && res.data.data && res.data.data.pageData.length > 0) {
- th.setData({
- is_has_flash: 1
- })
- }
- });
+
+ //-- 判断有没有自定义的广告图片 --
+ getApp().request.promiseGet("/api/weshop/ad/page?pid=1101&store_id=" + os.stoid, {
+ data: {
+ enabled: 1
+ }
+ }).then(res => {
+ if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
+ var a = res.data.data.pageData;
+ var tt = {
+ 'ad_code': os.imghost + a[0].ad_code,
+ 'media_link': '',
+ 'ad_weapplink':a[0].ad_weapplink
+ };
+ th.setData({ad_data:tt});
+ }else{
+ //--获取是否又秒杀活动--
+ getApp().request.promiseGet("/api/ms/flash_sale/spikepage", {
+ data: {
+ store_id: oo.stoid,
+ timetype: 2,
+ is_end: 0,
+ is_show: 1,
+ pageSize: 1
+ },
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData.length > 0) {
+ th.setData({
+ is_has_flash: 1
+ })
+ }
+ });
+ }
+ })
+
+
+
+
},
@@ -584,7 +605,11 @@ Page({
e.setData({
[txt]: Number(!sele),
});
- await e.check_prom_activity(pitems);
+
+ await e.check_prom_activity(pitems);
+ for(var i in e.data.requestData){
+ if(i!=pitems) await e.check_prom_activity(i);
+ }
this.doCheckAll();
},
@@ -630,8 +655,12 @@ Page({
});
if(a.prom_type==3){
+
+ await e.check_prom_activity(pitems);
//判断商品是不是优惠活动
- await e.check_prom_activity(pitems);
+ for(var i in e.data.requestData){
+ if(i!=pitems) await e.check_prom_activity(i);
+ }
}
this.doCheckAll();
@@ -953,9 +982,11 @@ Page({
e.setData({
[txt]: t.goods_num,
});
- //for(var i in e.data.requestData){
- await e.check_prom_activity(pitem)
- //}
+
+ await e.check_prom_activity(pitem)
+ for(var i in e.data.requestData){
+ if(i!=pitem) await e.check_prom_activity(i)
+ }
e.doCheckAll();
getApp().requestCardNum(e);
}
@@ -1321,10 +1352,19 @@ Page({
var map=new Map();
var list= JSON.parse(JSON.stringify(this.data.requestData[cindex]));
//循环处理活动,看活动商品的数量,用map来出来存储,key为活动id,值是数量
-
- for(var i=0;i {
@@ -1387,7 +1436,6 @@ Page({
}
t_prom_list.push(prom);
-
//---读取打折的详情---
var ob=p_item[1];var discount=null;
await getApp().request.promiseGet("/api/weshop/goods/getDiscount",{
@@ -1403,7 +1451,9 @@ Page({
})
//---如果有打折的信息,赠送的信息,赠送的时候要判断是不是限购数量---
- if(discount && discount['goods_id'] && discount.limit_num>=discount.bs && discount.gift_storecount>=discount.bs){
+ if(discount && discount['goods_id'] && discount.limit_num>=discount.bs && discount.gift_storecount>=discount.bs){
+ //如果这礼品超了情况下
+ if(no_gift_arr.indexOf(discount.gift_id)!=-1) continue;
var o=discount.goodsinfo;
var newd = {
goods_id: o.goods_id,
@@ -1424,28 +1474,35 @@ Page({
original_img:th.data.imgUrl+o.original_img
};
-
- /*---
- if(map2.has(p_item[0]+"")){
- var index=map2.get(p_item[0]+"");
- if( list.goods[index].goods_num!=discount.bs){
- list.goods[index].goods_num=discount.bs;
- getApp().request.put("/api/weshop/cart/update", {
- data: {
- id: list.goods[index].id,
- selected: 1,
- store_id: oo.stoid,
- goods_num:discount.bs
- },
- success: function(ee) {
- console.log(ee);
- }
- });
- }
-
- }else{---*/
+
+ list2.goods.push(newd);
+ var all_num=0;
+ var all_limit_num=0;
+
+ for(var i in alllist){
+ var list_item=alllist[i];
+ for(var j in list_item.goods){
+ //如果赠品的ID一样,要进行统计数量
+ if(list_item.goods[j].is_gift==1 && list_item.goods[j].gift_id==newd.gift_id){
+ all_num+= list_item.goods[j].goods_num;
+ }
+ if(list_item.goods[j].is_gift==1 && list_item.goods[j].gift_id==newd.gift_id && list_item.goods[j].prom_id==p_item[0]){
+ all_limit_num+= list_item.goods[j].goods_num;
+ }
+
+ }
+ }
+
+ //-- 赠品的数量超出库存数量和会员的限制,这里是保证所有的赠品部会超出 --
+ if(discount.gift_storecount {
+ if(res.data.code == 0 && res.data.data) {
+ let item = res.data.data.pageData[0];
+ if(item && item.ad_code) {
+ self.setData({
+ ad_img: item.ad_code,
+ });
+ };
+ };
+ });
},
/**
* 生命周期函数--监听页面显示
*/
- onShow: function () {
- console.log('onshow');
- let url = '/api/weshop/users/distribut/getMoney';
- if(app.globalData.userInfo) {
- if(!this.data.isLogin) {
- this.setData({
- userInfo: app.globalData.userInfo,
- imghost: app.globalData.setting.imghost,
- isLogin: true,
- });
-
- // 请求数据
- app.request.get(url + '/' + this.data.userInfo.store_id + '/' + this.data.userInfo.user_id, {
- success: function(res) {
- console.log('success~~`', self.data.userInfo);
- if(res.data.code == 0) {
+ onShow: function () {
+ var self=this,userinfo=app.globalData.userInfo;
+ if(!app.globalData.userInfo){
+ return false;
+ }
+ //-- 会员实时的信息获取 --
+ getApp().promiseGet("/api/weshop/users/get/" + userinfo.store_id + "/" + userinfo.user_id,{}).then(res=>{
+ if(res.data.code!=0){
+ wx.showToast({
+ title: "获取会员失败",
+ icon: 'none',
+ duration: 2000
+ });
+ return false;
+ }
- self.setData({
- data: res.data.data,
- });
-
- } else {
- // if(!res.data.data.is_distribut) {//如果不是分销商:0不是,1是
-
- app.request.promiseGet('/api/weshop/users/distribut/getIsDistribut', {
- data: {
- storeId: self.data.userInfo.store_id,
- userId: self.data.userInfo.user_id,
- first_leader: self.data.userInfo.first_leader,
- },
- isShowLoading: true,
- }).then(function(res) {
- console.log('!!!===>', res);
- if(res.data.code == 0) {
- self.setData({
- fenxiao: res.data.data,
- });
- } else {
- self.setData({
- msg: res.data.msg,
- });
- }
-
- });
-
- // };
- };
- },
-
- });
-
+ userinfo=res.data.data;
+ self.setData({
+ userInfo: userinfo,
+ imghost: app.globalData.setting.imghost,
+ });
+ app.globalData.userInfo=userinfo;
+ wx.setStorageSync("userinfo",userinfo);
+ //-- 获取分销的内容 --
+ self.show_dis();
+ })
- };
- };
-
-
},
-
- /**
- * 生命周期函数--监听页面隐藏
- */
- onHide: function () {
-
+
+ //-- 优化小程序没有开启或者过期没有必要再调用程序 ---
+ show_dis:async function(){
+ var isok=1,self=this;
+ await getApp().promiseGet("/api/weshop/storeDistribut/get/"+os.stoid,{}).then(rs=>{
+ var dis=rs.data.data;
+ if( dis && dis.switch==0){
+ self.setData({err_word:"商家暂时未开启分享,敬请期待"});
+ isok=0;
+ }
+
+ })
+
+ if(!isok) return false;
+ await getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=2",{}).then(rs=>{
+ if(rs.data.code==0){
+ var arr = rs.data.data.pageData;
+ if (arr.length > 0) {
+ var item=arr[0];
+ if(item.is_sy==0){
+ var now = Date.parse(new Date());now = now / 1000;
+ if(item.end_time{
+ if(res.data.code==0){
+ var user= res.data.data;
+ if(user.is_distribut==1){
+ data.fenxiao[i].inviter=user.mobile;
+ }
+ }
+ })
+ }
+ }
+ }
+ if(goods){
+ data.buy_goods=goods;
+ }
+ self.setData(data);
+ //如果全部都更新了通过的话
+ if(isall_pass){
+ wx.showToast({
+ title: "全部满足成为分销商",
+ icon: 'none',
+ duration: 2000
+ });
+ //-- 会员的分销的内容要进行存储 --
+ app.globalData.userInfo.is_distribut=1;
+ wx.setStorageSync("userinfo",app.globalData.userInfo);
+ setTimeout(function(){
+ self.getDis_data();
+ self.setData({
+ userInfo: app.globalData.userInfo,
+ });
+ },2000)
+ }
+ }
+
+
+
+ }else{
+ self.getDis_data()
+ }
+
},
-
- /**
- * 生命周期函数--监听页面卸载
- */
- onUnload: function () {
-
+
+ //-- 获取会员分销的金额的内容 --
+ getDis_data:function(){
+ var self=this;
+ let url = '/api/weshop/users/distribut/getMoney';
+ // 请求数据
+ app.request.get(url + '/' + this.data.userInfo.store_id + '/' + this.data.userInfo.user_id, {
+ success: function(res) {
+ if(res.data.code == 0) {
+ self.setData({
+ data: res.data.data,
+ });
+ }
+ },
+ });
},
+
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
@@ -115,13 +217,6 @@ Page({
},
/**
- * 页面上拉触底事件的处理函数
- */
- onReachBottom: function () {
-
- },
-
- /**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
@@ -141,9 +236,7 @@ Page({
console.log(url);
app.goto(url);
},
-
-
/**
* 获取输入框
*/
@@ -152,14 +245,19 @@ Page({
inputValue: e.detail.value,
});
},
-
-
+
/**
* 验证
*/
verify(e) {
let pass = e.target.dataset.pass;
+ let index = e.target.dataset.index;
let mobile = 0;
+ var th=this;
+ var item=this.data.fenxiao[index];
+
+ var inv=item.inviter;
+ if(!this.data.inputValue) this.data.inputValue=inv;
if(this.data.inputValue) {
mobile = this.data.inputValue;
if(!pass) {
@@ -169,32 +267,33 @@ Page({
userId: self.data.userInfo.user_id,
mobile: mobile,
},
- success: function (res) {
- if(res.code = -1) {
- wx.showToast({
- title: res.data.msg,
- icon: 'none',
- duration: 2000
- });
- };
- console.log('!!!===>', res);
-
- if(res.data.msg == '绑定上下级关系成功!') {
- app.request.promiseGet('/api/weshop/users/distribut/getIsDistribut', {
- data: {
- storeId: self.data.userInfo.store_id,
- userId: self.data.userInfo.user_id,
- first_leader: self.data.userInfo.first_leader,
- },
- isShowLoading: true,
- }).then(function(res) {
- console.log('!!!===>', res);
- self.setData({
- fenxiao: res.data.data,
- });
- });
- };
-
+ success: function (res) {
+ var showtxt=res.data.msg;
+ if(res.data.data.indexOf('已成为分销商')!=-1){
+ showtxt="成功成为分销商";
+ var txt="fenxiao["+index+"].pass";
+ var txt2="data.is_distribut";
+ setTimeout(function(){
+ th.setData({[txt]:1,[txt2]:1})
+ th.getDis_data();
+ },1500)
+
+ }
+ if(res.data.data.indexOf('验证成功')!=-1){
+ var txt="fenxiao["+index+"].pass";
+ th.setData({[txt]:1})
+ }
+ if(res.data.data.indexOf('绑定上下级关系成功')!=-1){
+ var txt="fenxiao["+index+"].pass";
+ th.setData({[txt]:1})
+ }
+
+ wx.showToast({
+ title: showtxt,
+ icon: 'none',
+ duration: 1500
+ });
+
}
});
@@ -208,4 +307,8 @@ Page({
};
},
+
+ go_login(){
+ getApp().goto("/pages/togoin/togoin") //跳到非tabbar页
+ }
})
\ No newline at end of file
diff --git a/pages/distribution/distribution.wxml b/pages/distribution/distribution.wxml
index 4bd5be3..1372fc9 100644
--- a/pages/distribution/distribution.wxml
+++ b/pages/distribution/distribution.wxml
@@ -1,11 +1,14 @@
+
+
-
+
+
- {{filter.show_default(userInfo.nickname)}}
+ {{filter.show_default(userInfo.nickname)}}
@@ -69,33 +72,42 @@
新手必看
-
-
-
+
+
+
+
+
+
-
-
-
+ 去购买
+
-
-
+
+
+
+
+
+
+
+ 您还未登录,请先授权登录!
+ 去授权
+
+
+
\ No newline at end of file
diff --git a/pages/distribution/distribution.wxss b/pages/distribution/distribution.wxss
index 0c713bd..3a5a391 100644
--- a/pages/distribution/distribution.wxss
+++ b/pages/distribution/distribution.wxss
@@ -2,6 +2,10 @@ page {
background-color: #f4f4f4;
}
+.main {
+ padding-bottom: 88rpx;
+}
+
.main > view {
background-color: white;
}
@@ -9,10 +13,19 @@ page {
.avatar-container {
padding-top: 60rpx;
padding-bottom: 60rpx;
- background: url(https://mshopimg.yolipai.net/miniapp/images/user_index_powder.jpg) no-repeat 100% 100%;
+ /* background: url(https://mshopimg.yolipai.net/miniapp/images/user_index_powder.jpg) no-repeat 100% 100%; */
+ position: relative;
/* background-size: 100%; */
}
+.bgImg {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+}
+
.avatar {
width: 160rpx;
height: 160rpx;
@@ -227,5 +240,6 @@ checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
width: 400rpx;
height: 400rpx;
}
+.btn{ background-color: #57b837; padding: 15rpx 20rpx; border-radius: 10rpx; color: #fff;}
diff --git a/pages/getphone/getphone.js b/pages/getphone/getphone.js
deleted file mode 100644
index a27dd3f..0000000
--- a/pages/getphone/getphone.js
+++ /dev/null
@@ -1,136 +0,0 @@
-var t = require("../../utils/common.js");var os=getApp().globalData.setting;
-Page({
- data:{
- store:null,
- imghots: os.imghost,
- },
-
- onLoad: function (options) {
- //--判断是否有接受到邀请人的ID--
- if(options.first_leader){
- this.setData({first_leader:options.first_leader});
- }
- },
- onShow:function(){
- var th=this,app = getApp();
- var sessionKey = getApp().globalData.sessionKey;
- var openid = getApp().globalData.openid;
-
- if (openid == "" || openid == null) {
-
- if (getApp().globalData.userInfo)
- openid = getApp().globalData.userInfo.weapp_openid;
- }
- var r = getApp().globalData.getu;
-
- if (openid == "" || openid == null || r==null ){
- getApp().globalData.user_id=null;
- getApp().globalData.userInfo=null;
- getApp().goto('/pages/togoin/togoin')
- return false;
- }
- var user_info=getApp().globalData.userInfo;
- console.log("getphone");
-
- if(user_info!=null && user_info.mobile!=undefined && user_info.mobile!="" && user_info.mobile!=null){
- wx.navigateBack({
- delta: 1
- })
- }
-
- app.getConfig(function(e){
- th.setData({ store:e});
- })
- },
-
- getphone: function(e) {
- var that = this;
- var app=getApp(),a=app;
- //此处授权得到userInfo
- console.log("getphone");
-
- e=e.detail;
- console.log(e);
- //接下来写业务代码登录
- //最后,记得返回刚才的页面
- if (e.encryptedData==undefined){
- /*---
- wx.navigateTo({
- url: '/pages/user/binding_info/binding_info',
- })--*/
- return app.my_warnning("登录需要授权手机号码!", 0, that);
- return false;
- }
- var r=getApp().globalData.getu;
- var sessionKey = getApp().globalData.sessionKey;
- var openid = getApp().globalData.openid;
-
- console.log(sessionKey,openid);
- that.save_the_data(r,e,sessionKey,openid)
-
- },
-
- save_the_data:function (r,e,sessionKey,openid) {
- var app=getApp(),a=app,th=this;
- var dd = {
- oauth: "miniapp",
- nickname:a.clear_word(r.nickName),
- head_pic: r.avatarUrl,
- sex: r.gender,
- terminal: "miniapp",
- sessionKey: sessionKey,
- openid:openid,
- encryptedData: e.encryptedData,
- iv: e.iv,
- store_id: getApp().globalData.setting.stoid,
- };
- //--如果有邀请人的时候--
- if(th.data.first_leader){
- dd.first_leader=th.data.first_leader;
- }
-
- console.log(dd);
- app.request.get("/api/weshop/users/thirdLogin", {
- data: dd,
- success: function (e) {
- console.log("thirdLogin");
- console.log(e);
- if (e.data.code == 0) {
- app.globalData.user_id = e.data.data.user_id;
- } else {
- return app.showWarning("授权登入失败!"+e.data.msg);
- }
-
- wx.setStorageSync("userinfo",e.data.data);
- wx.setStorageSync("isAuth", !0), app.globalData.userInfo = e.data.data, app.globalData.userInfo.head_pic = t.getFullUrl(a.globalData.userInfo.head_pic);
- wx.navigateBack({ delta: 1})
-
- },
- failStatus: function (t) {
- /*---
- return "100" === t.data.result ? (i.goHome(), wx.navigateTo({
- url: "/pages/user/binding_info/binding_info?nickName=" + r.nickName + "&userHeadPic=" + r.avatarUrl
- }), !1) : (i.clearAuth(), i.alertLoginErrorAndGoHome(t.data.msg), a.request.post("/api/user/logout", {
- isShowLoading: !1,
- data: {
- token: a.request.getToken()
- },
- failStatus: function () {
- return !1;
- }
- }), !1);--*/
- return app.my_warnning("授权登入失败,请稍后再试!", 0, that);
- },
- fail: function (t) {
- return i.clearAuth(), i.alertLoginErrorAndGoHome(), !1;
- }
- });
- },
-
- cancle_bind: function () {
- getApp().goto('/pages/user/index/index');
- }
-
-
-
-});
diff --git a/pages/getphone/getphone.wxml b/pages/getphone/getphone.wxml
deleted file mode 100644
index e511fa5..0000000
--- a/pages/getphone/getphone.wxml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- {{store.store_name}}
- {{store.store_desc}}
-
- 暂不绑定
-
-
-
\ No newline at end of file
diff --git a/pages/getphone/getphone.wxss b/pages/getphone/getphone.wxss
deleted file mode 100644
index 3756909..0000000
--- a/pages/getphone/getphone.wxss
+++ /dev/null
@@ -1,40 +0,0 @@
-.all_page{
- position: fixed;
- height: 100%;
- width: 100%;
- background: #fff;
- justify-content: center;/*水平居中*/
-}
-.all_page .content{
- font-size: 30rpx;
- text-align: center;
- height: 400px;
- width: 100%;
- position: absolute;
- top: 50%;
- margin-top:-200px;
-}
-.logo{width: 140rpx; height: 140rpx; border-radius:50% }
-.all_page .content .title{
- font-size: 36rpx; margin: 20rpx 0
-}
-
-.all_page .btn{
- height: 80rpx;
- line-height: 80rpx;
- width: 580rpx;
- background: #fc661f;
- color:#fff;
- font-size: 32rpx;
- margin-top: 100rpx;
- border-radius: 5rpx;
-}
-.all_page .btn2{
- height: 80rpx;
- line-height: 80rpx;
- width: 580rpx;
- color:#999;
- font-size: 32rpx;
- border-radius: 5rpx;
- margin-top: 10rpx;
-}
\ No newline at end of file
diff --git a/pages/goods/categoryList/categoryList.js b/pages/goods/categoryList/categoryList.js
index b593a25..8c42c13 100644
--- a/pages/goods/categoryList/categoryList.js
+++ b/pages/goods/categoryList/categoryList.js
@@ -91,8 +91,15 @@ Page({
onLoad: function(tt) {
var that = this;
+ var first_leader=tt.first_leader;
+ if(first_leader){
+ //-- user_id代过来免登录 --
+ getApp().globalData.first_leader=first_leader;
+ }
+
+
that.get_brand();
-
+
clearInterval(that.data.timer);
that.setData({ countDownNum: 3, stylePage: 1 });
@@ -570,8 +577,19 @@ Page({
},
//---------分享配置--------
onShareAppMessage: function (e) {
+
+ url="pages/goods/categoryList/categoryList";
+ var userInfo=getApp().globalData.userInfo;
+ //是分销商才带
+ if(userInfo){
+ url+="?first_leader="+userInfo.user_id;
+ }
+ console.log("--分类分享---分享--");
+ console.log(url);
+
return {
- title: "商品分类",
+ title: "商品分类",
+ path:url,
}
},
//图片失败,默认图片
diff --git a/pages/goods/categoryList/categoryList.wxml b/pages/goods/categoryList/categoryList.wxml
index 0c29be4..2a536ed 100644
--- a/pages/goods/categoryList/categoryList.wxml
+++ b/pages/goods/categoryList/categoryList.wxml
@@ -110,10 +110,10 @@
-
-
-
-
+
+
+
+
@@ -285,7 +285,7 @@
-
+
diff --git a/pages/goods/categoryList/categoryList.wxss b/pages/goods/categoryList/categoryList.wxss
index be94932..9cc07cc 100644
--- a/pages/goods/categoryList/categoryList.wxss
+++ b/pages/goods/categoryList/categoryList.wxss
@@ -61,14 +61,14 @@ swiper{
margin-right: 12rpx;
width: 30rpx;
height: 30rpx;
- margin-top: -20rpx;
+ margin-top: -8rpx;
margin-left: 20rpx;
}
.search-cont {
height: 58rpx;
width: 536rpx;
- padding-left: 12rpx;
+ /* padding-left: 12rpx; */
line-height: 58rpx;
font-size: 28rpx;
color: #666;
@@ -195,7 +195,7 @@ margin-top: 8rpx;
}
.search-img.left{
- margin-left: 35rpx;
+ /* margin-left: 35rpx; */
}
.xc-search-inner {
diff --git a/pages/goods/goodsInfo/goodsInfo.js b/pages/goods/goodsInfo/goodsInfo.js
index bd18414..2495fe8 100644
--- a/pages/goods/goodsInfo/goodsInfo.js
+++ b/pages/goods/goodsInfo/goodsInfo.js
@@ -309,8 +309,7 @@ Page({
}
ee.setData({ gid: gid});
if(first_leader){
- console.log("log---".first_leader);
-
+ console.log("log---".first_leader);
getApp().globalData.first_leader=first_leader;
//调用接口判断是不是会员
getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+os.stoid+"/"+first_leader,{}).then(res=>{
@@ -2420,6 +2419,7 @@ Page({
if(pkno.indexOf(item.pickup_no)<0)
pkno.push(item.pickup_no);
}
+ pkno.sort();
var pkno_str=pkno.join(",");
var o_plist=e.data.data.pageData;
var new_list=[];
diff --git a/pages/goods/goodsList/goodsList.js b/pages/goods/goodsList/goodsList.js
index 4786d3d..4984781 100644
--- a/pages/goods/goodsList/goodsList.js
+++ b/pages/goods/goodsList/goodsList.js
@@ -66,6 +66,10 @@ Page({
if (0 != t.is_new && t.is_new != undefined) { url += "&is_new=" + t.is_new; }
if (0 != t.is_hot && t.is_hot != undefined) { url += "&is_hot=" + t.is_hot; }
+
+ if(getApp().globalData.userInfo){
+ url += "&user_id=" + getApp().globalData.userInfo.user_id;
+ }
//优惠活动的凑单
if(t.prom_type==3){
diff --git a/pages/goods/goodsList/goodsList.wxml b/pages/goods/goodsList/goodsList.wxml
index e1bce26..7b04967 100644
--- a/pages/goods/goodsList/goodsList.wxml
+++ b/pages/goods/goodsList/goodsList.wxml
@@ -28,9 +28,9 @@
-
+
价格
-
+
diff --git a/pages/goods/search/search.js b/pages/goods/search/search.js
index 12f178a..7e1a067 100644
--- a/pages/goods/search/search.js
+++ b/pages/goods/search/search.js
@@ -107,6 +107,7 @@ Page({
if (0 != t.brand_id && t.brand_id!=undefined){ url += "&brand_id=" + t.brand_id;}
if (0 != t.nation_id && t.nation_id!=undefined) { url += "&nation_id=" + t.nation_id;}
if (0 != t.max_price && t.max_price!=undefined) { url += "&min_pirce=" + t.min_pirce + "&max_price=" + t.max_price;}
+
if (url != this.data.baseUrl) return this.requestSearch(url);
this.openSearchModal();
@@ -132,6 +133,10 @@ Page({
//-----------真的调用地址进行搜索------------
requestSearch: function(t) {
var a = this;
+
+ if(getApp().globalData.userInfo){
+ t += "&user_id=" + getApp().globalData.userInfo.user_id;
+ }
this.data.requestUrl = t,
//t += "&orderField=" + a.data.tabname;
diff --git a/pages/goods/search/search.wxml b/pages/goods/search/search.wxml
index 4f25ce3..8bdaf46 100644
--- a/pages/goods/search/search.wxml
+++ b/pages/goods/search/search.wxml
@@ -13,8 +13,8 @@
- 价格
-
+ 价格
+
diff --git a/pages/index/index/index.js b/pages/index/index/index.js
index 1e400bb..8c35f1e 100644
--- a/pages/index/index/index.js
+++ b/pages/index/index/index.js
@@ -253,8 +253,20 @@ Page({
//有加载过一次首页,就显示
if(show || userInfo || getApp().globalData.user_id){
- var full_screen = th.selectComponent("#full_screen"); //组件的id
- full_screen.get_the_full_screen();
+ setTimeout(function(){
+ var full_screen = th.selectComponent("#full_screen"); //组件的id
+ full_screen.get_the_full_screen();
+ },660)
+ //动画效果
+ if(!th.data.f_hidden){
+ wx.showLoading({
+ title:'加载中..'
+ });
+ setTimeout(function(){
+ th.setData({f_hidden:1})
+ wx.hideLoading();
+ },800)
+ }
}else{
getApp().globalData.isLoad_ad=1;
}
@@ -277,8 +289,11 @@ Page({
async init_load() {
await getApp().getConfig_ays();
var th = this;
- await getApp().get_isbuy();
- this.setappdata(getApp().globalData.wxapp_buy_obj);
+ if(getApp().globalData.config2.is_overdue==1){
+ await getApp().get_isbuy();
+ this.setappdata(getApp().globalData.wxapp_buy_obj);
+ }
+
//因为营销版本的功能包含了自定义模板的功能,是同时的
@@ -368,7 +383,6 @@ Page({
flash_data = e.data.data.pageData;
if (flash_data == null || flash_data.length <= 0) return false;
-
//当前时间戳
var nt = ut.gettimestamp();
@@ -575,7 +589,6 @@ Page({
frontColor: "#000000",
backgroundColor: "#eeeeee"
}));--*/
-
},
jumpSearch: function() {
wx.navigateTo({
@@ -586,16 +599,24 @@ Page({
var url="/pages/index/index/index";
var userInfo=getApp().globalData.userInfo;
//是分销商才带
- if(userInfo && userInfo['is_distribut']==1){
+ if(userInfo){
url+="?first_leader="+userInfo.user_id;
}
console.log("---首页---分享--");
- console.log(url);
+ var title="商城首页"
+ //分享
+ if(getApp().globalData.config && getApp().globalData.config.store_name){
+ title=getApp().globalData.config.store_name;
+ }else if(getApp().globalData.setting.appName){
+ title=getApp().globalData.setting.appName;
+ }
+
var ob={
title: getApp().globalData.config.store_name,
path:url,
- };
- return o.share;
+ };
+ console.log(ob);
+ return ob;
},
//图片失败,默认图片
diff --git a/pages/index/index/index.wxml b/pages/index/index/index.wxml
index c88fe7b..c89ff3a 100644
--- a/pages/index/index/index.wxml
+++ b/pages/index/index/index.wxml
@@ -1,7 +1,10 @@
-
-
+
+
+
+
+
@@ -390,6 +393,8 @@
+
+
@@ -397,13 +402,12 @@
-
-
+
+
+
-
-
-
+
@@ -418,8 +422,6 @@
-
-
@@ -427,9 +429,6 @@
-
-
-
diff --git a/pages/index/index/index.wxss b/pages/index/index/index.wxss
index 93e0f33..b28ea57 100644
--- a/pages/index/index/index.wxss
+++ b/pages/index/index/index.wxss
@@ -966,5 +966,14 @@ page {
/* transform: translateY(-50%); */
z-index: 10000;
}
-
-.dis_top{position: fixed; top: 0; left: 0; width: 100%;}
\ No newline at end of file
+.dis_top{position: fixed; top: 0; left: 0; width: 100%; z-index: 100000;}
+.full_screen{
+ position: fixed;left: 0;top: 0;
+ z-index: 1000000000000;
+ background-color: rgba(0,0,0,0.4);
+ width: 100%;
+ height: 100%;
+ background-position: center;
+ background-size: 100% 100%;
+ background-repeat: no-repeat;
+}
diff --git a/pages/togoin/togoin.js b/pages/togoin/togoin.js
index 2f0f65b..1817634 100644
--- a/pages/togoin/togoin.js
+++ b/pages/togoin/togoin.js
@@ -12,6 +12,7 @@ Page({
first_leader:'', //-- 邀请人 --
},
onLoad: function (options) {
+ getApp().globalData.isLoad_ad=1;
//--判断是否有接受到邀请人的ID--
if(options.first_leader){
this.setData({first_leader:options.first_leader});
@@ -21,8 +22,8 @@ Page({
}
var th=this;
app.getConfig(function (e) {
- e.store_logo=th.data.imghots+e.store_logo;
- th.setData({ store: e,store_logo:e.store_logo});
+ var logo=th.data.imghots+e.store_logo;
+ th.setData({ store: e,store_logo:logo});
})
},
//绑定手机号
diff --git a/pages/user/index/index.js b/pages/user/index/index.js
index 4890523..0b6baa6 100644
--- a/pages/user/index/index.js
+++ b/pages/user/index/index.js
@@ -63,8 +63,16 @@ Page({
getApp().request.promiseGet("/api/weshop/userTool/page?pageSize=100", {
}).then(res => {
if(res.data.code==0 ){
- var d_list=res.data.data.pageData;
- th.setData({user_tool:d_list});
+ var d_list=res.data.data.pageData;
+ getApp().promiseGet("/api/weshop/storeDistribut/get/"+os.stoid,{}).then(rs=>{
+ var dis=rs.data.data;
+ for(var i in d_list){
+ if(d_list[i].name=='我的分销' && dis && dis.switch==0){
+ d_list.splice(i,1);
+ }
+ }
+ th.setData({user_tool:d_list});
+ })
}
})
this.birthday();
@@ -103,9 +111,11 @@ Page({
th = s,
need_money = 0,
cur_g_num = 0;
-
- //调用底部导航
- getApp().get_isbuy(th.setappdata);
+
+ if(getApp().globalData.config2.is_overdue==1){
+ //调用底部导航
+ getApp().get_isbuy(th.setappdata);
+ }
setTimeout(function () {
if (getApp().globalData.user_id) getApp().requestCardNum(th);
},500)
@@ -305,10 +315,8 @@ Page({
getApp().getConfig2(function(e) {
var t_swi = e.switch_list;
if (t_swi) t_swi = JSON.parse(t_swi)
- if(t_swi){
- var user_tool=[];
- if(t_swi.usertool) user_tool=JSON.parse(t_swi.usertool);
- th.setData({sys_switch:t_swi,c_list:user_tool});
+ if(t_swi){
+ th.setData({sys_switch:t_swi});
}
@@ -336,11 +344,17 @@ Page({
}
}
})
-
-
//th.requestRecommend();
-
}
+
+ var t_swi= getApp().globalData.config2.switch_list
+ if (t_swi){
+ t_swi = JSON.parse(t_swi);
+ var user_tool=[];
+ if(t_swi.usertool) user_tool=JSON.parse(t_swi.usertool);
+ th.setData({c_list:user_tool})
+ }
+
var goods_list = this.selectComponent("#goods_recommend"); //组件的id
goods_list.init();
diff --git a/pages/user/member/bring/bring.wxss b/pages/user/member/bring/bring.wxss
index f484892..ac25e53 100644
--- a/pages/user/member/bring/bring.wxss
+++ b/pages/user/member/bring/bring.wxss
@@ -68,7 +68,7 @@ font-family: 'SimHei',Arial;
color: #999;
font-size: 30rpx;
font-family: 'SimHei',Arial;
- margin-top:-70rpx;
+ /* margin-top:-70rpx; */
}
/* 提现金额 */
diff --git a/pages/user/order_detail/order_detail.js b/pages/user/order_detail/order_detail.js
index 8b54dca..47fd887 100644
--- a/pages/user/order_detail/order_detail.js
+++ b/pages/user/order_detail/order_detail.js
@@ -378,10 +378,9 @@ Page({
}
//如果优惠促销和搭配购的时候
- if((good.prom_type==3 || good.prom_type==5) && !good.is_collocation){
+ if((good.prom_type==3 || good.prom_type==5) && good.is_collocation!=1 && good.is_gift!=1){
var p_ok=1;
await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => {
- }).then(res=>{
if(res.data.code==0){
var r_data=res.data.data;
if(!r_data.collocationPromList && good.prom_type==5){
@@ -886,7 +885,7 @@ Page({
}
//如果商品的配送方式和门店不匹配
- if(good['distr_type']>0 && pick_up['distr_type']>0 && good['distr_type']!=pick_up['distr_type'] ){
+ if(good['distr_type']>0 && pickup['distr_type']>0 && good['distr_type']!=pickup['distr_type'] ){
err_text+= good['goods_name']+"配送方式不一致\n";
continue;
}
diff --git a/pages/user/order_list/order_list.js b/pages/user/order_list/order_list.js
index cdccdff..40a1fb5 100644
--- a/pages/user/order_list/order_list.js
+++ b/pages/user/order_list/order_list.js
@@ -495,7 +495,7 @@ Page({
}
//如果优惠促销和搭配购的时候
- if(good.prom_type==3 || good.prom_type==5){
+ if((good.prom_type==3 || good.prom_type==5) && good.is_gift!=1 && good.is_collocation!=1){
var p_ok=1;
await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => {
if(res.data.code==0){
diff --git a/utils/auth.js b/utils/auth.js
index d29b134..b6a2519 100644
--- a/utils/auth.js
+++ b/utils/auth.js
@@ -32,12 +32,20 @@ module.exports = {
login_fir: function (e, o, n) {
var a = this.app(), app = a, i = this;
-
var userinfo= wx.getStorageSync("userinfo");
if(userinfo){
- a.globalData.userInfo=userinfo;
- a.globalData.user_id=userinfo.user_id;
- "function" == typeof n && n(a.globalData.userInfo, a.globalData.wechatUser);
+ //--生成会员 --
+ getApp().promiseGet("/api/weshop/users/get/" + userinfo.store_id + "/" + userinfo.user_id,{}).then(res=>{
+ if(res.data.code==0){
+ //更新会员
+ userinfo= e.data.data;
+ a.globalData.userInfo=userinfo;
+ a.globalData.user_id=userinfo.user_id;
+ wx.setStorageSync("userinfo",userinfo);
+
+ "function" == typeof n && n(a.globalData.userInfo, a.globalData.wechatUser);
+ }
+ })
return true;
}
@@ -105,7 +113,7 @@ module.exports = {
app.globalData.getu = r;
wx.navigateTo({
- url: '/pages/getphone/getphone',
+ url: '/pages/togoin/togoin',
})
}else{
app.globalData.user_id = e.data.data.user_id;
@@ -128,6 +136,7 @@ module.exports = {
get_u(t){
var app_d = this.app().globalData, oo = app_d.setting;
var ab = this.app().request;
+ if(!app_d.user_id) return false;
ab.get("/api/weshop/users/get/" + oo.stoid + "/" + app_d.user_id, {
data:{r:Math.random()},
success: function (e) {
@@ -212,9 +221,7 @@ module.exports = {
var a = wx.getStorageSync("wx_user_info");
var userInfo = a.userInfo;
if (userInfo==undefined){
- //判断本地是数据是否正确
- if(n.globalData.wxapp_buy_obj && n.globalData.wxapp_buy_obj.isbuy==1 && n.globalData.wxapp_buy_obj.isout==0 ) n.goto("/pages/togoin/togoin");
-
+ n.goto("/pages/togoin/togoin");
}else{
a && void 0 != a ? (n.globalData.wechatUser = a, o.login(t, a, e)) : o.goGetUserInfo();
}
diff --git a/utils/filter.wxs b/utils/filter.wxs
index 92527a9..c8fa917 100644
--- a/utils/filter.wxs
+++ b/utils/filter.wxs
@@ -1,5 +1,8 @@
var filters = {
toFix: function (val, count) {
+ if(!val){
+ return parseFloat(0).toFixed(count);
+ }
val = parseFloat(val);
return val.toFixed(count)
},
diff --git a/utils/request.js b/utils/request.js
index dc038a3..9b3c650 100644
--- a/utils/request.js
+++ b/utils/request.js
@@ -196,7 +196,7 @@ module.exports = {
if(data.is_json){
header={ 'content-type': 'application/json'};
post_data=JSON.stringify(post_data);
- }
+ };
return new Promise((resolve, reject) => {
data.isShowLoading && th.showLoading();
wx.request({