更改扫码api、添加邮箱绑定功能
diff --git a/App.vue b/App.vue
index 47af5bb..fa9f0db 100644
--- a/App.vue
+++ b/App.vue
@@ -5,6 +5,8 @@
},
onLaunch() {
let that = this
+
+ //获取平台信息
uni.getSystemInfo({
success(res) {
uni.setStorageSync('platform', res.platform)
@@ -18,7 +20,7 @@
let version = v + '(' + c + ')'
that.globalData.version = version
- //获取uuid
+ //获取设备uuid
plus.device.getInfo({
success(res) {
let uuid = res.uuid
diff --git a/manifest.json b/manifest.json
index 6672599..632e48e 100644
--- a/manifest.json
+++ b/manifest.json
@@ -1,215 +1,262 @@
{
- "name" : "大理市民卡",
- "appid" : "__UNI__6DDB720",
- "description" : "大理市民服务app",
- "versionName" : "2.1.0",
- "versionCode" : 5,
- "transformPx" : false,
- "app-plus" : {
- // APP-VUE分包,可提APP升启动速度,2.7.12开始支持,兼容微信小程序分包方案,默认关闭
- "compatible" : {
- "ignoreVersion" : true //true为忽略版本检查框
- },
- "optimization" : {
- "subPackages" : true
- },
- "safearea" : {
- "bottom" : {
- "offset" : "none"
- }
- },
- "splashscreen" : {
- "alwaysShowBeforeRender" : true,
- "waiting" : true,
- "autoclose" : true,
- "delay" : 0
- },
- "usingComponents" : true,
- "nvueCompiler" : "uni-app",
- "compilerVersion" : 3,
- "modules" : {
- "FaceID" : {},
- "Fingerprint" : {},
- "Maps" : {},
- "Geolocation" : {}
- },
- "distribute" : {
- "android" : {
- "permissions" : [
- "<uses-feature android:name=\"android.hardware.camera\"/>",
- "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
- "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
- "<uses-permission android:name=\"android.permission.CAMERA\"/>",
- "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
- "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
- "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
- "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
- "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
- "<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>",
- "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
- "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
- "<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
- "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
- "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
- "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>",
- "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
- ],
- "permissionExternalStorage" : {
- "request" : "none",
- "prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
- },
- "permissionPhoneState" : {
- "request" : "none",
- "prompt" : "为保证您正常、安全地使用,需要获取设备识别码(部分手机提示为获取手机号码)使用权限,请允许。"
- },
- "abiFilters" : [ "armeabi-v7a", "arm64-v8a" ]
- },
- "ios" : {},
- "sdkConfigs" : {
- "ad" : {},
- "maps" : {
- "amap" : {
- "appkey_ios" : "301567cad1afe899587917e803441d60",
- "appkey_android" : "6e97c7069def9d8f0f3aa3d421ce196b"
- }
- },
- "geolocation" : {
- "amap" : {
- "__platform__" : [ "ios", "android" ],
- "appkey_ios" : "301567cad1afe899587917e803441d60",
- "appkey_android" : "6e97c7069def9d8f0f3aa3d421ce196b"
- }
- }
- },
- "icons" : {
- "android" : {
- "hdpi" : "unpackage/res/icons/72x72.png",
- "xhdpi" : "unpackage/res/icons/96x96.png",
- "xxhdpi" : "unpackage/res/icons/144x144.png",
- "xxxhdpi" : "unpackage/res/icons/192x192.png"
- },
- "ios" : {
- "appstore" : "unpackage/res/icons/1024x1024.png",
- "ipad" : {
- "app" : "unpackage/res/icons/76x76.png",
- "app@2x" : "unpackage/res/icons/152x152.png",
- "notification" : "unpackage/res/icons/20x20.png",
- "notification@2x" : "unpackage/res/icons/40x40.png",
- "proapp@2x" : "unpackage/res/icons/167x167.png",
- "settings" : "unpackage/res/icons/29x29.png",
- "settings@2x" : "unpackage/res/icons/58x58.png",
- "spotlight" : "unpackage/res/icons/40x40.png",
- "spotlight@2x" : "unpackage/res/icons/80x80.png"
- },
- "iphone" : {
- "app@2x" : "unpackage/res/icons/120x120.png",
- "app@3x" : "unpackage/res/icons/180x180.png",
- "notification@2x" : "unpackage/res/icons/40x40.png",
- "notification@3x" : "unpackage/res/icons/60x60.png",
- "settings@2x" : "unpackage/res/icons/58x58.png",
- "settings@3x" : "unpackage/res/icons/87x87.png",
- "spotlight@2x" : "unpackage/res/icons/80x80.png",
- "spotlight@3x" : "unpackage/res/icons/120x120.png"
- }
- }
- },
- "splashscreen" : {
- "androidStyle" : "default"
- }
- },
- "nativePlugins" : {
- "KJ-JPush" : {
- "ios_appkey" : "d644d997f2cab0551ff704a3",
- "android_channel" : "huawei",
- "android_appkey" : "d644d997f2cab0551ff704a3",
- "ios_channel" : "appstore",
- "__plugin_info__" : {
- "name" : "【离线包、源码优惠出售】极光推送(ios、andorid)",
- "description" : "【不维护试用合适再购买3.33块】离线包源码优惠价66块,购买源码加QQ:543610866",
- "platforms" : "Android,iOS",
- "url" : "https://ext.dcloud.net.cn/plugin?id=1009",
- "android_package_name" : "com.dalicitycard.app",
- "ios_bundle_id" : "com.dalicitycard.app",
- "isCloud" : true,
- "bought" : 1,
- "pid" : "1009",
- "parameters" : {
- "ios_appkey" : {
- "des" : "发布ios时,必填,填写极光推送的APPKEY",
- "key" : "JPUSH_APPKEY",
- "value" : "${ios_appkey}"
- },
- "android_channel" : {
- "des" : "发布android时,必填,填写发布渠道,如不知道,填写:huawei",
- "key" : "JPUSH_CHANNEL",
- "value" : "${android_channel}"
- },
- "android_appkey" : {
- "des" : "发布android时,必填,填写极光推送的APPKEY",
- "key" : "JPUSH_APPKEY",
- "value" : "${android_appkey}"
- },
- "ios_channel" : {
- "des" : "发布ios时,必填,填写发布渠道,如不知道,填写:appstore",
- "key" : "JPUSH_CHANNEL",
- "value" : "${ios_channel}"
- }
- }
- }
- }
- }
- },
- "quickapp" : {},
- "mp-weixin" : {
- "appid" : "wxc458a08d7fb5b4d3",
- "setting" : {
- "urlCheck" : true,
- "es6" : false,
- "minified" : true,
- "postcss" : true
- },
- "optimization" : {
- "subPackages" : true
- },
- "usingComponents" : true,
- "permission" : {
- "scope.userLocation" : {
- "desc" : "你的位置信息将用于小程序位置接口的效果展示"
- }
- }
- },
- "mp-alipay" : {
- "usingComponents" : true,
- "component2" : true
- },
- "mp-baidu" : {
- "usingComponents" : true,
- "appid" : ""
- },
- "mp-toutiao" : {
- "usingComponents" : true
- },
- "h5" : {
- "template" : "template.h5.html",
- "router" : {
- "mode" : "hash",
- "base" : ""
- },
- "optimization" : {
- "treeShaking" : {
- "enable" : true
- }
- },
- "title" : "uView UI"
- },
- "channel_list" : [
- {
- "id" : "baidu",
- "name" : "百度应用市场"
- }
- ]
+ "name": "大理市民卡",
+ "appid": "__UNI__6DDB720",
+ "description": "大理市民服务app",
+ "versionName": "2.1.0",
+ "versionCode": 7,
+ "transformPx": false,
+ "app-plus": {
+ // APP-VUE分包,可提APP升启动速度,2.7.12开始支持,兼容微信小程序分包方案,默认关闭
+ "compatible": {
+ "ignoreVersion": true //true为忽略版本检查框
+ },
+ "optimization": {
+ "subPackages": true
+ },
+ "safearea": {
+ "bottom": {
+ "offset": "none"
+ }
+ },
+ "splashscreen": {
+ "alwaysShowBeforeRender": true,
+ "waiting": true,
+ "autoclose": true,
+ "delay": 0
+ },
+ "usingComponents": true,
+ "nvueCompiler": "uni-app",
+ "compilerVersion": 3,
+ "modules": {
+ "FaceID": {},
+ "Fingerprint": {},
+ "Maps": {},
+ "Geolocation": {}
+ },
+ "distribute": {
+ "android": {
+ "permissions": [
+ "<uses-feature android:name=\"android.hardware.camera\"/>",
+ "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
+ "<uses-permission android:name=\"android.permission.CAMERA\"/>",
+ "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+ "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
+ "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
+ "<uses-permission android:name=\"android.permission.READ_CONTACTS\"/>",
+ "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
+ "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
+ "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+ "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+ "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>",
+ "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
+ ],
+ "permissionExternalStorage": {
+ "request": "none",
+ "prompt": "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
+ },
+ "permissionPhoneState": {
+ "request": "none",
+ "prompt": "为保证您正常、安全地使用,需要获取设备识别码(部分手机提示为获取手机号码)使用权限,请允许。"
+ },
+ "abiFilters": ["armeabi-v7a", "arm64-v8a"]
+ },
+ "ios": {
+ "privacyDescription": {
+ "NSCameraUsageDescription": "使用扫一扫识别二维码需要访问相机权限",
+ "NSPhotoLibraryUsageDescription": "使用app特制功能需要访问相机权限"
+ }
+ },
+ "sdkConfigs": {
+ "ad": {},
+ "maps": {
+ "amap": {
+ "appkey_ios": "301567cad1afe899587917e803441d60",
+ "appkey_android": "6e97c7069def9d8f0f3aa3d421ce196b"
+ }
+ },
+ "geolocation": {
+ "amap": {
+ "__platform__": ["ios", "android"],
+ "appkey_ios": "301567cad1afe899587917e803441d60",
+ "appkey_android": "6e97c7069def9d8f0f3aa3d421ce196b"
+ }
+ }
+ },
+ "icons": {
+ "android": {
+ "hdpi": "unpackage/res/icons/72x72.png",
+ "xhdpi": "unpackage/res/icons/96x96.png",
+ "xxhdpi": "unpackage/res/icons/144x144.png",
+ "xxxhdpi": "unpackage/res/icons/192x192.png"
+ },
+ "ios": {
+ "appstore": "unpackage/res/icons/1024x1024.png",
+ "ipad": {
+ "app": "unpackage/res/icons/76x76.png",
+ "app@2x": "unpackage/res/icons/152x152.png",
+ "notification": "unpackage/res/icons/20x20.png",
+ "notification@2x": "unpackage/res/icons/40x40.png",
+ "proapp@2x": "unpackage/res/icons/167x167.png",
+ "settings": "unpackage/res/icons/29x29.png",
+ "settings@2x": "unpackage/res/icons/58x58.png",
+ "spotlight": "unpackage/res/icons/40x40.png",
+ "spotlight@2x": "unpackage/res/icons/80x80.png"
+ },
+ "iphone": {
+ "app@2x": "unpackage/res/icons/120x120.png",
+ "app@3x": "unpackage/res/icons/180x180.png",
+ "notification@2x": "unpackage/res/icons/40x40.png",
+ "notification@3x": "unpackage/res/icons/60x60.png",
+ "settings@2x": "unpackage/res/icons/58x58.png",
+ "settings@3x": "unpackage/res/icons/87x87.png",
+ "spotlight@2x": "unpackage/res/icons/80x80.png",
+ "spotlight@3x": "unpackage/res/icons/120x120.png"
+ }
+ }
+ },
+ "splashscreen": {
+ "androidStyle": "default"
+ }
+ },
+ "nativePlugins": {
+ "KJ-JPush": {
+ "ios_appkey": "d644d997f2cab0551ff704a3",
+ "android_channel": "huawei",
+ "android_appkey": "d644d997f2cab0551ff704a3",
+ "ios_channel": "appstore",
+ "__plugin_info__": {
+ "name": "【离线包、源码优惠出售】极光推送(ios、andorid)",
+ "description": "【不维护试用合适再购买3.33块】离线包源码优惠价66块,购买源码加QQ:543610866",
+ "platforms": "Android,iOS",
+ "url": "https://ext.dcloud.net.cn/plugin?id=1009",
+ "android_package_name": "com.dalicitycard.app",
+ "ios_bundle_id": "com.dalicitycard.app",
+ "isCloud": true,
+ "bought": 1,
+ "pid": "1009",
+ "parameters": {
+ "ios_appkey": {
+ "des": "发布ios时,必填,填写极光推送的APPKEY",
+ "key": "JPUSH_APPKEY",
+ "value": "${ios_appkey}"
+ },
+ "android_channel": {
+ "des": "发布android时,必填,填写发布渠道,如不知道,填写:huawei",
+ "key": "JPUSH_CHANNEL",
+ "value": "${android_channel}"
+ },
+ "android_appkey": {
+ "des": "发布android时,必填,填写极光推送的APPKEY",
+ "key": "JPUSH_APPKEY",
+ "value": "${android_appkey}"
+ },
+ "ios_channel": {
+ "des": "发布ios时,必填,填写发布渠道,如不知道,填写:appstore",
+ "key": "JPUSH_CHANNEL",
+ "value": "${ios_channel}"
+ }
+ }
+ }
+ },
+ "Mpaas-Scan": {
+ "AppId": "ONEX1D49B6A241152",
+ "WorkspaceId": "default",
+ "License": "zvI8Ix1QYGLcZWTu9pfuwRxhPIERACTAjd2rQ66ky3zCCWLCCZDiISir89uVn4y+OGn0jcPIX/mMsZ8NIZXjfsgvB/m5MzVeaycZ7WRC4cxzoXjMSeN+AYty28ssiJJMdP1kFtIAoy/80VPeOBhl+yozUFaaTtDWEyMqT6XujcLWVuTJp8WHBvvLj0KmoleFV+OAusd+9keF9aSSHGwSwM1IbU9M4JMZsKWmLaKBpC77Ag0MVUhhdnY6MZ5Mff/KDivd5oGu1hbzXBPfoUlEkNppe3gwbxRTUM6k0OndyczPgZdVL9gC1/+UGH7kwiBNjegibMdySzsQuujbtISwFA==",
+ "__plugin_info__": {
+ "name": "支付宝原生扫码插件",
+ "description": "支付宝原生扫码组件,包体积仅0.7MB,15分钟即可完成接入。同时,mPaaS提供「扫码分析」大盘",
+ "platforms": "Android,iOS",
+ "url": "https://ext.dcloud.net.cn/plugin?id=2636",
+ "android_package_name": "com.dalicitycard.app",
+ "ios_bundle_id": "com.dalicitycard.app",
+ "isCloud": true,
+ "bought": 1,
+ "pid": "2636",
+ "parameters": {
+ "AppId": {
+ "des": "Android平台的AppId,请填写Android的config文件中的appId对应的值",
+ "key": "mobilegw.appid",
+ "value": ""
+ },
+ "WorkspaceId": {
+ "des": "Android平台的WorkspaceId,请填写Android的config文件中的workspaceId对应的值",
+ "key": "workspaceId",
+ "value": ""
+ },
+ "License": {
+ "des": "Android平台的License,,请填写Android的config文件中的mpaasConfigLicense对应的值",
+ "key": "mpaasConfigLicense",
+ "value": ""
+ }
+ }
+ }
+ }
+ }
+ },
+ "quickapp": {},
+ "mp-weixin": {
+ "appid": "wxc458a08d7fb5b4d3",
+ "setting": {
+ "urlCheck": true,
+ "es6": false,
+ "minified": true,
+ "postcss": true
+ },
+ "optimization": {
+ "subPackages": true
+ },
+ "usingComponents": true,
+ "permission": {
+ "scope.userLocation": {
+ "desc": "你的位置信息将用于小程序位置接口的效果展示"
+ }
+ }
+ },
+ "mp-alipay": {
+ "usingComponents": true,
+ "component2": true
+ },
+ "mp-baidu": {
+ "usingComponents": true,
+ "appid": ""
+ },
+ "mp-toutiao": {
+ "usingComponents": true
+ },
+ "h5": {
+ "template": "template.h5.html",
+ "router": {
+ "mode": "hash",
+ "base": ""
+ },
+ "optimization": {
+ "treeShaking": {
+ "enable": true
+ }
+ },
+ "title": "uView UI",
+ "devServer": {
+ "proxy": {
+ "/api": {
+ "target": "http://yy.dlsmk.cn:8080/portal/mobileapi",
+ "changeOrigin": true,
+ "pathRewrite": {
+ "^/api": ""
+ }
+ }
+ }
+ }
+ },
+ "channel_list": [{
+ "id": "baidu",
+ "name": "百度应用市场"
+ }]
}
diff --git a/nativeplugins/Mpaas-Scan/ios/meta.config b/nativeplugins/Mpaas-Scan/ios/meta.config
new file mode 100644
index 0000000..ba57269
--- /dev/null
+++ b/nativeplugins/Mpaas-Scan/ios/meta.config
@@ -0,0 +1,20 @@
+{
+ "appId":"ONEX1D49B6A241152",
+ "appKey":"ONEX1D49B6A241152_IOS",
+ "base64Code":"/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAADAAMDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxFobXF3hJ2CNJ8/SWNZW5Q44QGJ22kFAwABAQAAAAQAAB4AAADAAAAAFAAAAIcAAAABAAAAAAAAAAAAAAAAAAAAAAAAABUAAAABAAAAAAAAAAAAAAAIAAAAAAAAAIsS5F93AAAAAAAAAAAAAABVWwBOfR0SrSIJ/ITdz28UX/oxae3WSeRaVQOdDjghZJQishE/xL5hzbrlqopUvulP71I8xpshIPAkvf91cmdjbngBAwF4dWZ3AwECBgEAEQEBCAFxdHNqb3bKCYAt+YFC+8IbpBxqp74LC7j6fXLnMEqcQlQvaO5IR4BCNipPRSfJukf+oiU2lvm71+Ba47r7eap/jeZSiZTB/9k96/6v6FK4vFMesbWed8FNIqh/Rz3sBFQXRol3yBlCkBypL6kbs0ywBJNO2Var/EAQ2rZ+bi0fGGf35nZZ86KpoPJYcOX7FIZAqVydeCkgh4vX81kFBVScq4Mn3HtAkztKRBKyNdxNn1C7XGGCLmC1PQoww36UL3E3Y2ijFM2Ct4GdlzCviFGr1P8AAMKgGAYAAAAA",
+ "bundleId":"com.dalicitycard.app",
+ "rootPath":"mpaas/ios/ONEX1D49B6A241152-default",
+ "workspaceId":"default",
+ "syncport":"443",
+ "syncserver":"mpaas-mss.aliyuncs.com",
+ "logGW":"https://mpaas-mas-loggw.aliyuncs.com",
+ "pushPort":"443",
+ "pushGW":"mpaas-mps.aliyuncs.com",
+ "mpaasapi":"https://cn-hangzhou-component-gw.cloud.alipay.com/mgw.htm",
+ "rpcGW":"https://mpaas-mgs.aliyuncs.com/mgw.htm",
+ "mrtcserver":"wss://cn-hangzhou-mrtc.cloud.alipay.com/ws",
+ "mpaasConfigVersion":"V_1.0",
+ "mpaasConfigEnv":"ONEX_CLOUD",
+ "mpaasConfigPluginExpired":"",
+ "mpaasConfigLicense":"Db4aL4Dac1G7SekUIk75KL9Wo2BAjGZC8O/I6tzSNxlQmS3e8uhUQHFZ/ELbMeDlfC8MC1C8Qg5vtMIwO8stxh22ZqyAPMsWnmBcuYpbQASxl+15WvtL5zvrrDXjJzlvfy6Sg95dtZsyHpUvZZ3gg4GtMLE/vBJxz0RIxaOEIEHA8A3lZ9dJJCC33LMZzID8pC3B9N7Wsltv2q9310SiOpafBS9aUc1qYWsDY8crzF+ocCt27sB0aNnK5SiCosr/Xw/pxmPeSQXUX8oHPXbhNnS8ZViQbxqsXuyE3Aj5G9X4Ys/nRRTaJo29W32PTMNzcASH1v6VMIq/h1+8zqR5Pw=="
+}
\ No newline at end of file
diff --git a/pages.json b/pages.json
index 244b707..94efca2 100644
--- a/pages.json
+++ b/pages.json
@@ -6,20 +6,20 @@
"path": "pages/sub_tabbar/index",
"style": {
"navigationBarTitleText": "首页",
- "enablePullDownRefresh":true,
+ "enablePullDownRefresh": true,
"app-plus": {
"titleNView": false,
- "pullToRefresh":{
- "support":true,
- "range":"20%",
- "contentdown":{
- "caption":"下拉刷新"
+ "pullToRefresh": {
+ "support": true,
+ "range": "20%",
+ "contentdown": {
+ "caption": "下拉刷新"
},
- "contentover":{
- "caption":"正在刷新"
+ "contentover": {
+ "caption": "正在刷新"
},
- "contentrefresh":{
- "caption":"刷新成功"
+ "contentrefresh": {
+ "caption": "刷新成功"
}
}
}
@@ -45,19 +45,19 @@
"path": "pages/sub_tabbar/active",
"style": {
"navigationBarTitleText": "活动",
- "enablePullDownRefresh":true,
+ "enablePullDownRefresh": true,
"app-plus": {
- "pullToRefresh":{
- "support":true,
- "range":"20%",
- "contentdown":{
- "caption":"下拉刷新"
+ "pullToRefresh": {
+ "support": true,
+ "range": "20%",
+ "contentdown": {
+ "caption": "下拉刷新"
},
- "contentover":{
- "caption":"正在刷新"
+ "contentover": {
+ "caption": "正在刷新"
},
- "contentrefresh":{
- "caption":"刷新成功"
+ "contentrefresh": {
+ "caption": "刷新成功"
}
}
}
@@ -375,6 +375,12 @@
}
},
{
+ "path": "bindEmail/index",
+ "style": {
+ "navigationBarTitleText": "设置邮箱"
+ }
+ },
+ {
"path": "integralQuery/index",
"style": {
"navigationBarTitleText": "积分查询"
@@ -391,8 +397,7 @@
]
}, {
"root": "pages/sub_medical",
- "pages": [
- {
+ "pages": [{
"path": "appointment",
"style": {
"navigationBarTitleText": "预约挂号"
diff --git a/pages/sub_basic/login/index.vue b/pages/sub_basic/login/index.vue
index 7da6209..050f84c 100644
--- a/pages/sub_basic/login/index.vue
+++ b/pages/sub_basic/login/index.vue
@@ -122,7 +122,6 @@
platform: platform
}
that.$u.post('/login',params).then(res => {
-
uni.setStorageSync("token", res.token)
uni.setStorageSync("uid", res.uid)
uni.setStorageSync("userid", res.userid)
@@ -135,10 +134,11 @@
uni.setStorageSync("localpwd", res.localpwd)
uni.setStorageSync("phone", tel)
uni.setStorageSync("phoneX", res.phone)
- uni.setStorageSync("imgurl", res.imgurl)
+ uni.setStorageSync("imageurl", res.imageurl)
uni.setStorageSync("idno", res.idno)
uni.setStorageSync("cardno", res.citizenCardNo)
uni.setStorageSync("bankcardno", res.bankCardNo)
+ uni.setStorageSync("email", res.email)
let ranNum = Math.ceil(Math.random() * 25)
let c = String.fromCharCode(65 + ranNum)
// #ifndef MP-WEIXIN
@@ -213,6 +213,7 @@
uni.setStorageSync("idno", res.idno)
uni.setStorageSync("cardno", res.citizenCardNo)
uni.setStorageSync("bankcardno", res.bankCardNo)
+ uni.setStorageSync("email", res.email)
if(res.needcheck){
uni.navigateTo({
url:'/pages/sub_basic/verification/index?data=' + JSON.stringify(params)
diff --git a/pages/sub_basic/verification/index.vue b/pages/sub_basic/verification/index.vue
index 2f60329..f3050b0 100644
--- a/pages/sub_basic/verification/index.vue
+++ b/pages/sub_basic/verification/index.vue
@@ -91,6 +91,7 @@
uni.setStorageSync("idno", res.idno)
uni.setStorageSync("cardno", res.citizenCardNo)
uni.setStorageSync("bankcardno", res.bankCardNo)
+ uni.setStorageSync("email", res.email)
uni.showToast({
title: "验证成功",
icon: "none",
diff --git a/pages/sub_index/scanView/index.vue b/pages/sub_index/scanView/index.vue
index a9515a8..dbf9b26 100644
--- a/pages/sub_index/scanView/index.vue
+++ b/pages/sub_index/scanView/index.vue
@@ -21,42 +21,39 @@
onLoad(option) {
let that = this
let userid = uni.getStorageSync("userid")
- that.userid = userid
+ //that.userid = userid
let url = option.url
- // if (url.indexOf("?") > 0) {
- // url = url + "&userid=" + userid
- // } else {
- // url = url + "?userid=" + userid
- // }
+ if (url.indexOf("?") > 0) {
+ url = url + "&userid=" + userid
+ } else {
+ url = url + "?userid=" + userid
+ }
+ console.log(url)
that.src = url
- //console.log(url)
},
onReady() {
- let userid = uni.getStorageSync("userid")
- var pages = getCurrentPages();
- var page = pages[pages.length - 1];
- var currentWebview = page.$getAppWebview();
- var url = currentWebview.children()[0].getURL();
- var wx = currentWebview.children()[0]
- //console.log('=== url ===', url);
- wx.addEventListener('loaded', function(e) {
- //console.log('Loaded: ' + wx.getURL());
- let newUrl = wx.getURL()
- if (newUrl.indexOf("userid") > -1) {
- //console.log(1)
- return false
- }
- if (newUrl.indexOf("?") > 0) {
- newUrl = newUrl + "&userid=" + userid
- } else {
- newUrl = newUrl + "?userid=" + userid
- }
- //console.log(newUrl)
- wx.loadURL(newUrl)
- }, false);
- },
- methods: {
-
+ // let userid = uni.getStorageSync("userid")
+ // var pages = getCurrentPages()
+ // var page = pages[pages.length - 1]
+ // var currentWebview = page.$getAppWebview()
+ // var url = currentWebview.children()[0].getURL()
+ // var wx = currentWebview.children()[0]
+ // console.log('=== url ===', url);
+ // wx.addEventListener('loaded', function(e) {
+ // console.log('Loaded: ' + wx.getURL());
+ // let newUrl = wx.getURL()
+ // if (newUrl.indexOf("userid") > -1) {
+ // //console.log(1)
+ // return false
+ // }
+ // if (newUrl.indexOf("?") > 0) {
+ // newUrl = newUrl + "&userid=" + userid
+ // } else {
+ // newUrl = newUrl + "?userid=" + userid
+ // }
+ // //console.log(newUrl)
+ // wx.loadURL(newUrl)
+ // }, false);
},
}
</script>
diff --git a/pages/sub_medical/addPatient.vue b/pages/sub_medical/addPatient.vue
index 94cfda8..332bb0c 100644
--- a/pages/sub_medical/addPatient.vue
+++ b/pages/sub_medical/addPatient.vue
@@ -57,7 +57,7 @@
name,sex,cardno,mobile,
hospitalcode:''
}
- that.$u.post('/medicineapi/medicalcard/add',params).then(res=>{
+ that.$u.post('/medicalapi/medicalcard/add',params).then(res=>{
console.log(res.data)
})
}
diff --git a/pages/sub_medical/appointment.vue b/pages/sub_medical/appointment.vue
index 5de78b7..cf7fd6a 100644
--- a/pages/sub_medical/appointment.vue
+++ b/pages/sub_medical/appointment.vue
@@ -7,7 +7,7 @@
<view class="appointment-search">
<u-search placeholder="搜索医院名称" v-model="hospial" :show-action="false" bg-color="#ffffff" @focus="toPath('/pages/sub_medical/hospital')"></u-search>
</view>
- <view class="appointment-record">
+ <!-- <view class="appointment-record">
<u-cell-group>
<u-cell-item title="我的挂号记录" value="查看更多" @click="toPath('/pages/sub_medical/record')"></u-cell-item>
</u-cell-group>
@@ -40,18 +40,18 @@
<view class="appointment-record-nomsg" v-else>
<text>暂无挂号记录</text>
</view>
- <!-- <view class="appointment-record-btn">
+ <view class="appointment-record-btn">
<u-button :plain="true" size="mini" type="primary" shape="circle">取消预约</u-button>
- </view> -->
- </view>
+ </view>
+ </view> -->
<view class="appointment-hospital">
<u-cell-group>
<u-cell-item title="本地医院" value="查看更多" @click="toPath('/pages/sub_medical/hospital')"></u-cell-item>
</u-cell-group>
<view class="appointment-hospital-msg" v-if="hospital_list.length != 0">
- <view class="appointment-hospital-msg-box" @click="toPath('/pages/sub_medical/outpatient')" v-for="(v,i) in hospital_list" :key="i">
+ <view class="appointment-hospital-msg-box" @click="toPath('/pages/sub_medical/cashFlow?hospitalcode=' + v.hospitalcode)" v-for="(v,i) in hospital_list" :key="i">
<view class="appointment-hospital-msg-left">
- <u-image :src="v.src" width="100" mode="widthFix"></u-image>
+ <u-image :src="v.icon" width="100" mode="widthFix"></u-image>
</view>
<view class="appointment-hospital-msg-right">
<view class="appointment-hospital-msg-right-item">
@@ -87,6 +87,7 @@
}
},
onLoad() {
+ uni.setNavigationBarTitle({title:'医院查询'})
this.get_hospital_list()
this.getLocal()
},
@@ -115,9 +116,14 @@
pagesize:3,
name:''
}
- that.$u.get('/medicineapi/hospital/list',params).then(res=>{
- that.hospital_list = res.data.list
- console.log(res.data.list)
+ that.$u.get('/medicalapi/hospital/list',params).then(res=>{
+ let url = uni.getStorageSync('imageurl')
+ let list = res.data.list
+ list.forEach(item=>{
+ item.icon = url + '/' + item.picid
+ })
+ that.hospital_list = list
+ console.log(list)
})
}
}
diff --git a/pages/sub_medical/cashFlow.vue b/pages/sub_medical/cashFlow.vue
index efe1ff2..6f5091b 100644
--- a/pages/sub_medical/cashFlow.vue
+++ b/pages/sub_medical/cashFlow.vue
@@ -9,20 +9,23 @@
<view v-if="leftOright">
<scroll-view scroll-y :enable-back-to-top="true" @scrolltolower="" class="scrollView">
<view class="cashFlow-ul">
- <view class="cashFlow-ul-item">
+ <view class="cashFlow-ul-item" v-for = '(v,i) in unpay_list' :key='i' @click="toPath('/pages/sub_medical/pay?msg=' + JSON.stringify(v)+'&id=unpay')">
<view class="cashFlow-ul-item-left">
<view class="cashFlow-ul-item-left-top">
<u-image src="./images/pay.png" width="80" height="80"></u-image>
- <text>挂号费</text>
+ <text>{{v.mergingName}}</text>
</view>
<view class="cashFlow-ul-item-left-bottom">
- <text class="cashFlow-ul-item-left-bottom-bold">01</text>
- <text class="cashFlow-ul-item-left-bottom-normal">天内缴费,截止日期2020/10/28 23:59:59</text>
+ <!-- <text class="cashFlow-ul-item-left-bottom-bold">科类:</text> -->
+ <text class="cashFlow-ul-item-left-bottom-normal" style="margin-right: 50rpx;">科类:{{v.subjectName}}</text>
+ <!-- <text class="cashFlow-ul-item-left-bottom-bold"></text> -->
+ <text class="cashFlow-ul-item-left-bottom-normal">医生:{{v.doctorName}}</text>
</view>
</view>
<view class="cashFlow-ul-item-right">
- <text>¥23.5</text>
+ <text>¥{{v.mergingSubtotal}}</text>
</view>
+ <view class="cashFlow-ul-item-status" v-if="v.status == 'wip'">订单支付中</view>
</view>
</view>
</scroll-view>
@@ -30,20 +33,21 @@
<view v-if="!leftOright">
<scroll-view scroll-y :enable-back-to-top="true" @scrolltolower="" class="scrollView">
<view class="cashFlow-ul">
- <view class="cashFlow-ul-item">
+ <view class="cashFlow-ul-item" v-for = '(v,i) in payed_list' :key='i' @click="toPath('/pages/sub_medical/pay?msg=' + JSON.stringify(v) +'&id=payed')">
<view class="cashFlow-ul-item-left">
<view class="cashFlow-ul-item-left-top">
<u-image src="./images/pay.png" width="80" height="80"></u-image>
- <text>挂号费</text>
+ <text>{{v.mergingname}}</text>
</view>
<view class="cashFlow-ul-item-left-bottom">
<text class="cashFlow-ul-item-left-bottom-normal">缴费日期:</text>
- <text class="cashFlow-ul-item-left-bottom-normal">2020-10-28 12:30:59</text>
+ <text class="cashFlow-ul-item-left-bottom-normal">{{v.paytime}}</text>
</view>
</view>
<view class="cashFlow-ul-item-right">
- <text>¥23.5</text>
+ <text>¥{{v.mergingsubtotal}}</text>
</view>
+ <view class="cashFlow-ul-item-status" v-if="!v.notifyStatus">通知医院</view>
</view>
</view>
</scroll-view>
@@ -55,13 +59,55 @@
export default {
data() {
return {
- leftOright: true
+ leftOright: true,
+ unpay_list:[],
+ hospitalcode:'',
+ payed_list:[]
}
},
+ onLoad(options){
+ let hospitalcode = options.hospitalcode
+ this.hospitalcode = hospitalcode
+ // this.get_unpay_list(hospitalcode)
+ },
methods: {
+ get_unpay_list(code){
+ let that = this
+ let param = {
+ hospitalcode : code
+ }
+ that.$u.post('/medicalapi/unpayed/list',param).then(res=>{
+ that.unpay_list = res.data
+ })
+ },
+ get_payed_list(code){
+ let that = this
+ let param = {
+ hospitalcode : code,
+ pageno:1,
+ pagesize:100
+ }
+ that.$u.post('/medicalapi/payed/list',param).then(res=>{
+ let list = res.data
+ list.forEach(item=>{
+ item.paytime = item.transdate.substr(0, 4) +
+ "-" + item.transdate.substr(4, 2) + "-" + item.transdate.substr(6, 2) + " " + item.transtime.substr(0, 2) + ":" +
+ item.transtime.substr(2, 2) + ":" + item.transtime.substr(4, 2)
+ })
+ that.payed_list = list
+ })
+ },
changeTurnoverList(e) {
this.leftOright = e
+ if(e){
+ this.get_unpay_list(this.hospitalcode)
+ }else{
+ this.get_payed_list(this.hospitalcode)
+ }
},
+ },
+ onShow(){
+ this.get_unpay_list(this.hospitalcode)
}
}
</script>
@@ -117,14 +163,27 @@
align-items: center;
padding: 30rpx 20rpx;
border-radius: 10rpx;
+ margin-bottom: 30rpx;
+ position: relative;
+ &-status{
+ position: absolute;
+ bottom: 20rpx;
+ right: 20rpx;
+ font-size: 26rpx;
+ color: #18B566;
+ }
&-left{
display: flex;
flex-direction: column;
justify-content: space-between;
+ width: 75%;
&-top{
display: flex;
align-items: center;
text{
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
font-size: 36rpx;
margin-left: 10rpx;
font-weight: bold;
diff --git a/pages/sub_medical/hospital.vue b/pages/sub_medical/hospital.vue
index 1b66fc1..7cf850d 100644
--- a/pages/sub_medical/hospital.vue
+++ b/pages/sub_medical/hospital.vue
@@ -67,7 +67,7 @@
pagesize: 10,
name: name
}
- that.$u.get('/medicineapi/hospital/list', params).then(res => {
+ that.$u.get('/medicalapi/hospital/list', params).then(res => {
that.hospital_list = res.data.list
that.notice = '没有搜索到此关键词'
console.log(res.data.list)
diff --git a/pages/sub_medical/patient.vue b/pages/sub_medical/patient.vue
index f6d549c..094a73b 100644
--- a/pages/sub_medical/patient.vue
+++ b/pages/sub_medical/patient.vue
@@ -62,7 +62,7 @@
deleteMenber(){
let that = this
let cardid = '123'
- that.$u.post('/medicineapi/medicalcard/delete/' + cardid).then(res=>{
+ that.$u.post('/medicalapi/medicalcard/delete/' + cardid).then(res=>{
console.log(res.data)
})
}
diff --git a/pages/sub_medical/pay.vue b/pages/sub_medical/pay.vue
index 751d7d3..c763a23 100644
--- a/pages/sub_medical/pay.vue
+++ b/pages/sub_medical/pay.vue
@@ -1,30 +1,59 @@
<template>
<view class="pay">
<u-cell-group>
- <u-cell-item title="挂号费" :title-style="tstyle" :arrow="false">
+ <u-cell-item :title="msg.mergingName" :title-style="tstyle" :arrow="false">
<u-image slot="icon" src="./images/cush.png" width="60" height="60" mode="aspectFit"></u-image>
</u-cell-item>
- <u-cell-item title="缴费金额" :arrow="false" value="23.50元" :value-style="vstyle"></u-cell-item>
+ <u-cell-item title="缴费金额" :arrow="false" :value="msg.mergingSubtotal+'元'" :value-style="vstyle"></u-cell-item>
</u-cell-group>
<u-cell-group>
- <u-cell-item title="商户名称" :arrow="false" value="大理市第一人民医院"></u-cell-item>
- <u-cell-item title="截止日期" :arrow="false" value="2020/10/28 23:29:29"></u-cell-item>
- <u-cell-item title="交易状态" :arrow="false" value="未支付"></u-cell-item>
+ <u-cell-item title="医院名称" :arrow="false" :value="msg.hospitalName"></u-cell-item>
+ <u-cell-item title="订单号" :arrow="false" :value="msg.billNo"></u-cell-item>
+ <u-cell-item title="就诊日期" :arrow="false" :value="msg.date"></u-cell-item>
+ <!-- <u-cell-item title="截止日期" :arrow="false" value="2020/10/28 23:29:29"></u-cell-item> -->
+ <u-cell-item title="交易状态" :arrow="false" :value="msg.status_ok" :value-style="msg.status=='wip'?status_style:vstyle"></u-cell-item>
</u-cell-group>
- <u-button @click="" :custom-style="payBtn">立即支付</u-button>
+ <u-button @click="msg.status=='wip'?query():open()" :custom-style="payBtn" v-if="kind =='unpay'">{{msg.status=='wip'?'查询订单状态':'立即支付'}}</u-button>
+ <u-button @click="" :custom-style="payBtn" v-if="kind =='payed'&& msg.notifyStatus == false">通知医院</u-button>
+ <!-- 支付密码弹框 -->
+ <uni-popup ref="showPassword" class="pwd-wrapper">
+ <view class="uni-tip uni-pwd">
+ <text class="uni-tip-title">请输入支付密码</text>
+ <view class="pwd-text-wrap">
+ <password-input @tap="openKeyBoard('number')" :length="length" :gutter="0" :list="numberList"></password-input>
+ </view>
+ </view>
+ </uni-popup>
+ <keyboard-package ref="number" @onInput="onInput" @onDelete="onDelete" @onConfirm="onConfirm" :disableDot="true" />
</view>
</template>
<script>
- export default{
- data(){
- return{
+ import keyboardPackage from "./z_components/keyboard-package/keyboard-package.vue"
+ import passwordInput from "./z_components/password-input/password-input.vue"
+ import uniPopup from './z_components/uni-popup/uni-popup.vue'
+ export default {
+ components: {
+ uniPopup,
+ keyboardPackage,
+ passwordInput
+ },
+ data() {
+ return {
+ numberList: [],
+ length: 6,
+ type: 'number',
tstyle: {
marginLeft: '10rpx',
fontWeight: 'bold'
},
vstyle: {
- color: '#FF6F6F'
+ color: '#FF6F6F',
+ fontSize:'30rpx'
+ },
+ status_style: {
+ color: '#18B566',
+ fontSize:'30rpx'
},
payBtn: {
backgroundColor: ' #2FA8E1',
@@ -35,23 +64,191 @@
border: '1px solid #2FA8E1',
marginTop: '50rpx'
},
+ msg: {},
+ kind:''
}
},
- methods:{
-
+ methods: {
+ // 呼起键盘
+ openKeyBoard(key) {
+ this.type = key;
+ this.$refs[key].open();
+ },
+ // 输入密码
+ onInput(val) {
+ this.numberList.push(val)
+ if (this.numberList.length == this.length) {
+ this.$refs.showPassword.close()
+ this.$refs[this.type].close()
+ this.pay()
+ }
+ },
+ //完成输入点击完成
+ onConfirm() {
+ let length = this.numberList.length
+ if (length == this.length) {
+ this.$refs.showPassword.close()
+ this.$refs[this.type].close()
+ } else {
+ this.numberList = []
+ uni.showToast({
+ title: '密码错误',
+ icon: 'none'
+ })
+ }
+ },
+ //删除密码
+ onDelete(val) {
+ this.numberList.pop(val)
+ },
+ //打开密码输入框
+ open() {
+ this.numberList = []
+ this.$refs.showPassword.open()
+ this.openKeyBoard('number')
+ },
+ pay() {
+ let that = this
+ let pwd = ''
+ let billno = that.msg.billNo
+ that.numberList.forEach(item => {
+ pwd += item + ''
+ })
+ let param = {
+ paypwd: pwd,
+ billno
+ }
+ that.$u.post('/medicalapi/pay', param).then(res => {
+ let status = res.status
+ let obj = that.msg
+ let date = res.transdate.substr(0, 4) +
+ "-" + res.transdate.substr(4, 2) + "-" + res.transdate.substr(6, 2) + " " + res.transtime.substr(0, 2) + ":" +
+ res.transtime.substr(2, 2) + ":" + res.transtime.substr(4, 2)
+ setTimeout(()=>{
+ uni.navigateTo({
+ url: `/pages/sub_medical/payResult?status=${status}&msg=${JSON.stringify(obj)}&date=${date}`
+ })
+ },1500)
+ })
+ },
+ query() {
+ let that = this
+ let billno = that.msg.billNo
+ that.$u.post('/medicalapi/pay/query/' + billno, {}).then(res => {
+ let status = res.status
+ if(status == 'wip'){
+ uni.showToast({
+ icon:'none',
+ title:'订单正在支付中,请稍等...'
+ })
+ }else{
+ let status = res.status
+ let obj = that.msg
+ let date = res.transdate.substr(0, 4) +
+ "-" + res.transdate.substr(4, 2) + "-" + res.transdate.substr(6, 2) + " " + res.transtime.substr(0, 2) + ":" +
+ res.transtime.substr(2, 2) + ":" + res.transtime.substr(4, 2)
+ setTimeout(()=>{
+ uni.navigateTo({
+ url: `/pages/sub_medical/payResult?status=${status}&msg=${JSON.stringify(obj)}&date=${date}`
+ })
+ },1500)
+ }
+ })
+ }
},
- onLoad(){
-
+ onLoad(options) {
+ let msg = JSON.parse(options.msg)
+ let id = options.id
+ this.kind = id
+ if(id == 'unpay'){
+ msg.date = msg.medicalDate.substr(0, 4) + '-' + msg.medicalDate.substr(4, 2) + '-' + msg.medicalDate.substr(6, 2) +
+ ' ' + msg.medicalDate.substr(8, 2) + ':' + msg.medicalDate.substr(10, 2) + ':' + msg.medicalDate.substr(12, 2)
+ switch (msg.status) {
+ case 'init':
+ msg.status_ok = '未支付';
+ break
+ case 'wip':
+ msg.status_ok = '订单正在支付中...'
+ break
+ }
+ this.msg = msg
+ }else if(id == 'payed'){
+ msg.date = msg.medicaldate.substr(0, 4) + '-' + msg.medicaldate.substr(4, 2) + '-' + msg.medicaldate.substr(6, 2) +
+ ' ' + msg.medicaldate.substr(8, 2) + ':' + msg.medicaldate.substr(10, 2) + ':' + msg.medicaldate.substr(12, 2)
+ msg.billNo = msg.billno
+ msg.mergingSubtotal = msg.mergingsubtotal
+ msg.mergingName = msg.mergingname
+ msg.status_ok = '已完成'
+ msg.hospitalName = msg.hospitalname
+ this.msg = msg
+ }
}
}
</script>
<style lang="scss" scoped>
- .u-cell-box{
+ .u-cell-box {
margin-bottom: 30rpx;
}
- .pay{
+
+ .pay {
font-family: "PingFang-SC-Medium";
}
-
+
+ .pwd-wrapper {
+ background: rgba(0, 0, 0, .4);
+ z-index: 1;
+
+ /deep/.uni-popup__wrapper.uni-custom.center {
+ .uni-popup__wrapper-box {
+ position: unset;
+ max-width: none;
+ max-height: none;
+ overflow-y: hidden;
+ background: none;
+ margin-top: -70rpx;
+ padding: 60rpx 30rpx 30rpx;
+ }
+
+ .pwd-text-wrap {
+ width: 100%;
+ padding: 50rpx 43rpx 60rpx;
+ box-sizing: border-box;
+ }
+ }
+
+ .uni-tip {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ flex-direction: column;
+ /* #endif */
+ margin-top: -60rpx;
+ width: 570rpx;
+ background-color: #fff;
+ border-radius: 12rpx;
+ position: relative;
+ }
+
+ .uni-pwd {
+ width: 630rpx;
+ }
+
+ .uni-tip-icon-wrap {
+ text-align: center;
+ }
+
+ .uni-tip-content {
+ padding: 31rpx 40rpx 60rpx;
+ font-size: 30rpx;
+ color: #6F737A;
+ }
+ }
+
+ .uni-tip-title {
+ margin-top: 30rpx;
+ text-align: center;
+ font-weight: 500;
+ font-size: 34rpx;
+ color: $uni-text-color;
+ }
</style>
diff --git a/pages/sub_medical/payResult.vue b/pages/sub_medical/payResult.vue
index bd09b48..e36fd54 100644
--- a/pages/sub_medical/payResult.vue
+++ b/pages/sub_medical/payResult.vue
@@ -1,23 +1,23 @@
<template>
<view class="payResult">
- <view class="payResult-status" v-if="msg.billstatus ==2">
+ <view class="payResult-status" v-if="msg.billstatus ==1">
<icon type="success" size="60" color="#3599FB"></icon>
<text class="payResult-status-text">支付成功</text>
</view>
- <view class="payResult-status" v-if="msg.billstatus !=2">
+ <view class="payResult-status" v-if="msg.billstatus ==0">
<icon type="warn" size="60"></icon>
<text class="payResult-status-text">支付失败</text>
</view>
- <view class="payResult-money" v-if="msg.billstatus ==2"><text>-¥{{msg.amount?msg.amount:'0.00'}}</text></view>
+ <view class="payResult-money" v-if="msg.billstatus ==1"><text>-¥{{msg.mergingSubtotal?msg.mergingSubtotal:'0.00'}}</text></view>
<view class="payResult-msg">
<u-cell-group>
- <u-cell-item title="商户名" :value="msg.shopname?msg.shopname:'未知商户'" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
- <u-cell-item title="交易方式" :value="msg.billname?msg.billname:'未知方式'" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
+ <u-cell-item title="医院名称" :value="msg.hospitalName?msg.hospitalName:'未知医院'" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
+ <u-cell-item title="交易方式" value="大理市民卡" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
<u-cell-item title="交易时间" :value="msg.paytime?msg.paytime:'未知时间'" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
- <u-cell-item title="订单号" :value="msg.refno?msg.refno:'未知订单号'" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
+ <u-cell-item title="订单号" :value="msg.billNo?msg.billNo:'未知订单号'" :arrow="false" bg-color="#FFFFFF"></u-cell-item>
</u-cell-group>
</view>
- <u-button class="btn":custom-style="btn" @tap="goBack">返回首页</u-button>
+ <u-button class="btn":custom-style="btn" @tap="goBack">返回待缴费列表</u-button>
</view>
</template>
@@ -39,17 +39,28 @@
},
onLoad(options) {
let that = this;
- if (options.data) {
- let msg = JSON.parse(options.data);
- msg.amount = msg.amount.toFixed(2);
- that.msg = msg
+ let msg = JSON.parse(options.msg)
+ let status = options.status
+ let date = options.date
+ switch(status){
+ case 'fail':
+ msg.billstatus = 0;
+ break
+ case 'success':
+ msg.billstatus = 1;
+ break
+ case 'wip': //订单状态等待中 需查询
+ msg.billstatus = 2;
+ break
}
+ msg.paytime = date
+ that.msg = msg
},
methods: {
goBack() {
- uni.switchTab({
- url: '/pages/sub_tabbar/index'
- });
+ uni.navigateBack({
+ delta:2
+ })
}
}
}
@@ -73,6 +84,12 @@
margin-top: 30rpx;
}
}
+ &-money{
+ padding: 30rpx;
+ font-size: 50rpx;
+ text-align: right;
+ color: #2FA8E1;
+ }
&-msg{
margin-top: 50rpx;
}
diff --git a/pages/sub_medical/z_components/keyboard-package/keyboard-package.vue b/pages/sub_medical/z_components/keyboard-package/keyboard-package.vue
new file mode 100644
index 0000000..0d92542
--- /dev/null
+++ b/pages/sub_medical/z_components/keyboard-package/keyboard-package.vue
@@ -0,0 +1,299 @@
+<template>
+ <uni-popup :custom="true" type="bottom" ref="keyboardPackage">
+ <view class="keyboardbox">
+ <view class="numkeyboard" v-if="type==='number'">
+ <view class="num-area">
+ <view class="row" v-for="(item,index) in numKeybordList" :key="index">
+ <view :class="['item',ite===0?'z':'',(disableDot && ite==='.')?'disabled':'']" v-for="(ite,idx) in item"
+ hover-class="active" :hover-start-time="0" :hover-stay-time="5" :key="idx" @tap="input(ite)">{{ite}}</view>
+ </view>
+ </view>
+ <view class="btn-area">
+ <view :class="['item','del']" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="deleteVal">
+ 删除
+ </view>
+ <view class="confirem item" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="confirm">
+ 完成
+ </view>
+ </view>
+ </view>
+
+ <view class="numkeyboard" v-if="type==='idCard'">
+ <view class="num-area">
+ <view class="row" v-for="(item,index) in idCardList" :key="index">
+ <view :class="['item',ite===0?'z':'',(disableDot && ite==='.')?'disabled':'']" v-for="(ite,idx) in item"
+ hover-class="active" :hover-start-time="0" :hover-stay-time="5" :key="idx" @tap="input(ite)">{{ite}}</view>
+ </view>
+ </view>
+ <view class="btn-area">
+ <view :class="['item','del']" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="deleteVal">
+ 删除
+ </view>
+ <view class="confirem item" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="confirm">
+ 完成
+ </view>
+ </view>
+ </view>
+
+ <view class="platenumber" v-if="type==='plateNumber'">
+ <view class="header">
+ <view @tap="active=active===1?2:1" hover-class="active" :hover-start-time="0" :hover-stay-time="5">{{active===1?'地区':'车牌号'}}</view>
+ <view hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="confirm">完成</view>
+ </view>
+ <view class="main">
+ <view class="normal" v-if="active===1">
+ <view class="row" v-for="(item,index) in EngKeyBoardList" :key="index">
+ <view class="item" v-for="(ite,idx) in item" :key="idx" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="input(ite)">
+ {{ite}}
+ </view>
+ <view class="item img" v-if="index===EngKeyBoardList.length-1" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="deleteVal">
+ <image src="/static/delete.png" mode=""></image>
+ </view>
+ </view>
+ </view>
+ <view class="area" v-if="active===2">
+ <view class="row" v-for="(item,index) in areaList" :key="index">
+ <view class="item" v-for="(ite,idx) in item" :key="idx" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="input(ite)">
+ {{ite}}
+ </view>
+ <view class="item img" v-if="index===EngKeyBoardList.length-1" hover-class="active" :hover-start-time="0" :hover-stay-time="5" @tap="deleteVal">
+ <image src="/static/delete.png" mode=""></image>
+ </view>
+ </view>
+ </view>
+ </view>
+ </view>
+ </view>
+ <view class="safe-area" v-if="safeAreaInsetBottom"></view>
+ </uni-popup>
+</template>
+
+<script>
+ import uniPopup from "../uni-popup/uni-popup.vue"
+ export default {
+ components: {
+ uniPopup
+ },
+ props: {
+ type: {
+ type: String,
+ default: 'number'
+ },
+ safeAreaInsetBottom: { //是否设置安全区
+ type: Boolean,
+ default: false
+ },
+ disableDot: { //数字键盘是否禁止点击.仅type为number生效
+ type: Boolean,
+ default: false
+ }
+ },
+ data() {
+ return {
+ numKeybordList: [
+ [1, 2, 3],
+ [4, 5, 6],
+ [7, 8, 9],
+ [0, '.']
+ ],
+ idCardList: [
+ [1, 2, 3],
+ [4, 5, 6],
+ [7, 8, 9],
+ [0, 'X']
+ ],
+ areaList: [
+ ['京', '沪', '粤', '津', '冀', '豫', '云', '辽', '黑', '湘'],
+ ['皖', '鲁', '苏', '浙', '赣', '鄂', '桂', '甘', '晋', '陕'],
+ ['蒙', '吉', '闽', '贵', '渝', '川', '青', '琼', '宁'],
+ ['藏', '新', '使', '港', '澳', '学']
+ ],
+ EngKeyBoardList: [
+ [1, 2, 3, 4, 5, 6, 7, 8, 9, 0],
+ ['Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'],
+ ['A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L'],
+ ['Z', 'X', 'C', 'V', 'B', 'N', 'M']
+ ],
+ active: 1
+ };
+ },
+ methods: {
+ open() {
+ this.$refs.keyboardPackage.open();
+ },
+ confirm() {
+ this.$emit('onConfirm');
+ },
+ deleteVal() {
+ this.$emit('onDelete');
+ },
+ input(val) {
+ if (val === '.' && this.disableDot) return;
+ this.$emit('onInput', val);
+ },
+ close() {
+ this.$refs.keyboardPackage.close();
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .keyboardbox {
+ background-color: #FFFFFF;
+
+ .numkeyboard {
+ height: 432rpx;
+ display: flex;
+ background-color: #ebedf0;
+
+ .btn-area {
+ width: 180rpx;
+ height: 100%;
+ display: flex;
+ flex-direction: column;
+
+ .item {
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ flex-grow: 1;
+ }
+
+ .del {
+ background-color: #ebedf0;
+ color: #333;
+
+ &.active {
+ background-color: #f1f3f5;
+ }
+ }
+
+ .confirem {
+ background-color: #1989fa;
+ color: #FFFFFF;
+
+ &.active {
+ background-color: #0570db;
+ }
+ }
+ }
+
+ .num-area {
+ flex-grow: 1;
+ display: flex;
+ flex-wrap: wrap;
+
+ .row {
+ width: 100%;
+ height: 25%;
+ display: flex;
+ margin-top: 1px;
+
+ .item {
+ flex-grow: 1;
+ height: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background-color: #FFFFFF;
+ border-right: 1px solid #ebedf0;
+ width: 33.33%;
+
+ &.active {
+ background-color: #ebedf0;
+ }
+
+ &.z {
+ flex-grow: 2;
+ width: 66.66%;
+ }
+
+ &.disabled {
+ background: #FFFFFF;
+ color: #B9B9B9;
+ }
+ }
+ }
+
+ }
+ }
+ }
+
+ .safe-area {
+ padding-bottom: 0rpx;
+ padding-bottom: constant(safe-area-inset-bottom);
+ padding-bottom: env(safe-area-inset-bottom);
+ }
+
+ .platenumber {
+ background-color: #f5f5f5;
+
+ .header {
+ height: 76rpx;
+ background-color: #FFFFFF;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 28rpx;
+ border-top: 1px solid #f5f5f5;
+
+ &>view {
+ padding: 0 45rpx;
+ color: #00a7ea;
+ height: 100%;
+ display: flex;
+ align-items: center;
+ &.active {
+ background-color: #ebedf0;
+ }
+ }
+ }
+
+ .main {
+ height: 435rpx;
+
+ .row {
+ margin: 13rpx 0;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+
+ .item {
+ width: 56rpx;
+ height: 94rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ background-color: #FFFFFF;
+ border-radius: 6rpx;
+ margin: 0 7rpx;
+ font-size: 24rpx;
+ &.active {
+ background-color: #ebedf0;
+ }
+
+ &.img {
+ background-color: #c2cacc;
+ width: 94rpx;
+
+ &.active {
+ background-color: #ddd;
+ }
+
+ &>image {
+ width: 49rpx;
+ height: 48rpx;
+ }
+ }
+ }
+ }
+
+ }
+
+ }
+ // /deep/.uni-popup__mask.uni-bottom {
+ // background:rgba(0, 0, 0, .4);
+ // }
+</style>
diff --git a/pages/sub_medical/z_components/password-input/password-input.vue b/pages/sub_medical/z_components/password-input/password-input.vue
new file mode 100644
index 0000000..f02de6c
--- /dev/null
+++ b/pages/sub_medical/z_components/password-input/password-input.vue
@@ -0,0 +1,103 @@
+<template>
+ <view class="box">
+ <view :class="['item',list.length===index?'fakecursor':'']" v-for="(item,index) in length" :key="item" :style="{margin:formatMargin(gutter)}">
+ <view :class="['circle',(index<list.length)?'dot':'']"></view>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ props:{
+ length:{//长度只允许为6和4
+ type:Number,
+ default:6,
+ validator(val){
+ if(val!==6 && val !==4){
+ return false;
+ }
+ return true;
+ }
+ },
+ gutter:{
+ type:Number,
+ default:0
+ },
+ list:{
+ type:Array,
+ default:function(){
+ return [];
+ }
+ }
+ },
+ data() {
+ return {
+ };
+ },
+ computed:{
+
+ },
+ methods:{
+ formatMargin(gutter){
+ return 0 + ' ' + gutter+'rpx';
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .box {
+ display: flex;
+ .item{
+ position: relative;
+ background-color: #FFFFFF;
+ height: 90upx;
+ width: 90upx;
+ flex-grow: 1;
+ flex-shrink: 0;
+ border: 1px solid #D9DCE0;
+ border-right: 0;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ &:nth-child(6) {
+ border-right: 1px solid #D9DCE0;
+ }
+ .circle{
+ width: 18rpx;
+ height: 18rpx;
+ border-radius: 50%;
+ background-color: #fff;
+ &.dot{
+ background-color: #000;
+ }
+ }
+ }
+ }
+
+ .fakecursor::after {
+ content: '';
+ display: block;
+ width: 1px;
+ height: 32rpx;
+ animation: blink 1s infinite steps(1, start);
+ position: absolute;
+ left: 50%;
+ top: 50%;
+ margin-top: -16rpx;
+ }
+
+ @keyframes blink {
+ 0% {
+ background-color: white;
+ }
+
+ 50% {
+ background-color: black;
+ }
+
+ 100% {
+ background-color: white;
+ }
+ }
+</style>
diff --git a/pages/sub_medical/z_components/uni-popup/message.js b/pages/sub_medical/z_components/uni-popup/message.js
new file mode 100644
index 0000000..6688e84
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/message.js
@@ -0,0 +1,29 @@
+export default {
+ created() {
+ if (this.type === 'message') {
+ // 获取自组件对象
+ this.maskShow = false
+ this.children = null
+ }
+ },
+ created() {
+ if (this.type === 'message') {
+ // 不显示遮罩
+ this.maskShow = false
+ // 获取子组件对象
+ this.childrenMsg = null
+ }
+ },
+ methods: {
+ customOpen() {
+ if (this.childrenMsg) {
+ this.childrenMsg.open()
+ }
+ },
+ customClose() {
+ if (this.childrenMsg) {
+ this.childrenMsg.close()
+ }
+ }
+ }
+}
diff --git a/pages/sub_medical/z_components/uni-popup/popup.js b/pages/sub_medical/z_components/uni-popup/popup.js
new file mode 100644
index 0000000..2a7f22f
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/popup.js
@@ -0,0 +1,25 @@
+import message from './message.js';
+// 定义 type 类型:弹出类型:top/bottom/center
+const config = {
+ // 顶部弹出
+ top:'top',
+ // 底部弹出
+ bottom:'bottom',
+ // 居中弹出
+ center:'center',
+ // 消息提示
+ message:'top',
+ // 对话框
+ dialog:'center',
+ // 分享
+ share:'bottom',
+}
+
+export default {
+ data(){
+ return {
+ config:config
+ }
+ },
+ mixins: [message],
+}
diff --git a/pages/sub_medical/z_components/uni-popup/popup.vue b/pages/sub_medical/z_components/uni-popup/popup.vue
new file mode 100644
index 0000000..26b166b
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/popup.vue
@@ -0,0 +1,112 @@
+<template>
+ <uni-popup ref="showtip" :mask-click="false" >
+ <view class="uni-tip">
+ <view class="uni-tip-icon-wrap"><img class="uni-tip-icon" src="~@/static/tip.svg"></view>
+ <text class="uni-tip-title">{{title}}</text>
+ <text class="uni-tip-content">{{content}}</text>
+ <view class="uni-tip-group-button">
+ <text class="uni-tip-button" @click="cancel">取消</text>
+ <text class="uni-tip-button uni-tip-button-confirm" @click="confirm">确定</text>
+ </view>
+ </view>
+ </uni-popup>
+</template>
+
+<script>
+import uniPopup from "@/components/uni-popup/uni-popup.vue"
+export default {
+ components: {uniPopup},
+ props:{
+ title:{
+ type: String,
+ default:''
+ },
+ content:{
+ type: String,
+ default:''
+ },
+ isShowPopup: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data() {
+ return {
+
+ }
+ },
+ onLoad() {
+ console.log('测试',this.isShowPopup)
+ },
+ watch:{
+ isShowPopup(val) {
+ val ? this.$refs.showtip.open() : this.$refs.showtip.close()
+ console.log('显示',val)
+ }
+ },
+ methods:{
+ cancel() {
+ this.$refs.showtip.close()
+ },
+ confirm() {
+ this.$emit('confirm')
+ this.$refs.showtip.close()
+ },
+ }
+}
+</script>
+
+<style scoped lang="scss">
+.uni-tip {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ flex-direction: column;
+ /* #endif */
+ width: 570upx;
+ background-color: #fff;
+ border-radius: 12upx;
+ border: 1upx solid #D9DCE0;
+}
+.uni-pwd {
+ width: 630upx;
+}
+.uni-tip-icon-wrap {
+ text-align: center;
+}
+.uni-tip-icon {
+ text-align: center;
+ margin-top: 60upx;
+ width: 90upx;
+ height: 90upx;
+}
+.uni-tip-title {
+ margin-top: 30upx;
+ text-align: center;
+ font-weight: 500;
+ font-size: 34upx;
+ color: $uni-text-color;
+}
+.uni-tip-content {
+ padding: 31upx 40upx 60upx;
+ font-size: 30upx;
+ color: #6F737A;
+}
+.uni-tip-group-button {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ border-top: 1upx solid #D9DCE0;
+}
+.uni-tip-button {
+ flex: 1;
+ text-align: center;
+ font-size: 32upx;
+ color: #3b4144;
+ padding: 29upx 0;
+}
+.uni-tip-button-confirm {
+ border-left: 1upx solid #D9DCE0;
+ color: #1574DF;
+}
+</style>
diff --git a/pages/sub_medical/z_components/uni-popup/uni-popup-dialog.vue b/pages/sub_medical/z_components/uni-popup/uni-popup-dialog.vue
new file mode 100644
index 0000000..c91123c
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/uni-popup-dialog.vue
@@ -0,0 +1,243 @@
+<template>
+ <view class="uni-popup-dialog">
+ <view class="uni-dialog-title">
+ <text class="uni-dialog-title-text" :class="['uni-popup__'+dialogType]">{{title}}</text>
+ </view>
+ <view class="uni-dialog-content">
+ <text class="uni-dialog-content-text" v-if="mode === 'base'">{{content}}</text>
+ <input v-else class="uni-dialog-input" v-model="val" type="text" :placeholder="placeholder" :focus="focus" >
+ </view>
+ <view class="uni-dialog-button-group">
+ <view class="uni-dialog-button" @click="close">
+ <text class="uni-dialog-button-text">取消</text>
+ </view>
+ <view class="uni-dialog-button uni-border-left" @click="onOk">
+ <text class="uni-dialog-button-text uni-button-color">确定</text>
+ </view>
+ </view>
+
+ </view>
+</template>
+
+<script>
+ /**
+ * PopUp 弹出层-对话框样式
+ * @description 弹出层-对话框样式
+ * @tutorial https://ext.dcloud.net.cn/plugin?id=329
+ * @property {String} value input 模式下的默认值
+ * @property {String} placeholder input 模式下输入提示
+ * @property {String} type = [success|warning|info|error] 主题样式
+ * @value success 成功
+ * @value warning 提示
+ * @value info 消息
+ * @value error 错误
+ * @property {String} mode = [base|input] 模式、
+ * @value base 基础对话框
+ * @value input 可输入对话框
+ * @property {String} content 对话框内容
+ * @property {Boolean} beforeClose 是否拦截取消事件
+ * @event {Function} confirm 点击确认按钮触发
+ * @event {Function} close 点击取消按钮触发
+ */
+
+ export default {
+ name: "uniPopupDialog",
+ props: {
+ value: {
+ type: [String, Number],
+ default: ''
+ },
+ placeholder: {
+ type: [String, Number],
+ default: '请输入内容'
+ },
+ /**
+ * 对话框主题 success/warning/info/error 默认 success
+ */
+ type: {
+ type: String,
+ default: 'error'
+ },
+ /**
+ * 对话框模式 base/input
+ */
+ mode: {
+ type: String,
+ default: 'base'
+ },
+ /**
+ * 对话框标题
+ */
+ title: {
+ type: String,
+ default: '提示'
+ },
+ /**
+ * 对话框内容
+ */
+ content: {
+ type: String,
+ default: ''
+ },
+ /**
+ * 拦截取消事件 ,如果拦截取消事件,必须监听close事件,执行 done()
+ */
+ beforeClose: {
+ type: Boolean,
+ default: false
+ }
+ },
+ data() {
+ return {
+ dialogType: 'error',
+ focus: false,
+ val: ""
+ }
+ },
+ inject: ['popup'],
+ watch: {
+ type(val) {
+ this.dialogType = val
+ },
+ mode(val) {
+ if (val === 'input') {
+ this.dialogType = 'info'
+ }
+ },
+ value(val) {
+ this.val = val
+ }
+ },
+ created() {
+ // 对话框遮罩不可点击
+ this.popup.mkclick = false
+ if (this.mode === 'input') {
+ this.dialogType = 'info'
+ this.val = this.value
+ } else {
+ this.dialogType = this.type
+ }
+ },
+ mounted() {
+ this.focus = true
+ },
+ methods: {
+ /**
+ * 点击确认按钮
+ */
+ onOk() {
+ this.$emit('confirm', () => {
+ this.popup.close()
+ if (this.mode === 'input') this.val = this.value
+ }, this.mode === 'input' ? this.val : '')
+ },
+ /**
+ * 点击取消按钮
+ */
+ close() {
+ if (this.beforeClose) {
+ this.$emit('close', () => {
+ this.popup.close()
+ })
+ return
+ }
+ this.popup.close()
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .uni-popup-dialog {
+ width: 300px;
+ border-radius: 15px;
+ background-color: #fff;
+ }
+
+ .uni-dialog-title {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ justify-content: center;
+ padding-top: 15px;
+ padding-bottom: 5px;
+ }
+
+ .uni-dialog-title-text {
+ font-size: 16px;
+ font-weight: 500;
+ }
+
+ .uni-dialog-content {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ padding: 5px 15px 15px 15px;
+ }
+
+ .uni-dialog-content-text {
+ font-size: 14px;
+ color: #6e6e6e;
+ }
+
+ .uni-dialog-button-group {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ border-top-color: #f5f5f5;
+ border-top-style: solid;
+ border-top-width: 1px;
+ }
+
+ .uni-dialog-button {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+
+ flex: 1;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ height: 45px;
+ }
+
+ .uni-border-left {
+ border-left-color: #f0f0f0;
+ border-left-style: solid;
+ border-left-width: 1px;
+ }
+
+ .uni-dialog-button-text {
+ font-size: 14px;
+ }
+
+ .uni-button-color {
+ color: $uni-color-primary;
+ }
+
+ .uni-dialog-input {
+ flex: 1;
+ font-size: 14px;
+ }
+
+ .uni-popup__success {
+ color: $uni-color-success;
+ }
+
+ .uni-popup__warn {
+ color: $uni-color-warning;
+ }
+
+ .uni-popup__error {
+ color: $uni-color-error;
+ }
+
+ .uni-popup__info {
+ color: #909399;
+ }
+</style>
diff --git a/pages/sub_medical/z_components/uni-popup/uni-popup-message.vue b/pages/sub_medical/z_components/uni-popup/uni-popup-message.vue
new file mode 100644
index 0000000..a32bd00
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/uni-popup-message.vue
@@ -0,0 +1,116 @@
+<template>
+ <view class="uni-popup-message" :class="'uni-popup__'+[type]">
+ <text class="uni-popup-message-text" :class="'uni-popup__'+[type]+'-text'">{{message}}</text>
+ </view>
+</template>
+
+<script>
+
+ /**
+ * PopUp 弹出层-消息提示
+ * @description 弹出层-消息提示
+ * @tutorial https://ext.dcloud.net.cn/plugin?id=329
+ * @property {String} type = [success|warning|info|error] 主题样式
+ * @value success 成功
+ * @value warning 提示
+ * @value info 消息
+ * @value error 错误
+ * @property {String} message 消息提示文字
+ * @property {String} duration 显示时间,设置为 0 则不会自动关闭
+ */
+
+ export default {
+ name: 'UniPopupMessage',
+ props: {
+ /**
+ * 主题 success/warning/info/error 默认 success
+ */
+ type: {
+ type: String,
+ default: 'success'
+ },
+ /**
+ * 消息文字
+ */
+ message: {
+ type: String,
+ default: ''
+ },
+ /**
+ * 显示时间,设置为 0 则不会自动关闭
+ */
+ duration: {
+ type: Number,
+ default: 3000
+ }
+ },
+ inject: ['popup'],
+ data() {
+ return {}
+ },
+ created() {
+ this.popup.childrenMsg = this
+ },
+ methods: {
+ open() {
+ if (this.duration === 0) return
+ clearTimeout(this.popuptimer)
+ this.popuptimer = setTimeout(() => {
+ this.popup.close()
+ }, this.duration)
+ },
+ close() {
+ clearTimeout(this.popuptimer)
+ }
+ }
+ }
+</script>
+<style lang="scss" scoped>
+ .uni-popup-message {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ background-color: #e1f3d8;
+ padding: 10px 15px;
+ border-color: #eee;
+ border-style: solid;
+ border-width: 1px;
+ }
+ .uni-popup-message-text {
+ font-size: 14px;
+ padding: 0;
+ }
+
+ .uni-popup__success {
+ background-color: #e1f3d8;
+ }
+
+ .uni-popup__success-text {
+ color: #67C23A;
+ }
+
+ .uni-popup__warn {
+ background-color: #faecd8;
+ }
+
+ .uni-popup__warn-text {
+ color: #E6A23C;
+ }
+
+ .uni-popup__error {
+ background-color: #fde2e2;
+ }
+
+ .uni-popup__error-text {
+ color: #F56C6C;
+ }
+
+ .uni-popup__info {
+ background-color: #F2F6FC;
+ }
+
+ .uni-popup__info-text {
+ color: #909399;
+ }
+</style>
diff --git a/pages/sub_medical/z_components/uni-popup/uni-popup-share.vue b/pages/sub_medical/z_components/uni-popup/uni-popup-share.vue
new file mode 100644
index 0000000..4c11a13
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/uni-popup-share.vue
@@ -0,0 +1,165 @@
+<template>
+ <view class="uni-popup-share">
+ <view class="uni-share-title"><text class="uni-share-title-text">{{title}}</text></view>
+ <view class="uni-share-content">
+ <view class="uni-share-content-box">
+ <view class="uni-share-content-item" v-for="(item,index) in bottomData" :key="index" @click.stop="select(item,index)">
+ <image class="uni-share-image" :src="item.icon" mode="aspectFill"></image>
+ <text class="uni-share-text">{{item.text}}</text>
+ </view>
+
+ </view>
+ </view>
+ <view class="uni-share-button-box">
+ <button class="uni-share-button" @click="close">取消</button>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ name: 'UniPopupShare',
+ props: {
+ title: {
+ type: String,
+ default: '分享到'
+ }
+ },
+ inject: ['popup'],
+ data() {
+ return {
+ bottomData: [{
+ text: '微信',
+ icon: 'https://img-cdn-qiniu.dcloud.net.cn/uni-ui/grid-2.png',
+ name: 'wx'
+ },
+ {
+ text: '支付宝',
+ icon: 'https://img-cdn-qiniu.dcloud.net.cn/uni-ui/grid-8.png',
+ name: 'wx'
+ },
+ {
+ text: 'QQ',
+ icon: 'https://img-cdn-qiniu.dcloud.net.cn/uni-ui/gird-3.png',
+ name: 'qq'
+ },
+ {
+ text: '新浪',
+ icon: 'https://img-cdn-qiniu.dcloud.net.cn/uni-ui/grid-1.png',
+ name: 'sina'
+ },
+ {
+ text: '百度',
+ icon: 'https://img-cdn-qiniu.dcloud.net.cn/uni-ui/grid-7.png',
+ name: 'copy'
+ },
+ {
+ text: '其他',
+ icon: 'https://img-cdn-qiniu.dcloud.net.cn/uni-ui/grid-5.png',
+ name: 'more'
+ }
+ ]
+ }
+ },
+ created() {},
+ methods: {
+ /**
+ * 选择内容
+ */
+ select(item, index) {
+ this.$emit('select', {
+ item,
+ index
+ }, () => {
+ this.popup.close()
+ })
+ },
+ /**
+ * 关闭窗口
+ */
+ close() {
+ this.popup.close()
+ }
+ }
+ }
+</script>
+<style lang="scss" scoped>
+ .uni-popup-share {
+ background-color: #fff;
+ }
+ .uni-share-title {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ align-items: center;
+ justify-content: center;
+ height: 40px;
+ }
+ .uni-share-title-text {
+ font-size: 14px;
+ color: #666;
+ }
+ .uni-share-content {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ justify-content: center;
+ padding-top: 10px;
+ }
+
+ .uni-share-content-box {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ flex-wrap: wrap;
+ width: 360px;
+ }
+
+ .uni-share-content-item {
+ width: 90px;
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: column;
+ justify-content: center;
+ padding: 10px 0;
+ align-items: center;
+ }
+
+ .uni-share-content-item:active {
+ background-color: #f5f5f5;
+ }
+
+ .uni-share-image {
+ width: 30px;
+ height: 30px;
+ }
+
+ .uni-share-text {
+ margin-top: 10px;
+ font-size: 14px;
+ color: #3B4144;
+ }
+
+ .uni-share-button-box {
+ /* #ifndef APP-NVUE */
+ display: flex;
+ /* #endif */
+ flex-direction: row;
+ padding: 10px 15px;
+ }
+
+ .uni-share-button {
+ flex: 1;
+ border-radius: 50px;
+ color: #666;
+ font-size: 16px;
+ }
+
+ .uni-share-button::after {
+ border-radius: 50px;
+ }
+</style>
diff --git a/pages/sub_medical/z_components/uni-popup/uni-popup.vue b/pages/sub_medical/z_components/uni-popup/uni-popup.vue
new file mode 100644
index 0000000..50434e6
--- /dev/null
+++ b/pages/sub_medical/z_components/uni-popup/uni-popup.vue
@@ -0,0 +1,187 @@
+<template>
+ <view v-if="showPopup" class="uni-popup">
+ <view :class="[ani, animation ? 'ani' : '', !custom ? 'uni-custom' : '']" class="uni-popup__mask" @click="close(true)" />
+ <view :class="[type, ani, animation ? 'ani' : '', !custom ? 'uni-custom' : '']" class="uni-popup__wrapper" @click="close(true)">
+ <view class="uni-popup__wrapper-box" @click.stop="clear">
+ <slot />
+ </view>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ name: 'UniPopup',
+ props: {
+ // 开启动画
+ animation: {
+ type: Boolean,
+ default: true
+ },
+ // 弹出层类型,可选值,top: 顶部弹出层;bottom:底部弹出层;center:全屏弹出层
+ type: {
+ type: String,
+ default: 'center'
+ },
+ // 是否开启自定义
+ custom: {
+ type: Boolean,
+ default: false
+ },
+ // maskClick
+ maskClick: {
+ type: Boolean,
+ default: true
+ },
+ show: {
+ type: Boolean,
+ default: true
+ }
+ },
+ data() {
+ return {
+ ani: '',
+ showPopup: false
+ }
+ },
+ watch: {
+ show(newValue) {
+ if (newValue) {
+ this.open()
+ } else {
+ this.close()
+ }
+ }
+ },
+ created() {},
+ methods: {
+ clear() {},
+ open() {
+ this.$emit('change', {
+ show: true
+ })
+ this.showPopup = true
+ this.$nextTick(() => {
+ setTimeout(() => {
+ this.ani = 'uni-' + this.type
+ }, 30)
+ })
+ },
+ close(type) {
+ if (!this.maskClick && type) return
+ this.$emit('change', {
+ show: false
+ })
+ this.ani = ''
+ this.$nextTick(() => {
+ setTimeout(() => {
+ this.showPopup = false
+ }, 300)
+ })
+ }
+ }
+ }
+</script>
+<style>
+ @charset "UTF-8";
+
+ .uni-popup {
+ position: fixed;
+ top: 0;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ z-index: 99999;
+ overflow: hidden
+ }
+
+ .uni-popup__mask {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ z-index: 998;
+ /* background: rgba(0, 0, 0, .4); */
+ opacity: 0
+ }
+
+ .uni-popup__mask.ani {
+ transition: all .3s
+ }
+
+ .uni-popup__mask.uni-bottom,
+ .uni-popup__mask.uni-center,
+ .uni-popup__mask.uni-top {
+ opacity: 1
+ }
+
+ .uni-popup__wrapper {
+ position: absolute;
+ z-index: 999;
+ box-sizing: border-box
+ }
+
+ .uni-popup__wrapper.ani {
+ transition: all .3s
+ }
+
+ .uni-popup__wrapper.top {
+ top: 0;
+ left: 0;
+ width: 100%;
+ transform: translateY(-100%)
+ }
+
+ .uni-popup__wrapper.bottom {
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ transform: translateY(100%)
+ }
+
+ .uni-popup__wrapper.center {
+ width: 100%;
+ height: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ transform: scale(1.2);
+ opacity: 0
+ }
+
+ .uni-popup__wrapper-box {
+ position: relative;
+ box-sizing: border-box
+ }
+
+ .uni-popup__wrapper.uni-custom .uni-popup__wrapper-box {
+ padding: 30upx;
+ background: #fff
+ }
+
+ .uni-popup__wrapper.uni-custom.center .uni-popup__wrapper-box {
+ position: relative;
+ max-width: 80%;
+ max-height: 80%;
+ overflow-y: scroll
+ }
+
+ .uni-popup__wrapper.uni-custom.bottom .uni-popup__wrapper-box,
+ .uni-popup__wrapper.uni-custom.top .uni-popup__wrapper-box {
+ width: 100%;
+ max-height: 500px;
+ overflow-y: scroll
+ }
+
+ .uni-popup__wrapper.uni-bottom,
+ .uni-popup__wrapper.uni-top {
+ transform: translateY(0)
+ }
+
+ .uni-popup__wrapper.uni-center {
+ transform: scale(1);
+ opacity: 1
+ }
+</style>
\ No newline at end of file
diff --git a/pages/sub_mine/accountSafe/index.vue b/pages/sub_mine/accountSafe/index.vue
index add45ed..afec07c 100644
--- a/pages/sub_mine/accountSafe/index.vue
+++ b/pages/sub_mine/accountSafe/index.vue
@@ -25,6 +25,7 @@
{name:"设置支付密码",icon:"pay",path:"/pages/sub_mine/changePayPwd/index"},
{name:"支付(指纹)",icon:"finger",path:"/pages/sub_mine/otherPay/index"},
{name:"挂失",icon:"gs",path:"/pages/sub_mine/reportheLoss/index"},
+ {name:"设置邮箱",icon:"email",path:"/pages/sub_mine/bindEmail/index"},
]
}
},
diff --git a/pages/sub_mine/bindEmail/index.vue b/pages/sub_mine/bindEmail/index.vue
new file mode 100644
index 0000000..4fcbd70
--- /dev/null
+++ b/pages/sub_mine/bindEmail/index.vue
@@ -0,0 +1,162 @@
+<template>
+ <view class="bindEmail">
+ <view class="bindEmail-field">
+ <u-field v-model="email" label="邮箱" placeholder="请输入您的邮箱号" placeholder-style="color:#999999;font-family:PingFang-SC-Regular"
+ label-width="160" clear-size="40"></u-field>
+ <u-field v-model="code" label="验证码" placeholder="请输入验证码" clear-size="40" placeholder-style="color:#999999"
+ label-width="160" maxlength="6" type="number">
+ <u-button size="mini" slot="right" type="primary" @click="isHaveEmail?getcode('unbind'):getcode('bind')" shape="circle"
+ :custom-style="btn" :disabled="isChecked">{{codeText}}</u-button>
+ </u-field>
+ </view>
+ <u-button class="bindEmail-btn" @click="isHaveEmail?unbind():bind()" :custom-style="isHaveEmail?cancel:confirm">{{isHaveEmail?'解除绑定':'绑定邮箱'}}</u-button>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+ email: '',
+ confirm: {
+ width: '600rpx',
+ backgroundColor: '#2FA8E1',
+ color: '#FFFFFF',
+ fontFamily: "PingFang-SC-Medium",
+ fontSize: '30rpx',
+ marginTop: '100rpx',
+ padding: '50rpx 0'
+ },
+ cancel: {
+ width: '600rpx',
+ backgroundColor: '#fa3534',
+ color: '#FFFFFF',
+ fontFamily: "PingFang-SC-Medium",
+ fontSize: '30rpx',
+ marginTop: '100rpx',
+ padding: '50rpx 0'
+ },
+ isChecked: false,
+ codeText: '获取验证码',
+ btn: {
+ color: '#2FA8E1',
+ backgroundColor: '#FFFFFF',
+ borderColor: '#2FA8E1',
+ borderWidth: '1rpx',
+ borderStyle: 'solid',
+ fontFamily: "PingFang-SC-Regular"
+ },
+ code: '',
+ isHaveEmail: false
+ }
+ },
+ onLoad() {
+ let isHaveEmail = !!uni.getStorageSync('email')
+ this.email = uni.getStorageSync('email')
+ this.isHaveEmail = isHaveEmail
+ },
+ methods: {
+ bind() {
+ let that = this
+ let email = that.email
+ let code = that.code
+ let params = {
+ email,
+ code
+ }
+ if (!code || !email) {
+ uni.showToast({
+ title: '请输入验证码',
+ icon: 'none',
+ })
+ }
+ that.$u.post('/v1/email/bind', params).then(res => {
+ uni.showToast({
+ title: "绑定成功",
+ icon: "none",
+ duration: 800,
+ complete(res) {
+ setTimeout(() => {
+ uni.navigateBack({
+ delta: 1
+ })
+ }, 1500)
+ }
+ })
+ })
+ },
+ unbind() {
+ let that = this
+ let code = that.code
+ let params = {
+ code
+ }
+ if (!code) {
+ uni.showToast({
+ title: '请输入验证码',
+ icon: 'none',
+ })
+ }
+ that.$u.post('/v1/email/unbind', params).then(res => {
+ uni.showToast({
+ title: "解绑成功",
+ icon: "none",
+ duration: 800,
+ complete(res) {
+ uni.setStorageSync('email', '')
+ setTimeout(() => {
+ uni.navigateBack({
+ delta: 1
+ })
+ }, 1500)
+ }
+ })
+ })
+ },
+ getcode(type) {
+ let that = this
+ let reg = /^[0-9a-zA-Z_.-]+[@][0-9a-zA-Z_.-]+([.][a-zA-Z]+){1,2}$/;
+ let email = that.email
+ if (!reg.test(email)) {
+ uni.showToast({
+ title: '请输入正确的邮箱号',
+ icon: 'none',
+ })
+ return
+ }
+ let params = {
+ email,
+ type
+ }
+ that.$u.post('/v1/email/send', params).then(res => {
+ uni.showToast({
+ title: '发送成功,请去邮箱中获取验证码',
+ icon: "none",
+ duration: 800
+ })
+ let i = 120
+ that.isChecked = true
+ that.timer = setInterval(() => {
+ if (i != 0) {
+ i--
+ that.codeText = i + "s"
+ } else {
+ clearInterval(that.timer)
+ that.codeText = "重新获取"
+ that.isChecked = false
+ }
+ }, 1000)
+ })
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .bindEmail {
+ &-field {
+ margin-top: 30rpx;
+ background-color: #FFFFFF;
+ }
+ }
+</style>
diff --git a/pages/sub_mine/lock/index.vue b/pages/sub_mine/lock/index.vue
index 22886de..a2345f5 100644
--- a/pages/sub_mine/lock/index.vue
+++ b/pages/sub_mine/lock/index.vue
@@ -78,6 +78,7 @@
uni.setStorageSync("idno", res.idno)
uni.setStorageSync("cardno", res.citizenCardNo)
uni.setStorageSync("bankcardno", res.bankCardNo)
+ uni.setStorageSync("email", res.email)
if(res.needcheck){
uni.navigateTo({
url:'/pages/sub_basic/verification/index?data=' + JSON.stringify(params)
diff --git a/pages/sub_tabbar/index.vue b/pages/sub_tabbar/index.vue
index a2f261e..0851a76 100644
--- a/pages/sub_tabbar/index.vue
+++ b/pages/sub_tabbar/index.vue
@@ -14,7 +14,7 @@
<view class="img-box" @click="toPath('/pages/sub_index/qrcode/index')">
<u-image src="/static/images/index/money.png" width="40rpx" height="40rpx" mode="aspectFit"></u-image>
</view>
- <view class="img-box" @click="toPath('')">
+ <view class="img-box" @click="toPath('/pages/sub_medical/appointment')">
<u-image src="/static/images/index/square.png" width="40rpx" height="40rpx" mode="aspectFit"></u-image>
</view>
</view>
@@ -141,8 +141,7 @@
}, ]
}
},
- onShow() {
- },
+ onShow() {},
methods: {
search(e) {
uni.showToast({
@@ -153,12 +152,19 @@
},
scan() {
+ // #ifdef APP-PLUS
let that = this
- // #ifndef H5
- // 只允许通过相机扫码
- uni.scanCode({
- success: function(res) {
- let url = res.result
+ var ali = uni.requireNativePlugin("Mpaas-Scan-Module")
+ ali.mpaasScan({
+ // 扫码 UI 风格,参数可为 qr、bar,默认为 qr
+ 'type': 'qr',
+ // 扫码识别类型,参数可多选,qrCode、barCode,不设置,默认识别所有
+ 'scanType': ['qrCode'],
+ // 是否隐藏相册,默认false不隐藏
+ 'hideAlbum': false
+ },
+ (ret) => {
+ let url = ret.resp_result
uni.showToast({
title: "扫描成功",
icon: "none",
@@ -167,35 +173,59 @@
let param = {
url: url
}
+ //console.log(param.url)
that.$u.get('/v1/qrcode/auth', param).then(ret => {
//console.log(ret.data.url)
if (ret.data.permit) {
if (ret.data.action == 'water') {
- setTimeout(() => {
- uni.navigateTo({
- url: "/pages/sub_index/scanView/index?url=" + ret.data.url
- })
- }, 1500)
- } else if (ret.data.action == 'dlsmkh5') {
- // #ifdef APP-PLUS
- let token = uni.getStorageSync('token')
- let wv = plus.webview.create(ret.data.url, 'webview_pay', {
- backButtonAutoControl:'close',
- additionalHttpHeaders: {
- Authorization: 'Bearer ' + token
- }
- })
- setTimeout(() => {
- wv.show()
- }, 1500)
- // #endif
- // #ifndef APP-PLUS
- uni.showToast({
- icon: "none",
- title: "只支持app端",
- duration: 1500
+ // setTimeout(() => {
+ // uni.navigateTo({
+ // url: "/pages/sub_index/scanView/index?url=" + ret.data.url
+ // })
+ // }, 1500)
+ let userid = uni.getStorageSync("userid")
+ let url = ret.data.url
+ if (url.indexOf("?") > 0) {
+ url = url + "&userid=" + userid
+ } else {
+ url = url + "?userid=" + userid
+ }
+ let wv = plus.webview.create(url, 'webview_water', {
+ backButtonAutoControl: 'close',
+ popGesture: 'close'
})
- // #endif
+ setTimeout(() => {
+ wv.show()
+ }, 1500)
+ wv.drag({
+ direction: 'right',
+ moveMode: 'followFinger'
+ }, {
+ view: 'webview_water',
+ moveMode: 'follow'
+ }, function(e) {
+ wv.close()
+ });
+ wv.drag({
+ direction: 'left',
+ moveMode: 'followFinger'
+ }, {
+ view: 'webview_water',
+ moveMode: 'follow'
+ }, function(e) {
+ wv.close()
+ });
+ } else if (ret.data.action == 'dlsmkh5') {
+ let token = uni.getStorageSync('token')
+ let wv = plus.webview.create(ret.data.url, 'webview_pay', {
+ backButtonAutoControl: 'close',
+ additionalHttpHeaders: {
+ Authorization: 'Bearer ' + token
+ }
+ })
+ setTimeout(() => {
+ wv.show()
+ }, 1500)
}
} else {
uni.showToast({
@@ -207,17 +237,79 @@
})
}
})
- }
- });
+ })
// #endif
- // #ifdef H5
- uni.showToast({
- icon: "none",
- title: "H5不支持此功能",
- duration: 1500
- })
- // #endif
+
},
+
+ // scan() {
+ // let that = this
+ // // #ifndef H5
+ // // 只允许通过相机扫码
+ // uni.scanCode({
+ // success: function(res) {
+ // let url = res.result
+ // console.log(url)
+ // uni.showToast({
+ // title: "扫描成功",
+ // icon: "none",
+ // duration: 800,
+ // complete() {
+ // let param = {
+ // url: url
+ // }
+ // console.log(param.url)
+ // that.$u.get('/v1/qrcode/auth', param).then(ret => {
+ // console.log(ret.data.url)
+ // if (ret.data.permit) {
+ // if (ret.data.action == 'water') {
+ // setTimeout(() => {
+ // uni.navigateTo({
+ // url: "/pages/sub_index/scanView/index?url=" + ret.data.url
+ // })
+ // }, 1500)
+ // } else if (ret.data.action == 'dlsmkh5') {
+ // // #ifdef APP-PLUS
+ // let token = uni.getStorageSync('token')
+ // let wv = plus.webview.create(ret.data.url, 'webview_pay', {
+ // backButtonAutoControl:'close',
+ // additionalHttpHeaders: {
+ // Authorization: 'Bearer ' + token
+ // }
+ // })
+ // setTimeout(() => {
+ // wv.show()
+ // }, 1500)
+ // // #endif
+ // // #ifndef APP-PLUS
+ // uni.showToast({
+ // icon: "none",
+ // title: "只支持app端",
+ // duration: 1500
+ // })
+ // // #endif
+ // }
+ // } else {
+ // uni.showToast({
+ // icon: "none",
+ // title: "暂不支持此二维码",
+ // duration: 1500
+ // })
+ // }
+ // })
+ // }
+ // })
+ // }
+ // });
+ // // #endif
+ // // #ifdef H5
+ // uni.showToast({
+ // icon: "none",
+ // title: "H5不支持此功能",
+ // duration: 1500
+ // })
+ // // #endif
+ // },
getActivityList() {
let that = this
let param = [{
@@ -276,7 +368,7 @@
// #endif
},
- async onPullDownRefresh(){
+ async onPullDownRefresh() {
await this.getActivityList()
uni.stopPullDownRefresh()
}
diff --git a/static/css/iconfont.css b/static/css/iconfont.css
index 4f09fdd..3568e25 100644
--- a/static/css/iconfont.css
+++ b/static/css/iconfont.css
@@ -1,6 +1,5 @@
@font-face {font-family: "custom-icon";
- src:
- url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2');
+ src:url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2')
}
.custom-icon {
@@ -11,6 +10,10 @@
-moz-osx-font-smoothing: grayscale;
}
+.custom-icon-email:before {
+ content: "\e678";
+}
+
.custom-icon-question:before {
content: "\e60d";
}
diff --git a/static/js/http.interceptor.js b/static/js/http.interceptor.js
index 89d1562..4087b6c 100644
--- a/static/js/http.interceptor.js
+++ b/static/js/http.interceptor.js
@@ -4,6 +4,7 @@
// baseUrl: 'https://yy.dlsmk.cn/payapi/mobileapi', // 大理智警域名
baseUrl:'https://yy.dlsmk.cn/portal/mobileapi', //正式地址
// baseUrl:'http://yy.dlsmk.cn:8080/portal/mobileapi', //测试地址
+ // baseUrl:'/api',
// baseUrl: "http://172.28.43.20:8089/portal/mobileapi",//本地地址
// method: 'POST',
// 设置为json,返回后会对数据进行一次JSON.parse()
@@ -30,7 +31,8 @@
}
//console.log(config.url,config.header['Authorization'])
config.header["X-TENANT-ID"] = tenantid;
- if (config.url == "/i/activity" || config.url == "/v1/feedback/release" || config.url == '/medicineapi/medicalcard/add') {
+ if (config.url == "/i/activity" || config.url == "/v1/feedback/release"
+ || config.url == '/medicineapi/medicalcard/add' || config.url == '/medicalapi/pay') {
config.header['content-type'] = "application/json";
} else {
config.header['content-type'] = "application/x-www-form-urlencoded";
@@ -87,6 +89,13 @@
// content: `${res.data.status}:${res.data.message}`,
showCancel: false,
})
+ }else{
+ uni.showModal({
+ title: "错误",
+ content: res.errMsg,
+ // content: `${res.data.status}:${res.data.message}`,
+ showCancel: false,
+ })
}
return false;
}