liujiangyao пре 8 година
родитељ
комит
59ffb17929
20 измењених фајлова са 192 додато и 12 уклоњено
  1. 1 0
      app/src/main/java/com/kfzs/duanduan/event/EventTypes.java
  2. 12 0
      app/src/main/java/com/kfzs/duanduan/fragment/FgtSmallSheep.java
  3. 5 0
      app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java
  4. 39 0
      app/src/main/java/com/sheep/gamegroup/model/util/RxBus.java
  5. 2 0
      app/src/main/java/com/sheep/gamegroup/presenter/HomePagePresenter.java
  6. 2 0
      app/src/main/java/com/sheep/gamegroup/presenter/TaskDialogPresenter.java
  7. 6 2
      app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyContract.java
  8. 30 0
      app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyPresenter.java
  9. 1 0
      app/src/main/java/com/sheep/gamegroup/util/Jump2View.java
  10. 1 2
      app/src/main/java/com/sheep/gamegroup/view/activity/BindDataAct.java
  11. 28 0
      app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java
  12. 12 0
      app/src/main/java/com/sheep/gamegroup/view/activity/TryMakeMoneyact.java
  13. 9 2
      app/src/main/java/com/sheep/gamegroup/view/activity/WithdrawalAct.java
  14. 26 4
      app/src/main/java/com/sheep/gamegroup/view/activity/WithdrawalResultAct.java
  15. 16 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java
  16. BIN
      app/src/main/res/drawable-hdpi/icon.png
  17. BIN
      app/src/main/res/drawable-mdpi/icon.png
  18. BIN
      app/src/main/res/drawable/icon.png
  19. 1 1
      app/src/main/res/layout/try_makemoney_item.xml
  20. 1 1
      app/src/main/res/layout/withdrawal_success_layotu.xml

+ 1 - 0
app/src/main/java/com/kfzs/duanduan/event/EventTypes.java

@@ -18,4 +18,5 @@ public enum EventTypes {
 
     SKIP_PAGE_COUNT,//首页的第一个Tab栏的viewpager跳转到第几个pager,others为第几页\
     GO_FiRST , //任务功能  登录后 点击返回键 只能返回第一个界面
+    ONFRESH_FGT_FAMLLSHEEP , //刷新fgtSmallSheep数据
 }

+ 12 - 0
app/src/main/java/com/kfzs/duanduan/fragment/FgtSmallSheep.java

@@ -14,6 +14,7 @@ import android.widget.TextView;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.kfzs.duanduan.BaseCompatFragment;
+import com.kfzs.duanduan.event.BigEvent;
 import com.sheep.gamegroup.di.components.DaggerSmallSheepComponent;
 import com.sheep.gamegroup.di.modules.SmallSheepModule;
 import com.sheep.gamegroup.model.entity.BaseMessage;
@@ -27,6 +28,8 @@ import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
 
+import org.greenrobot.eventbus.Subscribe;
+
 import javax.inject.Inject;
 
 import butterknife.BindView;
@@ -154,4 +157,13 @@ public class FgtSmallSheep extends BaseCompatFragment  implements SmallSheepCont
         G.showToast("网络错误");
 
     }
+
+    @Subscribe
+    public void onEventMainThread(BigEvent event){
+        switch (event.getEventTypes()){
+            case ONFRESH_FGT_FAMLLSHEEP:
+                initData();
+                break;
+        }
+    }
 }

+ 5 - 0
app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java

@@ -161,5 +161,10 @@ public interface ApiService {
     @GET(V1+"/app/user/friend_count_and_award")
     Observable<BaseMessage> FriendCountAndAward();
 
+    /**
+     * 放弃任务
+     */
+    @PUT(V1+"app/accepted_task/give_up/")
+    Observable<BaseMessage> giveUpTask(@Query("id") int id);
 
 }

+ 39 - 0
app/src/main/java/com/sheep/gamegroup/model/util/RxBus.java

@@ -0,0 +1,39 @@
+package com.sheep.gamegroup.model.util;
+
+import rx.Observable;
+import rx.subjects.PublishSubject;
+import rx.subjects.SerializedSubject;
+import rx.subjects.Subject;
+
+/**
+ * 广播发送
+ * Created by ljy on 2018/3/23.
+ */
+
+public class RxBus {
+    private static volatile RxBus rxBus;
+
+    private final Subject<Object,Object> bus;
+
+    public RxBus() {
+        bus = new SerializedSubject<>(PublishSubject.create());
+    }
+
+    public static RxBus getDefault(){
+        if (rxBus == null){
+            synchronized (RxBus.class){
+                if (rxBus == null){
+                    rxBus = new RxBus();
+                }
+            }
+        }
+        return rxBus;
+    }
+
+    /**
+     * 发送一个事件
+     */
+    public void post(Object o){
+        bus.onNext(o);
+    }
+}

+ 2 - 0
app/src/main/java/com/sheep/gamegroup/presenter/HomePagePresenter.java

@@ -10,6 +10,7 @@ import com.sheep.jiuyan.samllsheep.utils.SpUtils;
 import javax.inject.Inject;
 
 import rx.Observer;
+import rx.android.schedulers.AndroidSchedulers;
 import rx.schedulers.Schedulers;
 
 /**
@@ -33,6 +34,7 @@ public class HomePagePresenter implements HomePageContract.Persenter {
         Log.e("token---user",token+"");
         apiService.getInfo()
                 .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new Observer<BaseMessage>() {
                     @Override
                     public void onCompleted() {

+ 2 - 0
app/src/main/java/com/sheep/gamegroup/presenter/TaskDialogPresenter.java

@@ -11,6 +11,7 @@ import com.alibaba.fastjson.JSONObject;
 
 import javax.inject.Inject;
 
+import rx.android.schedulers.AndroidSchedulers;
 import rx.schedulers.Schedulers;
 
 /**
@@ -31,6 +32,7 @@ public class TaskDialogPresenter implements TaskDialogContract.Presenter {
     public void acceptedTask(JSONObject o) {
         apiService.acceptedTask(o)
                 .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new MySubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onError(ExceptionHandle.ResponeThrowable throwable) {

+ 6 - 2
app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyContract.java

@@ -13,13 +13,17 @@ public interface TryMakeMoneyContract {
         void acceptedTask(RequestParameEty o);//获取已接受的任务
         void returnTask(RequestParameEty o);//获取我正在运行的任务
         void releaseTask(RequestParameEty o);//获取正在运行的任务
+
+        void giveUpTask(int id);//放弃任务接口
     }
     interface View{
 
         void updateData2View(Object o);
         void failData2View(Object o);
-        void acceptedTaskUpdataView(Object o);
-        void failAcceptedTask2View(Object o);
+        void acceptedTaskUpdataView(Object o);//
+        void failAcceptedTask2View(Object o);//
+        void giveUpTaskSuccesView(Object o);//
+        void giveUpTaskFailView(Object o);//
 
         void returnTaskTaskUpdataView(Object o);
         void failReturnTask2View(Object o);

+ 30 - 0
app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyPresenter.java

@@ -1,5 +1,6 @@
 package com.sheep.gamegroup.presenter;
 
+import com.alibaba.fastjson.JSONObject;
 import com.sheep.gamegroup.model.api.ApiService;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.RequestParameEty;
@@ -10,6 +11,8 @@ import com.sheep.jiuyan.samllsheep.SheepApp;
 import javax.inject.Inject;
 
 import rx.Observer;
+import rx.Scheduler;
+import rx.android.schedulers.AndroidSchedulers;
 import rx.schedulers.Schedulers;
 
 /**
@@ -87,4 +90,31 @@ public class TryMakeMoneyPresenter implements TryMakeMoneyContract.Presenter {
                     }
                 });
     }
+
+    @Override
+    public void giveUpTask(int id) {
+        apiService.giveUpTask(id)
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new MySubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onError(ExceptionHandle.ResponeThrowable responeThrowable) {
+                        int statusCode = responeThrowable.code;
+                        switch (statusCode){
+                            case ExceptionHandle.ERROR.BAD_REQUEST_ERROR://400
+                            default:
+                                try {
+                                    view.giveUpTaskFailView(JSONObject.parseObject(responeThrowable.message, BaseMessage.class));
+                                }catch (Exception e){
+                                    e.printStackTrace();
+                                }
+                                break;
+                        }
+                    }
+
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        view.giveUpTaskSuccesView(baseMessage);
+                    }
+                });
+    }
 }

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

@@ -128,6 +128,7 @@ public class Jump2View {
      */
     public void goWithdrawalResultview(Context context, Object o){
         Intent intent = new Intent(context, WithdrawalResultAct.class);
+        intent.putExtra(" amount", String.valueOf(o));
         context.startActivity(intent);
     }
 

+ 1 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/BindDataAct.java

@@ -63,8 +63,7 @@ public class BindDataAct extends BaseActivity implements BindDataContract.View {
     public void upView(Object o) {
         hideProgress();
         G.showToast("ok");
-        Toast.makeText(activity, "提现成功",Toast.LENGTH_SHORT);
-        ActivityManager.getInstance().endActivity(WithdrawalAct.class);
+        Toast.makeText(activity, "绑定成功",Toast.LENGTH_SHORT);
         finish();
 
     }

+ 28 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java

@@ -3,6 +3,8 @@ package com.sheep.gamegroup.view.activity;
 import android.app.Activity;
 import android.os.Build;
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
 import android.preference.DialogPreference;
 import android.support.annotation.Nullable;
 import android.support.annotation.RequiresApi;
@@ -20,6 +22,7 @@ import com.bumptech.glide.Glide;
 import com.kfzs.duanduan.utils.dlg.DeviceUtils;
 import com.sheep.gamegroup.di.components.DaggerTaskDialogComponent;
 import com.sheep.gamegroup.di.modules.TaskDialogModule;
+import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.presenter.TaskDialogContract;
 import com.sheep.gamegroup.presenter.TaskDialogPresenter;
@@ -80,6 +83,19 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
     @Inject
     TaskDialogPresenter preference;
 
+    Handler handler = new Handler(){
+        @Override
+        public void handleMessage(Message msg) {
+            super.handleMessage(msg);
+            switch (msg.what){
+                case 0:
+                    task_entity.setRunTask(1);
+                    setBtnState();
+                    break;
+            }
+        }
+    };
+
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -266,8 +282,20 @@ public class DialogActivity extends Activity implements TaskDialogContract.View
         start_task_tv.setText(buttonStr);
     }
 
+    /**
+     * 接收任务 成功
+     * @param o
+     */
     @Override
     public void startTaskUpdataView(Object o) {
+        try{
+            BaseMessage baseMessage = (BaseMessage) o;
+            if(baseMessage.getCode() == 200){
+                handler.sendEmptyMessage(0);
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
 
     }
 

+ 12 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/TryMakeMoneyact.java

@@ -152,6 +152,17 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
     }
 
     @Override
+    public void giveUpTaskSuccesView(Object o) {
+        G.showToast("取消成功失败");
+        initData();
+    }
+
+    @Override
+    public void giveUpTaskFailView(Object o) {
+        G.showToast("访问失败");
+    }
+
+    @Override
     public void returnTaskTaskUpdataView(Object o) {
 
         hideProgress();
@@ -159,6 +170,7 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
             BaseMessage baseMessage = (BaseMessage) o;
             TaskAcceptedEty taskAcceptedEty = JSONObject.parseObject(JSONObject.toJSONString(baseMessage.getData()), TaskAcceptedEty.class);
             tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.RUN_TASK, taskAcceptedEty));
+            tryMakeMoneyAdp.addPresenter(presenter);
             mhandler.sendEmptyMessage(0);
         }catch (Exception e){
             e.printStackTrace();

+ 9 - 2
app/src/main/java/com/sheep/gamegroup/view/activity/WithdrawalAct.java

@@ -9,6 +9,8 @@ import android.widget.GridView;
 import android.widget.TextView;
 
 import com.alibaba.fastjson.JSONObject;
+import com.kfzs.duanduan.event.BigEvent;
+import com.kfzs.duanduan.event.EventTypes;
 import com.sheep.gamegroup.di.components.DaggerWithdrawalComponent;
 import com.sheep.gamegroup.di.modules.WithdrawalModule;
 import com.sheep.gamegroup.model.entity.BaseMessage;
@@ -23,6 +25,8 @@ import com.sheep.jiuyan.samllsheep.base.BaseActivity;
 import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 
+import org.greenrobot.eventbus.EventBus;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -52,6 +56,7 @@ public class WithdrawalAct extends BaseActivity implements WithdrawalContract.Vi
     private WithdrawalAdapter adapter;
     ArrayList<Object> listData = new ArrayList<>();
     private int select;
+    String amount;
 
     @Override
     protected int getLayoutId() {
@@ -116,7 +121,7 @@ public class WithdrawalAct extends BaseActivity implements WithdrawalContract.Vi
 
     private void doWithdrawal() {
 //        String price1 = ((GridViewEntity)withdrawalGreidview.getSelectedItem()).getValue();
-        String amount = ((GridViewEntity)listData.get(select)).getValue();
+        amount = ((GridViewEntity)listData.get(select)).getValue();
         if(TextUtils.isEmpty(amount)){
             G.showToast("请选择金额");
             return;
@@ -173,6 +178,8 @@ public class WithdrawalAct extends BaseActivity implements WithdrawalContract.Vi
     @Override
     public void updateView(Object o) {
         hideProgress();
-        Jump2View.getInstance().goWithdrawalResultview(activity, o);
+        EventBus.getDefault().post(new BigEvent().setEventTypes(EventTypes.ONFRESH_FGT_FAMLLSHEEP));
+//        BaseMessage baseMessage = (BaseMessage) o;
+        Jump2View.getInstance().goWithdrawalResultview(activity, Float.valueOf(amount));
     }
 }

+ 26 - 4
app/src/main/java/com/sheep/gamegroup/view/activity/WithdrawalResultAct.java

@@ -2,6 +2,7 @@ package com.sheep.gamegroup.view.activity;
 
 import android.app.Activity;
 import android.os.Bundle;
+import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
 
@@ -9,9 +10,11 @@ import com.sheep.gamegroup.di.components.DaggerWithdrawalResultComponent;
 import com.sheep.gamegroup.di.modules.WithdrawalResultModule;
 import com.sheep.gamegroup.presenter.WithdrawalResultContract;
 import com.sheep.gamegroup.presenter.WithdrawalResultPresenter;
+import com.sheep.gamegroup.util.ActivityManager;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.base.BaseActivity;
+import com.sheep.jiuyan.samllsheep.utils.TitleBarUtils;
 
 import javax.inject.Inject;
 
@@ -33,6 +36,10 @@ public class WithdrawalResultAct extends BaseActivity implements WithdrawalResul
 
     @Inject
     WithdrawalResultPresenter presenter;
+    @BindView(R.id.withdrawal_success_money_tv)
+    TextView withdrawalSuccessMoneyTv;
+
+    private String amount;
 
     @Override
     protected int getLayoutId() {
@@ -42,7 +49,10 @@ public class WithdrawalResultAct extends BaseActivity implements WithdrawalResul
     @Override
     public void initView() {
         activity = this;
-
+        amount = getIntent().getStringExtra("amount");
+        TitleBarUtils.getInstance()
+                .setTitle(activity, "提现成功")
+                .setTitleFinish(activity);
         DaggerWithdrawalResultComponent.builder()
                 .netComponent(SheepApp.get(this).getNetComponent())
                 .withdrawalResultModule(new WithdrawalResultModule(this))
@@ -57,7 +67,7 @@ public class WithdrawalResultAct extends BaseActivity implements WithdrawalResul
 
     @Override
     public void initData() {
-
+        withdrawalSuccessMoneyTv.setText("+"+amount+"元");
     }
 
     @Override
@@ -67,7 +77,19 @@ public class WithdrawalResultAct extends BaseActivity implements WithdrawalResul
         ButterKnife.bind(this);
     }
 
-    @OnClick(R.id.withdrawal_success_sure_tv)
-    public void onViewClicked() {
+    @OnClick({R.id.withdrawal_success_sure_tv})
+    public void onViewClicked(View view) {
+        switch (view.getId()) {
+            case R.id.withdrawal_success_sure_tv:
+                ActivityManager.getInstance().endActivity(WithdrawalAct.class);
+                finish();
+                break;
+        }
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        ActivityManager.getInstance().endActivity(WithdrawalAct.class);
     }
 }

+ 16 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java

@@ -12,11 +12,13 @@ import android.widget.ImageView;
 import android.widget.TextView;
 
 import com.bumptech.glide.Glide;
+import com.sheep.gamegroup.model.api.ApiService;
 import com.sheep.gamegroup.model.entity.RecyleObj;
 import com.sheep.gamegroup.model.entity.RecyleType;
 import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
 import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.model.entity.TaskReleaseEty;
+import com.sheep.gamegroup.presenter.TryMakeMoneyPresenter;
 import com.sheep.gamegroup.util.Jump2View;
 import com.sheep.gamegroup.util.ViewHolder;
 import com.sheep.jiuyan.samllsheep.R;
@@ -30,6 +32,7 @@ import java.util.List;
 
 public class TryMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
     private final static int TAG_ID_TEMP = R.id.view_tag_1;
+    TryMakeMoneyPresenter presenter;
 
     public TryMakeMoneyAdp(Context context) {
         super(context);
@@ -68,6 +71,12 @@ public class TryMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
     public int getItemViewType(int position) {
         return getListDatas().get(position).getRecyleType().ordinal();
     }
+    /**
+     * 传入presenter
+     */
+    public void addPresenter(TryMakeMoneyPresenter presenter){
+        this.presenter = presenter;
+    }
 
     /**
      * 获取已发布的
@@ -138,6 +147,7 @@ public class TryMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
         TextView item_anem_tv = holder.getView(R.id.item_anem_tv);
         TextView item_num_tv = holder.getView(R.id.item_num_tv);
         TextView item_money = holder.getView(R.id.item_money);
+        TextView cancel_task_tv = holder.getView(R.id.cancel_task_tv);
         Glide.with(context)
                 .load(acceptedEty.getRelease_task().getTask().getIcon()+"")
                 .placeholder(R.mipmap.ic_launcher)
@@ -146,6 +156,12 @@ public class TryMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
         item_anem_tv.setText(acceptedEty.getRelease_task().getTask().getTask_name()+"");
         item_num_tv.setText("剩余"+ acceptedEty.getRelease_task().getLast_num()+"份");
         item_money.setText("+"+ acceptedEty.getRelease_task().getBonus() +"元");
+        cancel_task_tv.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                presenter.giveUpTask(acceptedEty.getRelease_task().getId());
+            }
+        });
         holder.itemView.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {

BIN
app/src/main/res/drawable-hdpi/icon.png


BIN
app/src/main/res/drawable-mdpi/icon.png


BIN
app/src/main/res/drawable/icon.png


+ 1 - 1
app/src/main/res/layout/try_makemoney_item.xml

@@ -31,7 +31,7 @@
             android:minWidth="@dimen/view_size_80"
             android:textColor="@color/black"
             android:textSize="15dp"
-            android:layout_gravity=""
+            android:gravity="center"
             android:layout_marginBottom="13dp"
             android:background="@drawable/sp_bg_gradient_rectangle_blue"/>
     </LinearLayout>

+ 1 - 1
app/src/main/res/layout/withdrawal_success_layotu.xml

@@ -19,7 +19,7 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_gravity="center_horizontal"
-        android:text="+1.5元"
+        android:text=""
         android:textSize="@dimen/text_size_32"
         android:textColor="@color/red_fd2d54"
         android:layout_marginTop="@dimen/content_padding_20"/>