|
|
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-reservation-index"],{"0470":function(t,e,a){"use strict";var i=a("90bc"),n=a.n(i);n.a},"4eb6":function(t,e,a){"use strict";a.r(e);var i=a("4f9e"),n=a.n(i);for(var o in i)["default"].indexOf(o)<0&&function(t){a.d(e,t,(function(){return i[t]}))}(o);e["default"]=n.a},"4f9e":function(t,e,a){"use strict";a("6a54"),Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i={props:{title:{type:String,default:""}},data:function(){return{statusBarHeight:0}},mounted:function(){this.statusBarHeight=uni.getSystemInfoSync().statusBarHeight||0},methods:{onBack:function(){console.log("onBack"),uni.navigateBack()}}};e.default=i},"5fca":function(t,e,a){"use strict";a.r(e);var i=a("e07f"),n=a("7693");for(var o in n)["default"].indexOf(o)<0&&function(t){a.d(e,t,(function(){return n[t]}))}(o);a("fa4a");var s=a("828b"),r=Object(s["a"])(n["default"],i["b"],i["c"],!1,null,"77b845fe",null,!1,i["a"],void 0);e["default"]=r.exports},"67ca":function(t,e,a){"use strict";a.r(e);var i=a("93ae"),n=a("4eb6");for(var o in n)["default"].indexOf(o)<0&&function(t){a.d(e,t,(function(){return n[t]}))}(o);a("0470");var s=a("828b"),r=Object(s["a"])(n["default"],i["b"],i["c"],!1,null,"28453a18",null,!1,i["a"],void 0);e["default"]=r.exports},"6eec":function(t,e,a){var i=a("c978");i.__esModule&&(i=i.default),"string"===typeof i&&(i=[[t.i,i,""]]),i.locals&&(t.exports=i.locals);var n=a("967d").default;n("15ff9f28",i,!0,{sourceMap:!1,shadowMode:!1})},7693:function(t,e,a){"use strict";a.r(e);var i=a("e8d5"),n=a.n(i);for(var o in i)["default"].indexOf(o)<0&&function(t){a.d(e,t,(function(){return i[t]}))}(o);e["default"]=n.a},"90bc":function(t,e,a){var i=a("c487");i.__esModule&&(i=i.default),"string"===typeof i&&(i=[[t.i,i,""]]),i.locals&&(t.exports=i.locals);var n=a("967d").default;n("373142f1",i,!0,{sourceMap:!1,shadowMode:!1})},"93ae":function(t,e,a){"use strict";a.d(e,"b",(function(){return i})),a.d(e,"c",(function(){return n})),a.d(e,"a",(function(){}));var i=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("v-uni-view",{staticClass:"nav-bar",style:{paddingTop:t.statusBarHeight+"px"}},[a("v-uni-view",{staticClass:"nav-content"},[a("v-uni-image",{staticClass:"back-btn",attrs:{src:"/static/back.png",mode:"aspectFit"},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.onBack.apply(void 0,arguments)}}}),a("v-uni-text",{staticClass:"nav-title"},[t._v(t._s(t.title))]),a("v-uni-view",{staticClass:"right-slot"},[t._t("right")],2)],1),t._t("default")],2)},n=[]},c487:function(t,e,a){var i=a("c86c");e=i(!1),e.push([t.i,".nav-bar[data-v-28453a18]{background:transparent}.nav-content[data-v-28453a18]{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 16px}.back-btn[data-v-28453a18]{width:16px;height:16px;display:flex;align-items:center;justify-content:center}.nav-title[data-v-28453a18]{font-size:16px;font-weight:400;color:#222;flex:1;text-align:center}.right-slot[data-v-28453a18]{min-width:24px}",""]),t.exports=e},c978:function(t,e,a){var i=a("c86c");e=i(!1),e.push([t.i,'@charset "UTF-8";\n/* 颜色变量 */\n/* 行为相关颜色 */\n/* 文字基本颜色 */\n/* 背景颜色 */\n/* 边框颜色 */\n/* 尺寸变量 */\n/* 文字尺寸 */\n/* 图片尺寸 */\n/* Border Radius */\n/* 水平间距 */\n/* 垂直间距 */\n/* 透明度 */\n/* 文章场景相关 */\n/* uni.scss */.reservation-page[data-v-77b845fe]{background:linear-gradient(180deg,#cbe6ff,#f6faff);min-height:100vh;padding-bottom:%?140?%;padding-top:90px;font-family:SourceHanSansCN,PingFang SC,Microsoft YaHei,sans-serif}.wechat-browser[data-v-77b845fe]{padding-top:10px}.fixed-nav[data-v-77b845fe]{position:fixed;top:0;left:0;right:0;z-index:100;background:linear-gradient(180deg,#cbe6ff,#f6faff);box-shadow:0 2px 8px rgba(0,0,0,.04)}.header[data-v-77b845fe]{display:flex;align-items:center;justify-content:space-between;padding:20px 16px 10px 16px;background:linear-gradient(180deg,#cbe6ff,#f6faff);padding-top:7vh}.back-btn[data-v-77b845fe], .more-btn[data-v-77b845fe]{font-size:24px;color:#333}.title[data-v-77b845fe]{font-size:22px;font-weight:700;color:#222}.card[data-v-77b845fe]{background:#fff;border-radius:18px;margin:0 16px 16px 16px;box-shadow:0 2px 8px rgba(0,0,0,.04);padding:18px 18px 12px 18px;margin-top:20px}.card-title[data-v-77b845fe]{font-size:16px;font-weight:600;margin-bottom:12px;color:#222}.water-info-row[data-v-77b845fe]{display:flex;justify-content:center;align-items:flex-start;width:-webkit-fit-content;width:fit-content;margin:0 auto;gap:%?150?%}.water-info-col[data-v-77b845fe]{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.label[data-v-77b845fe]{color:#888;font-size:15px;margin-bottom:2px;text-align:left}.value.blue[data-v-77b845fe]{color:#217aff;font-size:14px;text-align:left}.info-list[data-v-77b845fe]{border-top:1px solid #f0f0f0}.info-row[data-v-77b845fe]{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.info-row[data-v-77b845fe]:last-child{border-bottom:none}.info-label[data-v-77b845fe]{color:#222;font-size:16px}.info-value[data-v-77b845fe]{color:#222;font-size:16px;display:flex;align-items:center}.arrow[data-v-77b845fe]{color:#bdbdbd;font-size:18px;margin-left:4px}.direction-row[data-v-77b845fe], .batch-row[data-v-77b845fe]{display:flex;margin-bottom:8px;justify-content:center}.direction-btn[data-v-77b845fe], .batch-btn[data-v-77b845fe]{border:none;border-radius:24px;padding:0;font-size:14px;background:#f2f6fa;color:#888;height:24px;width:110px;display:flex;align-items:center;justify-content:center;margin:0 %?20?%;border:none;outline:none}.direction-btn[data-v-77b845fe]::after, .batch-btn[data-v-77b845fe]::after{border:none}.direction-btn.active[data-v-77b845fe], .batch-btn.active[data-v-77b845fe]{background:#217aff;color:#fff}.notice-row[data-v-77b845fe]{margin:24px 16px 0 16px}.notice-title[data-v-77b845fe]{font-size:14px;font-weight:600;margin-bottom:8px;color:#222}.notice-check[data-v-77b845fe]{display:flex;align-items:center;margin-top:8px;font-size:13px;color:#888}.tabbar[data-v-77b845fe]{position:fixed;left:0;right:0;bottom:0;height:60px;background:#fff;display:flex;border-top:1px solid #eaeaea;z-index:10}.tab-item[data-v-77b845fe]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#888;font-size:14px}.tab-item.active[data-v-77b845fe]{color:#217aff}.icon[data-v-77b845fe]{font-size:22px;margin-bottom:2px}.reservation-bottom-bar[data-v-77b845fe]{position:fixed;left:0;right:0;bottom:0;background:#fcfcfc;box-shadow:0 %?-2?% %?16?% rgba(59,124,255,.08);padding:%?24?% %?24?% %?32?% %?24?%;z-index:999;display:flex;justify-content:center}.reservation-btn[data-v-77b845fe]{min-width:%?320?%;height:%?80?%;border-radius:%?40?%;background:#217aff;color:#fff;font-size:%?32?%;font-weight:500;border:none;outline:none;box-shadow:0 %?4?% %?16?% rgba(33,122,255,.08);transition:background .2s}.reservation-scroll[data-v-77b845fe]{padding-bottom:%?80?%}.date-btn.active[data-v-77b845fe]{background:#217aff;color:#fff}',""]),t.exports=e},e07f:function(t,e,a){"use strict";a.d(e,"b",(function(){return i})),a.d(e,"c",(function(){return n})),a.d(e,"a",(function(){}));var i=function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("v-uni-view",{staticClass:"reservation-page",class:{"wechat-browser":t.isWeixinBrowser}},[t.isWeixinBrowser?t._e():a("v-uni-view",{staticClass:"fixed-nav"},[a("NavBar",{attrs:{title:"过闸预约"}})],1),a("v-uni-view",{staticClass:"reservation-scroll"},[a("v-uni-view",{staticClass:"card"},[a("v-uni-view",{staticClass:"card-title"},[t._v("船舶信息")]),a("v-uni-view",{staticClass:"water-info-row"},[a("v-uni-view",{staticClass:"water-info-col"},[a("v-uni-text",{staticClass:"label"},[t._v("今日水位:")]),a("v-uni-text",{staticClass:"value blue"},[t._v("4.2m")])],1),a("v-uni-view",{staticClass:"water-info-col"},[a("v-uni-text",{staticClass:"label"},[t._v("水深:")]),a("v-uni-text",{staticClass:"value blue"},[t._v("3.8m")])],1),a("v-uni-view",{staticClass:"water-info-col"},[a("v-uni-text",{staticClass:"label"},[t._v("限高:")]),a("v-uni-text",{staticClass:"value blue"},[t._v("7.5m")])],1)],1)],1),a("v-uni-view",{staticClass:"card"},[a("v-uni-view",{staticClass:"card-title"},[t._v("船舶信息")]),a("v-uni-view",{staticClass:"info-list"},[a("v-uni-view",{staticClass:"info-row"},[a("v-uni-text",{staticClass:"info-label"},[t._v("编号")]),a("v-uni-view",{staticClass:"info-value"},[t._v(t._s(t.currentShip.ship_number)),a("v-uni-text",{staticClass:"arrow"},[t._v("›")])],1)],1),a("v-uni-view",{staticClass:"info-row"},[a("v-uni-text",{staticClass:"info-label"},[t._v("总长度")]),a("v-uni-view",{staticClass:"info-value"},[t._v(t._s(t.currentShip.total_length)+"米"),a("v-uni-text",{staticClass:"arrow"},[t._v("›")])],1)],1),a("v-uni-view",{staticClass:"info-row"},[a("v-uni-text",{staticClass:"info-label"},[t._v("型宽")]),a("v-uni-view",{staticClass:"info-value"},[t._v(t._s(t.currentShip.total_width)+"米"),a("v-uni-text",{staticClass:"arrow"},[t._v("›")])],1)],1),a("v-uni-view",{staticClass:"info-row"},[a("v-uni-text",{staticClass:"info-label"},[t._v("型深")]),a("v-uni-view",{staticClass:"info-value"},[t._v(t._s(t.currentShip.molded_depth)+"米"),a("v-uni-text",{staticClass:"arrow"},[t._v("›")])],1)],1),a("v-uni-view",{staticClass:"info-row"},[a("v-uni-text",{staticClass:"info-label"},[t._v("载重")]),a("v-uni-view",{staticClass:"info-value"},[t._v(t._s(t.currentShip.total_tonnage)+"吨"),a("v-uni-text",{staticClass:"arrow"},[t._v("›")])],1)],1),a("v-uni-view",{staticClass:"info-row"},[a("v-uni-text",{staticClass:"info-label"},[t._v("类型")]),a("v-uni-view",{staticClass:"info-value"},[t._v(t._s(t.getShipTypeName(t.currentShip.ship_type))),a("v-uni-text",{staticClass:"arrow"},[t._v("›")])],1)],1)],1)],1),a("v-uni-view",{staticClass:"card"},[a("v-uni-view",{staticClass:"card-title"},[t._v("航行方向")]),a("v-uni-view",{staticClass:"direction-row"},t._l(t.directionEnum,(function(e){return a("v-uni-button",{key:e.value,staticClass:"direction-btn",class:{active:t.direction===e.value},on:{click:function(a){arguments[0]=a=t.$handleEvent(a),t.setDirection(e.value)}}},[t._v(t._s(e.label))])})),1)],1),a("v-uni-view",{staticClass:"card"},[a("v-uni-view",{staticClass:"card-title"},[t._v("过闸日期")]),a("v-uni-view",{staticClass:"direction-row"},[a("v-uni-button",{staticClass:"direction-btn",class:{active:"today"===t.gateDate},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.setGateDate("today")}}},[t._v("今天")]),a("v-uni-button",{staticClass:"direction-btn",class:{active:"tomorrow"===t.gateDate},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.setGateDate("tomorrow")}}},[t._v("明天")])],1)],1),a("v-uni-view",{staticClass:"notice-row"},[a("v-uni-text",{staticClass:"notice-title"},[t._v("预约须知")]),a("v-uni-view",{staticClass:"notice-check",staticStyle:{position:"relative"}},[a("v-uni-checkbox",{attrs:{checked:t.agreeNotice}}),a("v-uni-text",[t._v("我已阅读并同意《过闸预约服务协议》")]),a("v-uni-view",{staticStyle:{position:"absolute",left:"0",top:"0",right:"0",bottom:"0","z-index":"2"},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.toggleAgreeNotice.apply(void 0,arguments)}}})],1)],1)],1),a("v-uni-view",{staticClass:"reservation-bottom-bar"},[a("v-uni-button",{staticClass:"reservation-btn",on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.onReserve.apply(void 0,arguments)}}},[t._v("预约")])],1)],1)},n=[]},e8d5:function(t,e,a){"use strict";a("6a54");var i=a("f5bd").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var n=i(a("2634")),o=i(a("2fdc"));a("5c47"),a("0506"),a("bf0f"),a("c223"),a("fd3c"),a("dc8a"),a("aa77"),a("f7a5");var s=i(a("67ca")),r=a("8b9f"),c={name:"ReservationPage",components:{NavBar:s.default},data:function(){return{isWeixinBrowser:!1,direction:"",shipList:[],currentShip:{total_length:"",total_width:"",molded_depth:"",ship_number:"",total_tonnage:"",ship_type:""},directionEnum:[],shipTypeEnum:[],agreeNotice:!1,gateDate:"today"}},onLoad:function(){this.isWeixinBrowser=/MicroMessenger/i.test(navigator.userAgent)},onShow:function(){var t=this;this.fetchDirectionEnum().then((function(){t.fetchShipTypeEnum().then((function(){t.fetchShipList()}))}))},methods:{setDirection:function(t){this.direction=t},fetchShipList:function(){var t=this;return(0,o.default)((0,n.default)().mark((function e(){var a,i;return(0,n.default)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(a=uni.getStorageSync("token"),a){e.next=3;break}return e.abrupt("return");case 3:return e.prev=3,e.next=6,new Promise((function(t,e){uni.request({url:"".concat(r.API.AVAILABLE_SHIP,"?token=").concat(a),method:"GET",success:t,fail:e})}));case 6:if(i=e.sent,!i.data||0!==i.data.errcode){e.next=13;break}if(i.data.data){e.next=12;break}return uni.showToast({title:"暂无船舶信息",icon:"none"}),setTimeout((function(){uni.navigateBack(),uni.navigateTo({url:"/pages/index/ship_manage"})}),1e3),e.abrupt("return");case 12:t.currentShip={id:i.data.data.id,total_length:i.data.data.total_length,total_width:i.data.data.total_width,molded_depth:i.data.data.molded_depth,ship_number:i.data.data.ship_number,total_tonnage:i.data.data.total_tonnage,ship_type:i.data.data.ship_type};case 13:e.next=17;break;case 15:e.prev=15,e.t0=e["catch"](3);case 17:case"end":return e.stop()}}),e,null,[[3,15]])})))()},fetchDirectionEnum:function(){var t=this;return(0,o.default)((0,n.default)().mark((function e(){var a,i;return(0,n.default)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(a=uni.getStorageSync("token"),a){e.next=3;break}return e.abrupt("return");case 3:return e.prev=3,e.next=6,new Promise((function(t,e){uni.request({url:"".concat(r.API.GET_DIRECTION_ENUM,"?token=").concat(a),method:"GET",success:t,fail:e})}));case 6:i=e.sent,i.data&&0===i.data.errcode&&(t.directionEnum=Object.keys(i.data.data).map((function(t){return{label:t,value:i.data.data[t]}})),t.directionEnum.length&&!t.direction&&(t.direction=t.directionEnum[0].value)),e.next=12;break;case 10:e.prev=10,e.t0=e["catch"](3);case 12:case"end":return e.stop()}}),e,null,[[3,10]])})))()},fetchShipTypeEnum:function(){var t=this;return(0,o.default)((0,n.default)().mark((function e(){var a,i,o;return(0,n.default)().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(a=uni.getStorageSync("token"),a){e.next=3;break}return e.abrupt("return");case 3:return e.prev=3,e.next=6,new Promise((function(t,e){uni.request({url:"".concat(r.API.SHIP_PROPERTY_ENUM,"?token=").concat(a),method:"GET",success:t,fail:e})}));case 6:i=e.sent,i.data&&0===i.data.errcode&&(o=i.data.data.ship_type||{},Array.isArray(o)?t.shipTypeEnum=o:t.shipTypeEnum=Object.keys(o).map((function(t){return{label:t,value:o[t]}}))),e.next=12;break;case 10:e.prev=10,e.t0=e["catch"](3);case 12:case"end":return e.stop()}}),e,null,[[3,10]])})))()},getShipTypeName:function(t){var e=this.shipTypeEnum.find((function(e){return e.value===t||e.value==t}));return e?e.label:t},onReserve:function(){if(this.agreeNotice){var t=uni.getStorageSync("token");if(t)if(this.currentShip&&this.currentShip.ship_number&&this.currentShip.id){var e=this.direction||"in",a="",i=new Date;if("today"===this.gateDate)a=i.toISOString().slice(0,10);else if("tomorrow"===this.gateDate){var n=new Date(i);n.setDate(i.getDate()+1),a=n.toISOString().slice(0,10)}uni.showLoading({title:"提交中..."}),uni.request({url:"".concat(r.API.RESERVATION_CREATE),method:"POST",data:{token:t,ship_id:this.currentShip.id,direction:e,passage_date:a},success:function(t){uni.hideLoading(),t.data&&0===t.data.errcode?(uni.showToast({title:"预约成功",icon:"success"}),setTimeout((function(){uni.switchTab({url:"/pages/order/index"})}),800)):(uni.hideLoading(),uni.showToast({title:t.data.errmsg||"预约失败",icon:"none"}))},fail:function(){uni.hideLoading(),uni.showToast({title:"网络错误",icon:"none"})}})}else uni.showToast({title:"无效的船舶信息",icon:"none"});else uni.showToast({title:"请先登录",icon:"none"})}else uni.showToast({title:"请先阅读并同意预约须知",icon:"none"})},toggleAgreeNotice:function(){this.agreeNotice=!this.agreeNotice},setGateDate:function(t){this.gateDate=t}}};e.default=c},fa4a:function(t,e,a){"use strict";var i=a("6eec"),n=a.n(i);n.a}}]); |