From ae4dc86b64bd8ef85bc832106741fb98e8d516da Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期五, 11 六月 2021 17:15:03 +0800 Subject: [PATCH] 特价完善 --- app/src/main/java/com/tejia/lijin/app/ui/recommend/GoodsDetailActivity.java | 155 ++++++++++++++++++++++++++++++--------------------- 1 files changed, 91 insertions(+), 64 deletions(-) diff --git a/app/src/main/java/com/tejia/lijin/app/ui/recommend/GoodsDetailActivity.java b/app/src/main/java/com/tejia/lijin/app/ui/recommend/GoodsDetailActivity.java index 6009830..e82bc06 100644 --- a/app/src/main/java/com/tejia/lijin/app/ui/recommend/GoodsDetailActivity.java +++ b/app/src/main/java/com/tejia/lijin/app/ui/recommend/GoodsDetailActivity.java @@ -9,6 +9,7 @@ import android.graphics.Typeface; import android.graphics.drawable.AnimationDrawable; import android.graphics.drawable.GradientDrawable; +import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.os.Message; @@ -24,6 +25,8 @@ import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.view.animation.DecelerateInterpolator; +import android.webkit.WebChromeClient; +import android.webkit.WebResourceRequest; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; @@ -50,6 +53,7 @@ import com.tejia.lijin.app.entity.TaoBaoGoodsBrief; import com.tejia.lijin.app.entity.common.ImageShowEntity; import com.tejia.lijin.app.entity.goods.GoodsDetailVO; +import com.tejia.lijin.app.entity.user.UserLijinLevelInfoVO; import com.tejia.lijin.app.ui.BaseActivity; import com.tejia.lijin.app.ui.dialog.GoodsDetailHongBaoAndCouponSelectDialog; import com.tejia.lijin.app.ui.dialog.GoodsDetailJumpLoaingDialog; @@ -93,6 +97,7 @@ import java.util.List; import java.util.Timer; +import androidx.annotation.RequiresApi; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import androidx.viewpager.widget.PagerAdapter; @@ -309,6 +314,7 @@ animationDrawable.start(); webView.setWebViewClient(new MWebviewClient()); WebSettings settings = webView.getSettings(); + settings.setUserAgentString("Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"); settings.setJavaScriptEnabled(true); webView.setInitialScale(100); ll_loading.setVisibility(View.VISIBLE); @@ -582,20 +588,21 @@ } - public void showNotifyDialog() { - if (notifyDialog == null) - notifyDialog = new GoodsDetailNotifyDialog.Builder(this).setOnButtonClickListener(new GoodsDetailNotifyDialog.Builder.IDialogButtonClick() { - @Override - public void onLeftClick() { - DialogUtil.dismiss(notifyDialog); - } + public void showNotifyDialog(String btnName, String link) { + DialogUtil.dismiss(notifyDialog); - @Override - public void onRightClick() { - DialogUtil.dismiss(notifyDialog); - goFanli(); - } - }).create(); + notifyDialog = new GoodsDetailNotifyDialog.Builder(this).setLeftBtnInfo(btnName, link).setOnButtonClickListener(new GoodsDetailNotifyDialog.Builder.IDialogButtonClick() { + @Override + public void onLeftClick() { + DialogUtil.dismiss(notifyDialog); + } + + @Override + public void onRightClick() { + DialogUtil.dismiss(notifyDialog); + goFanli(); + } + }).create(); DialogUtil.show(notifyDialog); } @@ -627,11 +634,23 @@ if (null != url && url.startsWith("yestv://webviewHeight#")) { int height = Integer.parseInt(url.replace("yestv://webviewHeight#", "")); Log.i("mResult", "webView鐨勯珮搴︿负:" + height + ""); - //TODO 娴嬭瘯 webView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, height)); return true; } return super.shouldOverrideUrlLoading(view, url); + } + + @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) + @Override + public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { + String url = request.getUrl().toString(); + if (null != url && url.startsWith("yestv://webviewHeight#")) { + int height = Integer.parseInt(url.replace("yestv://webviewHeight#", "")); + Log.i("mResult", "webView鐨勯珮搴︿负:" + height + ""); + webView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, height)); + return true; + } + return super.shouldOverrideUrlLoading(view, request); } @Override @@ -644,6 +663,7 @@ } }, 3000); } + } private void getAppPageNotification() { @@ -1354,8 +1374,7 @@ @Override public void onStart() { super.onStart(); - if (loadingDialog != null && !loadingDialog.isShowing()) - loadingDialog.show(); + DialogUtil.show(loadingDialog); } @Override @@ -1365,49 +1384,20 @@ if (code == 0) { JSONObject data = jsonObject.optJSONObject("data"); JSONObject link = data.optJSONObject("link"); - if (link != null) { - GoodsBuyJumpUtil.jumpTB(GoodsDetailActivity.this, null, link.optString("clickUrl"), null, new GoodsBuyUtil.IBuyGoodsResultListener() { - - @Override - public void onConvertLinkStart() { - - } - - @Override - public void onConvertLinkSuccess() { - - } - - @Override - public void onConvertLinkFail(String msg) { - - } - - @Override - public void onConvertLinkComplete() { - - } - - @Override - public void onJumpThirdAppStart() { - - } - - @Override - public void onJumpThirdAppSuccess() { - - } - - @Override - public void onJumpThirdAppFail() { - - } - }); + UserLijinLevelInfoVO userLevel = null; + if (data.optJSONObject("userLevel") != null) { + userLevel = new Gson().fromJson(data.optJSONObject("userLevel").toString(), UserLijinLevelInfoVO.class); } + + if (link != null) { + final String linkUrl = link.optString("clickUrl"); + GoodsBuyJumpUtil.jumpTB(GoodsDetailActivity.this, null, linkUrl, linkUrl, userLevel, null); + } + } else { if (code == 2001) { //鐢ㄦ埛鏈轰細宸茬粡鐢ㄥ畬浜� - showNotifyDialog(); + getBuyChanceInfoRequest(); } else Toast.makeText(GoodsDetailActivity.this, jsonObject.optString("msg"), Toast.LENGTH_SHORT).show(); } @@ -1421,8 +1411,7 @@ @Override public void onFinish() { super.onFinish(); - if (loadingDialog != null && loadingDialog.isShowing()) - loadingDialog.dismiss(); + DialogUtil.dismiss(loadingDialog); } }); @@ -1441,24 +1430,22 @@ GoodsBuyUtil.fanli(this, getApplicationContext(), requestInfo, new GoodsBuyUtil.IBuyGoodsResultListener() { @Override public void onConvertLinkStart() { - if (loadingDialog != null && !loadingDialog.isShowing()) - loadingDialog.show(); + DialogUtil.show(loadingDialog); } @Override public void onConvertLinkSuccess() { - + DialogUtil.dismiss(loadingDialog); } @Override public void onConvertLinkFail(String msg) { - + DialogUtil.dismiss(loadingDialog); } @Override public void onConvertLinkComplete() { - if (loadingDialog != null && loadingDialog.isShowing()) - loadingDialog.dismiss(); + DialogUtil.dismiss(loadingDialog); } @Override @@ -1484,7 +1471,47 @@ * 鑾峰彇璐拱鏈轰細淇℃伅 */ private void getBuyChanceInfoRequest() { - //TODO 鍒ゆ柇鏄惁杩樻湁鏈轰細锛堣繑鍥炲綋鍓嶅墿浣欏灏戞锛岃繕鑳借В閿佸灏戞锛夛紝濡傛灉鏈夋満浼氶渶瑕佺湅婵�鍔辫棰戝箍鍛� + ShoppingApi.getUserLijinCreatedInfo(getApplicationContext(), mInfo.getGoods().getGoodsId(), mInfo.getGoods().getGoodsType(), UserUtil.getUid(getApplicationContext()), 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) { + JSONObject data = jsonObject.optJSONObject("data"); + int leftCount = data.optInt("leftCount"); +// if (leftCount <= 0) { + JSONObject openInfo = data.optJSONObject("openInfo"); + if (openInfo != null) { + showNotifyDialog(openInfo.optString("btnName"), openInfo.optString("vipLink")); + } else { + showNotifyDialog(null, null); + } +// } + + + } else { + Toast.makeText(GoodsDetailActivity.this, jsonObject.optString("msg"), Toast.LENGTH_SHORT).show(); + } + } + + @Override + public void onFailure(int statusCode, Header[] headers, String jsonObject, Throwable e) { + super.onFailure(statusCode, headers, jsonObject, e); + Toast.makeText(GoodsDetailActivity.this, "缃戠粶璇锋眰鍑洪敊", Toast.LENGTH_SHORT).show(); + } + + @Override + public void onFinish() { + super.onFinish(); + DialogUtil.dismiss(loadingDialog); + } + }); + + } } -- Gitblit v1.8.0