525-购物车

pull/2/head
js199000126 2023-05-25 15:45:57 +08:00
parent fee16f8471
commit 5641a8b566
10 changed files with 609 additions and 240 deletions

View File

@ -33,6 +33,10 @@ export function changeCartNum(cartId, number) {
* 清除购物车
* @param object ids join(',') 切割成字符串
*/
// export function cartDel(ids) {
// console.log(ids,'-------')
// return request.post('front/cart/delete?id='+ ids);
// }
export function cartDel(ids) {
console.log(ids)
return request.post('front/cart/delete', {

View File

@ -15,3 +15,6 @@ export const getBanner = params => request.post('market/banner/list', { params }
// 获取租户
export const getTenant = id => request.get('tenant/get/' , {id:id })
// 获取头部信息
export const getHeader = params => request.get('api/order/member/memberHeadInfo' , {params })

View File

@ -1,6 +1,6 @@
let domain = 'http://api.cyywl.top'
// let domain = 'http://192.168.1.188:48080'
// let domain = 'http://api.cyywl.top'
let domain = 'http://192.168.1.188:48080'
module.exports = {
// 请求域名 格式: https://您的域名

View File

@ -3,6 +3,272 @@
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "yudao-ui-app",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"clipboard": "^2.0.11",
"html-to-image": "^1.11.11",
"qrcode": "^1.5.3"
}
},
"node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
},
"node_modules/ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dependencies": {
"color-convert": "^2.0.1"
}
},
"node_modules/camelcase": {
"version": "5.3.1",
"resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-5.3.1.tgz",
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
},
"node_modules/clipboard": {
"version": "2.0.11",
"resolved": "https://registry.npmmirror.com/clipboard/-/clipboard-2.0.11.tgz",
"integrity": "sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw==",
"dependencies": {
"good-listener": "^1.2.2",
"select": "^1.1.2",
"tiny-emitter": "^2.0.0"
}
},
"node_modules/cliui": {
"version": "6.0.0",
"resolved": "https://registry.npmmirror.com/cliui/-/cliui-6.0.0.tgz",
"integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
"dependencies": {
"string-width": "^4.2.0",
"strip-ansi": "^6.0.0",
"wrap-ansi": "^6.2.0"
}
},
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dependencies": {
"color-name": "~1.1.4"
}
},
"node_modules/color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
},
"node_modules/decamelize": {
"version": "1.2.0",
"resolved": "https://registry.npmmirror.com/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA=="
},
"node_modules/delegate": {
"version": "3.2.0",
"resolved": "https://registry.npmmirror.com/delegate/-/delegate-3.2.0.tgz",
"integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw=="
},
"node_modules/dijkstrajs": {
"version": "1.0.3",
"resolved": "https://registry.npmmirror.com/dijkstrajs/-/dijkstrajs-1.0.3.tgz",
"integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA=="
},
"node_modules/emoji-regex": {
"version": "8.0.0",
"resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
},
"node_modules/encode-utf8": {
"version": "1.0.3",
"resolved": "https://registry.npmmirror.com/encode-utf8/-/encode-utf8-1.0.3.tgz",
"integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw=="
},
"node_modules/find-up": {
"version": "4.1.0",
"resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dependencies": {
"locate-path": "^5.0.0",
"path-exists": "^4.0.0"
}
},
"node_modules/get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
},
"node_modules/good-listener": {
"version": "1.2.2",
"resolved": "https://registry.npmmirror.com/good-listener/-/good-listener-1.2.2.tgz",
"integrity": "sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw==",
"dependencies": {
"delegate": "^3.1.2"
}
},
"node_modules/html-to-image": {
"version": "1.11.11",
"resolved": "https://registry.npmmirror.com/html-to-image/-/html-to-image-1.11.11.tgz",
"integrity": "sha512-9gux8QhvjRO/erSnDPv28noDZcPZmYE7e1vFsBLKLlRlKDSqNJYebj6Qz1TGd5lsRV+X+xYyjCKjuZdABinWjA=="
},
"node_modules/is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="
},
"node_modules/locate-path": {
"version": "5.0.0",
"resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dependencies": {
"p-locate": "^4.1.0"
}
},
"node_modules/p-limit": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz",
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dependencies": {
"p-try": "^2.0.0"
}
},
"node_modules/p-locate": {
"version": "4.1.0",
"resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dependencies": {
"p-limit": "^2.2.0"
}
},
"node_modules/p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
},
"node_modules/path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
},
"node_modules/pngjs": {
"version": "5.0.0",
"resolved": "https://registry.npmmirror.com/pngjs/-/pngjs-5.0.0.tgz",
"integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw=="
},
"node_modules/qrcode": {
"version": "1.5.3",
"resolved": "https://registry.npmmirror.com/qrcode/-/qrcode-1.5.3.tgz",
"integrity": "sha512-puyri6ApkEHYiVl4CFzo1tDkAZ+ATcnbJrJ6RiBM1Fhctdn/ix9MTE3hRph33omisEbC/2fcfemsseiKgBPKZg==",
"dependencies": {
"dijkstrajs": "^1.0.1",
"encode-utf8": "^1.0.3",
"pngjs": "^5.0.0",
"yargs": "^15.3.1"
},
"bin": {
"qrcode": "bin/qrcode"
},
"engines": {
"node": ">=10.13.0"
}
},
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q=="
},
"node_modules/require-main-filename": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz",
"integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
},
"node_modules/select": {
"version": "1.1.2",
"resolved": "https://registry.npmmirror.com/select/-/select-1.1.2.tgz",
"integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA=="
},
"node_modules/set-blocking": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz",
"integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
},
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dependencies": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
"strip-ansi": "^6.0.1"
}
},
"node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dependencies": {
"ansi-regex": "^5.0.1"
}
},
"node_modules/tiny-emitter": {
"version": "2.1.0",
"resolved": "https://registry.npmmirror.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz",
"integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q=="
},
"node_modules/which-module": {
"version": "2.0.1",
"resolved": "https://registry.npmmirror.com/which-module/-/which-module-2.0.1.tgz",
"integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ=="
},
"node_modules/wrap-ansi": {
"version": "6.2.0",
"resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
"integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
"dependencies": {
"ansi-styles": "^4.0.0",
"string-width": "^4.1.0",
"strip-ansi": "^6.0.0"
}
},
"node_modules/y18n": {
"version": "4.0.3",
"resolved": "https://registry.npmmirror.com/y18n/-/y18n-4.0.3.tgz",
"integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="
},
"node_modules/yargs": {
"version": "15.4.1",
"resolved": "https://registry.npmmirror.com/yargs/-/yargs-15.4.1.tgz",
"integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
"dependencies": {
"cliui": "^6.0.0",
"decamelize": "^1.2.0",
"find-up": "^4.1.0",
"get-caller-file": "^2.0.1",
"require-directory": "^2.1.1",
"require-main-filename": "^2.0.0",
"set-blocking": "^2.0.0",
"string-width": "^4.2.0",
"which-module": "^2.0.0",
"y18n": "^4.0.0",
"yargs-parser": "^18.1.2"
}
},
"node_modules/yargs-parser": {
"version": "18.1.3",
"resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-18.1.3.tgz",
"integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
"dependencies": {
"camelcase": "^5.0.0",
"decamelize": "^1.2.0"
}
}
},
"dependencies": {
"ansi-regex": {
"version": "5.0.1",

View File

@ -98,7 +98,8 @@
productPage,
getSpuDetail,
getBanner,
getTenant
getTenant,
getHeader
} from '../../api/product.js'
import {
postCartAdd
@ -321,6 +322,9 @@
this.text = res.data.notice
})
})
getHeader().then(res=>{
console.log(res,'会员')
})
this.getBanners()
this.getIndexPage()
this.getIndexConfig();

View File

@ -9,7 +9,7 @@
</view>
<view class="box">
<view class="item" v-for="(item,index) in cartList.valid" :key="item.attrId">
<view class="item-list">
<view class="item-list" v-if="cartList.valid.length>0">
<view style="height: 1rpx;"></view>
<view class="top">
<text class="shopName">{{item.storeName}}</text>
@ -28,18 +28,18 @@
{{item.storeName}}
</view>
<view class="price">
{{item.price}}
<u--text class="text" color="#E50202" mode="price" :text="item.price"></u--text>
</view>
</view>
<!-- <view class="sum">x{{item.cartNum}}</view> -->
<view class="numberBox">
<u-number-box v-model="cartNum" min="0">
<view @tap="ChangeCartCountJian(item.id,item.cartNum)" slot="minus" class="minus">
<view @tap="ChangeCartCountJian(item,index)" slot="minus" class="minus">
<u-icon name="minus" size="12"></u-icon>
</view>
<text slot="input" style="width: 50px;text-align: center;"
class="input">{{item.cartNum}}</text>
<view slot="plus" class="plus" @tap="ChangeCartCountJia(item.id,item.cartNum)">
<view slot="plus" class="plus" @tap="ChangeCartCountJia(item,index)">
<u-icon name="plus" color="#FFFFFF" size="12"></u-icon>
</view>
</u-number-box>
@ -47,24 +47,27 @@
</view>
</view>
</view>
<view class="item" style="width: 669rpx;height: 800rpx;background: transparent;" v-if="cartList.valid.length==0">
<u-empty width="669rpx" height="100%" marginTop="200rpx" mode="car"></u-empty>
</view>
</view>
<view class="fixed" v-if="isManager">
<view class="all" @tap="allCheck">
<text :class="[isAllSelect?'checkedIcon':'noCheckIcon']"></text>
<text>全选</text>
</view>
<view class="allPrice">合计 <text>998.00</text> </view>
<view class="closeAll" @tap="subOrder">()</view>
<view class="allPrice">合计 <u--text class="text" color="#E50202" mode="price" :text="priceAll"></u--text>
</view>
<view class="closeAll" @tap="subOrder">({{allCountval}})</view>
</view>
<view class="fixed" v-if="!isManager">
<view class="all" @tap="allCheck">
<text :class="[isAllSelect?'checkedIcon':'noCheckIcon']"></text>
<text>全选</text>
</view>
<view class="collect">收藏</view>
<!-- <view class="collect">收藏</view> -->
<view class="delAll" @tap="subDel"></view>
</view>
</view>
@ -165,6 +168,7 @@
loadendInvalid: false,
loadTitleInvalid: '加载更多', //
pageInvalid: 1,
priceAll: 0,
limitInvalid: 20,
attr: {
cartAttr: false,
@ -190,16 +194,29 @@
},
allSelectval() {
let count = 0
this.cartList.forEach(item => {
this.cartList.valid.forEach(item => {
if (item.checked) {
count += 1
}
})
if(count == this.cartList.length){
if (count == this.cartList.valid.length) {
return true
}else {
} else {
return false
}
},
allCountval() {
this.priceAll = 0
let count = 0
this.cartList.valid.forEach(item => {
let price = 0
if (item.checked) {
count += 1
price = item.price * item.cartNum
this.priceAll = this.priceAll + price
}
})
return count
}
},
onLoad: function(options) {
@ -257,6 +274,7 @@
})
} else {
this.cartList.valid.forEach((item, index) => {
this.priceAll = 0
item.checked = false
Vue.set(this.cartList.valid, index, item)
Vue.set(this.cartList, 'valid', this.cartList.valid)
@ -265,7 +283,7 @@
},
//
reelect(item, index) {
console.log(item,'item哇')
console.log(item, 'item哇')
// let reCheck = {
// id: item.id,
// num: item.cartNum+2,
@ -275,28 +293,29 @@
// getResetCart(reCheck).then(res=> {
// console.log('')
// })
this.allCountval
item.checked = !item.checked
// this.priceAll -= item.price * item.cartNum
Vue.set(this.cartList.valid, index, item)
Vue.set(this.cartList, 'valid', this.cartList.valid)
},
//
ChangeCartCountJia(id, num) {
let count = num + 1
changeCartNum(id, count).then(res => {
console.log('++成功')
this.cartList.valid = []
this.getCartList()
ChangeCartCountJia(item, index) {
item.cartNum += 1
console.log(item, 'jiajiajia')
changeCartNum(item.id, item.cartNum).then(res => {
Vue.set(this.cartList.valid, index, item)
Vue.set(this.cartList, 'valid', this.cartList.valid)
})
},
//
ChangeCartCountJian(id, num) {
let count = num - 1
changeCartNum(id, count).then(res => {
console.log('-成功')
this.cartList.valid = []
this.getCartList()
ChangeCartCountJian(item, index) {
item.cartNum -= 1
changeCartNum(item.id, item.cartNum).then(res => {
Vue.set(this.cartList.valid, index, item)
Vue.set(this.cartList, 'valid', this.cartList.valid)
})
},
//
@ -507,7 +526,7 @@
selectValue.push(item.id)
}
})
console.log(selectValue,'000000')
console.log(selectValue, '000000')
this.selectValue = selectValue
let that = this
if (selectValue.length > 0)
@ -539,7 +558,7 @@
},
subCollect: function(event) {
let that = this
selectValue = that.selectValue;
selectValue = that.selectValue;
if (selectValue.length > 0) {
let selectValueProductId = that.getSelectValueProductId();
collectAll(that.getSelectValueProductId()).then(res => {
@ -772,16 +791,17 @@
});
},
async getCartList() {
uni.showLoading({
title: '加载中',
mask: true
});
// uni.showLoading({
// title: '',
// mask: true
// });
let that = this;
let data = {
page: that.page,
limit: that.limit,
isValid: true
}
getCartCounts(true, 'sum').then(async c => {
that.cartCount = c.data.count;
if (c.data.count === 0) that.getHostProduct();
@ -789,7 +809,8 @@
let cartList = await this.getCartData(data);
console.log(cartList, 'cartlist');
let valid = cartList.list;
let validList = that.$util.SplitArray(valid, that.cartList.valid);
// let validList = that.$util.SplitArray(valid, that.cartList.valid);
console.log(valid, 'that.cartList0')
let numSub = [{
numSub: true
}, {
@ -801,42 +822,44 @@
numAdd: false
}],
selectValue = [];
if (validList.length > 0) {
for (let index in validList) {
if (validList[index].cartNum == 1) {
validList[index].numSub = true;
} else {
validList[index].numSub = false;
}
let productInfo = validList[index];
let stock = validList[index].stock ? validList[index].stock : 0;
if (validList[index].cartNum == stock) {
validList[index].numAdd = true;
} else if (validList[index].cartNum == validList[index].stock) {
validList[index].numAdd = true;
} else {
validList[index].numAdd = false;
}
if (validList[index].attrStatus) {
validList[index].checked = true;
selectValue.push(validList[index].id);
} else {
validList[index].checked = false;
}
}
}
that.$set(that.cartList, 'valid', validList);
// if (validList.length > 0) {
// for (let index in validList) {
// if (validList[index].cartNum == 1) {
// validList[index].numSub = true;
// } else {
// validList[index].numSub = false;
// }
// let productInfo = validList[index];
// let stock = validList[index].stock ? validList[index].stock : 0;
// if (validList[index].cartNum == stock) {
// validList[index].numAdd = true;
// } else if (validList[index].cartNum == validList[index].stock) {
// validList[index].numAdd = true;
// } else {
// validList[index].numAdd = false;
// }
// if (validList[index].attrStatus) {
// validList[index].checked = true;
// selectValue.push(validList[index].id);
// } else {
// validList[index].checked = false;
// }
// }
// }
// that.$set(that.cartList, 'valid', validList);
that.$set(that.cartList, 'valid', valid);
data.page += 1;
that.selectValue = selectValue;
console.log(that.cartList)
let newArr = validList.filter(item => item.attrStatus);
console.log(that.cartList, 'that.cartList')
let newArr = valid.filter(item => item.attrStatus);
that.isAllSelect = newArr.length == selectValue.length && newArr.length;
that.loading = false;
that.canShow = true;
uni.hideLoading();
that.switchSelect();
}
that.loading = false;
that.canShow = true;
uni.hideLoading();
});
},
getInvalidList: function() {
@ -1167,16 +1190,16 @@
position: absolute;
right: 222rpx;
top: 34rpx;
display: flex;
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: #000000;
text {
.text {
font-size: 30rpx;
font-family: PingFang SC;
font-weight: 400;
color: #E94343;
}
}

View File

@ -24,23 +24,23 @@
古驰旗舰店>
</view>
</view>
<view class="content">
<view class="content" v-for="(item,index) in orderInfo.orderInfoList" :key="item.productId">
<view class="image">
<u--image :showLoading="true" radius="10rpx" src="https://cdn.uviewui.com/uview/album/1.jpg" width="111rpx"
height="99rpx" @click="click"></u--image>
<u--image :showLoading="true" radius="10rpx" :src="item.image" width="111rpx" height="99rpx"
@click="click"></u--image>
</view>
<view class="text">
<view class="name">
GUCCI/古驰HADLEY 21
{{item.productName}}
</view>
<view class="model">
Gucci Blondie小号托特包
{{item.sku}}
</view>
<view class="prices">
<u--text color="#E50202" mode="price" :text="orderInfo.totalPrice"></u--text>
<u--text color="#E50202" mode="price" :text="item.proTotalPrice"></u--text>
</view>
</view>
<div class="sum">x1</div>
<div class="sum">x{{item.cartNum}}</div>
</view>
<view class="boxs"></view>
</view>
@ -48,15 +48,21 @@
<view style="height: 1rpx;"></view>
<view class="priceitems">
<text class="itemsleft">商品总价</text>
<text class="itemsright"><u--text mode="price" :text="orderInfo.proTotalPrice"></u--text></text>
<text class="itemsright">
<u--text mode="price" :text="orderInfo.proTotalPrice"></u--text>
</text>
</view>
<view class="priceitems">
<text class="itemsleft">运费</text>
<text class="itemsright"><u--text mode="price" :text="orderInfo.payPostage"></u--text></text>
<text class="itemsright">
<u--text mode="price" :text="orderInfo.payPostage"></u--text>
</text>
</view>
<view class="priceitems">
<text class="itemsleft">待付金额</text>
<text class="itemsright"><u--text mode="price" :text="orderInfo.totalPrice"></u--text></text>
<text class="itemsright">
<u--text mode="price" :text="orderInfo.totalPrice"></u--text>
</text>
</view>
</view>
<view class="detail">
@ -79,27 +85,29 @@
<view style="height: 1rpx;"></view>
<view class="title">支付方式</view>
<view class="payment" @click="isWx=!isWx">
<view class="mode">
<text class="wechat"></text>
<text style="width: 140rpx;">微信支付</text>
<view :class="[isWx?'radioNo':'radio']"></view>
</view>
<view class="mode">
<text class="wechat"></text>
<text style="width: 140rpx;">微信支付</text>
<view :class="[isWx?'radioNo':'radio']"></view>
</view>
</view>
<view class="payment" @click="isWx=!isWx">
<view class="mode">
<text class="zfb"></text>
<text style="width: 140rpx;">支付宝支付</text>
<view :class="[isWx?'radio':'radioNo']"></view>
</view>
<view class="mode">
<text class="zfb"></text>
<text style="width: 140rpx;">支付宝支付</text>
<view :class="[isWx?'radio':'radioNo']"></view>
</view>
</view>
</view>
</view>
<view class="zf">
<view class="zfNumber">待支付: <text>123</text> </view>
<view class="zfNumber"> <text>待支付:</text>
<u--text class="text" size="35rpx" mode="price" :text="orderInfo.totalPrice"></u--text>
</view>
<view class="closeOrder" tap="cancelOrder()">取消订单</view>
<view class="orderPay" @tap='pay_open(orderInfo.orderId)'>立即付款</view>
</view>
</view>
</template>
@ -143,7 +151,7 @@
qrcodeSize: 100,
order_id: '',
evaluate: 0,
cartInfo: [], //
orderInfo: {
systemStore: {},
@ -609,6 +617,10 @@
justify-content: space-between;
.shopName {
width: 240rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
font-size: 28rpx;
font-family: PingFang SC;
font-weight: 400;
@ -644,6 +656,10 @@
margin-right: 60rpx;
.name {
width: 440rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
@ -805,6 +821,7 @@
background-size: 100% 100%;
margin-left: 400rpx;
}
.radioNo {
width: 34rpx;
height: 34rpx;
@ -822,15 +839,19 @@
.zf {
position: fixed;
bottom: 0;
display: flex;
justify-content: space-around;
align-items: center;
width: 100%;
height: 176rpx;
background: #fff;
.zfNumber {
position: absolute;
left: 52rpx;
top: 58rpx;
// position: absolute;
// left: 52rpx;
// top: 58rpx;
font-size: 28rpx;
display: flex;
font-family: PingFang SC;
font-weight: 400;
color: #0C0C0C;
@ -843,12 +864,12 @@
}
}
.closeOrder {
position: absolute;
top: 48rpx;
right: 230rpx;
// position: absolute;
// top: 48rpx;
// right: 230rpx;
width: 179rpx;
height: 64rpx;
text-align: center;
@ -862,9 +883,9 @@
}
.orderPay {
position: absolute;
top: 48rpx;
right: 34rpx;
// position: absolute;
// top: 48rpx;
// right: 34rpx;
width: 178rpx;
height: 63rpx;
line-height: 63rpx;

View File

@ -952,7 +952,7 @@
payChannel: that.payChannel
};
console.log(that.system_store.phone,'data')
console.log(that.preOrderNo,'data')
if (data.payType == 'yue' && parseFloat(that.userInfo.nowMoney) < parseFloat(that.totalPrice))
return that.$util
.Tips({

View File

@ -1,26 +1,17 @@
<template>
<view class="container">
<view class="navbar">
<u-sticky bgColor="#fff">
<u-navbar>
<view class="navbar-left" v-slot="left">
<u-icon name="arrow-left"></u-icon>
</view>
<template v-slot="center ">
<view class="search">
<view class="icon">
<u-icon name="search" size="44rpx"></u-icon>
</view>
<view class="input">
<u--input placeholder="请输入内容" v-model="value" @change="change"></u--input>
</view>
<view class="button">搜索</view>
</view>
</template>
</u-navbar>
</u-sticky>
<view class="goback"></view>
<view class="search">
<view class="icon"></view>
<view class="input">
<u--input placeholder="搜索我的订单" v-model="value" @change="change"></u--input>
</view>
<view class="button">搜索</view>
</view>
<view class="" style="width: 50rpx;">
</view>
</view>
<view class="tabs">
<u-tabs :list="list1" @tap="click" lineWidth="60rpx" lineHeight="9rpx"></u-tabs>
@ -29,46 +20,53 @@
<!-- <view class="item" @tap="goOrderDetails(123)">
</view> -->
<view class='list' v-if="status='0'">
<!-- <view class='item' v-for="(item,index) in orderList" :key="index"> -->
<view class='item' v-for="(item,index) in orderList" :key="item.id">
<view @tap='goOrderDetails(item.orderId)'>
<view class="box"></view>
<view class="top">
<view class="shopName">
古驰旗舰店
</view>
<view class="state">
{{getStatus(item.status)}}
</view>
</view>
<view class="content">
<view class="image">
<u--image :showLoading="true" radius="10rpx" src="https://cdn.uviewui.com/uview/album/1.jpg" width="111rpx"
height="99rpx" @tap="click"></u--image>
</view>
<view class="text">
<view class="name">
GUCCI/古驰HADLEY 21
<u-list class='list' height="1180rpx" @scrolltolower="scrolltolower">
<!-- <view class='list'> -->
<!-- <view class='item' v-for="(item,index) in orderList" :key="index"> -->
<!-- <view class='items' v-for="(item,index) in orderList" :key="item.id"> -->
<u-list-item class='items' v-for="(item,index) in orderList" :key="item.id">
<view class="item" v-for="(goods,i) in item.orderInfoList">
<view @tap='goOrderDetails(item.orderId)'>
<view class="box"></view>
<view class="top">
<view class="shopName">
{{goods.productName}}
</view>
<view class="model">
Gucci Blondie小号托特包
</view>
<view class="price">
{{item.payPrice}}
<view class="state">
{{getStatus(item.status)}}
</view>
</view>
<view class="content">
<view class="image">
<u--image :showLoading="true" radius="10rpx" :src="goods.image" width="111rpx"
height="99rpx" @tap="click"></u--image>
</view>
<view class="text">
<view class="name">
{{goods.productName}}
</view>
<view class="model">
{{goods.sku}}
</view>
<view class="price">
{{goods.price}}
</view>
</view>
</view>
<view class="box"></view>
</view>
</view>
</view>
<view v-if="orderList.length == 0">
<emptyPage title="暂无订单~"></emptyPage>
</view>
</u-list-item>
<!-- </view> -->
<view v-if="orderList.length == 0">
<emptyPage title="暂无订单~"></emptyPage>
</view>
<!-- </view> -->
</u-list>
<!-- <view class='loadingicon acea-row row-center-wrapper' v-if="orderList.length>0">
<text class='loading iconfont icon-jiazai' :hidden='loading==false'></text>{{loadTitle}}
</view> -->
</view>
</template>
@ -122,17 +120,18 @@
name: '待发货',
value: '1'
}, {
name: '已完成',
name: '待收货',
value: '2'
}, {
name: '售后中',
value: '3'
}, {
name: '已关闭',
name: '已完成',
value: '4'
}, {
name: '售后/退款',
value: '-3'
}],
limit: 20,
itemList: [],
value: '',
currentPage: 1,
listTitle: '',
pageSize: 10,
@ -217,7 +216,7 @@
}
},
click(item) {
console.log(item.value,1)
console.log(item.value, 1)
if (item.value == this.orderStatus) return;
this.orderStatus = item.value
console.log(this.orderStatus)
@ -227,7 +226,7 @@
this.$set(this, 'orderList', []);
this.getOrderData();
this.getOrderList()
},
onLoadFun() {
this.getOrderData();
@ -424,7 +423,64 @@
<style scoped lang="scss">
.container {
width: 100%;
height: 100%;
.navbar {
position: fixed;
top: 0;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
height: 44px;
background: #fff;
z-index: 999;
.goback {
margin-left: 30rpx;
width: 48rpx;
height: 48rpx;
background: url(@/static/images/shop/goback.png);
background-size: 100% 100%;
}
.search {
width: 523rpx;
height: 69rpx;
border: 1rpx solid #FE7596;
display: flex;
justify-content: space-between;
align-items: center;
border-radius: 34rpx;
.icon {
margin-left: 10rpx;
width: 37rpx;
height: 31rpx;
background: url(@/static/images/shop/index_search.png);
background-size: 100% 100%;
}
.button {
margin-right: 3rpx;
width: 113rpx;
height: 59rpx;
background: #FFFFFF;
box-shadow: 0rpx 0rpx 7rpx 0rpx rgba(108,6,31,0.1);
border-radius: 30rpx;
line-height: 59rpx;
text-align: center;
font-size: 30rpx;
font-family: PingFang SC;
font-weight: 400;
color: #EC2A63;
}
}
}
.tabs {
width: 100%;
height: 100rpx;
background: #fff;
@ -432,113 +488,105 @@
}
.list {
position: absolute;
top: 120rpx;
width: 100%;
height: 100vh;
.item {
overflow: scroll;
.items {
margin-top: 21rpx;
margin-left: 40rpx;
width: 669rpx;
height: 238rpx;
background: #fff;
border-radius: 20rpx;
.box {
width: 100%;
height: 22rpx;
}
.item {
width: 669rpx;
height: 238rpx;
.top {
margin-left: 26rpx;
display: flex;
justify-content: space-between;
.top {
margin-left: 26rpx;
display: flex;
justify-content: space-between;
.shopName {
font-size: 28rpx;
font-family: PingFang SC;
font-weight: 400;
color: #000000;
}
.state {
margin-right: 31rpx;
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: #EF1E5F;
}
}
.content {
margin-top: 32rpx;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
height: 110rpx;
.image {
margin-left: 35rpx;
}
.text {
width: 420rpx;
height: 100%;
margin-right: 60rpx;
.name {
font-size: 26rpx;
.shopName {
width: 120px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
font-size: 28rpx;
font-family: PingFang SC;
font-weight: 400;
color: #000000;
}
.model {
margin: 10rpx 0;
font-size: 24rpx;
font-family: PingFang SC;
font-weight: 400;
color: #B7B7B7;
}
.price {
.state {
margin-right: 31rpx;
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: #E94343;
color: #EF1E5F;
}
}
.box {
width: 100%;
height: 22rpx;
}
.content {
margin-top: 32rpx;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
height: 110rpx;
.image {
margin-left: 35rpx;
}
.text {
width: 420rpx;
height: 100%;
margin-right: 60rpx;
.name {
width: 440rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: #000000;
}
.model {
margin: 10rpx 0;
font-size: 24rpx;
font-family: PingFang SC;
font-weight: 400;
color: #B7B7B7;
}
.price {
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: #E94343;
}
}
}
}
}
}
.search {
width: 523rpx;
height: 69rpx;
border: 1rpx solid #FE7596;
display: flex;
justify-content: space-between;
align-items: center;
border-radius: 27rpx;
.icon {}
.button {
margin-right: 3rpx;
width: 82rpx;
height: 46rpx;
line-height: 45rpx;
text-align: center;
background: linear-gradient(0deg, #F02563 0%, #FE7596 100%);
border-radius: 22.5rpx;
font-size: 26rpx;
font-family: PingFang SC;
font-weight: 400;
color: #FFFFFF;
}
}
}
</style>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB