| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- import router from "../router";
- import { wecomTicket } from "../api/indexAI";
- declare let wx: any;
- export const dateFormat = (fmt: string, x: Date | string) => {
- const date = typeof x === "string" ? new Date(x) : x;
- let ret;
- let opt: IAny = {
- "Y+": date.getFullYear().toString(), // 年
- "M+": (date.getMonth() + 1).toString(), // 月
- "d+": date.getDate().toString(), // 日
- "h+": date.getHours().toString(), // 时
- "m+": date.getMinutes().toString(), // 分
- "s+": date.getSeconds().toString() // 秒
- };
- for (let k in opt) {
- ret = new RegExp("(" + k + ")").exec(fmt);
- if (ret) {
- fmt = fmt.replace(
- ret[1],
- ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")
- );
- }
- }
- return fmt;
- };
- export const RegAccount = /^[a-zA-Z0-9]{9,16}$/;
- export const Dateformat = (t: string | Date, format: string) => {
- let fmt = format;
- let ret;
- const date = typeof t === "string" ? new Date(t) : t;
- const opt: IAny = {
- "Y+": date.getFullYear().toString(), // 年
- "m+": (date.getMonth() + 1).toString(), // 月
- "d+": date.getDate().toString(), // 日
- "H+": date.getHours().toString(), // 时
- "M+": date.getMinutes().toString(), // 分
- "S+": date.getSeconds().toString() // 秒
- // 有其他格式化字符需求可以继续添加,必须转化成字符串
- };
- for (let k in opt) {
- ret = new RegExp("(" + k + ")").exec(fmt);
- if (ret) {
- fmt = fmt.replace(
- ret[1],
- ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")
- );
- }
- }
- return fmt;
- };
- export const getWecomType = (agentFrom: string) => {
- switch (agentFrom) {
- case 'ssb':
- return 0;
- case 'hbs':
- return 1;
- case 'stoneLikePaint':
- return 2;
- case 'goldShop':
- return 3;
- case 'dg':
- return 4;
- default:
- return 0; // 默认为0
- }
- }
- export const getAgentFrom = (WecomType: number) => {
- switch (WecomType) {
- case 0://经销商
- return 'ssb';
- case 1://好邦手
- return 'hbs';
- case 2://服务商
- return 'stoneLikePaint';
- case 3://金牌店
- return 'goldShop';
- case 4://导购
- return 'dg';
- default:
- return 'ssb'; // 默认为经销商
- }
- }
- export const toLBHome = () => {
- router.replace('/');
- }
- export const toXiaoChengxu = (appid) => {
- let url = window.location.href.split("#")[0];
- wx.ready(function () {
- wx.checkJsApi({
- jsApiList: ["agentConfig", "launchMiniprogram"], // 需要检测的JS接口列表
- success: function (res) {
- const formData = new FormData();
- formData.append('url', url);
- formData.append('agent', '1');
- wecomTicket(formData).then(response => {
- if (response.status == 200) {
- let yingyongData = response.Data;
- wx.agentConfig({
- corpid: yingyongData.appid, // 必填,企业微信的corpid,必须与当前登录的企业一致
- agentid: process.env.VUE_APP_AGENTID, // 必填,企业微信的应用id (e.g. 1000247)
- timestamp: yingyongData.timestamp, // 必填,生成签名的时间戳
- nonceStr: yingyongData.noncestr, // 必填,生成签名的随机串
- signature: yingyongData.signature, // 必填,签名,见附录-JS-SDK使用权限签名算法
- jsApiList: ["launchMiniprogram"], //必填,传入需要使用的接口名称
- success: function (res) {
- wx.invoke(
- "launchMiniprogram",
- {
- appid: appid, // 需跳转的小程序appid
- path: "" // 所需跳转的小程序内页面路径及参数。非必填
- },
- function (res) {
- if (res.err_msg == "launchMiniprogram:ok") {
- // 正常
- console.log("正常");
- } else {
- // 错误处理
- }
- }
- );
- },
- fail: function (res) {
- if (res.errMsg.indexOf("function not exist") > -1) {
- alert("版本过低请升级");
- }
- }
- });
- }
- });
- }
- });
- });
- }
- // 获取微信API授权信息
- export const getWxconfig = () => {
- const jsApiList = ['getSetting', 'authorize', 'showModal', 'openSetting', 'downloadFile', 'saveImageToPhotosAlbum'];
- let url = window.location.href.split("#")[0];
- const formData = new FormData();
- formData.append('url', url);
- formData.append('agent', '1');
- wecomTicket(formData).then(response => {
- if (response.status == 200) {
- let qiyeData = response.Data;
- wx.agentConfig({
- debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
- corpid: qiyeData.appid, // 必填,企业微信的corpid,必须与当前登录的企业一致
- agentid: process.env.VUE_APP_AGENTID, // 必填,企业微信的应用id (e.g. 1000247)
- timestamp: qiyeData.timestamp, // 必填,生成签名的时间戳
- nonceStr: qiyeData.noncestr, // 必填,生成签名的随机串
- signature: qiyeData.signature, // 必填,签名,见附录-JS-SDK使用权限签名算法
- jsApiList: [...jsApiList], //必填,传入需要使用的接口名称
- success: function (res) {
- console.log('获取签名成功');
- },
- fail: function (res) {
- console.log(res);
- if (res.errMsg.indexOf('function not exist') > -1) {
- alert('版本过低请升级');
- }
- },
- });
- }
- });
- }
|