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

+ 22 - 7
app/src/main/java/com/kfzs/duanduan/fragment/FgtSmallSheep.java

@@ -37,6 +37,7 @@ import com.sheep.gamegroup.event.UserNameChange;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.MoreDataEntity;
 import com.sheep.gamegroup.model.entity.NewbieTask;
+import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
 import com.sheep.gamegroup.presenter.SmallSheepContract;
@@ -59,6 +60,7 @@ import com.sheep.jiuyan.samllsheep.utils.SpUtils;
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
+import org.xutils.ex.DbException;
 
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
@@ -232,18 +234,20 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
                 UMConfigUtils.onEvent(UMConfigUtils.Event.SHEEP_TASK_INVITE);
                 break;
             case R.id.lying_layout://躺着赚钱
-                Jump2View.getInstance().goLyingView(activity, null);
-                UMConfigUtils.onEvent(UMConfigUtils.Event.SHEEP_TASK_LIE);
+                G.showToast("该功能正在建设中");
+//                Jump2View.getInstance().goLyingView(activity, null);
+//                UMConfigUtils.onEvent(UMConfigUtils.Event.SHEEP_TASK_LIE);
                 break;
             case R.id.newbie_task://新手任务
                 if(userEntity == null){
+                    G.showToast("网络错误,请重启重试");
                     return;
                 }
-                Jump2View.getInstance().goNewbieTaskList(activity, null);
+                Jump2View.getInstance().goNewbieTaskList(activity, newbie_task_record);
                 break;
         }
     }
-
+    private NewbieTaskRecord newbie_task_record;
     @Override
     public void updateData2View(Object o) {
         if (o == null) {
@@ -273,7 +277,17 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
                 .preload(800, 800);
         if(userEntity.getNewbie_task_status() < 15){//为15时代表已经完成所有新手任务,不是新手
             newbie_task.setVisibility(View.VISIBLE);
-            boolean dontShowNewbieTaskDialog = SharedPreferences.getInstance().getBoolean("dontShowNewbieTaskDialog", false);//默认可以显示对话框
+            try {
+                newbie_task_record = MyDbManager.getInstance().dbFindNewbieTaskRecord(userEntity.getInvitation_code());
+            } catch (DbException e) {
+                e.printStackTrace();
+            }
+            if(newbie_task_record == null){
+                newbie_task_record = new NewbieTaskRecord();
+                newbie_task_record.setUser_id(userEntity.getInvitation_code());
+                MyDbManager.getInstance().saveOrUpdate(newbie_task_record);
+            }
+            boolean dontShowNewbieTaskDialog = newbie_task_record != null && newbie_task_record.isDontShowNewbieTaskDialog();//默认可以显示对话框
             if(dontShowNewbieTaskDialog){
                 return;
             }
@@ -285,9 +299,10 @@ public class FgtSmallSheep extends BaseCompatFragment implements SmallSheepContr
                                 public void onNext(BaseMessage baseMessage) {
                                     List<NewbieTask> newbieTaskList = baseMessage.getDatas(NewbieTask.class);
                                     if(BinaryUtil.isInt(userEntity.getNewbie_task_status(),0, 0)){//第一个任务未完成
-                                        DialogNewbieTaskRegistSuccess.showDialog(getActivity());
+                                        DialogNewbieTaskRegistSuccess.showDialog(getActivity(), newbie_task_record);
                                     } else if(newbieTaskList != null && !newbieTaskList.isEmpty()){
-                                        SharedPreferences.getInstance().putBoolean("dontShowNewbieTaskDialog", true);//设置为不再显示新手对话框
+                                        newbie_task_record.setDontShowNewbieTaskDialog(true);
+                                        MyDbManager.getInstance().saveOrUpdate(newbie_task_record);//设置为不再显示新手对话框
                                         List<NewbieTask> taskList = new ArrayList<>();
                                         NewbieTask task = null;
                                         for (NewbieTask newbieTask : newbieTaskList) {

+ 34 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/NewbieTaskRecord.java

@@ -0,0 +1,34 @@
+package com.sheep.gamegroup.model.entity;
+
+import org.xutils.db.annotation.Column;
+import org.xutils.db.annotation.Table;
+
+import java.io.Serializable;
+
+/**
+ * Created by realicing on 2018/4/20.
+ */
+@Table(name = "newbie_task_record")
+public class NewbieTaskRecord implements Serializable {
+
+    @Column(name = "id", isId = true, autoGen = true)
+    private String user_id;
+    @Column(name = "dont_show_newbie_task_dialog")
+    private boolean dontShowNewbieTaskDialog;
+
+    public String getUser_id() {
+        return user_id;
+    }
+
+    public void setUser_id(String user_id) {
+        this.user_id = user_id;
+    }
+
+    public boolean isDontShowNewbieTaskDialog() {
+        return dontShowNewbieTaskDialog;
+    }
+
+    public void setDontShowNewbieTaskDialog(boolean dontShowNewbieTaskDialog) {
+        this.dontShowNewbieTaskDialog = dontShowNewbieTaskDialog;
+    }
+}

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

@@ -8,6 +8,7 @@ import android.text.TextUtils;
 import com.kfzs.duanduan.ActMain;
 import com.kfzs.duanduan.bean.KFIntentKeys;
 import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
 import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.gamegroup.model.entity.WXOnHookAccount;
@@ -426,9 +427,11 @@ public class Jump2View {
     /**
      * 跳转到 一分钟快速了解小绵羊 界面
      */
-    public void goUnderstandSheep(Context context, Object o){
+    public void goUnderstandSheep(Context context, NewbieTaskRecord newbieTaskRecord){
         UMConfigUtils.onEvent(UMConfigUtils.Event.SHEEP_NEWBIE_TASK_UNDERSTAND_SHEEP);
         Intent intent = new Intent(context, ActUnderstandSheep.class);
+        if(newbieTaskRecord != null)
+            intent.putExtra(NewbieTaskRecord.class.getSimpleName(), newbieTaskRecord);
         context.startActivity(intent);
     }
 

+ 8 - 1
app/src/main/java/com/sheep/gamegroup/util/MyDbManager.java

@@ -2,6 +2,7 @@ package com.sheep.gamegroup.util;
 
 import android.os.Handler;
 
+import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.jiuyan.samllsheep.download.DownloadInfo;
 
@@ -70,6 +71,12 @@ public class MyDbManager {
         }
         return userEntity;
     }
+    /**
+     * 查找NewbieTaskRecord
+     */
+    public NewbieTaskRecord dbFindNewbieTaskRecord(String invitation_code) throws DbException{
+        return db.findById(NewbieTaskRecord.class, invitation_code);
+    }
 
     /**
      * 查找指定表
@@ -101,7 +108,7 @@ public class MyDbManager {
     /**
      *保存或更新表表
      */
-    public void saveOrUpdateUser(Object o) {
+    public void saveOrUpdate(Object o) {
         try{
             db.saveOrUpdate(o);
         }catch (Exception e){

+ 2 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/AccountAndSecurityAct.java

@@ -12,6 +12,7 @@ import android.widget.TextView;
 import com.bumptech.glide.Glide;
 import com.bumptech.glide.request.RequestOptions;
 import com.kfzs.duanduan.event.BigEvent;
+import com.kfzs.duanduan.react.SharedPreferences;
 import com.sheep.gamegroup.absBase.BaseActivity;
 import com.sheep.gamegroup.di.components.DaggerAccountAndSercuritComponent;
 import com.sheep.gamegroup.di.modules.AccountAndSercuritModule;
@@ -183,6 +184,7 @@ public class AccountAndSecurityAct extends BaseActivity implements AccountAndSec
 
     private  void  loginOut(){
         //登出
+
         UMConfigUtils.onProfileSignOff();
         UMConfigUtils.onEvent(UMConfigUtils.Event.USER_LOGOUT);
         UMShareAPI api=  UMShareAPI.get(this);

+ 13 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/ActUnderstandSheep.java

@@ -12,7 +12,9 @@ import com.alibaba.fastjson.JSONObject;
 import com.kfzs.duanduan.react.SharedPreferences;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.NewbieTask;
+import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
+import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.gamegroup.util.RxjavaCountDownTimer;
 import com.sheep.gamegroup.view.adapter.NewbieTaskAdp;
 import com.sheep.gamegroup.view.customview.RefreshLayout;
@@ -25,6 +27,7 @@ import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 
 import org.greenrobot.eventbus.EventBus;
+import org.xutils.ex.DbException;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -62,9 +65,10 @@ public class ActUnderstandSheep extends BaseActivity {
             @Override
             public void onClick(View view) {
                 activity.finish();
-                SharedPreferences.getInstance().putBoolean("dontShowNewbieTaskDialog", true);//设置为不再显示新手对话框
+                setDontShowNewbieTaskDialog();
             }
         });
+        newbie_task_record = (NewbieTaskRecord) getIntent().getSerializableExtra(NewbieTaskRecord.class.getSimpleName());
         final int count = BuildConfig.DEBUG ? 10 : 15;
         timer = RxjavaCountDownTimer.getInstance(count)
                 .setOnTickListener(new RxjavaCountDownTimer.OnTickListener() {
@@ -81,6 +85,13 @@ public class ActUnderstandSheep extends BaseActivity {
                     }
                 }).start();
     }
+    private NewbieTaskRecord newbie_task_record;
+    private void setDontShowNewbieTaskDialog() {
+        if(newbie_task_record != null){
+            newbie_task_record.setDontShowNewbieTaskDialog(true);
+            MyDbManager.getInstance().saveOrUpdate(newbie_task_record);
+        }
+    }
 
     @Override
     public void initListener() {
@@ -112,7 +123,7 @@ public class ActUnderstandSheep extends BaseActivity {
     @Override
     public void onBackPressed() {
         super.onBackPressed();
-        SharedPreferences.getInstance().putBoolean("dontShowNewbieTaskDialog", true);//设置为不再显示新手对话框
+        setDontShowNewbieTaskDialog();
     }
 
     @Override

+ 9 - 4
app/src/main/java/com/sheep/gamegroup/view/dialog/DialogNewbieTaskRegistSuccess.java

@@ -9,14 +9,16 @@ import android.widget.TextView;
 
 import com.kfzs.duanduan.react.SharedPreferences;
 import com.kfzs.duanduan.utils.dlg.ViewFindUtils;
+import com.sheep.gamegroup.model.entity.NewbieTaskRecord;
 import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.gamegroup.util.UMConfigUtils;
 import com.sheep.jiuyan.samllsheep.R;
 
 
 public class DialogNewbieTaskRegistSuccess {
 
-    public static AlertDialog showDialog(final Activity activity) {
+    public static AlertDialog showDialog(final Activity activity, final NewbieTaskRecord newbie_task_record) {
         UMConfigUtils.onEvent(UMConfigUtils.Event.SHEEP_NEWBIE_TASK_REGIST_SUCCESS_DIALOG);
         View view = View.inflate(activity, R.layout.dialog_newbie_task_1, null);
         final AlertDialog mAlertDialog = new AlertDialog.Builder(activity, R.style.MyDialogActivityTheme)
@@ -30,17 +32,19 @@ public class DialogNewbieTaskRegistSuccess {
         ViewFindUtils.find(view, R.id.dialog_sure_2).setVisibility(View.GONE);
 
         final TextView dialog_sure_1 = ViewFindUtils.find(view, R.id.dialog_sure_1);
+        dialog_sure_1.setText("了解小绵羊,领取更多奖励");
         dialog_sure_1.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
-                Jump2View.getInstance().goUnderstandSheep(activity, null);
+                Jump2View.getInstance().goUnderstandSheep(activity, newbie_task_record);
                 mAlertDialog.dismiss();
             }
         });
         mAlertDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
             @Override
             public void onCancel(DialogInterface dialogInterface) {
-                SharedPreferences.getInstance().putBoolean("dontShowNewbieTaskDialog", true);//设置为不再显示新手对话框
+                newbie_task_record.setDontShowNewbieTaskDialog(true);
+                MyDbManager.getInstance().saveOrUpdate(newbie_task_record);//设置为不再显示新手对话框
             }
         });
         final View dialog_close = ViewFindUtils.find(view, R.id.dialog_close);
@@ -48,7 +52,8 @@ public class DialogNewbieTaskRegistSuccess {
             @Override
             public void onClick(View v) {
                 mAlertDialog.dismiss();
-                SharedPreferences.getInstance().putBoolean("dontShowNewbieTaskDialog", true);//设置为不再显示新手对话框
+                newbie_task_record.setDontShowNewbieTaskDialog(true);
+                MyDbManager.getInstance().saveOrUpdate(newbie_task_record);//设置为不再显示新手对话框
             }
         });
         try {

+ 2 - 1
app/src/main/res/layout/homepage_act_layout.xml

@@ -119,7 +119,8 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_alignParentEnd="true"
-                    android:layout_alignParentBottom="true">
+                    android:layout_alignParentBottom="true"
+                    android:visibility="gone">
                     <TextView
                         android:id="@+id/newbie_task_tip_tv"
                         android:layout_width="wrap_content"

+ 1 - 1
datashare/build.gradle

@@ -12,7 +12,7 @@ android {
     }
 
     greendao {
-        schemaVersion 6
+        schemaVersion 7
         targetGenDir 'src/main/java'
     }
     buildTypes {

+ 2 - 2
datashare/src/main/java/com/kfzs/duanduan/data/graph/provider/channel/DaoMaster.java

@@ -18,10 +18,10 @@ import com.kfzs.duanduan.datashare.provider.download.DownLoadInfoDao;
 
 // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.
 /**
- * Master of DAO (schema version 6): knows all DAOs.
+ * Master of DAO (schema version 7): knows all DAOs.
  */
 public class DaoMaster extends AbstractDaoMaster {
-    public static final int SCHEMA_VERSION = 6;
+    public static final int SCHEMA_VERSION = 7;
 
     /** Creates underlying database table using DAOs. */
     public static void createAllTables(Database db, boolean ifNotExists) {