diff --git a/package-lock.json b/package-lock.json index 21bd398..e78ddb9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "kxmh-seat-h5", "version": "0.1.0", "dependencies": { + "amfe-flexible": "^2.2.1", "axios": "^0.27.2", "core-js": "^3.8.3", "qs": "^6.11.0", @@ -3008,6 +3009,11 @@ "ajv": "^6.9.1" } }, + "node_modules/amfe-flexible": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/amfe-flexible/-/amfe-flexible-2.2.1.tgz", + "integrity": "sha512-L2VfvDzoETBjhRptg5u/IUuzHSuxm22JpSRb404p/TBGeRfwWmmNEbB+TFPIP/sS/+pbM18bCFH9QnMojLuPNw==" + }, "node_modules/ansi-escapes": { "version": "3.2.0", "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz", @@ -11931,6 +11937,11 @@ "dev": true, "requires": {} }, + "amfe-flexible": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/amfe-flexible/-/amfe-flexible-2.2.1.tgz", + "integrity": "sha512-L2VfvDzoETBjhRptg5u/IUuzHSuxm22JpSRb404p/TBGeRfwWmmNEbB+TFPIP/sS/+pbM18bCFH9QnMojLuPNw==" + }, "ansi-escapes": { "version": "3.2.0", "resolved": "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz", diff --git a/package.json b/package.json index 0c9fb63..1a68e8b 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "build": "vue-cli-service build" }, "dependencies": { + "amfe-flexible": "^2.2.1", "axios": "^0.27.2", "core-js": "^3.8.3", "qs": "^6.11.0", diff --git a/src/App.vue b/src/App.vue index 066b8c0..79139fd 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,27 +1,22 @@ diff --git a/src/components/cinemaSeat.vue b/src/components/cinemaSeat.vue new file mode 100644 index 0000000..9250216 --- /dev/null +++ b/src/components/cinemaSeat.vue @@ -0,0 +1,450 @@ + + + + + diff --git a/src/components/seatChoose.vue b/src/components/seatChoose.vue index 1eead33..ddb2c31 100644 --- a/src/components/seatChoose.vue +++ b/src/components/seatChoose.vue @@ -1,5 +1,5 @@ @@ -44,8 +45,8 @@ export default { scaleNumTwice: 1, //手动挪动偏移距离 move: { - x: 0, - y: 0 + x: 16, + y: 80 }, scaleShift: { x: 0, @@ -53,9 +54,11 @@ export default { }, tapTimeGap: true, timer: 0, - maxCanvasW: 400, + maxCanvasW: 800, maxCanvasH: 800, multiplier: 60, + currentSeat: {}, + selectedPos: {} } }, mounted() { @@ -89,15 +92,15 @@ export default { next_show: 82460, prev_show: 82458, seat_list: [ - {ticket_id: 20745128, drama_id: 82459, x: 15, y: 1, row: 1, col: 1, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排1号",ticket_status: 2}, - {ticket_id: 20745129, drama_id: 82459, x: 14, y: 1, row: 1, col: 3, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排3号",ticket_status: 2}, - {ticket_id: 20745130, drama_id: 82459, x: 13, y: 1, row: 1, col: 5, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排5号",ticket_status: 2}, - {ticket_id: 20745131, drama_id: 82459, x: 12, y: 1, row: 1, col: 7, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排7号",ticket_status: 2}, - {ticket_id: 20745132, drama_id: 82459, x: 11, y: 1, row: 1, col: 9, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排9号",ticket_status: 2}, - {ticket_id: 20745133, drama_id: 82459, x: 10, y: 1, row: 1, col: 11, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排11号",ticket_status: 2}, - {ticket_id: 20745134, drama_id: 82459, x: 9, y: 1, row: 1, col: 13, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排13号",ticket_status: 2}, - {ticket_id: 20745135, drama_id: 82459, x: 8, y: 1, row: 1, col: 15, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排15号",ticket_status: 2}, - {ticket_id: 20745142, drama_id: 82459, x: 15, y: 2, row: 2, col: 1, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层2排1号",ticket_status: 2} + {ticket_id: 20745128, drama_id: 82459, x: 15, y: 1, row: 1, col: 1, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排1号",ticket_status: 1}, + {ticket_id: 20745129, drama_id: 82459, x: 14, y: 1, row: 1, col: 3, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排3号",ticket_status: 0}, + {ticket_id: 20745130, drama_id: 82459, x: 13, y: 1, row: 1, col: 5, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排5号",ticket_status: 0}, + {ticket_id: 20745131, drama_id: 82459, x: 12, y: 1, row: 1, col: 7, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排7号",ticket_status: 0}, + {ticket_id: 20745132, drama_id: 82459, x: 11, y: 1, row: 1, col: 9, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排9号",ticket_status: 0}, + {ticket_id: 20745133, drama_id: 82459, x: 10, y: 1, row: 1, col: 11, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排11号",ticket_status: 1}, + {ticket_id: 20745134, drama_id: 82459, x: 9, y: 1, row: 1, col: 13, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排13号",ticket_status: 0}, + {ticket_id: 20745135, drama_id: 82459, x: 8, y: 1, row: 1, col: 15, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层1排15号",ticket_status: 1}, + {ticket_id: 20745142, drama_id: 82459, x: 15, y: 2, row: 2, col: 1, floor: 0, f_remark: "观众席一层",authority: 15,grade: 'A',isPKG: 0,isVIP: 0,price: "480.00",s_remark:'',seat_info: "观众席一层2排1号",ticket_status: 0} ], show_info: { cycle_id: 4957, @@ -201,9 +204,11 @@ export default { y: e.pageY }; let cur_seat = { - x: Math.floor((select_position.x - this.move.x) / 60 / this.scaleNum), - y: Math.floor((select_position.y - this.canvasTopGap - this.move.y) / 60 / this.scaleNum) + x: Math.floor((select_position.x - this.move.x) / (78 * this.scaleNum)), + y: Math.floor((select_position.y - this.move.y) / (78 * this.scaleNum)) }; + this.selectedPos = select_position; + this.currentSeat = cur_seat; if (this.selected_seats.find((v, k) => { if (cur_seat.x == v.x && cur_seat.y == v.y && v.ticket_status === 0) { // #ifdef MP-BAIDU @@ -221,9 +226,28 @@ export default { return true } })) { - // this.price_cac(that.selected_seats) + this.price_cac(this.selected_seats) return - } + }; + this.seat_data.seat_list.find(v => { + if (cur_seat.x == v.x && cur_seat.y == v.y && v.ticket_status === 0) { + // 判断是否超过最大可选 + if (this.selected_seats.length >= this.max_select) { + uni.showToast({ + title: '单次最多选座6个', + icon: 'fail', + duration: 500 + }) + return + } + this.selected_seats.push(v); + this.ctx.clearRect(v.x * 60, v.y * 60, 60, 50) + this.drawSeat(this.ctx, v.x * 60, v.y * 60, seatImg['01'].color) + this.ctx.restore() + return true + } + }) + this.price_cac(this.selected_seats) }, select_gradeFun(num, grade) { if (num !== 0) { @@ -236,6 +260,39 @@ export default { } } }, + // + price_cac(selected_seats) { + const p = []; + const grade_price = []; + grade_price.push(this.seat_data.grade_price); + for (var x in grade_price[0]) { + let a = 0; + let arr = []; + for (let i of selected_seats) { + if (i.grade == x) { + a++; + arr.push({ + row: i.row, + col: i.col, + floor: i.floor + }); + } + } + if (grade_price[0][x][a]) { + p.push({ + tkt_grade: x, + tkt_num: a, + tkt_pirce: grade_price[0][x][a], + tkt_loc: arr + }); + } + } + let ii = 0; + for (let i in p) { + ii += parseInt(p[i].tkt_pirce); + }; + this.total_price = ii + }, } } diff --git a/src/request/index.js b/src/request/index.js index 42b3336..5b0bcfd 100644 --- a/src/request/index.js +++ b/src/request/index.js @@ -2,13 +2,13 @@ import axios from "axios" //创建axios的实例 const httpService = axios.create({ - baseURL: 'https://mm.kaixinguopiao.com',// TODO:具体的配置可以根据项目情况而来 + baseURL: 'https://mini.kaixinguopiao.cn',// TODO:具体的配置可以根据项目情况而来 timeout: 5000 }) httpService.interceptors.request.use(config => { - config.headers['Content-Type'] = "application/json"; - config.headers['Access-Control-Allow-Origin'] = '*'; + // config.headers['Content-Type'] = "application/json"; + // config.headers['Access-Control-Allow-Origin'] = '*'; // config.headers['admin-token'] = store.getters.getToken; // config.headers['device-type'] = "web"; return config @@ -18,22 +18,9 @@ httpService.interceptors.request.use(config => { httpService.interceptors.response.use(response => { - let msg = ''; - let data = null; let res = response.data; - if(res.code){ - data = res.data; - msg = res.msg || ""; - // return {data, msg}; - return res; - } else { - msg = res.msg || ""; - // return Promise.reject(new Error(msg)) - return res; - } + return res; }, err => { - // console.log(err) - // TODO:具体的code对应的处理可继续添加修改 return Promise.reject(err); }) diff --git a/src/static/images/ui/IP.png b/src/static/images/ui/IP.png new file mode 100644 index 0000000..caf0beb Binary files /dev/null and b/src/static/images/ui/IP.png differ diff --git a/src/static/images/ui/IPS.png b/src/static/images/ui/IPS.png new file mode 100644 index 0000000..3b41248 Binary files /dev/null and b/src/static/images/ui/IPS.png differ diff --git a/src/static/images/ui/KXMH_icon.png b/src/static/images/ui/KXMH_icon.png new file mode 100644 index 0000000..3946e5d Binary files /dev/null and b/src/static/images/ui/KXMH_icon.png differ diff --git a/src/static/images/ui/a.png b/src/static/images/ui/a.png new file mode 100644 index 0000000..492ce11 Binary files /dev/null and b/src/static/images/ui/a.png differ diff --git a/src/static/images/ui/add.png b/src/static/images/ui/add.png new file mode 100644 index 0000000..a911925 Binary files /dev/null and b/src/static/images/ui/add.png differ diff --git a/src/static/images/ui/arrow_left.png b/src/static/images/ui/arrow_left.png new file mode 100644 index 0000000..908ab00 Binary files /dev/null and b/src/static/images/ui/arrow_left.png differ diff --git a/src/static/images/ui/arrow_right.png b/src/static/images/ui/arrow_right.png new file mode 100644 index 0000000..2d64631 Binary files /dev/null and b/src/static/images/ui/arrow_right.png differ diff --git a/src/static/images/ui/calendar.png b/src/static/images/ui/calendar.png new file mode 100644 index 0000000..81e4b4d Binary files /dev/null and b/src/static/images/ui/calendar.png differ diff --git a/src/static/images/ui/call.png b/src/static/images/ui/call.png new file mode 100644 index 0000000..6f32e8f Binary files /dev/null and b/src/static/images/ui/call.png differ diff --git a/src/static/images/ui/cir.png b/src/static/images/ui/cir.png new file mode 100644 index 0000000..3e803bd Binary files /dev/null and b/src/static/images/ui/cir.png differ diff --git a/src/static/images/ui/clock.png b/src/static/images/ui/clock.png new file mode 100644 index 0000000..66701a4 Binary files /dev/null and b/src/static/images/ui/clock.png differ diff --git a/src/static/images/ui/close.png b/src/static/images/ui/close.png new file mode 100644 index 0000000..390420e Binary files /dev/null and b/src/static/images/ui/close.png differ diff --git a/src/static/images/ui/closeRed.png b/src/static/images/ui/closeRed.png new file mode 100644 index 0000000..4889e5e Binary files /dev/null and b/src/static/images/ui/closeRed.png differ diff --git a/src/static/images/ui/coupon.png b/src/static/images/ui/coupon.png new file mode 100644 index 0000000..4898cac Binary files /dev/null and b/src/static/images/ui/coupon.png differ diff --git a/src/static/images/ui/coupon1.png b/src/static/images/ui/coupon1.png new file mode 100644 index 0000000..0b6c62c Binary files /dev/null and b/src/static/images/ui/coupon1.png differ diff --git a/src/static/images/ui/coupon2.png b/src/static/images/ui/coupon2.png new file mode 100644 index 0000000..14f901c Binary files /dev/null and b/src/static/images/ui/coupon2.png differ diff --git a/src/static/images/ui/couponU.png b/src/static/images/ui/couponU.png new file mode 100644 index 0000000..d0cbcc4 Binary files /dev/null and b/src/static/images/ui/couponU.png differ diff --git a/src/static/images/ui/coupon_passed.png b/src/static/images/ui/coupon_passed.png new file mode 100644 index 0000000..8e5f165 Binary files /dev/null and b/src/static/images/ui/coupon_passed.png differ diff --git a/src/static/images/ui/coupon_used.png b/src/static/images/ui/coupon_used.png new file mode 100644 index 0000000..683aaaa Binary files /dev/null and b/src/static/images/ui/coupon_used.png differ diff --git a/src/static/images/ui/delete.png b/src/static/images/ui/delete.png new file mode 100644 index 0000000..a2d388b Binary files /dev/null and b/src/static/images/ui/delete.png differ diff --git a/src/static/images/ui/delete1.png b/src/static/images/ui/delete1.png new file mode 100644 index 0000000..976c6b9 Binary files /dev/null and b/src/static/images/ui/delete1.png differ diff --git a/src/static/images/ui/dram_activeleft.png b/src/static/images/ui/dram_activeleft.png new file mode 100644 index 0000000..5c22a7a Binary files /dev/null and b/src/static/images/ui/dram_activeleft.png differ diff --git a/src/static/images/ui/dram_activeright.png b/src/static/images/ui/dram_activeright.png new file mode 100644 index 0000000..c056e2a Binary files /dev/null and b/src/static/images/ui/dram_activeright.png differ diff --git a/src/static/images/ui/dram_left.png b/src/static/images/ui/dram_left.png new file mode 100644 index 0000000..ff0cac8 Binary files /dev/null and b/src/static/images/ui/dram_left.png differ diff --git a/src/static/images/ui/dram_right.png b/src/static/images/ui/dram_right.png new file mode 100644 index 0000000..86d75d3 Binary files /dev/null and b/src/static/images/ui/dram_right.png differ diff --git a/src/static/images/ui/ellipsis.png b/src/static/images/ui/ellipsis.png new file mode 100644 index 0000000..20603c9 Binary files /dev/null and b/src/static/images/ui/ellipsis.png differ diff --git a/src/static/images/ui/finished.png b/src/static/images/ui/finished.png new file mode 100644 index 0000000..a293140 Binary files /dev/null and b/src/static/images/ui/finished.png differ diff --git a/src/static/images/ui/index.png b/src/static/images/ui/index.png new file mode 100644 index 0000000..7f56f34 Binary files /dev/null and b/src/static/images/ui/index.png differ diff --git a/src/static/images/ui/indexS.png b/src/static/images/ui/indexS.png new file mode 100644 index 0000000..215c2ed Binary files /dev/null and b/src/static/images/ui/indexS.png differ diff --git a/src/static/images/ui/invoice.png b/src/static/images/ui/invoice.png new file mode 100644 index 0000000..21d662b Binary files /dev/null and b/src/static/images/ui/invoice.png differ diff --git a/src/static/images/ui/kxmh.png b/src/static/images/ui/kxmh.png new file mode 100644 index 0000000..f218ffb Binary files /dev/null and b/src/static/images/ui/kxmh.png differ diff --git a/src/static/images/ui/like.png b/src/static/images/ui/like.png new file mode 100644 index 0000000..8072efe Binary files /dev/null and b/src/static/images/ui/like.png differ diff --git a/src/static/images/ui/liked.png b/src/static/images/ui/liked.png new file mode 100644 index 0000000..09a5652 Binary files /dev/null and b/src/static/images/ui/liked.png differ diff --git a/src/static/images/ui/location.png b/src/static/images/ui/location.png new file mode 100644 index 0000000..68e129f Binary files /dev/null and b/src/static/images/ui/location.png differ diff --git a/src/static/images/ui/location1.png b/src/static/images/ui/location1.png new file mode 100644 index 0000000..6340ff6 Binary files /dev/null and b/src/static/images/ui/location1.png differ diff --git a/src/static/images/ui/location2.png b/src/static/images/ui/location2.png new file mode 100644 index 0000000..cd6302f Binary files /dev/null and b/src/static/images/ui/location2.png differ diff --git a/src/static/images/ui/low_price.png b/src/static/images/ui/low_price.png new file mode 100644 index 0000000..b8d8e69 Binary files /dev/null and b/src/static/images/ui/low_price.png differ diff --git a/src/static/images/ui/me.png b/src/static/images/ui/me.png new file mode 100644 index 0000000..1b42d78 Binary files /dev/null and b/src/static/images/ui/me.png differ diff --git a/src/static/images/ui/meS.png b/src/static/images/ui/meS.png new file mode 100644 index 0000000..b58703d Binary files /dev/null and b/src/static/images/ui/meS.png differ diff --git a/src/static/images/ui/none.png b/src/static/images/ui/none.png new file mode 100644 index 0000000..5f0c16a Binary files /dev/null and b/src/static/images/ui/none.png differ diff --git a/src/static/images/ui/order.png b/src/static/images/ui/order.png new file mode 100644 index 0000000..e96a7c1 Binary files /dev/null and b/src/static/images/ui/order.png differ diff --git a/src/static/images/ui/passed.png b/src/static/images/ui/passed.png new file mode 100644 index 0000000..2ef6147 Binary files /dev/null and b/src/static/images/ui/passed.png differ diff --git a/src/static/images/ui/passed1.png b/src/static/images/ui/passed1.png new file mode 100644 index 0000000..b11f603 Binary files /dev/null and b/src/static/images/ui/passed1.png differ diff --git a/src/static/images/ui/passedGreen.png b/src/static/images/ui/passedGreen.png new file mode 100644 index 0000000..85d5a65 Binary files /dev/null and b/src/static/images/ui/passedGreen.png differ diff --git a/src/static/images/ui/right.png b/src/static/images/ui/right.png new file mode 100644 index 0000000..9340022 Binary files /dev/null and b/src/static/images/ui/right.png differ diff --git a/src/static/images/ui/right1.png b/src/static/images/ui/right1.png new file mode 100644 index 0000000..851f43c Binary files /dev/null and b/src/static/images/ui/right1.png differ diff --git a/src/static/images/ui/search.png b/src/static/images/ui/search.png new file mode 100644 index 0000000..2265ddd Binary files /dev/null and b/src/static/images/ui/search.png differ diff --git a/src/static/images/ui/sellout.png b/src/static/images/ui/sellout.png new file mode 100644 index 0000000..e8ff58a Binary files /dev/null and b/src/static/images/ui/sellout.png differ diff --git a/src/static/images/ui/service.png b/src/static/images/ui/service.png new file mode 100644 index 0000000..ae14415 Binary files /dev/null and b/src/static/images/ui/service.png differ diff --git a/src/static/images/ui/share.png b/src/static/images/ui/share.png new file mode 100644 index 0000000..82da8f8 Binary files /dev/null and b/src/static/images/ui/share.png differ diff --git a/src/static/images/ui/ticket.png b/src/static/images/ui/ticket.png new file mode 100644 index 0000000..e4fe798 Binary files /dev/null and b/src/static/images/ui/ticket.png differ diff --git a/src/static/images/ui/time.png b/src/static/images/ui/time.png new file mode 100644 index 0000000..63fdf41 Binary files /dev/null and b/src/static/images/ui/time.png differ diff --git a/src/static/images/ui/user.png b/src/static/images/ui/user.png new file mode 100644 index 0000000..7e08791 Binary files /dev/null and b/src/static/images/ui/user.png differ diff --git a/src/static/images/ui/viewer.png b/src/static/images/ui/viewer.png new file mode 100644 index 0000000..6b17bdf Binary files /dev/null and b/src/static/images/ui/viewer.png differ diff --git a/src/static/images/ui/wallet.png b/src/static/images/ui/wallet.png new file mode 100644 index 0000000..58ed973 Binary files /dev/null and b/src/static/images/ui/wallet.png differ diff --git a/src/static/images/ui/wanted.png b/src/static/images/ui/wanted.png new file mode 100644 index 0000000..cdf6290 Binary files /dev/null and b/src/static/images/ui/wanted.png differ