| | |
| | | Vue, |
| | | Component, |
| | | Mutation, |
| | | namespace |
| | | namespace, |
| | | Action, |
| | | State |
| | | } from 'nuxt-property-decorator'; |
| | | import * as _ from 'lodash'; |
| | | import { strictQuery } from '~/assets/ts/api/consultant'; |
| | | import { Seniority } from '~/assets/ts/models/enum/Seniority'; |
| | | import { Seniority } from '~/assets/ts/models/enum/seniority'; |
| | | |
| | | const localStorage = namespace('localStorage'); |
| | | |
| | |
| | | showAddress = false; |
| | | |
| | | @Mutation updateStrictQueryList!: (data: any) => void; |
| | | @localStorage.Mutation storageRecommendConsultant!: (data: any) => void; |
| | | @Action storeStrictQueryList!: (data: any) => Promise<number>; |
| | | @State strictQueryList!: any; |
| | | @localStorage.State recommendConsultantItem!: string; |
| | | |
| | | mounted() { |
| | |
| | | this.strictQueryDto = JSON.parse(this.recommendConsultantItem); |
| | | } |
| | | } |
| | | makePair():void{ |
| | | strictQuery(this.strictQueryDto).then(res=>{ |
| | | console.log('resultData',res.data); |
| | | this.storageRecommendConsultant(JSON.stringify(this.strictQueryDto)); |
| | | this.updateStrictQueryList(res.data); |
| | | if (res.data.length === 0) { |
| | | async makePair() { |
| | | await this.storeStrictQueryList(this.strictQueryDto).then(dataLength => { |
| | | if (dataLength === 0) { |
| | | this.isVisiblePopUp = true; |
| | | return; |
| | | } |
| | |
| | | </div> |
| | | </template> |
| | | <script lang="ts"> |
| | | import {Vue,Component, State} from 'nuxt-property-decorator'; |
| | | import {Vue,Component, State, namespace, Action} from 'nuxt-property-decorator'; |
| | | import { AgentOfStrictQuery } from '~/assets/ts/api/consultant'; |
| | | |
| | | const localStorage = namespace('localStorage'); |
| | | |
| | | @Component |
| | | export default class Reslut extends Vue{ |
| | | @State('strictQueryList') strictQueryList!: AgentOfStrictQuery; |
| | | @State('strictQueryList') strictQueryList!: AgentOfStrictQuery[]; |
| | | @Action storeStrictQueryList!: (data: any) => Promise<number>; |
| | | @localStorage.State recommendConsultantItem!: string; |
| | | |
| | | pageList: any[] = []; |
| | | isVisiblePopUp = false; |
| | | popUpTxt = ''; |
| | | mounted() { |
| | | if (this.recommendConsultantItem && this.strictQueryList.length === 0) { |
| | | const strictQueryDto = JSON.parse(this.recommendConsultantItem); |
| | | this.storeStrictQueryList(strictQueryDto); |
| | | } |
| | | } |
| | | |
| | | changePage(pageList: any[]) { |
| | | this.pageList = pageList; |
| | |
| | | import { Module, VuexModule, Mutation, Action } from 'vuex-module-decorators' |
| | | import { ClientInfo, getMyAppointmentList } from '~/assets/ts/api/appointment'; |
| | | // import * as consultant from '~/assets/ts/api/consultant'; |
| | | import { Consultants,recommend,AgentOfStrictQuery, getFavoriteConsultant, addFavoriteConsultant, deleteConsultant } from '~/assets/ts/api/consultant'; |
| | | import { Consultants,recommend,AgentOfStrictQuery, getFavoriteConsultant, addFavoriteConsultant, deleteConsultant, strictQuery } from '~/assets/ts/api/consultant'; |
| | | import { isLogin } from '~/assets/ts/auth'; |
| | | import { getFavoriteFromStorage, setFavoriteToStorage } from '~/assets/ts/storageConsultant'; |
| | | |
| | |
| | | this.context.commit('updateMyAppointmentList', data) |
| | | } |
| | | |
| | | @Action |
| | | async storeStrictQueryList(strictQueryDto) { |
| | | return await strictQuery(strictQueryDto).then(res=>{ |
| | | this.context.commit('localStorage/storageRecommendConsultant', JSON.stringify(strictQueryDto)); |
| | | this.context.commit('updateStrictQueryList', res.data) |
| | | return res.data.length; |
| | | }); |
| | | } |
| | | |
| | | } |