瀏覽代碼

Merge branch 'master' into AutomaticRedPacketGrabbing

jixionghui 4 年之前
父節點
當前提交
a0b9383e87

+ 19 - 0
skWeiChatBaidu/src/main/java/com/liaobo/im/bean/CertificationBean.java

@@ -0,0 +1,19 @@
+package com.liaobo.im.bean;
+
+import java.io.Serializable;
+
+/**
+ * 实名认证
+ */
+public class CertificationBean implements Serializable {
+    private static final long serialVersionUID = -2065233474054951151L;
+    private boolean isCertification;
+
+    public boolean isCertification() {
+        return isCertification;
+    }
+
+    public void setCertification(boolean certification) {
+        isCertification = certification;
+    }
+}

+ 23 - 10
skWeiChatBaidu/src/main/java/com/liaobo/im/fragment/MeFragment.java

@@ -14,6 +14,7 @@ import android.widget.TextView;
 import com.liaobo.im.AppConstant;
 import com.liaobo.im.R;
 import com.liaobo.im.Reporter;
+import com.liaobo.im.bean.CertificationBean;
 import com.liaobo.im.bean.User;
 import com.liaobo.im.broadcast.OtherBroadcast;
 import com.liaobo.im.course.LocalCourseActivity;
@@ -25,6 +26,7 @@ import com.liaobo.im.helper.AvatarHelper;
 import com.liaobo.im.pay.PaymentActivity;
 import com.liaobo.im.ui.MainActivity;
 import com.liaobo.im.ui.account.SignInActivity;
+import com.liaobo.im.ui.base.BaseChatActivity;
 import com.liaobo.im.ui.base.EasyFragment;
 import com.liaobo.im.ui.circle.BusinessCircleActivity;
 import com.liaobo.im.ui.contacts.RoomActivity;
@@ -156,6 +158,7 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
         });
         findViewById(R.id.rlt_red_packet_record).setOnClickListener(this);
 
+        findViewById(R.id.rlt_real_name_auth).setOnClickListener(this);
         findViewById(R.id.llGroup).setOnClickListener(v -> RoomActivity.start(requireContext()));
         findViewById(R.id.rlt_accessibility).setOnClickListener(this);
 
@@ -186,10 +189,10 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
                 break;
             case R.id.my_monry:
                 // 我的钱包
-                if (!isVerified) {
-                    checkVerified();
-                    return;
-                }
+//                if (!isVerified) {
+//                    checkVerified();
+//                    return;
+//                }
                 startActivity(new Intent(getActivity(), WxPayBlance.class));
                 break;
             case R.id.my_space_rl:
@@ -329,14 +332,24 @@ public class MeFragment extends EasyFragment implements View.OnClickListener {
 //        HttpUtils.get().url("http://eolinker.autu.live/server/index.php?g=Web&c=Mock&o=simple&projectID=3&uri=/user/signin/pack/info&time=1576392852&secret=44daefaa0c6c7b6f59976798f5996e7e&access_token=caaed74185504f6b835b7d90573c2aef")
                 .params(params)
                 .build()
-                .execute(new BaseCallback<String>(String.class) {
+                .execute(new BaseCallback<CertificationBean>(CertificationBean.class) {
 
                     @Override
-                    public void onResponse(ObjectResult<String> result) {
-                        if (result.getResultCode() == 1) {
-                            ToastUtil.showToast(getContext(), "实名认证已通过");
-                            isVerified = true;
-                            PreferenceUtils.putString(getContext(), "isVerified", "true");
+                    public void onResponse(ObjectResult<CertificationBean> result) {
+                        if (result.getResultCode() == 1 && result.getData()!=null) {
+                            CertificationBean bean = result.getData();
+
+                            if (bean.isCertification()){
+                                isVerified = true;
+                                ToastUtil.showToast(getContext(), "实名认证已通过");
+                                PreferenceUtils.putString(getContext(), "isVerified", "true");
+                            }else {
+                                ToastUtil.showToast(getActivity(), result.getResultMsg());
+
+                            }
+
+
+
 //                            startActivity(new Intent(getActivity(), SignInActivity.class));
                         }
                     }

+ 79 - 0
skWeiChatBaidu/src/main/java/com/liaobo/im/ui/base/BaseChatActivity.java

@@ -0,0 +1,79 @@
+package com.liaobo.im.ui.base;
+
+import android.text.TextUtils;
+
+import com.liaobo.im.R;
+import com.liaobo.im.bean.CertificationBean;
+import com.liaobo.im.ui.dialog.VerifiedDialogView;
+import com.liaobo.im.util.PreferenceUtils;
+import com.liaobo.im.util.ToastUtil;
+import com.liaobo.im.view.ChatBottomView;
+import com.liaobo.im.view.ChatContentView;
+import com.liaobo.im.view.SelectCardPopupWindow;
+import com.liaobo.im.xmpp.listener.ChatMessageListener;
+import com.liaobo.im.xuan.xuanhttplibrary.okhttp.HttpUtils;
+import com.liaobo.im.xuan.xuanhttplibrary.okhttp.callback.BaseCallback;
+import com.liaobo.im.xuan.xuanhttplibrary.okhttp.result.ObjectResult;
+
+import java.util.HashMap;
+
+import okhttp3.Call;
+
+public abstract class BaseChatActivity extends BaseActivity implements
+        ChatContentView.MessageEventListener, ChatBottomView.ChatBottomListener, ChatMessageListener, SelectCardPopupWindow.SendCardS {
+
+
+
+
+    protected void checkVerified(){
+        new VerifiedDialogView(this, ((name, id) -> {
+            makeVerified(name,id);
+        })).show();
+    }
+
+
+    private void makeVerified(String name, String id) {
+        HashMap<String, String> params = new HashMap<String, String>();
+        params.put("access_token", coreManager.getSelfStatus().accessToken);
+        params.put("realName", name);
+        params.put("idcard", id);
+
+        HttpUtils.get().url(coreManager.getConfig().MAKE_VERIFIED)
+                .params(params)
+                .build()
+                .execute(new BaseCallback<CertificationBean>(CertificationBean.class) {
+
+                    @Override
+                    public void onResponse(ObjectResult<CertificationBean> result) {
+                        CertificationBean certificationBean = result.getData();
+                        if (result.getResultCode() == 1 && certificationBean!=null) {
+                            if (certificationBean.isCertification()){
+                                ToastUtil.showToast(getApplicationContext(), "实名认证已通过");
+                                PreferenceUtils.putString(getApplicationContext(), "isVerified", "true");
+                            }else {
+                                ToastUtil.showToast(getApplicationContext(), result.getResultMsg());
+
+                            }
+
+                            ToastUtil.showToast(BaseChatActivity.this, getApplicationContext().getString(R.string.success));
+
+                        }else {
+
+                            ToastUtil.showToast(BaseChatActivity.this, result.getResultMsg());
+                        }
+                    }
+
+                    @Override
+                    public void onError(Call call, Exception e) {
+
+                        ToastUtil.showNetError(BaseChatActivity.this);
+                    }
+                });
+    }
+
+    protected boolean isVerified(){
+
+        boolean isVerified = !TextUtils.equals(PreferenceUtils.getString(this, "isVerified"), "false");
+        return isVerified;
+    }
+}

+ 4 - 0
skWeiChatBaidu/src/main/java/com/liaobo/im/ui/base/CoreManager.java

@@ -139,8 +139,12 @@ public class CoreManager {
     // 刷新用户余额
     // 单聊、群聊的onCreate方法就不调用updateMyBalance了,放到主界面的onCreate方法内调用
     public static void updateMyBalance() {
+        if (staticSelf == null || staticSelfStatus == null) {
+            return;
+        }
         HashMap<String, String> params = new HashMap<String, String>();
 
+
         params.put("access_token", staticSelfStatus.accessToken);
         HttpUtils.get().url(CoreManager.requireConfig(MyApplication.getInstance()).RECHARGE_GET)
                 .params(params)

+ 15 - 2
skWeiChatBaidu/src/main/java/com/liaobo/im/ui/me/redpacket/WxPayBlance.java

@@ -9,6 +9,8 @@ import com.liaobo.im.R;
 import com.liaobo.im.bean.redpacket.Balance;
 import com.liaobo.im.ui.base.BaseActivity;
 import com.liaobo.im.ui.me.BankCardActivity;
+import com.liaobo.im.util.Constants;
+import com.liaobo.im.util.PreferenceUtils;
 import com.liaobo.im.util.ToastUtil;
 import com.liaobo.im.xuan.xuanhttplibrary.okhttp.HttpUtils;
 import com.liaobo.im.xuan.xuanhttplibrary.okhttp.callback.BaseCallback;
@@ -84,8 +86,7 @@ public class WxPayBlance extends BaseActivity {
         mWithdrawTv.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
-                Intent intent = new Intent(WxPayBlance.this, QuXianActivity.class);
-                startActivity(intent);
+                checkHasPayPassword();
             }
         });
 
@@ -112,6 +113,18 @@ public class WxPayBlance extends BaseActivity {
         });
     }
 
+    private void checkHasPayPassword() {
+        boolean hasPayPassword = PreferenceUtils.getBoolean(this, Constants.IS_PAY_PASSWORD_SET + coreManager.getSelf().getUserId(), true);
+        if (hasPayPassword) {
+            Intent intent = new Intent(WxPayBlance.this, QuXianActivity.class);
+            startActivity(intent);
+        }else{
+            ToastUtil.showToast(this, R.string.tip_no_pay_password);
+            Intent intent = new Intent(this, ChangePayPasswordActivity.class);
+            startActivity(intent);
+        }
+    }
+
     private void initData() {
         HashMap<String, String> params = new HashMap<String, String>();
         params.put("access_token", coreManager.getSelfStatus().accessToken);

+ 11 - 5
skWeiChatBaidu/src/main/java/com/liaobo/im/ui/message/ChatActivity.java

@@ -76,11 +76,13 @@ import com.liaobo.im.pay.TransferMoneyActivity;
 import com.liaobo.im.pay.TransferMoneyDetailActivity;
 import com.liaobo.im.ui.MainActivity;
 import com.liaobo.im.ui.base.BaseActivity;
+import com.liaobo.im.ui.base.BaseChatActivity;
 import com.liaobo.im.ui.base.CoreManager;
 import com.liaobo.im.ui.contacts.SendContactsActivity;
 import com.liaobo.im.ui.dialog.CreateCourseDialog;
 import com.liaobo.im.ui.map.MapPickerActivity;
 import com.liaobo.im.ui.me.MyCollection;
+import com.liaobo.im.ui.me.redpacket.MucSendRedPacketActivity;
 import com.liaobo.im.ui.me.redpacket.RedDetailsActivity;
 import com.liaobo.im.ui.me.redpacket.SendRedPacketActivity;
 import com.liaobo.im.ui.message.single.PersonSettingActivity;
@@ -147,9 +149,7 @@ import top.zibin.luban.OnCompressListener;
 /**
  * 单聊界面
  */
-public class ChatActivity extends BaseActivity implements
-        MessageEventListener, ChatBottomListener, ChatMessageListener,
-        SelectCardPopupWindow.SendCardS {
+public class ChatActivity extends BaseChatActivity {
 
     public static final String FRIEND = "friend";
     /*输入红包金额的返回*/
@@ -1367,8 +1367,14 @@ public class ChatActivity extends BaseActivity implements
 
     @Override
     public void clickRedpacket() {
-        Intent intent = new Intent(this, SendRedPacketActivity.class);
-        startActivityForResult(intent, REQUEST_CODE_SEND_RED);
+        boolean isVerified = isVerified();
+        if (isVerified){
+            Intent intent = new Intent(this, SendRedPacketActivity.class);
+            startActivityForResult(intent, REQUEST_CODE_SEND_RED);
+        }else {
+            checkVerified();
+        }
+
     }
 
     @Override

+ 11 - 5
skWeiChatBaidu/src/main/java/com/liaobo/im/ui/message/MucChatActivity.java

@@ -76,6 +76,7 @@ import com.liaobo.im.helper.FileDataHelper;
 import com.liaobo.im.helper.PrivacySettingHelper;
 import com.liaobo.im.helper.UploadEngine;
 import com.liaobo.im.ui.base.BaseActivity;
+import com.liaobo.im.ui.base.BaseChatActivity;
 import com.liaobo.im.ui.base.CoreManager;
 import com.liaobo.im.ui.contacts.SendContactsActivity;
 import com.liaobo.im.ui.dialog.CreateCourseDialog;
@@ -146,8 +147,7 @@ import top.zibin.luban.OnCompressListener;
 /**
  * 聊天主界面
  */
-public class MucChatActivity extends BaseActivity implements
-        MessageEventListener, ChatBottomListener, ChatMessageListener, MucListener,
+public class MucChatActivity extends BaseChatActivity implements MucListener,
         SelectRoomMemberPopupWindow.SendMember, SelectCardPopupWindow.SendCardS {
 
     private static final int REQUEST_CODE_INVITE = 895;
@@ -1751,9 +1751,15 @@ public class MucChatActivity extends BaseActivity implements
 
     @Override
     public void clickRedpacket() {
-        Intent intent = new Intent(this, MucSendRedPacketActivity.class);
-        intent.putExtra("roomId",roomId);
-        startActivityForResult(intent, ChatActivity.REQUEST_CODE_SEND_RED);
+        boolean isVerified = isVerified();
+        if (isVerified){
+
+            Intent intent = new Intent(this, MucSendRedPacketActivity.class);
+            intent.putExtra("roomId",roomId);
+            startActivityForResult(intent, ChatActivity.REQUEST_CODE_SEND_RED);
+        }else {
+            checkVerified();
+        }
     }
 
     @Override

+ 4 - 0
skWeiChatBaidu/src/main/java/com/liaobo/im/util/ToastUtil.java

@@ -1,6 +1,7 @@
 package com.liaobo.im.util;
 
 import android.content.Context;
+import android.text.TextUtils;
 import android.widget.Toast;
 
 import com.liaobo.im.R;
@@ -40,6 +41,9 @@ public class ToastUtil {
         if (context == null) {
             return;
         }
+        if (TextUtils.isEmpty(message)) {
+            return;
+        }
         if (message.equals("请授权后再试")){
             return;
         }