Ver código fonte

提现列表,任务列表、dialog 修改

liujiangyao 8 anos atrás
pai
commit
0523cb7fbf
51 arquivos alterados com 1833 adições e 104 exclusões
  1. 0 2
      .idea/modules.xml
  2. 4 0
      app/src/main/AndroidManifest.xml
  3. 16 0
      app/src/main/java/com/sheep/gamegroup/di/components/TaskListComponent.java
  4. 16 0
      app/src/main/java/com/sheep/gamegroup/di/components/WithdrawalListComponent.java
  5. 22 0
      app/src/main/java/com/sheep/gamegroup/di/modules/TaskListModule.java
  6. 22 0
      app/src/main/java/com/sheep/gamegroup/di/modules/WishdrawalListModule.java
  7. 5 0
      app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java
  8. 72 0
      app/src/main/java/com/sheep/gamegroup/model/entity/RecyleObj.java
  9. 14 0
      app/src/main/java/com/sheep/gamegroup/model/entity/RecyleType.java
  10. 3 1
      app/src/main/java/com/sheep/gamegroup/model/entity/TaskAcceptedEty.java
  11. 12 1
      app/src/main/java/com/sheep/gamegroup/model/entity/TaskEty.java
  12. 3 1
      app/src/main/java/com/sheep/gamegroup/model/entity/TaskReleaseEty.java
  13. 143 0
      app/src/main/java/com/sheep/gamegroup/model/entity/WithdrawalEty.java
  14. 2 1
      app/src/main/java/com/sheep/gamegroup/model/util/AddPuplicParameIntercept.java
  15. 17 0
      app/src/main/java/com/sheep/gamegroup/presenter/TaskListContract.java
  16. 25 0
      app/src/main/java/com/sheep/gamegroup/presenter/TaskListPresenter.java
  17. 2 0
      app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyContract.java
  18. 2 2
      app/src/main/java/com/sheep/gamegroup/presenter/TryMakeMoneyPresenter.java
  19. 17 0
      app/src/main/java/com/sheep/gamegroup/presenter/WithdrawalListContract.java
  20. 56 0
      app/src/main/java/com/sheep/gamegroup/presenter/WithdrawalListPresenter.java
  21. 0 18
      app/src/main/java/com/sheep/gamegroup/presenter/WithdrawalPresenter.java
  22. 43 0
      app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java
  23. 37 1
      app/src/main/java/com/sheep/gamegroup/util/Jump2View.java
  24. 7 0
      app/src/main/java/com/sheep/gamegroup/util/TimeUtil.java
  25. 241 0
      app/src/main/java/com/sheep/gamegroup/util/ViewHolder.java
  26. 110 0
      app/src/main/java/com/sheep/gamegroup/view/activity/DialogActivity.java
  27. 2 2
      app/src/main/java/com/sheep/gamegroup/view/activity/PersonalCenterAct.java
  28. 1 1
      app/src/main/java/com/sheep/gamegroup/view/activity/PhoneAct.java
  29. 96 0
      app/src/main/java/com/sheep/gamegroup/view/activity/TaskListAct.java
  30. 75 1
      app/src/main/java/com/sheep/gamegroup/view/activity/TryMakeMoneyact.java
  31. 97 0
      app/src/main/java/com/sheep/gamegroup/view/activity/WithdrawalListAct.java
  32. 77 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/AdbCommonRecycler.java
  33. 79 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/TaskListItemAdp.java
  34. 152 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java
  35. 76 0
      app/src/main/java/com/sheep/gamegroup/view/adapter/WithdrawalListAdp.java
  36. 7 0
      app/src/main/java/com/sheep/gamegroup/view/customview/SProgress.java
  37. 6 9
      app/src/main/res/layout/dowanload_item_dialog.xml
  38. 48 51
      app/src/main/res/layout/down_item.xml
  39. 114 0
      app/src/main/res/layout/download_item_dialog.xml
  40. 5 4
      app/src/main/res/layout/homepage_act_layout.xml
  41. 55 0
      app/src/main/res/layout/task_list_item.xml
  42. 3 2
      app/src/main/res/layout/try_makemoney_act_layout.xml
  43. 6 6
      app/src/main/res/layout/try_makemoney_item.xml
  44. 25 0
      app/src/main/res/layout/try_mkmy_release_task_list.xml
  45. 1 1
      app/src/main/res/layout/withdrawal_item.xml
  46. BIN
      app/src/main/res/mipmap-xhdpi/try_dialog_bg.png
  47. BIN
      app/src/main/res/mipmap-xhdpi/try_dialog_x.png
  48. BIN
      app/src/main/res/mipmap-xxhdpi/try_dialog_bg.png
  49. BIN
      app/src/main/res/mipmap-xxhdpi/try_dialog_x.png
  50. 3 0
      app/src/main/res/values/common.xml
  51. 14 0
      app/src/main/res/values/gamegroup_styles.xml

+ 0 - 2
.idea/modules.xml

@@ -4,10 +4,8 @@
     <modules>
       <module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
       <module fileurl="file://$PROJECT_DIR$/datashare/datashare.iml" filepath="$PROJECT_DIR$/datashare/datashare.iml" />
-      <module fileurl="file://$PROJECT_DIR$/datashare/datashare.iml" filepath="$PROJECT_DIR$/datashare/datashare.iml" />
       <module fileurl="file://$PROJECT_DIR$/small_sheep_android.iml" filepath="$PROJECT_DIR$/small_sheep_android.iml" />
       <module fileurl="file://$PROJECT_DIR$/view/view.iml" filepath="$PROJECT_DIR$/view/view.iml" />
-      <module fileurl="file://$PROJECT_DIR$/view/view.iml" filepath="$PROJECT_DIR$/view/view.iml" />
     </modules>
   </component>
 </project>

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

@@ -206,6 +206,10 @@
         <activity android:name="com.sheep.gamegroup.view.activity.TryMakeMoneyact"/>
         <activity android:name="com.sheep.gamegroup.view.activity.HomePageAct"/>
         <activity android:name="com.sheep.gamegroup.view.activity.BindDataAct"/>
+        <activity android:name="com.sheep.gamegroup.view.activity.DialogActivity"
+            android:theme="@style/MyDialogActivityTheme"/>
+        <activity android:name="com.sheep.gamegroup.view.activity.TaskListAct"/>
+        <activity android:name="com.sheep.gamegroup.view.activity.WithdrawalListAct"/>
 
         <service android:name=".service.TopService"
                  android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"

+ 16 - 0
app/src/main/java/com/sheep/gamegroup/di/components/TaskListComponent.java

@@ -0,0 +1,16 @@
+package com.sheep.gamegroup.di.components;
+
+import com.sheep.gamegroup.di.modules.TaskListModule;
+import com.sheep.gamegroup.di.scopes.UserScope;
+import com.sheep.gamegroup.view.activity.TaskListAct;
+
+import dagger.Component;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+@UserScope
+@Component(modules = TaskListModule.class, dependencies = NetComponent.class)
+public interface TaskListComponent {
+    void inject(TaskListAct taskListAct);
+}

+ 16 - 0
app/src/main/java/com/sheep/gamegroup/di/components/WithdrawalListComponent.java

@@ -0,0 +1,16 @@
+package com.sheep.gamegroup.di.components;
+
+import com.sheep.gamegroup.di.modules.WishdrawalListModule;
+import com.sheep.gamegroup.di.scopes.UserScope;
+import com.sheep.gamegroup.view.activity.WithdrawalListAct;
+
+import dagger.Component;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+@UserScope
+@Component(modules = WishdrawalListModule.class, dependencies = NetComponent.class)
+public interface WithdrawalListComponent {
+    void inject(WithdrawalListAct withdrawalListAct);
+}

+ 22 - 0
app/src/main/java/com/sheep/gamegroup/di/modules/TaskListModule.java

@@ -0,0 +1,22 @@
+package com.sheep.gamegroup.di.modules;
+
+import com.sheep.gamegroup.presenter.TaskListContract;
+
+import dagger.Module;
+import dagger.Provides;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+@Module
+public class TaskListModule {
+    private TaskListContract.View view;
+
+    public TaskListModule(TaskListContract.View view) {
+        this.view = view;
+    }
+    @Provides
+    public TaskListContract.View provideView(){
+        return view;
+    }
+}

+ 22 - 0
app/src/main/java/com/sheep/gamegroup/di/modules/WishdrawalListModule.java

@@ -0,0 +1,22 @@
+package com.sheep.gamegroup.di.modules;
+
+import com.sheep.gamegroup.presenter.WithdrawalListContract;
+
+import dagger.Module;
+import dagger.Provides;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+@Module
+public class WishdrawalListModule {
+    private WithdrawalListContract.View view;
+
+    public WishdrawalListModule(WithdrawalListContract.View view) {
+        this.view = view;
+    }
+    @Provides
+    public WithdrawalListContract.View provideView(){
+        return view;
+    }
+}

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

@@ -122,6 +122,11 @@ public interface ApiService {
      */
     @GET(V1+"/app/auth/login_by_we_chat")
     Observable<BaseMessage> askMakeMoney(@Body String jsonObject);
+    /**
+     * 用户提现记录
+     */
+    @GET(V1 + "app/withdraw/")
+    Observable<BaseMessage> goWithdrawal(@Query("page") int page, @Query("per_page") int per_page, @Query("start_time ") String start_time , @Query("end_time ") String end_time );
 
 
 }

+ 72 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/RecyleObj.java

@@ -0,0 +1,72 @@
+package com.sheep.gamegroup.model.entity;
+
+import java.io.Serializable;
+
+/**
+ * Created by ljy on 2018/3/20.
+ */
+
+public class RecyleObj  implements Serializable {
+
+    private RecyleType recyleType;
+
+    private int index;
+
+    private Object dataObj;
+
+    public int getIndex() {
+        return index;
+    }
+
+    public void setIndex(int index) {
+        this.index = index;
+    }
+
+    public Object getDataObj() {
+        return dataObj;
+    }
+
+    public <T> T getDataObjT() {
+        return (T) dataObj;
+    }
+
+    public <T> T getDataObjT(T classz) {
+        return (T) dataObj;
+    }
+
+    public void setDataObj(Object dataObj) {
+        this.dataObj = dataObj;
+    }
+
+    public RecyleType getRecyleType() {
+        return recyleType;
+    }
+
+    public void setRecyleType(RecyleType recyleType) {
+        this.recyleType = recyleType;
+    }
+
+
+    /**
+     * 生成指定RecyleView的类
+     *
+     * @param recyleType
+     * @param dataObj
+     * @return
+     */
+    public static RecyleObj make(RecyleType recyleType, Object dataObj) {
+        RecyleObj recyleObj = new RecyleObj();
+        recyleObj.setRecyleType(recyleType);
+        recyleObj.setDataObj(dataObj);
+        return recyleObj;
+    }
+
+    public static RecyleObj make(RecyleType recyleType, Object dataObj, int position) {
+        RecyleObj recyleObj = new RecyleObj();
+        recyleObj.setRecyleType(recyleType);
+        recyleObj.setDataObj(dataObj);
+        recyleObj.setIndex(position);
+        return recyleObj;
+    }
+
+}

+ 14 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/RecyleType.java

@@ -0,0 +1,14 @@
+package com.sheep.gamegroup.model.entity;
+
+import java.io.Serializable;
+
+/**
+ * Created by ljy on 2018/3/20.
+ */
+
+public enum RecyleType  implements Serializable {
+
+    NONE,//无用占位
+    RELEASE_TASK,//获取已发布的
+    RUN_TASK,//获取我正在运行的任务
+}

+ 3 - 1
app/src/main/java/com/sheep/gamegroup/model/entity/TaskAcceptedEty.java

@@ -1,11 +1,13 @@
 package com.sheep.gamegroup.model.entity;
 
+import java.io.Serializable;
+
 /**
  * 已接受任务
  * Created by ljy on 2018/3/20.
  */
 
-public class TaskAcceptedEty {
+public class TaskAcceptedEty implements Serializable{
     private String create_time;// 0,
     private String device_id;// "string",
     private String id;// 0,

+ 12 - 1
app/src/main/java/com/sheep/gamegroup/model/entity/TaskEty.java

@@ -1,11 +1,13 @@
 package com.sheep.gamegroup.model.entity;
 
+import java.io.Serializable;
+
 /**
  * 任务
  * Created by ljy on 2018/3/20.
  */
 
-public class TaskEty {
+public class TaskEty implements Serializable{
     private String boot_address;//private String string",
     private String create_time;// 0,
     private String download_link;//private String string",
@@ -17,6 +19,15 @@ public class TaskEty {
     private String task_name;//private String string",
     private String task_type;// 0,
     private String update_time;// 0
+    private String icon;
+
+    public String getIcon() {
+        return icon;
+    }
+
+    public void setIcon(String icon) {
+        this.icon = icon;
+    }
 
     public String getBoot_address() {
         return boot_address;

+ 3 - 1
app/src/main/java/com/sheep/gamegroup/model/entity/TaskReleaseEty.java

@@ -1,11 +1,13 @@
 package com.sheep.gamegroup.model.entity;
 
+import java.io.Serializable;
+
 /**
  * 获取已经发布任务
  * Created by ljy on 2018/3/20.
  */
 
-public class TaskReleaseEty {
+public class TaskReleaseEty implements Serializable{
     private String bonus;// 0,
     private String create_time;// 0,
     private String deadline;// 0,

+ 143 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/WithdrawalEty.java

@@ -0,0 +1,143 @@
+package com.sheep.gamegroup.model.entity;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public class WithdrawalEty {
+    private String amount;// 0,
+    private String create_time;// 0,
+    private String desc;// "string",
+    private String id;// 0,
+    private String order_no;// "string",
+    private String pay_status;// 0,
+    private String risk_status;// 0,
+    private String status;// 0,
+    private String surplus_amount;// 0,
+    private String total_amount;// 0,
+    private String type;// 0,
+    private String update_time;// 0,
+    private String user_id;// 0,
+    private String wx_resp_content;// "string"
+    private UserEntity user;
+
+    public String getAmount() {
+        return amount;
+    }
+
+    public void setAmount(String amount) {
+        this.amount = amount;
+    }
+
+    public String getCreate_time() {
+        return create_time;
+    }
+
+    public void setCreate_time(String create_time) {
+        this.create_time = create_time;
+    }
+
+    public String getDesc() {
+        return desc;
+    }
+
+    public void setDesc(String desc) {
+        this.desc = desc;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getOrder_no() {
+        return order_no;
+    }
+
+    public void setOrder_no(String order_no) {
+        this.order_no = order_no;
+    }
+
+    public String getPay_status() {
+        return pay_status;
+    }
+
+    public void setPay_status(String pay_status) {
+        this.pay_status = pay_status;
+    }
+
+    public String getRisk_status() {
+        return risk_status;
+    }
+
+    public void setRisk_status(String risk_status) {
+        this.risk_status = risk_status;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getSurplus_amount() {
+        return surplus_amount;
+    }
+
+    public void setSurplus_amount(String surplus_amount) {
+        this.surplus_amount = surplus_amount;
+    }
+
+    public String getTotal_amount() {
+        return total_amount;
+    }
+
+    public void setTotal_amount(String total_amount) {
+        this.total_amount = total_amount;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public String getUpdate_time() {
+        return update_time;
+    }
+
+    public void setUpdate_time(String update_time) {
+        this.update_time = update_time;
+    }
+
+    public String getUser_id() {
+        return user_id;
+    }
+
+    public void setUser_id(String user_id) {
+        this.user_id = user_id;
+    }
+
+    public String getWx_resp_content() {
+        return wx_resp_content;
+    }
+
+    public void setWx_resp_content(String wx_resp_content) {
+        this.wx_resp_content = wx_resp_content;
+    }
+
+    public UserEntity getUser() {
+        return user;
+    }
+
+    public void setUser(UserEntity user) {
+        this.user = user;
+    }
+}

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

@@ -36,7 +36,8 @@ public class AddPuplicParameIntercept implements Interceptor {
     private Request addParam(Request oldRequest) {
         HttpUrl.Builder b = oldRequest.url()
                 .newBuilder()
-                .setEncodedQueryParameter("test","test")
+                .setQueryParameter("test3","test3")
+                .addQueryParameter("test","test")
                 .setEncodedQueryParameter("test2","test2");
         Request r = oldRequest.newBuilder()
                 .addHeader("Authorization", SpUtils.getOpenId(SheepApp.mContext)+"")//header 会覆盖以前的  header

+ 17 - 0
app/src/main/java/com/sheep/gamegroup/presenter/TaskListContract.java

@@ -0,0 +1,17 @@
+package com.sheep.gamegroup.presenter;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public interface TaskListContract {
+
+    interface Presenter{
+        void acceptedTask(int page, int pre_page);
+    }
+    interface View{
+
+        void updataView(Object o);
+        void failView(Object o);
+    }
+}

+ 25 - 0
app/src/main/java/com/sheep/gamegroup/presenter/TaskListPresenter.java

@@ -0,0 +1,25 @@
+package com.sheep.gamegroup.presenter;
+
+import com.sheep.gamegroup.model.api.ApiService;
+
+import javax.inject.Inject;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public class TaskListPresenter implements TaskListContract.Presenter {
+    private TaskListContract.View view;
+    private ApiService apiService;
+
+    @Inject
+    public TaskListPresenter(TaskListContract.View view, ApiService apiService) {
+        this.view = view;
+        this.apiService = apiService;
+    }
+
+    @Override
+    public void acceptedTask(int page, int pre_page) {
+
+    }
+}

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

@@ -23,5 +23,7 @@ public interface TryMakeMoneyContract {
 
         void returnTaskTaskUpdataView(Object o);
         void failReturnTask2View(Object o);
+        void releaseTaskTaskUpdataView(Object o);
+        void failReleaseTask2View(Object o);
     }
 }

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

@@ -63,7 +63,7 @@ public class TryMakeMoneyPresenter implements TryMakeMoneyContract.Presenter {
 
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        view.updateData2View(baseMessage);
+                        view.returnTaskTaskUpdataView(baseMessage);
 
                     }
                 });
@@ -82,7 +82,7 @@ public class TryMakeMoneyPresenter implements TryMakeMoneyContract.Presenter {
 
                     @Override
                     public void onNext(BaseMessage baseMessage) {
-                        view.updateData2View(baseMessage);
+                        view.releaseTaskTaskUpdataView(baseMessage);
 
                     }
                 });

+ 17 - 0
app/src/main/java/com/sheep/gamegroup/presenter/WithdrawalListContract.java

@@ -0,0 +1,17 @@
+package com.sheep.gamegroup.presenter;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public interface WithdrawalListContract {
+    interface Presenter{
+        void goWithdrawal(int page, int per_page, String start_time, String end_time);
+    }
+    interface View{
+
+        void updataView(Object o);
+        void failView(Object o);
+
+    }
+}

+ 56 - 0
app/src/main/java/com/sheep/gamegroup/presenter/WithdrawalListPresenter.java

@@ -0,0 +1,56 @@
+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.util.ExceptionHandle;
+import com.sheep.gamegroup.model.util.MySubscriber;
+import com.sheep.jiuyan.samllsheep.SheepApp;
+
+import javax.inject.Inject;
+
+import rx.schedulers.Schedulers;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public class WithdrawalListPresenter implements WithdrawalListContract.Presenter {
+
+    private WithdrawalListContract.View view;
+    private ApiService apiService;
+
+    @Inject
+    public WithdrawalListPresenter(WithdrawalListContract.View view, ApiService apiService) {
+        this.view = view;
+        this.apiService = apiService;
+    }
+
+    @Override
+    public void goWithdrawal(int page, int per_page, String start_time, String end_time) {
+
+        apiService.goWithdrawal(page, per_page, start_time, end_time)
+                .subscribeOn(Schedulers.io())
+                .subscribe(new MySubscriber<BaseMessage>(SheepApp.mContext) {
+                    @Override
+                    public void onError(ExceptionHandle.ResponeThrowable throwable) {
+                        int statusCode = throwable.code;
+                        switch (statusCode){
+                            case ExceptionHandle.ERROR.BAD_REQUEST_ERROR://400
+                            default:
+                                try {
+                                    view.failView(JSONObject.parseObject(throwable.message, BaseMessage.class));
+                                }catch (Exception e){
+                                    e.printStackTrace();
+                                }
+                                break;
+                        }
+                    }
+
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        view.updataView(baseMessage);
+                    }
+                });
+    }
+}

+ 0 - 18
app/src/main/java/com/sheep/gamegroup/presenter/WithdrawalPresenter.java

@@ -53,23 +53,5 @@ public class WithdrawalPresenter implements WithdrawalContract.Presenter {
                         view.updateView(baseMessage);
                     }
                 });
-        apiService.goWithdrawal(jsonObject)
-                .subscribeOn(Schedulers.io())
-                .subscribe(new Observer<BaseMessage>() {
-                    @Override
-                    public void onCompleted() {
-
-                    }
-
-                    @Override
-                    public void onError(Throwable throwable) {
-                        view.failData(throwable.getMessage());
-                    }
-
-                    @Override
-                    public void onNext(BaseMessage baseMessage) {
-                        view.updateView(baseMessage);
-                    }
-                });
     }
 }

+ 43 - 0
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -0,0 +1,43 @@
+package com.sheep.gamegroup.util;
+
+/**
+ * 一些公用的class
+ * Created by ljy on 2018/3/21.
+ */
+
+public class CommonUtil {
+    private static CommonUtil commonUtil;
+
+    public static CommonUtil getInstance(){
+        if(commonUtil == null){
+            commonUtil = new CommonUtil();
+        }
+        return commonUtil;
+    }
+
+    /**
+     * 返回提现审核结果
+     * 审核状态 0未审核 1系统审核通过 2系统审核不通过等待人工审核 3人工审核不通过 4人工审核通过
+     */
+    public String returnAuditResult(int type){
+        String result = "未审核";
+        switch (type){
+            case 0:
+                result = "系统审核通过";
+                break;
+            case 1:
+                result = "未审核";
+                break;
+            case 2:
+                result = "等待人工审核";
+                break;
+            case 3:
+                result = "人工审核不通过";
+                break;
+            case 4:
+                result = "人工审核通过";
+                break;
+        }
+        return result;
+    }
+}

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

@@ -2,16 +2,21 @@ package com.sheep.gamegroup.util;
 
 import android.content.Context;
 import android.content.Intent;
+import android.os.Bundle;
 
+import com.sheep.gamegroup.model.entity.TaskEty;
 import com.sheep.gamegroup.view.activity.AuthenticationAct;
 import com.sheep.gamegroup.view.activity.BindDataAct;
 import com.sheep.gamegroup.view.activity.BindOrChangeWeixinAct;
+import com.sheep.gamegroup.view.activity.DialogActivity;
 import com.sheep.gamegroup.view.activity.HomePageAct;
 import com.sheep.gamegroup.view.activity.LoginAct;
 import com.sheep.gamegroup.view.activity.PersonalCenterAct;
 import com.sheep.gamegroup.view.activity.PhoneAct;
+import com.sheep.gamegroup.view.activity.TaskListAct;
 import com.sheep.gamegroup.view.activity.TryMakeMoneyact;
 import com.sheep.gamegroup.view.activity.WithdrawalAct;
+import com.sheep.gamegroup.view.activity.WithdrawalListAct;
 import com.sheep.gamegroup.view.activity.WithdrawalResultAct;
 
 import javax.inject.Inject;
@@ -146,10 +151,41 @@ public class Jump2View {
      * @param context
      * @param o
      */
-    public void goBindDataView(Context context, Object o){
+    public void goBindDataView(Context context, Object o) {
         Intent intent = new Intent(context, BindDataAct.class);
         intent.putExtra("stype", o.toString());
         context.startActivity(intent);
     }
 
+    /**
+     * 跳出弹框页面
+     * @param context
+     * @param o
+     */
+    public void goDialogActivityView(Context context, TaskEty o){
+        Intent intent = new Intent(context, DialogActivity.class);
+        intent.putExtra("task_entity", o);
+        context.startActivity(intent);}
+
+    /**
+     * 跳到已做过任务列表页面
+     * @param context
+     * @param o
+     */
+    public void goTaskList2View(Context context, TaskEty o){
+        Intent intent = new Intent(context, TaskListAct.class);
+        intent.putExtra("task_entity", o);
+        context.startActivity(intent);}
+
+    /**
+     * 跳到已提现的列表
+     * @param context
+     * @param o
+     */
+    public void goWithdrawallistView(Context context, TaskEty o){
+        Intent intent = new Intent(context, WithdrawalListAct.class);
+        intent.putExtra("task_entity", o);
+        context.startActivity(intent);
+    }
+
 }

+ 7 - 0
app/src/main/java/com/sheep/gamegroup/util/TimeUtil.java

@@ -9,6 +9,9 @@ import java.util.Locale;
  * Created by ljy on 2018/3/8.
  */
 public class TimeUtil {
+
+    public static String FORMAT = "yyyy/MM/dd HH:mm";
+
     public static long getCurrentSeconds(){
         long ls = System.currentTimeMillis()/1000;
         return ls;
@@ -47,4 +50,8 @@ public class TimeUtil {
         String str = new SimpleDateFormat(formate, Locale.ENGLISH).format(new Date());
         return str;
     }
+    public static String getDate(String formate, long paramLong){
+        String str = new SimpleDateFormat(formate, Locale.ENGLISH).format(new Date());
+        return str;
+    }
 }

+ 241 - 0
app/src/main/java/com/sheep/gamegroup/util/ViewHolder.java

@@ -0,0 +1,241 @@
+package com.sheep.gamegroup.util;
+
+import android.annotation.SuppressLint;
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.Typeface;
+import android.graphics.drawable.Drawable;
+import android.os.Build;
+import android.text.util.Linkify;
+import android.util.SparseArray;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.animation.AlphaAnimation;
+import android.widget.Checkable;
+import android.widget.ImageView;
+import android.widget.ProgressBar;
+import android.widget.RatingBar;
+import android.widget.TextView;
+
+/**
+ * Created by ljy on 2018/3/20.
+ */
+
+public class ViewHolder extends android.support.v7.widget.RecyclerView.ViewHolder {
+    private SparseArray<View> mViews;
+    private int mPosition;
+    private View mConvertView;
+    private Context mContext;
+    private int mLayoutId;
+
+    public ViewHolder(Context context, View itemView, ViewGroup parent, int position) {
+        super(itemView);
+        this.mContext = context;
+        this.mConvertView = itemView;
+        this.mPosition = position;
+        this.mViews = new SparseArray();
+        this.mConvertView.setTag(this);
+    }
+
+    public static ViewHolder get(Context context, View convertView, ViewGroup parent, int layoutId, int position) {
+        if(convertView == null) {
+            View itemView = LayoutInflater.from(context).inflate(layoutId, parent, false);
+            ViewHolder holder = new ViewHolder(context, itemView, parent, position);
+            holder.mLayoutId = layoutId;
+            return holder;
+        } else {
+            ViewHolder holder = (ViewHolder)convertView.getTag();
+            holder.mPosition = position;
+            return holder;
+        }
+    }
+
+    public <T extends View> T getView(int viewId) {
+        View view = (View)this.mViews.get(viewId);
+        if(view == null) {
+            view = this.mConvertView.findViewById(viewId);
+            this.mViews.put(viewId, view);
+        }
+
+        return (T) view;
+    }
+
+    public <T extends View> T getView(int viewId, Class<T> t) {
+        View view = (View)this.mViews.get(viewId);
+        if(view == null) {
+            view = this.mConvertView.findViewById(viewId);
+            this.mViews.put(viewId, view);
+        }
+
+        return (T) view;
+    }
+
+    public View getConvertView() {
+        return this.mConvertView;
+    }
+
+    public ViewHolder setText(int viewId, String text) {
+        TextView tv = (TextView)this.getView(viewId);
+        tv.setText(text);
+        return this;
+    }
+
+    public ViewHolder setImageResource(int viewId, int resId) {
+        ImageView view = (ImageView)this.getView(viewId);
+        view.setImageResource(resId);
+        return this;
+    }
+
+    public ViewHolder setImageBitmap(int viewId, Bitmap bitmap) {
+        ImageView view = (ImageView)this.getView(viewId);
+        view.setImageBitmap(bitmap);
+        return this;
+    }
+
+    public ViewHolder setImageDrawable(int viewId, Drawable drawable) {
+        ImageView view = (ImageView)this.getView(viewId);
+        view.setImageDrawable(drawable);
+        return this;
+    }
+
+    public ViewHolder setBackgroundColor(int viewId, int color) {
+        View view = this.getView(viewId);
+        view.setBackgroundColor(color);
+        return this;
+    }
+
+    public ViewHolder setBackgroundRes(int viewId, int backgroundRes) {
+        View view = this.getView(viewId);
+        view.setBackgroundResource(backgroundRes);
+        return this;
+    }
+
+    public ViewHolder setTextColor(int viewId, int textColor) {
+        TextView view = (TextView)this.getView(viewId);
+        view.setTextColor(textColor);
+        return this;
+    }
+
+    public ViewHolder setTextColorRes(int viewId, int textColorRes) {
+        TextView view = (TextView)this.getView(viewId);
+        view.setTextColor(this.mContext.getResources().getColor(textColorRes));
+        return this;
+    }
+
+    @SuppressLint({"NewApi"})
+    public ViewHolder setAlpha(int viewId, float value) {
+        if(Build.VERSION.SDK_INT >= 11) {
+            this.getView(viewId).setAlpha(value);
+        } else {
+            AlphaAnimation alpha = new AlphaAnimation(value, value);
+            alpha.setDuration(0L);
+            alpha.setFillAfter(true);
+            this.getView(viewId).startAnimation(alpha);
+        }
+
+        return this;
+    }
+
+    public ViewHolder setVisible(int viewId, boolean visible) {
+        View view = this.getView(viewId);
+        view.setVisibility(visible?View.VISIBLE:View.GONE);
+        return this;
+    }
+
+    public ViewHolder linkify(int viewId) {
+        TextView view = (TextView)this.getView(viewId);
+        Linkify.addLinks(view, Linkify.ALL);
+        return this;
+    }
+
+    public ViewHolder setTypeface(Typeface typeface, int... viewIds) {
+        int[] var3 = viewIds;
+        int var4 = viewIds.length;
+
+        for(int var5 = 0; var5 < var4; ++var5) {
+            int viewId = var3[var5];
+            TextView view = (TextView)this.getView(viewId);
+            view.setTypeface(typeface);
+            view.setPaintFlags(view.getPaintFlags() | 128);
+        }
+
+        return this;
+    }
+
+    public ViewHolder setProgress(int viewId, int progress) {
+        ProgressBar view = (ProgressBar)this.getView(viewId);
+        view.setProgress(progress);
+        return this;
+    }
+
+    public ViewHolder setProgress(int viewId, int progress, int max) {
+        ProgressBar view = (ProgressBar)this.getView(viewId);
+        view.setMax(max);
+        view.setProgress(progress);
+        return this;
+    }
+
+    public ViewHolder setMax(int viewId, int max) {
+        ProgressBar view = (ProgressBar)this.getView(viewId);
+        view.setMax(max);
+        return this;
+    }
+
+    public ViewHolder setRating(int viewId, float rating) {
+        RatingBar view = (RatingBar)this.getView(viewId);
+        view.setRating(rating);
+        return this;
+    }
+
+    public ViewHolder setRating(int viewId, float rating, int max) {
+        RatingBar view = (RatingBar)this.getView(viewId);
+        view.setMax(max);
+        view.setRating(rating);
+        return this;
+    }
+
+    public ViewHolder setTag(int viewId, Object tag) {
+        View view = this.getView(viewId);
+        view.setTag(tag);
+        return this;
+    }
+
+    public ViewHolder setTag(int viewId, int key, Object tag) {
+        View view = this.getView(viewId);
+        view.setTag(key, tag);
+        return this;
+    }
+
+    public ViewHolder setChecked(int viewId, boolean checked) {
+        Checkable view = (Checkable)this.getView(viewId);
+        view.setChecked(checked);
+        return this;
+    }
+
+    public ViewHolder setOnClickListener(int viewId, View.OnClickListener listener) {
+        View view = this.getView(viewId);
+        view.setOnClickListener(listener);
+        return this;
+    }
+
+    public ViewHolder setOnTouchListener(int viewId, View.OnTouchListener listener) {
+        View view = this.getView(viewId);
+        view.setOnTouchListener(listener);
+        return this;
+    }
+
+    public ViewHolder setOnLongClickListener(int viewId, View.OnLongClickListener listener) {
+        View view = this.getView(viewId);
+        view.setOnLongClickListener(listener);
+        return this;
+    }
+
+    public void updatePosition(int position) {
+        this.mPosition = position;
+    }
+
+    public int getLayoutId() {
+        return this.mLayoutId;
+    }
+}

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

@@ -0,0 +1,110 @@
+package com.sheep.gamegroup.view.activity;
+
+import android.app.Activity;
+import android.os.Build;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.annotation.RequiresApi;
+import android.view.View;
+import android.webkit.WebChromeClient;
+import android.webkit.WebResourceRequest;
+import android.webkit.WebView;
+import android.webkit.WebViewClient;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.bumptech.glide.Glide;
+import com.sheep.gamegroup.model.entity.TaskEty;
+import com.sheep.gamegroup.view.customview.SProgress;
+import com.sheep.jiuyan.samllsheep.R;
+import com.sheep.jiuyan.samllsheep.SheepApp;
+import com.sheep.jiuyan.samllsheep.download.DownloadManager;
+import com.sheep.jiuyan.samllsheep.utils.PackageUtil;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+import butterknife.OnClick;
+
+/**
+ * 弹框activity
+ * Created by ljy on 2018/3/20.
+ */
+
+public class DialogActivity extends Activity {
+
+    @BindView(R.id.dialog_item_icon_iv)
+    ImageView dialogItemIconIv;
+    @BindView(R.id.dialog_item_name_tv)
+    TextView dialogItemNameTv;
+    @BindView(R.id.dialog_item_size_tv)
+    TextView dialogItemSizeTv;
+    @BindView(R.id.start_stask_sprogress)
+    SProgress startStaskSprogress;
+    @BindView(R.id.doalog_item_get_rewards_tv)
+    TextView doalogItemGetRewardsTv;
+    @BindView(R.id.webview)
+    WebView webview;
+    private TaskEty task_entity;
+
+    private DownloadManager downloadManager;
+
+    @Override
+    protected void onCreate(@Nullable Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.download_item_dialog);
+        ButterKnife.bind(this);
+        initView();
+        initData();
+    }
+
+    private void initData() {
+        downloadManager = DownloadManager.getInstance();
+        webview.loadUrl(task_entity.getBoot_address());
+        Glide.with(this)
+                .load(task_entity.getIcon())
+                .placeholder(R.mipmap.ic_launcher)
+                .dontAnimate()
+                .into(dialogItemIconIv);
+        dialogItemNameTv.setText(task_entity.getTask_name());
+        dialogItemSizeTv.setText( "11M");
+        if (PackageUtil.isAppInstalled(SheepApp.mContext, task_entity.getPackage_names())) {
+            startStaskSprogress.setProgress(100);
+        } else {
+            startStaskSprogress.setProgress(0);
+        }
+
+    }
+
+    private void initView() {
+        task_entity = (TaskEty) getIntent().getSerializableExtra("task_entity");
+        if (task_entity == null) {
+            finish();
+            return;
+        }
+
+        webview.setWebChromeClient(new WebChromeClient() {
+
+        });
+        webview.getSettings().setJavaScriptEnabled(true);
+        webview.setWebViewClient(new WebViewClient() {
+            @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
+            @Override
+            public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
+                view.loadUrl(request.getUrl().toString());
+                return true;
+            }
+        });
+
+    }
+
+    @OnClick({R.id.doalog_item_get_rewards_tv, R.id.dialog_item_x})
+    public void onViewClicked(View view) {
+        switch (view.getId()) {
+            case R.id.doalog_item_get_rewards_tv:
+                break;
+            case R.id.dialog_item_x:
+                finish();
+                break;
+        }
+    }
+}

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

@@ -108,9 +108,9 @@ public class PersonalCenterAct extends BaseActivity implements PersonalCenterCon
                 break;
             case R.id.account_safe_layout:
                 break;
-            case R.id.account_task_layout:
+            case R.id.account_task_layout://任务记录
                 break;
-            case R.id.account_detail_layout:
+            case R.id.account_detail_layout://提现明细
                 break;
         }
     }

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

@@ -206,7 +206,7 @@ public class PhoneAct extends BaseActivity implements PhoneContract.View {
         BaseMessage baseMessage = (BaseMessage) o;
 //        JSONObject a = JSON.parseObject(o.toString());
         Log.e("------data",baseMessage.getData()+"");
-        LoginEntity loginEty = JSON.parseObject(baseMessage.getData().toString(), LoginEntity.class);
+        LoginEntity loginEty = JSONObject.parseObject(JSONObject.toJSONString(baseMessage.getData()), LoginEntity.class);
         SpUtils.login(activity, loginEty.getToken());
         try {
             MyDbManager.getInstance().saveOrUpdateUser(loginEty.getUser());

+ 96 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/TaskListAct.java

@@ -0,0 +1,96 @@
+package com.sheep.gamegroup.view.activity;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.widget.ListView;
+
+import com.alibaba.fastjson.JSONArray;
+import com.sheep.gamegroup.di.components.DaggerTaskListComponent;
+import com.sheep.gamegroup.di.modules.TaskListModule;
+import com.sheep.gamegroup.model.entity.BaseMessage;
+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.TaskReleaseEty;
+import com.sheep.gamegroup.presenter.TaskListContract;
+import com.sheep.gamegroup.presenter.TaskListPresenter;
+import com.sheep.gamegroup.view.adapter.TaskListItemAdp;
+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 java.util.ArrayList;
+import java.util.List;
+
+import javax.inject.Inject;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+
+/**
+ * 任务列表
+ * Created by ljy on 2018/3/21.
+ */
+
+public class TaskListAct extends BaseActivity implements TaskListContract.View{
+    @BindView(R.id.withdrawal_listview)
+    ListView withdrawalListview;
+
+    @Inject
+    TaskListPresenter presenter;
+    private Activity activity;
+    private TaskListItemAdp adp;
+    private List<TaskAcceptedEty> etyList = new ArrayList<>();
+
+
+    @Override
+    protected int getLayoutId() {
+        return R.layout.withdrawal_list;
+    }
+
+    @Override
+    public void initView() {
+        ButterKnife.bind(this);
+        activity = this;
+        DaggerTaskListComponent.builder()
+                .netComponent(SheepApp.get(this).getNetComponent())
+                .taskListModule(new TaskListModule(this))
+                .build()
+                .inject(this);
+        TitleBarUtils.getInstance()
+                .setTitle(this, "任务记录")
+                .setTitleFinish(this);
+        adp = new TaskListItemAdp(activity , etyList);
+
+    }
+
+    @Override
+    public void initListener() {
+
+    }
+
+    @Override
+    public void initData() {
+
+    }
+
+    @Override
+    public void updataView(Object o) {
+        hideProgress();
+        try{
+            BaseMessage baseMessage = (BaseMessage) o;
+            List<TaskAcceptedEty> releaseEtyList = JSONArray.parseArray(JSONArray.toJSONString(baseMessage.getData()), TaskAcceptedEty.class);
+            etyList.clear();
+            etyList.addAll(releaseEtyList);
+            adp.notifyDataSetChanged();
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+    @Override
+    public void failView(Object o) {
+
+    }
+}

+ 75 - 1
app/src/main/java/com/sheep/gamegroup/view/activity/TryMakeMoneyact.java

@@ -2,21 +2,33 @@ package com.sheep.gamegroup.view.activity;
 
 import android.app.Activity;
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
 import android.support.v4.widget.SwipeRefreshLayout;
+import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.sheep.gamegroup.di.components.DaggerTryMakeMoneyComponent;
 import com.sheep.gamegroup.di.modules.TryMakeMoneyModule;
 import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.RecyleObj;
+import com.sheep.gamegroup.model.entity.RecyleType;
 import com.sheep.gamegroup.model.entity.RequestParameEty;
+import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
+import com.sheep.gamegroup.model.entity.TaskReleaseEty;
 import com.sheep.gamegroup.presenter.TryMakeMoneyContract;
 import com.sheep.gamegroup.presenter.TryMakeMoneyPresenter;
 import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.gamegroup.view.adapter.TryMakeMoneyAdp;
 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.G;
 
+import java.util.List;
+
 import javax.inject.Inject;
 
 import butterknife.BindView;
@@ -35,6 +47,16 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
     @Inject
     TryMakeMoneyPresenter presenter;
     private Activity activity;
+    private TryMakeMoneyAdp tryMakeMoneyAdp;
+
+    Handler mhandler = new Handler(){
+        @Override
+        public void handleMessage(Message msg) {
+            super.handleMessage(msg);
+
+            tryMakeMoneyAdp.notifyDataSetChanged();
+        }
+    };
 
     @Override
     protected int getLayoutId() {
@@ -50,6 +72,12 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
                 .tryMakeMoneyModule(new TryMakeMoneyModule(this))
                 .build()
                 .inject(this);
+        recyclerview.setLayoutManager(new LinearLayoutManager(activity));
+        tryMakeMoneyAdp = new TryMakeMoneyAdp(this);
+        for (int i = 0; i < 2; i++) {
+            tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.NONE, null));
+        }
+        recyclerview.setAdapter(tryMakeMoneyAdp);
     }
 
     @Override
@@ -61,12 +89,26 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
                 refresh.setRefreshing(false);
             }
         });
+        recyclerview.setOnScrollListener(new RecyclerView.OnScrollListener() {
+            @Override
+            public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
+                super.onScrollStateChanged(recyclerView, newState);
+                int topRowVerticalPosition =
+                        (recyclerView == null || recyclerView.getChildCount() == 0) ? 0 : recyclerView.getChildAt(0).getTop();
+                refresh.setEnabled(topRowVerticalPosition >= 0);
+            }
+
+            @Override
+            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
+                super.onScrolled(recyclerView, dx, dy);
+            }
+        });
     }
 
     @Override
     public void initData() {
 
-        presenter.acceptedTask(new RequestParameEty(1, 10));
+        presenter.returnTask(null);
         presenter.releaseTask(null);
     }
 
@@ -107,6 +149,15 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
     @Override
     public void returnTaskTaskUpdataView(Object o) {
 
+        hideProgress();
+        try{
+            BaseMessage baseMessage = (BaseMessage) o;
+            TaskAcceptedEty taskAcceptedEty = JSONObject.parseObject(JSONObject.toJSONString(baseMessage.getData()), TaskAcceptedEty.class);
+            tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.RUN_TASK, taskAcceptedEty));
+            mhandler.sendEmptyMessage(0);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
     }
 
     @Override
@@ -127,4 +178,27 @@ public class TryMakeMoneyact extends BaseActivity implements TryMakeMoneyContrac
             G.showToast(" 网络错误!");
         }
     }
+
+    /**
+     *  获取已经发布任务
+     * @param o
+     */
+    @Override
+    public void releaseTaskTaskUpdataView(Object o) {
+        hideProgress();
+        try{
+            BaseMessage baseMessage = (BaseMessage) o;
+            List<TaskReleaseEty> releaseEtyList = JSONArray.parseArray(JSONArray.toJSONString(baseMessage.getData()), TaskReleaseEty.class);
+            tryMakeMoneyAdp.add(RecyleObj.make(RecyleType.RELEASE_TASK, releaseEtyList));
+            mhandler.sendEmptyMessage(0);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+    @Override
+    public void failReleaseTask2View(Object o) {
+
+        hideProgress();
+    }
 }

+ 97 - 0
app/src/main/java/com/sheep/gamegroup/view/activity/WithdrawalListAct.java

@@ -0,0 +1,97 @@
+package com.sheep.gamegroup.view.activity;
+
+import android.app.Activity;
+import android.os.Bundle;
+import android.widget.ListView;
+
+import com.alibaba.fastjson.JSONArray;
+import com.sheep.gamegroup.di.components.DaggerWithdrawalListComponent;
+import com.sheep.gamegroup.di.modules.WishdrawalListModule;
+import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
+import com.sheep.gamegroup.model.entity.WithdrawalEty;
+import com.sheep.gamegroup.presenter.WithdrawalListContract;
+import com.sheep.gamegroup.presenter.WithdrawalListPresenter;
+import com.sheep.gamegroup.view.adapter.WithdrawalListAdp;
+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 java.util.ArrayList;
+import java.util.List;
+
+import javax.inject.Inject;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+
+/**
+ * 提现记录记录
+ * Created by ljy on 2018/3/21.
+ */
+
+public class WithdrawalListAct extends BaseActivity implements WithdrawalListContract.View{
+    @BindView(R.id.withdrawal_listview)
+    ListView withdrawalListview;
+
+    @Inject
+    WithdrawalListPresenter presenter;
+
+    private List<WithdrawalEty> etyList = new ArrayList<>();
+    private WithdrawalListAdp adp;
+    private Activity activity;
+
+    @Override
+    protected int getLayoutId() {
+        return R.layout.withdrawal_list;
+    }
+
+    @Override
+    public void initView() {
+        ButterKnife.bind(this);
+        activity = this;
+        DaggerWithdrawalListComponent.builder()
+                .netComponent(SheepApp.get(this).getNetComponent())
+                .wishdrawalListModule(new WishdrawalListModule(this))
+                .build()
+                .inject(this);
+        TitleBarUtils.getInstance()
+                .setTitle(this, "提现明细")
+                .setTitleFinish(this);
+        adp = new WithdrawalListAdp(activity, etyList);
+        withdrawalListview.setAdapter(adp);
+        adp.notifyDataSetChanged();
+    }
+
+    @Override
+    public void initListener() {
+
+    }
+
+    @Override
+    public void initData() {
+        presenter.goWithdrawal(0,10, 0+"",System.currentTimeMillis()+"");
+
+    }
+
+    @Override
+    public void updataView(Object o) {
+
+        hideProgress();
+        try{
+            BaseMessage baseMessage = (BaseMessage) o;
+            List<WithdrawalEty> releaseEtyList = JSONArray.parseArray(JSONArray.toJSONString(baseMessage.getData()), WithdrawalEty.class);
+            etyList.clear();
+            etyList.addAll(releaseEtyList);
+            adp.notifyDataSetChanged();
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+    @Override
+    public void failView(Object o) {
+
+    }
+}

+ 77 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/AdbCommonRecycler.java

@@ -0,0 +1,77 @@
+package com.sheep.gamegroup.view.adapter;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView;
+import android.view.ViewGroup;
+
+import com.sheep.gamegroup.util.ViewHolder;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by ljy on 2018/3/20.
+ */
+
+public abstract class AdbCommonRecycler<T> extends RecyclerView.Adapter<ViewHolder> {
+    Context context;
+    List<T> listDatas = new ArrayList<T>();
+
+    public AdbCommonRecycler(Context context) {
+        this.context = context;
+    }
+    public Context getContext(){
+        return context;
+    }
+
+    public List<T> getListDatas(){
+        return listDatas;
+    }
+    public void addAll(List<T> listDatas){
+        this.listDatas.addAll(listDatas);
+    }
+    public void add(T t){
+        this.listDatas.add(t);
+    }
+
+    public void add(T t, int position){
+        this.listDatas.set(position, t);
+    }
+
+    public void clear(){
+        this.listDatas.clear();
+    }
+
+    public abstract int getViewIdByType(int type);
+
+    public abstract void convert(ViewHolder holder, T t);
+
+    @Override
+    public void onBindViewHolder(ViewHolder holder, int position, List<Object> payloads) {
+        super.onBindViewHolder(holder, position, payloads);
+        if (payloads.isEmpty()) {
+            onBindViewHolder(holder, position);
+        }else {
+            holder.updatePosition(position);
+            convert(holder, listDatas.get(position));
+        }
+    }
+
+    @Override
+    public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
+        ViewHolder viewHolder = ViewHolder.get(context, null, viewGroup,
+                getViewIdByType(i), -1);
+        return viewHolder;
+    }
+
+    @Override
+    public void onBindViewHolder(ViewHolder viewHolder, int i) {
+        viewHolder.updatePosition(i);
+        convert(viewHolder, listDatas.get(i));
+    }
+
+    @Override
+    public int getItemCount() {
+        return listDatas.size();
+    }
+}

+ 79 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/TaskListItemAdp.java

@@ -0,0 +1,79 @@
+package com.sheep.gamegroup.view.adapter;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.BaseAdapter;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.bumptech.glide.Glide;
+import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
+import com.sheep.gamegroup.util.TimeUtil;
+import com.sheep.jiuyan.samllsheep.R;
+
+import java.util.List;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public class TaskListItemAdp extends BaseAdapter {
+    private Context context;
+    private List<TaskAcceptedEty> etyList;
+
+    public TaskListItemAdp(Context context, List<TaskAcceptedEty> etyList) {
+        this.context = context;
+        this.etyList = etyList;
+    }
+
+    @Override
+    public int getCount() {
+        return etyList.size();
+    }
+
+    @Override
+    public Object getItem(int position) {
+        return etyList.get(position);
+    }
+
+    @Override
+    public long getItemId(int position) {
+        return 0;
+    }
+
+    @Override
+    public View getView(int position, View convertView, ViewGroup parent) {
+        ViewHolder holder = null;
+        if(holder == null){
+            holder = new ViewHolder();
+            convertView = LayoutInflater.from(context).inflate(R.layout.task_list_item, null);
+            holder.name_tv = convertView.findViewById(R.id.name_tv);
+            holder.date_tv = convertView.findViewById(R.id.date_tv);
+            holder.price_tv = convertView.findViewById(R.id.price_tv);
+            holder.icon_iv = convertView.findViewById(R.id.icon_iv);
+        }else {
+            holder = (ViewHolder) convertView.getTag();
+        }
+
+        TaskAcceptedEty ety = (TaskAcceptedEty) getItem(position);
+        holder.name_tv.setText(ety.getRelease_task().getTask().getTask_name()+"");
+        try {
+            holder.date_tv.setText(TimeUtil.getDate(TimeUtil.FORMAT, Long.valueOf(ety.getRelease_task().getTask().getUpdate_time()))+"");
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        holder.price_tv.setText("+" + ety.getRelease_task().getBonus()+"元");
+        Glide.with(context)
+                .load(ety.getRelease_task().getTask().getIcon())
+                .placeholder(R.mipmap.ic_launcher)
+                .into(holder.icon_iv);
+        return convertView;
+    }
+
+    class ViewHolder{
+        ImageView icon_iv;
+        TextView name_tv, date_tv, price_tv;
+    }
+}

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

@@ -0,0 +1,152 @@
+package com.sheep.gamegroup.view.adapter;
+
+import android.content.Context;
+import android.support.design.widget.AppBarLayout;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.StaggeredGridLayoutManager;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
+
+import com.bumptech.glide.Glide;
+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.TaskReleaseEty;
+import com.sheep.gamegroup.util.Jump2View;
+import com.sheep.gamegroup.util.ViewHolder;
+import com.sheep.jiuyan.samllsheep.R;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by ljy on 2018/3/20.
+ */
+
+public class TryMakeMoneyAdp extends AdbCommonRecycler<RecyleObj> {
+    private final static int TAG_ID_TEMP = R.id.view_tag_1;
+
+    public TryMakeMoneyAdp(Context context) {
+        super(context);
+        this.context = context;
+    }
+
+    @Override
+    public int getViewIdByType(int type) {
+        int resId = R.layout.empty;
+        RecyleType recyleType = RecyleType.values()[type];
+        switch (recyleType){
+            case RELEASE_TASK:
+                resId = R.layout.try_mkmy_release_task_list;
+                break;
+            case RUN_TASK:
+                resId = R.layout.try_makemoney_item;
+                break;
+        }
+        return resId;
+    }
+
+    @Override
+    public void convert(ViewHolder holder, RecyleObj recyleObj) {
+
+        switch (recyleObj.getRecyleType()){
+            case RELEASE_TASK:
+                bindReleaseTask(holder, (List<TaskReleaseEty>) recyleObj.getDataObj());
+                break;
+            case RUN_TASK:
+                bindRunTask(holder, (TaskAcceptedEty) recyleObj.getDataObj());
+                break;
+        }
+    }
+
+    @Override
+    public int getItemViewType(int position) {
+        return getListDatas().get(position).getRecyleType().ordinal();
+    }
+
+    /**
+     * 获取已发布的
+     */
+    private void bindReleaseTask(ViewHolder holder, List<TaskReleaseEty> etyList){
+        RecyclerView recyclerView = holder.getView(R.id.release_task_listview, RecyclerView.class);
+//        recyclerView.setHasFixedSize(true);
+//        recyclerView.setLayoutManager(new LinearLayoutManager(context));
+        recyclerView.setHasFixedSize(true);
+        recyclerView.setLayoutManager(new StaggeredGridLayoutManager(1,
+                StaggeredGridLayoutManager.HORIZONTAL));
+        recyclerView.setAdapter(new RecyclerView.Adapter(){
+
+            @Override
+            public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
+                View view = LayoutInflater.from(context)
+                        .inflate(R.layout.try_makemoney_item, viewGroup,false);
+                view.setOnClickListener(new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        Jump2View.getInstance().goDialogActivityView(context, etyList.get(i).getTask());
+                    }
+                });
+                RecyclerView.ViewHolder viewHolder = new RecyclerView.ViewHolder(view) {
+                    @Override
+                    public String toString() {
+                        return super.toString();
+                    }
+                };
+                return viewHolder;
+            }
+
+            @Override
+            public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int i) {
+                viewHolder.itemView.setTag(TAG_ID_TEMP, etyList.get(i).getId());
+                if(i == 0){
+
+                    viewHolder.itemView.findViewById(R.id.item_title_tv).setVisibility(View.VISIBLE);
+                    ((TextView)viewHolder.itemView.findViewById(R.id.item_title_tv)).setText("推荐");
+                }else{
+
+                    viewHolder.itemView.findViewById(R.id.item_title_tv).setVisibility(View.GONE);
+                }
+                ((TextView)viewHolder.itemView.findViewById(R.id.item_anem_tv)).setText(etyList.get(i).getTask().getTask_name()+"");
+                ((TextView)viewHolder.itemView.findViewById(R.id.item_num_tv)).setText("剩余"+ etyList.get(i).getLast_num()+"份");
+                ((TextView)viewHolder.itemView.findViewById(R.id.item_money)).setText("+"+ etyList.get(i).getBonus() +"元");
+                Glide.with(context)
+                        .load(etyList.get(i).getTask().getIcon()+"")
+                        .placeholder(R.mipmap.ic_launcher)
+                        .into((ImageView) viewHolder.itemView.findViewById(R.id.item_icon_iv));
+            }
+
+            @Override
+            public int getItemCount() {
+                return etyList.size();
+            }
+        });
+    }
+
+    /**
+     * 获取我正在运行的任务
+     */
+    private void bindRunTask(ViewHolder holder, TaskAcceptedEty acceptedEty){
+        ImageView icon = holder.getView(R.id.item_icon_iv);
+        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);
+        Glide.with(context)
+                .load(acceptedEty.getRelease_task().getTask().getIcon()+"")
+                .placeholder(R.mipmap.ic_launcher)
+                .dontAnimate()
+                .into(icon);
+        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() +"元");
+        holder.itemView.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                Jump2View.getInstance().goDialogActivityView(context, acceptedEty.getRelease_task().getTask());
+            }
+        });
+    }
+}

+ 76 - 0
app/src/main/java/com/sheep/gamegroup/view/adapter/WithdrawalListAdp.java

@@ -0,0 +1,76 @@
+package com.sheep.gamegroup.view.adapter;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.BaseAdapter;
+import android.widget.TextView;
+
+import com.sheep.gamegroup.model.entity.TaskAcceptedEty;
+import com.sheep.gamegroup.model.entity.WithdrawalEty;
+import com.sheep.gamegroup.util.CommonUtil;
+import com.sheep.gamegroup.util.TimeUtil;
+import com.sheep.jiuyan.samllsheep.R;
+
+import java.util.List;
+
+/**
+ * Created by ljy on 2018/3/21.
+ */
+
+public class WithdrawalListAdp extends BaseAdapter {
+    private Context context;
+    private List<WithdrawalEty> etyList;
+
+    public WithdrawalListAdp(Context context, List<WithdrawalEty> etyList) {
+        this.context = context;
+        this.etyList = etyList;
+    }
+
+    @Override
+    public int getCount() {
+        return etyList.size();
+    }
+
+    @Override
+    public Object getItem(int position) {
+        return etyList.get(position);
+    }
+
+    @Override
+    public long getItemId(int position) {
+        return 0;
+    }
+
+    @Override
+    public View getView(int position, View convertView, ViewGroup parent) {
+        ViewHolder holder = null;
+        if(holder == null){
+            holder = new ViewHolder();
+            convertView = LayoutInflater.from(context).inflate(R.layout.withdrawal_item, null);
+            holder.name_tv = convertView.findViewById(R.id.name_tv);
+            holder.date_tv = convertView.findViewById(R.id.date_tv);
+            holder.price_tv = convertView.findViewById(R.id.price_tv);
+            holder.state_tv = convertView.findViewById(R.id.state_tv);
+        }else {
+            holder = (ViewHolder) convertView.getTag();
+        }
+
+        WithdrawalEty ety = (WithdrawalEty) getItem(position);
+        holder.name_tv.setText(ety.getDesc()+"");
+        try {
+            holder.date_tv.setText(TimeUtil.getDate(TimeUtil.FORMAT, Long.valueOf(ety.getUpdate_time()))+"");
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        holder.price_tv.setText("+" + ety.getAmount()+"元");
+        holder.state_tv.setText(CommonUtil.getInstance().returnAuditResult(Integer.valueOf(ety.getStatus())));
+
+        return convertView;
+    }
+
+    class ViewHolder{
+        TextView name_tv, date_tv, price_tv, state_tv;
+    }
+}

+ 7 - 0
app/src/main/java/com/sheep/gamegroup/view/customview/SProgress.java

@@ -228,6 +228,13 @@ public class SProgress extends View {
 
     private String getText(float progress) {
         String progresstext = String.format(getResources().getString(R.string.sprogress_string), progress);
+        if(progress == 0){
+            progresstext = "开始任务";
+        }else if(progress == 100){
+            progresstext = "开始试玩";
+        }else {
+            progresstext = String.format(getResources().getString(R.string.sprogress_string), progress);
+        }
         return progresstext.replace(".0", "");
 //        "已领" + progresstext.replace(".0", "") + "%"
     }

+ 6 - 9
app/src/main/res/layout/dowanload_item_dialog.xml

@@ -16,9 +16,9 @@
             android:id="@+id/dialog_item_icon_iv"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:src="@drawable/icon_lj"
-            tools:layout_editor_absoluteY="25dp"
-            tools:layout_editor_absoluteX="0dp" />
+            android:minHeight="@dimen/view_size_80"
+            android:minWidth="@dimen/view_size_80"
+            android:src="@drawable/icon_lj" />
         <TextView
             android:id="@+id/dialog_item_name_tv"
             android:layout_width="wrap_content"
@@ -26,9 +26,7 @@
             android:text="无敌大航海"
             style="@style/txt_big_style"
             app:layout_constraintStart_toEndOf="@id/dialog_item_icon_iv"
-            app:layout_editor_absoluteY="8dp"
-            tools:layout_editor_absoluteY="33dp"
-            tools:layout_editor_absoluteX="72dp" />
+            android:layout_marginLeft="@dimen/content_padding"/>
         <TextView
             android:id="@+id/dialog_item_size_tv"
             android:layout_width="wrap_content"
@@ -36,9 +34,8 @@
             android:text="10M"
             android:textSize="@dimen/text_size_12"
             app:layout_constraintStart_toEndOf="@id/dialog_item_icon_iv"
-            app:layout_editor_absoluteY="35dp"
-            tools:layout_editor_absoluteY="60dp"
-            tools:layout_editor_absoluteX="72dp" />
+            app:layout_constraintTop_toBottomOf="@+id/dialog_item_name_tv"
+            android:layout_marginLeft="@dimen/content_padding"/>
 
         <ListView
             android:id="@+id/dialog_item_list"

+ 48 - 51
app/src/main/res/layout/down_item.xml

@@ -32,64 +32,61 @@
             android:layout_height="50dp"
             android:layout_centerVertical="true"
             android:layout_marginLeft="10dp"
-            android:src="@drawable/icon_sheep"
-            />
-      <LinearLayout
-          android:id="@+id/ll_install"
-          android:layout_toLeftOf="@+id/ll_btn"
-          android:layout_width="match_parent"
-          android:layout_height="wrap_content"
-          android:orientation="vertical"
-          android:layout_centerVertical="true"
-          android:layout_marginLeft="10dp"
-          android:layout_toRightOf="@id/img_icon"
-          >
+            android:src="@drawable/icon_sheep" />
 
-        <TextView
-            android:id="@+id/tv_game_name"
-            android:layout_width="wrap_content"
+        <LinearLayout
+            android:id="@+id/ll_install"
+            android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:textColor="@color/black_dark"/>
+            android:layout_centerVertical="true"
+            android:layout_marginLeft="10dp"
+            android:layout_toLeftOf="@+id/ll_btn"
+            android:layout_toRightOf="@id/img_icon"
+            android:orientation="vertical">
 
-        <TextView
-            android:id="@+id/tv_prorgess"
-            android:textColor="@color/theme"
+            <TextView
+                android:id="@+id/tv_game_name"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:textColor="@color/black_dark" />
+
+            <TextView
+                android:id="@+id/tv_prorgess"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginRight="10dp"
+                android:layout_marginTop="10dp"
+                android:text="完成"
+                android:textColor="@color/theme"
+                android:textSize="16sp" />
+        </LinearLayout>
+
+        <LinearLayout
+            android:id="@+id/ll_btn"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textSize="16sp"
-            android:text="完成"
-            android:layout_marginTop="10dp"
+            android:layout_alignParentBottom="true"
+            android:layout_alignParentRight="true"
+            android:layout_centerVertical="true"
             android:layout_marginRight="10dp"
-            />
-      </LinearLayout>
+            android:layout_marginTop="10dp"
+            android:orientation="horizontal">
 
-       <LinearLayout
-           android:id="@+id/ll_btn"
-           android:layout_width="wrap_content"
-           android:layout_height="wrap_content"
-           android:orientation="horizontal"
-           android:layout_alignParentBottom="true"
-           android:layout_alignParentRight="true"
-           android:layout_centerVertical="true"
-           android:layout_marginRight="10dp"
-           android:layout_marginTop="10dp"
-           >
-        <ImageView
-            android:id="@+id/iv_state"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:padding="5dp"
-            android:src="@drawable/icon_stop"
-            />
-           <ImageView
-               android:id="@+id/iv_remove"
-               android:layout_width="wrap_content"
-               android:layout_height="wrap_content"
-               android:padding="5dp"
-               android:layout_marginLeft="10dp"
-               android:src="@drawable/icon_delet"
-            />
-       </LinearLayout>
+            <ImageView
+                android:id="@+id/iv_state"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:padding="5dp"
+                android:src="@drawable/icon_stop" />
+
+            <ImageView
+                android:id="@+id/iv_remove"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="10dp"
+                android:padding="5dp"
+                android:src="@drawable/icon_delet" />
+        </LinearLayout>
     </RelativeLayout>
 
     <!--<com.sheep.gamegroup.view.customview.TextProgressBar

+ 114 - 0
app/src/main/res/layout/download_item_dialog.xml

@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/dialog_layout">
+
+    <ScrollView
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true"
+        android:layout_margin="@dimen/content_padding_65"
+        android:scrollbars="none" >
+        <RelativeLayout
+            android:id="@+id/dialog_son_layout"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="horizontal">
+            <ImageView
+                android:id="@+id/dialog_item_x"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:src="@mipmap/try_dialog_x"
+                android:layout_alignParentRight="true"/>
+            <RelativeLayout
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:background="@mipmap/try_dialog_bg"
+                android:layout_marginTop="@dimen/content_padding"
+                android:padding="@dimen/content_padding">
+
+                <ImageView
+                    android:id="@+id/dialog_item_icon_iv"
+                    android:layout_width="@dimen/view_size_80"
+                    android:layout_height="@dimen/view_size_80"
+                    android:minHeight="@dimen/view_size_80"
+                    android:minWidth="@dimen/view_size_80"
+                    android:src="@drawable/icon_lj" />
+
+                <TextView
+                    android:id="@+id/dialog_item_name_tv"
+                    style="@style/txt_big_noheight_style"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginLeft="@dimen/content_padding"
+                    android:layout_marginTop="@dimen/content_padding_15"
+                    android:layout_toRightOf="@id/dialog_item_icon_iv"
+                    android:text="无敌大航海" />
+
+                <TextView
+                    android:id="@+id/dialog_item_size_tv"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@+id/dialog_item_name_tv"
+                    android:layout_marginLeft="@dimen/content_padding"
+                    android:layout_marginTop="@dimen/content_padding_10"
+                    android:layout_toRightOf="@id/dialog_item_icon_iv"
+                    android:text="10M"
+                    android:textSize="@dimen/text_size_12" />
+
+
+                <WebView
+                    android:id="@+id/webview"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@+id/dialog_item_icon_iv"
+                    android:layout_marginTop="@dimen/content_padding_15"
+                    android:layout_marginLeft="@dimen/content_padding_40"
+                    android:layout_marginRight="@dimen/content_padding_40"
+                    android:layout_centerHorizontal="true">
+
+                </WebView>
+
+                <com.sheep.gamegroup.view.customview.SProgress
+                    android:id="@+id/start_stask_sprogress"
+                    android:layout_width="match_parent"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@+id/webview"
+                    android:layout_marginTop="@dimen/content_padding_15"
+                    android:layout_marginLeft="@dimen/content_padding_40"
+                    android:layout_marginRight="@dimen/content_padding_40"
+                    android:layout_toLeftOf="@+id/frentallystart"
+                    android:minHeight="36dp"
+                    android:padding="2dp"
+                    android:layout_centerHorizontal="true"
+                    app:backColor="@color/bg_gray"
+                    app:minProgress="0"
+                    app:progressColor="@color/txt_bg_yellow"
+                    app:progressendcolor="#ffff6969"
+                    app:startprogress="0"
+                    app:textColor="#ffffffff"
+                    app:textsize="18sp"
+                    android:minWidth="151dp"/>
+
+                <TextView
+                    android:id="@+id/doalog_item_get_rewards_tv"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_below="@+id/start_stask_sprogress"
+                    android:background="@drawable/sp_bg_gradient_rectqangle_yellow"
+                    android:gravity="center"
+                    android:minHeight="36dp"
+                    android:minWidth="151dp"
+                    android:text="领取奖励"
+                    android:textSize="18sp"
+                    android:layout_marginTop="@dimen/content_padding_15"
+                    android:layout_centerHorizontal="true"
+                    android:layout_marginLeft="@dimen/content_padding_40"
+                    android:layout_marginRight="@dimen/content_padding_40"/>
+
+            </RelativeLayout>
+        </RelativeLayout>
+    </ScrollView>
+</RelativeLayout>

+ 5 - 4
app/src/main/res/layout/homepage_act_layout.xml

@@ -34,7 +34,7 @@
                         android:id="@+id/name_tv"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:text="野蛮托举"
+                        android:text=""
                         android:textSize="@dimen/text_size_12"
                         android:textColor="@color/txt_white"
                         android:layout_toRightOf="@id/icon_img_iv"
@@ -45,7 +45,7 @@
                         android:id="@+id/sheep_num_tv"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:text="绵阳号:123456789"
+                        android:text="绵羊号:"
                         android:textSize="@dimen/text_size_10"
                         android:textColor="@color/txt_white"
                         android:layout_toRightOf="@id/icon_img_iv"
@@ -94,7 +94,7 @@
                         android:id="@+id/my_price"
                         android:layout_width="match_parent"
                         android:layout_height="wrap_content"
-                        android:text="20.00 元"
+                        android:text=""
                         android:textColor="@color/txt_white"
                         android:textSize="@dimen/text_size_25"
                         android:layout_marginTop="12dp"
@@ -105,7 +105,7 @@
                         android:id="@+id/my_all_price"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:text="累计资产 60.00 元"
+                        android:text="累计资产 "
                         android:textColor="@color/txt_white"
                         android:textSize="@dimen/text_size_12"/>
                 </RelativeLayout>
@@ -186,6 +186,7 @@
                 android:layout_height="wrap_content"
                 android:background="@drawable/sp_rectangle_bg_white_radius"
                 android:orientation="vertical"
+                android:minHeight="@dimen/view_size_80"
                 android:padding="@dimen/content_padding_10"
                 android:layout_margin="@dimen/content_padding_10">
 

+ 55 - 0
app/src/main/res/layout/task_list_item.xml

@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="@drawable/sp_rectangle_bg_white_radius"
+    android:padding="@dimen/content_padding_20"
+    android:layout_margin="@dimen/content_padding_10">
+
+    <ImageView
+        android:id="@+id/icon_iv"
+        android:layout_width="@dimen/view_size_60"
+        android:layout_height="@dimen/view_size_60"
+        android:src="@mipmap/ic_launcher"
+        android:layout_centerVertical="true"/>
+
+    <RelativeLayout
+        android:id="@+id/name_date_layout"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_toRightOf="@+id/icon_iv"
+        android:layout_marginLeft="@dimen/content_padding"
+        android:layout_centerVertical="true">
+        <TextView
+            android:id="@+id/name_tv"
+            style="@style/nomal_txt_style"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="完成试玩任务无敌大航海"/>
+
+        <TextView
+            android:id="@+id/date_tv"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="2018/2/14 14:41"
+            android:layout_below="@+id/name_tv"
+            android:textSize="@dimen/text_size_3"
+            android:textColor="@color/txt_black_818181"
+            android:layout_marginTop="@dimen/content_padding_10"/>
+    </RelativeLayout>
+
+    <TextView
+        android:id="@+id/price_tv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="+1.5元"
+        android:textColor="@color/txt_red"
+        android:textSize="@dimen/text_size_15"
+        android:layout_centerVertical="true"
+        android:layout_toRightOf="@+id/name_date_layout"
+        android:layout_marginLeft="@dimen/content_padding_10"
+        android:layout_alignParentRight="true"
+        android:gravity="right"/>
+
+
+</RelativeLayout>

+ 3 - 2
app/src/main/res/layout/try_makemoney_act_layout.xml

@@ -3,7 +3,7 @@
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:orientation="vertical"
-    android:background="@color/white_light">
+    android:background="@color/bg_gray">
 
     <include
         layout="@layout/title"/>
@@ -11,7 +11,8 @@
     <android.support.v4.widget.SwipeRefreshLayout
         android:id="@+id/refresh"
         android:layout_width="match_parent"
-        android:layout_height="wrap_content">
+        android:layout_height="wrap_content"
+        android:layout_margin="@dimen/content_padding_10">
 
         <android.support.v7.widget.RecyclerView
             android:id="@+id/recyclerview"

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

@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
+    android:layout_height="wrap_content"
     android:orientation="vertical"
-    android:background="@drawable/sp_bg_transparency_line_thite_radius_top"
+    android:background="@drawable/sp_rectangle_bg_white_radius"
     android:padding="12dp">
     <TextView
         android:id="@+id/item_title_tv"
@@ -19,8 +19,8 @@
         android:layout_height="wrap_content">
         <ImageView
             android:id="@+id/item_icon_iv"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
+            android:layout_width="@dimen/view_size_60"
+            android:layout_height="@dimen/view_size_60"
             android:src="@drawable/icon_lj"/>
         <TextView
             android:id="@+id/item_anem_tv"
@@ -36,7 +36,7 @@
             android:id="@+id/item_num_tv"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:text="剩余1001份"
+            android:text=""
             android:layout_below="@+id/item_money"
             android:layout_alignStart="@+id/item_anem_tv"
             android:layout_marginTop="8dp"/>
@@ -44,7 +44,7 @@
             android:id="@+id/item_money"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:text="+1.5元"
+            android:text=""
             android:textSize="18dp"
             android:textColor="@color/txt_red"
             android:layout_centerVertical="true"

+ 25 - 0
app/src/main/res/layout/try_mkmy_release_task_list.xml

@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:background="@color/bg_gray">
+
+    <TextView
+        android:id="@+id/item_title_tv"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="推荐"
+        android:textColor="@color/black"
+        android:textSize="15dp"
+        android:layout_marginBottom="13dp"
+        android:visibility="gone"/>
+    <android.support.v7.widget.RecyclerView
+        android:id="@+id/release_task_listview"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_marginBottom="4dp">
+
+    </android.support.v7.widget.RecyclerView>
+
+</LinearLayout>

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

@@ -43,7 +43,7 @@
         android:id="@+id/state_tv"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:text="提现成功"
+        android:text="等待人工审核"
         android:textSize="@dimen/text_size_12"
         android:textColor="@color/black_444444"
         android:layout_toRightOf="@+id/price_tv"

BIN
app/src/main/res/mipmap-xhdpi/try_dialog_bg.png


BIN
app/src/main/res/mipmap-xhdpi/try_dialog_x.png


BIN
app/src/main/res/mipmap-xxhdpi/try_dialog_bg.png


BIN
app/src/main/res/mipmap-xxhdpi/try_dialog_x.png


+ 3 - 0
app/src/main/res/values/common.xml

@@ -74,6 +74,7 @@
     <dimen name="content_padding_20">20dp</dimen>
     <dimen name="content_padding_30">30dp</dimen>
     <dimen name="content_padding_40">40dp</dimen>
+    <dimen name="content_padding_65">65dp</dimen>
     <dimen name="content_padding_80">80dp</dimen>
 
 
@@ -97,6 +98,8 @@
     <dimen name="view_size_40">40dp</dimen>
     <dimen name="view_size_45">45dp</dimen>
     <dimen name="view_size_60">60dp</dimen>
+    <dimen name="view_size_80">80dp</dimen>
+    <dimen name="view_size_160">160dp</dimen>
 
 
 </resources>

+ 14 - 0
app/src/main/res/values/gamegroup_styles.xml

@@ -63,6 +63,12 @@
         <item name="android:textColor">@color/txt_black</item>
         <item name="android:gravity">center</item>
     </style>
+    <style name="txt_big_noheight_style">
+        <item name="android:text">无敌大航海</item>
+        <item name="android:textSize">@dimen/text_size_5</item>
+        <item name="android:textColor">@color/txt_black</item>
+        <item name="android:gravity">center</item>
+    </style>
     <style name="txt_big_btn_style">
         <item name="android:minHeight">@dimen/view_size_45</item>
         <item name="android:text">无敌大航海</item>
@@ -72,4 +78,12 @@
         <item name="android:layout_margin">@dimen/content_padding</item>
         <item name="android:background">@drawable/sp_bg_gradient_rectqangle_yellow</item>
     </style>
+    <style name="MyDialogActivityTheme" parent="@android:style/Theme.Dialog">
+        <item name="android:windowFrame">@android:color/transparent</item><!--边框-->
+        <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
+        <item name="android:windowIsTranslucent">true</item><!--半透明-->
+        <item name="android:windowNoTitle">true</item><!--无标题-->
+        <item name="android:windowBackground">@android:color/transparent</item><!--背景透明-->
+        <item name="android:backgroundDimAmount">0.4</item><!--透明度 0.0f到1.0f之间。1.0完全不透明,0.0f完全透明-->
+    </style>
 </resources>