Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
android_street
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
android
android_street
Commits
942b75aa
Commit
942b75aa
authored
Jul 16, 2021
by
mengcuiguang2
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加微信秘钥,优化微信支付宝支付,优化用户管理类
parent
c70818f0
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
196 additions
and
17 deletions
+196
-17
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+1
-1
UserBean.kt
app/src/main/java/com/mints/street/bean/UserBean.kt
+1
-0
VipBean.kt
app/src/main/java/com/mints/street/bean/VipBean.kt
+2
-2
WxPayParamBean.java
app/src/main/java/com/mints/street/bean/WxPayParamBean.java
+119
-0
OpenvipActivity.kt
...src/main/java/com/mints/street/main/my/OpenvipActivity.kt
+48
-1
UserManager.kt
app/src/main/java/com/mints/street/manager/UserManager.kt
+22
-10
ShareSDK.xml
shareSdkLib/src/main/assets/ShareSDK.xml
+3
-3
No files found.
app/src/main/AndroidManifest.xml
View file @
942b75aa
...
@@ -153,7 +153,7 @@
...
@@ -153,7 +153,7 @@
tools:replace=
"android:screenOrientation"
/>
<!-- WX_APPID必填项 -->
tools:replace=
"android:screenOrientation"
/>
<!-- WX_APPID必填项 -->
<meta-data
<meta-data
android:name=
"WX_APPID"
android:name=
"WX_APPID"
android:value=
"wx
8f26539eabfb04f2
"
/>
android:value=
"wx
62d0739d771e6633
"
/>
<activity
<activity
android:name=
".wxapi.WXPayEntryActivity"
android:name=
".wxapi.WXPayEntryActivity"
...
...
app/src/main/java/com/mints/street/bean/UserBean.kt
View file @
942b75aa
...
@@ -13,6 +13,7 @@ class UserBean : Serializable {
...
@@ -13,6 +13,7 @@ class UserBean : Serializable {
inner
class
ConsumerBean
:
Serializable
{
inner
class
ConsumerBean
:
Serializable
{
val
openid
:
String
=
""
val
openid
:
String
=
""
val
head
:
String
=
""
val
nickname
:
String
=
""
val
nickname
:
String
=
""
val
mobile
:
String
=
""
val
mobile
:
String
=
""
val
idcode
:
String
=
""
val
idcode
:
String
=
""
...
...
app/src/main/java/com/mints/street/bean/VipBean.kt
View file @
942b75aa
...
@@ -3,9 +3,9 @@ package com.mints.street.bean
...
@@ -3,9 +3,9 @@ package com.mints.street.bean
import
java.io.Serializable
import
java.io.Serializable
class
VipBean
:
Serializable
{
class
VipBean
:
Serializable
{
var
list
:
List
<
Consumer
Bean
>?
=
null
var
list
:
List
<
List
Bean
>?
=
null
inner
class
Consumer
Bean
:
Serializable
{
inner
class
List
Bean
:
Serializable
{
var
id
:
Int
=
0
// 1
var
id
:
Int
=
0
// 1
var
price
:
Int
=
0
// 78
var
price
:
Int
=
0
// 78
var
days
:
Int
=
0
// 365
var
days
:
Int
=
0
// 365
...
...
app/src/main/java/com/mints/street/bean/WxPayParamBean.java
0 → 100644
View file @
942b75aa
package
com
.
mints
.
street
.
bean
;
import
com.google.gson.annotations.SerializedName
;
import
java.io.Serializable
;
public
class
WxPayParamBean
implements
Serializable
{
/**
* params : {"package":"Sign=WXPay","appid":"wx8f26539eabfb04f2","sign":"5012752C519C5EF177181F64514AF66C","partnerid":"1546641181","prepayid":"wx13145659084039f3fb9f073b1270898700","noncestr":"RAJD28WMYMT61N17FYOYGT73PNFC","timestamp":"1592031419"}
* tid : 2016514565805500001
*/
private
ParamsBean
params
;
private
long
tid
;
public
ParamsBean
getParams
()
{
return
params
;
}
public
void
setParams
(
ParamsBean
params
)
{
this
.
params
=
params
;
}
public
long
getTid
()
{
return
tid
;
}
public
void
setTid
(
long
tid
)
{
this
.
tid
=
tid
;
}
public
class
ParamsBean
implements
Serializable
{
/**
* package : Sign=WXPay
* appid : wx8f26539eabfb04f2
* sign : 5012752C519C5EF177181F64514AF66C
* partnerid : 1546641181
* prepayid : wx13145659084039f3fb9f073b1270898700
* noncestr : RAJD28WMYMT61N17FYOYGT73PNFC
* timestamp : 1592031419
*/
@SerializedName
(
"package"
)
private
String
packageX
;
private
String
appid
;
private
String
sign
;
private
String
partnerid
;
private
String
prepayid
;
private
String
noncestr
;
private
String
timestamp
;
private
String
params
;
public
String
getPackageX
()
{
return
packageX
;
}
public
void
setPackageX
(
String
packageX
)
{
this
.
packageX
=
packageX
;
}
public
String
getAppid
()
{
return
appid
;
}
public
void
setAppid
(
String
appid
)
{
this
.
appid
=
appid
;
}
public
String
getSign
()
{
return
sign
;
}
public
void
setSign
(
String
sign
)
{
this
.
sign
=
sign
;
}
public
String
getPartnerid
()
{
return
partnerid
;
}
public
void
setPartnerid
(
String
partnerid
)
{
this
.
partnerid
=
partnerid
;
}
public
String
getPrepayid
()
{
return
prepayid
;
}
public
void
setPrepayid
(
String
prepayid
)
{
this
.
prepayid
=
prepayid
;
}
public
String
getNoncestr
()
{
return
noncestr
;
}
public
void
setNoncestr
(
String
noncestr
)
{
this
.
noncestr
=
noncestr
;
}
public
String
getTimestamp
()
{
return
timestamp
;
}
public
void
setTimestamp
(
String
timestamp
)
{
this
.
timestamp
=
timestamp
;
}
public
String
getParams
()
{
return
params
;
}
public
void
setParams
(
String
params
)
{
this
.
params
=
params
;
}
}
}
app/src/main/java/com/mints/street/main/my/OpenvipActivity.kt
View file @
942b75aa
...
@@ -2,17 +2,21 @@ package com.mints.street.main.my
...
@@ -2,17 +2,21 @@ package com.mints.street.main.my
import
android.graphics.Color
import
android.graphics.Color
import
android.os.Bundle
import
android.os.Bundle
import
android.text.TextUtils
import
android.view.View
import
android.view.View
import
androidx.lifecycle.Observer
import
androidx.lifecycle.Observer
import
com.alibaba.android.vlayout.DelegateAdapter
import
com.alibaba.android.vlayout.DelegateAdapter
import
com.alibaba.android.vlayout.VirtualLayoutManager
import
com.alibaba.android.vlayout.VirtualLayoutManager
import
com.cuieney.sdk.rxpay.RxPay
import
com.fry.base.base.BaseActivity
import
com.fry.base.base.BaseActivity
import
com.mints.street.BR
import
com.mints.street.BR
import
com.mints.street.R
import
com.mints.street.R
import
com.mints.street.adapter.GridPaymentAdapter
import
com.mints.street.adapter.GridPaymentAdapter
import
com.mints.street.bean.PaymentBean
import
com.mints.street.bean.PaymentBean
import
com.mints.street.bean.VipBean
import
com.mints.street.bean.VipBean
import
com.mints.street.bean.WxPayParamBean
import
com.mints.street.databinding.ActivityOpenvipBinding
import
com.mints.street.databinding.ActivityOpenvipBinding
import
com.mints.street.manager.UserManager
import
kotlinx.android.synthetic.main.activity_openvip.*
import
kotlinx.android.synthetic.main.activity_openvip.*
import
kotlinx.android.synthetic.main.include_header.*
import
kotlinx.android.synthetic.main.include_header.*
import
me.goldze.mvvmhabit.utils.ToastUtils
import
me.goldze.mvvmhabit.utils.ToastUtils
...
@@ -23,6 +27,8 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
...
@@ -23,6 +27,8 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
private
var
vLayout
:
VirtualLayoutManager
?
=
null
private
var
vLayout
:
VirtualLayoutManager
?
=
null
private
var
mAdapter
:
DelegateAdapter
?
=
null
private
var
mAdapter
:
DelegateAdapter
?
=
null
private
var
vipList
:
MutableList
<
VipBean
.
ListBean
>?
=
null
override
fun
initVariableId
()
=
BR
.
viewModel
override
fun
initVariableId
()
=
BR
.
viewModel
override
fun
initContentView
(
savedInstanceState
:
Bundle
?)
=
R
.
layout
.
activity_openvip
override
fun
initContentView
(
savedInstanceState
:
Bundle
?)
=
R
.
layout
.
activity_openvip
override
fun
initData
()
{
override
fun
initData
()
{
...
@@ -77,6 +83,7 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
...
@@ -77,6 +83,7 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
override
fun
initViewObservable
()
{
override
fun
initViewObservable
()
{
super
.
initViewObservable
()
super
.
initViewObservable
()
viewModel
.
Vipdata
.
observe
(
this
,
Observer
<
VipBean
>
{
viewModel
.
Vipdata
.
observe
(
this
,
Observer
<
VipBean
>
{
vipList
=
it
.
list
as
MutableList
<
VipBean
.
ListBean
>?
mAdapter
?.
addAdapter
(
GridPaymentAdapter
(
this
,
it
.
list
!!
))
mAdapter
?.
addAdapter
(
GridPaymentAdapter
(
this
,
it
.
list
!!
))
})
})
viewModel
.
Paymentdata
.
observe
(
this
,
Observer
<
PaymentBean
>
{
viewModel
.
Paymentdata
.
observe
(
this
,
Observer
<
PaymentBean
>
{
...
@@ -109,7 +116,13 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
...
@@ -109,7 +116,13 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
setOnChecked
(
2
)
setOnChecked
(
2
)
}
}
R
.
id
.
bt_try
->
{
R
.
id
.
bt_try
->
{
if
(
vipList
!=
null
&&
vipList
!!
.
size
>
0
)
{
// if (TextUtils.equals("weixin", payDialog?.payChannel)) {
// vipPresenter?.getVipPayParams("WEIXIN", vipList!![vipAdapter?.getPosition()].pid)
// } else {
// vipPresenter?.getVipPayParams("ALIPAY", vipList!![vipAdapter?.getPosition()].pid)
// }
}
}
}
}
}
}
}
...
@@ -128,5 +141,39 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
...
@@ -128,5 +141,39 @@ class OpenvipActivity : BaseActivity<ActivityOpenvipBinding, OpenvipViewModel>()
}
}
fun
wxPay
(
wxParanBean
:
WxPayParamBean
)
{
val
data
=
wxParanBean
.
params
var
str
=
"{\"prepayId\":\"${data.prepayid}\","
+
"\"nonceStr\":\"${data.noncestr}\","
+
"\"packageValue\":\"${data.packageX}\","
+
"\"partnerId\":\"${data.partnerid}\","
+
"\"sign\":\"${data.sign}\","
+
"\"timeStamp\":\"${data.timestamp}\"}"
RxPay
(
this
).
requestWXpay
(
str
)
.
subscribe
({
isPay
->
if
(
isPay
)
{
//支付成功
UserManager
.
INSTANCE
.
setVipFlag
(
true
)
}
// vipPresenter?.queryVipOrder(wxParanBean.tid.toString(), isPay)
})
{
throwable
->
ToastUtils
.
showShort
(
"支付异常,请联系管理员"
)
}
}
fun
alipay
(
wxParanBean
:
WxPayParamBean
)
{
RxPay
(
this
).
requestAlipay
(
wxParanBean
.
params
.
params
)
.
subscribe
({
isPay
->
if
(
isPay
)
{
//支付成功
UserManager
.
INSTANCE
.
setVipFlag
(
true
)
}
// vipPresenter?.queryVipOrder(wxParanBean.tid.toString(), isPay)
})
{
throwable
->
ToastUtils
.
showShort
(
"支付异常,请联系管理员"
)
}
}
}
}
app/src/main/java/com/mints/street/manager/UserManager.kt
View file @
942b75aa
...
@@ -58,6 +58,11 @@ class UserManager {
...
@@ -58,6 +58,11 @@ class UserManager {
*/
*/
private
const
val
EXPIRETIME
=
"expiretime"
private
const
val
EXPIRETIME
=
"expiretime"
/**
* vip支付是否有效
*/
private
const
val
VIP_FLAG
=
"vipFlag"
val
INSTANCE
:
UserManager
by
lazy
(
mode
=
LazyThreadSafetyMode
.
SYNCHRONIZED
)
{
val
INSTANCE
:
UserManager
by
lazy
(
mode
=
LazyThreadSafetyMode
.
SYNCHRONIZED
)
{
UserManager
()
UserManager
()
}
}
...
@@ -90,11 +95,19 @@ class UserManager {
...
@@ -90,11 +95,19 @@ class UserManager {
if
(!
TextUtils
.
isEmpty
(
user
.
nickname
))
{
if
(!
TextUtils
.
isEmpty
(
user
.
nickname
))
{
MMKV
.
mmkvWithID
(
WX_NAME
).
encode
(
WX_NAME
,
user
.
nickname
)
MMKV
.
mmkvWithID
(
WX_NAME
).
encode
(
WX_NAME
,
user
.
nickname
)
}
}
if
(!
TextUtils
.
isEmpty
(
user
.
head
))
{
MMKV
.
mmkvWithID
(
WX_HEADER
).
encode
(
WX_HEADER
,
user
.
head
)
}
MMKV
.
mmkvWithID
(
IS_FOREVER
).
encode
(
IS_FOREVER
,
user
.
isForever
)
MMKV
.
mmkvWithID
(
IS_FOREVER
).
encode
(
IS_FOREVER
,
user
.
isForever
)
MMKV
.
mmkvWithID
(
EXPIRETIME
).
encode
(
EXPIRETIME
,
user
.
expireTime
)
MMKV
.
mmkvWithID
(
EXPIRETIME
).
encode
(
EXPIRETIME
,
user
.
expireTime
)
if
(!
TextUtils
.
isEmpty
(
openid
))
{
if
(!
TextUtils
.
isEmpty
(
openid
))
{
MMKV
.
mmkvWithID
(
WX_OPENID
).
encode
(
WX_OPENID
,
openid
)
MMKV
.
mmkvWithID
(
WX_OPENID
).
encode
(
WX_OPENID
,
openid
)
}
}
if
(
user
.
expireTime
>
0
)
{
MMKV
.
mmkvWithID
(
VIP_FLAG
).
encode
(
VIP_FLAG
,
true
)
}
else
{
MMKV
.
mmkvWithID
(
VIP_FLAG
).
encode
(
VIP_FLAG
,
false
)
}
}
}
}
}
...
@@ -117,31 +130,21 @@ class UserManager {
...
@@ -117,31 +130,21 @@ class UserManager {
return
!
TextUtils
.
isEmpty
(
wxId
)||!
TextUtils
.
isEmpty
(
mobile
)
return
!
TextUtils
.
isEmpty
(
wxId
)||!
TextUtils
.
isEmpty
(
mobile
)
}
}
/**
* 单独获取用户id
*/
fun
getUserID
():
String
{
fun
getUserID
():
String
{
val
kv
=
MMKV
.
mmkvWithID
(
USER_ID
)
val
kv
=
MMKV
.
mmkvWithID
(
USER_ID
)
return
kv
.
decodeString
(
USER_ID
,
""
)
return
kv
.
decodeString
(
USER_ID
,
""
)
}
}
/**
* 获取用户登陆状态
*/
fun
getTokenID
():
String
{
fun
getTokenID
():
String
{
val
kv
=
MMKV
.
mmkvWithID
(
TOKEN_ID
)
val
kv
=
MMKV
.
mmkvWithID
(
TOKEN_ID
)
return
kv
.
decodeString
(
TOKEN_ID
,
""
)
return
kv
.
decodeString
(
TOKEN_ID
,
""
)
}
}
/**
* 获取用户邀请码
*/
fun
getCodeID
():
String
{
fun
getCodeID
():
String
{
val
kv
=
MMKV
.
mmkvWithID
(
CODE_ID
)
val
kv
=
MMKV
.
mmkvWithID
(
CODE_ID
)
return
kv
.
decodeString
(
CODE_ID
,
""
)
return
kv
.
decodeString
(
CODE_ID
,
""
)
}
}
fun
getWxName
():
String
{
fun
getWxName
():
String
{
val
kv
=
MMKV
.
mmkvWithID
(
WX_NAME
)
val
kv
=
MMKV
.
mmkvWithID
(
WX_NAME
)
return
kv
.
decodeString
(
WX_NAME
,
""
)
return
kv
.
decodeString
(
WX_NAME
,
""
)
...
@@ -167,6 +170,14 @@ class UserManager {
...
@@ -167,6 +170,14 @@ class UserManager {
return
kv
.
decodeLong
(
EXPIRETIME
,
0
)
return
kv
.
decodeLong
(
EXPIRETIME
,
0
)
}
}
fun
getVipFlag
():
Boolean
{
val
kv
=
MMKV
.
mmkvWithID
(
EXPIRETIME
)
return
kv
.
decodeBool
(
EXPIRETIME
,
false
)
}
fun
setVipFlag
(
vipFlag
:
Boolean
){
MMKV
.
mmkvWithID
(
VIP_FLAG
).
encode
(
VIP_FLAG
,
vipFlag
)
}
fun
userLogout
()
{
fun
userLogout
()
{
MMKV
.
mmkvWithID
(
USER_ID
).
remove
(
USER_ID
)
MMKV
.
mmkvWithID
(
USER_ID
).
remove
(
USER_ID
)
...
@@ -177,6 +188,7 @@ class UserManager {
...
@@ -177,6 +188,7 @@ class UserManager {
MMKV
.
mmkvWithID
(
WX_HEADER
).
remove
(
WX_HEADER
)
MMKV
.
mmkvWithID
(
WX_HEADER
).
remove
(
WX_HEADER
)
MMKV
.
mmkvWithID
(
IS_FOREVER
).
remove
(
IS_FOREVER
)
MMKV
.
mmkvWithID
(
IS_FOREVER
).
remove
(
IS_FOREVER
)
MMKV
.
mmkvWithID
(
EXPIRETIME
).
remove
(
EXPIRETIME
)
MMKV
.
mmkvWithID
(
EXPIRETIME
).
remove
(
EXPIRETIME
)
MMKV
.
mmkvWithID
(
VIP_FLAG
).
encode
(
VIP_FLAG
,
false
)
}
}
}
}
\ No newline at end of file
shareSdkLib/src/main/assets/ShareSDK.xml
View file @
942b75aa
...
@@ -77,15 +77,15 @@
...
@@ -77,15 +77,15 @@
但是只能分享图片和文字,username和path是分享小程序用的的,userName是小程序的原始ID,path是小程序内的页面路径;
但是只能分享图片和文字,username和path是分享小程序用的的,userName是小程序的原始ID,path是小程序内的页面路径;
而且必须保证微信开放平台与微信公众/小程序绑定才可以分享;不需要的不用管
而且必须保证微信开放平台与微信公众/小程序绑定才可以分享;不需要的不用管
-->
-->
<Wechat
AppId=
"wx
a824ad2a65960e60"
AppSecret=
"a01fbb557b214f7c11564b47bc7f3c91
"
BypassApproval=
"false"
<Wechat
AppId=
"wx
62d0739d771e6633"
AppSecret=
"d837b62b054912b68befa1e33b4c3e13
"
BypassApproval=
"false"
Enable=
"true"
Id=
"4"
Enable=
"true"
Id=
"4"
MiniprogramType=
"0"
Path=
"pages/index/index.html?id=1"
SortId=
"4"
MiniprogramType=
"0"
Path=
"pages/index/index.html?id=1"
SortId=
"4"
UserName=
"gh_afb25ac019c9"
WithShareTicket=
"true"
/>
UserName=
"gh_afb25ac019c9"
WithShareTicket=
"true"
/>
<WechatMoments
AppId=
"wx
a824ad2a65960e60"
AppSecret=
"a01fbb557b214f7c11564b47bc7f3c91
"
BypassApproval=
"false"
<WechatMoments
AppId=
"wx
62d0739d771e6633"
AppSecret=
"d837b62b054912b68befa1e33b4c3e13
"
BypassApproval=
"false"
Enable=
"true"
Id=
"5"
SortId=
"5"
/>
Enable=
"true"
Id=
"5"
SortId=
"5"
/>
<WechatFavorite
AppId=
"wx
a824ad2a65960e60"
AppSecret=
"a01fbb557b214f7c11564b47bc7f3c91
"
Enable=
"true"
<WechatFavorite
AppId=
"wx
62d0739d771e6633"
AppSecret=
"d837b62b054912b68befa1e33b4c3e13
"
Enable=
"true"
Id=
"6"
SortId=
"6"
/>
Id=
"6"
SortId=
"6"
/>
<!-- ShareByAppClient标识是否使用微博客户端分享,默认是false -->
<!-- ShareByAppClient标识是否使用微博客户端分享,默认是false -->
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment