import $api from "@/api/index.js" import $store from "@/store/index.js" export default { state: { pageActive: false, sexList: [{ id: -1, title: '全部' }, { id: 0, title: '男' }, { id: 1, title: '女' }], yearList: [{ id: 1, title: '1-3年', year: [1, 3] }, { id: 2, title: '3-5年', year: [3, 5] }, { id: 3, title: '5-10年', year: [5, 10] }, { id: 4, title: '10年以上', year: [10, 200] }], map: { latitude: 0, longitude: 0, scale: 16, controls: [] }, covers: [], service_cate: [], param: { page: 1, sex: -1, year: 1, cate_id: 0, activeIndex: 0, coach_name: '', service_time: '' }, check: { sex: -1, year: 1, coach_name: '', service_time: '' }, mapList: [], list: { data: [], last_page: 1, current_page: 1 }, mapType: 'map' }, mutations: { async updateMapItem(state, item) { let { key, val } = item state[key] = val } }, actions: { async getMapIndex({ commit, state }, param) { let d = await $api.service.serviceCateList(param) d.unshift({ id: 0, title: '全部' }) commit('updateMapItem', { key: 'service_cate', val: d }) }, async getMapList({ commit, state }, param) { let d = await $api.service.mapCoachList(param) let map = Object.assign({}, state.map, { latitude: param.lat, longitude: param.lng, }) let arr = [] d.map((item, index) => { arr.push({ id: index, latitude: item.lat, longitude: item.lng, iconPath: item.work_img, width: 30, height: 30 }) }) arr.unshift({ id: '-1', latitude: param.lat, longitude: param.lng, iconPath: 'https://mapapi.qq.com/web/lbs/visualizationApi/demo/img/big.png', width: 20, height: 25, }) commit('updateMapItem', { key: 'map', val: map }) commit('updateMapItem', { key: 'covers', val: arr }) commit('updateMapItem', { key: 'mapList', val: d }) }, async getMapCoachList({ commit, state }, param) { let { coach_format = 1 } = $store.state.config.configInfo let methodModel = coach_format == 1 ? 'serviceCoachList' : 'typeServiceCoachList' let d = await $api.service[methodModel](param) let oldList = state.list; let newList = d; let list = {} if (param.page == 1) { list = newList; } else { newList.data = oldList.data.concat(newList.data) list = newList; } commit('updateMapItem', { key: 'list', val: list }) } }, }