From 3cc53ec6e1f2d38d57c3b378e5eb3a52d9958935 Mon Sep 17 00:00:00 2001 From: YeMingfei666 <1619116647@qq.com> Date: Fri, 6 Sep 2024 15:57:27 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E5=A4=84=E7=90=86=E6=89=93=E5=8D=B0?= =?UTF-8?q?=E6=9C=BA=E5=88=97=E8=A1=A8=E9=A1=B5=E9=9D=A2=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E6=9C=AA=E5=AE=9A=E4=B9=89name?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/devices/devices_list.vue | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/views/devices/devices_list.vue b/src/views/devices/devices_list.vue index 81779fb..2f2b09b 100644 --- a/src/views/devices/devices_list.vue +++ b/src/views/devices/devices_list.vue @@ -99,13 +99,16 @@ export default { }, filters: { devicesName(value) { - return devices.find(item => item.value == value).name + const item=devices.find(item => item.value == value) + return item?item.name:'' }, modelsName(value) { - return models.find(item => item.value == value).name + const item=models.find(item => item.value == value) + return item?item.name:'' }, subTypesName(value) { - return subTypes.find(item => item.value == value).name + const item=subTypes.find(item => item.value == value) + return item?item.name:'' }, timeFilter(s) { return dayjs(s).format('YYYY-MM-DD HH:mm:ss') From e59919c6f117fe5f4444af71dc644303e40f8e25 Mon Sep 17 00:00:00 2001 From: YeMingfei666 <1619116647@qq.com> Date: Tue, 10 Sep 2024 17:42:55 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=8F=B0=E6=A1=8C=E5=92=8C=E9=80=89=E6=8B=A9=E4=BA=BA=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/table/components/keyboard.vue | 33 ++- .../choose-diners-number.vue | 258 ++++++++++++++++++ .../choose-table-master.vue | 53 +++- src/views/table/components/table-diancan.vue | 116 ++++---- src/views/table/status.js | 34 +++ src/views/table/table_list.vue | 38 +-- 6 files changed, 430 insertions(+), 102 deletions(-) create mode 100644 src/views/table/components/table-diancan-components/choose-diners-number.vue create mode 100644 src/views/table/status.js diff --git a/src/views/table/components/keyboard.vue b/src/views/table/components/keyboard.vue index 03ddbd7..291fb96 100644 --- a/src/views/table/components/keyboard.vue +++ b/src/views/table/components/keyboard.vue @@ -1,7 +1,11 @@ + + \ No newline at end of file diff --git a/src/views/table/components/table-diancan-components/return-cart.vue b/src/views/table/components/table-diancan-components/return-cart.vue index d160c95..61678f2 100644 --- a/src/views/table/components/table-diancan-components/return-cart.vue +++ b/src/views/table/components/table-diancan-components/return-cart.vue @@ -1,18 +1,18 @@ -
+
-
+
@@ -341,6 +342,9 @@
+
+ +
@@ -401,14 +405,14 @@
存单
取单 @@ -438,12 +442,19 @@
整单备注
+ 退菜 +
+
@@ -1275,10 +1286,8 @@ export default { return result.substring(0, result.length - 1); }, allPrice() { - const oldPrice = this.order.old.list - .filter((v) => v.isGift !== "true") - .reduce((a, b) => { - const bTotal = b.info.reduce((prve, cur) => { + const oldPrice = this.order.old.list.reduce((a, b) => { + const bTotal = b.info.filter((v) => v.isGift !== "true").reduce((prve, cur) => { return prve + cur.number * cur.salePrice; }, 0); return a + bTotal; @@ -1724,6 +1733,7 @@ export default { console.log(isNowPay); console.log(this.postPay && isNowPay); this.createOrder.status = "success"; + this.getCart() if (this.postPay && !isNowPay) { this.$notify({ title: "下单成功", @@ -2364,16 +2374,25 @@ export default { }, //获取购物车数据 async getCart() { + this.order.list=[] + this.order.old.list=[] const res = await getCart({ ...this.order.query, masterId: this.masterId, tableId: this.table.tableId, }); - if (this.key|| res.records.length) { - this.order.old.list = res.records; - } else { - this.order.list = res.records; + for(let i in res.records){ + if(res.records[i].placeNum==0){ + this.order.list = res.records[i].info; + }else{ + this.order.old.list.push(res.records[i]); + } } + // if (this.key|| res.records.length) { + // this.order.old.list = res.records; + // } else { + // this.order.list = res.records; + // } }, showSelGoods(item) { console.log(item); @@ -3316,19 +3335,20 @@ input[type="number"]::-webkit-outer-spin-button { border-bottom: 1px solid #ebebeb; margin-bottom: 10px; } + .order-list-all{ + } .order { border-radius: 6px; display: flex; - padding-left: 12px; .bottom { - left: 0; - right: 0; box-sizing: border-box; - padding: 14px; - bottom: 0; + padding:0 14px 14px 14px; background-color: #fff; z-index: 10; - border-top: 1px solid #ebebeb; + .border-top{ + padding-top: 14px; + border-top: 1px solid #ebebeb; + } } .list { @@ -3385,6 +3405,7 @@ input[type="number"]::-webkit-outer-spin-button { color: #fff; text-align: center; line-height: 17px; + z-index: 2; } &.active { background-color: rgba(0, 0, 0, 0.04); diff --git a/src/views/table/status.js b/src/views/table/status.js index beacd71..17b21e6 100644 --- a/src/views/table/status.js +++ b/src/views/table/status.js @@ -13,7 +13,7 @@ export default { }, idle: { label: "空闲", - type: "#67C23A", + type: "#3F9EFF", }, subscribe: { label: "预定", diff --git a/src/views/table/table_list.vue b/src/views/table/table_list.vue index 1ee95ad..ee50e58 100644 --- a/src/views/table/table_list.vue +++ b/src/views/table/table_list.vue @@ -41,6 +41,20 @@ 下载店铺码
+
+
+ + {{ item.label }} +
+ +
- {{ item.name }} +
+ {{ item.name }} + 丨{{areaMap[item.areaId]||''}} +
@@ -65,8 +82,9 @@
+
-
+ + + + + +
+ | + + ¥{{item.totalAmount||0}}「{{item.productNum}}件」 +
+
- +
- +
+ + {{item.durationTime|formatTime}} +
+
+
@@ -177,6 +199,7 @@ import { tbShopAreaDelete, tbShopTableDelete, } from "@/api/table"; +import dayjs from "dayjs"; export default { components: { addEara, @@ -192,12 +215,18 @@ export default { total: 0, tableList: [], status: $status, - selTable:''//当前选中的桌台 + selTable:'',//当前选中的桌台 + areaMap:{} }; }, mounted() { this.tbShopAreaGet(); }, + filters:{ + formatTime(time){ + return dayjs(time).format('HH小时mm分'); + } + }, methods: { tableComman(command, item) { if (command == "edit") { @@ -226,10 +255,11 @@ export default { //key isPayOrder结账 console.log(item) this.selTable=item - if(item.status=='idle'){ + const num=item.useNum||0 + if(item.useNum<=0){ return this.$refs.refChooseDinersNumber.open() } - this.$refs.diancan.open(item, key); + this.$refs.diancan.open(item, key,num); }, chooseDinersNumberConfirm(num){ //就餐人数 @@ -290,6 +320,10 @@ export default { shopId: localStorage.getItem("shopId"), }); this.tabs = content; + this.areaMap=content.reduce((prve,cur)=>{ + prve[cur.id]=cur.name + return prve + },{}) this.tbShopTableGet(); } catch (error) { console.log(error); @@ -305,6 +339,9 @@ export default { } \ No newline at end of file + From 3df43ddbaadf759c8dcad5c309afd24a98e4afd2 Mon Sep 17 00:00:00 2001 From: YeMingfei666 <1619116647@qq.com> Date: Thu, 12 Sep 2024 16:48:33 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E4=BB=A3=E5=AE=A2=E4=B8=8B=E5=8D=95?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=A4=90=E4=BD=8D=E8=B4=B9=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/table.js | 25 +++ .../table-diancan-components/cart-item.vue | 45 +++- src/views/table/components/table-diancan.vue | 204 +++++++++++------- 3 files changed, 192 insertions(+), 82 deletions(-) diff --git a/src/api/table.js b/src/api/table.js index 2d574c0..82d0d9c 100644 --- a/src/api/table.js +++ b/src/api/table.js @@ -375,3 +375,28 @@ export function $fastCreateTable(data) { } }); } + +//打印当前台桌订单 +export function $printOrder(data) { + return request({ + url: '/api/place/printOrder', + method: "post", + data:{ + shopId: localStorage.getItem("shopId"), + ...data + } + }); +} +//打印当前台桌菜品 + +export function $printDishes(data) { + return request({ + url: '/api/place/printDishes', + method: "post", + data:{ + shopId: localStorage.getItem("shopId"), + ...data + } + }); +} + diff --git a/src/views/table/components/table-diancan-components/cart-item.vue b/src/views/table/components/table-diancan-components/cart-item.vue index 8307bcb..5c79941 100644 --- a/src/views/table/components/table-diancan-components/cart-item.vue +++ b/src/views/table/components/table-diancan-components/cart-item.vue @@ -5,13 +5,18 @@ @click="itemClick" > + 退
+
- +
+ {{ item.name }} +
+
-
{{ item.name }}
+
{{ item.name }}
@@ -23,7 +28,8 @@
-
X{{ item.number }}
+
X{{ item.totalNumber }}
+
X{{ item.number }}
@@ -44,11 +50,12 @@
- +
-
¥0
-
- ¥{{ item.salePrice }} +
¥0
+
+ ¥{{ item.totalAmount }} + ¥{{ item.salePrice }}
@@ -58,6 +65,11 @@ + + \ No newline at end of file diff --git a/src/views/lineUp/index.vue b/src/views/lineUp/index.vue new file mode 100644 index 0000000..84379d8 --- /dev/null +++ b/src/views/lineUp/index.vue @@ -0,0 +1,447 @@ + + + + + \ No newline at end of file diff --git a/src/views/lineUp/record.vue b/src/views/lineUp/record.vue new file mode 100644 index 0000000..7a2a556 --- /dev/null +++ b/src/views/lineUp/record.vue @@ -0,0 +1,124 @@ + + + + + \ No newline at end of file