From 4c7cde7ae5ed57335405459e47de4bbd2726c4ba Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 07 五月 2022 19:43:39 +0800
Subject: [PATCH] 功能完善

---
 android/app/src/main/java/com/yeshi/makemoney/video/app/ui/main/DYNewsFragment.java |  108 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 103 insertions(+), 5 deletions(-)

diff --git a/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/main/DYNewsFragment.java b/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/main/DYNewsFragment.java
index c9a233c..7833a15 100644
--- a/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/main/DYNewsFragment.java
+++ b/android/app/src/main/java/com/yeshi/makemoney/video/app/ui/main/DYNewsFragment.java
@@ -1,6 +1,7 @@
 package com.yeshi.makemoney.video.app.ui.main;
 
 import android.os.Bundle;
+import android.text.GetChars;
 import android.util.Log;
 import android.view.View;
 
@@ -12,7 +13,16 @@
 import com.demo.lib.common.RetainViewFragment;
 import com.demo.lib.common.util.common.DimenUtils;
 import com.jaeger.library.StatusBarUtil;
-import com.yeshi.makemoney.video.app.R;
+import com.yeshi.makemoney.video.R;
+import com.yeshi.makemoney.video.app.utils.SettingUtil;
+import com.yeshi.makemoney.video.app.utils.UserUtil;
+import com.yeshi.makemoney.video.app.utils.api.BasicTextHttpResponseHandler;
+import com.yeshi.makemoney.video.app.utils.api.HttpApiUtil;
+import com.yeshi.makemoney.video.app.utils.videos.NewsGoldCornUtil;
+import com.yeshi.makemoney.video.app.utils.videos.VideoGoldCornUtil;
+
+import org.apache.http.Header;
+import org.json.JSONObject;
 
 import java.util.Map;
 
@@ -22,6 +32,12 @@
  * 涓婚〉闈�--蹇墜瑙嗛
  */
 public class DYNewsFragment extends RetainViewFragment {
+
+    //鏈�灏戠殑娴忚鏃堕棿
+    private final Long MIN_SPACE_TIME = 1000 * 5L;
+
+    private AQuery mAquery;
+
     private static final String TAG = "DYNewsFragment";
     private IDPWidget mIDPWidget;
 
@@ -29,7 +45,7 @@
         super();
     }
 
-    private Fragment fragment;
+    private long startTime;
 
 
     @Override
@@ -68,15 +84,43 @@
         if (mIDPWidget != null && mIDPWidget.getFragment() != null) {
             mIDPWidget.getFragment().onHiddenChanged(hidden);
         }
+        refreshNotify();
     }
 
     @Override
     public void onCreateView(View contentView, Bundle savedInstanceState) {
         Log.i(TAG, "onCreateView");
         StatusBarUtil.setDarkMode(getActivity());
-        AQuery mAquery = new AQuery(contentView);
+        mAquery = new AQuery(contentView);
         mAquery.id(R.id.view_status_bar).height(DimenUtils.px2dip(getContext(), DimenUtils.getStatusBarHeight(getContext())));
+
+        mAquery.id(R.id.iv_close).clicked(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                closeNotify();
+            }
+        });
+        refreshNotify();
         initNewsWidget();
+    }
+
+    private void refreshNotify() {
+        if (mAquery == null) {
+            return;
+        }
+        if (SettingUtil.getSetting(SettingUtil.SettingKey.showNewsNotify, getContext())) {
+            mAquery.id(R.id.fl_notify).visibility(View.VISIBLE);
+        } else {
+            mAquery.id(R.id.fl_notify).visibility(View.GONE);
+        }
+    }
+
+    private void closeNotify() {
+        if (mAquery == null) {
+            return;
+        }
+        mAquery.id(R.id.fl_notify).visibility(View.GONE);
+        SettingUtil.saveSetting(SettingUtil.SettingKey.showNewsNotify, false, getContext());
     }
 
     private void initNewsWidget() {
@@ -116,14 +160,28 @@
                     public void onDPNewsDetailEnter(Map<String, Object> map) {
                         log("onDPNewsDetailEnter");
 //                        DPEventCollectUtil.newsDetailEnter(getContext(), map);
+                        if (startTime == 0L) {
+                            startTime = System.currentTimeMillis();
+                        }
+
+                        if (System.currentTimeMillis() - startTime > MIN_SPACE_TIME) {
+                            startTime = System.currentTimeMillis();
+                            addCount();
+                        }
+
+
                     }
 
                     @Override
                     public void onDPNewsDetailExit(Map<String, Object> map) {
                         log("onDPNewsDetailExit");
+                        if (startTime > 0) {
+                            if (System.currentTimeMillis() - startTime > MIN_SPACE_TIME) {
+                                startTime = 0L;
+                                addCount();
+                            }
+                        }
                     }
-
-
                 }));
 
         Fragment fragment = mIDPWidget.getFragment();
@@ -136,5 +194,45 @@
         Log.d(TAG, String.valueOf(msg));
     }
 
+    private void addCount() {
+        NewsGoldCornUtil.addNewsCount(getContext());
+        if (!UserUtil.isLogin(getContext())) {
+            return;
+        }
+
+        int num = NewsGoldCornUtil.getNewsCount(getContext());
+        HttpApiUtil.scanNews(getContext(), num, new BasicTextHttpResponseHandler() {
+            @Override
+            public void onStart() {
+                super.onStart();
+            }
+
+            @Override
+            public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception {
+                super.onSuccessPerfect(statusCode, headers, jsonObject);
+                if (jsonObject.optInt("code") == 0) {
+                    //鍑忓幓涓婁紶鐨勬暟閲�
+                    NewsGoldCornUtil.setNewsCount(NewsGoldCornUtil.getNewsCount(getContext()) - num, getContext());
+                    //涓婁紶鎴愬姛
+                    JSONObject data = jsonObject.optJSONObject("data");
+                    VideoGoldCornUtil.showInComeToast(data.optInt("goldCorn"), getContext());
+                    closeNotify();
+                }
+            }
+
+            @Override
+            public void onFailure(int statusCode, Header[] headers, String jsonObject, Throwable e) {
+                super.onFailure(statusCode, headers, jsonObject, e);
+            }
+
+            @Override
+            public void onFinish() {
+                super.onFinish();
+            }
+        });
+
+
+    }
+
 
 }

--
Gitblit v1.8.0