123
This commit is contained in:
@@ -6,8 +6,9 @@
|
|||||||
* loginTimeoutPage = "/pages/login/index", // 登录超时或失效的情况下,跳转到的登录页面
|
* loginTimeoutPage = "/pages/login/index", // 登录超时或失效的情况下,跳转到的登录页面
|
||||||
*/
|
*/
|
||||||
module.exports = {
|
module.exports = {
|
||||||
baseUrl: 'http://192.168.2.106:7211', // 本地
|
// baseUrl: 'http://192.168.2.110:7211', // 本地
|
||||||
// baseUrl: 'https://lpk.yyundong.com/lpkapi', // 测试服务器
|
// baseUrl: 'https://lpk.yyundong.com/lpkapi', // 测试服务器
|
||||||
|
baseUrl: 'https://lpk.yyundong.com/mallapi', // 测试服务器
|
||||||
// baseUrl: 'https://supervise.yxtsoft.com/lpkapi', // 正式服务器
|
// baseUrl: 'https://supervise.yxtsoft.com/lpkapi', // 正式服务器
|
||||||
tokenName: "Authorization", // 请求头中token的名字,与服务器端对应
|
tokenName: "Authorization", // 请求头中token的名字,与服务器端对应
|
||||||
loginTimeoutCode: "5001", // 登录超时或失效的情况下,服务器端返回的错误码
|
loginTimeoutCode: "5001", // 登录超时或失效的情况下,服务器端返回的错误码
|
||||||
|
|||||||
@@ -88,4 +88,22 @@ export default {
|
|||||||
changeNick: (params = {}) => request.formpost("/lpkcustomer/modifyUserNickName", params),
|
changeNick: (params = {}) => request.formpost("/lpkcustomer/modifyUserNickName", params),
|
||||||
// 获取手机号
|
// 获取手机号
|
||||||
getPhone: (params = {}) => request.formpost("/lpkcustomer/getPhoneNumber", params),
|
getPhone: (params = {}) => request.formpost("/lpkcustomer/getPhoneNumber", params),
|
||||||
|
|
||||||
|
|
||||||
|
// 2024-1-15 新需求
|
||||||
|
// 获取补充菜窖 商品分类列表
|
||||||
|
getAllGoodsType: (params = {}) => request.get("/lpkgiftcard/getAllGoodsType/" + params, params),
|
||||||
|
// 获取补充菜窖 商品分类列表
|
||||||
|
getGoodsByType: (params = {}) => request.post("/lpkgiftcard/getGoodsByType", params),
|
||||||
|
// 获取当前购物车总价及总斤数
|
||||||
|
getGoodsWeight: (params = {}) => request.post("/shoppingcart/getGoodsWeight", params),
|
||||||
|
// 加入购物车
|
||||||
|
addShoppingCart: (params = {}) => request.post("/shoppingcart/addShoppingCart", params),
|
||||||
|
// 购物车列表
|
||||||
|
shoppingCartList: (params = {}) => request.post("/shoppingcart/shoppingCartList", params, {}, {}, true),
|
||||||
|
|
||||||
|
// 我的菜窖 类型列表
|
||||||
|
vegeCellarTypeList: (params = {}) => request.post("/lpkgoods/vegeCellarTypeList", params),
|
||||||
|
// 我的菜窖 商品列表
|
||||||
|
vegeCellarList: (params = {}) => request.post("/lpkgoods/vegeCellarList", params),
|
||||||
}
|
}
|
||||||
@@ -5,32 +5,45 @@ Component({
|
|||||||
"selectedColor": "#FFFFFF",
|
"selectedColor": "#FFFFFF",
|
||||||
"backgroundColor": "#F69448",
|
"backgroundColor": "#F69448",
|
||||||
list: [
|
list: [
|
||||||
|
// {
|
||||||
|
// "pagePath": "/pages/home/cloudCard",
|
||||||
|
// "text": "补充菜窖",
|
||||||
|
// "iconPath": "/static/bomicon/bom_notCloudCard.png",
|
||||||
|
// "selectedIconPath": "/static/bomicon/bom_cloudCard.png"
|
||||||
|
// },
|
||||||
{
|
{
|
||||||
"pagePath": "/pages/home/cloudCard",
|
"pagePath": "/pages/home/cloudCard2",
|
||||||
"text": "补充菜窖",
|
"text": "补充菜窖",
|
||||||
"iconPath": "/static/bomicon/bom_notCloudCard.png",
|
"iconPath": "/static/bomicon/bom_notCloudCard.png",
|
||||||
"selectedIconPath": "/static/bomicon/bom_cloudCard.png"
|
"selectedIconPath": "/static/bomicon/bom_cloudCard.png"
|
||||||
},
|
},
|
||||||
|
// {
|
||||||
|
// "pagePath": "/pages/home/pickUpCard",
|
||||||
|
// "text": "选菜窖",
|
||||||
|
// "iconPath": "/static/bomicon/bom_notPickUp.png",
|
||||||
|
// "selectedIconPath": "/static/bomicon/bom_pickUp.png"
|
||||||
|
// },
|
||||||
{
|
{
|
||||||
"pagePath": "/pages/home/pickUpCard",
|
"pagePath": "/pages/home/myCellar",
|
||||||
"text": "选菜窖",
|
"text": "我的菜窖",
|
||||||
"iconPath": "/static/bomicon/bom_notPickUp.png",
|
"iconPath": "/static/bomicon/bom_notPickUp.png",
|
||||||
"selectedIconPath": "/static/bomicon/bom_pickUp.png"
|
"selectedIconPath": "/static/bomicon/bom_pickUp.png"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"pagePath": "/pages/home/recordList2",
|
|
||||||
"text": "预约记录",
|
|
||||||
"iconPath": "/static/bomicon/bom_notRecordNew.png",
|
|
||||||
"selectedIconPath": "/static/bomicon/bom_recordNew.png"
|
|
||||||
}
|
|
||||||
,
|
|
||||||
|
|
||||||
// {
|
// {
|
||||||
// "pagePath": "/pages/home/myHome",
|
// "pagePath": "/pages/home/recordList2",
|
||||||
// "text": "我的",
|
// "text": "预约记录",
|
||||||
// "iconPath": "/static/bomicon/bom_NotMy.png",
|
// "iconPath": "/static/bomicon/bom_notRecordNew.png",
|
||||||
// "selectedIconPath": "/static/bomicon/bom_my.png"
|
// "selectedIconPath": "/static/bomicon/bom_recordNew.png"
|
||||||
// }
|
// }
|
||||||
|
// ,
|
||||||
|
|
||||||
|
{
|
||||||
|
"pagePath": "/pages/home/myHome",
|
||||||
|
"text": "我的",
|
||||||
|
"iconPath": "/static/bomicon/bom_NotMy.png",
|
||||||
|
"selectedIconPath": "/static/bomicon/bom_my.png"
|
||||||
|
}
|
||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
64
pages.json
64
pages.json
@@ -13,6 +13,12 @@
|
|||||||
"navigationStyle": "custom"
|
"navigationStyle": "custom"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/home/cloudCard2",
|
||||||
|
"style": {
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "pages/card/card_detail",
|
"path": "pages/card/card_detail",
|
||||||
"style": {
|
"style": {
|
||||||
@@ -50,6 +56,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "pages/bind/bind_pickUpCard",
|
"path": "pages/bind/bind_pickUpCard",
|
||||||
"style": {
|
"style": {
|
||||||
@@ -116,6 +125,8 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"path": "pages/home/recordList",
|
"path": "pages/home/recordList",
|
||||||
"style": {
|
"style": {
|
||||||
@@ -244,6 +255,18 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
"path": "pages/good/shoppCart",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "购物车",
|
||||||
|
"enablePullDownRefresh": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "pages/home/myCellar",
|
||||||
|
"style": {
|
||||||
|
"navigationStyle": "custom"
|
||||||
|
}
|
||||||
|
}, {
|
||||||
"path": "pages/me/base_info",
|
"path": "pages/me/base_info",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationStyle": "custom",
|
"navigationStyle": "custom",
|
||||||
@@ -264,30 +287,43 @@
|
|||||||
"selectedColor": "#191919",
|
"selectedColor": "#191919",
|
||||||
"borderStyle": "white",
|
"borderStyle": "white",
|
||||||
"backgroundColor": "#F69448",
|
"backgroundColor": "#F69448",
|
||||||
"list": [{
|
"list": [
|
||||||
"pagePath": "pages/home/cloudCard",
|
// {
|
||||||
|
// "pagePath": "pages/home/cloudCard",
|
||||||
|
// "text": "补充菜窖",
|
||||||
|
// "iconPath": "static/bomicon/bom_notCloudCard.png",
|
||||||
|
// "selectedIconPath": "static/bomicon/bom_cloudCard.png"
|
||||||
|
// },
|
||||||
|
{
|
||||||
|
"pagePath": "pages/home/cloudCard2",
|
||||||
"text": "补充菜窖",
|
"text": "补充菜窖",
|
||||||
"iconPath": "static/bomicon/bom_notCloudCard.png",
|
"iconPath": "static/bomicon/bom_notCloudCard.png",
|
||||||
"selectedIconPath": "static/bomicon/bom_cloudCard.png"
|
"selectedIconPath": "static/bomicon/bom_cloudCard.png"
|
||||||
},
|
},
|
||||||
|
// {
|
||||||
|
// "pagePath": "pages/home/pickUpCard",
|
||||||
|
// "text": "选菜窖",
|
||||||
|
// "iconPath": "static/bomicon/bom_notPickUp.png",
|
||||||
|
// "selectedIconPath": "static/bomicon/bom_pickUp.png"
|
||||||
|
// },
|
||||||
{
|
{
|
||||||
"pagePath": "pages/home/pickUpCard",
|
"pagePath": "pages/home/myCellar",
|
||||||
"text": "选菜窖",
|
"text": "我的菜窖",
|
||||||
"iconPath": "static/bomicon/bom_notPickUp.png",
|
"iconPath": "static/bomicon/bom_notPickUp.png",
|
||||||
"selectedIconPath": "static/bomicon/bom_pickUp.png"
|
"selectedIconPath": "static/bomicon/bom_pickUp.png"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"pagePath": "pages/home/recordList2",
|
|
||||||
"text": "预约记录",
|
|
||||||
"iconPath": "static/bomicon/bom_notRecordNew.png",
|
|
||||||
"selectedIconPath": "static/bomicon/bom_recordNew.png"
|
|
||||||
}
|
|
||||||
// {
|
// {
|
||||||
// "pagePath": "pages/home/myHome",
|
// "pagePath": "pages/home/recordList2",
|
||||||
// "text": "我的",
|
// "text": "预约记录",
|
||||||
// "iconPath": "static/bomicon/bom_NotMy.png",
|
// "iconPath": "static/bomicon/bom_notRecordNew.png",
|
||||||
// "selectedIconPath": "static/bomicon/bom_my.png"
|
// "selectedIconPath": "static/bomicon/bom_recordNew.png"
|
||||||
// }
|
// }
|
||||||
|
{
|
||||||
|
"pagePath": "pages/home/myHome",
|
||||||
|
"text": "我的",
|
||||||
|
"iconPath": "static/bomicon/bom_NotMy.png",
|
||||||
|
"selectedIconPath": "static/bomicon/bom_my.png"
|
||||||
|
}
|
||||||
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
297
pages/good/shoppCart.vue
Normal file
297
pages/good/shoppCart.vue
Normal file
@@ -0,0 +1,297 @@
|
|||||||
|
<template>
|
||||||
|
<view style="height: 100vh; width: 100%; background: #F2F2F2;
|
||||||
|
display: flex;flex-direction: column;overflow: scroll;">
|
||||||
|
<loading-state ref="pageView" @request="request">
|
||||||
|
|
||||||
|
<!-- <scroll-view scroll-y="true" style="min-height: calc(100% - 15vw); width: 100%; margin-top: 10px;"
|
||||||
|
bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll"> -->
|
||||||
|
|
||||||
|
<view style="width: 100%; display: flex;flex-direction: column;">
|
||||||
|
<view v-for="(item,index) in data" @click="itemClick(item.goodsSid)" style="display: flex;flex-direction: column;justify-content: center; margin: 10px 10px 0px 10px;
|
||||||
|
padding: 10px; border-radius: 15px; background-color: #fff; ">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;width: 100%; ">
|
||||||
|
|
||||||
|
<image :src="item.iconUrl" style="width: 90px;height: 90px; border-radius: 10px; "
|
||||||
|
mode="aspectFill"></image>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;flex: 1;
|
||||||
|
margin-left: 10px;">
|
||||||
|
|
||||||
|
<text style="font-size: 13px;color: #000;">{{item.goodsName}}</text>
|
||||||
|
|
||||||
|
<text style="font-size: 10px;color: #999;margin-top: 5px;">{{item.remarks}}</text>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;margin-top: 8px;">
|
||||||
|
<text style="border: 1px #EE752F solid; border-radius: 5px; padding: 0px 8px;
|
||||||
|
font-size: 10px;color: #EE752F;">{{item.jprice}}元/{{item.specificationUnit}}</text>
|
||||||
|
<text
|
||||||
|
style="border: 1px #EE752F solid; border-radius: 5px; padding: 0px 8px;
|
||||||
|
font-size: 10px;color: #EE752F; margin-left: 10px; margin-right: 10px; ">{{item.weight}}{{item.specificationUnit}}/{{item.unitName}}</text>
|
||||||
|
<!-- <text
|
||||||
|
style="background: #FF9900; color: #fff; font-size: 10px;padding: 0px 8px; border-radius: 5px;">¥{{item.mefenPrice}}</text> -->
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;justify-content: space-between; margin-top: 15px;
|
||||||
|
margin-right: 15px;">
|
||||||
|
<text style="font-size: 14px;color: #FF5006;">¥{{item.price}}</text>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
|
||||||
|
<image src="../../static/jian_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jian(item)"></image>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 14px;margin-left: 8px;margin-right: 8px;">{{item.goodsNumber}}</text>
|
||||||
|
<image src="../../static/jia_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jia(item)"></image>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<view style="height: 150px; background: #F2F2F2;"></view>
|
||||||
|
</view>
|
||||||
|
<!-- </scroll-view> -->
|
||||||
|
|
||||||
|
<view style="height: 15vw; width: 100%; display: flex;flex-direction: column;position: fixed;bottom: 0;overflow:hidden;
|
||||||
|
justify-content: center;align-items: center; background: #fff;padding-top: 10px;">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
<view style="color: #888;font-size: 10px;">温馨提示:已定制了</view>
|
||||||
|
<view style="color: #FF5006;font-size: 15px;">{{page.weight}}斤</view>
|
||||||
|
<view style="color: #888;font-size: 10px;">,满200斤可定制云菜窖</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row; justify-content: center;align-items: center;padding-bottom: 10px;margin-top: 5px;">
|
||||||
|
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="border: 1px #FF5006 solid;margin-left: 5px;margin-right: 5px;padding: 5px 40px 5px 15px;
|
||||||
|
display: flex;flex-direction: row;align-items: center;border-top-left-radius: 25px; border-bottom-left-radius: 25px;"
|
||||||
|
@click="gotoCart()">
|
||||||
|
<image src="../../static/shoppCart_icon.png" mode="aspectFill"
|
||||||
|
style="height: 20px;width: 25px;">
|
||||||
|
</image>
|
||||||
|
<text style="font-size: 15px;color: #FF5006;margin-left: 10px; ">¥{{page.price}}</text>
|
||||||
|
<text style="font-size: 10px;color: #666;margin-left: 10px; ">共减:¥{{page.reduce}}</text>
|
||||||
|
</view>
|
||||||
|
<text style="background: #FF9900; color: #fff;font-size: 13px; padding: 8px 15px;
|
||||||
|
border: 1px #FF5006 solid; border-top-right-radius: 25px; border-bottom-right-radius: 25px;"
|
||||||
|
@click="settlement()">结算</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</loading-state>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
page: {
|
||||||
|
affiliation: '',
|
||||||
|
weight: "0",
|
||||||
|
price: "0",
|
||||||
|
reduce: "0"
|
||||||
|
},
|
||||||
|
data: [
|
||||||
|
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(options) {
|
||||||
|
this.page.affiliation = options.affiliation
|
||||||
|
console.log(" options", options);
|
||||||
|
this.request()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
request() {
|
||||||
|
let _this = this
|
||||||
|
|
||||||
|
var params = {
|
||||||
|
customerSid: getApp().globalData.sid,
|
||||||
|
affiliation: _this.page.affiliation
|
||||||
|
}
|
||||||
|
|
||||||
|
_this.$api.shoppingCartList(params).then((resp) => {
|
||||||
|
console.log("resp", resp);
|
||||||
|
_this.data = resp
|
||||||
|
|
||||||
|
_this.getallPrice()
|
||||||
|
_this.getweight()
|
||||||
|
|
||||||
|
_this.$nextTick(() => {
|
||||||
|
_this.$refs.pageView.setLoadState(2)
|
||||||
|
})
|
||||||
|
// 无数据
|
||||||
|
if (_this.data.length == 0) {
|
||||||
|
_this.$nextTick(() => {
|
||||||
|
_this.$refs.pageView.setLoadState(100)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
}).catch(e => {
|
||||||
|
// 错误 1
|
||||||
|
_this.$nextTick(() => {
|
||||||
|
_this.$refs.pageView.setLoadState(1)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
itemClick(goodsSid) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/good/goodsDetail?sid=' + goodsSid
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
jian(item) {
|
||||||
|
const that = this
|
||||||
|
console.log("item》》》》", item)
|
||||||
|
if (Number(item.goodsNumber) == 1) {
|
||||||
|
|
||||||
|
wx.showModal({
|
||||||
|
content: '确定不要了吗',
|
||||||
|
cancelText: "再想想",
|
||||||
|
confirmText: "删除",
|
||||||
|
confirmColor: "#FF9900",
|
||||||
|
success(res) {
|
||||||
|
if (res.confirm) {
|
||||||
|
console.log('用户点击确定')
|
||||||
|
item.goodsNumber = 0
|
||||||
|
const index = that.data.findIndex((info) => info.goodsSid === item.goodsSid)
|
||||||
|
console.log("index》》》》", index)
|
||||||
|
that.data.splice(index, 1)
|
||||||
|
that.getallPrice()
|
||||||
|
that.getweight()
|
||||||
|
that.upDateShoppCart(item)
|
||||||
|
} else if (res.cancel) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (Number(item.goodsNumber) > 0) {
|
||||||
|
item.goodsNumber = Number(item.goodsNumber) - 1
|
||||||
|
}
|
||||||
|
|
||||||
|
item.totalPrice = Number(item.goodsNumber) * Number(item.price)
|
||||||
|
that.getallPrice()
|
||||||
|
that.getweight()
|
||||||
|
that.upDateShoppCart(item)
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
jia(item) {
|
||||||
|
|
||||||
|
item.goodsNumber = Number(item.goodsNumber) + 1
|
||||||
|
item.totalPrice = Number(item.goodsNumber) * Number(item.price)
|
||||||
|
|
||||||
|
this.getallPrice()
|
||||||
|
this.getweight()
|
||||||
|
this.upDateShoppCart(item)
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
getallPrice() {
|
||||||
|
|
||||||
|
let num = 0;
|
||||||
|
for (var i = 0; i < this.data.length; i++) {
|
||||||
|
num += Number(this.data[i].totalPrice);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.page.price = num
|
||||||
|
},
|
||||||
|
|
||||||
|
getweight() {
|
||||||
|
|
||||||
|
let num = 0;
|
||||||
|
for (var i = 0; i < this.data.length; i++) {
|
||||||
|
num += Number(this.data[i].weight) * Number(this.data[i].goodsNumber);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
this.page.weight = num
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
upDateShoppCart(item) {
|
||||||
|
var good = {
|
||||||
|
goodsSid: item.goodsSid,
|
||||||
|
goodsName: item.goodsName,
|
||||||
|
goodsNumber: item.goodsNumber,
|
||||||
|
affiliation: this.page.affiliation,
|
||||||
|
price: item.price,
|
||||||
|
weight: item.weight,
|
||||||
|
customerSid: getApp().globalData.sid
|
||||||
|
}
|
||||||
|
|
||||||
|
let _this = this
|
||||||
|
_this.$api.addShoppingCart(good).then((resp) => {
|
||||||
|
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
|
||||||
|
settlement() {
|
||||||
|
// 支付
|
||||||
|
|
||||||
|
if (this.page.weight < 200) {
|
||||||
|
this.shortToast('满200斤才可定制云菜窖哦,请继续选菜吧。')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
let list = []
|
||||||
|
|
||||||
|
for (var i = 0; i < this.goods.length; i++) {
|
||||||
|
var item = this.data[i]
|
||||||
|
if (item.goodsNumber > 0)
|
||||||
|
list.push({
|
||||||
|
goodsSid: item.goodsSid,
|
||||||
|
goodsName: item.name,
|
||||||
|
partNumber: item.goodsNumber,
|
||||||
|
numofPart: item.weight,
|
||||||
|
priceUnit: item.jprice,
|
||||||
|
pricePart: item.mefenPrice,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// console.log("ddd", list);
|
||||||
|
|
||||||
|
if (list.length == 0) {
|
||||||
|
this.shortToast('请添加商品')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var params = {
|
||||||
|
customerSid: getApp().globalData.sid,
|
||||||
|
cardNumber: 1,
|
||||||
|
totalTee: this.page.price,
|
||||||
|
ordOrderDetailsVoList: list
|
||||||
|
}
|
||||||
|
// console.log("params", params);
|
||||||
|
|
||||||
|
let _this = this
|
||||||
|
_this.$api.createOrder(params).then((resp) => {
|
||||||
|
|
||||||
|
// console.log("resp", resp);
|
||||||
|
this.$pay(resp)
|
||||||
|
}).catch(e => {})
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
|
||||||
|
</style>
|
||||||
637
pages/home/cloudCard2.vue
Normal file
637
pages/home/cloudCard2.vue
Normal file
@@ -0,0 +1,637 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: column;height: 100vh;background: -webkit-linear-gradient(left,#FEA65F,#FB9440);">
|
||||||
|
|
||||||
|
<view class="top">
|
||||||
|
<NavBar ref="nav" navTitle=" " :showIcon="false" :start-change-height="page.startHeight"
|
||||||
|
:end-change-height="page.endHeight">
|
||||||
|
</NavBar>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;justify-content: center;;
|
||||||
|
padding-left: 10vw;padding-right: 10vw; margin-top: 40vw;">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column; flex: 1;justify-content: center;align-items: center;"
|
||||||
|
@click.stop="brandClick('0')">
|
||||||
|
|
||||||
|
<image src="https://supervise.yxtsoft.com/lpk/image/family_icon.png" mode="aspectFill"
|
||||||
|
:class="brandType=='0'?'top_img1':'top_img2'"
|
||||||
|
style="width: 60px;height:60px;border-radius: 50%;padding:5px;"></image>
|
||||||
|
|
||||||
|
<text :class="brandType=='0'?'top_text1':'top_text2'">百姓菜窖</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;flex: 1;justify-content: center;align-items: center;"
|
||||||
|
@click.stop="brandClick('1')">
|
||||||
|
|
||||||
|
<image src="https://supervise.yxtsoft.com/lpk/image/love_icon.png" mode="aspectFill"
|
||||||
|
:class="brandType=='1'?'top_img1':'top_img2'"
|
||||||
|
style="width: 60px;height: 60px;border-radius: 50%;padding: 5px;"></image>
|
||||||
|
|
||||||
|
<text :class="brandType=='1'?'top_text1':'top_text2'">精品菜窖</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;flex: 1;justify-content: center;align-items: center;"
|
||||||
|
@click.stop="brandClick('2')">
|
||||||
|
|
||||||
|
<image src="https://supervise.yxtsoft.com/lpk/image/enterprise_icon.png" mode="aspectFill"
|
||||||
|
:class="brandType=='2'?'top_img1':'top_img2'"
|
||||||
|
style="width: 60px;height: 60px;border-radius: 50%;padding: 5px;"></image>
|
||||||
|
|
||||||
|
<text :class="brandType=='2'?'top_text1':'top_text2'">企业菜窖</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
<view style="background: #fff;flex-flow: 1; height: calc(100vh - 65vw - 50px);
|
||||||
|
width: 100%; margin-top: -13vw;
|
||||||
|
border-radius: 25px;display: flex;flex-direction: column; box-sizing: border-box;">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;height: 25px; width: 100%; flex-shrink: 0;">
|
||||||
|
|
||||||
|
<view style="width: 20%;background: #F7F7F7;border-top-left-radius: 25px;"></view>
|
||||||
|
<view style="width: 80%;background: #fff; border-top-right-radius: 25px;"></view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;min-height: calc(100% - 115px); ">
|
||||||
|
<scroll-view scroll-y="true" style="height: 100%; width: 21%;border-bottom-left-radius: 25px;"
|
||||||
|
:scroll-top="scrollLeftTop" bindscrolltoupper="upper" bindscrolltolower="lower"
|
||||||
|
:show-scrollbar="false" :enhanced="true" bindscroll="scroll">
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="width: 100%;; display: flex;flex-direction: column; background: #F7F7F7;border-bottom-left-radius: 25px;">
|
||||||
|
<view v-for="(item,index) in data" @click="labelClick(index,item)"
|
||||||
|
style="display: flex;flex-direction: column;justify-content: center; margin-top: 15px; ">
|
||||||
|
<text class="label" :class="{ label2: selectIndex==index }">{{item.name}}</text>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="width: 80%;min-height: calc(100% - 115px); display: flex;flex-direction: column; margin-left: 10px; margin-right: 10px;">
|
||||||
|
|
||||||
|
<view style=" border: 1px #bbb solid; border-radius: 8px;display: flex;flex-direction: row;align-items: center;
|
||||||
|
padding-left: 10px; margin-left: 20px;margin-right: 20px;">
|
||||||
|
<image src="../../static/search_icon.png" mode="aspectFill" style="width: 25px;height: 25px;">
|
||||||
|
</image>
|
||||||
|
<input placeholder="请输入"
|
||||||
|
style="font-size: 25rpx;flex: 1;height: 35px;line-height: 35px;padding-left: 10px;padding-right: 10px;"
|
||||||
|
:value="searchInfo.name" @input="onKeyInput" />
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<scroll-view scroll-y="true" style="min-height: calc(100% - 150px); width: 100%; margin-top: 10px;"
|
||||||
|
bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll" :show-scrollbar="false"
|
||||||
|
:scroll-top="scrollRightTop" :enhanced="true">
|
||||||
|
|
||||||
|
<view style="width: 100%; display: flex;flex-direction: column;">
|
||||||
|
<view v-for="(item,index) in goods" @click="itemClick(item.goodsSid)"
|
||||||
|
style="display: flex;flex-direction: column;justify-content: center;width: 100%; margin-top: 15px; ">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;width: 100%; ">
|
||||||
|
|
||||||
|
<image :src="item.iconUrl" style="width: 90px;height: 90px; border-radius: 10px; "
|
||||||
|
mode="aspectFill"></image>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;flex: 1; padding-bottom: 15px; margin-left: 10px;"
|
||||||
|
:style="{'border-bottom':(index == goods.length-1 ? 'none' : '1px #EFEFEF solid')}">
|
||||||
|
|
||||||
|
<text style="font-size: 13px;color: #000;">{{item.name}}</text>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 10px;color: #999;margin-top: 5px;">{{item.remark}}</text>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row;align-items: center;margin-top: 8px;">
|
||||||
|
<text style="border: 1px #EE752F solid; border-radius: 5px; padding: 0px 8px;
|
||||||
|
font-size: 10px;color: #EE752F;">{{item.jprice}}元/{{item.specificationUnit}}</text>
|
||||||
|
<text
|
||||||
|
style="border: 1px #EE752F solid; border-radius: 5px; padding: 0px 8px;
|
||||||
|
font-size: 10px;color: #EE752F; margin-left: 10px; margin-right: 10px; ">{{item.weight}}{{item.specificationUnit}}/{{item.unitName}}</text>
|
||||||
|
<!-- <text
|
||||||
|
style="background: #FF9900; color: #fff; font-size: 10px;padding: 0px 8px; border-radius: 5px;">¥{{item.mefenPrice}}</text> -->
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;justify-content: space-between; margin-top: 15px;
|
||||||
|
margin-right: 15px;">
|
||||||
|
<text style="font-size: 14px;color: #FF5006;">¥{{item.mefenPrice}}</text>
|
||||||
|
<!--
|
||||||
|
<image src="../../static/inCart.png" mode="aspectFill"
|
||||||
|
style="width: 25px;height: 25px;" @click.stop="itemShow(item)"
|
||||||
|
v-if="!item.showCart"></image> -->
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
|
||||||
|
<image src="../../static/jian_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jian(item)"></image>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 14px;margin-left: 8px;margin-right: 8px;">{{item.goodsNumber}}</text>
|
||||||
|
<image src="../../static/jia_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jia(item)"></image>
|
||||||
|
|
||||||
|
<!-- <text
|
||||||
|
style="margin-left: 10px;color: #fff; font-size: 12px; border: 1px #EE752F solid; border-radius: 5px; padding: 0px 5px; background: #FF9900;"
|
||||||
|
@click.stop="itemShow2(item)">确定</text> -->
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;border-top: 1px solid #F8F8F8; border-bottom-left-radius: 25px;border-bottom-right-radius: 25px;
|
||||||
|
padding-top: 5px; flex-shrink: 0;">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center; padding-left: 30px;">
|
||||||
|
<view style="width: 35px;height: 35px;position: relative; visibility: hidden; ">
|
||||||
|
|
||||||
|
<image style="width: 25px;height: 25px;margin-left: 5px; margin-top: 5px; "
|
||||||
|
src="../../static/basket_icon.png" mode="aspectFill"></image>
|
||||||
|
|
||||||
|
<view style="border-radius: 50%;text-align: center;background: #f00;color: #fff;font-size: 8px;
|
||||||
|
position: absolute;
|
||||||
|
top: 2px;
|
||||||
|
right: 0px;
|
||||||
|
padding: 2px 5px;
|
||||||
|
width: auto;">{{page.count}}</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view id="bomView"
|
||||||
|
style="display: flex;flex-direction: row;align-items: center; margin-left: 15px;">
|
||||||
|
<view style="color: #888;font-size: 10px;">温馨提示:已定制了</view>
|
||||||
|
<view style="color: #FF5006;font-size: 15px;">{{page.weight}}斤</view>
|
||||||
|
<!-- <view style="color: #FF5006;font-size: 15px;" v-if="brandType=='1'">{{page.weight2}}斤</view> -->
|
||||||
|
<!-- <view style="color: #FF5006;font-size: 15px;" v-if="brandType=='2'">{{page.weight3}}斤</view> -->
|
||||||
|
<view style="color: #888;font-size: 10px;">,满200斤可定制云菜窖</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row; justify-content: center;align-items: center;padding-bottom: 10px;margin-top: 5px;">
|
||||||
|
|
||||||
|
<text style="background: #FF9900; color: #fff;font-size: 13px; padding: 8px 15px;
|
||||||
|
border: 1px #FF5006 solid; border-top-left-radius: 25px; border-bottom-left-radius: 25px;">分享新人有礼</text>
|
||||||
|
|
||||||
|
<view style="border: 1px #FF5006 solid;margin-left: 5px;margin-right: 5px;padding: 5px 10px;
|
||||||
|
display: flex;flex-direction: row;align-items: center;" @click="gotoCart()">
|
||||||
|
<image src="../../static/shoppCart_icon.png" mode="aspectFill"
|
||||||
|
style="height: 20px;width: 25px;"></image>
|
||||||
|
<text style="font-size: 15px;color: #FF5006;margin-left: 10px; ">¥{{page.price}}</text>
|
||||||
|
<text style="font-size: 10px;color: #666;margin-left: 10px; ">共减:¥{{page.reduce}}</text>
|
||||||
|
</view>
|
||||||
|
<!-- <view style="border: 1px #FF5006 solid;margin-left: 5px;margin-right: 5px;padding: 5px 10px;
|
||||||
|
display: flex;flex-direction: row;align-items: center;" v-if="brandType=='1'">
|
||||||
|
<image src="../../static/shoppCart_icon.png" mode="aspectFill"
|
||||||
|
style="height: 20px;width: 25px;"></image>
|
||||||
|
<text style="font-size: 15px;color: #FF5006;margin-left: 10px; ">¥{{page.price2}}</text>
|
||||||
|
<text style="font-size: 10px;color: #666;margin-left: 10px; ">共减:¥{{page.reduce2}}</text>
|
||||||
|
</view>
|
||||||
|
<view style="border: 1px #FF5006 solid;margin-left: 5px;margin-right: 5px;padding: 5px 10px;
|
||||||
|
display: flex;flex-direction: row;align-items: center;" v-if="brandType=='2'">
|
||||||
|
<image src="../../static/shoppCart_icon.png" mode="aspectFill"
|
||||||
|
style="height: 20px;width: 25px;"></image>
|
||||||
|
<text style="font-size: 15px;color: #FF5006;margin-left: 10px; ">¥{{page.price3}}</text>
|
||||||
|
<text style="font-size: 10px;color: #666;margin-left: 10px; ">共减:¥{{page.reduce3}}</text>
|
||||||
|
</view> -->
|
||||||
|
<text style="background: #FF9900; color: #fff;font-size: 13px; padding: 8px 15px;
|
||||||
|
border: 1px #FF5006 solid; border-top-right-radius: 25px; border-bottom-right-radius: 25px;"
|
||||||
|
@click="settlement()">结算</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
scrollHeight: "",
|
||||||
|
scrollLeftTop: "0",
|
||||||
|
scrollRightTop: "0",
|
||||||
|
searchInfo: {
|
||||||
|
sid: "0",
|
||||||
|
name: "",
|
||||||
|
affiliation: "",
|
||||||
|
customerSid: ""
|
||||||
|
},
|
||||||
|
brandType: "0",
|
||||||
|
styleObject: {
|
||||||
|
// 'position': 'fixed',
|
||||||
|
// 'top':'80vw',
|
||||||
|
'margin-top': '62vw',
|
||||||
|
'border-top-left-radius': '25px',
|
||||||
|
'border-top-right-radius': '25px',
|
||||||
|
'border-bottom-left-radius': '25px',
|
||||||
|
'border-bottom-right-radius': '25px',
|
||||||
|
'background': '#fff',
|
||||||
|
'padding-top': '10px',
|
||||||
|
'margin-bottom': "60px"
|
||||||
|
|
||||||
|
},
|
||||||
|
page: {
|
||||||
|
price: '0',
|
||||||
|
reduce: "0",
|
||||||
|
weight: "0",
|
||||||
|
// price2: '0',
|
||||||
|
// reduce2: "0",
|
||||||
|
// weight2: "0",
|
||||||
|
// price3: '0',
|
||||||
|
// reduce3: "0",
|
||||||
|
// weight3: "0",
|
||||||
|
count: "0",
|
||||||
|
startHeight: 0,
|
||||||
|
endHeight: 0
|
||||||
|
},
|
||||||
|
data: [],
|
||||||
|
goods: [],
|
||||||
|
selectIndex: 0,
|
||||||
|
initPrice: '0',
|
||||||
|
initReduce: "0",
|
||||||
|
initWeight: "0",
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
if (typeof this.$mp.page.getTabBar === 'function' && this.$mp.page.getTabBar()) {
|
||||||
|
this.$mp.page.getTabBar().setData({
|
||||||
|
selected: 0
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
this.getAllPriceOrWeight()
|
||||||
|
this.getgoods()
|
||||||
|
},
|
||||||
|
|
||||||
|
onLoad() {
|
||||||
|
|
||||||
|
let info = uni.getSystemInfoSync();
|
||||||
|
|
||||||
|
this.page.startHeight = info.windowWidth * 0.6
|
||||||
|
this.page.endHeight = info.windowWidth * 0.8
|
||||||
|
|
||||||
|
this.request()
|
||||||
|
|
||||||
|
// this.getallPrice()
|
||||||
|
// this.getweight()
|
||||||
|
// this.getcount()
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// searchBtn() {
|
||||||
|
// this.setData({
|
||||||
|
// scrollLeftTop: 0,
|
||||||
|
// scrollRightTop:0
|
||||||
|
// })
|
||||||
|
// // this.scrollLeftTop =1 //可以在每次搜索的时候先初始一下
|
||||||
|
// // this.scrollRightTop = 1 //然后每次加0.01 别问为啥要加0.01 反正直接给0就是没效果 无解 也可能是本人代码有误 但是亲测有效
|
||||||
|
// },
|
||||||
|
labelClick(index, item) {
|
||||||
|
this.selectIndex = index
|
||||||
|
|
||||||
|
this.searchInfo.sid = item.sid
|
||||||
|
this.getgoods()
|
||||||
|
|
||||||
|
},
|
||||||
|
onKeyInput(event) {
|
||||||
|
this.searchInfo.name = event.target.value
|
||||||
|
this.getgoods()
|
||||||
|
},
|
||||||
|
|
||||||
|
brandClick(val) {
|
||||||
|
|
||||||
|
this.brandType = val
|
||||||
|
this.request()
|
||||||
|
|
||||||
|
},
|
||||||
|
request() {
|
||||||
|
let _this = this
|
||||||
|
_this.$api.getAllGoodsType(_this.brandType).then((resp) => {
|
||||||
|
_this.data = resp
|
||||||
|
_this.searchInfo.sid = _this.data[0].sid
|
||||||
|
_this.selectIndex = 0
|
||||||
|
_this.getgoods()
|
||||||
|
_this.getAllPriceOrWeight()
|
||||||
|
_this.scrollLeftTop = _this.scrollLeftTop == 0 ? -1 : 0
|
||||||
|
_this.scrollRightTop = _this.scrollRightTop == 0 ? -1 : 0
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
getAllPriceOrWeight() {
|
||||||
|
let _this = this
|
||||||
|
|
||||||
|
var params = {
|
||||||
|
customerSid: getApp().globalData.sid,
|
||||||
|
affiliation: this.brandType,
|
||||||
|
}
|
||||||
|
|
||||||
|
_this.$api.getGoodsWeight(params).then((resp) => {
|
||||||
|
console.log("getGoodsWeight", resp);
|
||||||
|
|
||||||
|
_this.page.price = resp.totalPrice
|
||||||
|
_this.page.weight = resp.totalWeight
|
||||||
|
|
||||||
|
_this.initPrice = resp.totalPrice
|
||||||
|
_this.initWeight = resp.totalWeight
|
||||||
|
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
getgoods() {
|
||||||
|
let _this = this
|
||||||
|
|
||||||
|
_this.searchInfo.customerSid = getApp().globalData.sid
|
||||||
|
_this.searchInfo.affiliation = this.brandType
|
||||||
|
|
||||||
|
_this.$api.getGoodsByType(_this.searchInfo).then((resp) => {
|
||||||
|
_this.goods = resp
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
itemShow(item) {
|
||||||
|
item.showCart = true
|
||||||
|
console.log("item", item.showCart);
|
||||||
|
},
|
||||||
|
itemShow2(item) {
|
||||||
|
|
||||||
|
|
||||||
|
if (item.goodsNumber == 0) {
|
||||||
|
this.shortToast('请添加商品。')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var good = {
|
||||||
|
goodsSid: item.goodsSid,
|
||||||
|
goodsName: item.name,
|
||||||
|
goodsNumber: item.goodsNumber,
|
||||||
|
affiliation: this.brandType,
|
||||||
|
price: item.mefenPrice,
|
||||||
|
weight: item.weight,
|
||||||
|
customerSid: getApp().globalData.sid
|
||||||
|
}
|
||||||
|
console.log("itemShow2", good);
|
||||||
|
|
||||||
|
let _this = this
|
||||||
|
_this.$api.addShoppingCart(good).then((resp) => {
|
||||||
|
item.showCart = false
|
||||||
|
console.log("item2", item.showCart);
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
jian(item) {
|
||||||
|
const that = this
|
||||||
|
console.log("item》》》》", item)
|
||||||
|
if (Number(item.goodsNumber) == 1) {
|
||||||
|
|
||||||
|
wx.showModal({
|
||||||
|
content: '确定不要了吗',
|
||||||
|
cancelText: "再想想",
|
||||||
|
confirmText: "删除",
|
||||||
|
confirmColor: "#FF9900",
|
||||||
|
success(res) {
|
||||||
|
if (res.confirm) {
|
||||||
|
console.log('用户点击确定')
|
||||||
|
item.goodsNumber = 0
|
||||||
|
item.subtotal = 0
|
||||||
|
that.getallPrice()
|
||||||
|
that.getweight()
|
||||||
|
that.upDateShoppCart(item)
|
||||||
|
} else if (res.cancel) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (Number(item.goodsNumber) > 0) {
|
||||||
|
item.goodsNumber = Number(item.goodsNumber) - 1
|
||||||
|
}
|
||||||
|
|
||||||
|
item.subtotal = Number(item.goodsNumber) * Number(item.mefenPrice)
|
||||||
|
that.getallPrice()
|
||||||
|
that.getweight()
|
||||||
|
that.upDateShoppCart(item)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
jia(item) {
|
||||||
|
|
||||||
|
item.goodsNumber = Number(item.goodsNumber) + 1
|
||||||
|
item.subtotal = Number(item.goodsNumber) * Number(item.mefenPrice)
|
||||||
|
|
||||||
|
this.getallPrice()
|
||||||
|
this.getweight()
|
||||||
|
this.upDateShoppCart(item)
|
||||||
|
},
|
||||||
|
|
||||||
|
getallPrice() {
|
||||||
|
|
||||||
|
let num = 0;
|
||||||
|
for (var i = 0; i < this.goods.length; i++) {
|
||||||
|
num += Number(this.goods[i].subtotal);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.page.price = num
|
||||||
|
// if (this.brandType == '0')
|
||||||
|
// this.page.price1 = num
|
||||||
|
|
||||||
|
// if (this.brandType == '1')
|
||||||
|
// this.page.price2 = num
|
||||||
|
|
||||||
|
// if (this.brandType == '2')
|
||||||
|
// this.page.price3 = num
|
||||||
|
},
|
||||||
|
|
||||||
|
getweight() {
|
||||||
|
|
||||||
|
let num = 0;
|
||||||
|
for (var i = 0; i < this.goods.length; i++) {
|
||||||
|
num += Number(this.goods[i].weight) * Number(this.goods[i].goodsNumber);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
this.page.weight = num
|
||||||
|
|
||||||
|
// if (this.brandType == '0')
|
||||||
|
// this.page.weight1 = num
|
||||||
|
|
||||||
|
// if (this.brandType == '1')
|
||||||
|
// this.page.weight2 = num
|
||||||
|
|
||||||
|
// if (this.brandType == '2')
|
||||||
|
// this.page.weight3 = num
|
||||||
|
},
|
||||||
|
|
||||||
|
// getcount() {
|
||||||
|
|
||||||
|
// let num = 0;
|
||||||
|
// for (var i = 0; i < this.goods.length; i++) {
|
||||||
|
// num += Number(this.goods[i].goodsNumber);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// this.page.goodsNumber = num
|
||||||
|
// },
|
||||||
|
|
||||||
|
upDateShoppCart(item) {
|
||||||
|
var good = {
|
||||||
|
goodsSid: item.goodsSid,
|
||||||
|
goodsName: item.name,
|
||||||
|
goodsNumber: item.goodsNumber,
|
||||||
|
affiliation: this.brandType,
|
||||||
|
price: item.mefenPrice,
|
||||||
|
weight: item.weight,
|
||||||
|
customerSid: getApp().globalData.sid
|
||||||
|
}
|
||||||
|
|
||||||
|
let _this = this
|
||||||
|
_this.$api.addShoppingCart(good).then((resp) => {
|
||||||
|
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
detail(item) {
|
||||||
|
// 详情
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/cloud/detail_cloudCard?sid=' + item.sid + "&name=" + item.name
|
||||||
|
})
|
||||||
|
},
|
||||||
|
settlement() {
|
||||||
|
// 支付
|
||||||
|
|
||||||
|
// if (this.page.weight < 200) {
|
||||||
|
// this.shortToast('满200斤才可定制云菜窖哦,请继续选菜吧。')
|
||||||
|
// return
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
let list = []
|
||||||
|
|
||||||
|
for (var i = 0; i < this.goods.length; i++) {
|
||||||
|
var item = this.goods[i]
|
||||||
|
if (item.goodsNumber > 0)
|
||||||
|
list.push({
|
||||||
|
goodsSid: item.goodsSid,
|
||||||
|
goodsName: item.name,
|
||||||
|
partNumber: item.goodsNumber,
|
||||||
|
numofPart: item.weight,
|
||||||
|
priceUnit: item.jprice, // 斤单价
|
||||||
|
pricePart: item.mefenPrice, // 份单价
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// console.log("ddd", list);
|
||||||
|
|
||||||
|
if (list.length == 0) {
|
||||||
|
this.shortToast('请添加商品')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
var params = {
|
||||||
|
customerSid: getApp().globalData.sid,
|
||||||
|
cardNumber: 1,
|
||||||
|
totalTee: this.page.price,
|
||||||
|
ordOrderDetailsVoList: list
|
||||||
|
}
|
||||||
|
// console.log("params", params);
|
||||||
|
|
||||||
|
let _this = this
|
||||||
|
_this.$api.createOrder(params).then((resp) => {
|
||||||
|
|
||||||
|
// console.log("resp", resp);
|
||||||
|
this.$pay(resp)
|
||||||
|
}).catch(e => {})
|
||||||
|
|
||||||
|
},
|
||||||
|
itemClick(goodsSid) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/good/goodsDetail?sid=' + goodsSid
|
||||||
|
})
|
||||||
|
},
|
||||||
|
gotoCart() {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/good/shoppCart?affiliation=' + this.brandType
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.top {
|
||||||
|
width: 100vw;
|
||||||
|
/* height: 126.66vw; */
|
||||||
|
height: 75vw;
|
||||||
|
/* 加载背景图 */
|
||||||
|
background-image: url(https://supervise.yxtsoft.com/lpk/image/clound_bj1.png);
|
||||||
|
/* background-image: url(../../static/clound_bj1.png); */
|
||||||
|
/* 让背景图基于容器大小伸缩 */
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.label {
|
||||||
|
background: #fff;
|
||||||
|
color: #FF9900;
|
||||||
|
font-size: 13px;
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.label2 {
|
||||||
|
|
||||||
|
background: #FF9900;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 13px;
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.top_img1 {
|
||||||
|
border: 1px #FF9900 solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
.top_img2 {
|
||||||
|
border: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.top_text1 {
|
||||||
|
border: 1px #FF9900 solid;
|
||||||
|
background: #FF5006;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: 800;
|
||||||
|
font-family: sans-serif;
|
||||||
|
padding: 2px 5px;
|
||||||
|
border-radius: 5px;
|
||||||
|
margin-top: -25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.top_text2 {
|
||||||
|
border: 1px #FF9900 solid;
|
||||||
|
background: #fff;
|
||||||
|
color: #F6894B;
|
||||||
|
font-weight: 800;
|
||||||
|
font-family: sans-serif;
|
||||||
|
padding: 2px 5px;
|
||||||
|
border-radius: 5px;
|
||||||
|
margin-top: -25px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
584
pages/home/myCellar.vue
Normal file
584
pages/home/myCellar.vue
Normal file
@@ -0,0 +1,584 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: column;height: 100vh;background: -webkit-linear-gradient(left,#FEA65F,#FB9440);">
|
||||||
|
|
||||||
|
<view class="top">
|
||||||
|
<NavBar ref="nav" navTitle=" " :showIcon="false" :start-change-height="page.startHeight"
|
||||||
|
:end-change-height="page.endHeight">
|
||||||
|
</NavBar>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
<view style="background: #fff;flex-flow: 1; height: calc(100vh - 65vw - 50px);
|
||||||
|
width: 100%; margin-top: -13vw;
|
||||||
|
border-radius: 25px;display: flex;flex-direction: column; box-sizing: border-box;">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;height: 25px; width: 100%; flex-shrink: 0;">
|
||||||
|
|
||||||
|
<view style="width: 20%;background: #F7F7F7;border-top-left-radius: 25px;"></view>
|
||||||
|
<view style="width: 80%;background: #fff; border-top-right-radius: 25px;"></view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;min-height: calc(100% - 80px); ">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;width: 21%;background: #F7F7F7; ">
|
||||||
|
<text style="font-weight: 600;font-family: sans-serif;
|
||||||
|
color: #333;
|
||||||
|
font-size: 15px;
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
margin-top: -20px;
|
||||||
|
text-align: center;">菜窖分类</text>
|
||||||
|
|
||||||
|
|
||||||
|
<scroll-view scroll-y="true" style="height: 100%; width: 100%;border-bottom-left-radius: 25px;"
|
||||||
|
:scroll-top="scrollLeftTop" bindscrolltoupper="upper" bindscrolltolower="lower"
|
||||||
|
:show-scrollbar="false" :enhanced="true" bindscroll="scroll">
|
||||||
|
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="width: 100%;height: 100%;; display: flex;flex-direction: column; background: #F7F7F7;border-bottom-left-radius: 25px;">
|
||||||
|
<view v-for="(item,index) in data" @click="labelClick(index,item)"
|
||||||
|
style="display: flex;flex-direction: column;justify-content: center; margin-bottom: 15px; position: relative;">
|
||||||
|
|
||||||
|
<text class="label" :class="{ label2: selectIndex==index }">{{item.name}}</text>
|
||||||
|
|
||||||
|
<view v-if="item.count>0" style="border-radius: 50%;text-align: center;background: #f00;color: #fff;font-size: 8px;
|
||||||
|
position: absolute;
|
||||||
|
top: 8px;
|
||||||
|
right: 3px;
|
||||||
|
padding: 2px 5px;
|
||||||
|
width: auto;">{{item.count}}</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
<view style="width: 80%;min-height: calc(100% - 80px); display: flex;flex-direction: column;
|
||||||
|
margin-left: 10px; margin-right: 10px; margin-top: -10px; ">
|
||||||
|
|
||||||
|
<scroll-view scroll-y="true" style="height: 100%; width: 100%;" bindscrolltoupper="upper"
|
||||||
|
bindscrolltolower="lower" bindscroll="scroll" :show-scrollbar="false"
|
||||||
|
:scroll-top="scrollRightTop" :enhanced="true">
|
||||||
|
|
||||||
|
<view style="width: 100%; display: flex;flex-direction: column;">
|
||||||
|
<view v-for="(item,index) in goods" @click="itemClick(item.goodsSid)"
|
||||||
|
style="display: flex;flex-direction: column;justify-content: center;width: 100%; margin-top: 15px; ">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;width: 100%; ">
|
||||||
|
|
||||||
|
<image :src="item.iconUrl" style="width: 90px;height: 90px; border-radius: 10px; "
|
||||||
|
mode="aspectFill"></image>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: column;flex: 1; padding-bottom: 15px; margin-left: 10px;"
|
||||||
|
:style="{'border-bottom':(index == goods.length-1 ? 'none' : '1px #EFEFEF solid')}">
|
||||||
|
|
||||||
|
<text style="font-size: 13px;color: #000;">{{item.name}}</text>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 10px;color: #999;margin-top: 5px;">{{item.remark}}</text>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row;align-items: center;margin-top: 8px;">
|
||||||
|
<text
|
||||||
|
style="border: 1px #EE752F solid; border-radius: 5px; padding: 0px 8px;
|
||||||
|
font-size: 10px;color: #EE752F; margin-right: 10px; ">{{item.weight}}{{item.specificationUnit}}/{{item.unitName}}</text>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="border: 1px #EE752F solid; background: #FF9900; color: #fff; font-size: 10px;border-radius: 5px; padding: 0px 8px;"
|
||||||
|
v-if="item.type=='0'">百姓菜!</text>
|
||||||
|
<text
|
||||||
|
style="border: 1px #3AA15F solid; background: #40C772; color: #fff; font-size: 10px;border-radius: 5px; padding: 0px 8px;"
|
||||||
|
v-if="item.type=='1'">精品菜!</text>
|
||||||
|
<text
|
||||||
|
style="border: 1px #1D60C7 solid; background: #2489F7; color: #fff; font-size: 10px;border-radius: 5px; padding: 0px 8px;"
|
||||||
|
v-if="item.type=='2'">企业菜!</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;justify-content: space-between; margin-top: 15px;
|
||||||
|
margin-right: 15px;">
|
||||||
|
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
<text style="font-size: 12px;color: #666;">存量:</text>
|
||||||
|
<text
|
||||||
|
style="font-size: 14px;color: #FF5006;">{{item.goodsNumber}}{{item.unitName}}</text>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
|
||||||
|
<image src="../../static/jian_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jian(item)"></image>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 14px;margin-left: 8px;margin-right: 8px;">{{item.count}}</text>
|
||||||
|
<image src="../../static/jia_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jia(item)"></image>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view v-if="notData"
|
||||||
|
style="display: flex;flex-direction: column;justify-content: center;align-items: center;">
|
||||||
|
|
||||||
|
<image src="https://supervise.yxtsoft.com/lpk/image/buchongcaijiao.png"
|
||||||
|
mode="aspectFit" style="width: 15vm;height: 15vm;"></image>
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;margin-top: 15px;">
|
||||||
|
<text style="font-size: 14px; color: #666;margin-right: 5px;">您的菜窖为空,请</text>
|
||||||
|
<text
|
||||||
|
style="background: #FF9900; border-radius: 8px; padding: 3px 8px; color: #fff;"
|
||||||
|
@click="gotoShopp()">补充菜窖</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;border-top: 1px solid #F8F8F8; border-bottom-left-radius: 25px;border-bottom-right-radius: 25px;
|
||||||
|
padding-top: 5px; flex-shrink: 0; ">
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row; justify-content: center;align-items: center;padding-bottom: 10px;margin-top: 5px;">
|
||||||
|
|
||||||
|
<text style="background: #FF9900; color: #fff;font-size: 13px; padding: 8px 15px;
|
||||||
|
border: 1px #FF5006 solid; border-top-left-radius: 25px; border-bottom-left-radius: 25px;">转赠亲友</text>
|
||||||
|
|
||||||
|
<view style="border: 1px #FF5006 solid;margin-left: 5px;margin-right: 5px;padding: 5px 10px;
|
||||||
|
display: flex;flex-direction: row;align-items: center;" @click="gotoCart()">
|
||||||
|
<image src="../../static/shoppCart_icon.png" mode="aspectFill"
|
||||||
|
style="height: 20px;width: 25px;"></image>
|
||||||
|
<text style="font-size: 12px;color: #666;margin-left: 10px; ">共选</text>
|
||||||
|
<text style="font-size: 15px;color: #FF5006;margin-left: 10px; ">{{page.count}}</text>
|
||||||
|
<text style="font-size: 12px;color: #666;margin-left: 10px; ">份蔬菜</text>
|
||||||
|
</view>
|
||||||
|
<text style="background: #FF9900; color: #fff;font-size: 13px; padding: 8px 15px;
|
||||||
|
border: 1px #FF5006 solid; border-top-right-radius: 25px; border-bottom-right-radius: 25px;"
|
||||||
|
@click="reservation()">预约提菜</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 弹窗蒙版 -->
|
||||||
|
<view class="model" catchtouchmove='preventTouchMove' v-if='showModal' @click.stop="colseDialog()"></view>
|
||||||
|
<view class="modalDlg" catchtouchmove='preventTouchMove' v-if='showModal'>
|
||||||
|
|
||||||
|
<scroll-view scroll-y="true" style="min-height: calc(100% - 50px);; padding-top: 10px;"
|
||||||
|
bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column; margin: 20px;padding-top: 10px;">
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row;align-items: center;justify-content: space-between;">
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 16px; color: #333; font-weight: 600; font-family: sans-serif;">提菜点信息</text>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
<text v-if="pickingUp.name==''"
|
||||||
|
style="font-size: 14px;color: #666;margin-right: 10px;">{{pickingUp.type}}</text>
|
||||||
|
<text v-if="pickingUp.name!=''"
|
||||||
|
style="font-size: 16px;color: #333;margin-right: 10px;">{{pickingUp.name}}</text>
|
||||||
|
<image src="../../static/right_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;"></image>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view v-if="pickingUp.name!=''" style="display: flex;flex-direction: column;">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;margin-top: 15px;">
|
||||||
|
<image src="https://supervise.yxtsoft.com/lpk/image/date.png"
|
||||||
|
style="width:20px;height: 20px;"></image>
|
||||||
|
<text
|
||||||
|
style="margin-left: 5px;flex: 1;color: #666;font-size: 14px;">营业时间:{{pickingUp.date}}</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;margin-top: 15px;">
|
||||||
|
<image src="https://supervise.yxtsoft.com/lpk/image/location.png"
|
||||||
|
style="width: 20px;height: 20px;"></image>
|
||||||
|
<text
|
||||||
|
style="margin-left: 5px;flex: 1; color: #666;font-size: 14px;">{{pickingUp.address}}</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row;align-items: center;justify-content: space-between;margin-top: 20px;">
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 16px; color: #333; font-weight: 600; font-family: sans-serif;">提菜人信息</text>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
<text v-if="userInfo.name==''"
|
||||||
|
style="font-size: 14px;color: #666;margin-right: 10px;">{{userInfo.type}}</text>
|
||||||
|
<text v-if="userInfo.name!=''"
|
||||||
|
style="font-size: 16px;color: #333;margin-right: 10px;">{{userInfo.name}}</text>
|
||||||
|
<text v-if="userInfo.phone!=''"
|
||||||
|
style="font-size: 14px;color: #666;margin-right: 10px;">{{userInfo.phone}}</text>
|
||||||
|
<image src="../../static/right_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;"></image>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: column;margin-top: 20px;">
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 16px; color: #333; font-weight: 600; font-family: sans-serif;">所提蔬菜列表</text>
|
||||||
|
|
||||||
|
<view style="width: 100%; display: flex;flex-direction: column;">
|
||||||
|
<view v-for="(item,index) in pickingUpGoods" @click="itemClick(item.goodsSid)"
|
||||||
|
style="display: flex;flex-direction: column;justify-content: center;width: 100%; margin-top: 15px; ">
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;width: 100%; ">
|
||||||
|
|
||||||
|
<image :src="item.iconUrl"
|
||||||
|
style="width: 90px;height: 90px; border-radius: 10px; " mode="aspectFill">
|
||||||
|
</image>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: column;flex: 1; padding-bottom: 15px; margin-left: 10px;"
|
||||||
|
:style="{'border-bottom':(index == pickingUpGoods.length-1 ? 'none' : '1px #EFEFEF solid')}">
|
||||||
|
|
||||||
|
<text style="font-size: 13px;color: #000;">{{item.name}}</text>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 10px;color: #999;margin-top: 5px;">{{item.remark}}</text>
|
||||||
|
|
||||||
|
<view
|
||||||
|
style="display: flex;flex-direction: row;align-items: center;margin-top: 8px;">
|
||||||
|
<text
|
||||||
|
style="border: 1px #EE752F solid; border-radius: 5px; padding: 0px 8px;
|
||||||
|
font-size: 10px;color: #EE752F; margin-right: 10px; ">{{item.weight}}{{item.specificationUnit}}/{{item.unitName}}</text>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="border: 1px #EE752F solid; background: #FF9900; color: #fff; font-size: 10px;border-radius: 5px; padding: 0px 8px;"
|
||||||
|
v-if="item.type=='0'">百姓菜!</text>
|
||||||
|
<text
|
||||||
|
style="border: 1px #3AA15F solid; background: #40C772; color: #fff; font-size: 10px;border-radius: 5px; padding: 0px 8px;"
|
||||||
|
v-if="item.type=='1'">精品菜!</text>
|
||||||
|
<text
|
||||||
|
style="border: 1px #1D60C7 solid; background: #2489F7; color: #fff; font-size: 10px;border-radius: 5px; padding: 0px 8px;"
|
||||||
|
v-if="item.type=='2'">企业菜!</text>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;justify-content: space-between; margin-top: 15px;
|
||||||
|
margin-right: 15px;">
|
||||||
|
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
<text style="font-size: 12px;color: #FF5006;">剩余:</text>
|
||||||
|
<text
|
||||||
|
style="font-size: 14px;color: #FF5006;">{{item.goodsNumber}}{{item.unitName}}</text>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<view style="display: flex;flex-direction: row;align-items: center;">
|
||||||
|
|
||||||
|
<image src="../../static/jian_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jian(item)">
|
||||||
|
</image>
|
||||||
|
|
||||||
|
<text
|
||||||
|
style="font-size: 14px;margin-left: 8px;margin-right: 8px;">{{item.count}}</text>
|
||||||
|
<image src="../../static/jia_icon.png" mode="aspectFill"
|
||||||
|
style="width: 20px;height: 20px;" @click.stop="jia(item)">
|
||||||
|
</image>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="height: 150px;"></view>
|
||||||
|
|
||||||
|
<text style="background: #FF9900;color: #fff; margin-left: 20px; margin-right: 20px;border-radius: 20px;
|
||||||
|
padding-top: 10px;padding-bottom: 10px;text-align: center;">确认提菜</text>
|
||||||
|
|
||||||
|
<view style="height: 80px;"></view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</scroll-view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
notData: false,
|
||||||
|
showModal: false,
|
||||||
|
scrollHeight: "",
|
||||||
|
scrollLeftTop: "0",
|
||||||
|
scrollRightTop: "0",
|
||||||
|
brandType: "0",
|
||||||
|
styleObject: {
|
||||||
|
// 'position': 'fixed',
|
||||||
|
// 'top':'80vw',
|
||||||
|
'margin-top': '62vw',
|
||||||
|
'border-top-left-radius': '25px',
|
||||||
|
'border-top-right-radius': '25px',
|
||||||
|
'border-bottom-left-radius': '25px',
|
||||||
|
'border-bottom-right-radius': '25px',
|
||||||
|
'background': '#fff',
|
||||||
|
'padding-top': '10px',
|
||||||
|
'margin-bottom': "60px"
|
||||||
|
|
||||||
|
},
|
||||||
|
page: {
|
||||||
|
count: "0",
|
||||||
|
startHeight: 0,
|
||||||
|
endHeight: 0
|
||||||
|
},
|
||||||
|
data: [],
|
||||||
|
goods: [],
|
||||||
|
selectIndex: 0,
|
||||||
|
pickingUp: {
|
||||||
|
type: "去完善",
|
||||||
|
name: "",
|
||||||
|
date: "",
|
||||||
|
address: ""
|
||||||
|
},
|
||||||
|
userInfo: {
|
||||||
|
type: "去完善",
|
||||||
|
name: "",
|
||||||
|
phone: ""
|
||||||
|
},
|
||||||
|
pickingUpGoods: [
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onShow() {
|
||||||
|
if (typeof this.$mp.page.getTabBar === 'function' && this.$mp.page.getTabBar()) {
|
||||||
|
this.$mp.page.getTabBar().setData({
|
||||||
|
selected: 1
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onHide() {
|
||||||
|
this.colseDialog()
|
||||||
|
},
|
||||||
|
|
||||||
|
onLoad() {
|
||||||
|
|
||||||
|
let info = uni.getSystemInfoSync();
|
||||||
|
|
||||||
|
this.page.startHeight = info.windowWidth * 0.6
|
||||||
|
this.page.endHeight = info.windowWidth * 0.8
|
||||||
|
|
||||||
|
this.request()
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
labelClick(index, item) {
|
||||||
|
this.selectIndex = index
|
||||||
|
this.brandType = item.sid
|
||||||
|
this.pickingUpGoods = []
|
||||||
|
this.page.count = 0
|
||||||
|
this.getgoods()
|
||||||
|
|
||||||
|
},
|
||||||
|
request() {
|
||||||
|
let _this = this
|
||||||
|
var params = {
|
||||||
|
customerSid: getApp().globalData.sid
|
||||||
|
}
|
||||||
|
|
||||||
|
_this.$api.vegeCellarTypeList(params).then((resp) => {
|
||||||
|
_this.data = resp
|
||||||
|
_this.selectIndex = 0
|
||||||
|
_this.getgoods()
|
||||||
|
_this.scrollLeftTop = _this.scrollLeftTop == 0 ? -1 : 0
|
||||||
|
_this.scrollRightTop = _this.scrollRightTop == 0 ? -1 : 0
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
getgoods() {
|
||||||
|
let _this = this
|
||||||
|
|
||||||
|
var params = {
|
||||||
|
customerSid: getApp().globalData.sid,
|
||||||
|
affiliation: this.brandType
|
||||||
|
}
|
||||||
|
|
||||||
|
_this.$api.vegeCellarList(params).then((resp) => {
|
||||||
|
_this.goods = resp
|
||||||
|
|
||||||
|
_this.notData = resp.length == 0
|
||||||
|
}).catch(e => {})
|
||||||
|
},
|
||||||
|
jian(item) {
|
||||||
|
if (Number(item.count) > 0) {
|
||||||
|
item.count = Number(item.count) - 1
|
||||||
|
this.addGoods(item)
|
||||||
|
}
|
||||||
|
this.getcount()
|
||||||
|
},
|
||||||
|
jia(item) {
|
||||||
|
item.count = Number(item.count) + 1
|
||||||
|
this.getcount()
|
||||||
|
this.addGoods(item)
|
||||||
|
},
|
||||||
|
|
||||||
|
getcount() {
|
||||||
|
|
||||||
|
let num = 0;
|
||||||
|
for (var i = 0; i < this.goods.length; i++) {
|
||||||
|
num += Number(this.goods[i].count);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.page.count = num
|
||||||
|
},
|
||||||
|
|
||||||
|
addGoods(goods) {
|
||||||
|
|
||||||
|
var item = this.pickingUpGoods.find(item => item.goodsSid == goods.goodsSid)
|
||||||
|
|
||||||
|
if (item) {
|
||||||
|
|
||||||
|
if (goods.count == 0) {
|
||||||
|
var index = this.pickingUpGoods.findIndex(item => item.goodsSid == goods.goodsSid)
|
||||||
|
this.pickingUpGoods.splice(index, 1)
|
||||||
|
} else {
|
||||||
|
item.count = goods.count
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.pickingUpGoods.push(goods)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
itemClick(goodsSid) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/good/goodsDetail?sid=' + goodsSid
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
gotoShopp() {
|
||||||
|
uni.switchTab({
|
||||||
|
url: '/pages/home/cloudCard2',
|
||||||
|
})
|
||||||
|
},
|
||||||
|
reservation() {
|
||||||
|
if (this.pickingUpGoods.length > 0){
|
||||||
|
this.showModal = true
|
||||||
|
}else{
|
||||||
|
this.shortToast('请先选择商品')
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
colseDialog() {
|
||||||
|
this.showModal = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.top {
|
||||||
|
width: 100vw;
|
||||||
|
/* height: 126.66vw; */
|
||||||
|
height: 75vw;
|
||||||
|
/* 加载背景图 */
|
||||||
|
background-image: url(https://supervise.yxtsoft.com/lpk/image/clound_bj1.png);
|
||||||
|
/* background-image: url(../../static/clound_bj1.png); */
|
||||||
|
/* 让背景图基于容器大小伸缩 */
|
||||||
|
background-size: 100% 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.label {
|
||||||
|
background: #fff;
|
||||||
|
color: #FF9900;
|
||||||
|
font-size: 13px;
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.label2 {
|
||||||
|
|
||||||
|
background: #FF9900;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 13px;
|
||||||
|
padding-top: 15px;
|
||||||
|
padding-bottom: 15px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 弹窗样式 */
|
||||||
|
.model {
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: #000;
|
||||||
|
z-index: 999;
|
||||||
|
opacity: 0.5;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modalDlg {
|
||||||
|
/* 设置超出滚动 */
|
||||||
|
overflow: auto;
|
||||||
|
width: 100%;
|
||||||
|
position: fixed;
|
||||||
|
top: 50vw;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
z-index: 9999;
|
||||||
|
background-color: #fff;
|
||||||
|
border-top-right-radius: 20px;
|
||||||
|
border-top-left-radius: 20px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -21,7 +21,7 @@
|
|||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view style="display: flex;flex-direction: column;margin-left: 10px;" v-if="userInfo.nick==''">
|
<view style="display: flex;flex-direction: column;margin-left: 10px;" v-if="userInfo.nick==''">
|
||||||
<text style="font-size: 16px;color: #fff;" @click="showDiaLog">绑定用户</text>
|
<text style="font-size: 16px;color: #fff;" @click="showDiaLog">完善信息</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
@@ -328,7 +328,10 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
showDiaLog() {
|
showDiaLog() {
|
||||||
this.showModal = true
|
// this.showModal = true
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/me/base_info'
|
||||||
|
})
|
||||||
},
|
},
|
||||||
colseDialog() {
|
colseDialog() {
|
||||||
this.showModal = false
|
this.showModal = false
|
||||||
|
|||||||
@@ -127,8 +127,9 @@
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
uni.switchTab({
|
uni.switchTab({
|
||||||
url: '/pages/home/pickUpCard',
|
// url: '/pages/home/pickUpCard',
|
||||||
// url: '/pages/home/myHome',
|
// url: '/pages/home/myHome',
|
||||||
|
url: '/pages/home/myCellar',
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<view style="display: flex;flex-direction: column;">
|
<view style="display: flex;flex-direction: column;">
|
||||||
|
|
||||||
<NavBar ref="nav" navTitle="个人信息" :showIcon="true">
|
<NavBar ref="nav" navTitle="个人信息" :showIcon="true" :supportChange="false">
|
||||||
</NavBar>
|
</NavBar>
|
||||||
|
|
||||||
<loading-state ref="pageView" @request="request">
|
<loading-state ref="pageView" @request="request">
|
||||||
|
|||||||
BIN
static/basket_icon.png
Normal file
BIN
static/basket_icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
BIN
static/inCart.png
Normal file
BIN
static/inCart.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.0 KiB |
BIN
static/jia_icon.png
Normal file
BIN
static/jia_icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 328 B |
BIN
static/jian_icon.png
Normal file
BIN
static/jian_icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 394 B |
BIN
static/search_icon.png
Normal file
BIN
static/search_icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 376 B |
BIN
static/shoppCart_icon.png
Normal file
BIN
static/shoppCart_icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 921 B |
@@ -244,7 +244,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.uni-button-color {
|
.uni-button-color {
|
||||||
color: #007aff;
|
color: #F4934B;
|
||||||
}
|
}
|
||||||
|
|
||||||
.uni-dialog-input {
|
.uni-dialog-input {
|
||||||
|
|||||||
Reference in New Issue
Block a user