ソースを参照

闲玩、我的资产修改

liujiangyao 7 年 前
コミット
bcdefe2330
共有26 個のファイルを変更した570 個の追加75 個の削除を含む
  1. 0 2
      app/src/main/AndroidManifest.xml
  2. 43 5
      app/src/main/java/com/kfzs/duanduan/fragment/AbsFgtMyMoney.java
  3. 4 3
      app/src/main/java/com/kfzs/duanduan/fragment/FgtMyMoney3.java
  4. 39 24
      app/src/main/java/com/kfzs/duanduan/fragment/FgtPersonalCenter.java
  5. 4 1
      app/src/main/java/com/kfzs/duanduan/react/upfile/UpFileUtils.java
  6. 5 0
      app/src/main/java/com/sheep/gamegroup/model/api/ApiService.java
  7. 72 0
      app/src/main/java/com/sheep/gamegroup/model/entity/AgentEntity.java
  8. 3 0
      app/src/main/java/com/sheep/gamegroup/model/entity/ILog.java
  9. 20 0
      app/src/main/java/com/sheep/gamegroup/model/entity/RechargeBalanceLog.java
  10. 180 0
      app/src/main/java/com/sheep/gamegroup/model/entity/RechargeLogEntity.java
  11. 19 0
      app/src/main/java/com/sheep/gamegroup/model/entity/RechargeQQLog.java
  12. 19 0
      app/src/main/java/com/sheep/gamegroup/model/entity/WithdrawalEty.java
  13. 1 1
      app/src/main/java/com/sheep/gamegroup/model/util/ExceptionHandle.java
  14. 3 1
      app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java
  15. 1 1
      app/src/main/java/com/sheep/gamegroup/util/DeviceIDUtil.java
  16. 2 1
      app/src/main/java/com/sheep/gamegroup/util/Jump2View.java
  17. 2 0
      app/src/main/java/com/sheep/gamegroup/util/UMConfigUtils.java
  18. 20 5
      app/src/main/java/com/sheep/gamegroup/util/WebviewJs.java
  19. 1 1
      app/src/main/java/com/sheep/gamegroup/view/activity/ActMyMoney.java
  20. 25 3
      app/src/main/java/com/sheep/gamegroup/view/activity/ActXinwanWeb.java
  21. 66 19
      app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java
  22. 4 0
      app/src/main/java/com/sheep/gamegroup/view/fragment/FgtMyGame.java
  23. 1 1
      app/src/main/java/com/sheep/jiuyan/samllsheep/utils/SpUtils.java
  24. 36 7
      app/src/main/res/layout/x_my_money_act_layout_item.xml
  25. BIN
      app/src/main/res/mipmap-xhdpi/myprice_off.png
  26. BIN
      app/src/main/res/mipmap-xhdpi/myprice_on.png

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

@@ -40,13 +40,11 @@
     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
     <uses-permission android:name="android.permission.INTERNET"/>
     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
-    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
     <uses-permission android:name="android.permission.GET_TASKS"/>
     <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
     <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
     <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
     <!--必须的权限配置-->
-    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
     <uses-permission android:name="android.permission.READ_LOGS" />

+ 43 - 5
app/src/main/java/com/kfzs/duanduan/fragment/AbsFgtMyMoney.java

@@ -3,10 +3,12 @@ package com.kfzs.duanduan.fragment;
 import android.app.Activity;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.ImageView;
 import android.widget.ListView;
 import android.widget.TextView;
 
 import com.alibaba.fastjson.JSON;
+import com.googlecode.protobuf.format.util.TextUtils;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.ILog;
 import com.sheep.gamegroup.model.util.SheepSubscriber;
@@ -56,22 +58,56 @@ public abstract class AbsFgtMyMoney extends BaseFragment {
             swipe_container.setFooterView(activity, list_view, R.layout.listview_footer);
             adapter = new ArrayAdapter<ILog>(activity, R.layout.x_my_money_act_layout_item, list){
                 @Override
-                public boolean convert(int position, View convertView, ViewGroup parent, ILog item) {
+                public boolean convert(int position, View convertView, ViewGroup parent, final ILog item) {
                     View my_money_item_top = convertView.findViewById(R.id.my_money_item_top);
                     View my_money_item_center = convertView.findViewById(R.id.my_money_item_center);
                     View my_money_item_bottom = convertView.findViewById(R.id.my_money_item_bottom);
-                    TextView my_money_item_recharge_amount = convertView.findViewById(R.id.my_money_item_recharge_amount);
+                    final TextView my_money_item_recharge_amount = convertView.findViewById(R.id.my_money_item_recharge_amount);
                     TextView my_money_item_recharge_status = convertView.findViewById(R.id.my_money_item_recharge_status);
                     TextView my_money_item_recharge_time = convertView.findViewById(R.id.my_money_item_recharge_time);
+                    final ImageView my_money_item_recharge_amount_iv = convertView.findViewById(R.id.my_money_item_recharge_amount_iv);
+                    final TextView my_money_item_recharge_amount_2 = convertView.findViewById(R.id.my_money_item_recharge_amount_2);
                     my_money_item_recharge_amount.setText(item.getEventText());
+                    my_money_item_recharge_amount_2.setText(item.getEventText());
                     my_money_item_recharge_status.setText(item.getStateText());
-                    my_money_item_recharge_status.setTextColor(item.isEventSuccess() ? 0xff282828 : 0xffff2e4b);
+                    my_money_item_recharge_amount.setTextColor(item.isEventSuccess() ? 0xff282828 : 0xffff2e4b);
                     my_money_item_recharge_time.setText(TimeUtil.TimeStamp2Date(item.getEventTime(), "yyyy/MM/dd HH:mm"));
                     boolean isFirst = position == 0;
                     boolean isLast = ListUtil.isLastPosition(list, position);
                     my_money_item_top.setVisibility(isFirst ? View.VISIBLE : View.GONE);
                     my_money_item_center.setBackgroundColor(position % 2 == 1 ? 0xffF8F8F8 : 0xffffffff);
                     my_money_item_bottom.setVisibility(isLast ? View.VISIBLE : View.GONE);
+
+                    my_money_item_recharge_amount_2.setVisibility(View.GONE);
+                    my_money_item_recharge_amount.post(new Runnable() {
+                        @Override
+                        public void run() {
+                            if(!android.text.TextUtils.isEmpty(item.getEventText()) && my_money_item_recharge_amount.getLayout() != null){
+                                int ellipis = my_money_item_recharge_amount.getLayout().getEllipsisCount(my_money_item_recharge_amount.getLineCount()-1);
+                                if(ellipis > 0){
+                                    my_money_item_recharge_amount_iv.setVisibility(View.VISIBLE);
+                                }else {
+                                    my_money_item_recharge_amount_iv.setVisibility(View.INVISIBLE);
+                                }
+                            }else {
+                                my_money_item_recharge_amount_iv.setVisibility(View.INVISIBLE);
+                            }
+                        }
+                    });
+
+                    my_money_item_recharge_amount_iv.setOnClickListener(new View.OnClickListener() {
+                        @Override
+                        public void onClick(View v) {
+                            item.isSelect(!item.getSelect());
+                            if(item.getSelect()){
+                                my_money_item_recharge_amount_2.setVisibility(View.VISIBLE);
+                                my_money_item_recharge_amount_iv.setImageDrawable(activity.getResources().getDrawable(R.mipmap.myprice_off));
+                            }else {
+                                my_money_item_recharge_amount_2.setVisibility(View.GONE);
+                                my_money_item_recharge_amount_iv.setImageDrawable(activity.getResources().getDrawable(R.mipmap.myprice_on));
+                            }
+                        }
+                    });
                     return true;
                 }
             };
@@ -90,9 +126,11 @@ public abstract class AbsFgtMyMoney extends BaseFragment {
                 @Override
                 public void onLoad() {
                     swipe_container.setLoading(false);
-                    if(list.size() % per_page == 0)
+                    if(list.size() >= per_page * page){
                         page++;
-                    initData();
+                        initData();
+                    }
+
                 }
             });
             initData();

+ 4 - 3
app/src/main/java/com/kfzs/duanduan/fragment/FgtMyMoney3.java

@@ -1,6 +1,7 @@
 package com.kfzs.duanduan.fragment;
 
 import com.sheep.gamegroup.model.entity.BaseMessage;
+import com.sheep.gamegroup.model.entity.RechargeLogEntity;
 import com.sheep.gamegroup.model.entity.RechargeQQLog;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 
@@ -15,12 +16,12 @@ import rx.Observable;
  */
 public class FgtMyMoney3 extends AbsFgtMyMoney {
     @Override
-    protected List<RechargeQQLog> getDatas(BaseMessage baseMessage) {
-        return baseMessage.getDatas(RechargeQQLog.class);
+    protected List<RechargeLogEntity> getDatas(BaseMessage baseMessage) {
+        return baseMessage.getDatas(RechargeLogEntity.class);
     }
 
     @Override
     protected Observable<BaseMessage> initObservable(int page, int per_page) {
-        return SheepApp.getInstance().getNetComponent().getApiService().getRechargeQQLog(page, per_page);
+        return SheepApp.getInstance().getNetComponent().getApiService().rechargeLog(page, per_page);
     }
 }

+ 39 - 24
app/src/main/java/com/kfzs/duanduan/fragment/FgtPersonalCenter.java

@@ -16,6 +16,7 @@ import com.bumptech.glide.request.RequestOptions;
 import com.kfzs.duanduan.BaseCompatFragment;
 import com.kfzs.duanduan.utils.ApkUtils;
 import com.sheep.gamegroup.absBase.BaseActivity;
+import com.sheep.gamegroup.model.entity.AgentEntity;
 import com.sheep.gamegroup.model.entity.BaseMessage;
 import com.sheep.gamegroup.model.entity.DialogConfig;
 import com.sheep.gamegroup.model.entity.Ext;
@@ -78,21 +79,43 @@ public class FgtPersonalCenter extends BaseCompatFragment {
     }
 
     private void initData() {
-        SheepApp.getInstance().getNetComponent().getApiService().getInfo()
-                .subscribeOn(Schedulers.io())
-                .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new SheepSubscriber<BaseMessage>(getContext()) {
-                    @Override
-                    public void onNext(BaseMessage baseMessage) {
-                        LogUtil.println("baseMessage onNext " + JSON.toJSONString(baseMessage));
-                        updateData(baseMessage);
-                    }
+        //代理
+        CommonUtil.getInstance().getAgencyState(activity, new Action1<BaseMessage>() {
+            @Override
+            public void call(BaseMessage baseMessage) {
+                try{
+                    if (baseMessage != null){
+                        AgentEntity agentEntity = baseMessage.getData(AgentEntity.class);
+                        if(agentEntity != null){
+                            SpUtils.saveAgencyState(1);
+                        }else {
+                            SpUtils.saveAgencyState(0);
+                        }
 
-                    @Override
-                    public void onError(BaseMessage baseMessage) {
-                        LogUtil.println("baseMessage onError " + JSON.toJSONString(baseMessage));
+                    }else {
+                        SpUtils.saveAgencyState(0);
                     }
-                });
+                }catch (Exception e){
+                    e.printStackTrace();
+                }
+                SheepApp.getInstance().getNetComponent().getApiService().getInfo()
+                        .subscribeOn(Schedulers.io())
+                        .observeOn(AndroidSchedulers.mainThread())
+                        .subscribe(new SheepSubscriber<BaseMessage>(getContext()) {
+                            @Override
+                            public void onNext(BaseMessage baseMessage) {
+                                LogUtil.println("baseMessage onNext " + JSON.toJSONString(baseMessage));
+                                updateData(baseMessage);
+                            }
+
+                            @Override
+                            public void onError(BaseMessage baseMessage) {
+                                LogUtil.println("baseMessage onError " + JSON.toJSONString(baseMessage));
+                            }
+                        });
+            }
+        });
+
         if (TextUtils.isEmpty(faqUrl))
             SheepApp.getInstance().getNetComponent().getApiService().getFaqUrl()
                     .subscribeOn(Schedulers.io())
@@ -132,15 +155,7 @@ public class FgtPersonalCenter extends BaseCompatFragment {
                         }
                     });
 
-        //代理
-        CommonUtil.getInstance().getAgencyState(activity, new Action1<BaseMessage>() {
-            @Override
-            public void call(BaseMessage baseMessage) {
-                if (baseMessage != null){
-                    SpUtils.saveAgencyState(baseMessage.getCode());
-                }
-            }
-        });
+
         String appVersonName = ApkUtils.getCurrentPkgVersionName(SheepApp.getInstance());
         version_item_tv.setText("小绵羊V");
         version_item_tv.append(appVersonName);
@@ -176,10 +191,10 @@ public class FgtPersonalCenter extends BaseCompatFragment {
         //设置是否显示代理服务
         proxy_service_layout_line.setVisibility(
 //                BuildConfig.DEBUG ||
-                userEntitys.getIs_agent() == 1 ? View.VISIBLE : View.GONE);
+                SpUtils.getAgencyState() == 1 ? View.VISIBLE : View.GONE);
         proxy_service_layout.setVisibility(
 //                BuildConfig.DEBUG ||
-                userEntitys.getIs_agent() == 1 ? View.VISIBLE : View.GONE);
+                SpUtils.getAgencyState() == 1 ? View.VISIBLE : View.GONE);
     }
 
     @Override

+ 4 - 1
app/src/main/java/com/kfzs/duanduan/react/upfile/UpFileUtils.java

@@ -4,6 +4,7 @@ package com.kfzs.duanduan.react.upfile;
 import android.graphics.Bitmap;
 
 import com.nanchen.compresshelper.CompressHelper;
+import com.sheep.gamegroup.model.util.ExceptionHandle;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.zhy.http.okhttp.OkHttpUtils;
 import com.zhy.http.okhttp.callback.Callback;
@@ -89,7 +90,9 @@ public class UpFileUtils {
 
                             @Override
                             public void onError(Call call, Exception e, int id) {
-                                upFileListener.Failure(e.toString());
+                                //访问获得对应的Exception
+                                ExceptionHandle.ResponeThrowable throwable = ExceptionHandle.handleException(e);
+                                upFileListener.Failure(throwable.message+"");
                             }
 
                             @Override

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

@@ -581,5 +581,10 @@ public interface ApiService {
      */
     @GET("app/agent/region")
     Observable<BaseMessage> agentRegion();
+    /**
+     * 充值记录
+     */
+    @GET("app/user/recharge_log")
+    Observable<BaseMessage> rechargeLog(@Query("page") int page, @Query("per_page") int per_page);
 
 }

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

@@ -0,0 +1,72 @@
+package com.sheep.gamegroup.model.entity;
+
+/**
+ * 获取用户当前代理级别
+ * Created by ljy on 2018/6/27.
+ */
+
+public class AgentEntity {
+    private String adcode;// 0,行政区域编码
+    private String area_id;// 0,
+    private String create_time;// 0,创建时间
+    private String level;// 0,层级,大区设置为1,省级设置为2,市级3,区县级4,乡镇级5
+    private String name;//private String string",
+    private String p_adcode;// 0,上级的adcode
+    private String update_time;// 0\自动更新时间
+
+    public String getAdcode() {
+        return adcode;
+    }
+
+    public void setAdcode(String adcode) {
+        this.adcode = adcode;
+    }
+
+    public String getArea_id() {
+        return area_id;
+    }
+
+    public void setArea_id(String area_id) {
+        this.area_id = area_id;
+    }
+
+    public String getCreate_time() {
+        return create_time;
+    }
+
+    public void setCreate_time(String create_time) {
+        this.create_time = create_time;
+    }
+
+    public String getLevel() {
+        return level;
+    }
+
+    public void setLevel(String level) {
+        this.level = level;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getP_adcode() {
+        return p_adcode;
+    }
+
+    public void setP_adcode(String p_adcode) {
+        this.p_adcode = p_adcode;
+    }
+
+    public String getUpdate_time() {
+        return update_time;
+    }
+
+    public void setUpdate_time(String update_time) {
+        this.update_time = update_time;
+    }
+}

+ 3 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/ILog.java

@@ -13,4 +13,7 @@ public interface ILog {
     boolean isEventSuccess();
 
     long getEventTime();
+
+    void isSelect(boolean b);
+    boolean getSelect();
 }

+ 20 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/RechargeBalanceLog.java

@@ -26,6 +26,16 @@ public class RechargeBalanceLog implements ILog{
 
     private int Status;
 
+    private boolean isSelect;
+
+    public boolean isSelect() {
+        return isSelect;
+    }
+
+    public void setSelect(boolean select) {
+        isSelect = select;
+    }
+
     public void setUserId(int UserId){
         this.UserId = UserId;
     }
@@ -104,4 +114,14 @@ public class RechargeBalanceLog implements ILog{
     public long getEventTime() {
         return UpdateTime;
     }
+
+    @Override
+    public void isSelect(boolean b) {
+        setSelect(b);
+    }
+
+    @Override
+    public boolean getSelect() {
+        return isSelect();
+    }
 }

+ 180 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/RechargeLogEntity.java

@@ -0,0 +1,180 @@
+package com.sheep.gamegroup.model.entity;//
+
+import java.util.Locale;
+
+/**
+ * 充值记录
+ * Created by ljy on 2018/6/27.
+ */
+
+public class RechargeLogEntity implements ILog {
+    private int From1;//	integer($int64)1:完成任务 2提现审核不通过退钱 3微信挂机赚钱 4下级完成任务提成 5贷款 6注册奖励 7旧版同步过来的 8第三方充值 9新手任务 10Q币充值失败退钱11:提现 12游戏充值 13 购买APP Store充值卡 14 充值Q币 15打卡报名 16实名认证费用 17游戏消费 18扣除游戏抵扣券 19代理代充 21打卡奖励 22代理提成 23增加游戏抵扣券
+
+    private String Status;//	string
+    private String Title;//	string
+    private double amount;//	number($double)金额
+
+    private int create_time;//integer($int64)记录时间
+
+    private String detail_desc;//	string明细描述
+
+    private int id;//	integer($int64)
+    private int relate_user;//	integer($int64)关联用户id
+
+    private int release_task_id;//	integer($int64)已发布任务id
+
+    private double surplus_amount;//	number($double)剩余金额
+
+    private int type;//	integer($int64)1:进钱 2出钱
+
+    private int user_id;//integer($int64)用户id
+
+    private String wx_account;//string微信账
+    private boolean isSelect;
+
+    public boolean isSelect() {
+        return isSelect;
+    }
+
+    public void setSelect(boolean select) {
+        isSelect = select;
+    }
+
+    public int getFrom1() {
+        return From1;
+    }
+
+    public void setFrom1(int from1) {
+        From1 = from1;
+    }
+
+    public String getStatus() {
+        return Status;
+    }
+
+    public void setStatus(String status) {
+        Status = status;
+    }
+
+    public String getTitle() {
+        return Title;
+    }
+
+    public void setTitle(String title) {
+        Title = title;
+    }
+
+    public double getAmount() {
+        return amount;
+    }
+
+    public void setAmount(double amount) {
+        this.amount = amount;
+    }
+
+    public int getCreate_time() {
+        return create_time;
+    }
+
+    public void setCreate_time(int create_time) {
+        this.create_time = create_time;
+    }
+
+    public String getDetail_desc() {
+        return detail_desc;
+    }
+
+    public void setDetail_desc(String detail_desc) {
+        this.detail_desc = detail_desc;
+    }
+
+    public int getId() {
+        return id;
+    }
+
+    public void setId(int id) {
+        this.id = id;
+    }
+
+    public int getRelate_user() {
+        return relate_user;
+    }
+
+    public void setRelate_user(int relate_user) {
+        this.relate_user = relate_user;
+    }
+
+    public int getRelease_task_id() {
+        return release_task_id;
+    }
+
+    public void setRelease_task_id(int release_task_id) {
+        this.release_task_id = release_task_id;
+    }
+
+    public double getSurplus_amount() {
+        return surplus_amount;
+    }
+
+    public void setSurplus_amount(double surplus_amount) {
+        this.surplus_amount = surplus_amount;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public int getUser_id() {
+        return user_id;
+    }
+
+    public void setUser_id(int user_id) {
+        this.user_id = user_id;
+    }
+
+    public String getWx_account() {
+        return wx_account;
+    }
+
+    public void setWx_account(String wx_account) {
+        this.wx_account = wx_account;
+    }
+
+    @Override
+    public String getStateText() {
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append(type== 1?"+ ":"- ");
+        stringBuffer.append(String.format(Locale.CHINA,"%.2f元", amount));
+        return stringBuffer.toString()+"";
+    }
+
+    @Override
+    public String getEventText() {
+        return detail_desc;
+    }
+
+    @Override
+    public boolean isEventSuccess() {
+        return type== 1;
+    }
+
+    @Override
+    public long getEventTime() {
+        return create_time;
+    }
+
+
+    @Override
+    public void isSelect(boolean b) {
+        setSelect(b);
+    }
+
+    @Override
+    public boolean getSelect() {
+        return isSelect();
+    }
+}

+ 19 - 0
app/src/main/java/com/sheep/gamegroup/model/entity/RechargeQQLog.java

@@ -27,6 +27,15 @@ public class RechargeQQLog implements ILog{
     private int user_id;
 
     private int create_time;
+    private boolean isSelect;
+
+    public boolean isSelect() {
+        return isSelect;
+    }
+
+    public void setSelect(boolean select) {
+        isSelect = select;
+    }
 
     public void setAmount(float amount){
         this.amount = amount;
@@ -123,4 +132,14 @@ public class RechargeQQLog implements ILog{
     public long getEventTime() {
         return create_time;
     }
+
+    @Override
+    public void isSelect(boolean b) {
+        setSelect(b);
+    }
+
+    @Override
+    public boolean getSelect() {
+        return isSelect();
+    }
 }

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

@@ -24,6 +24,15 @@ public class WithdrawalEty implements ILog{
     private String user_id;// 0,
     private String wx_resp_content;// "string"
     private UserEntity user;
+    private boolean isSelect;
+
+    public boolean isSelect() {
+        return isSelect;
+    }
+
+    public void setSelect(boolean select) {
+        isSelect = select;
+    }
 
     public float getAmount() {
         return amount;
@@ -170,4 +179,14 @@ public class WithdrawalEty implements ILog{
     public long getEventTime() {
         return update_time;
     }
+
+    @Override
+    public void isSelect(boolean b) {
+        setSelect(b);
+    }
+
+    @Override
+    public boolean getSelect() {
+        return isSelect();
+    }
 }

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

@@ -71,7 +71,7 @@ public class ExceptionHandle {
             return ex;
         } else {
             ex = new ResponeThrowable(e, ERROR.UNKNOWN);
-            ex.message = "未知错误";//未知错误
+            ex.message = "服务器繁忙请稍候再试";//未知错误
             return ex;
         }
     }

+ 3 - 1
app/src/main/java/com/sheep/gamegroup/util/CommonUtil.java

@@ -952,7 +952,9 @@ public class CommonUtil {
                 .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.mContext) {
                     @Override
                     public void onError(BaseMessage baseMessage) {
-
+                        if(action1 != null){
+                            action1.call(null);
+                        }
                     }
 
                     @Override

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

@@ -356,7 +356,7 @@ public class DeviceIDUtil {
         return device_imei;
     }
 
-    private static String getimei(Context mContext) {
+    public static String getimei(Context mContext) {
         String imei = getSavaString(mContext, LOACL_IMEI, "");
         if (!TextUtils.isEmpty(imei)) {
             return imei;

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

@@ -1245,6 +1245,7 @@ public class Jump2View {
     public void goGameTaskOrderList(Context activity){
         Intent intent = new Intent(activity, GameTaskOrderListAct.class);
         activity.startActivity(intent);
+        UMConfigUtils.onEvent(UMConfigUtils.Event.ORDER_MANAGER);
     }
     public void testIntent(Context activity){
         PackageManager packageManager = activity.getPackageManager();
@@ -1285,6 +1286,6 @@ public class Jump2View {
                         context.startActivity(intent);
                     }
                 });
-//        UMConfigUtils.onEvent(UMConfigUtils.Event.SHEEP_CREDIT_CARD_DETAIL_WEB);
+        UMConfigUtils.onEvent(UMConfigUtils.Event.XIANWAN_WEBVIEW);
     }
 }

+ 2 - 0
app/src/main/java/com/sheep/gamegroup/util/UMConfigUtils.java

@@ -79,6 +79,8 @@ public class UMConfigUtils {
         SHEEP_TIXIAN_COMMIT           ,//点击 提现提交按钮 5049
         SHEEP_SEQUENTIAL_TASK           ,//点击进入连续任务界面 5050
         SHEEP_GAME_TASK           ,//点击进入游戏任务界面 5051
+        XIANWAN_WEBVIEW           ,//闲玩 5052
+        ORDER_MANAGER           ,//订单管理 5053
         ;
         private String key;
         Event(String key){

+ 20 - 5
app/src/main/java/com/sheep/gamegroup/util/WebviewJs.java

@@ -14,6 +14,8 @@ import com.arialyy.aria.core.download.DownloadTask;
 import com.arialyy.aria.core.inf.IEntity;
 import com.kfzs.duanduan.datashare.DDProviderHelper;
 import com.kfzs.duanduan.datashare.provider.download.DownLoadInfo;
+import com.kfzs.duanduan.event.BigEvent;
+import com.kfzs.duanduan.event.EventTypes;
 import com.kfzs.duanduan.services.DownloadTaskService;
 import com.sheep.gamegroup.model.entity.UserEntity;
 import com.sheep.jiuyan.samllsheep.SheepApp;
@@ -24,6 +26,8 @@ import com.sheep.jiuyan.samllsheep.utils.SpUtils;
 import com.zhy.http.okhttp.OkHttpUtils;
 import com.zhy.http.okhttp.callback.FileCallBack;
 
+import org.greenrobot.eventbus.EventBus;
+
 import java.io.File;
 
 import okhttp3.Call;
@@ -190,10 +194,10 @@ public class WebviewJs {
      */
     private void downLoad(String packName){
         if (mDownloadTaskService == null){
-            return;
+            mDownloadTaskService = new DownloadTaskService(activity);
         }
-        Aria.download(this).register();
-        DownloadTarget task = Aria.download(this).load(packName);
+//        Aria.download(this).register();
+        DownloadTarget task = Aria.download(activity).load(packName);
         DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(packName);
         if(downLoadInfo == null){
             downLoadInfo = CommonUtil.getInstance()
@@ -207,14 +211,25 @@ public class WebviewJs {
             task.cancel(true);
             task.removeRecord();
         } else {
+            G.showToast("开始下载中!");
             mDownloadTaskService.start(downLoadInfo);
+            final DownLoadInfo finalDownLoadInfo = downLoadInfo;
+            new Thread(new Runnable() {
+                @Override
+                public void run() {
+                    if(mDownloadTaskService.addDownloadTask(finalDownLoadInfo)){
+                        //发送红点信息
+                        EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.TIPS_DOWN_ICON));
+                    }
+                }
+            }).start();
         }
     }
 
     @Download.onTaskFail
     void taskFail(DownloadTask downloadTask){
         if(mDownloadTaskService == null)
-            return;
+            mDownloadTaskService = new DownloadTaskService(activity);
         DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(downloadTask.getKey());
         if(downLoadInfo != null){
             G.showToast("下载失败");
@@ -224,7 +239,7 @@ public class WebviewJs {
     @Download.onTaskComplete
     void taskComplete(DownloadTask downloadTask){
         if(mDownloadTaskService == null)
-            return;
+            mDownloadTaskService = new DownloadTaskService(activity);
         DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(downloadTask.getKey());
         if(downLoadInfo != null){
             G.showToast("下载成功");

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

@@ -88,7 +88,7 @@ public class ActMyMoney extends BaseActivity {
     private void new_tab(){
         indicator.addTab(indicator.newTab().setCustomView(tab_icon("充值记录", true)));
         indicator.addTab(indicator.newTab().setCustomView(tab_icon("提现记录", true)));
-        indicator.addTab(indicator.newTab().setCustomView(tab_icon("消费记录", false)));
+        indicator.addTab(indicator.newTab().setCustomView(tab_icon("收支明细", false)));
         //Tablayout自定义view绑定ViewPager
         pager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(indicator));
         indicator.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(pager));

+ 25 - 3
app/src/main/java/com/sheep/gamegroup/view/activity/ActXinwanWeb.java

@@ -4,6 +4,7 @@ import android.app.Activity;
 import android.os.Build;
 import android.os.Bundle;
 import android.util.Log;
+import android.view.KeyEvent;
 import android.view.View;
 import android.webkit.WebChromeClient;
 import android.webkit.WebSettings;
@@ -14,6 +15,7 @@ import android.widget.TextView;
 import com.kfzs.duanduan.BaseCompatActivity;
 import com.sheep.gamegroup.model.entity.XianWanEntity;
 import com.sheep.gamegroup.util.CommonUtil;
+import com.sheep.gamegroup.util.DeviceIDUtil;
 import com.sheep.gamegroup.util.DeviceUtil;
 import com.sheep.gamegroup.util.MyDbManager;
 import com.sheep.gamegroup.util.WebviewJs;
@@ -56,7 +58,16 @@ public class ActXinwanWeb extends BaseCompatActivity {
         TitleBarUtils
                 .getInstance()
                 .setTitle(this, "闲玩")
-                .setTitleFinish(this);
+                .setTitleFinish(this, new View.OnClickListener() {
+                    @Override
+                    public void onClick(View v) {
+                        if(mWebView.canGoBack()){
+                            mWebView.goBack();
+                        }else {
+                            activity.finish();
+                        }
+                    }
+                });
         tv_next.setVisibility(View.GONE);
         if(xianWanEntity == null){
             return;
@@ -129,6 +140,17 @@ public class ActXinwanWeb extends BaseCompatActivity {
         webViewSettings.setJavaScriptEnabled(true);
         mWebView.addJavascriptInterface(new WebviewJs(activity, 0), "android");
         mWebView.loadUrl(assemblyData());
+
+        mWebView.setOnKeyListener(new View.OnKeyListener() {
+            @Override
+            public boolean onKey(View v, int keyCode, KeyEvent event) {
+                if(keyCode == KeyEvent.KEYCODE_BACK && mWebView.canGoBack()){
+                    mWebView.goBack();
+                    return true;
+                }
+                return false;
+            }
+        });
     }
 
     @Override
@@ -157,12 +179,12 @@ public class ActXinwanWeb extends BaseCompatActivity {
         StringBuffer stringBuffer = new StringBuffer();
         stringBuffer.append(xianWanEntity.getUrl()+"?");
         stringBuffer.append("ptype="+"2");
-        stringBuffer.append("&deviceid="+ DeviceUtil.getDeviceId(activity));
+        stringBuffer.append("&deviceid="+ DeviceIDUtil.getimei(activity));
         stringBuffer.append("&appid="+ xianWanEntity.getAndroid().getAppid());
         stringBuffer.append("&appsign="+ MyDbManager.getInstance().dbFindId());
         stringBuffer.append("&keycode="+CommonUtil.getInstance().encrypt2Md5(
                 xianWanEntity.getAndroid().getAppid()+""+
-                        DeviceUtil.getDeviceId(activity) +
+                        DeviceIDUtil.getimei(activity) +
                         2 +
                         MyDbManager.getInstance().dbFindId() +
                         xianWanEntity.getAndroid().getAppsecret()

+ 66 - 19
app/src/main/java/com/sheep/gamegroup/view/adapter/TryMakeMoneyAdp.java

@@ -19,6 +19,8 @@ import com.bumptech.glide.request.RequestOptions;
 import com.kfzs.appstore.utils.adapter.recyclerview.ViewHolder;
 import com.kfzs.duanduan.adp.AdpCommonRecy;
 import com.kfzs.duanduan.datashare.provider.download.DownLoadInfo;
+import com.kfzs.duanduan.event.BigEvent;
+import com.kfzs.duanduan.event.EventTypes;
 import com.kfzs.duanduan.services.DownloadTaskService;
 import com.kfzs.duanduan.utils.ApkUtils;
 import com.sheep.gamegroup.model.entity.OrienteeringDetail;
@@ -36,11 +38,14 @@ import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.gamegroup.util.TimeUtil;
 import com.sheep.gamegroup.util.UMConfigUtils;
 import com.sheep.gamegroup.util.ViewUtil;
+import com.sheep.gamegroup.view.activity.TaskDetailAct;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
 import com.sheep.jiuyan.samllsheep.utils.G;
 import com.sheep.jiuyan.samllsheep.utils.PackageUtil;
 
+import org.greenrobot.eventbus.EventBus;
+
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -49,6 +54,8 @@ import java.util.Set;
 
 import javax.inject.Inject;
 
+import rx.functions.Action1;
+
 import static com.sheep.gamegroup.model.entity.RecyleType.RUN_TASK;
 
 /**
@@ -200,22 +207,47 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
 
                 //CommonUtil.getInstance().getCharSequence(context, etyList.get(i).getName(), "")
                 ((TextView)viewHolder.itemView.findViewById(R.id.item_anem_tv)).setText(etyList.get(i).getName()+"");
-                TextView task_type_tv = viewHolder.itemView.findViewById(R.id.task_type_tv);
+                final TextView task_type_tv = viewHolder.itemView.findViewById(R.id.task_type_tv);
                 task_type_tv.setVisibility(View.VISIBLE);
                 viewHolder.itemView.findViewById(R.id.item_money).setVisibility(View.GONE);
                 //领取任务
                 final boolean isInstall = PackageUtil.isAppInstalled(SheepApp.mContext, etyList.get(i).getPackage_name());
+                boolean isExistApk = !TextUtils.isEmpty(PackageUtil.isExistsFile(etyList.get(i).getPackage_name()));
+                final DownloadTaskService mDownloadTaskService = new DownloadTaskService(context);
+
                 String taskTypeTvValue;
                 if(isInstall){//已经安装
                     taskTypeTvValue = "启动游戏";
-//                    PackageUtil.startApp(SheepApp.mContext, etyList.get(i).getPackage_name());
-                }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(etyList.get(i).getPackage_name()))){
-                    taskTypeTvValue = "安装游戏";
-//                    ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(etyList.get(i).getPackage_name()));
-                }else {
-                    taskTypeTvValue = "下载游戏";
+                }else{
+                    DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(etyList.get(i).getDownload_url());
+                    if(downLoadInfo == null) {
+                        taskTypeTvValue = "下载游戏";
+                    }else {
+                        Integer mStatus = downLoadInfo.getMStatus();
+                        int taskState = mStatus == null ? 0 : mStatus;
+                        switch (taskState) {
+                            case DownloadTaskService.STATUS_ING:
+                                taskTypeTvValue = Math.abs(downLoadInfo.getMPercent()) + "%";
+                                break;
+                            case DownloadTaskService.STATUS_PAUSE:
+                                taskTypeTvValue = CommonUtil.CONTINUE_DOWNLOAD;
+                                break;
+                            case DownloadTaskService.STATUS_FINISH:
+                                if(isExistApk){
+                                    taskTypeTvValue = "安装游戏";
+                                } else {
+                                    taskTypeTvValue = CommonUtil.START_DOWNLOAD;
+                                }
+                                break;
+                            case DownloadTaskService.STATUS_FAIL:
+                                taskTypeTvValue = CommonUtil.FAIL_DOWNLOAD;
+                                break;
+                            default:
+                                taskTypeTvValue = CommonUtil.START_DOWNLOAD;
+                                break;
+                        }
+                    }
                 }
-
                 task_type_tv.setText(taskTypeTvValue+"");
                 task_type_tv.findViewWithTag(PUBLIC_TAG_PREFIX_TEXTVIEW_LIST + etyList.get(i).getDownload_url());
 //                ((TextView)viewHolder.itemView.findViewById(R.id.item_num_tv)).setText("剩余"+ etyList.get(i).getLast_num()+"份");
@@ -224,18 +256,33 @@ public class TryMakeMoneyAdp extends AdpCommonRecy<RecyleObj> {
                 task_type_tv.setOnClickListener(new View.OnClickListener() {
                     @Override
                     public void onClick(View v) {
-                        if(isInstall){//已经安装
-                            PackageUtil.startApp(SheepApp.mContext, etyList.get(i).getPackage_name());
-                        }else if(!TextUtils.isEmpty(PackageUtil.isExistsFile(etyList.get(i).getPackage_name()))){
-                            ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(etyList.get(i).getPackage_name()));
-                        }else {
-                            try{
-                                DownloadTaskService mDownloadTaskService = new DownloadTaskService(context);
-                                DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(etyList.get(i));
-                                mDownloadTaskService.start(downLoadInfo);
-                            }catch (Exception e){
-                                e.printStackTrace();
+                        try{
+                            switch (task_type_tv.getText().toString().trim() +""){
+                                case "安装游戏":
+                                    ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(etyList.get(i).getPackage_name()));
+                                    PackageUtil.startApp(SheepApp.mContext, etyList.get(i).getPackage_name());
+                                    break;
+                                case "启动游戏":
+                                    ApkUtils.installApk(SheepApp.mContext, PackageUtil.isExistsFile(etyList.get(i).getPackage_name()));
+                                    PackageUtil.startApp(SheepApp.mContext, etyList.get(i).getPackage_name());
+                                    break;
+                                default:
+                                    final DownLoadInfo downLoadInfo = mDownloadTaskService.getDownloadTaskByUrl(etyList.get(i));
+                                    mDownloadTaskService.start(downLoadInfo);
+                                    new Thread(new Runnable() {
+                                        @Override
+                                        public void run() {
+                                            if(mDownloadTaskService.addDownloadTask(downLoadInfo)){
+                                                //发送红点信息
+                                                EventBus.getDefault().post(BigEvent.get().setEventTypes(EventTypes.TIPS_DOWN_ICON));
+                                            }
+                                        }
+                                    }).start();
+                                    break;
                             }
+                        }catch (Exception e){
+                            e.printStackTrace();
+                            G.showToast("服务器繁忙,请稍候再试!");
                         }
                     }
                 });

+ 4 - 0
app/src/main/java/com/sheep/gamegroup/view/fragment/FgtMyGame.java

@@ -213,6 +213,7 @@ public class FgtMyGame extends BaseFragment {
                 return;
             }
             tvProgress.setText(String.format(Locale.CHINA, "%d%%",Math.abs(p)));
+            tryMakeMoneyAdp.notifyDataSetChanged();
 
         } catch (Exception e) {
             e.printStackTrace();
@@ -235,6 +236,7 @@ public class FgtMyGame extends BaseFragment {
                 return;
             }
             tvProgress.setText("已经取消");
+            tryMakeMoneyAdp.notifyDataSetChanged();
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -249,6 +251,7 @@ public class FgtMyGame extends BaseFragment {
                 return;
             }
             tvProgress.setText("下载失败");
+            tryMakeMoneyAdp.notifyDataSetChanged();
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -262,6 +265,7 @@ public class FgtMyGame extends BaseFragment {
                 return;
             }
             tvProgress.setText("开始安装");
+            tryMakeMoneyAdp.notifyDataSetChanged();
         } catch (Exception e) {
             e.printStackTrace();
         }

+ 1 - 1
app/src/main/java/com/sheep/jiuyan/samllsheep/utils/SpUtils.java

@@ -192,7 +192,7 @@ public class SpUtils {
 
     /**
      * 保存代理显示状态
-     * @param vaule
+     * @param vaule  1:显示 0:不显示
      */
     public static void saveAgencyState(int vaule) {
         SharedPreferences user = SheepApp.getInstance().getSharedPreferences("agency_state", Context.MODE_PRIVATE);

+ 36 - 7
app/src/main/res/layout/x_my_money_act_layout_item.xml

@@ -18,16 +18,32 @@
         android:padding="@dimen/content_padding_10"
         android:orientation="horizontal">
 
-        <TextView
-            android:id="@+id/my_money_item_recharge_amount"
+        <LinearLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
             android:layout_weight="1"
-            android:gravity="start"
-            android:singleLine="true"
-            android:text="充值金额100.00元"
-            android:textColor="#282828"
-            android:textSize="12sp" />
+            android:orientation="horizontal"
+            android:gravity="center_vertical">
+            <TextView
+                android:id="@+id/my_money_item_recharge_amount"
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:gravity="start"
+                android:singleLine="true"
+                android:ellipsize="end"
+                android:text="充值金额100.00元"
+                android:textColor="#282828"
+                android:textSize="12sp" />
+
+            <ImageView
+                android:id="@+id/my_money_item_recharge_amount_iv"
+                android:layout_width="15dp"
+                android:layout_height="15dp"
+                android:src="@mipmap/myprice_on"
+                android:layout_marginLeft="@dimen/content_padding_1"
+                android:visibility="invisible"/>
+        </LinearLayout>
 
         <TextView
             android:id="@+id/my_money_item_recharge_status"
@@ -53,6 +69,19 @@
 
     </LinearLayout>
 
+    <TextView
+        android:id="@+id/my_money_item_recharge_amount_2"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_weight="1"
+        android:gravity="start"
+        android:singleLine="true"
+        android:text="充值金额100.00元"
+        android:textColor="#282828"
+        android:textSize="12sp"
+        android:padding="@dimen/content_padding_10"
+        android:layout_marginTop="@dimen/content_padding_1"
+        android:visibility="gone"/>
     <View
         android:id="@+id/my_money_item_bottom"
         android:layout_width="match_parent"

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


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