2022.9.14
1. 修改加载状态组件,添加查看更多功能;
2. 调整问答查询和智能查询接口,添加可传入分页参数;
3. 智能问答界面添加根据关键字返回问答、案例等智能回复结果逻辑;
| | |
| | | "selectedIconPath": "res/icons/tab_5_select.png" |
| | | }, |
| | | { |
| | | "pagePath": "pages/m_service/p_servicehome/servicehome", |
| | | "pagePath": "pages/m_promise/promisehome/promise", |
| | | "text": "守法承诺", |
| | | "iconPath": "/res/icons/tab_3.png", |
| | | "selectedIconPath": "res/icons/tab_3_select.png" |
| | |
| | | data: { |
| | | cPage: 1, |
| | | tPage: 1, |
| | | perPage: 10, |
| | | totalCount: 0, |
| | | loading: false, |
| | | needLoadMore: false |
| | |
| | | if (typeof this.loadComplete === 'function') { |
| | | this.loadComplete() |
| | | } |
| | | } |
| | | }, |
| | | } |
| | | }) |
| | |
| | | // component/loadingstatus/loadingstatus.js |
| | | /** |
| | | * 加载状态组件 |
| | | * 配合 b_loadingStatus 使用 |
| | | * @see '/base/behaviors/b_loadingStatus.js' |
| | | */ |
| | | Component({ |
| | | options: { |
| | | addGlobalClass: true |
| | |
| | | * 组件的属性列表 |
| | | */ |
| | | properties: { |
| | | scrollable: { |
| | | type: Boolean, |
| | | value: true |
| | | }, |
| | | loading: { |
| | | type: Boolean, |
| | | value: false |
| | |
| | | * 组件的方法列表 |
| | | */ |
| | | methods: { |
| | | |
| | | gotoMore() { |
| | | this.triggerEvent('gotoMore') |
| | | } |
| | | } |
| | | }) |
| | |
| | | <import src="/template/nodata.wxml"></import> |
| | | |
| | | <template wx:if="{{!loading && nodata}}" is="nodataPage"></template> |
| | | <block wx:else=""> |
| | | <block wx:else> |
| | | <view wx:if="{{!loading}}" class="load-more"> |
| | | <text wx:if="{{needLoadMore}}">上滑加载</text> |
| | | <text wx:else="">——到底了——</text> |
| | | <view wx:if="{{!scrollable}}" class="btn-more" bindtap="gotoMore">查看更多</view> |
| | | <block wx:else> |
| | | <text wx:if="{{needLoadMore}}">上滑加载</text> |
| | | <text wx:else="">——到底了——</text> |
| | | </block> |
| | | </view> |
| | | |
| | | <view wx:else class="load-more"> |
| | | <mp-loading duration="{{900}}" type="dot-gray" show="{{true}}" animated="{{true}}"></mp-loading> |
| | | </view> |
| | |
| | | font-size: 12px; |
| | | color: var(--fyui-text-color_3); |
| | | padding: 8px; |
| | | } |
| | | |
| | | .btn-more{ |
| | | text-align: center; |
| | | background-color: white; |
| | | /* margin: 0 10px; */ |
| | | border-top: 1px solid var(--fyui-BG_1); |
| | | color: var(--fyui-text-color_2); |
| | | padding: 8px 8px 0 8px; |
| | | font-size: 12px; |
| | | } |
| | |
| | | * 组件的属性列表 |
| | | */ |
| | | properties: { |
| | | extClass: { |
| | | type: String, |
| | | value: '' |
| | | }, |
| | | extClassOn: { |
| | | type: String, |
| | | value: '' |
| | | }, |
| | | tabList: { |
| | | type: Array, |
| | | value: [] |
| | |
| | | // pageheight: '600px', |
| | | }, |
| | | |
| | | pageLifetimes: { |
| | | // 组件所在页面的生命周期函数 |
| | | show: function () { |
| | | // this.refreshHeight(true) |
| | | |
| | | }, |
| | | hide: function () { }, |
| | | resize: function () { |
| | | }, |
| | | }, |
| | | |
| | | /** |
| | | * 组件的方法列表 |
| | | */ |
| | |
| | | if (e) { |
| | | setTimeout(() => { |
| | | const p = `.page${this.data.currentTab}` |
| | | console.log(p); |
| | | this.tabsHeight(p); |
| | | }, 50); |
| | | } |
| | |
| | | <view class="swiper-tab"> |
| | | <scroll-view class="swiper-tab_view" scroll-into-view="item{{currentTab}}" scroll-x="true" show-scrollbar="true" scroll-with-animation="true"> |
| | | <block wx:for="{{tabList}}" wx:key="i"> |
| | | <view id="item{{index}}" class="swiper-tab-list {{currentTab==index ? 'on' : ''}}" data-current="{{index}}" bindtap="swichNav"> |
| | | <view id="item{{index}}" class="swiper-tab-list {{extClass}} {{currentTab==index ? 'on ' + extClassOn : ''}}" data-current="{{index}}" bindtap="swichNav"> |
| | | {{item.name}} |
| | | <text wx:if="{{item.tag > 0}}" class="swiper-tab-list__tag">{{item.tag}}</text> |
| | | </view> |
| | |
| | | type: Array, |
| | | value: [] |
| | | }, |
| | | scrollable: { |
| | | type: Boolean, |
| | | value: true |
| | | }, |
| | | loading: { |
| | | type: Boolean, |
| | | value: false |
| | |
| | | } |
| | | }, |
| | | |
| | | gotoMore() { |
| | | this.triggerEvent('gotoMore') |
| | | } |
| | | } |
| | | }) |
| | |
| | | </block> |
| | | </view> |
| | | </block> |
| | | <mp-loadingstatus loading="{{loading}}" needLoadMore="{{needLoadMore}}" nodata="{{results.length == 0}}"></mp-loadingstatus> |
| | | <mp-loadingstatus scrollable="{{scrollable}}" loading="{{loading}}" needLoadMore="{{needLoadMore}}" nodata="{{results.length == 0}}" bindgotoMore="gotoMore"></mp-loadingstatus> |
| | | </view> |
| | |
| | | * @param page 分页 |
| | | * @param selectedValues [i, j],选中的分类编号i和子类编号j,i、j为null表示全部 |
| | | */ |
| | | getQuestionsByType(page = 1, selectedValues) { |
| | | getQuestionsByType(page = 1, selectedValues, perPage = this.data.perPage) { |
| | | this.selectedValues = selectedValues |
| | | this.setData({loading: true}) |
| | | const t = setTimeout(() => { |
| | | this.setData({loading: false}) |
| | | }, 10000); |
| | | var that = this |
| | | consultservice.getQuestionsByType(app.globalData.accessToken.userId, selectedValues[0], selectedValues[1], page, app.globalData.perPage, { |
| | | consultservice.getQuestionsByType(app.globalData.accessToken.userId, selectedValues[0], selectedValues[1], page, perPage, { |
| | | onPage(head) { |
| | | that.setData({ |
| | | cPage: head.page, |
| | | tPage: head.totalPage, |
| | | perPage: perPage, |
| | | totalCount: head.totalCount |
| | | }) |
| | | }, |
| | |
| | | * @param keyword 关键字,若关键字为空白,则按照热门的逻辑搜索 |
| | | * @param type 查询类型,包括[1:法规文件,2:法规条目,3:执法案例,4:环保问题],不填写时表示查询所有类型的前5条 |
| | | */ |
| | | search(obj, cPage = 1) { |
| | | search(obj, cPage = 1, perPage = this.data.perPage) { |
| | | this.obj = obj |
| | | this.setData({loading: true}) |
| | | const t = setTimeout(() => { this.setData({loading: false}) }, 10000); |
| | | var that = this |
| | | const {keyword, type} = obj |
| | | consultservice.searchLaw(app.globalData.accessToken.userId, keyword, cPage, app.globalData.perPage, { |
| | | consultservice.searchLaw(app.globalData.accessToken.userId, keyword, cPage, perPage, { |
| | | onPage(head) { |
| | | that.setData({ |
| | | cPage: head.page, |
| | | tPage: head.totalPage, |
| | | perPage: perPage |
| | | }) |
| | | }, |
| | | success(res) { |
| | |
| | | reachBottom: { |
| | | type: Boolean, |
| | | value: false |
| | | }, |
| | | scrollable: { |
| | | type: Boolean, |
| | | value: true |
| | | }, |
| | | sPerPage: { |
| | | type: Number, |
| | | value: 10 |
| | | } |
| | | }, |
| | | |
| | | observers: { |
| | | 'keyobj': function(keyobj) { |
| | | this.search(keyobj) |
| | | 'keyobj': function (keyobj) { |
| | | this.search(keyobj, 1, this.data.sPerPage) |
| | | }, |
| | | // 'reachBottom': function(reachBottom) { |
| | | // if (reachBottom) { |
| | | // this._onReachBottom() |
| | | // } |
| | | // } |
| | | }, |
| | | |
| | | /** |
| | | * 组件的初始数据 |
| | | */ |
| | | data: { |
| | | |
| | | |
| | | }, |
| | | |
| | | /** |
| | | * 组件的方法列表 |
| | | */ |
| | | methods: { |
| | | // _onReachBottom() { |
| | | // console.log('_onReachBottom'); |
| | | // let {cPage, tPage} = this.data |
| | | // console.log(this.data); |
| | | // if (cPage < tPage) { |
| | | // this.search(this.data.keyobj, ++cPage) |
| | | // } |
| | | // } |
| | | gotoMore() { |
| | | this.triggerEvent('gotoMore') |
| | | const {keyword, type} = this.data.keyobj |
| | | wx.navigateTo({ |
| | | url: '/pages/m_consult/consultresultmore/consultresultmore', |
| | | success: (res) => { |
| | | // 通过 eventChannel 向被打开页面传送数据 |
| | | res.eventChannel.emit('acceptDataFromOpenerPage', { |
| | | typeId: type, |
| | | keyword: keyword |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | } |
| | | }) |
| | |
| | | <c-result-item results="{{results}}" loading="{{loading}}" needLoadMore="{{needLoadMore}}"></c-result-item> |
| | | <c-result-item results="{{results}}" loading="{{loading}}" needLoadMore="{{needLoadMore}}" scrollable="{{scrollable}}" bindgotoMore="gotoMore"></c-result-item> |
| | |
| | | userId: 'system', |
| | | userName: '智能客服', |
| | | type: 0, |
| | | text: '用户您好,很高兴为你服务', |
| | | }, |
| | | { |
| | | id: 'system', |
| | | time: '', |
| | | userId: 'system', |
| | | userName: '智能客服', |
| | | type: 0, |
| | | text: '用户您好,很高兴为您服务,本月信用自评结果较 好,继续保持哦.用户您好,很高兴为您服务,本月信用自评结果较 好,继续保持哦.用户您好,很高兴为您服务,本月信用自评结果较 好,继续保持哦.用户您好,很高兴为您服务,本月信用自评结果较 好,继续保持哦.用户您好,很高兴为您服务,本月信用自评结果较 好,继续保持哦.', |
| | | }, |
| | | |
| | | text: '尊敬的用户,小白竭诚为您服务,您有什么问题呢', |
| | | } |
| | | ], |
| | | |
| | | focus: false, |
| | |
| | | time: '', |
| | | userId: app.globalData.accessToken.userId, |
| | | userName: app.globalData.userInfo.acountname, |
| | | type: 0, |
| | | text: this.data.value, |
| | | }) |
| | | const keyword = this.data.value |
| | | this.lastKeyword = this.data.value |
| | | this.setData({ |
| | | record, |
| | | value: '' |
| | | }) |
| | | |
| | | this.getAnswer(keyword) |
| | | this.getAnswer() |
| | | }, |
| | | |
| | | getAnswer(q) { |
| | | getAnswer() { |
| | | this.search({ |
| | | keyword: q, |
| | | keyword: this.lastKeyword, |
| | | type: undefined |
| | | }) |
| | | }, 1, 1) |
| | | // let record = this.data.record |
| | | // const r = { |
| | | // id: 'system', |
| | | // time: '', |
| | | // userId: 'system', |
| | | // userName: '智能客服', |
| | | // type: 1, |
| | | // text: { |
| | | // tabList: [ |
| | | // {name: '问答',tag: 0}, |
| | | // {name: '案例',tag: 0}, |
| | | // {name: '条目',tag: 0}, |
| | | // {name: '文件',tag: 0} |
| | | // ], |
| | | // key1: {keyword: q, type: 1}, |
| | | // key2: {keyword: q, type: 2}, |
| | | // key3: {keyword: q, type: 3}, |
| | | // key4: {keyword: q, type: 4}, |
| | | // // pageList: p |
| | | // }, |
| | | // } |
| | | // this.data.record.push(r) |
| | | // let last = this.data.record.length - 1 |
| | | // this.setData({ |
| | | // [`record[${last}]`]: r |
| | | // }) |
| | | // this.setData({ |
| | | // record, |
| | | // }) |
| | | }, |
| | | |
| | | loadComplete() { |
| | | const results = this.data.results |
| | | console.log(results); |
| | | |
| | | let record = this.data.record |
| | | results.forEach(r => { |
| | | |
| | | if (results.length == 0) { |
| | | record.push({ |
| | | id: 'system', |
| | | time: '', |
| | | userId: 'system', |
| | | userName: '智能客服', |
| | | type: r.typeId, |
| | | text: r, |
| | | type: 0, |
| | | text: '不好意思,暂无相关解答,请试试其他关键词' |
| | | }) |
| | | }); |
| | | } else { |
| | | record.push({ |
| | | id: 'system', |
| | | time: '', |
| | | userId: 'system', |
| | | userName: '智能客服', |
| | | type: 0, |
| | | text: '小白给您提供参考如下' |
| | | }) |
| | | const map = new Map() |
| | | results.forEach(r => { |
| | | if (!map.has(r.typeName)) { |
| | | r.keyword = this.lastKeyword |
| | | map.set(r.typeName, []) |
| | | map.get(r.typeName).push(r) |
| | | } |
| | | }); |
| | | const t = [] |
| | | const p = [] |
| | | for (let item of map) { |
| | | t.push({ |
| | | name: item[0], |
| | | tag: 0 |
| | | }) |
| | | p.push(item[1]) |
| | | } |
| | | record.push({ |
| | | id: 'system', |
| | | time: '', |
| | | userId: 'system', |
| | | userName: '智能客服', |
| | | type: 1, |
| | | refresh: true, |
| | | text: { |
| | | tabList: t, |
| | | pageList: p |
| | | }, |
| | | }) |
| | | } |
| | | this.setData({ |
| | | record, |
| | | }) |
| | | }, |
| | | |
| | | this.setData({record}) |
| | | gotoMore(e) { |
| | | const iList = e.currentTarget.dataset.index |
| | | const i1 = iList[0] |
| | | const i2 = iList[1] |
| | | const {keyword, typeId} = this.data.record[i1].text.pageList[i2][0] |
| | | console.log(keyword); |
| | | console.log(typeId); |
| | | wx.navigateTo({ |
| | | url: '/pages/m_consult/consultresultmore/consultresultmore', |
| | | success: (res) => { |
| | | // 通过 eventChannel 向被打开页面传送数据 |
| | | res.eventChannel.emit('acceptDataFromOpenerPage', { |
| | | typeId: typeId, |
| | | keyword: keyword |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | }) |
| | |
| | | "navigationBarBackgroundColor": "#EFF9F4", |
| | | "navigationBarTextStyle": "black", |
| | | "usingComponents": { |
| | | "mp-icon": "/component/icon/icon" |
| | | "mp-icon": "/component/icon/icon", |
| | | "switch-tab": "/component/switchtab/switchtab", |
| | | "c-result-item": "../base_c/c_result-item/c_result-item", |
| | | "c-result-item-search": "../c_result-item-search/c_result-item-search" |
| | | } |
| | | } |
| | |
| | | <!--pages/m_consult/consultonline/consultonline.wxml--> |
| | | <view class="consult-record"> |
| | | <block wx:for="{{record}}" wx:key="index"> |
| | | <view wx:if="{{userId == item.userId}}" class="consult-record_item_user"> |
| | | <view class="consult-text_user">{{item.text}}</view> |
| | | </view> |
| | | <view wx:else class="consult-record_item"> |
| | | <image src="/res/icons/avator_sys.png" class="consult-avator"></image> |
| | | <view wx:if="{{item.type == 0}}" class="consult-text">{{item.text}}</view> |
| | | <view wx:elif="{{item.type == 1}}" class="consult-text"> |
| | | {{item.text.name}} |
| | | <view class="page"> |
| | | <scroll-view class="consult-record" enable-passive="{{true}}" scroll-into-view="item{{record.length - 1}}" scroll-y="true" show-scrollbar="{{false}}" scroll-with-animation="true"> |
| | | <view id="item{{index}}" wx:for="{{record}}" wx:key="index" style="padding-bottom: 2px;"> |
| | | <view wx:if="{{userId == item.userId}}" class="consult-record_item_user"> |
| | | <view class="consult-text_user">{{item.text}}</view> |
| | | </view> |
| | | <view wx:elif="{{item.type == 2}}" class="consult-text">{{item.text.name}}</view> |
| | | <view wx:elif="{{item.type == 3}}" class="consult-text">{{item.text.name}}</view> |
| | | <view wx:elif="{{item.type == 4}}" class="consult-text">{{item.text.name}}</view> |
| | | <view wx:else class="consult-record_item"> |
| | | <image wx:if="{{item.type == 0}}" src="/res/icons/avator_sys.png" class="consult-avator"></image> |
| | | <view wx:if="{{item.type == 0}}" class="consult-text">{{item.text}}</view> |
| | | <view wx:elif="{{item.type == 1}}" class="consult-text consult-qa"> |
| | | <switch-tab tabList="{{item.text.tabList}}" refresh="{{item.refresh}}"> |
| | | <block wx:for="{{item.text.pageList}}" wx:key="i" wx:for-item="p" wx:for-index="i"> |
| | | <c-result-item results="{{p}}" loading="{{false}}" needLoadMore="{{false}}" scrollable="{{false}}" slot="slot{{i}}" data-index="{{[index, i]}}" bindgotoMore="gotoMore"></c-result-item> |
| | | </block> |
| | | <!-- <c-result-item-search scrollable="{{false}}" slot="slot0" keyobj="{{item.text.key4}}" sPerPage="{{1}}" bindloadComplete="loadComplete"></c-result-item-search> |
| | | <c-result-item-search scrollable="{{false}}" slot="slot1" keyobj="{{item.text.key3}}" sPerPage="{{1}}"></c-result-item-search> |
| | | <c-result-item-search scrollable="{{false}}" slot="slot2" keyobj="{{item.text.key2}}" sPerPage="{{1}}"></c-result-item-search> |
| | | <c-result-item-search scrollable="{{false}}" slot="slot3" keyobj="{{item.text.key1}}" sPerPage="{{1}}"></c-result-item-search> --> |
| | | </switch-tab> |
| | | </view> |
| | | <view wx:elif="{{item.type == 2}}" class="consult-text">{{item.text.name}}</view> |
| | | <view wx:elif="{{item.type == 3}}" class="consult-text">{{item.text.name}}</view> |
| | | <view wx:elif="{{item.type == 4}}" class="consult-text">{{item.text.name}}</view> |
| | | </view> |
| | | </view> |
| | | </block> |
| | | </view> |
| | | <view class="consult-input"> |
| | | <view class="consult-input_box"> |
| | | <view class="search-bar"> |
| | | <!-- <mp-icon icon="search" size="15" color="black"></mp-icon> --> |
| | | <input type="text" class="search-bar__input" placeholder="{{placeholder}}" value="{{value}}" focus="{{focus}}" bindinput="inputChange" /> |
| | | <text class="weui-icon-clear" hover-class="weui-active" wx:if="{{value.length > 0}}" bindtap="clearInput"></text> |
| | | </scroll-view> |
| | | <view class="consult-input"> |
| | | <view class="consult-input_box"> |
| | | <view class="search-bar"> |
| | | <!-- <mp-icon icon="search" size="15" color="black"></mp-icon> --> |
| | | <input type="text" class="search-bar__input" placeholder="{{placeholder}}" value="{{value}}" focus="{{focus}}" bindinput="inputChange" /> |
| | | <text class="weui-icon-clear" hover-class="weui-active" wx:if="{{value.length > 0}}" bindtap="clearInput"></text> |
| | | </view> |
| | | <view wx:if="{{value.length > 0}}" class="btn" bindtap="send">发送</view> |
| | | </view> |
| | | <view wx:if="{{value.length > 0}}" class="btn" bindtap="send">发送</view> |
| | | </view> |
| | | </view> |
| | |
| | | /* pages/m_consult/consultonline/consultonline.wxss */ |
| | | .consult-record { |
| | | padding: 8px; |
| | | .page { |
| | | background-color: #EFF9F4; |
| | | height: 100vh; |
| | | } |
| | | |
| | | .consult-record { |
| | | /* padding: 8px 0; */ |
| | | background-color: #EFF9F4; |
| | | height: 88vh; |
| | | } |
| | | |
| | | .consult-record_item { |
| | |
| | | align-items: flex-start; |
| | | justify-content: flex-start; |
| | | margin-bottom: 16px; |
| | | padding-left: 8px; |
| | | } |
| | | |
| | | .consult-record_item_user { |
| | |
| | | align-items: flex-start; |
| | | justify-content: flex-end; |
| | | margin-bottom: 16px; |
| | | padding-right: 8px; |
| | | } |
| | | |
| | | .consult-avator { |
| | |
| | | border-top-left-radius: 0; |
| | | box-shadow: 1px 1px #CCCCCC; |
| | | font-size: 12px; |
| | | } |
| | | |
| | | .consult-qa { |
| | | padding: 0px; |
| | | width: 92%; |
| | | max-width: 100%; |
| | | } |
| | | |
| | | .consult-text_user { |
| | |
| | | padding-bottom: calc(10px + env(safe-area-inset-bottom)); |
| | | left: 0; |
| | | width: 100%; |
| | | /* height: 12vh; */ |
| | | /* background-color: #a3be042f; */ |
| | | } |
| | | |
| | | .consult-input_box { |
| | |
| | | }, |
| | | methods: { |
| | | loadmore(cPage) { |
| | | this.getResources(++cPage) |
| | | this.getResources({cPage: ++cPage}) |
| | | }, |
| | | |
| | | /** |
| | | * 根据筛选条件获取守法学习材料 |
| | | * @param fileType 文件类型,包括[1:office文档,2:网址,3:音频,4:视频],不填写时表示查询所有类型 |
| | | */ |
| | | getResources(cPage = 1, fileType) { |
| | | getResources({cPage = 1, fileType}) { |
| | | this.setData({loading: true}) |
| | | const t = setTimeout(() => { this.setData({loading: false}) }, 10000); |
| | | var that = this |
| | |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | this.getResources(1, this.data.fileType) |
| | | this.getResources({cPage: 1, fileType: this.data.fileType}) |
| | | }, |
| | | }) |
| | |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad: function (options) { |
| | | this.getResources(1) |
| | | this.getResources({}) |
| | | }, |
| | | |
| | | loadComplete() { |
| | |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | const now = moment() |
| | | const year = moment().year() |
| | | const now = moment().hour(0).minute(0).second(0).millisecond(0) |
| | | const year = now.year() |
| | | const schedules = [] |
| | | let totals = 0 |
| | | for (let m = 1; m <= 12; m++) { |
| | |
| | | category: `${year}年${m}月环保工作日程`, |
| | | details: [] |
| | | } |
| | | const mon = m > 9 ? m : `0${m}` |
| | | //10,15,20 |
| | | let t1 = moment(`${year}-${m}-10`) |
| | | let t1 = moment(`${year}-${mon}-10`) |
| | | let d1 = t1.diff(now, 'days') |
| | | s.details.push({ |
| | | time: t1.format('MM月DD日'), |
| | | name: '环保日程环保日程环保日程环保日程环保日程环保日程', |
| | | left: d1, |
| | | }) |
| | | let t2 = moment(`${year}-${m}-15`) |
| | | let t2 = moment(`${year}-${mon}-15`) |
| | | let d2 = t2.diff(now, 'days') |
| | | s.details.push({ |
| | | time: t2.format('MM月DD日'), |
| | | name: '环保日程', |
| | | left: d2, |
| | | }) |
| | | let t3 = moment(`${year}-${m}-20`) |
| | | let t3 = moment(`${year}-${mon}-20`) |
| | | let d3 = t3.diff(now, 'days') |
| | | s.details.push({ |
| | | time: t3.format('MM月DD日'), |
| | |
| | | |
| | | const originProperties = ['url', 'data', 'header', 'method', 'success', 'fail', 'complete']; |
| | | // const baseUrl = "http://127.0.0.1:8080" |
| | | const baseUrl = "http://192.168.0.106:8080" |
| | | // const baseUrl = "https://fyami.com.cn:447" |
| | | // const baseUrl = "http://192.168.0.106:8080" |
| | | const baseUrl = "https://fyami.com.cn:447" |
| | | // const basePicUrl = baseUrl + "/images/" |
| | | const basePicUrl = "https://fyami.com.cn:447/images/" |
| | | const baseIconUrl = "https://fyami.com.cn:447/images/weixin/eplaw/" |