diff --git a/App.vue b/App.vue
index 7fd165e..861c838 100644
--- a/App.vue
+++ b/App.vue
@@ -1,6 +1,6 @@
diff --git a/api/index.js b/api/index.js
index 3bad97b..0aa6ba0 100644
--- a/api/index.js
+++ b/api/index.js
@@ -62,16 +62,15 @@ export const defaultRequest4 =query=>{
isLoad:false
})
}
-//上传图片
-export const defaultRequest5 =(query,img)=>{
+export const defaultRequest5 =(query,comments)=>{
return httpRequest({
url:'mapi/api_v2011.php?appcode=DOPE+',
method:'post',
data:query,
- afile:img,
errMsg:true,
- isCookies:false,
- isEncryption:false,
- isLoad:true
+ isCookies:true,
+ isEncryption:true,
+ isLoad:true,
+ comments:comments
})
}
\ No newline at end of file
diff --git a/api/request.js b/api/request.js
index c5a09e1..8e3aa55 100644
--- a/api/request.js
+++ b/api/request.js
@@ -12,7 +12,7 @@ const httpRequest = (params) => {
const json_data={
appcode:'DOPE+' ,//应用编码
- appchannel:'FXXXXHUAWEI' ,//应用发布渠道
+ appchannel:'DOPEGOOGLE' ,//应用发布渠道
appver: '1.0.0',//应用版本
appname:'cnic_buyer' ,//应用名称
manufacturer:'HUAWEI' ,//设备生产商
@@ -26,9 +26,11 @@ const httpRequest = (params) => {
let key=params.key
if(params.isEncryption){
// console.info(JSON.parse(JSON.stringify(data.consignee)))
- key=encryption(JSON.parse(JSON.stringify(data[params.key])))
- // console.info(consignee)
+ key=encryption(JSON.parse(JSON.stringify(data[params.key])))
+
+ // console.info(key)
data=encryption(data)
+ // console.log(data)
data[params.key]=key
}else{
data=encryption(data)
@@ -40,9 +42,9 @@ const httpRequest = (params) => {
// console.info(encrypt_by_des(JSON.stringify(data),'6780f04cf2e211ec86a8005056c00008'))
// data=Base64.encode(encryptDes(JSON.stringify(data),'6780f04cf2e211ec86a8005056c00008'));
data=encryptDes(JSON.stringify(data),'6780f04cf2e211ec86a8005056c00008');
- // console.info(data)
+ // console.info(data)
// 解密
- // let data2 =JSON.parse(decodeURIComponent (decryptDes(Base64.decode(data),'6780f04cf2e211ec86a8005056c00008'))) ;
+ let data2 =JSON.parse(decryptDes(data,"6780f04cf2e211ec86a8005056c00008"))
// console.info(data2)
let data1={data:data}
@@ -96,9 +98,14 @@ const httpRequest = (params) => {
const encryption=(data)=>{
for(let key in data){
let item= data[key]
- data[key]=encodeURIComponent(item)
+ if(key ==='comments'){
+ data[key]=encryptDes(JSON.stringify(data[key]),'6780f04cf2e211ec86a8005056c00008');
+ data[key]=JSON.parse(decryptDes(data[key],"6780f04cf2e211ec86a8005056c00008"))
+ }else{
+ data[key]=encodeURIComponent(item)
+ }
}
return data
}
-export default httpRequest;
+export default httpRequest;
\ No newline at end of file
diff --git a/common/common.scss b/common/common.scss
index 6b5bd3e..faf6105 100644
--- a/common/common.scss
+++ b/common/common.scss
@@ -4,24 +4,92 @@
height: 50rpx;
// background-color: #000000;
}
+.img_border{
+ border-radius: 10rpx !important;
+ }
+ .tarbar{
+ height: 100rpx;
+ width: 100vw;
+ padding-top: 10rpx;
+ padding-bottom: 10rpx;
+ background-color: #fff;
+ bottom: 0;
+ z-index: 129;
+ font-size: 22rpx;
+ text-align: center;
+ position: fixed;
+ display: flex;
+ color:#707070;
+ justify-content: space-around;
+ .tarbar_img image{
+ height: 50rpx;
+ width: 50rpx;
+
+ // background-color: #fff;
+ }
+ .img_m image{
+ height: 120rpx;
+ width: 120rpx;
+ margin-top: -30rpx;
+ }
+
+ }
+ .padding-top{
+ padding-top: 110rpx !important;
+ // margin-top: 40rpx;
+ }
+ .margin_botoom{
+ padding-bottom: 200rpx;
+ }
.addCard{
font-size: 26rpx !important;
line-height: 34rpx;
}
.hotmaxW{
-
- // height:300rpx !important;
- padding:60rpx 60rpx !important;
- transition: margin-right 2s .5s;
- transform:scale(1.2);
+ padding-top:10rpx;
+ margin: 0 auto;
+ transform:scale(1,1);
+ transition: all .5s ease-in-out;
+}
+.spike1_item_bottom-sro{
+ margin-top: 14rpx !important;
+ // margin-left: 60rpx !important;
}
.hotmaxW :hover {
- transform:scale(1.2);
+
+
}
.hotmaxmin{
- padding:40rpx 40rpx !important;
- transition: margin-right 2s .5s;
- transform:scale(0.8);
+ transform:scale(0.8,0.8);
+ position: relative;
+ transition: all .5s ease-in-out;
+ // background-color: #666666;
+ opacity: 0.6 !important;
+ // padding-left:10rpx;
+ // padding-right:10rpx;
+ // position: fixed;
+ }
+// .hotmaxmin :after{
+// position: absolute;
+// content: '';
+
+// // padding:40rpx 40rpx !important;
+// // transition: margin-right 2s .5s;
+
+// box-shadow: 0 0 50rpx 30rpx #fff inset !important;
+// }
+.box_show{
+ width: 100%;
+ margin-left: 4rpx;
+ border-radius: 10rpx;
+
+ image{
+ width: 100%;
+ height: 100%;
+ border-radius: 10rpx;
+
+ }
+ box-shadow: 0 0 50rpx 30rpx #fff inset;
}
.empty_item{
@@ -120,7 +188,7 @@
display: flex;
align-items: center;
color: #666666;
- font-size: 24rpx;
+ font-size: 28rpx;
margin-bottom: 30.67rpx;
image{
@@ -128,7 +196,7 @@
height: 32rpx;
}
.address_title_name{
- font-size: 28rpx;
+ font-size: 32rpx;
color: black;
font-weight: bold;
margin-left: 24rpx;
@@ -138,8 +206,8 @@
.address_content{
padding-left: 56rpx;
color: #666666;
- font-size: 24rpx;
- font-weight: bold;
+ font-size: 28rpx;
+ // font-weight: bold;
}
}
@@ -166,9 +234,9 @@
}
.reviews_item_title{
display: flex;
- // align-items: center;
- // justify-content: space-around;
-
+ align-items: center;
+ // justify-content: space-around;
+ // justify-content: space-between;
.reviews_item_img{
height: 60rpx;
width: 60rpx;
@@ -199,7 +267,7 @@
// margin-left: 10rpx;
line-height: 50rpx;
- text-align: center;
+ text-align: left;
display: flex;
overflow: hidden;
@@ -216,6 +284,7 @@
.reviews_title_user_name{
max-width: 300rpx;
overflow: hidden;
+ text-align: left;
margin-left: 13.37rpx;
margin-right: 13.37rpx;
}
@@ -226,7 +295,7 @@
font-weight: 400;
color: #909090;
margin-top: 8rpx;
- margin-left: 50rpx;
+ margin-left: 108rpx;
}
}
@@ -248,19 +317,29 @@
.reviews_item_image{
display: flex;
align-items: center;
-
+ flex-wrap: wrap;
+ margin-bottom: 20rpx;
.reviews_image_content{
- width: 233.33rpx;
- height: 233.33rpx;
+ width: 200.33rpx;
+ height: 200.33rpx;
+ margin-bottom: 10rpx;
margin-left: 16.67rpx;
- background-color: #999999;
+ margin-right: 16rpx;
+ border-radius: 5rpx;
+ // background-color: #999999;
background-size: 100% !important;
image{
height: 100%;
width: 100%;
+ border-radius: 5rpx;
}
- &:first-child{
- margin-left: 0;
+ // &:first-child{
+ // margin-left: 0;
+ // }
+ .comment_video{
+ width: 200.33rpx;
+ height: 200.33rpx;
+ border-radius: 10rpx;
}
}
}
@@ -284,9 +363,7 @@
right: 26rpx;
}
}
- .img_border{
- border-radius: 10rpx;
- }
+
// 谈判细节
.order_popup{
position: fixed;
@@ -410,7 +487,7 @@
}
.wishlist_body{
padding-top:60rpx;
- // margin-top: 40rpx;
+ // margin-top: 40rpx;
position: relative;
height: 100%;
width: 100%;
@@ -420,8 +497,10 @@
}
.wishlist{
- padding: 0 26.67rpx;
+ padding: 0 2.67rpx 40rpx 10rpx;
display: flex;
+ // padding-top: 40rpx;
+
// justify-content: space-between;
flex-wrap: wrap;
@@ -443,10 +522,11 @@
margin-bottom: 25.33rpx;
background-color: #999999;
position: relative;
-
+ border-radius: 10rpx;
.wishlist_item_img_goods{
width: 100%;
height: 100%;
+ border-radius: 10rpx;
}
.select{
position: absolute;
@@ -459,7 +539,7 @@
.wishlist_item_bottom{
display: flex;
align-items: center;
- padding-left: 22.67rpx;
+ padding-right: 18.67rpx;
justify-content: space-between;
.wishlist_item_bottom_icon{
@@ -474,12 +554,13 @@
position: fixed;
bottom: 0;
width: 100%;
- border-top: 1px solid #F5F6FA;
+ background-color: #fff;
+ // border-top: 1px solid #F5F6FA;
display: flex;
justify-content: space-between;
align-items: center;
box-sizing: border-box;
-
+ color:#000;
.wishlist_foot_left{
font-size: 36rpx;
font-weight: 400;
@@ -504,13 +585,14 @@
width: 100%;
height: 100%;
background-color: #C0C0C0;
- color: #FFFFFF;
+ color: #fff;
border: none;
border-radius: 0;
}
.wishlist_foot_right_button{
- background-color: black !important;
+ background-color: #000 !important;
+ color:#fff !important;
}
}
@@ -598,6 +680,9 @@
}
}
// 优惠卷
+// .coupons_item:nth-child(1){
+// margin-top: 81rpx;
+// }
.coupons_item{
display: flex;
background-color: #FEF6F4;
@@ -605,6 +690,7 @@
color: #F66C46;
margin-top: 11rpx;
margin-bottom: 25.33rpx;
+
.coupons_item_left{
width: 216.67rpx;
height: 100%;
@@ -803,7 +889,8 @@
// 商品展示
.good_info{
- padding: 40rpx 0;
+ padding-top: 40rpx;
+ padding-bottom: 40rpx;
font-size: 22.67rpx;
color: #666666;
font-weight: bold;
@@ -881,4 +968,144 @@
}
}
}
-}
\ No newline at end of file
+}
+ .addCard{
+ z-index: 999;
+ position: fixed;
+ bottom: 0;
+ left: 0;
+ background-color: white;
+ padding-left: 29.33rpx;
+ padding-right: 29.33rpx;
+ box-sizing: border-box;
+ padding-top: 77.67rpx;
+ color:#000;
+ width: 100%;
+ // font-size: 30.67rpx;
+ font-weight: 400;
+ padding-bottom: 44.67rpx;
+
+ .addCard_close{
+ width: 21.33rpx;
+ height: 21.33rpx;
+ position: absolute;
+ right: 24.67rpx;
+ top: 18.67rpx;
+ }
+ .spike1{
+ margin-top: 0;
+ margin-bottom: 20rpx;
+ padding-bottom: 0;
+ border-bottom: none;
+ .addCard_scroll{
+ width: 286.67rpx;
+ height: 286.67rpx;
+ margin-left: 10.67rpx;
+ &:first-child{
+ margin-left: 0;
+ }
+ &:last-child{
+ margin-right: 15rpx;
+ }
+ }
+ }
+ .addCard_body{
+ padding-right: 31.33rpx;
+ max-height: 60vh;
+ min-height: 400rpx;
+ .addCard_price{
+ font-size: 44rpx;
+ font-weight: bold;
+ margin-top: 17.33rpx;
+ margin-bottom: 51.33rpx;
+ }
+ .color_select{
+
+ display: flex;
+
+ color: #666666;
+ flex-wrap: wrap;
+ margin-bottom: 59.33rpx;
+ .color_select_item{
+ margin-top: 22rpx;
+ position: relative;
+ background-color: #F9F7FA;
+ border-radius: 6.67rpx;
+ margin-right: 12.67rpx;
+ width: 134.67rpx;
+ image{
+ width: 134.67rpx;
+ height: 133.33rpx;
+ border-radius: 6.67rpx 6.67rpx 0 0;
+ }
+ .color_select_item_zoom{
+ width: 20.33rpx;
+ height: 20.33rpx;
+ // background-color: rgba(0, 0, 0, 0.3);
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ position: absolute;
+ right: 12.67rpx;
+ top: 9.33rpx;
+ z-index: 99;
+ image{
+ width: 100%;
+ height: 100%;
+ }
+ }
+ .color_select_item_bottom{
+ padding: 10rpx 0rpx;
+ font-size: 24rpx;
+ text-align: center;
+
+ }
+ }
+ .active_color{
+ color: #fff;;
+ background-color: #000;
+ border: 1px solid #000000;
+ }
+ }
+ .variations_select_size{
+ margin-left: 0;
+ margin-top: 26.67rpx;
+ margin-bottom: 40.67rpx;
+ .select_size_item{
+ background-size: cover;
+ margin-bottom: 16.67rpx !important;
+ &:nth-child(4n+4){
+ margin-right: 0;
+ }
+ }
+ }
+
+ }
+
+
+ }
+ .quantity{
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 43.33rpx;
+ .uni-numbox{
+ border: 1px solid #999999;
+ border-radius: 14rpx;
+ height: 42.67rpx;
+
+ /deep/ .uni-numbox__minus{
+ border-radius: 14rpx;
+ }
+ /deep/.uni-numbox__plus{
+ border-radius: 14rpx;
+ }
+ /deep/.uni-numbox__value{
+ border-left: 1px solid #999999;
+ border-right: 1px solid #999999;
+ height: 100%;
+ width: 63.33rpx;
+ font-size: 21.33rpx;
+ }
+ }
+ }
diff --git a/manifest.json b/manifest.json
index 8d4c838..9413c77 100644
--- a/manifest.json
+++ b/manifest.json
@@ -1,15 +1,26 @@
{
"name" : "DopePlus",
"appid" : "__UNI__A6CF3EA",
+ // "appid" : "__UNI__7D4CA0F",
"description" : "",
"versionName" : "1.0.0",
- "versionCode" : "100",
+ "versionCode" : 100,
"transformPx" : false,
+ // "targetSdkVersion" : 31,
+ "channel_list" : [
+ {
+ "id" : "DOPEGOOGLE",
+ "name" : "DOPEGOOGLE"
+ }
+ ],
/* 5+App特有相关 */
"app-plus" : {
"usingComponents" : true,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
+ "compatible" : {
+ "ignoreVersion" : true
+ },
// "splashscreen" : {
// "alwaysShowBeforeRender" : false,
// "waiting" : false,
@@ -31,7 +42,8 @@
"modules" : {
"Payment" : {},
"VideoPlayer" : {},
- "Push" : {}
+ "Contacts" : {},
+ "Speech" : {}
},
/* 应用发布信息 */
"distribute" : {
@@ -48,19 +60,24 @@
"",
"",
"",
+ "",
"",
"",
"",
"",
+ "",
"",
""
],
"autoSdkPermissions" : true,
- "minSdkVersion" : 21
+ "minSdkVersion" : 21,
+ "targetSdkVersion" : 31,
+ "abiFilters" : [ "armeabi-v7a", "arm64-v8a" ]
},
/* ios打包配置 */
"ios" : {
- "dSYMs" : false
+ "dSYMs" : false,
+ "idfa" : false
},
/* SDK配置 */
"sdkConfigs" : {
@@ -75,7 +92,8 @@
"returnURL_android" : "uni.unicoe0831://paypalpay"
}
},
- "push" : {}
+ "push" : {},
+ "speech" : {}
},
"splashscreen" : {
"androidStyle" : "default",
@@ -122,6 +140,134 @@
}
}
}
+ },
+ "nativePlugins" : {
+ "JG-JCore" : {
+ "JPUSH_APPKEY_IOS" : "",
+ "JPUSH_CHANNEL_IOS" : "",
+ "JPUSH_APPKEY_ANDROID" : "f7c642155be0cdfa97fb3d75",
+ "JPUSH_CHANNEL_ANDROID" : "f7c642155be0cdfa97fb3d75",
+ "__plugin_info__" : {
+ "name" : "JG-JCore",
+ "description" : "极光推送JCore插件",
+ "platforms" : "Android,iOS",
+ "url" : "",
+ "android_package_name" : "com.lilbeat.dopeplus",
+ "ios_bundle_id" : "com.lilbeat.dopeplus",
+ "isCloud" : false,
+ "bought" : -1,
+ "pid" : "",
+ "parameters" : {
+ "JPUSH_APPKEY_IOS" : {
+ "des" : "[iOS]极光portal配置应用信息时分配的AppKey",
+ "key" : "f7c642155be0cdfa97fb3d75",
+ "value" : ""
+ },
+ "JPUSH_CHANNEL_IOS" : {
+ "des" : "[iOS]用于统计分发渠道,不需要可填默认值developer-default",
+ "key" : "JCore:CHANNEL",
+ "value" : ""
+ },
+ "JPUSH_APPKEY_ANDROID" : {
+ "des" : "[Android]极光portal配置应用信息时分配的AppKey",
+ "key" : "f7c642155be0cdfa97fb3d75",
+ "value" : ""
+ },
+ "JPUSH_CHANNEL_ANDROID" : {
+ "des" : "[Android]用于统计分发渠道,不需要可填默认值developer-default",
+ "key" : "JPUSH_CHANNEL",
+ "value" : ""
+ }
+ }
+ }
+ },
+ "JG-JPush" : {
+ "JPUSH_ISPRODUCTION_IOS" : "",
+ "JPUSH_ADVERTISINGID_IOS" : "",
+ "JPUSH_DEFAULTINITJPUSH_IOS" : "",
+ "JPUSH_OPPO_APPKEY" : "",
+ "JPUSH_OPPO_APPID" : "",
+ "JPUSH_OPPO_APPSECRET" : "",
+ "JPUSH_VIVO_APPKEY" : "",
+ "JPUSH_VIVO_APPID" : "",
+ "JPUSH_MEIZU_APPKEY" : "",
+ "JPUSH_MEIZU_APPID" : "",
+ "JPUSH_XIAOMI_APPKEY" : "",
+ "JPUSH_XIAOMI_APPID" : "",
+ "__plugin_info__" : {
+ "name" : "JG-JPush",
+ "description" : "极光推送Hbuilder插件",
+ "platforms" : "Android,iOS",
+ "url" : "",
+ "android_package_name" : "com.lilbeat.dopeplus",
+ "ios_bundle_id" : "com.lilbeat.dopeplus",
+ "isCloud" : false,
+ "bought" : -1,
+ "pid" : "",
+ "parameters" : {
+ "JPUSH_ISPRODUCTION_IOS" : {
+ "des" : "[iOS]是否是生产环境,是填true,不是填false或者不填",
+ "key" : "JPush:ISPRODUCTION",
+ "value" : ""
+ },
+ "JPUSH_ADVERTISINGID_IOS" : {
+ "des" : "[iOS]广告标识符(IDFA)如果不需要使用IDFA,可不填",
+ "key" : "JPush:ADVERTISINGID",
+ "value" : ""
+ },
+ "JPUSH_DEFAULTINITJPUSH_IOS" : {
+ "des" : "[iOS]是否默认初始化,是填true,不是填false或者不填",
+ "key" : "JPush:DEFAULTINITJPUSH",
+ "value" : ""
+ },
+ "JPUSH_OPPO_APPKEY" : {
+ "des" : "厂商OPPO-appkey,示例:OP-12345678",
+ "key" : "OPPO_APPKEY",
+ "value" : ""
+ },
+ "JPUSH_OPPO_APPID" : {
+ "des" : "厂商OPPO-appId,示例:OP-12345678",
+ "key" : "OPPO_APPID",
+ "value" : ""
+ },
+ "JPUSH_OPPO_APPSECRET" : {
+ "des" : "厂商OPPO-appSecret,示例:OP-12345678",
+ "key" : "OPPO_APPSECRET",
+ "value" : ""
+ },
+ "JPUSH_VIVO_APPKEY" : {
+ "des" : "厂商VIVO-appkey,示例:12345678",
+ "key" : "com.vivo.push.api_key",
+ "value" : ""
+ },
+ "JPUSH_VIVO_APPID" : {
+ "des" : "厂商VIVO-appId,示例:12345678",
+ "key" : "com.vivo.push.app_id",
+ "value" : ""
+ },
+ "JPUSH_MEIZU_APPKEY" : {
+ "des" : "厂商MEIZU-appKey,示例:MZ-12345678",
+ "key" : "MEIZU_APPKEY",
+ "value" : ""
+ },
+ "JPUSH_MEIZU_APPID" : {
+ "des" : "厂商MEIZU-appId,示例:MZ-12345678",
+ "key" : "MEIZU_APPID",
+ "value" : ""
+ },
+ "JPUSH_XIAOMI_APPKEY" : {
+ "des" : "厂商XIAOMI-appKey,示例:MI-12345678",
+ "key" : "XIAOMI_APPKEY",
+ "value" : ""
+ },
+ "JPUSH_XIAOMI_APPID" : {
+ "des" : "厂商XIAOMI-appId,示例:MI-12345678",
+ "key" : "XIAOMI_APPID",
+ "value" : ""
+ }
+ }
+ }
+ }
}
},
/* 快应用特有相关 */
@@ -148,3 +294,133 @@
},
"vueVersion" : "2"
}
+// "nativePlugins" : {
+// "JG-JCore" : {
+// "JPUSH_APPKEY_IOS" : "",
+// "JPUSH_CHANNEL_IOS" : "",
+// "JPUSH_APPKEY_ANDROID" : "f7c642155be0cdfa97fb3d75",
+// "JPUSH_CHANNEL_ANDROID" : "f7c642155be0cdfa97fb3d75",
+// "__plugin_info__" : {
+// "name" : "JG-JCore",
+// "description" : "极光推送JCore插件",
+// "platforms" : "Android,iOS",
+// "url" : "",
+// "android_package_name" : "com.lilbeat.dopeplus",
+// "ios_bundle_id" : "com.lilbeat.dopeplus",
+// "isCloud" : false,
+// "bought" : -1,
+// "pid" : "",
+// "parameters" : {
+// "JPUSH_APPKEY_IOS" : {
+// "des" : "[iOS]极光portal配置应用信息时分配的AppKey",
+// "key" : "f7c642155be0cdfa97fb3d75",
+// "value" : ""
+// },
+// "JPUSH_CHANNEL_IOS" : {
+// "des" : "[iOS]用于统计分发渠道,不需要可填默认值developer-default",
+// "key" : "JCore:CHANNEL",
+// "value" : ""
+// },
+// "JPUSH_APPKEY_ANDROID" : {
+// "des" : "[Android]极光portal配置应用信息时分配的AppKey",
+// "key" : "f7c642155be0cdfa97fb3d75",
+// "value" : ""
+// },
+// "JPUSH_CHANNEL_ANDROID" : {
+// "des" : "[Android]用于统计分发渠道,不需要可填默认值developer-default",
+// "key" : "JPUSH_CHANNEL",
+// "value" : ""
+// }
+// }
+// }
+// },
+// "JG-JPush" : {
+// "JPUSH_ISPRODUCTION_IOS" : "",
+// "JPUSH_ADVERTISINGID_IOS" : "",
+// "JPUSH_DEFAULTINITJPUSH_IOS" : "",
+// "JPUSH_OPPO_APPKEY" : "",
+// "JPUSH_OPPO_APPID" : "",
+// "JPUSH_OPPO_APPSECRET" : "",
+// "JPUSH_VIVO_APPKEY" : "",
+// "JPUSH_VIVO_APPID" : "",
+// "JPUSH_MEIZU_APPKEY" : "",
+// "JPUSH_MEIZU_APPID" : "",
+// "JPUSH_XIAOMI_APPKEY" : "",
+// "JPUSH_XIAOMI_APPID" : "",
+// "__plugin_info__" : {
+// "name" : "JG-JPush",
+// "description" : "极光推送Hbuilder插件",
+// "platforms" : "Android,iOS",
+// "url" : "",
+// "android_package_name" : "com.lilbeat.dopeplus",
+// "ios_bundle_id" : "com.lilbeat.dopeplus",
+// "isCloud" : false,
+// "bought" : -1,
+// "pid" : "",
+// "parameters" : {
+// "JPUSH_ISPRODUCTION_IOS" : {
+// "des" : "[iOS]是否是生产环境,是填true,不是填false或者不填",
+// "key" : "JPush:ISPRODUCTION",
+// "value" : ""
+// },
+// "JPUSH_ADVERTISINGID_IOS" : {
+// "des" : "[iOS]广告标识符(IDFA)如果不需要使用IDFA,可不填",
+// "key" : "JPush:ADVERTISINGID",
+// "value" : ""
+// },
+// "JPUSH_DEFAULTINITJPUSH_IOS" : {
+// "des" : "[iOS]是否默认初始化,是填true,不是填false或者不填",
+// "key" : "JPush:DEFAULTINITJPUSH",
+// "value" : ""
+// },
+// "JPUSH_OPPO_APPKEY" : {
+// "des" : "厂商OPPO-appkey,示例:OP-12345678",
+// "key" : "OPPO_APPKEY",
+// "value" : ""
+// },
+// "JPUSH_OPPO_APPID" : {
+// "des" : "厂商OPPO-appId,示例:OP-12345678",
+// "key" : "OPPO_APPID",
+// "value" : ""
+// },
+// "JPUSH_OPPO_APPSECRET" : {
+// "des" : "厂商OPPO-appSecret,示例:OP-12345678",
+// "key" : "OPPO_APPSECRET",
+// "value" : ""
+// },
+// "JPUSH_VIVO_APPKEY" : {
+// "des" : "厂商VIVO-appkey,示例:12345678",
+// "key" : "com.vivo.push.api_key",
+// "value" : ""
+// },
+// "JPUSH_VIVO_APPID" : {
+// "des" : "厂商VIVO-appId,示例:12345678",
+// "key" : "com.vivo.push.app_id",
+// "value" : ""
+// },
+// "JPUSH_MEIZU_APPKEY" : {
+// "des" : "厂商MEIZU-appKey,示例:MZ-12345678",
+// "key" : "MEIZU_APPKEY",
+// "value" : ""
+// },
+// "JPUSH_MEIZU_APPID" : {
+// "des" : "厂商MEIZU-appId,示例:MZ-12345678",
+// "key" : "MEIZU_APPID",
+// "value" : ""
+// },
+// "JPUSH_XIAOMI_APPKEY" : {
+// "des" : "厂商XIAOMI-appKey,示例:MI-12345678",
+// "key" : "XIAOMI_APPKEY",
+// "value" : ""
+// },
+// "JPUSH_XIAOMI_APPID" : {
+// "des" : "厂商XIAOMI-appId,示例:MI-12345678",
+// "key" : "XIAOMI_APPID",
+// "value" : ""
+// }
+// }
+// }
+// }
+// }
+/* 快应用特有相关 *//* 小程序特有相关 */
+
diff --git a/nativeplugins/JG-JCore/android/libs/arm64-v8a/libjcore260.so b/nativeplugins/JG-JCore/android/libs/arm64-v8a/libjcore260.so
new file mode 100644
index 0000000..02cdcef
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/arm64-v8a/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/libs/armeabi-v7a/libjcore260.so b/nativeplugins/JG-JCore/android/libs/armeabi-v7a/libjcore260.so
new file mode 100644
index 0000000..4441428
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/armeabi-v7a/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/libs/armeabi/libjcore260.so b/nativeplugins/JG-JCore/android/libs/armeabi/libjcore260.so
new file mode 100644
index 0000000..ceb14cd
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/armeabi/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/libs/jcore-android-2.6.0.jar b/nativeplugins/JG-JCore/android/libs/jcore-android-2.6.0.jar
new file mode 100644
index 0000000..d5c1472
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/jcore-android-2.6.0.jar differ
diff --git a/nativeplugins/JG-JCore/android/libs/mips/libjcore260.so b/nativeplugins/JG-JCore/android/libs/mips/libjcore260.so
new file mode 100644
index 0000000..89a8f63
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/mips/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/libs/mips64/libjcore260.so b/nativeplugins/JG-JCore/android/libs/mips64/libjcore260.so
new file mode 100644
index 0000000..35d104d
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/mips64/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/libs/x86/libjcore260.so b/nativeplugins/JG-JCore/android/libs/x86/libjcore260.so
new file mode 100644
index 0000000..8cf739f
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/x86/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/libs/x86_64/libjcore260.so b/nativeplugins/JG-JCore/android/libs/x86_64/libjcore260.so
new file mode 100644
index 0000000..d86fcb7
Binary files /dev/null and b/nativeplugins/JG-JCore/android/libs/x86_64/libjcore260.so differ
diff --git a/nativeplugins/JG-JCore/android/uniplugin_jcore-release.aar b/nativeplugins/JG-JCore/android/uniplugin_jcore-release.aar
new file mode 100644
index 0000000..5a8a9e4
Binary files /dev/null and b/nativeplugins/JG-JCore/android/uniplugin_jcore-release.aar differ
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/Headers/JCoreModule.h b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/Headers/JCoreModule.h
new file mode 100644
index 0000000..630b42d
--- /dev/null
+++ b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/Headers/JCoreModule.h
@@ -0,0 +1,17 @@
+//
+// JCoreModule.h
+// UniPluginJCore
+//
+// Created by huangshuni on 2021/1/21.
+//
+
+#import
+#import "DCUniModule.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface JCoreModule : DCUniModule
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/Info.plist b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/Info.plist
new file mode 100644
index 0000000..06a0b00
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/Info.plist differ
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/UniPluginJCore b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/UniPluginJCore
new file mode 100644
index 0000000..3a36a95
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/UniPluginJCore differ
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeDirectory b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeDirectory
new file mode 100644
index 0000000..bac9eab
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeDirectory differ
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeRequirements b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeRequirements
new file mode 100644
index 0000000..25365e2
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeRequirements differ
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeRequirements-1 b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeRequirements-1
new file mode 100644
index 0000000..89f4024
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeRequirements-1 differ
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeResources b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeResources
new file mode 100644
index 0000000..350bbe4
--- /dev/null
+++ b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeResources
@@ -0,0 +1,117 @@
+
+
+
+
+ files
+
+ Headers/JCoreModule.h
+
+ 4aMcBALZuuQeh2JQjJqqvSkc2mA=
+
+ Info.plist
+
+ b4VTqlvap+6I3sPb0nhWD5ZHha4=
+
+
+ files2
+
+ Headers/JCoreModule.h
+
+ hash
+
+ 4aMcBALZuuQeh2JQjJqqvSkc2mA=
+
+ hash2
+
+ h/0w2CaU3JBhKI3Pp4EiSWqLf/ZY1Ju+5+tBAdowZ5k=
+
+
+
+ rules
+
+ ^.*
+
+ ^.*\.lproj/
+
+ optional
+
+ weight
+ 1000
+
+ ^.*\.lproj/locversion.plist$
+
+ omit
+
+ weight
+ 1100
+
+ ^Base\.lproj/
+
+ weight
+ 1010
+
+ ^version.plist$
+
+
+ rules2
+
+ .*\.dSYM($|/)
+
+ weight
+ 11
+
+ ^(.*/)?\.DS_Store$
+
+ omit
+
+ weight
+ 2000
+
+ ^.*
+
+ ^.*\.lproj/
+
+ optional
+
+ weight
+ 1000
+
+ ^.*\.lproj/locversion.plist$
+
+ omit
+
+ weight
+ 1100
+
+ ^Base\.lproj/
+
+ weight
+ 1010
+
+ ^Info\.plist$
+
+ omit
+
+ weight
+ 20
+
+ ^PkgInfo$
+
+ omit
+
+ weight
+ 20
+
+ ^embedded\.provisionprofile$
+
+ weight
+ 20
+
+ ^version\.plist$
+
+ weight
+ 20
+
+
+
+
diff --git a/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeSignature b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeSignature
new file mode 100644
index 0000000..4ba132d
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/UniPluginJCore.framework/_CodeSignature/CodeSignature differ
diff --git a/nativeplugins/JG-JCore/ios/jcore-ios-2.4.0.a b/nativeplugins/JG-JCore/ios/jcore-ios-2.4.0.a
new file mode 100644
index 0000000..5039b57
Binary files /dev/null and b/nativeplugins/JG-JCore/ios/jcore-ios-2.4.0.a differ
diff --git a/nativeplugins/JG-JCore/package.json b/nativeplugins/JG-JCore/package.json
new file mode 100644
index 0000000..1895da8
--- /dev/null
+++ b/nativeplugins/JG-JCore/package.json
@@ -0,0 +1,58 @@
+{
+ "name": "JG-JCore",
+ "id": "JG-JCore",
+ "version": "1.0.1",
+ "description": "极光推送JCore插件",
+ "_dp_type":"nativeplugin",
+ "_dp_nativeplugin":{
+ "ios": {
+ "plugins": [
+ {
+ "type": "module",
+ "name": "JG-JCore",
+ "class": "JCoreModule"
+ }
+ ],
+ "integrateType": "framework",
+ "deploymentTarget": "9.0",
+ "parameters": {
+ "JPUSH_APPKEY_IOS": {
+ "des": "[iOS]极光portal配置应用信息时分配的AppKey",
+ "key": "JCore:APP_KEY"
+ },
+ "JPUSH_CHANNEL_IOS": {
+ "des": "[iOS]用于统计分发渠道,不需要可填默认值developer-default",
+ "key": "JCore:CHANNEL"
+ }
+ }
+ },
+ "android": {
+ "plugins": [
+ {
+ "type": "module",
+ "name": "JG-JCore",
+ "class": "cn.jiguang.uniplugin_jcore.JCoreModule"
+ }
+ ],
+ "integrateType": "aar",
+ "minSdkVersion": "19",
+ "permissions": [
+ ],
+ "abis": [
+ "armeabi-v7a",
+ "arm64-v8a",
+ "x86"
+ ],
+ "parameters": {
+ "JPUSH_APPKEY_ANDROID": {
+ "des": "[Android]极光portal配置应用信息时分配的AppKey",
+ "key": "JPUSH_APPKEY"
+ },
+ "JPUSH_CHANNEL_ANDROID":{
+ "des": "[Android]用于统计分发渠道,不需要可填默认值developer-default",
+ "key": "JPUSH_CHANNEL"
+ }
+ }
+ }
+ }
+}
diff --git a/nativeplugins/JG-JPush/android/com.heytap.msp-push-2.1.0.aar b/nativeplugins/JG-JPush/android/com.heytap.msp-push-2.1.0.aar
new file mode 100644
index 0000000..608aced
Binary files /dev/null and b/nativeplugins/JG-JPush/android/com.heytap.msp-push-2.1.0.aar differ
diff --git a/nativeplugins/JG-JPush/android/libs/MiPush_SDK_Client_3_8_5.jar b/nativeplugins/JG-JPush/android/libs/MiPush_SDK_Client_3_8_5.jar
new file mode 100644
index 0000000..7f94935
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/MiPush_SDK_Client_3_8_5.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/jpush-android-3.9.1.jar b/nativeplugins/JG-JPush/android/libs/jpush-android-3.9.1.jar
new file mode 100644
index 0000000..b9d13f3
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/jpush-android-3.9.1.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-meizu-v3.9.1.jar b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-meizu-v3.9.1.jar
new file mode 100644
index 0000000..88475eb
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-meizu-v3.9.1.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-oppo-v3.9.1.jar b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-oppo-v3.9.1.jar
new file mode 100644
index 0000000..291d237
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-oppo-v3.9.1.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-vivo-v3.9.1.jar b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-vivo-v3.9.1.jar
new file mode 100644
index 0000000..d544255
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-vivo-v3.9.1.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-xiaomi-v3.9.1.jar b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-xiaomi-v3.9.1.jar
new file mode 100644
index 0000000..1d0f401
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/jpush-android-plugin-xiaomi-v3.9.1.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/meizu-push-4.0.2.jar b/nativeplugins/JG-JPush/android/libs/meizu-push-4.0.2.jar
new file mode 100644
index 0000000..740e7c5
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/meizu-push-4.0.2.jar differ
diff --git a/nativeplugins/JG-JPush/android/libs/push_sdk_v3.0.0.jar b/nativeplugins/JG-JPush/android/libs/push_sdk_v3.0.0.jar
new file mode 100644
index 0000000..9c87567
Binary files /dev/null and b/nativeplugins/JG-JPush/android/libs/push_sdk_v3.0.0.jar differ
diff --git a/nativeplugins/JG-JPush/android/uniplugin_jpush-release.aar b/nativeplugins/JG-JPush/android/uniplugin_jpush-release.aar
new file mode 100644
index 0000000..22f9507
Binary files /dev/null and b/nativeplugins/JG-JPush/android/uniplugin_jpush-release.aar differ
diff --git a/nativeplugins/JG-JPush/ios/JPUSHService.h b/nativeplugins/JG-JPush/ios/JPUSHService.h
new file mode 100644
index 0000000..dd469aa
--- /dev/null
+++ b/nativeplugins/JG-JPush/ios/JPUSHService.h
@@ -0,0 +1,798 @@
+/*
+ * | | | | \ \ / / | | | | / _______|
+ * | |____| | \ \/ / | |____| | / /
+ * | |____| | \ / | |____| | | | _____
+ * | | | | / \ | | | | | | |____ |
+ * | | | | / /\ \ | | | | \ \______| |
+ * | | | | /_/ \_\ | | | | \_________|
+ *
+ * Copyright (c) 2011 ~ 2017 Shenzhen HXHG. All rights reserved.
+ */
+
+#define JPUSH_VERSION_NUMBER 3.4.0
+
+#import
+
+@class CLRegion;
+@class UILocalNotification;
+@class CLLocation;
+@class UNNotificationCategory;
+@class UNNotificationSettings;
+@class UNNotificationRequest;
+@class UNNotification;
+@protocol JPUSHRegisterDelegate;
+@protocol JPUSHGeofenceDelegate;
+@protocol JPushInMessageDelegate;
+
+typedef void (^JPUSHTagsOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq);
+typedef void (^JPUSHTagValidOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq, BOOL isBind);
+typedef void (^JPUSHAliasOperationCompletion)(NSInteger iResCode, NSString *iAlias, NSInteger seq);
+typedef void (^JPUSHInMssageCompletion)(NSInteger iResCode);
+
+extern NSString *const kJPFNetworkIsConnectingNotification; // 正在连接中
+extern NSString *const kJPFNetworkDidSetupNotification; // 建立连接
+extern NSString *const kJPFNetworkDidCloseNotification; // 关闭连接
+extern NSString *const kJPFNetworkDidRegisterNotification; // 注册成功
+extern NSString *const kJPFNetworkFailedRegisterNotification; //注册失败
+extern NSString *const kJPFNetworkDidLoginNotification; // 登录成功
+extern NSString *const kJPFNetworkDidReceiveMessageNotification; // 收到消息(非APNS)
+extern NSString *const kJPFServiceErrorNotification; // 错误提示
+
+typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
+ JPAuthorizationOptionNone = 0, // the application may not present any UI upon a notification being received
+ JPAuthorizationOptionBadge = (1 << 0), // the application may badge its icon upon a notification being received
+ JPAuthorizationOptionSound = (1 << 1), // the application may play a sound upon a notification being received
+ JPAuthorizationOptionAlert = (1 << 2), // the application may display an alert upon a notification being received
+ JPAuthorizationOptionCarPlay = (1 << 3), // The ability to display notifications in a CarPlay environment.
+ JPAuthorizationOptionCriticalAlert NS_AVAILABLE_IOS(12.0) = (1 << 4) , //The ability to play sounds for critical alerts.
+ JPAuthorizationOptionProvidesAppNotificationSettings NS_AVAILABLE_IOS(12.0) = (1 << 5) , //An option indicating the system should display a button for in-app notification settings.
+ JPAuthorizationOptionProvisional NS_AVAILABLE_IOS(12.0) = (1 << 6) , //The ability to post noninterrupting notifications provisionally to the Notification Center.
+ JPAuthorizationOptionAnnouncement NS_AVAILABLE_IOS(13.0) = (1 << 7) , //The ability for Siri to automatically read out messages over AirPods.
+};
+
+typedef NS_ENUM(NSUInteger, JPAuthorizationStatus) {
+ JPAuthorizationNotDetermined = 0, // The user has not yet made a choice regarding whether the application may post user notifications.
+ JPAuthorizationStatusDenied, // The application is not authorized to post user notifications.
+ JPAuthorizationStatusAuthorized, // The application is authorized to post user notifications.
+ JPAuthorizationStatusProvisional NS_AVAILABLE_IOS(12.0), // The application is authorized to post non-interruptive user notifications.
+};
+
+typedef NS_ENUM(NSInteger,JPushInMessageContentType){
+ JPushAdContentType = 1, //广告类型的inMessage
+ JPushNotiContentType = 2, //通知类型的inMessage
+};
+
+/*!
+ * 通知注册实体类
+ */
+@interface JPUSHRegisterEntity : NSObject
+
+/*!
+ * 支持的类型
+ * badge,sound,alert
+ */
+@property (nonatomic, assign) NSInteger types;
+/*!
+ * 注入的类别
+ * iOS10 UNNotificationCategory
+ * iOS8-iOS9 UIUserNotificationCategory
+ */
+@property (nonatomic, strong) NSSet *categories;
+@end
+
+/*!
+ * 进行删除、查找推送实体类
+ */
+@interface JPushNotificationIdentifier : NSObject
+
+@property (nonatomic, copy) NSArray *identifiers; // 推送的标识数组
+@property (nonatomic, copy) UILocalNotification *notificationObj NS_DEPRECATED_IOS(4_0, 10_0); // iOS10以下可以传UILocalNotification对象数据,iOS10以上无效
+@property (nonatomic, assign) BOOL delivered NS_AVAILABLE_IOS(10_0); // 在通知中心显示的或待推送的标志,默认为NO,YES表示在通知中心显示的,NO表示待推送的
+@property (nonatomic, copy) void (^findCompletionHandler)(NSArray *results); // 用于查询回调,调用[findNotification:]方法前必须设置,results为返回相应对象数组,iOS10以下返回UILocalNotification对象数组;iOS10以上根据delivered传入值返回UNNotification或UNNotificationRequest对象数组(delivered传入YES,则返回UNNotification对象数组,否则返回UNNotificationRequest对象数组)
+
+@end
+
+/*!
+ * 推送通知声音实体类
+ * iOS10以上有效
+ */
+@interface JPushNotificationSound : NSObject
+@property (nonatomic, copy) NSString *soundName; //普通通知铃声
+@property (nonatomic, copy) NSString *criticalSoundName NS_AVAILABLE_IOS(12.0); //警告通知铃声
+@property (nonatomic, assign) float criticalSoundVolume NS_AVAILABLE_IOS(12.0); //警告通知铃声音量,有效值在0~1之间,默认为1
+@end
+
+
+/*!
+ * 推送内容实体类
+ */
+@interface JPushNotificationContent : NSObject
+
+@property (nonatomic, copy) NSString *title; // 推送标题
+@property (nonatomic, copy) NSString *subtitle; // 推送副标题
+@property (nonatomic, copy) NSString *body; // 推送内容
+@property (nonatomic, copy) NSNumber *badge; // 角标的数字。如果不需要改变角标传@(-1)
+@property (nonatomic, copy) NSString *action NS_DEPRECATED_IOS(8_0, 10_0); // 弹框的按钮显示的内容(IOS 8默认为"打开", 其他默认为"启动",iOS10以上无效)
+@property (nonatomic, copy) NSString *categoryIdentifier; // 行为分类标识
+@property (nonatomic, copy) NSDictionary *userInfo; // 本地推送时可以设置userInfo来增加附加信息,远程推送时设置的payload推送内容作为此userInfo
+@property (nonatomic, copy) NSString *sound; // 声音名称,不设置则为默认声音
+@property (nonatomic, copy) JPushNotificationSound *soundSetting NS_AVAILABLE_IOS(10.0); //推送声音实体
+@property (nonatomic, copy) NSArray *attachments NS_AVAILABLE_IOS(10_0); // 附件,iOS10以上有效,需要传入UNNotificationAttachment对象数组类型
+@property (nonatomic, copy) NSString *threadIdentifier NS_AVAILABLE_IOS(10_0); // 线程或与推送请求相关对话的标识,iOS10以上有效,可用来对推送进行分组
+@property (nonatomic, copy) NSString *launchImageName NS_AVAILABLE_IOS(10_0); // 启动图片名,iOS10以上有效,从推送启动时将会用到
+@property (nonatomic, copy) NSString *summaryArgument NS_AVAILABLE_IOS(12.0); //插入到通知摘要中的部分参数。iOS12以上有效。
+@property (nonatomic, assign) NSUInteger summaryArgumentCount NS_AVAILABLE_IOS(12.0); //插入到通知摘要中的项目数。iOS12以上有效。
+@property (nonatomic, copy) NSString *targetContentIdentifier NS_AVAILABLE_IOS(13.0); // An identifier for the content of the notification used by the system to customize the scene to be activated when tapping on a notification.
+
+@end
+
+
+/*!
+ * 推送触发方式实体类
+ * 注:dateComponents、timeInterval、region在iOS10以上可选择其中一个参数传入有效值,如果同时传入值会根据优先级I、II、III使其中一种触发方式生效,fireDate为iOS10以下根据时间触发时须传入的参数
+ */
+@interface JPushNotificationTrigger : NSObject
+
+@property (nonatomic, assign) BOOL repeat; // 设置是否重复,默认为NO
+@property (nonatomic, copy) NSDate *fireDate NS_DEPRECATED_IOS(2_0, 10_0); // 用来设置触发推送的时间,iOS10以上无效
+@property (nonatomic, copy) CLRegion *region NS_AVAILABLE_IOS(8_0); // 用来设置触发推送的位置,iOS8以上有效,iOS10以上优先级为I,应用需要有允许使用定位的授权
+@property (nonatomic, copy) NSDateComponents *dateComponents NS_AVAILABLE_IOS(10_0); // 用来设置触发推送的日期时间,iOS10以上有效,优先级为II
+@property (nonatomic, assign) NSTimeInterval timeInterval NS_AVAILABLE_IOS(10_0); // 用来设置触发推送的时间,iOS10以上有效,优先级为III
+
+@end
+
+/*!
+ * 注册或更新推送实体类
+ */
+@interface JPushNotificationRequest : NSObject
+
+@property (nonatomic, copy) NSString *requestIdentifier; // 推送请求标识
+@property (nonatomic, copy) JPushNotificationContent *content; // 设置推送的具体内容
+@property (nonatomic, copy) JPushNotificationTrigger *trigger; // 设置推送的触发方式
+@property (nonatomic, copy) void (^completionHandler)(id result); // 注册或更新推送成功回调,iOS10以上成功则result为UNNotificationRequest对象,失败则result为nil;iOS10以下成功result为UILocalNotification对象,失败则result为nil
+
+@end
+
+/*!
+ * JPush 核心头文件
+ */
+@interface JPUSHService : NSObject
+
+
+///----------------------------------------------------
+/// @name Setup 启动相关
+///----------------------------------------------------
+
+
+/*!
+ * @abstract 启动SDK
+ *
+ * @param launchingOption 启动参数.
+ * @param appKey 一个JPush 应用必须的,唯一的标识. 请参考 JPush 相关说明文档来获取这个标识.
+ * @param channel 发布渠道. 可选.
+ * @param isProduction 是否生产环境. 如果为开发状态,设置为 NO; 如果为生产状态,应改为 YES.
+ * App 证书环境取决于profile provision的配置,此处建议与证书环境保持一致.
+ *
+ * @discussion 提供SDK启动必须的参数, 来启动 SDK.
+ * 此接口必须在 App 启动时调用, 否则 JPush SDK 将无法正常工作.
+ */
++ (void)setupWithOption:(NSDictionary *)launchingOption
+ appKey:(NSString *)appKey
+ channel:(NSString *)channel
+ apsForProduction:(BOOL)isProduction;
+
+/*!
+ * @abstract 启动SDK
+ *
+ * @param launchingOption 启动参数.
+ * @param appKey 一个JPush 应用必须的,唯一的标识. 请参考 JPush 相关说明文档来获取这个标识.
+ * @param channel 发布渠道. 可选.
+ * @param isProduction 是否生产环境. 如果为开发状态,设置为 NO; 如果为生产状态,应改为 YES.
+ * App 证书环境取决于profile provision的配置,此处建议与证书环境保持一致.
+ * @param advertisingId 广告标识符(IDFA) 如果不需要使用IDFA,传nil.
+ *
+ * @discussion 提供SDK启动必须的参数, 来启动 SDK.
+ * 此接口必须在 App 启动时调用, 否则 JPush SDK 将无法正常工作.
+ */
++ (void)setupWithOption:(NSDictionary *)launchingOption
+ appKey:(NSString *)appKey
+ channel:(NSString *)channel
+ apsForProduction:(BOOL)isProduction
+ advertisingIdentifier:(NSString *)advertisingId;
+
+
+///----------------------------------------------------
+/// @name APNs about 通知相关
+///----------------------------------------------------
+
+/*!
+ * @abstract 注册要处理的远程通知类型
+ *
+ * @param types 通知类型
+ * @param categories 类别组
+ *
+ */
++ (void)registerForRemoteNotificationTypes:(NSUInteger)types
+ categories:(NSSet *)categories;
+/*!
+ * @abstract 新版本的注册方法(兼容iOS10)
+ *
+ * @param config 注册通知配置
+ * @param delegate 代理
+ *
+ */
++ (void)registerForRemoteNotificationConfig:(JPUSHRegisterEntity *)config delegate:(id)delegate;
+
+
++ (void)registerDeviceToken:(NSData *)deviceToken;
+
+/*!
+ * @abstract 处理收到的 APNs 消息
+ */
++ (void)handleRemoteNotification:(NSDictionary *)remoteInfo;
+
+/*!
+ * @abstract 向极光服务器提交Token
+ *
+ * @param voipToken 推送使用的Voip Token
+ */
++ (void)registerVoipToken:(NSData *)voipToken;
+
+
+/*!
+ * @abstract 处理收到的 Voip 消息
+ *
+ * @param remoteInfo 下发的 Voip 内容
+ */
++ (void)handleVoipNotification:(NSDictionary *)remoteInfo;
+
+
+/*!
+* @abstract 检测通知授权状态
+* @param completion 授权结果通过status值返回,详见JPAuthorizationStatus
+*/
++ (void)requestNotificationAuthorization:(void (^)(JPAuthorizationStatus status))completion;
+
+/*!
+* @abstract 跳转至系统设置页面,iOS8及以上有效
+*/
++ (void)openSettingsForNotification:(void (^)(BOOL success))completionHandler NS_AVAILABLE_IOS(8_0);
+
+/*!
+ * Tags操作接口
+ * 支持增加/覆盖/删除/清空/查询操作
+ * 详情请参考文档:https://docs.jiguang.cn/jpush/client/iOS/ios_api/)
+ */
+
+/**
+ 增加tags
+
+ @param tags 需要增加的tags集合
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)addTags:(NSSet *)tags
+ completion:(JPUSHTagsOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 覆盖tags
+ 调用该接口会覆盖用户所有的tags
+
+ @param tags 需要设置的tags集合
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)setTags:(NSSet *)tags
+ completion:(JPUSHTagsOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 删除指定tags
+
+ @param tags 需要删除的tags集合
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)deleteTags:(NSSet *)tags
+ completion:(JPUSHTagsOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 清空所有tags
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)cleanTags:(JPUSHTagsOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 查询全部tags
+
+ @param completion 响应回调,请在回调中获取查询结果
+ @param seq 请求序列号
+ */
++ (void)getAllTags:(JPUSHTagsOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 验证tag是否绑定
+
+ @param completion 响应回调,回调中查看是否绑定
+ @param seq 请求序列号
+ */
++ (void)validTag:(NSString *)tag
+ completion:(JPUSHTagValidOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 设置Alias
+
+ @param alias 需要设置的alias
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)setAlias:(NSString *)alias
+ completion:(JPUSHAliasOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 删除alias
+
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)deleteAlias:(JPUSHAliasOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+/**
+ 查询当前alias
+
+ @param completion 响应回调
+ @param seq 请求序列号
+ */
++ (void)getAlias:(JPUSHAliasOperationCompletion)completion
+ seq:(NSInteger)seq;
+
+
+/*!
+ * @abstract 过滤掉无效的 tags
+ *
+ * @discussion 如果 tags 数量超过限制数量, 则返回靠前的有效的 tags.
+ * 建议设置 tags 前用此接口校验. SDK 内部也会基于此接口来做过滤.
+ */
++ (NSSet *)filterValidTags:(NSSet *)tags;
+
+///----------------------------------------------------
+/// @name Stats 统计功能
+///----------------------------------------------------
+
+/*!
+ * @abstract 开始记录页面停留
+ *
+ * @param pageName 页面名称
+ * @discussion JCore 1.1.8 版本后,如需统计页面流,请使用 JAnalytics
+ */
++ (void)startLogPageView:(NSString *)pageName __attribute__((deprecated("JCore 1.1.8 版本已过期")));
+
+/*!
+ * @abstract 停止记录页面停留
+ *
+ * @param pageName 页面
+ * @discussion JCore 1.1.8 版本后,如需统计页面流,请使用 JAnalytics
+ */
++ (void)stopLogPageView:(NSString *)pageName __attribute__((deprecated("JCore 1.1.8 版本已过期")));
+
+/*!
+ * @abstract 直接上报在页面的停留时间
+ *
+ * @param pageName 页面
+ * @param seconds 停留的秒数
+ * @discussion JCore 1.1.8 版本后,如需统计页面流,请使用 JAnalytics
+ */
++ (void)beginLogPageView:(NSString *)pageName duration:(int)seconds __attribute__((deprecated("JCore 1.1.8 版本已过期")));
+
+/*!
+ * @abstract 开启Crash日志收集
+ *
+ * @discussion 默认是关闭状态.
+ */
++ (void)crashLogON;
+
+/*!
+ * @abstract 地理位置上报
+ *
+ * @param latitude 纬度.
+ * @param longitude 经度.
+ *
+ */
++ (void)setLatitude:(double)latitude longitude:(double)longitude;
+
+/*!
+ * @abstract 地理位置上报
+ *
+ * @param location 直接传递 CLLocation * 型的地理信息
+ *
+ * @discussion 需要链接 CoreLocation.framework 并且 #import
+ */
++ (void)setLocation:(CLLocation *)location;
+
+/**
+ 设置地理围栏的最大个数
+ 默认值为 10 ,iOS系统默认地理围栏最大个数为20
+ @param count 个数 count
+ */
++ (void)setGeofenecMaxCount:(NSInteger)count;
+/**
+ 注册地理围栏的代理
+
+ @param delegate 代理
+ @param launchOptions app启动完成是收到的字段参数
+ */
++ (void)registerLbsGeofenceDelegate:(id)delegate withLaunchOptions:(NSDictionary *)launchOptions;
+
+/**
+ 删除地理围栏
+
+ @param geofenceId 地理围栏id
+ */
++ (void)removeGeofenceWithIdentifier:(NSString *)geofenceId;
+
+///----------------------------------------------------
+/// @name Local Notification 本地通知
+///----------------------------------------------------
+/*!
+ * @abstract 注册或更新推送 (支持iOS10,并兼容iOS10以下版本)
+ *
+ * JPush 2.1.9新接口
+ * @param request JPushNotificationRequest类型,设置推送的属性,设置已有推送的request.requestIdentifier即更新已有的推送,否则为注册新推送,更新推送仅仅在iOS10以上有效,结果通过request.completionHandler返回
+ * @discussion 旧的注册本地推送接口被废弃,使用此接口可以替换
+ *
+ */
++ (void)addNotification:(JPushNotificationRequest *)request;
+
+/*!
+ * @abstract 移除推送 (支持iOS10,并兼容iOS10以下版本)
+ *
+ * JPush 2.1.9新接口
+ * @param identifier JPushNotificationIdentifier类型,iOS10以上identifier设置为nil,则移除所有在通知中心显示推送和待推送请求,也可以通过设置identifier.delivered和identifier.identifiers来移除相应在通知中心显示推送或待推送请求,identifier.identifiers如果设置为nil或空数组则移除相应标志下所有在通知中心显示推送或待推送请求;iOS10以下identifier设置为nil,则移除所有推送,identifier.delivered属性无效,另外可以通过identifier.notificationObj传入特定推送对象来移除此推送。
+ * @discussion 旧的所有删除推送接口被废弃,使用此接口可以替换
+ *
+ */
++ (void)removeNotification:(JPushNotificationIdentifier *)identifier;
+
+/*!
+ * @abstract 查找推送 (支持iOS10,并兼容iOS10以下版本)
+ *
+ * JPush 2.1.9新接口
+ * @param identifier JPushNotificationIdentifier类型,iOS10以上可以通过设置identifier.delivered和identifier.identifiers来查找相应在通知中心显示推送或待推送请求,identifier.identifiers如果设置为nil或空数组则返回相应标志下所有在通知中心显示推送或待推送请求;iOS10以下identifier.delivered属性无效,identifier.identifiers如果设置nil或空数组则返回所有未触发的推送。须要设置identifier.findCompletionHandler回调才能得到查找结果,通过(NSArray *results)返回相应对象数组。
+ * @discussion 旧的查找推送接口被废弃,使用此接口可以替换
+ *
+ */
++ (void)findNotification:(JPushNotificationIdentifier *)identifier;
+
+/*!
+ * @abstract 本地推送,最多支持64个
+ *
+ * @param fireDate 本地推送触发的时间
+ * @param alertBody 本地推送需要显示的内容
+ * @param badge 角标的数字。如果不需要改变角标传-1
+ * @param alertAction 弹框的按钮显示的内容(IOS 8默认为"打开", 其他默认为"启动")
+ * @param notificationKey 本地推送标示符
+ * @param userInfo 自定义参数,可以用来标识推送和增加附加信息
+ * @param soundName 自定义通知声音,设置为nil为默认声音
+ *
+ * @discussion 最多支持 64 个定义,此方法被[addNotification:]方法取代
+ */
++ (UILocalNotification *)setLocalNotification:(NSDate *)fireDate
+ alertBody:(NSString *)alertBody
+ badge:(int)badge
+ alertAction:(NSString *)alertAction
+ identifierKey:(NSString *)notificationKey
+ userInfo:(NSDictionary *)userInfo
+ soundName:(NSString *)soundName __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+
+/*!
+ * @abstract 本地推送 (支持 iOS8 新参数)
+ *
+ * IOS8新参数
+ * @param region 自定义参数
+ * @param regionTriggersOnce 自定义参数
+ * @param category 自定义参数
+ * @discussion 此方法被[addNotification:]方法取代
+ */
++ (UILocalNotification *)setLocalNotification:(NSDate *)fireDate
+ alertBody:(NSString *)alertBody
+ badge:(int)badge
+ alertAction:(NSString *)alertAction
+ identifierKey:(NSString *)notificationKey
+ userInfo:(NSDictionary *)userInfo
+ soundName:(NSString *)soundName
+ region:(CLRegion *)region
+ regionTriggersOnce:(BOOL)regionTriggersOnce
+ category:(NSString *)category NS_AVAILABLE_IOS(8_0) __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+
+/*!
+ * @abstract 前台展示本地推送
+ *
+ * @param notification 本地推送对象
+ * @param notificationKey 需要前台显示的本地推送通知的标示符
+ *
+ * @discussion 默认App在前台运行时不会进行弹窗,在程序接收通知调用此接口可实现指定的推送弹窗。--iOS10以下还可继续使用,iOS10以上在[UNUserNotificationCenterDelegate willPresentNotification:withCompletionHandler:]方法中调用completionHandler(UNNotificationPresentationOptionSound | UNNotificationPresentationOptionAlert);即可
+ */
++ (void)showLocalNotificationAtFront:(UILocalNotification *)notification
+ identifierKey:(NSString *)notificationKey __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+/*!
+ * @abstract 删除本地推送定义
+ *
+ * @param notificationKey 本地推送标示符
+ * @discussion 此方法被[removeNotification:]方法取代
+ */
++ (void)deleteLocalNotificationWithIdentifierKey:(NSString *)notificationKey __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+
+/*!
+ * @abstract 删除本地推送定义
+ * @discussion 此方法被[removeNotification:]方法取代
+ */
++ (void)deleteLocalNotification:(UILocalNotification *)localNotification __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+
+/*!
+ * @abstract 获取指定通知
+ *
+ * @param notificationKey 本地推送标示符
+ * @return 本地推送对象数组, [array count]为0时表示没找到
+ * @discussion 此方法被[findNotification:]方法取代
+ */
++ (NSArray *)findLocalNotificationWithIdentifier:(NSString *)notificationKey __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+
+/*!
+ * @abstract 清除所有本地推送对象
+ * @discussion 此方法被[removeNotification:]方法取代
+ */
++ (void)clearAllLocalNotifications __attribute__((deprecated("JPush 2.1.9 版本已过期")));
+
+
+///----------------------------------------------------
+/// @name Server badge 服务器端 badge 功能
+///----------------------------------------------------
+
+/*!
+ * @abstract 设置角标(到服务器)
+ *
+ * @param value 新的值. 会覆盖服务器上保存的值(这个用户)
+ *
+ * @discussion 本接口不会改变应用本地的角标值.
+ * 本地仍须调用 UIApplication:setApplicationIconBadgeNumber 函数来设置脚标.
+ *
+ * 本接口用于配合 JPush 提供的服务器端角标功能.
+ * 该功能解决的问题是, 服务器端推送 APNs 时, 并不知道客户端原来已经存在的角标是多少, 指定一个固定的数字不太合理.
+ *
+ * JPush 服务器端脚标功能提供:
+ *
+ * - 通过本 API 把当前客户端(当前这个用户的) 的实际 badge 设置到服务器端保存起来;
+ * - 调用服务器端 API 发 APNs 时(通常这个调用是批量针对大量用户),
+ * 使用 "+1" 的语义, 来表达需要基于目标用户实际的 badge 值(保存的) +1 来下发通知时带上新的 badge 值;
+ */
++ (BOOL)setBadge:(NSInteger)value;
+
+/*!
+ * @abstract 重置脚标(为0)
+ *
+ * @discussion 相当于 [setBadge:0] 的效果.
+ * 参考 [JPUSHService setBadge:] 说明来理解其作用.
+ */
++ (void)resetBadge;
+
+///----------------------------------------------------
+/// @name Other Feature 其他功能
+///----------------------------------------------------
+
+/*!
+ * @abstract 设置手机号码(到服务器)
+ *
+ * @param mobileNumber 手机号码. 会与用户信息一一对应。可为空,为空则清除号码
+ * @param completion 响应回调。成功则error为空,失败则error带有错误码及错误信息
+ *
+ * @discussion 设置手机号码后,可实现“推送不到短信到”的通知方式,提高推送达到率。结果信息通过completion异步返回,也可将completion设置为nil不处理结果信息。
+ *
+ */
++ (void)setMobileNumber:(NSString *)mobileNumber completion:(void (^)(NSError *error))completion;
+
+///----------------------------------------------------
+/// @name Logs and others 日志与其他
+///----------------------------------------------------
+
+/*!
+ * @abstract JPush标识此设备的 registrationID
+ *
+ * @discussion SDK注册成功后, 调用此接口获取到 registrationID 才能够获取到.
+ *
+ * JPush 支持根据 registrationID 来进行推送.
+ * 如果你需要此功能, 应该通过此接口获取到 registrationID 后, 上报到你自己的服务器端, 并保存下来.
+ * registrationIDCompletionHandler:是新增的获取registrationID的方法,需要在block中获取registrationID,resCode为返回码,模拟器调用此接口resCode返回1011,registrationID返回nil.
+ * 更多的理解请参考 JPush 的文档网站.
+ */
++ (NSString *)registrationID;
+
++ (void)registrationIDCompletionHandler:(void(^)(int resCode,NSString *registrationID))completionHandler;
+
+/*!
+ * @abstract 打开日志级别到 Debug
+ *
+ * @discussion JMessage iOS 的日志系统参考 Android 设计了级别.
+ * 从低到高是: Verbose, Debug, Info, Warning, Error.
+ * 对日志级别的进一步理解, 请参考 Android 相关的说明.
+ *
+ * SDK 默认开启的日志级别为: Info. 只显示必要的信息, 不打印调试日志.
+ *
+ * 请在SDK启动后调用本接口,调用本接口可打开日志级别为: Debug, 打印调试日志.
+ */
++ (void)setDebugMode;
+
+/*!
+ * @abstract 关闭日志
+ *
+ * @discussion 关于日志级别的说明, 参考 [JPUSHService setDebugMode]
+ *
+ * 虽说是关闭日志, 但还是会打印 Warning, Error 日志. 这二种日志级别, 在程序运行正常时, 不应有打印输出.
+ *
+ * 建议在发布的版本里, 调用此接口, 关闭掉日志打印.
+ */
++ (void)setLogOFF;
+
+/*!
+ * @abstract 设置SDK地理位置权限开关
+ *
+ * @discussion 关闭地理位置之后,SDK地理围栏的相关功能将受到影响,默认是开启。
+ *
+ */
++ (void)setLocationEanable:(BOOL)isEanble;
+
+/*!
+* @abstract 设置应用内消息的代理
+*
+* @discussion 遵守JPushInMessageDelegate的代理对象
+*
+*/
++ (void)setInMessageDelegate:(id)inMessageDelegate;
+
+
+/*!
+* @abstract 主动拉取应用内消息的接口
+*
+* @discussion 拉取结果的回调
+*
+*/
++ (void)pullInMessageCompletion:(JPUSHInMssageCompletion)completion;
+
+///----------------------------------------------------
+///********************下列方法已过期********************
+///**************请使用新版tag/alias操作接口**************
+///----------------------------------------------------
+/// @name Tag alias setting 设置别名与标签
+///----------------------------------------------------
+
+/*!
+ * 下面的接口是可选的
+ * 设置标签和(或)别名(若参数为nil,则忽略;若是空对象,则清空;详情请参考文档:https://docs.jiguang.cn/jpush/client/iOS/ios_api/)
+ * setTags:alias:fetchCompletionHandle:是新的设置标签别名的方法,不再需要显示声明回调函数,只需要在block里面处理设置结果即可.
+ * WARN: 使用block时需要注意循环引用问题
+ */
++ (void) setTags:(NSSet *)tags
+ alias:(NSString *)alias
+callbackSelector:(SEL)cbSelector
+ target:(id)theTarget __attribute__((deprecated("JPush 2.1.1 版本已过期")));
++ (void) setTags:(NSSet *)tags
+ alias:(NSString *)alias
+callbackSelector:(SEL)cbSelector
+ object:(id)theTarget __attribute__((deprecated("JPush 3.0.6 版本已过期")));
++ (void) setTags:(NSSet *)tags
+callbackSelector:(SEL)cbSelector
+ object:(id)theTarget __attribute__((deprecated("JPush 3.0.6 版本已过期")));
++ (void)setTags:(NSSet *)tags
+ alias:(NSString *)alias
+fetchCompletionHandle:(void (^)(int iResCode, NSSet *iTags, NSString *iAlias))completionHandler __attribute__((deprecated("JPush 3.0.6 版本已过期")));
++ (void) setTags:(NSSet *)tags
+aliasInbackground:(NSString *)alias __attribute__((deprecated("JPush 3.0.6 版本已过期")));
++ (void)setAlias:(NSString *)alias
+callbackSelector:(SEL)cbSelector
+ object:(id)theTarget __attribute__((deprecated("JPush 3.0.6 版本已过期")));
+
+@end
+
+@class UNUserNotificationCenter;
+@class UNNotificationResponse;
+
+@protocol JPUSHRegisterDelegate
+
+/*
+ * @brief handle UserNotifications.framework [willPresentNotification:withCompletionHandler:]
+ * @param center [UNUserNotificationCenter currentNotificationCenter] 新特性用户通知中心
+ * @param notification 前台得到的的通知对象
+ * @param completionHandler 该callback中的options 请使用UNNotificationPresentationOptions
+ */
+- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger options))completionHandler;
+/*
+ * @brief handle UserNotifications.framework [didReceiveNotificationResponse:withCompletionHandler:]
+ * @param center [UNUserNotificationCenter currentNotificationCenter] 新特性用户通知中心
+ * @param response 通知响应对象
+ * @param completionHandler
+ */
+- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)(void))completionHandler;
+
+/*
+ * @brief handle UserNotifications.framework [openSettingsForNotification:]
+ * @param center [UNUserNotificationCenter currentNotificationCenter] 新特性用户通知中心
+ * @param notification 当前管理的通知对象
+ */
+- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center openSettingsForNotification:(UNNotification *)notification NS_AVAILABLE_IOS(12.0);
+
+/**
+ * 监测通知授权状态返回的结果
+ * @param status 授权通知状态,详见JPAuthorizationStatus
+ * @param info 更多信息,预留参数
+ */
+- (void)jpushNotificationAuthorization:(JPAuthorizationStatus)status withInfo:(NSDictionary *)info;
+
+@end
+
+@protocol JPUSHGeofenceDelegate
+
+/**
+ 进入地理围栏区域
+
+ @param geofenceId 地理围栏id
+ @param userInfo 地理围栏触发时返回的信息
+ @param error 错误信息
+ */
+- (void)jpushGeofenceIdentifer:(NSString *)geofenceId didEnterRegion:(NSDictionary *)userInfo error:(NSError *)error;
+
+/**
+ 离开地理围栏区域
+
+ @param geofenceId 地理围栏id
+ @param userInfo 地理围栏触发时返回的信息
+ @param error 错误信息
+ */
+- (void)jpushGeofenceIdentifer:(NSString *)geofenceId didExitRegion:(NSDictionary *)userInfo error:(NSError *)error;
+
+@end
+
+@protocol JPushInMessageDelegate
+
+@optional
+/**
+ *是否允许应用内消息弹出,默认为允许
+*/
+- (BOOL)jPushInMessageIsAllowedInMessagePop;
+
+/**
+ *应用内消息展示的回调
+*/
+- (void)jPushInMessageAlreadyPop __attribute__((deprecated("JPush 3.4.0 版本已过期")));;
+
+/**
+ *应用内消息已消失
+*/
+- (void)jPushInMessageAlreadyDisappear;
+
+
+/**
+ inMessage展示的回调
+
+ @param messageType inMessage
+ @param content 下发的数据,广告类的返回数据为空时返回的信息
+
+ */
+- (void)jPushInMessageAlreadyPopInMessageType:(JPushInMessageContentType)messageType Content:(NSDictionary *)content;
+
+/**
+ inMessage点击的回调
+
+ @param messageType inMessage
+ @param content 下发的数据,广告类的返回数据为空时返回的信息
+
+ */
+- (void)jpushInMessagedidClickInMessageType:(JPushInMessageContentType)messageType Content:(NSDictionary *)content;
+
+@end
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/Headers/JPushModule.h b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/Headers/JPushModule.h
new file mode 100644
index 0000000..ad03617
--- /dev/null
+++ b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/Headers/JPushModule.h
@@ -0,0 +1,17 @@
+//
+// JPushModule.h
+// UniPluginJPush
+//
+// Created by huangshuni on 2021/1/12.
+//
+
+#import
+#import "DCUniModule.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface JPushModule : DCUniModule
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/Info.plist b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/Info.plist
new file mode 100644
index 0000000..69a80e2
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/Info.plist differ
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/UniPluginJPush b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/UniPluginJPush
new file mode 100644
index 0000000..247e2e7
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/UniPluginJPush differ
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeDirectory b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeDirectory
new file mode 100644
index 0000000..db16dc7
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeDirectory differ
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeRequirements b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeRequirements
new file mode 100644
index 0000000..92e2aad
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeRequirements differ
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeRequirements-1 b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeRequirements-1
new file mode 100644
index 0000000..d9451ab
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeRequirements-1 differ
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeResources b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeResources
new file mode 100644
index 0000000..532afdd
--- /dev/null
+++ b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeResources
@@ -0,0 +1,117 @@
+
+
+
+
+ files
+
+ Headers/JPushModule.h
+
+ hAItQbWWuw4mOOySo6FeWH3MYsA=
+
+ Info.plist
+
+ mdxdKDpLHqtEZTfNMy6MBCyizi8=
+
+
+ files2
+
+ Headers/JPushModule.h
+
+ hash
+
+ hAItQbWWuw4mOOySo6FeWH3MYsA=
+
+ hash2
+
+ LHaZ7SfsmEBYhVCf3bEBp8fHG5II1obOplOf4kj6EZQ=
+
+
+
+ rules
+
+ ^.*
+
+ ^.*\.lproj/
+
+ optional
+
+ weight
+ 1000
+
+ ^.*\.lproj/locversion.plist$
+
+ omit
+
+ weight
+ 1100
+
+ ^Base\.lproj/
+
+ weight
+ 1010
+
+ ^version.plist$
+
+
+ rules2
+
+ .*\.dSYM($|/)
+
+ weight
+ 11
+
+ ^(.*/)?\.DS_Store$
+
+ omit
+
+ weight
+ 2000
+
+ ^.*
+
+ ^.*\.lproj/
+
+ optional
+
+ weight
+ 1000
+
+ ^.*\.lproj/locversion.plist$
+
+ omit
+
+ weight
+ 1100
+
+ ^Base\.lproj/
+
+ weight
+ 1010
+
+ ^Info\.plist$
+
+ omit
+
+ weight
+ 20
+
+ ^PkgInfo$
+
+ omit
+
+ weight
+ 20
+
+ ^embedded\.provisionprofile$
+
+ weight
+ 20
+
+ ^version\.plist$
+
+ weight
+ 20
+
+
+
+
diff --git a/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeSignature b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeSignature
new file mode 100644
index 0000000..5a9909b
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/UniPluginJPush.framework/_CodeSignature/CodeSignature differ
diff --git a/nativeplugins/JG-JPush/ios/jpush-ios-3.4.0.a b/nativeplugins/JG-JPush/ios/jpush-ios-3.4.0.a
new file mode 100644
index 0000000..e5fa8b0
Binary files /dev/null and b/nativeplugins/JG-JPush/ios/jpush-ios-3.4.0.a differ
diff --git a/nativeplugins/JG-JPush/package.json b/nativeplugins/JG-JPush/package.json
new file mode 100644
index 0000000..0d0cfc2
--- /dev/null
+++ b/nativeplugins/JG-JPush/package.json
@@ -0,0 +1,138 @@
+{
+ "name": "JG-JPush",
+ "id": "JG-JPush",
+ "version": "1.0.3",
+ "description": "极光推送Hbuilder插件",
+ "_dp_type":"nativeplugin",
+ "_dp_nativeplugin":{
+ "ios": {
+ "plugins": [{
+ "type": "module",
+ "name": "JG-JPush",
+ "class": "JPushModule"
+ }],
+ "hooksClass": "JPushProxy",
+ "integrateType": "framework",
+ "deploymentTarget": "9.0",
+ "frameworks": [
+ "CFNetwork.framework",
+ "CoreFoundation.framework",
+ "CoreTelephony.framework",
+ "SystemConfiguration.framework",
+ "CoreGraphics.framework",
+ "Foundation.framework",
+ "UIKit.framework",
+ "Security.framework",
+ "libz.tbd",
+ "AdSupport.framework",
+ "UserNotifications.framework",
+ "libresolv.tbd",
+ "WebKit.framework",
+ "AppTrackingTransparency.framework",
+ "StoreKit.framework"
+ ],
+ "resources": [
+
+ ],
+ "capabilities": {
+ "entitlements": {
+ "aps-environment":"development"
+ }
+ },
+ "privacies": [
+ "NSLocationAlwaysAndWhenInUseUsageDescription",
+ "NSLocationAlwaysUsageDescription",
+ "NSLocationWhenInUseUsageDescription"
+ ],
+ "parameters": {
+ "JPUSH_ISPRODUCTION_IOS": {
+ "des": "[iOS]是否是生产环境,是填true,不是填false或者不填",
+ "key": "JPush:ISPRODUCTION"
+ },
+ "JPUSH_ADVERTISINGID_IOS": {
+ "des": "[iOS]广告标识符(IDFA)如果不需要使用IDFA,可不填",
+ "key": "JPush:ADVERTISINGID"
+ },
+ "JPUSH_DEFAULTINITJPUSH_IOS": {
+ "des": "[iOS]是否默认初始化,是填true,不是填false或者不填",
+ "key": "JPush:DEFAULTINITJPUSH"
+ }
+ }
+ },
+ "android": {
+ "plugins": [
+ {
+ "type": "module",
+ "name": "JG-JPush",
+ "class": "cn.jiguang.uniplugin_jpush.JPushModule"
+ }
+ ],
+ "integrateType": "aar",
+ "minSdkVersion": "19",
+ "permissions": [
+ "${applicationId}.permission.JPUSH_MESSAGE",
+ "android.permission.RECEIVE_USER_PRESENT",
+ "android.permission.INTERNET",
+ "android.permission.READ_PHONE_STATE",
+ "android.permission.WRITE_EXTERNAL_STORAGE",
+ "android.permission.READ_EXTERNAL_STORAGE",
+ "android.permission.WRITE_SETTINGS",
+ "android.permission.MOUNT_UNMOUNT_FILESYSTEMS",
+ "android.permission.ACCESS_NETWORK_STATE",
+ "android.permission.ACCESS_WIFI_STATE",
+ "com.huawei.android.launcher.permission.CHANGE_BADGE",
+ "android.permission.VIBRATE",
+ "android.permission.SYSTEM_ALERT_WINDOW",
+ "android.permission.ACCESS_COARSE_LOCATION",
+ "android.permission.CHANGE_WIFI_STATE",
+ "android.permission.ACCESS_FINE_LOCATION",
+ "android.permission.ACCESS_BACKGROUND_LOCATION",
+ "android.permission.ACCESS_LOCATION_EXTRA_COMMANDS",
+ "android.permission.CHANGE_NETWORK_STATE",
+ "android.permission.GET_TASKS",
+ "android.permission.QUERY_ALL_PACKAGES",
+ "${applicationId}.permission.MIPUSH_RECEIVE",
+ "com.coloros.mcs.permission.RECIEVE_MCS_MESSAGE",
+ "com.heytap.mcs.permission.RECIEVE_MCS_MESSAGE"
+ ],
+ "parameters": {
+ "JPUSH_OPPO_APPKEY": {
+ "des": "厂商OPPO-appkey,示例:OP-12345678",
+ "key": "OPPO_APPKEY"
+ },
+ "JPUSH_OPPO_APPID":{
+ "des": "厂商OPPO-appId,示例:OP-12345678",
+ "key": "OPPO_APPID"
+ },
+ "JPUSH_OPPO_APPSECRET":{
+ "des": "厂商OPPO-appSecret,示例:OP-12345678",
+ "key": "OPPO_APPSECRET"
+ },
+ "JPUSH_VIVO_APPKEY":{
+ "des": "厂商VIVO-appkey,示例:12345678",
+ "key": "com.vivo.push.api_key"
+ },
+ "JPUSH_VIVO_APPID":{
+ "des": "厂商VIVO-appId,示例:12345678",
+ "key": "com.vivo.push.app_id"
+ },
+ "JPUSH_MEIZU_APPKEY":{
+ "des": "厂商MEIZU-appKey,示例:MZ-12345678",
+ "key": "MEIZU_APPKEY"
+ },
+ "JPUSH_MEIZU_APPID":{
+ "des": "厂商MEIZU-appId,示例:MZ-12345678",
+ "key": "MEIZU_APPID"
+ },
+ "JPUSH_XIAOMI_APPKEY":{
+ "des": "厂商XIAOMI-appKey,示例:MI-12345678",
+ "key": "XIAOMI_APPKEY"
+ },
+ "JPUSH_XIAOMI_APPID":{
+ "des": "厂商XIAOMI-appId,示例:MI-12345678",
+ "key": "XIAOMI_APPID"
+ }
+ }
+ }
+ }
+}
diff --git a/pages.json b/pages.json
index 33c0ce4..9119fd7 100644
--- a/pages.json
+++ b/pages.json
@@ -37,7 +37,8 @@
{
"path": "pages/index/address",
"style": {
- "navigationStyle":"custom"
+ "navigationStyle":"custom",
+ "navigationBarTextStyle":"black"
}
},
{
@@ -102,8 +103,13 @@
{
"path" : "pages/account/changeImg",
"style" :{
- "navigationStyle":"custom",
- "enablePullDownRefresh": false
+ "app-plus":{
+ "titleNView":false //去掉当前页的顶部导航栏
+ },
+ "navigationBarBackgroundColor":"white",
+ "navigationStyle":"custom",
+ "navigationBarTextStyle":"#000000"
+
}
},
@@ -275,7 +281,7 @@
"path": "pages/category/productList",
"style": {
"titleNView":false,
- "enablePullDownRefresh":true,
+ // "enablePullDownRefresh":true,
// "navigationBarTextStyle":"white",
"navigationBarBackgroundColor": "#000000"
}
@@ -324,7 +330,8 @@
{
"path": "pages/productDetails/review",
"style": {
- "titleNView":false
+ "titleNView":false,
+ "enablePullDownRefresh":true
}
},
{
@@ -354,6 +361,7 @@
}
],
+
"globalStyle": {
"navigationBarBackgroundColor": "#000000",
"navigationBarTextStyle": "white",
@@ -387,6 +395,7 @@
"selectedIconPath": "static/img/Category1.png",
"text": "Category"
},
+
{
"pagePath": "pages/shippingCart/index",
"iconPath": "static/img/Cart.png",
diff --git a/pages/account/addAddress.vue b/pages/account/addAddress.vue
index 066835c..c2c650e 100644
--- a/pages/account/addAddress.vue
+++ b/pages/account/addAddress.vue
@@ -1,19 +1,17 @@
-
+
+
-
+
*Country/Region
{{countryText}}
-
-
@@ -172,7 +170,8 @@
province:'',
city:'',
address:'',
- listAll:[]
+ listAll:[],
+ isaddress:true,
}
},
methods:{
@@ -280,15 +279,27 @@
}
},
// ȡ
- getCountry(){
+ getCountry(){
let data={_action:'getregions',parent_region_id:0}
- defaultRequest2(data).then(res=>{
+ // uni.showLoading({
+ // title:'loading'
+ // })
+ // setTimeout(()=>{
+ // uni.hideLoading()
+ // },5000)
+
+ defaultRequest2(data).then(res=>{
let list =[]
let listAll = []
- // console.info(res)
+ console.info(res)
// // console.log(this.countryText)
+
+
if(res.error==0){
this.countryList=res.data
+ uni.setStorageSync('countryText',this.countryList)
+ this.isaddress = false
+ uni.hideLoading()
if(this.countryText){
res.data.map( item =>{
if(item.region_name == this.countryText){
@@ -317,8 +328,13 @@
},
// ѡ
bindPickerChange(e){
- this.isSelect = true
-
+ this.cityList = []
+ this.provinceList = []
+ console.log(e)
+ // uni.showLoading({
+ // title:''
+ // })
+ // this.isSelect = true
if(this.index!=e.detail.value){
this.provinceText=''
this.cityText=''
@@ -328,35 +344,58 @@
let list =[]
let listAll = []
this.index=e.detail.value
+ console.log(this.countryList)
+
this.query.consignee.country=this.countryList[this.index].region_id
this.countryText=this.countryList[this.index].region_name
+
+ // if(this.countryList.length >0){
+ // this.isSelect = true
+ // console.log(this.countryList.length)
+ // }
if(this.countryText){
+ this.isSelect = true
+ let strlist
this.countryList.map( item =>{
+ console.log(item)
if(item.region_name == this.countryText){
item.regions.map(item2 =>{
list.push({
region_name:item2.region_name,
region_id:item2.region_id
})
+
+ if(item2.regions){
+ strlist = item2.regions
+ }
listAll.push({
name:item2.region_name,
- list:item2.regions
+ list:strlist
})
- if(item2.region_name == this.provinceText){
- this.cityList = item2.regions
- if(this.cityList[0].region_name!=undefined)
+ this.cityList = strlist
+
+ this.provinceList = list
+ // this.provinceText = list[0].region_name
+ this.listAll = listAll
+ if(this.cityList)
{
- this.cityText = this.cityList[0].region_name
+ this.cityText = strlist[0].region_name
+ this.isSelect1 = true
}else{
this.isSelect1 = false
}
- }
+ if(this.provinceList){
+ this.provinceText = list[0].region_name
+ this.isSelect = true
+ }
+
})
+
}
})
- // console.log(listAll)
- this.provinceList = list
+
+
console.log(this.provinceList )
this.listAll = listAll
}
@@ -365,7 +404,7 @@
},
// ѡʡ
bindPickerChange1(e){
- this.isSelect1 = true
+
this.provinceIndex=e.detail.value
console.log(this.provinceList)
this.provinceText=this.provinceList[this.provinceIndex].region_name
@@ -376,6 +415,7 @@
{
this.cityText = this.cityList[0].region_name
this.query.consignee.city=this.cityList[0].region_id
+ this.isSelect1 = true
}
else{
this.isSelect1 = false
@@ -402,6 +442,7 @@
this.query.consignee.province=this.provinceList[this.provinceIndex].region_id
console.log(this.query.consignee.province)
+
// this.provinceText=this.provinceList[this.provinceIndex].region_name
},
// ѡ
@@ -413,11 +454,19 @@
}
},
- onShow() {
- this.getCountry()
+ created() {
+ let str = uni.getStorageSync('countryList')
+ console.log(str.length)
+ if(str.length >0 ){
+ this.countryList = uni.getStorageSync('countryList')
+ }
+ else{
+ this.getCountry()
+ }
},
- onLoad(e) {
-
+ onLoad(e) {
+ this.getCountry()
+
if(e.type==1){
e.data=JSON.parse(e.data)
console.info(e.data)
@@ -439,7 +488,7 @@
}
}
- this.getCountry()
+
}
}
@@ -450,7 +499,11 @@
}
\ No newline at end of file
diff --git a/pages/account/myOrders.vue b/pages/account/myOrders.vue
index c6c718e..b872121 100644
--- a/pages/account/myOrders.vue
+++ b/pages/account/myOrders.vue
@@ -491,10 +491,10 @@
+
\ No newline at end of file
diff --git a/pages/index/flashSale.vue b/pages/index/flashSale.vue
index b99b1e5..f102931 100644
--- a/pages/index/flashSale.vue
+++ b/pages/index/flashSale.vue
@@ -191,12 +191,19 @@
uni.navigateBack()
},
Cart(e){
- this.isCart = true
+ uni.showLoading({
+ title:'loading'
+ })
+
+ this.goodsDate =[]
+ this.gallery_list = []
this.goods_attr_list =[]
this.query.goods_id = e.id
this.cartQuery.goods_id = e.id
defaultRequest(this.query).then(res=>{
if(res.error==0){
+ uni.hideLoading()
+ this.isCart = true
console.log(res)
this.goodsDate=res.data
this.shop_price = this.goodsDate.shop_price
@@ -475,6 +482,7 @@
.addCard_scroll{
width: 286.67rpx;
height: 286.67rpx;
+ border-radius: 10rpx;
margin-left: 10.67rpx;
&:first-child{
margin-left: 0;
diff --git a/pages/index/index.vue b/pages/index/index.vue
index 32b17c4..9e778f6 100644
--- a/pages/index/index.vue
+++ b/pages/index/index.vue
@@ -2,7 +2,7 @@
-
+
@@ -182,6 +182,7 @@
-->
+
@@ -201,21 +202,35 @@
-->
-
-
-
+
+
+
-
+
{{item1.block_title}}
{{item1.block_title2}}
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{goodsDate.goods_name}}
+ US${{goodsDate.is_promote==0? shop_price :goodsDate.promote_price}}
+
+ {{item.name}}
+
+
+
+
+
+
+ 【{{ item1.attr_value}}】
+ {{ item1.attr_value}}
+
+
+
+
+
+ Quantity
+
+
+
+
+
+
+
-
+
@@ -308,26 +363,32 @@
-
+
- -1">{{ countdownTime2 }}sskip
+ 0||countdownTime2 ==0">{{ countdownTime2 }}sskip
-
-THE END-
+
+
+
+ {{ item.name}}
+
+
-
+
diff --git a/pages/index/index2.vue b/pages/index/index2.vue
index 7601f5c..3ab43b6 100644
--- a/pages/index/index2.vue
+++ b/pages/index/index2.vue
@@ -7,7 +7,7 @@
-
+
diff --git a/pages/index/pickUpCentre.vue b/pages/index/pickUpCentre.vue
index e03c577..ec9b4bf 100644
--- a/pages/index/pickUpCentre.vue
+++ b/pages/index/pickUpCentre.vue
@@ -51,7 +51,7 @@
if(res.error==0){
uni.showToast({
icon:'none',
- title:res.message
+ title:'ok!'
})
}
this.getList()
diff --git a/pages/login/changePwd.vue b/pages/login/changePwd.vue
index f3f1869..9985ba2 100644
--- a/pages/login/changePwd.vue
+++ b/pages/login/changePwd.vue
@@ -28,6 +28,10 @@
submit(){
defaultRequest(this.query).then(res=>{
console.info(res)
+ uni.showToast({
+ title:res.message,
+ icon:'none'
+ })
if(res.error==0){
uni.showToast({
title:res.message,
diff --git a/pages/login/index.vue b/pages/login/index.vue
index 85ddcb1..33db52c 100644
--- a/pages/login/index.vue
+++ b/pages/login/index.vue
@@ -18,7 +18,7 @@
- {{errMsg}}
+ ooo{{errMsg}}
Forgot your Password?
-
+
+
${{item.type_money}}
Min.spend
@@ -209,12 +213,13 @@
+
-
-
-
-
+
+
+
+
{{item.goods_name}}
@@ -269,9 +274,10 @@
isCoupons:false,
popup_good:-1,
isPoints:false,
+ isusebonus:1,
query:{
_action:'cartcheckout',
- is_new:0,
+ is_new:1,
direct_shopping:0,
consignee:''
},
@@ -362,7 +368,7 @@
// ////console.log(this.total.bonus)
// uni.setStorageSync('Total',this.total)
// this.order=res.data.order
- // ////console.log(this.use)
+
// //使用了余额
// this.usemethod()
// // this.Thepoint()
@@ -370,14 +376,14 @@
// }
// })
- this.total.amount = (parseFloat(total.amount) - parseFloat(this.bonus)).toFixed(2)
- uni.setStorageSync('Total',this.total)
- this.Thepoint()
+ this.total.amount = (parseFloat(total.amount) - parseFloat(this.bonus)).toFixed(2)-(parseFloat(this.Points).toFixed(2))
+ console.log(this.total.amount)
+
}
else{
this.bonus = 0
this.total = uni.getStorageSync('total')
- this.Thepoint()
+ // this.Thepoint()
}
// this.isCoupons = false
},
@@ -435,24 +441,21 @@
},
Thepoint(){
//使用余额 使用红包
- ////////console.log(this.total)
- // if(this.bonus !=0){
-
- // }
- if(this.use && (this.current!=-1||this.bonus!==0)){
+
+ if(this.use && (this.current!=-1||this.bonus!=0)){
this.total.bonus = this.bonus
- this.total = uni.getStorageSync('Total')
+ this.total = uni.getStorageSync('total')
+ // 余额大于商品总额
if(parseFloat(this.count) > this.total.amount){
let i = (parseFloat(this.count) - this.total.amount - parseFloat(this.total.bonus)).toFixed(2)
// this.Points = (this.total.amount - parseFloat(this.total.bonus)).toFixed(2)
- this.Points = this.total.amount
- //////console.log(this.Points)
- this.total.amount = 0
+ this.Points = this.total.amount - this.bonus
+ this.total.amount = 0
}
else if(parseFloat(this.count) < this.total.amount){
let i = (this.total.amount -parseFloat(this.count)).toFixed(2)
- // this.total.amount = i
+
this.Points = this.count
this.total.amount = (this.total.amount - parseFloat(this.Points)).toFixed(2)
}
@@ -464,6 +467,7 @@
}
// 都不使用
else if(!this.use&& this.current==-1){
+ this.Points = 0
this.bonus = 0
this.total = uni.getStorageSync('total')
}
@@ -520,60 +524,57 @@
// 变更配送方式
cartselectshipping(id){
- let data={_action:'cartselectshipping',shipping_id:id,consignee:this.address}
+ // let data={_action:'cartselectshipping',shipping_id:id,consignee:this.address}
+ let data={_action:'cartselectshipping',shipping_id:id,consignee:{country:'4191'}}
defaultRequest3(data,'consignee').then(res=>{
- ////console.info(data)
+ console.log(data)
+ console.info(res)
if(res.error==0){
this.tag = 1
this.total=res.data.total
//console.log(this.total)
this.totalnum = this.total.amount
- console.log(typeof(this.totalnum))
+ // console.log(typeof(this.totalnum))
uni.setStorageSync('total',(res.data.total))
- let ss = uni.getStorageSync('total')
this.order=res.data.order
+ // console.log(res.data)
this.orderId=res.data.order.shipping_id
// this.usemethod()
this.Thepoint()
}
})
},
- getList(){
- defaultRequest3(this.query,'consignee').then(res=>{
- ////////console.log(this.query)
- //console.info(res)
+ getList(query,e){
+ defaultRequest3(query,'consignee').then(res=>{
+ console.log(query)
+ console.info(res)
if(res.error==0){
this.orderDate=res.data
- this.address=res.data.consignee
+ if(e==1){
+ this.address=res.data.consignee
+ }
this.goods_list=res.data.goods_list
this.total = res.data.total
- //console.info(this.goods_list)
- this.shipping_list=res.data.shipping_list
- this.orderId = this.shipping_list[0].shipping_id
+
+ if(e==2){
+ this.shipping_list=res.data.shipping_list
+ console.info(res.data.shipping_list)
+ this.orderId = this.shipping_list[0].shipping_id
+ }
+
//console.info(res.data)
////console.log(this.shipping_list[0].shipping_id)
this.cartselectshipping(this.orderId)
if(res.data.bonus_list){
this.bonus_list=res.data.bonus_list
}
- // this.total=res.data.total
- // this.totalnum = this.total.amount
- // uni.setStorageSync('total',(res.data.total))
- // let ss = uni.getStorageSync('total')
- ////console.log(res.data.total)
this.order=res.data.order
}
})
// 获取红包
let data={_action:'getuserbonus'}
var time = new Date();
- // var today = time.getFullYear()
- // var month
- // if(time.getMonth() +1 <10){
- // month = '0'+(time.getMonth() +1).toString()
- // }
- // var date = time.getDate()
- // var timecurrent = today.toString() + month.toString() + date.toString()
+
var today = time.toLocaleString()
console.log(time.toLocaleString())
defaultRequest2(data).then(res=>{
@@ -593,25 +594,36 @@
list.push(item)
this.list = list
if(parseFloat(item.min_goods_amount) new Date(Date.parse(today)))
})
- this.bonus = list2[0].type_money
+
+ if(list2.length>0){
+ let max = 0
+ for(let i = 0;i0 || sum == 0){
+ this.total.amount = sum
+ }
+
// uni.setStorageSync('Total',this.total)
- uni.setStorageSync('totalsum',sum)
+ // uni.setStorageSync('totalsum',sum)
console.log(this.list)
}
@@ -690,6 +702,18 @@
onLoad(e) {
// this.current = 0
this.query=JSON.parse(e.query)
+ console.log(this.query)
+ this.getList(this.query,1)
+ let query2 = {
+ _action:'cartcheckout',
+ is_new:1,
+ direct_shopping:0,
+ consignee:{
+ country:'4191'
+ }
+ }
+ this.cartselectshipping(11)
+ this.getList(query2,2)
// if(e.orderId){
// this.orderId = e.orderId
// this.order.shipping_id = e.orderId
@@ -702,19 +726,23 @@
this.tag =1
}
////console.log(e.orderId)
- this.getList()
- this.cartselectshipping(11)
+
+ // this.getList(query2)
+
},
onShow(e) {
-
- this.getList()
+ // this.query=JSON.parse(e.query)
+ console.log(e)
+ this.getList(this.query,1)
+ // this.getList(this.query,1)
+
uni.$once('query' ,(query)=>{
////////console.info(query)
if(query.type=='address'){
- this.query.consignee=query.consignee
- this.query.is_new=0
+ this.query.consignee = query.consignee
+ this.query.is_new=0
////////console.log(this.query)
- this.getList()
+ this.getList(this.query,1)
}
});
},
@@ -911,24 +939,34 @@
position: fixed;
bottom: 0;
left: 0;
- // min-height: 200rpx;
- // max-height: 600rpx;
+ max-height: 50vh;
+ overflow-y: scroll;
background-color: white;
padding-left: 29.33rpx;
padding-right: 29.33rpx;
box-sizing: border-box;
- padding-top: 20.67rpx;
+ // padding-top: 20.67rpx;
width: 100%;
font-size: 30.67rpx;
font-weight: 400;
padding-bottom: 17.67rpx;
+ .margin_top{
+ margin-top: 80rpx;
+ }
.order_popup_title{
- position: relative;
+ position: fixed;
+ width: 100%;
+ z-index: 999;
+ line-height: 50rpx;
+ margin-bottom: 100rpx;
+ text-align: center;
+ background-color: #fff;
font-size: 32rpx;
font-weight: bold;
- border-bottom: 1px solid #E2E2E2;
+ // border-bottom: 1px solid #E2E2E2;
display: flex;
color:#000;
+ padding-top: 14rpx;
align-items: center;
justify-content: center;
// padding-top: 44.67rpx;
@@ -937,8 +975,10 @@
image{
width: 21.33rpx;
height: 21.33rpx;
- position: absolute;
- right: 26rpx;
+ padding-right: 30rpx;
+ // position: absolute;
+ // right: 26rpx;
+
}
}
.select_cop{
@@ -951,11 +991,12 @@
}
}
.order_popup_points{
- padding-bottom: 63.33rpx;
+
+ padding-bottom: 40rpx;
padding-left: 47.33rpx;
- padding-top: 34.67rpx;
+ padding-top: 47rpx;
font-size: 28rpx;
-
+ text-align: center;
.points_item{
display: flex;
align-items: center;
@@ -963,6 +1004,9 @@
&:last-child{
margin-bottom: 0;
}
+ &:first-child{
+ margin-top: 60rpx;
+ }
image{
width: 29.33rpx;
diff --git a/pages/order/details.vue b/pages/order/details.vue
index 50b40bd..56344fc 100644
--- a/pages/order/details.vue
+++ b/pages/order/details.vue
@@ -82,8 +82,8 @@