commit
9e25f8e944
447
manifest.json
447
manifest.json
|
@ -1,225 +1,240 @@
|
||||||
{
|
{
|
||||||
"name" : "星品",
|
"name": "星品",
|
||||||
"appid" : "__UNI__082C0BA",
|
"appid": "__UNI__082C0BA",
|
||||||
"description" : "Shopro是由SheepJS团队开发,使用Uniapp+Vue3技术驱动的在线商城系统,内含诸多功能与丰富的活动,期待您的使用和反馈。",
|
"description": "Shopro是由SheepJS团队开发,使用Uniapp+Vue3技术驱动的在线商城系统,内含诸多功能与丰富的活动,期待您的使用和反馈。",
|
||||||
"versionName" : "1.8.3",
|
"versionName": "1.8.3",
|
||||||
"versionCode" : 183,
|
"versionCode": 183,
|
||||||
"transformPx" : false,
|
"transformPx": false,
|
||||||
"app-plus" : {
|
"app-plus": {
|
||||||
"usingComponents" : true,
|
"usingComponents": true,
|
||||||
"nvueCompiler" : "uni-app",
|
"nvueCompiler": "uni-app",
|
||||||
"nvueStyleCompiler" : "uni-app",
|
"nvueStyleCompiler": "uni-app",
|
||||||
"compilerVersion" : 3,
|
"compilerVersion": 3,
|
||||||
"nvueLaunchMode" : "fast",
|
"nvueLaunchMode": "fast",
|
||||||
"splashscreen" : {
|
"splashscreen": {
|
||||||
"alwaysShowBeforeRender" : true,
|
"alwaysShowBeforeRender": true,
|
||||||
"waiting" : true,
|
"waiting": true,
|
||||||
"autoclose" : true,
|
"autoclose": true,
|
||||||
"delay" : 0
|
"delay": 0
|
||||||
|
},
|
||||||
|
"safearea": {
|
||||||
|
"bottom": {
|
||||||
|
"offset": "none"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"modules": {
|
||||||
|
"Payment": {},
|
||||||
|
"Share": {},
|
||||||
|
"VideoPlayer": {},
|
||||||
|
"OAuth": {}
|
||||||
|
},
|
||||||
|
"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.VIBRATE\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.ACCESS_MOCK_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.FLASHLIGHT\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.GET_TASKS\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.INTERNET\"/>",
|
||||||
|
"<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.READ_SMS\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.RECEIVE_BOOT_COMPLETED\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.SEND_SMS\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.SYSTEM_ALERT_WINDOW\"/>",
|
||||||
|
"<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_EXTERNAL_STORAGE\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.WRITE_SMS\"/>",
|
||||||
|
"<uses-permission android:name=\"android.permission.RECEIVE_USER_PRESENT\"/>"
|
||||||
|
],
|
||||||
|
"minSdkVersion": 21,
|
||||||
|
"schemes": "shopro"
|
||||||
|
},
|
||||||
|
"ios": {
|
||||||
|
"urlschemewhitelist": [
|
||||||
|
"baidumap",
|
||||||
|
"iosamap"
|
||||||
|
],
|
||||||
|
"dSYMs": false,
|
||||||
|
"privacyDescription": {
|
||||||
|
"NSPhotoLibraryUsageDescription": "需要同意访问您的相册选取图片才能完善该条目",
|
||||||
|
"NSPhotoLibraryAddUsageDescription": "需要同意访问您的相册才能保存该图片",
|
||||||
|
"NSCameraUsageDescription": "需要同意访问您的摄像头拍摄照片才能完善该条目",
|
||||||
|
"NSUserTrackingUsageDescription": "开启追踪并不会获取您在其它站点的隐私信息,该行为仅用于标识设备,保障服务安全和提升浏览体验"
|
||||||
},
|
},
|
||||||
"safearea" : {
|
"urltypes": "shopro",
|
||||||
"bottom" : {
|
"capabilities": {
|
||||||
"offset" : "none"
|
"entitlements": {
|
||||||
}
|
"com.apple.developer.associated-domains": [
|
||||||
|
"applinks:shopro.sheepjs.com"
|
||||||
|
]
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"modules" : {
|
"idfa": true
|
||||||
"Payment" : {},
|
},
|
||||||
"Share" : {},
|
"sdkConfigs": {
|
||||||
"VideoPlayer" : {},
|
"speech": {
|
||||||
"OAuth" : {}
|
"ifly": {}
|
||||||
},
|
},
|
||||||
"distribute" : {
|
"ad": {},
|
||||||
"android" : {
|
"oauth": {
|
||||||
"permissions" : [
|
"apple": {},
|
||||||
"<uses-feature android:name=\"android.hardware.camera\"/>",
|
"weixin": {
|
||||||
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
|
"appid": "wxae7a0c156da9383b",
|
||||||
"<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
|
"UniversalLinks": "https://shopro.sheepjs.com/uni-universallinks/__UNI__082C0BA/"
|
||||||
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
}
|
||||||
"<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
|
},
|
||||||
"<uses-permission android:name=\"android.permission.ACCESS_MOCK_LOCATION\"/>",
|
"payment": {
|
||||||
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
|
"weixin": {
|
||||||
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
|
"__platform__": [
|
||||||
"<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
|
"ios",
|
||||||
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
|
"android"
|
||||||
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
],
|
||||||
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
|
"appid": "wxae7a0c156da9383b",
|
||||||
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
|
"UniversalLinks": "https://shopro.sheepjs.com/uni-universallinks/__UNI__082C0BA/"
|
||||||
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
|
},
|
||||||
"<uses-permission android:name=\"android.permission.GET_TASKS\"/>",
|
"alipay": {
|
||||||
"<uses-permission android:name=\"android.permission.INTERNET\"/>",
|
"__platform__": [
|
||||||
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
|
"ios",
|
||||||
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
"android"
|
||||||
"<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.READ_SMS\"/>",
|
"share": {
|
||||||
"<uses-permission android:name=\"android.permission.RECEIVE_BOOT_COMPLETED\"/>",
|
"weixin": {
|
||||||
"<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
|
"appid": "wxae7a0c156da9383b",
|
||||||
"<uses-permission android:name=\"android.permission.SEND_SMS\"/>",
|
"UniversalLinks": "https://shopro.sheepjs.com/uni-universallinks/__UNI__082C0BA/"
|
||||||
"<uses-permission android:name=\"android.permission.SYSTEM_ALERT_WINDOW\"/>",
|
}
|
||||||
"<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_EXTERNAL_STORAGE\"/>",
|
|
||||||
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>",
|
|
||||||
"<uses-permission android:name=\"android.permission.WRITE_SMS\"/>",
|
|
||||||
"<uses-permission android:name=\"android.permission.RECEIVE_USER_PRESENT\"/>"
|
|
||||||
],
|
|
||||||
"minSdkVersion" : 21,
|
|
||||||
"schemes" : "shopro"
|
|
||||||
},
|
|
||||||
"ios" : {
|
|
||||||
"urlschemewhitelist" : [ "baidumap", "iosamap" ],
|
|
||||||
"dSYMs" : false,
|
|
||||||
"privacyDescription" : {
|
|
||||||
"NSPhotoLibraryUsageDescription" : "需要同意访问您的相册选取图片才能完善该条目",
|
|
||||||
"NSPhotoLibraryAddUsageDescription" : "需要同意访问您的相册才能保存该图片",
|
|
||||||
"NSCameraUsageDescription" : "需要同意访问您的摄像头拍摄照片才能完善该条目",
|
|
||||||
"NSUserTrackingUsageDescription" : "开启追踪并不会获取您在其它站点的隐私信息,该行为仅用于标识设备,保障服务安全和提升浏览体验"
|
|
||||||
},
|
|
||||||
"urltypes" : "shopro",
|
|
||||||
"capabilities" : {
|
|
||||||
"entitlements" : {
|
|
||||||
"com.apple.developer.associated-domains" : [ "applinks:shopro.sheepjs.com" ]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"idfa" : true
|
|
||||||
},
|
|
||||||
"sdkConfigs" : {
|
|
||||||
"speech" : {
|
|
||||||
"ifly" : {}
|
|
||||||
},
|
|
||||||
"ad" : {},
|
|
||||||
"oauth" : {
|
|
||||||
"apple" : {},
|
|
||||||
"weixin" : {
|
|
||||||
"appid" : "wxae7a0c156da9383b",
|
|
||||||
"UniversalLinks" : "https://shopro.sheepjs.com/uni-universallinks/__UNI__082C0BA/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"payment" : {
|
|
||||||
"weixin" : {
|
|
||||||
"__platform__" : [ "ios", "android" ],
|
|
||||||
"appid" : "wxae7a0c156da9383b",
|
|
||||||
"UniversalLinks" : "https://shopro.sheepjs.com/uni-universallinks/__UNI__082C0BA/"
|
|
||||||
},
|
|
||||||
"alipay" : {
|
|
||||||
"__platform__" : [ "ios", "android" ]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"share" : {
|
|
||||||
"weixin" : {
|
|
||||||
"appid" : "wxae7a0c156da9383b",
|
|
||||||
"UniversalLinks" : "https://shopro.sheepjs.com/uni-universallinks/__UNI__082C0BA/"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"orientation" : [ "portrait-primary" ],
|
|
||||||
"splashscreen" : {
|
|
||||||
"androidStyle" : "common",
|
|
||||||
"iosStyle" : "common",
|
|
||||||
"useOriginalMsgbox" : true
|
|
||||||
},
|
|
||||||
"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"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"quickapp" : {},
|
"orientation": [
|
||||||
"quickapp-native" : {
|
"portrait-primary"
|
||||||
"icon" : "/static/logo.png",
|
],
|
||||||
"package" : "com.example.demo",
|
"splashscreen": {
|
||||||
"features" : [
|
"androidStyle": "common",
|
||||||
{
|
"iosStyle": "common",
|
||||||
"name" : "system.clipboard"
|
"useOriginalMsgbox": true
|
||||||
}
|
},
|
||||||
]
|
"icons": {
|
||||||
},
|
"android": {
|
||||||
"quickapp-webview" : {
|
"hdpi": "unpackage/res/icons/72x72.png",
|
||||||
"icon" : "/static/logo.png",
|
"xhdpi": "unpackage/res/icons/96x96.png",
|
||||||
"package" : "com.example.demo",
|
"xxhdpi": "unpackage/res/icons/144x144.png",
|
||||||
"minPlatformVersion" : 1070,
|
"xxxhdpi": "unpackage/res/icons/192x192.png"
|
||||||
"versionName" : "1.0.0",
|
|
||||||
"versionCode" : 100
|
|
||||||
},
|
|
||||||
"mp-weixin" : {
|
|
||||||
"appid" : "wx63c280fe3248a3e7",
|
|
||||||
"setting" : {
|
|
||||||
"urlCheck" : false,
|
|
||||||
"minified" : true,
|
|
||||||
"postcss" : true
|
|
||||||
},
|
},
|
||||||
"optimization" : {
|
"ios": {
|
||||||
"subPackages" : true
|
"appstore": "unpackage/res/icons/1024x1024.png",
|
||||||
},
|
"ipad": {
|
||||||
"plugins" : {},
|
"app": "unpackage/res/icons/76x76.png",
|
||||||
"lazyCodeLoading" : "requiredComponents",
|
"app@2x": "unpackage/res/icons/152x152.png",
|
||||||
"usingComponents" : {},
|
"notification": "unpackage/res/icons/20x20.png",
|
||||||
"permission" : {},
|
"notification@2x": "unpackage/res/icons/40x40.png",
|
||||||
"requiredPrivateInfos" : [ "chooseAddress" ]
|
"proapp@2x": "unpackage/res/icons/167x167.png",
|
||||||
},
|
"settings": "unpackage/res/icons/29x29.png",
|
||||||
"mp-alipay" : {
|
"settings@2x": "unpackage/res/icons/58x58.png",
|
||||||
"usingComponents" : true
|
"spotlight": "unpackage/res/icons/40x40.png",
|
||||||
},
|
"spotlight@2x": "unpackage/res/icons/80x80.png"
|
||||||
"mp-baidu" : {
|
},
|
||||||
"usingComponents" : true
|
"iphone": {
|
||||||
},
|
"app@2x": "unpackage/res/icons/120x120.png",
|
||||||
"mp-toutiao" : {
|
"app@3x": "unpackage/res/icons/180x180.png",
|
||||||
"usingComponents" : true
|
"notification@2x": "unpackage/res/icons/40x40.png",
|
||||||
},
|
"notification@3x": "unpackage/res/icons/60x60.png",
|
||||||
"mp-jd" : {
|
"settings@2x": "unpackage/res/icons/58x58.png",
|
||||||
"usingComponents" : true
|
"settings@3x": "unpackage/res/icons/87x87.png",
|
||||||
},
|
"spotlight@2x": "unpackage/res/icons/80x80.png",
|
||||||
"h5" : {
|
"spotlight@3x": "unpackage/res/icons/120x120.png"
|
||||||
"template" : "index.html",
|
}
|
||||||
"router" : {
|
|
||||||
"mode" : "hash",
|
|
||||||
"base" : "./"
|
|
||||||
},
|
|
||||||
"sdkConfigs" : {
|
|
||||||
"maps" : {}
|
|
||||||
},
|
|
||||||
"async" : {
|
|
||||||
"timeout" : 20000
|
|
||||||
},
|
|
||||||
"title" : "星品购",
|
|
||||||
"optimization" : {
|
|
||||||
"treeShaking" : {
|
|
||||||
"enable" : true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"quickapp": {},
|
||||||
|
"quickapp-native": {
|
||||||
|
"icon": "/static/logo.png",
|
||||||
|
"package": "com.example.demo",
|
||||||
|
"features": [
|
||||||
|
{
|
||||||
|
"name": "system.clipboard"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"quickapp-webview": {
|
||||||
|
"icon": "/static/logo.png",
|
||||||
|
"package": "com.example.demo",
|
||||||
|
"minPlatformVersion": 1070,
|
||||||
|
"versionName": "1.0.0",
|
||||||
|
"versionCode": 100
|
||||||
|
},
|
||||||
|
"mp-weixin": {
|
||||||
|
"appid": "wx63c280fe3248a3e7",
|
||||||
|
"setting": {
|
||||||
|
"urlCheck": false,
|
||||||
|
"minified": true,
|
||||||
|
"postcss": true
|
||||||
},
|
},
|
||||||
"vueVersion" : "3",
|
"optimization": {
|
||||||
"_spaceID" : "192b4892-5452-4e1d-9f09-eee1ece40639",
|
"subPackages": true
|
||||||
"locale" : "zh-Hans",
|
},
|
||||||
"fallbackLocale" : "zh-Hans"
|
"plugins": {},
|
||||||
|
"lazyCodeLoading": "requiredComponents",
|
||||||
|
"usingComponents": {},
|
||||||
|
"permission": {},
|
||||||
|
"requiredPrivateInfos": [
|
||||||
|
"chooseAddress"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"mp-alipay": {
|
||||||
|
"usingComponents": true
|
||||||
|
},
|
||||||
|
"mp-baidu": {
|
||||||
|
"usingComponents": true
|
||||||
|
},
|
||||||
|
"mp-toutiao": {
|
||||||
|
"usingComponents": true
|
||||||
|
},
|
||||||
|
"mp-jd": {
|
||||||
|
"usingComponents": true
|
||||||
|
},
|
||||||
|
"h5": {
|
||||||
|
"template": "index.html",
|
||||||
|
"router": {
|
||||||
|
"mode": "hash",
|
||||||
|
"base": "./"
|
||||||
|
},
|
||||||
|
"sdkConfigs": {
|
||||||
|
"maps": {}
|
||||||
|
},
|
||||||
|
"async": {
|
||||||
|
"timeout": 20000
|
||||||
|
},
|
||||||
|
"title": "星品购",
|
||||||
|
"optimization": {
|
||||||
|
"treeShaking": {
|
||||||
|
"enable": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"vueVersion": "3",
|
||||||
|
"_spaceID": "192b4892-5452-4e1d-9f09-eee1ece40639",
|
||||||
|
"locale": "zh-Hans",
|
||||||
|
"fallbackLocale": "zh-Hans"
|
||||||
}
|
}
|
28
pages.json
28
pages.json
|
@ -337,18 +337,18 @@
|
||||||
"group": "分销商城"
|
"group": "分销商城"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "wallet",
|
"path": "wallet",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "我的佣金"
|
"navigationBarTitleText": "我的佣金"
|
||||||
},
|
},
|
||||||
"meta": {
|
"meta": {
|
||||||
"auth": true,
|
"auth": true,
|
||||||
"sync": true,
|
"sync": true,
|
||||||
"title": "用户佣金",
|
"title": "用户佣金",
|
||||||
"group": "分销中心"
|
"group": "分销中心"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "goods",
|
"path": "goods",
|
||||||
"style": {
|
"style": {
|
||||||
|
@ -622,7 +622,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "bargainingList",
|
"path": "bargain/list",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "砍价列表"
|
"navigationBarTitleText": "砍价列表"
|
||||||
},
|
},
|
||||||
|
@ -633,7 +633,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"path": "bargainingDetail",
|
"path": "bargain/detail",
|
||||||
"style": {
|
"style": {
|
||||||
"navigationBarTitleText": "砍价详情"
|
"navigationBarTitleText": "砍价详情"
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<!-- 砍价详情 -->
|
<!-- 砍价详情 -->
|
||||||
<template>
|
<template>
|
||||||
<!-- TODO @科举:按照项目的代码风格,调整下这个界面 -->
|
<!-- TODO @科举:按照项目的代码风格,调整下这个界面 -->
|
||||||
<!-- TODO @科举:挪到 bargain/detail.vue 里 -->
|
<!-- TODO @科举:挪到 bargain/detail.vue 里 -->
|
||||||
<!-- TODO @科举:尽量都迁移完;依赖数据的部分,通过直接在 state 写死状态,不用后端返回,跑通整个界面;不追求 100% 对,但是至少自己观感是 ok 的 -->
|
<!-- TODO @科举:尽量都迁移完;依赖数据的部分,通过直接在 state 写死状态,不用后端返回,跑通整个界面;不追求 100% 对,但是至少自己观感是 ok 的 -->
|
||||||
<s-layout title='砍价详情'>
|
<s-layout title='砍价详情'>
|
||||||
<view class='bargain'>
|
<view class='bargain'>
|
||||||
<!-- :class="startBargainUid !== userInfo.uid ? 'on' : ''" -->
|
<!-- :class="startBargainUid !== userInfo.uid ? 'on' : ''" -->
|
||||||
|
@ -138,28 +138,18 @@
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
function getBargainDetails() {
|
async function getBargainDetails() {
|
||||||
sheep.$api.activity.getBargainActivityDetail({
|
let {
|
||||||
|
data,
|
||||||
|
code
|
||||||
|
} = await sheep.$api.activity.getBargainActivityDetail({
|
||||||
id: state.id
|
id: state.id
|
||||||
}).then(res => {
|
|
||||||
state.bargainInfo = res.data;
|
|
||||||
state.buyPrice = state.bargainInfo.bargainFirstPrice;
|
|
||||||
// state.pages = '/pages/activity/goods_bargain_details/index?id=' + state.id +
|
|
||||||
// '&startBargainUid=' + state.uid + '&scene=' + state.uid + '&storeBargainId=' + state
|
|
||||||
// .storeBargainId;
|
|
||||||
// uni.setNavigationBarTitle({
|
|
||||||
// title: bargainInfo.name.substring(0, 13) + '...'
|
|
||||||
// })
|
|
||||||
|
|
||||||
// 获得拼团记录
|
|
||||||
// this.gobargainUserInfo();
|
|
||||||
|
|
||||||
//#ifdef H5
|
|
||||||
// this.getImageBase64(bargainInfo.picUrl);
|
|
||||||
//#endif
|
|
||||||
}).catch(function(err) {
|
|
||||||
// 错误了可以跳转回上个页面
|
|
||||||
})
|
})
|
||||||
|
if (code == 0) {
|
||||||
|
state.bargainInfo = data;
|
||||||
|
state.buyPrice = state.bargainInfo.bargainFirstPrice;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
onLoad(function(options) {
|
onLoad(function(options) {
|
||||||
if (options.hasOwnProperty('id')) {
|
if (options.hasOwnProperty('id')) {
|
|
@ -1,6 +1,5 @@
|
||||||
<!-- 砍价列表 TODO @科举:新建一个 bargain 包,然后这个页面挪进去,改成 list.vue。写的时候,要思考怎么更好的融入到当前项目 -->
|
|
||||||
<template>
|
<template>
|
||||||
<!-- TODO @科举:参考 groupon/list.vue 和 seckill/list.vue 界面,调整下头部,就是从 5 到 11 行的 -->
|
<!-- TODO @科举:参考 groupon/list.vue 和 seckill/list.vue 界面,调整下头部,就是从 5 到 11 行的 -->
|
||||||
<s-layout navbar="inner" title='砍价列表'>
|
<s-layout navbar="inner" title='砍价列表'>
|
||||||
<view style='background-color: red;height:100vh;'>
|
<view style='background-color: red;height:100vh;'>
|
||||||
<view class='bargain-list'>
|
<view class='bargain-list'>
|
||||||
|
@ -14,8 +13,8 @@
|
||||||
<view class='header'>
|
<view class='header'>
|
||||||
<view class="pic">
|
<view class="pic">
|
||||||
<view class='swipers'>
|
<view class='swipers'>
|
||||||
<swiper indicator-dots="true" autoplay="true" interval="2500"
|
<swiper indicator-dots="true" autoplay="true" interval="2500" duration="500" vertical="true"
|
||||||
duration="500" vertical="true" circular="true">
|
circular="true">
|
||||||
<block v-for="(item,index) in state.bargainSuccessList" :key='index'>
|
<block v-for="(item,index) in state.bargainSuccessList" :key='index'>
|
||||||
<swiper-item>
|
<swiper-item>
|
||||||
<view class="acea-row row-middle" style='display:flex'>
|
<view class="acea-row row-middle" style='display:flex'>
|
||||||
|
@ -36,7 +35,7 @@
|
||||||
<view class='list'>
|
<view class='list'>
|
||||||
<block v-for="(item,index) in state.bargainList" :key="index">
|
<block v-for="(item,index) in state.bargainList" :key="index">
|
||||||
<view style='display:flex' class='item acea-row row-between-wrapper'
|
<view style='display:flex' class='item acea-row row-between-wrapper'
|
||||||
@tap="openSubscribe('/pages/activity/bargainingDetail?id='+ item.id)">
|
@tap="openSubscribe('/pages/activity/bargain/detail?id='+ item.id)">
|
||||||
<view class='pictrue'>
|
<view class='pictrue'>
|
||||||
<image :src='item.picUrl'></image>
|
<image :src='item.picUrl'></image>
|
||||||
</view>
|
</view>
|
||||||
|
@ -71,12 +70,19 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { reactive } from 'vue';
|
import {
|
||||||
|
reactive
|
||||||
|
} from 'vue';
|
||||||
import sheep from '@/sheep';
|
import sheep from '@/sheep';
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import { onLoad, onReachBottom } from '@dcloudio/uni-app';
|
import {
|
||||||
import { fen2yuan } from '@/sheep/hooks/useGoods';
|
onLoad,
|
||||||
|
onReachBottom
|
||||||
|
} from '@dcloudio/uni-app';
|
||||||
|
import {
|
||||||
|
fen2yuan
|
||||||
|
} from '@/sheep/hooks/useGoods';
|
||||||
|
import BargainApi from '@/sheep/api/activity'
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
navH: '',
|
navH: '',
|
||||||
returnShow: true,
|
returnShow: true,
|
||||||
|
@ -101,53 +107,58 @@
|
||||||
loadTitle: '加载更多',
|
loadTitle: '加载更多',
|
||||||
});
|
});
|
||||||
|
|
||||||
function getBargainHeader() {
|
async function getBargainHeader() {
|
||||||
// TODO @科举:这个改成 BargainApi.getBargainRecordSummary,使用 await 操作;代码风格要统一
|
let {
|
||||||
sheep.$api.activity.getBargainRecordSummary().then(res => {
|
code,
|
||||||
state.bargainTotal = res.data.successUserCount;
|
data
|
||||||
state.bargainSuccessList = res.data.successList;
|
} = await BargainApi.getBargainRecordSummary()
|
||||||
}).catch(err => {
|
if (code == 0) {
|
||||||
return state.$util.Tips({
|
state.bargainTotal = data.successUserCount;
|
||||||
title: err
|
state.bargainSuccessList = data.successList;
|
||||||
|
} else {
|
||||||
|
state.$util.Tips({
|
||||||
|
title: data
|
||||||
});
|
});
|
||||||
})
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getBargainList() {
|
async function getBargainList() {
|
||||||
// TODO @科举:loading 和 loadTitle 改成现在这个项目的风格,包括组件使用 uni-load-more
|
// TODO @科举:loading 和 loadTitle 改成现在这个项目的风格,包括组件使用 uni-load-more
|
||||||
if (state.loadend || state.loading) {
|
if (state.loadend || state.loading) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
state.loading = true;
|
state.loading = true;
|
||||||
state.loadTitle = '';
|
state.loadTitle = '';
|
||||||
// TODO @科举:这个改成 BargainApi.getBargainRecordSummary,使用 await 操作;代码风格要统一
|
let {
|
||||||
sheep.$api.activity.getBargainActivityPage({
|
data,
|
||||||
|
code
|
||||||
|
} = await BargainApi.getBargainActivityPage({
|
||||||
pageNo: state.page,
|
pageNo: state.page,
|
||||||
pageSize: state.limit
|
pageSize: state.limit
|
||||||
}).then(res => {
|
})
|
||||||
const list = res.data.list;
|
if (code == 0) {
|
||||||
|
const list = data.list;
|
||||||
const bargainList = _.concat(state.bargainList, list);
|
const bargainList = _.concat(state.bargainList, list);
|
||||||
const loadend = list.length < state.limit;
|
const loadend = list.length < state.limit;
|
||||||
state.loadend = loadend;
|
state.loadend = loadend;
|
||||||
state.loading = false;
|
state.loading = false;
|
||||||
state.loadTitle = loadend ? '已全部加载' : '加载更多';
|
state.loadTitle = loadend ? '已全部加载' : '加载更多';
|
||||||
// this.$set(this, 'bargainList', bargainList);
|
// this.$set(this, 'bargainList', bargainList);
|
||||||
state.bargainList = res.data.list
|
state.bargainList = data.list
|
||||||
// this.$set(this, 'page', this.page + 1);
|
// this.$set(this, 'page', this.page + 1);
|
||||||
state.page = state.page + 1;
|
state.page = state.page + 1;
|
||||||
}).catch(res => {
|
|
||||||
|
} else {
|
||||||
state.loading = false;
|
state.loading = false;
|
||||||
state.loadTitle = '加载更多';
|
state.loadTitle = '加载更多';
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function openSubscribe(e) {
|
function openSubscribe(e) {
|
||||||
|
console.log('跳转')
|
||||||
console.log(e)
|
console.log(e)
|
||||||
// TODO @科举:参考 pages/pay/result.vue 页面的 subscribeMessage 方法,写订阅逻辑。
|
// TODO @科举:参考 pages/pay/result.vue 页面的 subscribeMessage 方法,写订阅逻辑。
|
||||||
// TODO @科举:navigateTo 在项目里,应该是 sheep.$router.go,参考写下
|
sheep.$router.go(e)
|
||||||
uni.navigateTo({
|
|
||||||
url: page,
|
|
||||||
});
|
|
||||||
return;
|
return;
|
||||||
let page = e;
|
let page = e;
|
||||||
// #ifndef MP
|
// #ifndef MP
|
|
@ -22,11 +22,10 @@
|
||||||
align-items: center;
|
align-items: center;
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<!-- TODO @科举:1)这里已签到的样式不太对;2)最后一天(第 7 天)的大奖样式不太对 -->
|
|
||||||
<view class="item" v-for="(item, index) in state.signConfigList" :key="index">
|
<view class="item" v-for="(item, index) in state.signConfigList" :key="index">
|
||||||
<view
|
<view
|
||||||
:class="
|
:class="
|
||||||
(index + 1 === state.signConfigList.length ? 'reward' : '') +
|
(index === state.signConfigList.length ? 'reward' : '') +
|
||||||
' ' +
|
' ' +
|
||||||
(state.signInfo.continuousDay >= item.day ? 'rewardTxt' : '')
|
(state.signInfo.continuousDay >= item.day ? 'rewardTxt' : '')
|
||||||
"
|
"
|
||||||
|
@ -66,7 +65,7 @@
|
||||||
<!-- 签到说明 TODO @科举:这里改成【已累计签到】 -->
|
<!-- 签到说明 TODO @科举:这里改成【已累计签到】 -->
|
||||||
<view class="bg-white ss-m-t-16 ss-p-t-30 ss-p-b-60 ss-p-x-40">
|
<view class="bg-white ss-m-t-16 ss-p-t-30 ss-p-b-60 ss-p-x-40">
|
||||||
<view class="activity-title ss-m-b-30">签到说明</view>
|
<view class="activity-title ss-m-b-30">签到说明</view>
|
||||||
<view class="activity-des">1、每天签到,可获得积分或经验</view>
|
<view class="activity-des">1、已累计签到{{state.signInfo.totalDay}}天</view>
|
||||||
<view class="activity-des">
|
<view class="activity-des">
|
||||||
2、据说连续签到第 {{ state.maxDay }} 天可获得超额积分,一定要坚持签到哦~~~
|
2、据说连续签到第 {{ state.maxDay }} 天可获得超额积分,一定要坚持签到哦~~~
|
||||||
</view>
|
</view>
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,13 +1,104 @@
|
||||||
<!-- 页面 TODO 芋艿:检查未开发 -->
|
<!-- 页面 TODO 芋艿:检查未开发 -->
|
||||||
<template>
|
<template>
|
||||||
<s-layout title="我的团队" :class="state.scrollTop ? 'team-wrap' : ''" navbar="inner">
|
<s-layout title="我的团队" :class="state.scrollTop ? 'team-wrap' : ''" navbar="inner">
|
||||||
<view class="header-box" :style="[
|
<view class="promoter-list">
|
||||||
|
<view class='promoterHeader bg-color' style='backgroundColor:#e93323!important;height:218rpx;color:#fff'>
|
||||||
|
<view class='headerCon acea-row row-between' style='padding: 28px 29px 0 29px;'>
|
||||||
|
<view>
|
||||||
|
<view class='name' style="color:#fff">推广人数</view>
|
||||||
|
<view><text class='num'
|
||||||
|
style="color:#fff">{{(state.getSummary.firstBrokerageUserCount+ state.getSummary.secondBrokerageUserCount)|| 0 }}</text>人
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class='iconfont icon-tuandui'></view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view style='padding: 0 30rpx;'>
|
||||||
|
<view class='nav acea-row row-around l1'>
|
||||||
|
<view :class="state.level == 1 ? 'item on' : 'item'" @click='setType(1)'>
|
||||||
|
一级({{state.getSummary.firstBrokerageUserCount || 0 }})</view>
|
||||||
|
<view :class="state.level == 2 ? 'item on' : 'item'" @click='setType(2)'>
|
||||||
|
二级({{state.getSummary.secondBrokerageUserCount || 0 }})
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class='search acea-row row-between-wrapper'
|
||||||
|
style="display: flex;height: 100rpx;align-items: center;">
|
||||||
|
<view class='input'>
|
||||||
|
<input placeholder='点击搜索会员名称' v-model="state.nickname" confirm-type='search' name="search"
|
||||||
|
@confirm="submitForm" />
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<image src="/static/images/search.png" mode="" style='width: 60rpx;height: 64rpx;' @click="submitForm"></image>
|
||||||
|
</view>
|
||||||
|
<view class='list'>
|
||||||
|
<view class="sortNav acea-row row-middle" style="display: flex;align-items: center;">
|
||||||
|
<view class="sortItem" @click='setSort("userCount","asc")' v-if="sort === 'userCountDESC'">
|
||||||
|
团队排序
|
||||||
|
<image src='/static/images/sort1.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("userCount", "desc")'
|
||||||
|
v-else-if="sort === 'userCountASC'">团队排序
|
||||||
|
<image src='/static/images/sort3.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("userCount","desc")' v-else>团队排序
|
||||||
|
<image src='/static/images/sort2.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("price","asc")' v-if="sort === 'priceDESC'">
|
||||||
|
金额排序
|
||||||
|
<image src='/static/images/sort1.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("price", "desc")' v-else-if="sort === 'priceASC'">
|
||||||
|
金额排序
|
||||||
|
<image src='/static/images/sort3.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("price","desc")' v-else>金额排序
|
||||||
|
<image src='/static/images/sort2.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("orderCount","asc")' v-if="sort === 'orderCountDESC'">
|
||||||
|
订单排序
|
||||||
|
<image src='/static/images/sort1.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("orderCount", "desc")'
|
||||||
|
v-else-if="sort === 'orderCountASC'">订单排序
|
||||||
|
<image src='/static/images/sort3.png'></image>
|
||||||
|
</view>
|
||||||
|
<view class="sortItem" @click='setSort("orderCount","desc")' v-else>订单排序
|
||||||
|
<image src='/static/images/sort2.png'></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<block v-for="(item,index) in state.pagination.data" :key="index">
|
||||||
|
<view class='item acea-row row-between-wrapper' style="display: flex;">
|
||||||
|
<view class="picTxt acea-row row-between-wrapper" style="display: flex;align-items: center;">
|
||||||
|
<view class='pictrue'>
|
||||||
|
<image :src='item.avatar'></image>
|
||||||
|
</view>
|
||||||
|
<view class='text'>
|
||||||
|
<view class='name line1'>{{item.nickname}}</view>
|
||||||
|
<view>加入时间: {{ sheep.$helper.timeFormat(item.brokerageTime, 'yyyy-mm-dd hh:MM:ss') }}</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="right" style='justify-content:center;flex-direction: column;display: flex;margin-left: auto;'>
|
||||||
|
<view><text class='num font-color'>{{ item.brokerageUserCount || 0}}</text>人
|
||||||
|
</view>
|
||||||
|
<view><text class="num">{{ item.orderCount|| 0}}</text>单</view>
|
||||||
|
<view><text class="num">{{ item.brokeragePrice || 0 }}</text>元</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</block>
|
||||||
|
<block v-if="state.pagination.data.length == 0">
|
||||||
|
<view style='text-align: center;'>暂无推广人数</view>
|
||||||
|
</block>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- <home></home> -->
|
||||||
|
|
||||||
|
<!-- <view class="header-box" :style="[
|
||||||
{
|
{
|
||||||
marginTop: '-' + Number(statusBarHeight + 88) + 'rpx',
|
marginTop: '-' + Number(statusBarHeight + 88) + 'rpx',
|
||||||
paddingTop: Number(statusBarHeight + 108) + 'rpx',
|
paddingTop: Number(statusBarHeight + 108) + 'rpx',
|
||||||
},
|
},
|
||||||
]">
|
]">
|
||||||
<!-- 推荐人 -->
|
|
||||||
<view v-if="userInfo.parent_user" class="referrer-box ss-flex ss-col-center">
|
<view v-if="userInfo.parent_user" class="referrer-box ss-flex ss-col-center">
|
||||||
推荐人:
|
推荐人:
|
||||||
<image class="referrer-avatar ss-m-r-10" :src="sheep.$url.cdn(userInfo.parent_user.avatar)"
|
<image class="referrer-avatar ss-m-r-10" :src="sheep.$url.cdn(userInfo.parent_user.avatar)"
|
||||||
|
@ -15,7 +106,6 @@
|
||||||
</image>
|
</image>
|
||||||
{{ userInfo.parent_user.nickname }}
|
{{ userInfo.parent_user.nickname }}
|
||||||
</view>
|
</view>
|
||||||
<!-- 团队数据总览 -->
|
|
||||||
<view class="team-data-box ss-flex ss-col-center ss-row-between">
|
<view class="team-data-box ss-flex ss-col-center ss-row-between">
|
||||||
<view class="data-card">
|
<view class="data-card">
|
||||||
<view class="total-item">
|
<view class="total-item">
|
||||||
|
@ -38,16 +128,16 @@
|
||||||
<view class="data-card">
|
<view class="data-card">
|
||||||
<view class="total-item">
|
<view class="total-item">
|
||||||
<view class="item-title">团队分销商人数(人)</view>
|
<view class="item-title">团队分销商人数(人)</view>
|
||||||
<view class="total-num">{{ agentInfo.child_agent_count_all || 0 }}</view>
|
<view class="total-num">{{ agentInfo?.child_agent_count_all || 0 }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="category-item ss-flex">
|
<view class="category-item ss-flex">
|
||||||
<view class="ss-flex-1">
|
<view class="ss-flex-1">
|
||||||
<view class="item-title">一级分销商</view>
|
<view class="item-title">一级分销商</view>
|
||||||
<view class="category-num">{{ agentInfo.child_agent_count_1 || 0 }}</view>
|
<view class="category-num">{{ agentInfo?.child_agent_count_1 || 0 }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="ss-flex-1">
|
<view class="ss-flex-1">
|
||||||
<view class="item-title">二级分销商</view>
|
<view class="item-title">二级分销商</view>
|
||||||
<view class="category-num">{{ agentInfo.child_agent_count_2 || 0 }}</view>
|
<view class="category-num">{{ agentInfo?.child_agent_count_2 || 0 }}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -71,7 +161,7 @@
|
||||||
</uni-list>
|
</uni-list>
|
||||||
</view>
|
</view>
|
||||||
<s-empty v-if="state.pagination.total === 0" icon="/static/data-empty.png" text="暂无团队信息">
|
<s-empty v-if="state.pagination.total === 0" icon="/static/data-empty.png" text="暂无团队信息">
|
||||||
</s-empty>
|
</s-empty> -->
|
||||||
</s-layout>
|
</s-layout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -83,13 +173,18 @@
|
||||||
} from '@dcloudio/uni-app';
|
} from '@dcloudio/uni-app';
|
||||||
import {
|
import {
|
||||||
computed,
|
computed,
|
||||||
reactive
|
reactive,
|
||||||
|
ref
|
||||||
} from 'vue';
|
} from 'vue';
|
||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import {
|
import {
|
||||||
onPageScroll
|
onPageScroll
|
||||||
} from '@dcloudio/uni-app';
|
} from '@dcloudio/uni-app';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const statusBarHeight = sheep.$platform.device.statusBarHeight * 2;
|
const statusBarHeight = sheep.$platform.device.statusBarHeight * 2;
|
||||||
const agentInfo = computed(() => sheep.$store('user').agentInfo);
|
const agentInfo = computed(() => sheep.$store('user').agentInfo);
|
||||||
const userInfo = computed(() => sheep.$store('user').userInfo);
|
const userInfo = computed(() => sheep.$store('user').userInfo);
|
||||||
|
@ -102,6 +197,7 @@
|
||||||
state.scrollTop = true;
|
state.scrollTop = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
let sort=ref();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
getSummary: {},
|
getSummary: {},
|
||||||
pagination: {
|
pagination: {
|
||||||
|
@ -111,8 +207,14 @@
|
||||||
last_page: 1,
|
last_page: 1,
|
||||||
},
|
},
|
||||||
loadStatus: '',
|
loadStatus: '',
|
||||||
|
// ↓新ui逻辑
|
||||||
|
level: 1,
|
||||||
|
nickname: ref(''),
|
||||||
|
sortKey:'',
|
||||||
|
isAsc:''
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
function filterUserNum(num) {
|
function filterUserNum(num) {
|
||||||
if (_.isNil(num)) {
|
if (_.isNil(num)) {
|
||||||
return '';
|
return '';
|
||||||
|
@ -120,6 +222,10 @@
|
||||||
return `下级团队${num}人`;
|
return `下级团队${num}人`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function submitForm() {
|
||||||
|
state.pagination.data = []
|
||||||
|
getTeamList();
|
||||||
|
}
|
||||||
async function getTeamList(page = 1, list_rows = 8) {
|
async function getTeamList(page = 1, list_rows = 8) {
|
||||||
state.loadStatus = 'loading';
|
state.loadStatus = 'loading';
|
||||||
// nickname: this.nickname,
|
// nickname: this.nickname,
|
||||||
|
@ -128,10 +234,10 @@
|
||||||
let res = await sheep.$api.commission.team({
|
let res = await sheep.$api.commission.team({
|
||||||
pageSize: list_rows,
|
pageSize: list_rows,
|
||||||
pageNo: page,
|
pageNo: page,
|
||||||
level: '1',
|
level: state.level,
|
||||||
'sortingField.order': 'desc',
|
'sortingField.order': 'desc',
|
||||||
'sortingField.field': 'userCount',
|
'sortingField.field': 'userCount',
|
||||||
nickname: ''
|
nickname: state.nickname
|
||||||
});
|
});
|
||||||
console.log(res, '分销团队列表');
|
console.log(res, '分销团队列表');
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
|
@ -148,6 +254,19 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setType(e) {
|
||||||
|
state.pagination.data = []
|
||||||
|
state.level = e + '';
|
||||||
|
getTeamList( )
|
||||||
|
}
|
||||||
|
|
||||||
|
function setSort(sortKey, isAsc) {
|
||||||
|
state.pagination.data = []
|
||||||
|
sort = sortKey + isAsc.toUpperCase();
|
||||||
|
state.isAsc=isAsc;
|
||||||
|
state.sortKey=sortKey;
|
||||||
|
getTeamList();
|
||||||
|
}
|
||||||
onLoad(async () => {
|
onLoad(async () => {
|
||||||
getTeamList();
|
getTeamList();
|
||||||
let res = await sheep.$api.commission.getSummary();
|
let res = await sheep.$api.commission.getSummary();
|
||||||
|
@ -168,6 +287,19 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
.l1 {
|
||||||
|
background-color: #fff;
|
||||||
|
height: 86rpx;
|
||||||
|
line-height: 86rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #282828;
|
||||||
|
border-bottom: 1rpx solid #eee;
|
||||||
|
border-top-left-radius: 14rpx;
|
||||||
|
border-top-right-radius: 14rpx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-around;
|
||||||
|
}
|
||||||
|
|
||||||
.header-box {
|
.header-box {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 0 20rpx 20rpx 20rpx;
|
padding: 0 20rpx 20rpx 20rpx;
|
||||||
|
@ -263,4 +395,142 @@
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.promoter-list .nav {
|
||||||
|
background-color: #fff;
|
||||||
|
height: 86rpx;
|
||||||
|
line-height: 86rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #282828;
|
||||||
|
border-bottom: 1rpx solid #eee;
|
||||||
|
border-top-left-radius: 14rpx;
|
||||||
|
border-top-right-radius: 14rpx;
|
||||||
|
margin-top: -30rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .nav .item.on {
|
||||||
|
border-bottom: 5rpx solid;
|
||||||
|
// $theme-color
|
||||||
|
color: red;
|
||||||
|
// $theme-color
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .search {
|
||||||
|
width: 100%;
|
||||||
|
background-color: #fff;
|
||||||
|
height: 100rpx;
|
||||||
|
padding: 0 24rpx;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-bottom-left-radius: 14rpx;
|
||||||
|
border-bottom-right-radius: 14rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .search .input {
|
||||||
|
width: 592rpx;
|
||||||
|
height: 60rpx;
|
||||||
|
border-radius: 50rpx;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
text-align: center;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .search .input input {
|
||||||
|
height: 100%;
|
||||||
|
font-size: 26rpx;
|
||||||
|
width: 610rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .search .input .placeholder {
|
||||||
|
color: #bbb;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .search .input .iconfont {
|
||||||
|
position: absolute;
|
||||||
|
right: 28rpx;
|
||||||
|
color: #999;
|
||||||
|
font-size: 28rpx;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .search .iconfont {
|
||||||
|
font-size: 32rpx;
|
||||||
|
color: #515151;
|
||||||
|
height: 60rpx;
|
||||||
|
line-height: 60rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list {
|
||||||
|
margin-top: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .sortNav {
|
||||||
|
background-color: #fff;
|
||||||
|
height: 76rpx;
|
||||||
|
border-bottom: 1rpx solid #eee;
|
||||||
|
color: #333;
|
||||||
|
font-size: 28rpx;
|
||||||
|
border-top-left-radius: 14rpx;
|
||||||
|
border-top-right-radius: 14rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .sortNav .sortItem {
|
||||||
|
text-align: center;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .sortNav .sortItem image {
|
||||||
|
width: 24rpx;
|
||||||
|
height: 24rpx;
|
||||||
|
margin-left: 6rpx;
|
||||||
|
vertical-align: -3rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item {
|
||||||
|
background-color: #fff;
|
||||||
|
border-bottom: 1rpx solid #eee;
|
||||||
|
height: 152rpx;
|
||||||
|
padding: 0 24rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item .picTxt .pictrue {
|
||||||
|
width: 106rpx;
|
||||||
|
height: 106rpx;
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item .picTxt .pictrue image {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: 3rpx solid #fff;
|
||||||
|
box-shadow: 0 0 10rpx #aaa;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item .picTxt .text {
|
||||||
|
// width: 304rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
color: #666;
|
||||||
|
margin-left: 14rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item .picTxt .text .name {
|
||||||
|
font-size: 28rpx;
|
||||||
|
color: #333;
|
||||||
|
margin-bottom: 13rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item .right {
|
||||||
|
text-align: right;
|
||||||
|
font-size: 22rpx;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.promoter-list .list .item .right .num {
|
||||||
|
margin-right: 7rpx;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
|
@ -30,7 +30,8 @@
|
||||||
import {
|
import {
|
||||||
reactive,
|
reactive,
|
||||||
onBeforeMount,
|
onBeforeMount,
|
||||||
nextTick
|
nextTick,
|
||||||
|
ref
|
||||||
} from 'vue';
|
} from 'vue';
|
||||||
import sheep from '@/sheep';
|
import sheep from '@/sheep';
|
||||||
|
|
||||||
|
@ -52,7 +53,7 @@
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
currentValue: '0',
|
currentValue: '0',
|
||||||
});
|
});
|
||||||
const typeList = [{
|
const typeList = reactive([{
|
||||||
// icon: '/static/img/shop/pay/wechat.png',
|
// icon: '/static/img/shop/pay/wechat.png',
|
||||||
title: '工商银行',
|
title: '工商银行',
|
||||||
value: '0',
|
value: '0',
|
||||||
|
@ -67,7 +68,7 @@
|
||||||
title: '农业',
|
title: '农业',
|
||||||
value: '2',
|
value: '2',
|
||||||
},
|
},
|
||||||
];
|
])
|
||||||
const getWalletAccountInfo = async () => {
|
const getWalletAccountInfo = async () => {
|
||||||
return new Promise(async (resolve, reject) => {
|
return new Promise(async (resolve, reject) => {
|
||||||
let res = await sheep.$api.user.account.info({
|
let res = await sheep.$api.user.account.info({
|
||||||
|
|
|
@ -21,29 +21,44 @@
|
||||||
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.amount" type="number"
|
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.amount" type="number"
|
||||||
placeholder="请输入提现金额" />
|
placeholder="请输入提现金额" />
|
||||||
</view>
|
</view>
|
||||||
<view class="card-title">持卡人</view>
|
<view class="card-title" v-show='txfag==1'>持卡人</view>
|
||||||
<view class="input-box ss-flex ss-col-center border-bottom">
|
<view class="input-box ss-flex ss-col-center border-bottom" v-show='txfag==1'>
|
||||||
<view class="unit"></view>
|
<view class="unit"></view>
|
||||||
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.name"
|
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.name"
|
||||||
placeholder="请输入持卡人姓名" />
|
placeholder="请输入持卡人姓名" />
|
||||||
</view>
|
</view>
|
||||||
<view class="card-title">卡号</view>
|
<view class="card-title" v-show='txfag==1'>卡号</view>
|
||||||
<view class="input-box ss-flex ss-col-center border-bottom">
|
<view class="input-box ss-flex ss-col-center border-bottom" v-show='txfag==1'>
|
||||||
<view class="unit"></view>
|
<view class="unit"></view>
|
||||||
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.accountNo"
|
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.accountNo"
|
||||||
placeholder="请输卡号" />
|
placeholder="请输卡号" />
|
||||||
</view>
|
</view>
|
||||||
<view class="bank-box ss-flex ss-col-center ss-row-between ss-m-b-30">
|
<view class="card-title">收款码</view>
|
||||||
|
<view class="input-box ss-flex ss-col-center border-bottom">
|
||||||
|
<view class="unit"></view>
|
||||||
|
<uni-easyinput :inputBorder="false" class="ss-flex-1 ss-p-l-10" v-model="state.accountQrCodeUrl"
|
||||||
|
placeholder="请输收款码地址" />
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="bank-box ss-flex ss-col-center ss-row-between ss-m-b-30" style='display:block'>
|
||||||
|
<view class="name">选择提现方式:</view>
|
||||||
|
<!-- <view class="bank-list ss-flex ss-col-center" style="margin-left:auto" >
|
||||||
|
<view class="empty-text">请选择提现方式</view>
|
||||||
|
<text class="cicon-forward"></text>
|
||||||
|
</view> -->
|
||||||
|
<uni-section title="单选" type="line">
|
||||||
|
<view class="uni-px-5 uni-pb-5" style='font-size:28rpx'>
|
||||||
|
<uni-data-checkbox v-model="txfag" :localdata="txList"></uni-data-checkbox>
|
||||||
|
</view>
|
||||||
|
</uni-section>
|
||||||
|
</view>
|
||||||
|
<view class="bank-box ss-flex ss-col-center ss-row-between ss-m-b-30" v-show='txfag==1'>
|
||||||
<view class="name">选择银行</view>
|
<view class="name">选择银行</view>
|
||||||
<view class="bank-list ss-flex ss-col-center" @tap="onAccountSelect(true)">
|
<view class="bank-list ss-flex ss-col-center" @tap="onAccountSelect(true)">
|
||||||
<view v-if="!state.accountInfo.type" class="empty-text">请选择提现方式</view>
|
<view v-if="!state.accountInfo.type" class="empty-text">请选择提现方式</view>
|
||||||
<view v-if="state.accountInfo.type === '0'" class="empty-text">工商银行</view>
|
<view v-if="state.accountInfo.type === '0'" class="empty-text">工商银行</view>
|
||||||
<view v-if="state.accountInfo.type === '1'" class="empty-text">建设银行</view>
|
<view v-if="state.accountInfo.type === '1'" class="empty-text">建设银行</view>
|
||||||
<view v-if="state.accountInfo.type === '2'" class="empty-text">农业银行</view>
|
<view v-if="state.accountInfo.type === '2'" class="empty-text">农业银行</view>
|
||||||
<!-- <view v-if="!state.accountInfo.type" class="empty-text">请选择提现方式</view>
|
|
||||||
<view v-if="state.accountInfo.type === 'wechat'" class="empty-text">微信零钱</view>
|
|
||||||
<view v-if="state.accountInfo.type === 'alipay'" class="empty-text">支付宝账户</view>
|
|
||||||
<view v-if="state.accountInfo.type === 'bank'" class="empty-text">银行卡转账</view> -->
|
|
||||||
<text class="cicon-forward"></text>
|
<text class="cicon-forward"></text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -51,10 +66,6 @@
|
||||||
<view class="placeholder-text" v-if="state.accountInfo.account_name">
|
<view class="placeholder-text" v-if="state.accountInfo.account_name">
|
||||||
{{ state.accountInfo.account_header }}|{{ state.accountInfo.account_name }}
|
{{ state.accountInfo.account_header }}|{{ state.accountInfo.account_name }}
|
||||||
</view>
|
</view>
|
||||||
<!-- <view class="placeholder-text" v-else>暂无提现账户</view>
|
|
||||||
<button class="add-btn ss-reset-button" @tap="onAccountEdit(true)">
|
|
||||||
{{ state.accountInfo.account_name ? '修改' : '添加' }}
|
|
||||||
</button> -->
|
|
||||||
</view>
|
</view>
|
||||||
<button class="ss-reset-button save-btn ui-BG-Main-Gradient ui-Shadow-Main" @tap="onConfirm">
|
<button class="ss-reset-button save-btn ui-BG-Main-Gradient ui-Shadow-Main" @tap="onConfirm">
|
||||||
确认提现
|
确认提现
|
||||||
|
@ -91,7 +102,7 @@
|
||||||
import {
|
import {
|
||||||
computed,
|
computed,
|
||||||
reactive,
|
reactive,
|
||||||
onBeforeMount
|
onBeforeMount,ref
|
||||||
} from 'vue';
|
} from 'vue';
|
||||||
import sheep from '@/sheep';
|
import sheep from '@/sheep';
|
||||||
import accountTypeSelect from './components/account-type-select.vue';
|
import accountTypeSelect from './components/account-type-select.vue';
|
||||||
|
@ -130,7 +141,11 @@
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
let txfag=ref(1)
|
||||||
|
const txList=[{text:'银行卡提现',value:1},{text:'微信提现',value:2},{text:'支付宝提现',value:3}]
|
||||||
|
function tixian(v){
|
||||||
|
console.log(v)
|
||||||
|
}
|
||||||
const userStore = sheep.$store('user');
|
const userStore = sheep.$store('user');
|
||||||
const userInfo = computed(() => userStore.userInfo);
|
const userInfo = computed(() => userStore.userInfo);
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
|
@ -152,6 +167,7 @@
|
||||||
methods: [],
|
methods: [],
|
||||||
},
|
},
|
||||||
rulesList: [],
|
rulesList: [],
|
||||||
|
accountQrCodeUrl:''
|
||||||
});
|
});
|
||||||
|
|
||||||
const onAccountEdit = (e) => {
|
const onAccountEdit = (e) => {
|
||||||
|
@ -167,8 +183,9 @@
|
||||||
accountNo: state.accountNo,
|
accountNo: state.accountNo,
|
||||||
name: state.name,
|
name: state.name,
|
||||||
bankName: state.accountInfo.type,
|
bankName: state.accountInfo.type,
|
||||||
type: '2',
|
type: txfag.value,
|
||||||
price: state.amount * 100
|
price: state.amount * 100,
|
||||||
|
accountQrCodeUrl:state.accountQrCodeUrl
|
||||||
};
|
};
|
||||||
console.log(payload);
|
console.log(payload);
|
||||||
// return;
|
// return;
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
import request from '@/sheep/request';
|
import request from '@/sheep/request';
|
||||||
|
|
||||||
const DiyTemplateApi = {
|
const DiyTemplateApi = {
|
||||||
getUsedDiyTemplate: () => {
|
// getUsedDiyTemplate: () => {
|
||||||
return request({
|
// return request({
|
||||||
url: '/app-api/promotion/diy-template/used',
|
// url: '/app-api/promotion/diy-template/used',
|
||||||
method: 'GET',
|
// method: 'GET',
|
||||||
});
|
// });
|
||||||
},
|
// },
|
||||||
getDiyTemplate: (id) => {
|
getDiyTemplate: (id) => {
|
||||||
return request({
|
return request({
|
||||||
url: '/app-api/promotion/diy-template/get',
|
url: '/app-api/promotion/diy-template/get',
|
||||||
|
|
|
@ -94,7 +94,8 @@ http.interceptors.request.use(
|
||||||
if (config.url.indexOf('/app-api/') !== -1) {
|
if (config.url.indexOf('/app-api/') !== -1) {
|
||||||
config.header['Accept'] = '*/*'
|
config.header['Accept'] = '*/*'
|
||||||
config.header['tenant-id'] = '1';
|
config.header['tenant-id'] = '1';
|
||||||
config.header['terminal'] = '20';
|
config.header['terminal'] = '20';
|
||||||
|
config.header['Authorization'] = 'Bearer test247';
|
||||||
}
|
}
|
||||||
return config;
|
return config;
|
||||||
},
|
},
|
||||||
|
@ -108,10 +109,10 @@ http.interceptors.request.use(
|
||||||
*/
|
*/
|
||||||
http.interceptors.response.use(
|
http.interceptors.response.use(
|
||||||
(response) => {
|
(response) => {
|
||||||
// 约定:如果是 /auth/ 下的 URL 地址,并且返回了 accessToken 说明是登录相关的接口,则自动设置登陆令牌
|
// 约定:如果是 /auth/ 下的 URL 地址,并且返回了 accessToken 说明是登录相关的接口,则自动设置登陆令牌
|
||||||
if (response.config.url.indexOf('/member/auth/') >= 0 && response.data?.data?.accessToken) {
|
if (response.config.url.indexOf('/member/auth/') >= 0 && response.data?.data?.accessToken) {
|
||||||
$store('user').setToken(response.data.data.accessToken);
|
$store('user').setToken(response.data.data.accessToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
response.config.custom.showLoading && closeLoading();
|
response.config.custom.showLoading && closeLoading();
|
||||||
if (response.data.error !== 0 && response.data.code !== 0) {
|
if (response.data.error !== 0 && response.data.code !== 0) {
|
||||||
|
@ -123,10 +124,10 @@ http.interceptors.response.use(
|
||||||
});
|
});
|
||||||
return Promise.resolve(response.data);
|
return Promise.resolve(response.data);
|
||||||
}
|
}
|
||||||
// 成功时的提示
|
// 成功时的提示
|
||||||
if (
|
if (
|
||||||
(response.data.error === 0 || response.data.code === 0) &&
|
(response.data.error === 0 || response.data.code === 0) &&
|
||||||
( response.data.msg !== '' || response.config.custom.successMsg !== '' ) &&
|
(response.data.msg !== '' || response.config.custom.successMsg !== '') &&
|
||||||
response.config.custom.showSuccess
|
response.config.custom.showSuccess
|
||||||
) {
|
) {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
|
@ -213,8 +214,8 @@ const request = (config) => {
|
||||||
}
|
}
|
||||||
// TODO 芋艿:额外拼接
|
// TODO 芋艿:额外拼接
|
||||||
if (config.url.indexOf('/app-api/') >= 0) {
|
if (config.url.indexOf('/app-api/') >= 0) {
|
||||||
// config.url = 'http://api-dashboard.yudao.iocoder.cn' + config.url; // 调用【云端】
|
config.url = 'http://api-dashboard.yudao.iocoder.cn' + config.url; // 调用【云端】
|
||||||
config.url = 'http://127.0.0.1:48080' + config.url; // 调用【本地】
|
// config.url = 'http://127.0.0.1:48080' + config.url; // 调用【本地】
|
||||||
// config.url = 'http://yunai.natapp1.cc' + config.url; // 调用【natapp】
|
// config.url = 'http://yunai.natapp1.cc' + config.url; // 调用【natapp】
|
||||||
}
|
}
|
||||||
return http.middleware(config);
|
return http.middleware(config);
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 5.0 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
|
@ -1,3 +1,7 @@
|
||||||
|
## 1.0.3(2022-09-16)
|
||||||
|
- 可以使用 uni-scss 控制主题色
|
||||||
|
## 1.0.2(2022-06-30)
|
||||||
|
- 优化 在 uni-forms 中的依赖注入方式
|
||||||
## 1.0.1(2022-02-07)
|
## 1.0.1(2022-02-07)
|
||||||
- 修复 multiple 为 true 时,v-model 的值为 null 报错的 bug
|
- 修复 multiple 为 true 时,v-model 的值为 null 报错的 bug
|
||||||
## 1.0.0(2021-11-19)
|
## 1.0.0(2021-11-19)
|
||||||
|
|
|
@ -155,17 +155,17 @@
|
||||||
value(newVal) {
|
value(newVal) {
|
||||||
this.dataList = this.getDataList(newVal)
|
this.dataList = this.getDataList(newVal)
|
||||||
// fix by mehaotian is_reset 在 uni-forms 中定义
|
// fix by mehaotian is_reset 在 uni-forms 中定义
|
||||||
if(!this.is_reset){
|
// if(!this.is_reset){
|
||||||
this.is_reset = false
|
// this.is_reset = false
|
||||||
this.formItem && this.formItem.setValue(newVal)
|
// this.formItem && this.formItem.setValue(newVal)
|
||||||
}
|
// }
|
||||||
},
|
},
|
||||||
modelValue(newVal) {
|
modelValue(newVal) {
|
||||||
this.dataList = this.getDataList(newVal);
|
this.dataList = this.getDataList(newVal);
|
||||||
if(!this.is_reset){
|
// if(!this.is_reset){
|
||||||
this.is_reset = false
|
// this.is_reset = false
|
||||||
this.formItem && this.formItem.setValue(newVal)
|
// this.formItem && this.formItem.setValue(newVal)
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
|
@ -193,22 +193,22 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.form = this.getForm('uniForms')
|
// this.form = this.getForm('uniForms')
|
||||||
this.formItem = this.getForm('uniFormsItem')
|
// this.formItem = this.getForm('uniFormsItem')
|
||||||
// this.formItem && this.formItem.setValue(this.value)
|
// this.formItem && this.formItem.setValue(this.value)
|
||||||
|
|
||||||
if (this.formItem) {
|
// if (this.formItem) {
|
||||||
this.isTop = 6
|
// this.isTop = 6
|
||||||
if (this.formItem.name) {
|
// if (this.formItem.name) {
|
||||||
// 如果存在name添加默认值,否则formData 中不存在这个字段不校验
|
// // 如果存在name添加默认值,否则formData 中不存在这个字段不校验
|
||||||
if(!this.is_reset){
|
// if(!this.is_reset){
|
||||||
this.is_reset = false
|
// this.is_reset = false
|
||||||
this.formItem.setValue(this.dataValue)
|
// this.formItem.setValue(this.dataValue)
|
||||||
}
|
// }
|
||||||
this.rename = this.formItem.name
|
// this.rename = this.formItem.name
|
||||||
this.form.inputChildrens.push(this)
|
// this.form.inputChildrens.push(this)
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
if (this.localdata && this.localdata.length !== 0) {
|
if (this.localdata && this.localdata.length !== 0) {
|
||||||
this.isLocal = true
|
this.isLocal = true
|
||||||
|
@ -273,7 +273,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.formItem && this.formItem.setValue(detail.value)
|
// this.formItem && this.formItem.setValue(detail.value)
|
||||||
// TODO 兼容 vue2
|
// TODO 兼容 vue2
|
||||||
this.$emit('input', detail.value);
|
this.$emit('input', detail.value);
|
||||||
// // TOTO 兼容 vue3
|
// // TOTO 兼容 vue3
|
||||||
|
@ -375,7 +375,7 @@
|
||||||
selectedArr.push(item[this.map.value])
|
selectedArr.push(item[this.map.value])
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
return this.dataValue && this.dataValue.length > 0 ? this.dataValue : selectedArr
|
return this.dataValue.length > 0 ? this.dataValue : selectedArr
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -384,11 +384,13 @@
|
||||||
setStyleBackgroud(item) {
|
setStyleBackgroud(item) {
|
||||||
let styles = {}
|
let styles = {}
|
||||||
let selectedColor = this.selectedColor?this.selectedColor:'#2979ff'
|
let selectedColor = this.selectedColor?this.selectedColor:'#2979ff'
|
||||||
if (this.mode !== 'list') {
|
if (this.selectedColor) {
|
||||||
styles['border-color'] = item.selected?selectedColor:'#DCDFE6'
|
if (this.mode !== 'list') {
|
||||||
}
|
styles['border-color'] = item.selected?selectedColor:'#DCDFE6'
|
||||||
if (this.mode === 'tag') {
|
}
|
||||||
styles['background-color'] = item.selected? selectedColor:'#f5f5f5'
|
if (this.mode === 'tag') {
|
||||||
|
styles['background-color'] = item.selected? selectedColor:'#f5f5f5'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
let classles = ''
|
let classles = ''
|
||||||
for (let i in styles) {
|
for (let i in styles) {
|
||||||
|
@ -399,15 +401,16 @@
|
||||||
setStyleIcon(item) {
|
setStyleIcon(item) {
|
||||||
let styles = {}
|
let styles = {}
|
||||||
let classles = ''
|
let classles = ''
|
||||||
let selectedColor = this.selectedColor?this.selectedColor:'#2979ff'
|
if (this.selectedColor) {
|
||||||
styles['background-color'] = item.selected?selectedColor:'#fff'
|
let selectedColor = this.selectedColor?this.selectedColor:'#2979ff'
|
||||||
styles['border-color'] = item.selected?selectedColor:'#DCDFE6'
|
styles['background-color'] = item.selected?selectedColor:'#fff'
|
||||||
|
|
||||||
if(!item.selected && item.disabled){
|
|
||||||
styles['background-color'] = '#F2F6FC'
|
|
||||||
styles['border-color'] = item.selected?selectedColor:'#DCDFE6'
|
styles['border-color'] = item.selected?selectedColor:'#DCDFE6'
|
||||||
}
|
|
||||||
|
|
||||||
|
if(!item.selected && item.disabled){
|
||||||
|
styles['background-color'] = '#F2F6FC'
|
||||||
|
styles['border-color'] = item.selected?selectedColor:'#DCDFE6'
|
||||||
|
}
|
||||||
|
}
|
||||||
for (let i in styles) {
|
for (let i in styles) {
|
||||||
classles += `${i}:${styles[i]};`
|
classles += `${i}:${styles[i]};`
|
||||||
}
|
}
|
||||||
|
@ -416,16 +419,17 @@
|
||||||
setStyleIconText(item) {
|
setStyleIconText(item) {
|
||||||
let styles = {}
|
let styles = {}
|
||||||
let classles = ''
|
let classles = ''
|
||||||
let selectedColor = this.selectedColor?this.selectedColor:'#2979ff'
|
if (this.selectedColor) {
|
||||||
if (this.mode === 'tag') {
|
let selectedColor = this.selectedColor?this.selectedColor:'#2979ff'
|
||||||
styles.color = item.selected?(this.selectedTextColor?this.selectedTextColor:'#fff'):'#666'
|
if (this.mode === 'tag') {
|
||||||
} else {
|
styles.color = item.selected?(this.selectedTextColor?this.selectedTextColor:'#fff'):'#666'
|
||||||
styles.color = item.selected?(this.selectedTextColor?this.selectedTextColor:selectedColor):'#666'
|
} else {
|
||||||
|
styles.color = item.selected?(this.selectedTextColor?this.selectedTextColor:selectedColor):'#666'
|
||||||
|
}
|
||||||
|
if(!item.selected && item.disabled){
|
||||||
|
styles.color = '#999'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(!item.selected && item.disabled){
|
|
||||||
styles.color = '#999'
|
|
||||||
}
|
|
||||||
|
|
||||||
for (let i in styles) {
|
for (let i in styles) {
|
||||||
classles += `${i}:${styles[i]};`
|
classles += `${i}:${styles[i]};`
|
||||||
}
|
}
|
||||||
|
@ -448,7 +452,7 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
$checked-color: #2979ff;
|
$uni-primary: #2979ff !default;
|
||||||
$border-color: #DCDFE6;
|
$border-color: #DCDFE6;
|
||||||
$disable:0.4;
|
$disable:0.4;
|
||||||
|
|
||||||
|
@ -614,8 +618,8 @@
|
||||||
// 选中
|
// 选中
|
||||||
&.is-checked {
|
&.is-checked {
|
||||||
.checkbox__inner {
|
.checkbox__inner {
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
background-color: $checked-color;
|
background-color: $uni-primary;
|
||||||
|
|
||||||
.checkbox__inner-icon {
|
.checkbox__inner-icon {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
|
@ -623,14 +627,14 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.radio__inner {
|
.radio__inner {
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
.radio__inner-icon {
|
.radio__inner-icon {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
background-color: $checked-color;
|
background-color: $uni-primary;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.checklist-text {
|
.checklist-text {
|
||||||
color: $checked-color;
|
color: $uni-primary;
|
||||||
}
|
}
|
||||||
// 选中禁用
|
// 选中禁用
|
||||||
&.is-disable {
|
&.is-disable {
|
||||||
|
@ -683,10 +687,10 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
&.is-checked {
|
&.is-checked {
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
.checkbox__inner {
|
.checkbox__inner {
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
background-color: $checked-color;
|
background-color: $uni-primary;
|
||||||
.checkbox__inner-icon {
|
.checkbox__inner-icon {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
transform: rotate(45deg);
|
transform: rotate(45deg);
|
||||||
|
@ -694,16 +698,16 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.radio__inner {
|
.radio__inner {
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
|
|
||||||
.radio__inner-icon {
|
.radio__inner-icon {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
background-color: $checked-color;
|
background-color: $uni-primary;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.checklist-text {
|
.checklist-text {
|
||||||
color: $checked-color;
|
color: $uni-primary;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 选中禁用
|
// 选中禁用
|
||||||
|
@ -735,8 +739,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
&.is-checked {
|
&.is-checked {
|
||||||
background-color: $checked-color;
|
background-color: $uni-primary;
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
|
|
||||||
.checklist-text {
|
.checklist-text {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
|
@ -775,8 +779,8 @@
|
||||||
|
|
||||||
&.is-checked {
|
&.is-checked {
|
||||||
.checkbox__inner {
|
.checkbox__inner {
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
background-color: $checked-color;
|
background-color: $uni-primary;
|
||||||
|
|
||||||
.checkbox__inner-icon {
|
.checkbox__inner-icon {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
|
@ -789,13 +793,13 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.checklist-text {
|
.checklist-text {
|
||||||
color: $checked-color;
|
color: $uni-primary;
|
||||||
}
|
}
|
||||||
|
|
||||||
.checklist-content {
|
.checklist-content {
|
||||||
.checkobx__list {
|
.checkobx__list {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
border-color: $checked-color;
|
border-color: $uni-primary;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"id": "uni-data-checkbox",
|
"id": "uni-data-checkbox",
|
||||||
"displayName": "uni-data-checkbox 数据选择器",
|
"displayName": "uni-data-checkbox 数据选择器",
|
||||||
"version": "1.0.1",
|
"version": "1.0.3",
|
||||||
"description": "通过数据驱动的单选框和复选框",
|
"description": "通过数据驱动的单选框和复选框",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"uni-ui",
|
"uni-ui",
|
||||||
|
@ -17,11 +17,7 @@
|
||||||
"directories": {
|
"directories": {
|
||||||
"example": "../../temps/example_temps"
|
"example": "../../temps/example_temps"
|
||||||
},
|
},
|
||||||
"dcloudext": {
|
"dcloudext": {
|
||||||
"category": [
|
|
||||||
"前端组件",
|
|
||||||
"通用组件"
|
|
||||||
],
|
|
||||||
"sale": {
|
"sale": {
|
||||||
"regular": {
|
"regular": {
|
||||||
"price": "0.00"
|
"price": "0.00"
|
||||||
|
@ -38,7 +34,8 @@
|
||||||
"data": "无",
|
"data": "无",
|
||||||
"permissions": "无"
|
"permissions": "无"
|
||||||
},
|
},
|
||||||
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui"
|
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
|
||||||
|
"type": "component-vue"
|
||||||
},
|
},
|
||||||
"uni_modules": {
|
"uni_modules": {
|
||||||
"dependencies": ["uni-load-more","uni-scss"],
|
"dependencies": ["uni-load-more","uni-scss"],
|
||||||
|
|
Loading…
Reference in New Issue