methods.ts
7.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
import { baseURL } from './http'
// immuneStatus: { 1:'',2:'',3: '',4: '' }
const GlobalData = {
examineState: { 0: '去认证', 10: '审核中', 30: '认证失败', 20: '认证成功', 'err': '状态码错误' },
incomeTypeList: { 1: '问诊订单', 2: '提现', 3: '下级分销', 'err': '状态码错误' },
ReceivePatients: { 0: '暂不接诊', 1: '在线坐诊', 'err': '状态码错误' },
sexData: { 0: '未知', 1: '男', 2: '女', 'err': '状态码错误' },
MessageType: { 1: '系统通知', 2: '用户反馈', 'err': '状态码错误' },
consultationWay: { 10: '快速问诊', 21: '图文问诊', 22: '视频问诊', 23: '电话问诊', 'err': '状态码错误' },
isReply: { 0: '否', 1: '是', 'err': '状态码错误' },
paramsOrderState: ['', 20, 30, 40, 50, 50],
orderState: { 10: '待接诊', 20: '待问诊', 30: '问诊中', 40: '问诊结束', 50: '已取消', 60: '已退款', 'err': '状态码错误' },
paramsstate: ['', 0, 1, 2],
state: { 0: '待支付', 1: '待发货', 2: '已发货', 3: '已完成', 4: '已取消', 'err': '状态码错误' },
isSterilization: { 0: '未绝育', 1: '已绝育', 'err': '状态码错误' }, // 是否绝育
petSex: { 0: '母', 1: '公', 'err': '状态码错误' },
immuneStatus: { 1: '已免疫', 2: '未免疫', 3: '免疫不全', 4: '免疫不详', 'err': '状态码错误' },
feedType: { 1: '配方粮', 2: '配方粮+零食', 3: '只吃人食物', 4: '自制犬猫粮', 'err': '状态码错误' },
batheFrequency: { 1: '一周一次(狗狗)', 2: '洗澡频次不规律', 3: '想起来才洗', 4: '定期洗澡(猫猫)', 'err': '状态码错误' },
timeFrame: { 1: '<7天', 2: '<1个月', 3: '<3个月', 4: '3个月以上', 'err': '状态码错误' },
petType: { 10: '猫', 20: '狗', 30: '异宠', 'err': '状态码错误' },
isAgain: { 1: '是', 0: '否', 'err': '状态码错误' },
symptom: { 1: '呕吐', 2: '软便拉稀', 3: '皮肤问题', 4: '眼睛问题', 5: '泌尿问题', 6: '绝育', 7: '疫苗', 8: '驱虫', 9: '养护问题', 10: '其他', 'err': '状态码错误' },
renewExamineState: { 0: '待审核', 1: '审核通过', 2: '审核驳回', 6: '审核驳回', 'err': '状态码错误' },
logisticsState: { 0: '待发货', 1: '已发货', 2: '已完成', 3: '已退货', 'err': '暂无' },
account: { 1: '微信', 2: '支付宝', 'err': '状态码错误' },
doctorUserType: { '10': '猫猫', '20': '狗狗', '30': '异宠' }
}
export default {
optData(key: string) {
return GlobalData[key]
},
optObjectValue(object: string, key: string | number, err: number | string = 'err') {
return GlobalData[object][key] || GlobalData[object][err]
},
// 上传图片
upload(url: string, callBack: (e: any) => void) {
let arr = {}
uni.chooseImage({
count: 3,
success: (chooseImageRes: any) => {
const tempFilePaths = chooseImageRes.tempFilePaths
console.log(chooseImageRes, '执行了几次')
chooseImageRes.tempFilePaths.map((_: string[]) => {
uni.uploadFile({
url: baseURL + url, //仅为示例,非真实的接口地址
filePath: _,
name: 'file',
// header: {
// 'content-type': 'multipart/form-data'
// },
formData: {
user: 'test',
token: uni.getStorageSync('token')
},
success: uploadFileRes => {
// console.log(JSON.parse(uploadFileRes.data), '图片路径')
arr['upImg'] = JSON.parse(uploadFileRes.data)['message']
callBack(arr)
arr = {}
}
})
})
}
})
},
//支付
pay(res: any) {
if (res.appId) {
uni.requestPayment({
provider: 'wxpay',
timeStamp: res.timeStamp, // 时间戳(单位:秒)
nonceStr: res.nonceStr, // 随机字符串1
package: res.package, // 固定值
signType: res.signType, // 签名,这里用的 MD5/RSA 签名
appid: res.appId, // 微信开放平台 - 应用 - AppId,注意和微信小程序、公众号 AppId 可能不一致1
paySign: res.paySign,
success(res) {
console.log('支付成功')
uni.showToast({ title: '支付成功~' })
setTimeout(() => {
uni.navigateBack()
}, 1500)
},
fail(e) {
console.log('支付失败', e)
uni.showToast({ title: '支付取消~', icon: 'none' })
setTimeout(() => {
uni.navigateBack()
}, 1500)
}
})
}
},
/**
* Add the object as a parameter to the URL
* @param baseUrl url
* @param obj
* @returns {string}
* eg:
* let obj = {a: '3', b: '4'}
* setObjToUrlParams('www.baidu.com', obj)
* ==>www.baidu.com?a=3&b=4
*/
setObjToUrlParams(baseUrl: string, obj: any): string {
let parameters = ''
for (const key in obj) {
// parameters += key + '=' + encodeURIComponent(obj[key]) + '&'
parameters += key + '=' + obj[key] + '&'
}
parameters = parameters.replace(/&$/, '')
return /\?$/.test(baseUrl) ? baseUrl + parameters : baseUrl.replace(/\/?$/, '?') + parameters
},
isJSON(str: string) {
try {
JSON.parse(str);
return true;
} catch (e) {
return false;
}
},
downFile(fileName: string) {
if (fileName == '' || fileName == undefined) return ''
if (fileName.indexOf(baseURL) > -1 || fileName.indexOf('http://') > -1 || fileName.indexOf('https://') > -1) return fileName
return baseURL + fileName
},
formatStr(str: string, val: string) {
if (str == null || str == undefined) return val || ''
return str
},
// 提示,一秒后返回上一页
timeCallBack(title: string = '修改成功', millisecond: number = 1500, delta: number = 1) {
uni.showToast({ title, icon: 'none' })
setTimeout(() => uni.navigateBack({ delta }), millisecond)
},
jumpUrl(url: string, handler?: (...arg: any) => any) {
uni.navigateTo({ url, events: typeof handler === 'function' && handler() })
},
relaunchUrl(url: string) {
uni.reLaunch({ url })
},
backUrl(delta: number = 1) {
uni.navigateBack({ delta })
},
previewImage(img: string) {
uni.previewImage({
urls: [img],
longPressActions: {
itemList: ['发送给朋友', '保存图片', '收藏'],
success: function (data) { },
fail: function (err) { }
}
})
},
copyText(text: string) {
//#ifndef H5
uni.setClipboardData({
data: String(text),
success: () => uni.$u.toast('复制成功')
});
//#endif
// #ifdef H5
setTimeout(() => {
if (!document.queryCommandSupported('copy')) {
uni.showToast({
title: '浏览器不支持',
icon: 'none',
duration: 2000
});
return;
}
let textarea = document.createElement("textarea")
textarea.value = text
textarea.readOnly = "readOnly"
document.body.appendChild(textarea)
textarea.select() // 选择对象
textarea.setSelectionRange(0, text.length) //核心
let result = document.execCommand("copy") // 执行浏览器复制命令
if (result) {
uni.$u.toast('复制成功')
}
textarea.remove()
}, 500);
// #endif
}
}