diff --git a/api/api.js b/api/api.js index 5c4ca70..3e99e36 100644 --- a/api/api.js +++ b/api/api.js @@ -43,6 +43,12 @@ class Api { let url = `${config.host}/worker/order_dispatch/orderConfirm`; return fetch.request('postFrom', url, data, true) } + + // 工作台列表 + static workbenchOrderList(data) { + let url = `${config.host}/worker/order_dispatch/workbenchOrderList`; + return fetch.request('GET', url, data, true) + } } export default Api diff --git a/pages.json b/pages.json index 44b00c4..5414964 100644 --- a/pages.json +++ b/pages.json @@ -1,5 +1,13 @@ { "pages": [ + { + "path" : "pages/workbench/workbench", + "style" : + { + "navigationBarTitleText" : "", + "navigationStyle": "custom" + } + }, { "path" : "pages/index/index", "style" : @@ -24,14 +32,6 @@ "navigationStyle": "custom" } }, - { - "path" : "pages/workbench/workbench", - "style" : - { - "navigationBarTitleText" : "", - "navigationStyle": "custom" - } - }, { "path" : "pages/order/order-info", "style" : diff --git a/pages/workbench/workbench.vue b/pages/workbench/workbench.vue index 8de5cbe..d9d6fe8 100644 --- a/pages/workbench/workbench.vue +++ b/pages/workbench/workbench.vue @@ -3,101 +3,67 @@ - - {{item.name}}({{item.num}}) - + + {{item.name}}({{item.num}}) + - + - 日常保洁 - 平台已收款 + {{item.order_info.item_title}} + 上门报价 + 平台已收款 - 金城花园(天府二街) + {{item.order_info.address}} - 广东省茂名市茂南区金城路26号大院附近 + {{helpers.removeCommas(item.order_info.area.merge_name)}} - + - 周日 10月08日 12:30 + {{helpers.formatDate(item.order_info.plan_time)}} - 8.34公里 + 未知距离 + {{formatDistance(item.order_info.lat, item.order_info.lng)}} - 安子辰 + {{ item.order_info.customer }} - 18950807422 + {{ item.order_info.tel }} - + - - 当前工单状态 - 待联系客户 - - - - - 日常保洁 - 上门报价 - - - - - 金城花园(天府二街) - - - 广东省茂名市茂南区金城路26号大院附近 - - - - 周日 10月08日 12:30 + + + + 待联系客户 + + + + + 上报异常 - - - - - 8.34公里 - - - - - - - 安子辰 - - 18950807422 - - - - - - - - - 当前工单状态 - 待联系客户 @@ -112,40 +78,102 @@ import MeIcon from "../../components/me-icon/me-icon"; import MeButton from "../../components/me-button/me-button"; import MeEmptySpace from "../../components/me-empty-space/me-empty-space.vue"; import MeTop from "../../components/me-top/me-top.vue"; -const data = reactive({ - globalData: {}, - filterIndex: 1 -}) +import api from "../../api/api"; +import helpers from "../../utils/helpers"; + +/** + * 拨打电话 + * @param tel + */ +const call = (tel) => { + uni.makePhoneCall({ + phoneNumber: tel + }); +} + onLoad(() => { - data.globalData = inject('globalData') + init() }) +const userLocation = reactive({ + lng: null, + lat: null, +}) + +//初始化 +const init = () => { + //获取师傅当前位置 + uni.getLocation({ + type: 'gcj02', + success(res) { + userLocation.lng = res.longitude + userLocation.lat = res.latitude + data.page = 1 + getList() + }, + fail(err) { + uni.showToast({ + title: '请授权位置权限', + icon: "error" + }) + } + }); +} + +const data = reactive({ + type: 'ongoing', + page: 1, + page_size: 10, + last_page: 0, + is_show_skeleton: true, + list: [] +}) +const getList = () => { + let params = { + page: data.page, + page_size: data.page_size, + workbench_type: data.type, + } + api.workbenchOrderList(params).then(res => { + data.last_page = res.last_page + if (data.page === 1) { + data.list = res.data; + } else { + data.list = data.list.concat(helpers.deepObj(res.data)) + } + data.is_show_skeleton = false + }).catch(() => {}) +} + const listMarginTop = computed(() => { - return (data.globalData.statusBarH + (data.globalData.customBarH - data.globalData.statusBarH) + 50) * 2 + let globalData = inject('globalData') + return (globalData.statusBarH + (globalData.customBarH - globalData.statusBarH) + 50) * 2 }) -const filterType = reactive([ - { - id: 1, +const filterType = reactive({ + 'ongoing': { name: '进行中', num: 2, - }, { + }, + 'today': { id: 2, name: '今日', num: 2, - }, { + }, + 'tomorrow': { id: 3, name: '明日', num: 0, - }, { + }, + 'all': { id: 4, name: '全部', num: 724, }, -]) +}) -const filter = (index) => { - data.filterIndex = index +const filter = (type) => { + data.type = type } diff --git a/static/css/common.scss b/static/css/common.scss index f6270f1..0bde494 100644 --- a/static/css/common.scss +++ b/static/css/common.scss @@ -373,17 +373,30 @@ swiper .wx-swiper-dots .wx-swiper-dot{ } } } - .status-ctr { + .operate-ctr { width: 100%; height: 80rpx; font-size: 28rpx; margin-top: 20rpx; - .status { - height: 60rpx; - background: rgba(225,143,0,0.1); - border-radius: 8rpx; - padding: 0 16rpx; - color: #E18F00; + .status-ctr,.operate { + width: 50%; + } + .status-ctr { + .text { + margin-left: 8rpx; + font-size: 30rpx; + color: #E18F00; + } + } + .operate { + .btn { + width: 186rpx; + height: 76rpx; + background: #E18F00; + border-radius: 16rpx; + font-size: 28rpx; + color: #FFFFFF; + } } } }