123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- import {
- spread
- } from "@/api/user";
- import Cache from "@/utils/cache";
- import {
- getCustomerType
- } from '@/api/api.js'
- import {
- getWorkermanUrl
- } from '@/api/kefu.js'
- /**
- * 绑定用户授权
- * @param {Object} puid
- */
- export function silenceBindingSpread() {
- //#ifdef H5
- let puid = Cache.get('spread'),
- code = 0;
- //#endif
- //#ifdef MP || APP-PLUS
- let puid = getApp().globalData.spid,
- code = getApp().globalData.code;
- //#endif
- puid = parseInt(puid);
- if (Number.isNaN(puid)) {
- puid = 0;
- }
- if (puid) {
- spread({
- puid,
- code
- }).then(res => {
- //#ifdef H5
- Cache.clear('spread');
- //#endif
- //#ifdef MP || APP-PLUS
- getApp().globalData.spid = 0;
- getApp().globalData.code = 0;
- //#endif
- }).catch(res => {});
- }
- }
- export function isWeixin() {
- return navigator.userAgent.toLowerCase().indexOf("micromessenger") !== -1;
- }
- export function getCustomer(url) {
- getCustomerType().then(res => {
- let type = res.data.customer_type
- if (type == '0') {
- uni.navigateTo({
- url: url || '/pages/extension/customer_list/chat'
- })
- } else if (type == '1') {
- uni.makePhoneCall({
- phoneNumber: res.data.customer_phone //客服电话
- });
- } else {
- // #ifdef APP-PLUS
- plus.runtime.openURL(res.data.customer_url)
- // #endif
- // #ifdef H5 || MP
- if (res.data.customer_url.indexOf('work.weixin.qq.com') > 0) {
- // #ifdef H5
- return window.location.href = res.data.customer_url
- // #endif
- // #ifdef MP
- uni.openCustomerServiceChat({
- extInfo: {
- url: res.data.customer_url
- },
- corpId: res.data.customer_corpId,
- success(res) {},
- fail(err) {
- uni.showToast({
- title: err.errMsg,
- icon: 'none',
- duration: 2000
- });
- }
- })
- // #endif
- } else {
- uni.navigateTo({
- url: `/pages/annex/web_view/index?url=${res.data.customer_url}`
- });
- }
- // #endif
- }
- })
- }
- export function parseQuery() {
- const res = {};
- const query = (location.href.split("?")[1] || "")
- .trim()
- .replace(/^(\?|#|&)/, "");
- if (!query) {
- return res;
- }
- query.split("&").forEach(param => {
- const parts = param.replace(/\+/g, " ").split("=");
- const key = decodeURIComponent(parts.shift());
- const val = parts.length > 0 ? decodeURIComponent(parts.join("=")) : null;
- if (res[key] === undefined) {
- res[key] = val;
- } else if (Array.isArray(res[key])) {
- res[key].push(val);
- } else {
- res[key] = [res[key], val];
- }
- });
- return res;
- }
- export function updateURLParameter(url, param, paramVal) {
- var newAdditionalURL = "";
- var tempArray = url.split("?");
- var baseURL = tempArray[0];
- var additionalURL = tempArray[1];
- var temp = "";
- if (additionalURL) {
- tempArray = additionalURL.split("&");
- for (let i = 0; i < tempArray.length; i++) {
- if (tempArray[i].split('=')[0] != param) {
- newAdditionalURL += temp + tempArray[i];
- temp = "&";
- }
- }
- }
- var rows_txt = temp + "" + param + "=" + paramVal;
- return baseURL + "?" + newAdditionalURL + rows_txt;
- }
- let VUE_APP_WS_URL = Cache.get('WORKERMAN_URL') || ''
- // getWorkermanUrl().then(res => {
- // Cache.set('WORKERMAN_URL', res.data.chat)
- // VUE_APP_WS_URL = res.data.chat;
- // })
- export {
- VUE_APP_WS_URL
- }
- export default parseQuery;
|