You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1 line
13 KiB

{"remainingRequest":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/index.js??vue-loader-options!/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/src/views/order/Order.vue?vue&type=style&index=0&id=de889afa&scoped=true&lang=css&","dependencies":[{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/src/views/order/Order.vue","mtime":1618463580908},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/css-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/loaders/stylePostLoader.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/postcss-loader/src/index.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/linhuakun/Downloads/coderlhk/big bar/bigbar-start/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgouc2hvcC1saXN0ewogIHBvc2l0aW9uOiByZWxhdGl2ZTsKICB6LWluZGV4OiA5OTk5OTsKCn0KLm9yZGVyX2JveCB7CiAgbWFyZ2luLXRvcDogMTBweDsKfQoKLm9yZGVyIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1Owp9Ci5sYXN0LWlucHV0ewogIG1hcmdpbi10b3A6MjBweCA7Cn0KCml7CiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTVweCAtMXB4OwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjNWE1YTsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNmYzVhNWE7CiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogMTNweDsKICAgIGhlaWdodDogMTNweDsKICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7CiAgICBib3JkZXItcmFkaXVzOiA1MCU7CiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6NTAlOwogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTsKICAgIGxlZnQ6ODVweDsKfQoKLndyYXB7CiAgICAgd2lkdGg6IDgwJTsKICAgICBtYXJnaW46IDAgYXV0bzsKfQoKLm1ldGhvZHsKICAgIG1hcmdpbi10b3A6MjBweDsKICAgIGhlaWdodDogODBweDsKICAgIHdpZHRoOiAxMDAlOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKfQoKLm1ldGhvZCAuaGVhZGVyewogICAgZGlzcGxheTogZmxleDsKICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKICAgIGZvbnQtc2l6ZTogMTRweDsKICAgIGNvbG9yOiAjNjY2OwogICAgbGluZS1oZWlnaHQ6IDI4cHg7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7Cn0KCi5tZXRob2QgLmZvb3RlcnsKICAgIG1hcmdpbi10b3A6IDEwcHg7CiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47CiAgICBkaXNwbGF5OiBmbGV4OwogICAgZm9udC1zaXplOiAxNHB4OwogICAgY29sb3I6ICM2NjY7CiAgICBsaW5lLWhlaWdodDogMjhweDsKfQoKCgouYmFjayB7CiAgcG9zaXRpb246IHJlbGF0aXZlOwogIHdpZHRoOiAzMHB4OwogIGhlaWdodDogMzBweDsKICBsZWZ0OjEwcHg7CiAgdG9wOiA1MCU7CiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7Cn0KCi5ib3R0b217CiAgaGVpZ2h0OiA0NHB4OwogIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50OwogIHotaW5kZXg6IDk5ICFpbXBvcnRhbnQ7CiAgYm90dG9tOjA7CiAgd2lkdGg6IDEwMCU7Cn0KCi5kaXN0cGlja2VyLWFkZHJlc3Mtd3JhcHBlcnsKICBkaXNwbGF5OiBmbGV4OwogIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsKfQoKLm5hdi1iYXJ7CiAgZm9udC13ZWlnaHQ6IDcwMDsKICAgYmFja2dyb3VuZC1jb2xvcjojZGYzODMyOwogIGNvbG9yOiAjZmZmOwp9CgouY29udGVudHsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIHRvcDo0NHB4OwogIGJvdHRvbTogNDRweDsKICB6LWluZGV4OiA5OTk5OSAhaW1wb3J0YW50OwogIG92ZXJmbG93OiBoaWRkZW47CiAgcG9zaXRpb246IGFic29sdXRlOwp9Cgo="},{"version":3,"sources":["Order.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"Order.vue","sourceRoot":"src/views/order","sourcesContent":["<template>\n <div class=\"order\">\n <NavBar class=\"nav-bar\">\n <div slot=\"left\" class=\"back\" @click=\"backClick\">\n <img src=\"@/assets/img/home/back.svg\" alt=\"\" />\n </div>\n <div slot=\"center\" >填写订单</div>\n </NavBar>\n <scroll class=\"content\" ref=\"scroll\"\n :probe-type=\"3\"\n :pull-up-load=\"true\"\n @pullingUp=\"loadMore\"\n @pullingDown=\"pullingDown\"\n >\n <div class=\"order_box\">\n <!-- 登陆区域 -->\n <el-form\n ref=\"orderFormRef\"\n label-width=\"0px\"\n :model=\"orderForm\"\n :rules=\"orderFormRules\"\n >\n <el-form-item prop=\"name\">\n <el-input\n placeholder=\"请输入用户名\"\n v-model=\"orderForm.name\"\n prefix-icon=\"el-icon-user-solid\"\n ></el-input>\n </el-form-item>\n\n <el-form-item prop=\"telephone\">\n <el-input\n placeholder=\"请输入电话号码\"\n v-model=\"orderForm.telephone\"\n prefix-icon=\"el-icon-phone\"\n ></el-input>\n </el-form-item>\n\n <VDistpicker :city=\"orderForm.city\" :area=\"orderForm.area\" :province=\"orderForm.province\" @area=\"onChangeArea\" @province=\"onChangeProvince\" @city=\"onChangeCity\"></VDistpicker>\n\n <el-form-item prop=\"address\">\n <el-input\n class=\"last-input\"\n placeholder=\"请输入详细地址\"\n v-model=\"orderForm.address\"\n prefix-icon=\"el-icon-s-goods\"\n ></el-input>\n </el-form-item>\n </el-form>\n </div>\n <OredertList class=\"shop-list\"></OredertList>\n <div class=\"method\">\n <div class=\"wrap\">\n <div class=\"header\">\n <div>支付方式</div>\n <div><i></i> 在线支付</div>\n <div><i></i> 货到付款</div>\n </div>\n <div class=\"footer\">\n <div>发票信息</div>\n <div>不需要发表</div>\n </div>\n </div>\n </div>\n </scroll>\n <div v-show=\"isShow\" class=\"bottom\">\n <OrderBottom @order=\"order\"></OrderBottom>\n </div>\n </div>\n</template>\n\n<script>\nimport OredertList from \"@/views/order/childComps/OrderList\";\nimport OrderBottom from \"@/views/order/childComps/OrderBottom\";\nimport Scroll from \"@/components/common/Scroll/Scroll\";\n\nimport NavBar from \"@/components/common/navbar/NavBar\";\nimport VDistpicker from 'v-distpicker'\n\nimport { mapGetters } from \"vuex\";\n\n\nexport default {\n name: \"Order\",\n components: {\n OrderBottom,\n NavBar,\n OredertList,\n Scroll,\n VDistpicker\n },\n data() {\n var checkphone = (rule, value, callback) => {\n // let phoneReg = /(^1[3|4|5|6|7|8|9]\\d{9}$)|(^09\\d{8}$)/;\n if (value === \"\") {\n callback(new Error(\"请输入手机号\"));\n } else if (!this.isCellPhone(value)) {\n // 引入methods中封装的检查手机格式的方法\n callback(new Error(\"请输入正确的手机号!\"));\n } else {\n callback();\n }\n };\n return {\n clientHeight: document.documentElement.clientHeight,\n isShow:true,\n listdata:[],\n orderForm: {\n user_id:\"\",\n name: \"\",\n telephone: \"\",\n province:\"\",\n city:\"\",\n area:\"\",\n address: \"\",\n picture:\"\",\n title:\"\",\n detail:\"\",\n price:\"\",\n },\n orderFormRules: {\n //验证用户名是否合法\n name: [\n { required: true, message: \"请输入用户名\", trigger: \"blur\" },\n { min: 2, max: 11, message: \"长度在 2 到 11 个字符\", trigger: \"blur\" }\n ],\n telephone: [\n { required: true, message: \"请输入手机号\", trigger: \"blur\" },\n { validator: checkphone, trigger: \"blur\" }\n ],\n //验证密码是否合法\n address: [\n { required: true, message: \"请输入地址\", trigger: \"blur\" },\n {\n min: 3,\n max: 6,\n message: \"长度在 3 到 6 个字符\",\n trigger: \"blur\"\n }\n ]\n }\n };\n },\n computed: {\n // ...mapGetters(['cartLength','cartList'])\n ...mapGetters({\n length: \"cartLength\",\n list: \"cartList\",\n })\n },\n methods: {\n backClick() {\n this.$router.push(\"/cart\");\n },\n isCellPhone(val) {\n if (!/^1(3|4|5|6|7|8|9)\\d{9}$/.test(val)) {\n return false;\n } else {\n return true;\n }\n },\n loadMore(){\n // this.getHomeGoods(this.currentType)\n this.$refs.scroll.refresh()\n },\n pullingDown() {\n this.pullingdown = true;\n setTimeout(() => {\n this.pullingdown = false;\n this.$refs.scroll.finishPullDown();\n }, 0)\n },\n order() {\n this.$refs.orderFormRef.validate( async valid => {\n if (!valid) return;\n this.listdata=this.$store.state.cartList\n try{\n for(var item in this.listdata){\n this.orderForm.picture=this.listdata[item].image\n this.orderForm.title=this.listdata[item].title\n this.orderForm.detail=this.listdata[item].desc\n this.orderForm.price=this.listdata[item].price\n this.orderForm.count=this.listdata[item].count\n await this.$http.post('/order/bookorder',this.orderForm);\n }\n this.$message.success(\"下单成功\")\n this.$store.commit('REMOVE_TO_ALL')\n this.$bus.$emit('clearcartlist')\n this.$router.push('/cart')\n }catch(err){\n this.$message.error('下单失败')\n }\n });\n },\n onChangeProvince(data) {\n this.orderForm.province = data.value\n },\n onChangeCity(data) {\n this.orderForm.city = data.value\n },\n onChangeArea(data){\n this.orderForm.area=data.value\n }\n },\n mounted(){\n this.orderForm.user_id = window.localStorage.getItem(\"userId\");\n const olabel=document.getElementsByTagName('select');\n olabel[0].style.fontSize='8px';\n olabel[1].style.fontSize='8px';\n olabel[2].style.fontSize='8px';\n var n = navigator.userAgent;\n if (n.indexOf(\"iPhone\") <= -1) {\n window.onresize = () => {\n const ocontent = document.getElementsByClassName('content')[0];\n if (location.pathname == \"/order\") {\n if (this.clientHeight > document.documentElement.clientHeight) {\n // 隐藏按钮\n this.isShow=false;\n ocontent.style.bottom=0;\n } else {\n // 显示按钮\n this.isShow=true;\n ocontent.style.bottom='44px';\n }\n }\n };\n }\n }\n};\n\n</script>\n\n<style scoped>\n.shop-list{\n position: relative;\n z-index: 99999;\n\n}\n.order_box {\n margin-top: 10px;\n}\n\n.order {\n background-color: #f5f5f5;\n}\n.last-input{\n margin-top:20px ;\n}\n\ni{\n background-position: -15px -1px;\n background-color: #fc5a5a;\n border: 1px solid #fc5a5a;\n display: inline-block;\n width: 13px;\n height: 13px;\n border: 1px solid #aaa;\n border-radius: 50%;\n position: absolute;\n top:50%;\n transform: translate(0,-50%);\n left:85px;\n}\n\n.wrap{\n width: 80%;\n margin: 0 auto;\n}\n\n.method{\n margin-top:20px;\n height: 80px;\n width: 100%;\n background-color: #fff;\n}\n\n.method .header{\n display: flex;\n justify-content: space-between;\n font-size: 14px;\n color: #666;\n line-height: 28px;\n position: relative;\n}\n\n.method .footer{\n margin-top: 10px;\n justify-content: space-between;\n display: flex;\n font-size: 14px;\n color: #666;\n line-height: 28px;\n}\n\n\n\n.back {\n position: relative;\n width: 30px;\n height: 30px;\n left:10px;\n top: 50%;\n transform: translate(0, -50%);\n}\n\n.bottom{\n height: 44px;\n position: fixed !important;\n z-index: 99 !important;\n bottom:0;\n width: 100%;\n}\n\n.distpicker-address-wrapper{\n display: flex;\n justify-content: space-between;\n}\n\n.nav-bar{\n font-weight: 700;\n background-color:#df3832;\n color: #fff;\n}\n\n.content{\n left: 0;\n right: 0;\n top:44px;\n bottom: 44px;\n z-index: 99999 !important;\n overflow: hidden;\n position: absolute;\n}\n\n</style>\n"]}]}