Просмотр исходного кода

修改躺着玩中的逻辑,并做一些功能上的调整

zengjiebin лет назад: 8
Родитель
Сommit
238cdb159c

+ 1 - 0
app/src/main/AndroidManifest.xml

@@ -323,6 +323,7 @@
         <activity android:name="com.sheep.gamegroup.view.activity.CommitWxAct" />
         <activity android:name="com.sheep.gamegroup.view.activity.ActGuideOnHook" />
         <activity android:name="com.sheep.gamegroup.view.activity.CommitWxCodeAct" />
+        <activity android:name="com.sheep.gamegroup.view.activity.ActGuideDeblocked" />
 
 
         <!--友盟start-->

+ 2 - 1
app/src/main/java/com/sheep/gamegroup/util/Jump2View.java

@@ -10,6 +10,7 @@ import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.model.entity.WXOnHookAccount;
 import com.sheep.gamegroup.view.activity.AccountAndSecurityAct;
+import com.sheep.gamegroup.view.activity.ActGuideDeblocked;
 import com.sheep.gamegroup.view.activity.ActGuideOnHook;
 import com.sheep.gamegroup.view.activity.AskGetMoneyAct;
 import com.sheep.gamegroup.view.activity.AuthenticationAct;
@@ -215,7 +216,7 @@ public class Jump2View {
      * @param o
      */
     public void goGuideDeArchive(Context context, Object o){
-        Intent intent = new Intent(context, ActGuideOnHook.class);
+        Intent intent = new Intent(context, ActGuideDeblocked.class);
 //        extraUrl = getIntent().getStringExtra(KFIntentKeys.EXTRA_WEBVIEW_URL);
 //        extraTitle = getIntent().getStringExtra(KFIntentKeys.EXTRA_WEBVIEW_TITLE);
         intent.putExtra(KFIntentKeys.EXTRA_WEBVIEW_URL, "https://qiniu.kuaifazs.com/weixin.html");

+ 107 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/ActGuideDeblocked.java

@@ -0,0 +1,107 @@
+package com.sheep.gamegroup.view.activity;
+
+import android.os.Bundle;
+import android.view.View;
+import android.webkit.WebChromeClient;
+import android.webkit.WebSettings;
+import android.webkit.WebView;
+import android.webkit.WebViewClient;
+
+import com.kfzs.android.view.widget.SafeWebView;
+import com.kfzs.duanduan.BaseCompatActivity;
+import com.kfzs.duanduan.bean.KFIntentKeys;
+import com.orhanobut.logger.Logger;
+import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import butterknife.OnClick;
+
+import static com.kfzs.duanduan.bean.KFIntentKeys.EXTRA_WEBVIEW_NO_TITLE;
+
+/**
+ * all web view
+ * Created by HooRang on 2017/2/17.
+ */
+public class ActGuideDeblocked extends BaseCompatActivity {
+
+    @BindView(R.id.webview)
+    SafeWebView mWebView;
+    @BindView(R.id.tv_next)
+    SafeWebView tv_next;
+
+    private String extraUrl;
+    private String extraTitle;
+    private WebSettings webViewSettings;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_guide_on_hook);
+
+        extraUrl = getIntent().getStringExtra(KFIntentKeys.EXTRA_WEBVIEW_URL);
+        extraTitle = getIntent().getStringExtra(KFIntentKeys.EXTRA_WEBVIEW_TITLE);
+
+        ButterKnife.bind(this);
+        TitleBarUtils
+                .getInstance()
+                .setTitle(this, extraTitle)
+                .setTitleFinish(this);
+        tv_next.setVisibility(View.GONE);
+        webViewSettings = mWebView.getSettings();
+        webViewSettings.setJavaScriptCanOpenWindowsAutomatically(true);
+        mWebView.autoSettingWebViewDefaultByWideViewPort(this, false);
+        if (getIntent().hasExtra(EXTRA_WEBVIEW_NO_TITLE)) {//不显示标题
+            findViewById(R.id.appbar_act_webview).setVisibility(View.GONE);
+        }
+        loadUrl();
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        mWebView.setVisibility(View.GONE);
+        mWebView.removeAllViews();
+        mWebView.destroy();
+    }
+
+    private void loadUrl() {
+        Logger.d("loadUrl: " + extraUrl);
+        mWebView.setWebChromeClient(new WebChromeClient());
+        mWebView.setWebViewClient(new WebViewClient() {
+            @Override
+            public boolean shouldOverrideUrlLoading(WebView view, String url) {
+                try {
+                    view.loadUrl(url);
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                return true;
+            }
+        });
+        mWebView.loadUrl(extraUrl);
+    }
+
+    @OnClick({R.id.tv_next})
+    public void onClick(View v) {
+        int resId = v.getId();
+        switch (resId) {
+            case R.id.tv_next:
+                Jump2View.getInstance().goCommitWxView(this, null);
+                break;
+        }
+    }
+
+    @Override
+    public void onBackPressed() {
+        if(mWebView.canGoBack()){
+            mWebView.goBack();
+            return;
+        }
+        this.finish();
+    }
+
+
+}

+ 0 - 5
app/src/main/java/com/sheep/gamegroup/view/activity/ActGuideOnHook.java

@@ -1,19 +1,14 @@
 package com.sheep.gamegroup.view.activity;
 
-import android.content.Intent;
 import android.os.Bundle;
 import android.view.View;
 import android.webkit.WebChromeClient;
 import android.webkit.WebSettings;
 import android.webkit.WebView;
 import android.webkit.WebViewClient;
-import android.widget.ImageButton;
-import android.widget.TextView;
 
 import com.kfzs.android.view.widget.SafeWebView;
-import com.kfzs.duanduan.ActMain;
 import com.kfzs.duanduan.BaseCompatActivity;
-import com.kfzs.duanduan.KFZSApp;
 import com.kfzs.duanduan.bean.KFIntentKeys;
 import com.orhanobut.logger.Logger;
 import com.sheep.gamegroup.util.Jump2View;

+ 28 - 12
app/src/main/java/com/sheep/gamegroup/view/activity/CommitWxCodeAct.java

@@ -1,6 +1,7 @@
 package com.sheep.gamegroup.view.activity;
 
 import android.app.Activity;
+import android.text.InputType;
 import android.text.TextUtils;
 import android.view.View;
 import android.widget.EditText;
@@ -31,6 +32,10 @@ import butterknife.BindView;
 import butterknife.ButterKnife;
 import butterknife.OnClick;
 
+import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_DEBLOCKED;
+import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_UNVERIFIED;
+import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_VERIFIED;
+
 /**
  * Created by realicing on 2018/3/23.
  * realicing@sina.com
@@ -38,14 +43,14 @@ import butterknife.OnClick;
  */
 
 public class CommitWxCodeAct extends BaseActivity implements CommitWxCodeMakeMoneyContract.View{
-     public static final int ALTER_CODE = 0;//修改验证码
-     public static final int ALTER_INFO = 1;//修改验证码
     @BindView(R.id.tv_wx_commit)
     TextView tv_wx_commit;
     @BindView(R.id.et_wx_account)
     EditText et_wx_account;
     @BindView(R.id.et_wx_pwd)
     EditText et_wx_pwd;
+    @BindView(R.id.tv_wx_hint)
+    EditText tv_wx_hint;
     private int id;
     private int type;
 
@@ -57,29 +62,34 @@ public class CommitWxCodeAct extends BaseActivity implements CommitWxCodeMakeMon
                 String password = et_wx_pwd.getText().toString();
                 if(TextUtils.isEmpty(account)){
                     G.showToast("微信账号不能为空");
-                } else if(TextUtils.isEmpty(password)){
+                } else if(et_wx_pwd.getVisibility() == View.VISIBLE && TextUtils.isEmpty(password)){
                     switch (type){
-                        case ALTER_CODE:
+                        case STATE_ON_HOOK_VERIFIED:
                             G.showToast("微信验证码不能为空");
                             break;
-                        case ALTER_INFO:
+                        case STATE_ON_HOOK_UNVERIFIED:
                             G.showToast("微信密码不能为空");
                             break;
                     }
                 } else if(presenter != null) {
                     showProgress();
                     JSONObject jsonObject = new JSONObject();
+                    jsonObject.put("status", type);
                     switch (type){
-                        case ALTER_CODE:
+                        case STATE_ON_HOOK_VERIFIED:
+                            //用户已经验证,等待脚本验证
                             jsonObject.put("verification_code", password);
-                            presenter.putWebchat(id, jsonObject);
                             break;
-                        case ALTER_INFO:
+                        case STATE_ON_HOOK_DEBLOCKED:
+                            //用户确认已经解封,设置为等待服务器验证
+                            break;
+                        case STATE_ON_HOOK_UNVERIFIED:
+                            //因为账号异常(账号密码错误),所以修改账号,修改后将进入初始状态,即未验证
                             jsonObject.put("account", account);
                             jsonObject.put("password", password);
-                            presenter.putWebchat(id, jsonObject);
                             break;
                     }
+                    presenter.putWebchat(id, jsonObject);
                 } else {
                     if(BuildConfig.DEBUG) G.showToast("功能不正常");
                 }
@@ -104,13 +114,19 @@ public class CommitWxCodeAct extends BaseActivity implements CommitWxCodeMakeMon
         type = getIntent().getIntExtra("type", 0);
         String account = getIntent().getStringExtra("account");
         et_wx_account.setText(account);
-        String title = "提交验证码";
+        String title = "提";
         switch (type){
-            case ALTER_CODE:
+            case STATE_ON_HOOK_VERIFIED:
                 et_wx_account.setEnabled(false);
                 et_wx_pwd.setHint("请输入微信验证码");
+                et_wx_pwd.setInputType(InputType.TYPE_CLASS_NUMBER);
+                title = "提交验证码";
+                break;
+            case STATE_ON_HOOK_DEBLOCKED:
+                et_wx_pwd.setVisibility(View.GONE);
+                tv_wx_hint.setVisibility(View.VISIBLE);
                 break;
-            case ALTER_INFO:
+            case STATE_ON_HOOK_UNVERIFIED:
                 title = "修改挂机微信信息";
                 break;
         }

+ 4 - 10
app/src/main/java/com/sheep/gamegroup/view/activity/LieMakeMoneyAct.java

@@ -117,7 +117,7 @@ public class LieMakeMoneyAct extends BaseActivity implements LieMakeMoneyContrac
     public static final int STATE_ON_HOOK_NORMAL = 1;//正常(脚本验证成功)
     public static final int STATE_ON_HOOK_NEED_VC = 2;//需要用户验证码
     public static final int STATE_ON_HOOK_BLOCKED = 3;//被封
-    public static final int STATE_ON_HOOK_DEBLOCKED = 4;//用户已经解封等待脚本验证
+    public static final int STATE_ON_HOOK_DEBLOCKED = 4;//用户已经解封等待服务器验证
     public static final int STATE_ON_HOOK_ABNORMAL = 5;//账号异常
     public static final int STATE_ON_HOOK_VC_OVERTIME = 6;//验证码超时请重新上传
     public static final int STATE_ON_HOOK_VERIFIED = 7;//用户已经验证等待脚本验证
@@ -127,7 +127,6 @@ public class LieMakeMoneyAct extends BaseActivity implements LieMakeMoneyContrac
     public void getWebchatUpdataView(BaseMessage baseMessage) {
         List<WXOnHookAccount> list = baseMessage.getDatas(WXOnHookAccount.class);
         lieMakeMoneyAdp.clear();
-        boolean hasWxAccountAbnormal = false;
         for (WXOnHookAccount wxOnHookAccount : list) {
             switch (wxOnHookAccount.getStatus()) {
                 case STATE_ON_HOOK_UNVERIFIED://未验证
@@ -136,27 +135,22 @@ public class LieMakeMoneyAct extends BaseActivity implements LieMakeMoneyContrac
                 case STATE_ON_HOOK_NORMAL://正常(脚本验证成功)
                     lieMakeMoneyAdp.add(RecyleObj.make(RecyleType.NORMAL_ON_HOOK, wxOnHookAccount));
                     break;
-                case STATE_ON_HOOK_NEED_VC:
                 case STATE_ON_HOOK_BLOCKED:
+                    lieMakeMoneyAdp.add(RecyleObj.make(RecyleType.ABNORMAL_ON_HOOK, wxOnHookAccount));
+                    break;
+                case STATE_ON_HOOK_NEED_VC:
                 case STATE_ON_HOOK_DEBLOCKED:
                 case STATE_ON_HOOK_ABNORMAL:
                 case STATE_ON_HOOK_VC_OVERTIME:
                 case STATE_ON_HOOK_VERIFIED:
                 default:
                     lieMakeMoneyAdp.add(RecyleObj.make(RecyleType.ABNORMAL_ON_HOOK, wxOnHookAccount));
-                    hasWxAccountAbnormal = true;
                     break;
             }
         }
         lieMakeMoneyAdp.add(RecyleObj.make(RecyleType.PROMPT_ON_HOOK, list));
         lieMakeMoneyAdp.notifyDataSetChanged();
-        if(!hadShowDialogAccountAbnormal && hasWxAccountAbnormal){//有微信账号状态异常
-            hadShowDialogAccountAbnormal = true;
-            //弹出账号异常对话框
-            DialogAccountAbnormal.showDialog(this);
-        }
     }
-    private boolean hadShowDialogAccountAbnormal = false;
 
     @Override
     public void failGetWebchat2View(BaseMessage baseMessage) {

+ 31 - 12
app/src/main/java/com/sheep/gamegroup/view/adapter/LieMakeMoneyAdp.java

@@ -26,6 +26,7 @@ import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_AB
 import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_BLOCKED;
 import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_DEBLOCKED;
 import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_NEED_VC;
+import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_UNVERIFIED;
 import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_VC_OVERTIME;
 import static com.sheep.gamegroup.view.activity.LieMakeMoneyAct.STATE_ON_HOOK_VERIFIED;
 
@@ -103,9 +104,11 @@ public class LieMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
     }
 
     private void bindAbnormalOnHook(ViewHolder holder, WXOnHookAccount dataObjT) {
+        TextView state_name_tv = holder.getView(R.id.state_name_tv);
         TextView weixin_name_tv = holder.getView(R.id.weixin_name_tv);
         TextView wx_is_open_tv = holder.getView(R.id.wx_is_open_tv);
         TextView earnings_name_tv = holder.getView(R.id.earnings_name_tv);
+        TextView wx_how_to_open_tv = holder.getView(R.id.wx_how_to_open_tv);
         weixin_name_tv.setText(dataObjT.getAccount());
 //        if(TextUtils.isEmpty(dataObjT.getRemarks())){
 //            wx_is_open_tv.setText("账号异常,请联系客服");
@@ -114,32 +117,46 @@ public class LieMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
 //        }
         switch (dataObjT.getStatus()) {
             case STATE_ON_HOOK_NEED_VC://需要用户验证码
+                state_name_tv.setText("账号异常");
                 earnings_name_tv.setText("需要验证码");
                 wx_is_open_tv.setText("提交验证码");
+                wx_how_to_open_tv.setVisibility(View.GONE);
                 break;
             case STATE_ON_HOOK_BLOCKED://被封
+                state_name_tv.setText("账号异常");
                 earnings_name_tv.setText("账号封禁");
-                wx_is_open_tv.setText("了解解封");
+                wx_is_open_tv.setText("已解封,继续赚钱");
+                wx_how_to_open_tv.setVisibility(View.VISIBLE);
                 break;
             case STATE_ON_HOOK_DEBLOCKED://用户已经解封等待脚本验证
+                state_name_tv.setText("账号处理中");
                 earnings_name_tv.setText("等待验证");
                 wx_is_open_tv.setText("刷新看看");
+                wx_how_to_open_tv.setVisibility(View.GONE);
                 break;
             case STATE_ON_HOOK_ABNORMAL://账号异常
-                earnings_name_tv.setText("账号异常");
-                wx_is_open_tv.setText("修改账号");
+                state_name_tv.setText("账号异常");
+                earnings_name_tv.setText("账号或密码错误");
+                wx_is_open_tv.setText("修改账号或密码");
+                wx_how_to_open_tv.setVisibility(View.GONE);
                 break;
             case STATE_ON_HOOK_VC_OVERTIME://验证码超时请重新上传
+                state_name_tv.setText("账号异常");
                 earnings_name_tv.setText("验证码超时");
                 wx_is_open_tv.setText("提交验证码");
+                wx_how_to_open_tv.setVisibility(View.GONE);
                 break;
             case STATE_ON_HOOK_VERIFIED://用户已经验证等待脚本验证
+                state_name_tv.setText("账号处理中");
                 earnings_name_tv.setText("等待验证");
                 wx_is_open_tv.setText("刷新看看");
+                wx_how_to_open_tv.setVisibility(View.GONE);
                 break;
             default:
+                state_name_tv.setText("账号异常");
                 earnings_name_tv.setText("账号异常,请联系客服");
-                wx_is_open_tv.setText("修改账号");
+                wx_is_open_tv.setText("修改账号或密码");
+                wx_how_to_open_tv.setVisibility(View.GONE);
                 break;
         }
         // 各种状态用户可以进行不同的操作
@@ -148,16 +165,12 @@ public class LieMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
                 case STATE_ON_HOOK_NEED_VC://需要用户验证码
                 case STATE_ON_HOOK_VC_OVERTIME://验证码超时请重新上传
                     //修改验证码
-                    Jump2View.getInstance().goCommitWxCodeOnHookView(this.context, dataObjT, CommitWxCodeAct.ALTER_CODE);
+                    Jump2View.getInstance().goCommitWxCodeOnHookView(this.context, dataObjT, STATE_ON_HOOK_VERIFIED);
                     break;
                 case STATE_ON_HOOK_BLOCKED://被封
-                    if (context instanceof Activity){
-                        DialogAccountAbnormal.showDialog((Activity) context);
-                    }else if(BuildConfig.DEBUG) {
-                        G.showToast("context不是activity,无法弹出对话框!");
-                    }
+                    Jump2View.getInstance().goCommitWxCodeOnHookView(this.context, dataObjT, STATE_ON_HOOK_DEBLOCKED);
                     break;
-                case STATE_ON_HOOK_DEBLOCKED://用户已经解封等待脚本验证
+                case STATE_ON_HOOK_DEBLOCKED://用户已经解封等待服务器验证
                 case STATE_ON_HOOK_VERIFIED://用户已经验证等待脚本验证
                     if(this.context instanceof LieMakeMoneyAct) {
                         clear();
@@ -169,10 +182,16 @@ public class LieMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
                 case STATE_ON_HOOK_ABNORMAL://账号异常
                 default:
                     //修改用户信息
-                    Jump2View.getInstance().goCommitWxCodeOnHookView(this.context, dataObjT, CommitWxCodeAct.ALTER_INFO);
+                    Jump2View.getInstance().goCommitWxCodeOnHookView(this.context, dataObjT, STATE_ON_HOOK_UNVERIFIED);
                     break;
             }
         });
+        wx_how_to_open_tv.setOnClickListener(view -> {
+            if(context instanceof LieMakeMoneyAct)
+                DialogAccountAbnormal.showDialog((Activity) context);
+            else if(BuildConfig.DEBUG)
+                G.showToast("测试:请确保context为LieMakeMoneyAct的实例");
+        });
         //测试
         if(BuildConfig.DEBUG){
             earnings_name_tv.setOnClickListener(view -> G.showToast("备注:"+dataObjT.getRemarks()));

+ 12 - 0
app/src/main/res/layout/commit_wx_make_money.xml

@@ -57,6 +57,18 @@
                 android:paddingLeft="20dp"
                 android:textColor="@color/black_text_deep"
                 android:textSize="@dimen/text_size_3" />
+            <TextView
+                android:id="@+id/tv_wx_hint"
+                style="style_edt"
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/edt_heigh_default"
+                android:background="@null"
+                android:gravity="center_vertical"
+                android:paddingLeft="20dp"
+                android:text="确定已经解封该微信账号,并要继续赚钱吗?"
+                android:visibility="gone"
+                android:textColor="@color/black_text_deep"
+                android:textSize="@dimen/text_size_3" />
         </LinearLayout>
 
         <TextView

+ 27 - 9
app/src/main/res/layout/lie_make_money_abnormal_item.xml

@@ -33,11 +33,9 @@
         app:layout_constraintTop_toBottomOf="@+id/weixin_number_tv"
         app:layout_constraintLeft_toLeftOf="@+id/weixin_number_tv"
         android:layout_marginTop="@dimen/content_padding_10" />
-    <LinearLayout
+    <android.support.constraint.ConstraintLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:orientation="vertical"
-        android:gravity="center"
         app:layout_constraintBottom_toBottomOf="parent"
         app:layout_constraintRight_toRightOf="parent">
         <TextView
@@ -45,7 +43,10 @@
             style="@style/nomal_txt_style"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:text="账号封禁" />
+            android:text="账号封禁"
+            app:layout_constraintTop_toTopOf="parent"
+            app:layout_constraintRight_toRightOf="parent"
+            app:layout_constraintLeft_toLeftOf="parent"/>
         <TextView
             android:id="@+id/wx_is_open_tv"
             android:layout_width="wrap_content"
@@ -56,10 +57,27 @@
             android:paddingLeft="8dp"
             android:paddingRight="8dp"
             android:layout_marginTop="@dimen/content_padding_10"
-            android:text="已解封,继续赚钱"
+            android:text="已解封"
             android:textColor="@color/txt_black_cc444444"
-            android:textSize="@dimen/text_size_2"/>
-
-
-    </LinearLayout>
+            android:textSize="@dimen/text_size_2"
+            app:layout_constraintTop_toBottomOf="@+id/earnings_name_tv"
+            app:layout_constraintRight_toRightOf="parent"/>
+        <TextView
+            android:id="@+id/wx_how_to_open_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:background="@drawable/shape_btn_wx_is_open"
+            android:paddingTop="5dp"
+            android:paddingBottom="5dp"
+            android:paddingLeft="8dp"
+            android:paddingRight="8dp"
+            android:visibility="gone"
+            android:layout_marginTop="@dimen/content_padding_10"
+            android:text="了解解封"
+            android:layout_marginRight="@dimen/content_padding_10"
+            android:textColor="@color/txt_black_cc444444"
+            android:textSize="@dimen/text_size_2"
+            app:layout_constraintTop_toBottomOf="@+id/earnings_name_tv"
+            app:layout_constraintRight_toLeftOf="@+id/wx_is_open_tv"/>
+    </android.support.constraint.ConstraintLayout>
 </android.support.constraint.ConstraintLayout>