From 2f15a3456cc02a8baaabd578ff9e47e95773fdf1 Mon Sep 17 00:00:00 2001 From: hwf453 Date: Sat, 3 Aug 2024 15:24:22 +0800 Subject: [PATCH] =?UTF-8?q?1.1.2=E5=8F=91=E5=B8=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 +- app/src/main/AndroidManifest.xml | 18 +- .../main/java/com/rehome/dywoa/Contans.java | 18 +- .../com/rehome/dywoa/base/BaseFragment.java | 1 + .../rehome/dywoa/ui/activity/HomeActivity.kt | 1 + .../rehome/dywoa/ui/activity/LoginActivity.kt | 6 +- .../dywoa/ui/activity/RunLogActivity.java | 2 +- .../dywoa/ui/activity/RunLogBaseActivity.kt | 12 +- .../dywoa/ui/activity/UseCarActivity.kt | 231 +++++++++++++++ .../dywoa/ui/activity/UseSealActivity.kt | 221 ++++++++++++++ .../ui/activity/WaitForToDoActivity.java | 277 ++++++++++++++++++ .../ui/activity/WaitForToDoBaseActivity.java | 270 +++++++++++++++++ .../dywoa/ui/activity/sbxdjgl/CJFragment.java | 26 ++ .../ui/activity/sbxdjgl/SdjgzActivity.java | 2 +- .../ui/activity/sbxj/SbxjcjsbActivity.java | 9 +- .../dywoa/ui/activity/sbxj/SxgzActivity.java | 4 +- .../dywoa/ui/activity/sbxj/XJCJFragment.java | 7 + .../ui/activity/sbxj/XzxsjhFragment.java | 11 + .../dywoa/ui/fragment/HomeFragment.java | 125 +++++++- .../dywoa/ui/fragment/MineFragment.java | 79 +++++ .../com/rehome/dywoa/utils/DataPassUtils.java | 23 +- .../com/rehome/dywoa/utils/NohttpUtils.java | 6 +- .../main/res/drawable-xhdpi/icon_use_car.png | Bin 0 -> 1878 bytes .../main/res/drawable-xhdpi/icon_use_seal.png | Bin 0 -> 1544 bytes .../main/res/drawable-xxhdpi/icon_use_car.png | Bin 0 -> 2776 bytes .../res/drawable-xxhdpi/icon_use_seal.png | Bin 0 -> 2268 bytes .../res/drawable-xxxhdpi/icon_use_car.png | Bin 0 -> 3689 bytes .../res/drawable-xxxhdpi/icon_use_seal.png | Bin 0 -> 2973 bytes app/src/main/res/layout/activity_use_car.xml | 40 +++ app/src/main/res/layout/activity_use_seal.xml | 23 ++ .../res/layout/activity_wait_for_to_do.xml | 40 +++ .../layout/activity_wait_for_to_do_base.xml | 40 +++ app/src/main/res/layout/fragment_cj.xml | 1 + app/src/main/res/layout/fragment_home.xml | 3 +- app/src/main/res/layout/fragment_mine.xml | 50 ++++ app/src/main/res/layout/fragment_scjsj.xml | 257 ++++++++-------- app/src/main/res/layout/fragment_xjcj.xml | 26 +- 37 files changed, 1646 insertions(+), 187 deletions(-) create mode 100644 app/src/main/java/com/rehome/dywoa/ui/activity/UseCarActivity.kt create mode 100644 app/src/main/java/com/rehome/dywoa/ui/activity/UseSealActivity.kt create mode 100644 app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoActivity.java create mode 100644 app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoBaseActivity.java create mode 100644 app/src/main/res/drawable-xhdpi/icon_use_car.png create mode 100644 app/src/main/res/drawable-xhdpi/icon_use_seal.png create mode 100644 app/src/main/res/drawable-xxhdpi/icon_use_car.png create mode 100644 app/src/main/res/drawable-xxhdpi/icon_use_seal.png create mode 100644 app/src/main/res/drawable-xxxhdpi/icon_use_car.png create mode 100644 app/src/main/res/drawable-xxxhdpi/icon_use_seal.png create mode 100644 app/src/main/res/layout/activity_use_car.xml create mode 100644 app/src/main/res/layout/activity_use_seal.xml create mode 100644 app/src/main/res/layout/activity_wait_for_to_do.xml create mode 100644 app/src/main/res/layout/activity_wait_for_to_do_base.xml diff --git a/app/build.gradle b/app/build.gradle index 7f1d8ab..58c3588 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.rehome.dywoa" minSdk 24 targetSdk 34 - versionCode 12 - versionName "1.1.1" + versionCode 13 + versionName "1.1.2" multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" //每个应用拥有不同的authorities,防止相同的在同一个手机上无法同时安装 diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 9121093..23f694e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -78,6 +78,7 @@ tools:replace="android:allowBackup" tools:targetApi="s"> + + + + + - () { } }) } + } \ No newline at end of file diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/LoginActivity.kt b/app/src/main/java/com/rehome/dywoa/ui/activity/LoginActivity.kt index e1074b7..4d5f47d 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/LoginActivity.kt +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/LoginActivity.kt @@ -669,7 +669,7 @@ class LoginActivity : BaseActivityOaToolbarViewBinding() { // finish() } } else { - Log.i("login", userInfo.statusMsg) + showLog(userInfo.statusMsg) toastviewbymyself.makeText( context, userInfo.statusMsg, @@ -678,13 +678,13 @@ class LoginActivity : BaseActivityOaToolbarViewBinding() { } } else { showToast("服务器请求失败") - Log.i("app", "to gson is null") + showLog("to gson is null") } } } override fun onFailed(what: Int, response: Response?) { - Log.i("login", "onError") + showLog("onError") } }, true, true, "登录中...") } diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogActivity.java b/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogActivity.java index 326161a..e93b716 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogActivity.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogActivity.java @@ -147,7 +147,7 @@ public class RunLogActivity extends AppCompatActivity { private void getSingleLogin() { // String url = Contans.FW_SINGLE_LOGIN_IP + urlToken + App.getInstance().getUserInfo().getManid(); - String url = Contans.FW_SINGLE_LOGIN_IP + urlToken + "371543"; + String url = Contans.IP + urlToken + App.getInstance().getUserInfo().getManid(); Request request = NoHttp.createStringRequest(url, RequestMethod.GET); showLog(url); diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogBaseActivity.kt b/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogBaseActivity.kt index 633d004..3bc0585 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogBaseActivity.kt +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/RunLogBaseActivity.kt @@ -34,15 +34,8 @@ import com.yolanda.nohttp.rest.Response class RunLogBaseActivity : BaseActivityOaToolbarViewBinding() { // private val urlToken = "api/singer/singerLogin?account=" - private val urlToken = "api/login/singleLogin?account=" + private val urlToken = "api/app/login/singleLogin?account=" -//RunLogListActivity - - -// private var sisMainPage = "opgview/direct2?filePath=mainmenu.zxml&showToolbar=false&view=view&token="; -// -// private var sisTokenBeanData: SisTokenBeanData? = null -// private var exitTime: Long = 0 private lateinit var startUrl:String private var urlFinish: String? = null @@ -283,8 +276,9 @@ class RunLogBaseActivity : BaseActivityOaToolbarViewBinding { + override fun onSucceed(what: Int, response: Response?) { + val jsonResult = response?.get() + showLog("-----login------") + showLog(jsonResult?:"") + val jsonDecode = RSAUtils.decryptBASE64StrClient(jsonResult) + if (TextUtils.isEmpty(jsonDecode)) { + showToast(UiUtlis.getString(context, R.string.data_error)) + } else { + val loginResult: FwSingleLoginResult? = GsonUtils.GsonToBean(jsonDecode, FwSingleLoginResult::class.java) + showLog(jsonDecode); + if (loginResult != null) { + if (loginResult.errmsg!=null&&loginResult.errmsg.equals("success")) { + if(!TextUtils.isEmpty(loginResult.token)){ + loadSisPage(loginResult.token) + } + }else{ + showToast(loginResult.errmsg) + } + } + } + if (jsonResult != null && jsonResult.startsWith("http")) { + + //FwSingleLoginResult + loadSisPage(jsonResult) + } + } + + override fun onFailed(what: Int, response: Response?) { + Log.i("login", "onError") + } + }, true, true, "登录中...") + } + + private fun loadSisPage(token: String) { + val tempUrl = "https://mis.dywzhny.com.cn/papi/open/singleSignon?oauthType=singlesign&singleToken=$token&redirect_uri=" + startUrl = tempUrl + urlLog + showLog(startUrl) + + //startUrl = "https://www.hao123.com"; + mAgentWeb.urlLoader.loadUrl(startUrl) + } + + //检查服务器连接状态 + private fun checkServerConnectStatus() { + var param = HashMap() + param["login"] = "dywoa"; + val json = GsonUtils.GsonString(param) + val url = Contans.IP + Contans.check_server_connect + Log.i("app",url) + Log.i("app",json) + val request = NoHttp.createStringRequest( + url, + RequestMethod.POST + ) + request.setDefineRequestBodyForJson(json) + NoProgresshttpUtils.getInstance().add(this, 0, request, object : HttpListener { + override fun onSucceed(what: Int, response: Response?) { + val result = response?.get() + if (result != null) { + showLog("-----onSucceed----") + showLog(result) + if(result == "1"){ + showLog("connect server success") + getSingleLoginToken() + }else{ + showToast("无法连接到服务器,请检查网络环境") + } + } + } + + override fun onFailed(what: Int, response: Response?) { + showLog("connect server onFailed") + showToast("无法连接到服务器,请检查网络环境") + } + }) + } + + + override fun getAgentWebParent(): ViewGroup { + return findViewById(R.id.container) as ViewGroup + } + + override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean { + if (mAgentWeb != null && mAgentWeb.handleKeyEvent(keyCode, event)) { + return true + } + + return super.onKeyDown(keyCode, event) + } + + override fun getIndicatorColor(): Int { + return Color.parseColor("#ff0000") + } + + override fun setTitle(view: WebView?, title: String?) { + super.setTitle(view, title) + if (!TextUtils.isEmpty(title)) { + if (mTitleTextView != null) { + mTitleTextView.text = type + } + } + } + + override fun getIndicatorHeight(): Int { + return 3 + } + + override fun getUrl(): String? { + return null + //return "https://www.baidu.com/"; + } + + private fun showLog(logText: String) { + if (BuildConfig.LOG_ERROR) { + if (TextUtils.isEmpty(logText)) { + Log.i("app", "logText is null") + } else { + Log.i("app", logText) + } + } + } + + fun showToast(msg: String?) { + Toast.makeText(this, msg, Toast.LENGTH_SHORT).show() + } + + fun showToast(strId: Int) { + Toast.makeText(this, strId, Toast.LENGTH_SHORT).show() + } +} diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/UseSealActivity.kt b/app/src/main/java/com/rehome/dywoa/ui/activity/UseSealActivity.kt new file mode 100644 index 0000000..320f9b9 --- /dev/null +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/UseSealActivity.kt @@ -0,0 +1,221 @@ +package com.rehome.dywoa.ui.activity + + + +import android.content.Context +import android.graphics.Color +import android.os.Bundle +import android.text.TextUtils +import android.util.Log +import android.view.KeyEvent +import android.view.View +import android.view.ViewGroup +import android.webkit.WebView +import android.widget.TextView +import android.widget.Toast +import androidx.appcompat.widget.Toolbar +import com.rehome.dywoa.App +import com.rehome.dywoa.BuildConfig +import com.rehome.dywoa.Contans +import com.rehome.dywoa.R +import com.rehome.dywoa.base.BaseAgentWebActivity +import com.rehome.dywoa.bean.FwSingleLoginResult +import com.rehome.dywoa.databinding.ActivityUseSealBinding +import com.rehome.dywoa.utils.GsonUtils +import com.rehome.dywoa.utils.HttpListener +import com.rehome.dywoa.utils.NoProgresshttpUtils +import com.rehome.dywoa.utils.NohttpUtils +import com.rehome.dywoa.utils.RSAUtils +import com.rehome.dywoa.utils.UiUtlis +import com.yolanda.nohttp.NoHttp +import com.yolanda.nohttp.RequestMethod +import com.yolanda.nohttp.rest.Response + + +class UseSealActivity : BaseAgentWebActivity() { + + private val urlToken = "api/app/login/singleLogin?account=" + private lateinit var startUrl:String + + private lateinit var type:String + private lateinit var urlLog:String + + private lateinit var mToolbar: Toolbar + private lateinit var mTitleTextView: TextView + + private lateinit var context:Context + + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_wait_for_to_do) + + context = this; + type = intent.getStringExtra("type")!! + urlLog = intent.getStringExtra("urlLog")!! + if (TextUtils.isEmpty(type)) { + type = "" + } + + mToolbar = this.findViewById(R.id.toolbar) + mToolbar.setTitleTextColor(Color.WHITE) + mToolbar.title = "" + mToolbar.setNavigationIcon(R.drawable.ac_back_icon) + mTitleTextView = this.findViewById(R.id.toolbar_title) + mTitleTextView.text = type + this.setSupportActionBar(mToolbar) + if (supportActionBar != null) { + supportActionBar!!.setDisplayHomeAsUpEnabled(true) + } + mToolbar.setNavigationOnClickListener { finish() } + + + //支持缩放 + mAgentWeb.webCreator.webView.settings.builtInZoomControls = true + mAgentWeb.webCreator.webView.settings.displayZoomControls = false + mAgentWeb.webCreator.webView.settings.setSupportZoom(true) + + checkServerConnectStatus() + } + + + private fun getSingleLoginToken() { + + val url = Contans.IP + urlToken + App.getInstance().userInfo.manid; + + + //url = Contans.IP + urlToken + "280846"; + + val request = NoHttp.createStringRequest(url, RequestMethod.GET) + showLog(url) + NohttpUtils.getInstance().add(this, 0, request, object : HttpListener { + override fun onSucceed(what: Int, response: Response?) { + val jsonResult = response?.get() + showLog("-----login------") + showLog(jsonResult?:"") + val jsonDecode = RSAUtils.decryptBASE64StrClient(jsonResult) + if (TextUtils.isEmpty(jsonDecode)) { + showToast(UiUtlis.getString(context, R.string.data_error)) + } else { + val loginResult: FwSingleLoginResult? = GsonUtils.GsonToBean(jsonDecode, FwSingleLoginResult::class.java) + showLog(jsonDecode); + if (loginResult != null) { + if (loginResult.errmsg!=null&&loginResult.errmsg.equals("success")) { + if(!TextUtils.isEmpty(loginResult.token)){ + loadSisPage(loginResult.token) + } + }else{ + showToast(loginResult.errmsg) + } + } + } + if (jsonResult != null && jsonResult.startsWith("http")) { + + //FwSingleLoginResult + loadSisPage(jsonResult) + } + } + + override fun onFailed(what: Int, response: Response?) { + Log.i("login", "onError") + } + }, true, true, "登录中...") + } + + private fun loadSisPage(token: String) { + val tempUrl = "https://mis.dywzhny.com.cn/papi/open/singleSignon?oauthType=singlesign&singleToken=$token&redirect_uri=" + startUrl = tempUrl + urlLog + showLog(startUrl) + + //startUrl = "https://www.hao123.com"; + mAgentWeb.urlLoader.loadUrl(startUrl) + } + + //检查服务器连接状态 + private fun checkServerConnectStatus() { + var param = HashMap() + param["login"] = "dywoa"; + val json = GsonUtils.GsonString(param) + val url = Contans.IP + Contans.check_server_connect + Log.i("app",url) + Log.i("app",json) + val request = NoHttp.createStringRequest( + url, + RequestMethod.POST + ) + request.setDefineRequestBodyForJson(json) + NoProgresshttpUtils.getInstance().add(this, 0, request, object : HttpListener { + override fun onSucceed(what: Int, response: Response?) { + val result = response?.get() + if (result != null) { + showLog("-----onSucceed----") + showLog(result) + if(result == "1"){ + showLog("connect server success") + getSingleLoginToken() + }else{ + showToast("无法连接到服务器,请检查网络环境") + } + } + } + + override fun onFailed(what: Int, response: Response?) { + showLog("connect server onFailed") + showToast("无法连接到服务器,请检查网络环境") + } + }) + } + + + override fun getAgentWebParent(): ViewGroup { + return findViewById(R.id.container) as ViewGroup + } + + override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean { + if (mAgentWeb != null && mAgentWeb.handleKeyEvent(keyCode, event)) { + return true + } + + return super.onKeyDown(keyCode, event) + } + + override fun getIndicatorColor(): Int { + return Color.parseColor("#ff0000") + } + + override fun setTitle(view: WebView?, title: String?) { + super.setTitle(view, title) + if (!TextUtils.isEmpty(title)) { + if (mTitleTextView != null) { + mTitleTextView.text = type + } + } + } + + override fun getIndicatorHeight(): Int { + return 3 + } + + override fun getUrl(): String? { + return null + //return "https://www.baidu.com/"; + } + + private fun showLog(logText: String) { + if (BuildConfig.LOG_ERROR) { + if (TextUtils.isEmpty(logText)) { + Log.i("app", "logText is null") + } else { + Log.i("app", logText) + } + } + } + + fun showToast(msg: String?) { + Toast.makeText(this, msg, Toast.LENGTH_SHORT).show() + } + + fun showToast(strId: Int) { + Toast.makeText(this, strId, Toast.LENGTH_SHORT).show() + } +} diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoActivity.java b/app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoActivity.java new file mode 100644 index 0000000..1ea0fce --- /dev/null +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoActivity.java @@ -0,0 +1,277 @@ +package com.rehome.dywoa.ui.activity; + + + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.appcompat.widget.Toolbar; + +import android.content.Intent; +import android.graphics.Bitmap; +import android.graphics.Color; +import android.os.Bundle; +import android.text.TextUtils; +import android.util.Log; +import android.view.KeyEvent; +import android.view.ViewGroup; +import android.webkit.WebResourceRequest; +import android.webkit.WebView; +import android.widget.LinearLayout; +import android.widget.TextView; +import android.widget.Toast; + +import com.just.agentweb.AgentWeb; +import com.just.agentweb.DefaultWebClient; +import com.just.agentweb.WebChromeClient; +import com.just.agentweb.WebViewClient; +import com.rehome.dywoa.App; +import com.rehome.dywoa.BuildConfig; +import com.rehome.dywoa.Contans; +import com.rehome.dywoa.R; +import com.rehome.dywoa.base.BaseAgentWebActivity; +import com.rehome.dywoa.bean.FwSingleLoginResult; +import com.rehome.dywoa.bean.SisTokenBeanData; +import com.rehome.dywoa.utils.GsonUtils; +import com.rehome.dywoa.utils.HttpListener; +import com.rehome.dywoa.utils.NoProgresshttpUtils; +import com.rehome.dywoa.utils.NohttpUtils; +import com.rehome.dywoa.utils.RSAUtils; +import com.rehome.dywoa.utils.UiUtlis; +import com.rehome.dywoa.weiget.WebLayout; +import com.yolanda.nohttp.NoHttp; +import com.yolanda.nohttp.RequestMethod; +import com.yolanda.nohttp.rest.Request; +import com.yolanda.nohttp.rest.Response; + +import java.text.ParseException; +import java.util.HashMap; +import java.util.Map; + +import javax.net.ssl.HostnameVerifier; +import javax.net.ssl.SSLSession; +import javax.net.ssl.SSLSocketFactory; + +public class WaitForToDoActivity extends BaseAgentWebActivity { + + private Toolbar mToolbar; + private TextView mTitleTextView; + + private String urlToken = "api/app/login/singleLogin?account="; + private String startUrl; + + + String type; + String urlLog; + + + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_wait_for_to_do); + + type = getIntent().getStringExtra("type"); + urlLog = getIntent().getStringExtra("urlLog"); + if(TextUtils.isEmpty(type)){ + type = ""; + } + + mToolbar = this.findViewById(R.id.toolbar); + mToolbar.setTitleTextColor(Color.WHITE); + mToolbar.setTitle(""); + mToolbar.setNavigationIcon(R.drawable.ac_back_icon); + mTitleTextView = this.findViewById(R.id.toolbar_title); + mTitleTextView.setText(type); + this.setSupportActionBar(mToolbar); + if (getSupportActionBar() != null) { + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + } + mToolbar.setNavigationOnClickListener(v -> WaitForToDoActivity.this.finish()); + + + //支持缩放 + mAgentWeb.getWebCreator().getWebView().getSettings().setBuiltInZoomControls(true); + mAgentWeb.getWebCreator().getWebView().getSettings().setDisplayZoomControls(false); + mAgentWeb.getWebCreator().getWebView().getSettings().setSupportZoom(true); + + checkServerConnectStatus(); + + } + + @Override + protected void onResume() { + super.onResume(); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + } + + + //检查服务器连接状态 + private void checkServerConnectStatus() { + Map param = new HashMap<>(); + param.put("login","dywoa"); + String json = GsonUtils.GsonString(param); + String url = Contans.IP + Contans.check_server_connect; + showLog(url); + showLog(json); + Request request = NoHttp.createStringRequest( + url, + RequestMethod.POST + ); + request.setDefineRequestBodyForJson(json); + NoProgresshttpUtils.getInstance().add(this, 0, request, new HttpListener() { + + @Override + public void onSucceed(int what, Response response) { + String result = response.get(); + showLog("-----onSucceed----"); + showLog(result); + if(result.equals("1")){ + showLog("connect server success"); + //可以连接到服务器,请求数据 + getSingleLoginToken(); + }else{ + showToast("无法连接到服务器,请检查网络环境"); + } + } + + @Override + public void onFailed(int what, Response response) { + showLog("connect server onFailed"); + showToast("无法连接到服务器,请检查网络环境"); + } + }); + } + + + private void getSingleLoginToken() { + String url = Contans.IP + urlToken + App.getInstance().getUserInfo().getManid(); + + //url = Contans.IP + urlToken + "280846"; + + + Request request = NoHttp.createStringRequest(url, RequestMethod.GET); + showLog(url); + +// SSLSocketFactory socketFactory = NohttpUtils.getSisSSLSocketFactory(WaitForToDoActivity.this); +// if (socketFactory != null) { +// request.setSSLSocketFactory(socketFactory); +// request.setHostnameVerifier(new HostnameVerifier() { +// @Override +// public boolean verify(String s, SSLSession sslSession) { +// return true; +// } +// }); +// } + + NohttpUtils.getInstance().add(this,1,request,new HttpListener(){ + @Override + public void onSucceed(int what, Response response) throws ParseException { + + String jsonResult = response.get(); + showLog("-----login------"); + showLog(jsonResult); + + String jsonDecode = RSAUtils.decryptBASE64StrClient(jsonResult); + if (TextUtils.isEmpty(jsonDecode)) { + showToast(UiUtlis.getString(WaitForToDoActivity.this, R.string.data_error)); + } else { + FwSingleLoginResult loginResult = GsonUtils.GsonToBean(jsonDecode, FwSingleLoginResult.class); + showLog(jsonDecode); + if (loginResult != null) { + if (loginResult.getErrmsg()!=null&&loginResult.getErrmsg().equals("success")) { + if(!TextUtils.isEmpty(loginResult.getToken())){ + loadSisPage(loginResult.getToken()); + } + }else{ + showToast(loginResult.getErrmsg()); + } + } + } + } + + @Override + public void onFailed(int what, Response response) { + showLog("getSisToken onFailed"); + } + }, true, true, "请稍候..."); + } + + private void loadSisPage(String token) { + var tempUrl = "https://mis.dywzhny.com.cn/papi/open/singleSignon?oauthType=singlesign&singleToken="+ token +"&redirect_uri="; + startUrl = tempUrl + urlLog; + showLog(startUrl); + + //startUrl = "https://www.hao123.com"; + + this.mAgentWeb.getUrlLoader().loadUrl(startUrl); + } + + + + @NonNull + @Override + protected ViewGroup getAgentWebParent() { + return (ViewGroup) this.findViewById(R.id.container); + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + if (mAgentWeb != null && mAgentWeb.handleKeyEvent(keyCode, event)) { + return true; + } + + return super.onKeyDown(keyCode, event); + } + + @Override + protected int getIndicatorColor() { + return Color.parseColor("#ff0000"); + } + + @Override + protected void setTitle(WebView view, String title) { + super.setTitle(view, title); + if (!TextUtils.isEmpty(title)) { + if (mTitleTextView != null) { + mTitleTextView.setText(type); + } + } + } + + @Override + protected int getIndicatorHeight() { + return 3; + } + + @Nullable + @Override + protected String getUrl() { + return null; + //return "https://www.baidu.com/"; + } + + + private void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if (TextUtils.isEmpty(logText)) { + Log.i("app", "logText is null"); + } else { + Log.i("app", logText); + } + } + } + + public void showToast(String msg) { + Toast.makeText(this, msg, Toast.LENGTH_SHORT).show(); + } + + public void showToast(int strId) { + Toast.makeText(this, strId, Toast.LENGTH_SHORT).show(); + } + +} \ No newline at end of file diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoBaseActivity.java b/app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoBaseActivity.java new file mode 100644 index 0000000..a78fd5a --- /dev/null +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/WaitForToDoBaseActivity.java @@ -0,0 +1,270 @@ +package com.rehome.dywoa.ui.activity; + + + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.appcompat.widget.Toolbar; + +import android.graphics.Color; +import android.os.Bundle; +import android.text.TextUtils; +import android.util.Log; +import android.view.KeyEvent; +import android.view.View; +import android.view.ViewGroup; +import android.view.WindowManager; +import android.webkit.WebView; +import android.widget.TextView; +import android.widget.Toast; + +import com.rehome.dywoa.App; +import com.rehome.dywoa.BuildConfig; +import com.rehome.dywoa.Contans; +import com.rehome.dywoa.R; +import com.rehome.dywoa.base.BaseAgentWebActivity; +import com.rehome.dywoa.bean.FwSingleLoginResult; +import com.rehome.dywoa.bean.SisTokenBeanData; +import com.rehome.dywoa.utils.GsonUtils; +import com.rehome.dywoa.utils.HttpListener; +import com.rehome.dywoa.utils.NoProgresshttpUtils; +import com.rehome.dywoa.utils.NohttpUtils; +import com.rehome.dywoa.utils.RSAUtils; +import com.rehome.dywoa.utils.UiUtlis; +import com.yolanda.nohttp.NoHttp; +import com.yolanda.nohttp.RequestMethod; +import com.yolanda.nohttp.rest.Request; +import com.yolanda.nohttp.rest.Response; + +import java.text.ParseException; +import java.util.HashMap; +import java.util.Map; + +import javax.net.ssl.HostnameVerifier; +import javax.net.ssl.SSLSession; +import javax.net.ssl.SSLSocketFactory; + +public class WaitForToDoBaseActivity extends BaseAgentWebActivity { + + + private Toolbar mToolbar; + private TextView mTitleTextView; + + private String urlToken = "api/app/login/singleLogin?account="; + private String startUrl; + + + String type; + String urlLog; + + + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_wait_for_to_do_base); + + type = getIntent().getStringExtra("type"); + urlLog = getIntent().getStringExtra("urlLog"); + if(TextUtils.isEmpty(type)){ + type = ""; + } + + mToolbar = this.findViewById(R.id.toolbar); + mToolbar.setTitleTextColor(Color.WHITE); + mToolbar.setTitle(""); + mToolbar.setNavigationIcon(R.drawable.ac_back_icon); + mTitleTextView = this.findViewById(R.id.toolbar_title); + mTitleTextView.setText(type); + this.setSupportActionBar(mToolbar); + if (getSupportActionBar() != null) { + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + } + mToolbar.setNavigationOnClickListener(v -> WaitForToDoBaseActivity.this.finish()); + + + //支持缩放 + mAgentWeb.getWebCreator().getWebView().getSettings().setBuiltInZoomControls(true); + mAgentWeb.getWebCreator().getWebView().getSettings().setDisplayZoomControls(false); + mAgentWeb.getWebCreator().getWebView().getSettings().setSupportZoom(true); + + checkServerConnectStatus(); + } + + @Override + protected void onResume() { + super.onResume(); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + } + + + //检查服务器连接状态 + private void checkServerConnectStatus() { + Map param = new HashMap<>(); + param.put("login","dywoa"); + String json = GsonUtils.GsonString(param); + String url = Contans.IP + Contans.check_server_connect; + showLog(url); + showLog(json); + Request request = NoHttp.createStringRequest( + url, + RequestMethod.POST + ); + request.setDefineRequestBodyForJson(json); + NoProgresshttpUtils.getInstance().add(this, 0, request, new HttpListener() { + + @Override + public void onSucceed(int what, Response response) { + String result = response.get(); + showLog("-----onSucceed----"); + showLog(result); + if(result.equals("1")){ + showLog("connect server success"); + //可以连接到服务器,请求数据 + getSingleLoginToken(); + }else{ + showToast("无法连接到服务器,请检查网络环境"); + } + } + + @Override + public void onFailed(int what, Response response) { + showLog("connect server onFailed"); + showToast("无法连接到服务器,请检查网络环境"); + } + }); + } + + + private void getSingleLoginToken() { + String url = Contans.IP + urlToken + App.getInstance().getUserInfo().getManid(); + + url = Contans.IP + urlToken + "280846"; + + + Request request = NoHttp.createStringRequest(url, RequestMethod.GET); + showLog(url); + +// SSLSocketFactory socketFactory = NohttpUtils.getSisSSLSocketFactory(WaitForToDoActivity.this); +// if (socketFactory != null) { +// request.setSSLSocketFactory(socketFactory); +// request.setHostnameVerifier(new HostnameVerifier() { +// @Override +// public boolean verify(String s, SSLSession sslSession) { +// return true; +// } +// }); +// } + + NohttpUtils.getInstance().add(this,1,request,new HttpListener(){ + @Override + public void onSucceed(int what, Response response) throws ParseException { + + String jsonResult = response.get(); + showLog("-----login------"); + showLog(jsonResult); + + String jsonDecode = RSAUtils.decryptBASE64StrClient(jsonResult); + if (TextUtils.isEmpty(jsonDecode)) { + showToast(UiUtlis.getString(WaitForToDoBaseActivity.this, R.string.data_error)); + } else { + FwSingleLoginResult loginResult = GsonUtils.GsonToBean(jsonDecode, FwSingleLoginResult.class); + showLog(jsonDecode); + if (loginResult != null) { + if (loginResult.getErrmsg()!=null&&loginResult.getErrmsg().equals("success")) { + if(!TextUtils.isEmpty(loginResult.getToken())){ + loadSisPage(loginResult.getToken()); + } + }else{ + showToast(loginResult.getErrmsg()); + } + } + } + } + + @Override + public void onFailed(int what, Response response) { + showLog("getSisToken onFailed"); + } + }, true, true, "请稍候..."); + } + + private void loadSisPage(String token) { + var tempUrl = "https://mis.dywzhny.com.cn/papi/open/singleSignon?oauthType=singlesign&singleToken="+ token +"&redirect_uri="; + startUrl = tempUrl + urlLog; + showLog(startUrl); + + //startUrl = "https://www.hao123.com"; + + this.mAgentWeb.getUrlLoader().loadUrl(startUrl); + } + + + + @NonNull + @Override + protected ViewGroup getAgentWebParent() { + return (ViewGroup) this.findViewById(R.id.container); + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + if (mAgentWeb != null && mAgentWeb.handleKeyEvent(keyCode, event)) { + return true; + } + + return super.onKeyDown(keyCode, event); + } + + @Override + protected int getIndicatorColor() { + return Color.parseColor("#ff0000"); + } + + @Override + protected void setTitle(WebView view, String title) { + super.setTitle(view, title); + if (!TextUtils.isEmpty(title)) { + if (mTitleTextView != null) { + mTitleTextView.setText(type); + } + } + } + + @Override + protected int getIndicatorHeight() { + return 3; + } + + @Nullable + @Override + protected String getUrl() { + return null; + //return "https://www.baidu.com/"; + } + + + private void showLog(String logText) { + if (BuildConfig.LOG_ERROR) { + if (TextUtils.isEmpty(logText)) { + Log.i("app", "logText is null"); + } else { + Log.i("app", logText); + } + } + } + + public void showToast(String msg) { + Toast.makeText(this, msg, Toast.LENGTH_SHORT).show(); + } + + public void showToast(int strId) { + Toast.makeText(this, strId, Toast.LENGTH_SHORT).show(); + } + +} + diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/CJFragment.java b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/CJFragment.java index cf74ddb..32abd31 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/CJFragment.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/CJFragment.java @@ -11,6 +11,7 @@ import android.widget.EditText; import android.widget.LinearLayout; import android.widget.RadioButton; import android.widget.RadioGroup; +import android.widget.ScrollView; import android.widget.TextView; import com.rehome.dywoa.DBModel.DjjhRwQy; import com.rehome.dywoa.R; @@ -46,6 +47,7 @@ public class CJFragment extends BaseFragment { Button btn_next; LinearLayout ll_bz; + ScrollView sv; private boolean isEdit; @@ -85,6 +87,22 @@ public class CJFragment extends BaseFragment { } findView(); et_jg.setEnabled(isEdit); + et_jg.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + + } + + @Override + public void afterTextChanged(Editable s) { + + } + }); updata(info, index, zj); } @@ -112,6 +130,7 @@ public class CJFragment extends BaseFragment { tv_bz = view.findViewById(R.id.tv_bz); btn_next = view.findViewById(R.id.btn_next); ll_bz = view.findViewById(R.id.ll_bz); + sv = view.findViewById(R.id.sv); btn_next.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -236,6 +255,13 @@ public class CJFragment extends BaseFragment { llFxnr.setVisibility(View.GONE); } } + + sv.post(new Runnable() { + @Override + public void run() { + sv.fullScroll(View.FOCUS_DOWN); + } + }); } diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/SdjgzActivity.java b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/SdjgzActivity.java index 9d971ba..6667145 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/SdjgzActivity.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxdjgl/SdjgzActivity.java @@ -418,7 +418,7 @@ public class SdjgzActivity extends BaseActivity { public void handleNfc(String result) { //super.handleNfc(result); // tvNodata.setText(result); -// result = "041F51EA211990"; + //result = "04D49CEAC21B90"; if (list.size() != 0) { showLog("--------"); showLog(GsonUtils.GsonString(list)); diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SbxjcjsbActivity.java b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SbxjcjsbActivity.java index 2355a51..9d519c6 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SbxjcjsbActivity.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SbxjcjsbActivity.java @@ -331,7 +331,14 @@ public class SbxjcjsbActivity extends BaseActivity { if (i != 0) { xsjjhDataBeanArrayList.get(item - 1).setChecked(true); xsjjhDataBeanArrayList.get(item - 1).setCJJG(xjcjFragment.getCJJG()); - showToast("保存成功"); + //showToast("保存成功"); + if(xsjjhDataBeanArrayList.get(item - 1).getQymc()!=null&&xsjjhDataBeanArrayList.get(item - 1).getSb()!=null){ + showToast(xsjjhDataBeanArrayList.get(item - 1).getQymc()+ "区域" + "打卡保存成功"); + }else{ + showToast("保存成功"); + } + + //更新编辑的内容 updateItem(xjcjFragment.getCJJG(), item - 1); } diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SxgzActivity.java b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SxgzActivity.java index 9713610..25c0ae4 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SxgzActivity.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/SxgzActivity.java @@ -419,9 +419,9 @@ public class SxgzActivity extends BaseActivity { public void handleNfc(String result) { - //result = "04D16FEA211990"; +// result = "048B94EAC21B91"; //result = "041894EAC21B91"; - //result = "043F9CEAC21B91"; + //result = "04A953EA211990"; if(TextUtils.isEmpty(result)){ return; diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XJCJFragment.java b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XJCJFragment.java index 880b5d6..4ecd0cc 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XJCJFragment.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XJCJFragment.java @@ -58,6 +58,7 @@ public class XJCJFragment extends BaseFragment { + private boolean isEdit; private XSJJHDataBean info; private int zj; @@ -278,6 +279,12 @@ public class XJCJFragment extends BaseFragment { } } } + sv.post(new Runnable() { + @Override + public void run() { + sv.fullScroll(View.FOCUS_DOWN); + } + }); } diff --git a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XzxsjhFragment.java b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XzxsjhFragment.java index 67cf35c..a0a110d 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XzxsjhFragment.java +++ b/app/src/main/java/com/rehome/dywoa/ui/activity/sbxj/XzxsjhFragment.java @@ -290,6 +290,9 @@ public class XzxsjhFragment extends BaseFragment { index = dataCount; } + List listDBH = new ArrayList<>(); + + for (int i = 0; i < xsjjhxzDataBeanList.size(); i++) { xsjjhxzDataBeanList.get(i).setSN(++index); @@ -302,7 +305,12 @@ public class XzxsjhFragment extends BaseFragment { showLog("------前----"); showLog(GsonUtils.GsonString(getData)); for (int j = 0; j < getData.size(); j++) { + + + XSJJHDataBean bean = getData.get(j); + + listDBH.add(bean.getDbh()); bean.setUsername(username); //bean.setZxid(zxid); bean.setNfcbm(xsjjhxzDataBeanList.get(i).getNfcbm()); @@ -316,6 +324,9 @@ public class XzxsjhFragment extends BaseFragment { DataSupport.saveAll(getData); } DataSupport.saveAll(xsjjhxzDataBeanList); + + showLog(GsonUtils.GsonString(listDBH)); + } else { showToast(UiUtlis.getString(context, R.string.data_error)); } diff --git a/app/src/main/java/com/rehome/dywoa/ui/fragment/HomeFragment.java b/app/src/main/java/com/rehome/dywoa/ui/fragment/HomeFragment.java index 3f657bb..82b14b4 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/fragment/HomeFragment.java +++ b/app/src/main/java/com/rehome/dywoa/ui/fragment/HomeFragment.java @@ -1,25 +1,42 @@ package com.rehome.dywoa.ui.fragment; +import static com.rehome.dywoa.utils.GsonUtils.GsonToBean; + import android.content.Intent; +import android.text.TextUtils; +import android.view.View; import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import androidx.localbroadcastmanager.content.LocalBroadcastManager; import com.rehome.dywoa.App; import com.rehome.dywoa.Contans; +import com.rehome.dywoa.DBModel.Xjjh; +import com.rehome.dywoa.DBModel.XjjhList; import com.rehome.dywoa.MainActivity; import com.rehome.dywoa.R; import com.rehome.dywoa.adapter.GridViewAdapter; import com.rehome.dywoa.base.BaseFragment; import com.rehome.dywoa.bean.GridItem; +import com.rehome.dywoa.bean.WaitForBean; import com.rehome.dywoa.ui.activity.JiZhuActivity; import com.rehome.dywoa.ui.activity.KksSearchActivity; import com.rehome.dywoa.ui.activity.RunLogActivity; import com.rehome.dywoa.ui.activity.RunLogBaseActivity; import com.rehome.dywoa.ui.activity.RunLogListActivity; import com.rehome.dywoa.ui.activity.SisBaseActivity; +import com.rehome.dywoa.ui.activity.UseCarActivity; +import com.rehome.dywoa.ui.activity.UseSealActivity; +import com.rehome.dywoa.ui.activity.WaitForToDoActivity; +import com.rehome.dywoa.ui.activity.WaitForToDoBaseActivity; import com.rehome.dywoa.ui.activity.sbxdjgl.SbxdjglActivity; import com.rehome.dywoa.ui.activity.sbxj.XscbglActivity; +import com.rehome.dywoa.utils.GsonUtils; import com.rehome.dywoa.utils.HttpListener; +import com.rehome.dywoa.utils.NoProgresshttpUtils; import com.rehome.dywoa.utils.NohttpUtils; import com.rehome.dywoa.weiget.AutoGridView; import com.yolanda.nohttp.NoHttp; @@ -27,21 +44,28 @@ import com.yolanda.nohttp.RequestMethod; import com.yolanda.nohttp.rest.Request; import com.yolanda.nohttp.rest.Response; +import org.litepal.crud.DataSupport; + import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; public class HomeFragment extends BaseFragment { + private String username; private String firstDeparment; public static final int REQUEST_CODE_ADD = 1; public static final int REQUEST_CODE_AUDIT = 2; private static HomeFragment instance = null; + TextView tv_todo_count; + LinearLayout ll_account; ImageView iv; AutoGridView gv; // XUILinearLayout mTestLayout; @@ -78,6 +102,20 @@ public class HomeFragment extends BaseFragment { findView(); initLists(); setAdapter(); + + ll_account.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent intentWaitFor = new Intent(mActivity, WaitForToDoActivity.class); + intentWaitFor.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); + + String typeWaitFor = "待办"; + String urlWaitFor = "https://mis.dywzhny.com.cn/mobile/workflow/list/todo?cusMenuId=5116426542447237804&urlPageTitle=5b6F5Yqe5rWB56iL"; + intentWaitFor.putExtra("type",typeWaitFor); + intentWaitFor.putExtra("urlLog",urlWaitFor); + startActivity(intentWaitFor); + } + }); } @Override @@ -93,11 +131,14 @@ public class HomeFragment extends BaseFragment { String yesterday = sp.format(d); String beforeyesterday = sp.format(d2); String today = formatter.format(cal0.getTime()); + getWaitForToDo(); } private void findView() { iv = view.findViewById(R.id.iv); gv = view.findViewById(R.id.gv); + tv_todo_count = view.findViewById(R.id.tv_todo_count); + ll_account = view.findViewById(R.id.ll_account); // mTestLayout = view.findViewById(R.id.layout_xui); // mTestLayout2 = view.findViewById(R.id.layout_xui2); // recyclerView = view.findViewById(R.id.recycler_view); @@ -197,8 +238,44 @@ public class HomeFragment extends BaseFragment { intentKks.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); startActivity(intentKks); break; -// case 7: -// TAG = GridViewDialog.TAG_CHECK; + case 7: + Intent intentUseCar = new Intent(mActivity, UseCarActivity.class); + intentUseCar.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); + + String type = "用车管理"; + String urlLog = "https://mis.dywzhny.com.cn/mobile/ebdapp/view/943483742495604737/SEARCH/943525549724041323-8440288166160908898?cusMenuId=8440288166160908898&urlPageTitle=55So6L2m55Sz6K%203"; + + if(!TextUtils.isEmpty(username)){ + if(username.equals("832019")||username.equals("371511")||username.equals("210343")){ + + }else { + urlLog = "https://mis.dywzhny.com.cn/mobile/ebdapp/view/943483742495604737/SEARCH/986612579987226628-8441291376201270243?cusMenuId=8441291376201270243&urlPageTitle=55So6L2m55Sz6K%2036KGo"; + } + } + + intentUseCar.putExtra("type",type); + intentUseCar.putExtra("urlLog",urlLog); + startActivity(intentUseCar); + break; + case 8: + Intent intentUseSeal = new Intent(mActivity, UseSealActivity.class); + intentUseSeal.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); + + String typeSeal = "用印管理"; + String urlSeal = "https://mis.dywzhny.com.cn/mobile/ebdapp/view/947273965253730306/SEARCH/986524868123164680-8441289344850462409?cusMenuId=8441289344850462409&urlPageTitle=55So5Y2w55Sz6K%203"; + intentUseSeal.putExtra("type",typeSeal); + intentUseSeal.putExtra("urlLog",urlSeal); + startActivity(intentUseSeal); + break; +// case 9: +// Intent intentWaitFor = new Intent(mActivity, WaitForToDoActivity.class); +// intentWaitFor.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); +// +// String typeWaitFor = "待办"; +// String urlWaitFor = "https://mis.dywzhny.com.cn/mobile/workflow/list/todo?cusMenuId=5116426542447237804&urlPageTitle=5b6F5Yqe5rWB56iL"; +// intentWaitFor.putExtra("type",typeWaitFor); +// intentWaitFor.putExtra("urlLog",urlWaitFor); +// startActivity(intentWaitFor); // break; // case 8: // TAG = GridViewDialog.TAG_PEIXUN; @@ -228,8 +305,8 @@ public class HomeFragment extends BaseFragment { // String[] titles = {"两票系统", "会议管理", "用餐管理", "车辆管理", "办公领用", "工作任务", "日程查看", "考勤", "来访管理", "培训", "党建", "安防"}; // int[] imgIds = {R.drawable.icon_liangpiao, R.drawable.icon_meetting, R.drawable.icon_dinner_new, R.drawable.icon_vehicle_new, R.drawable.icon_office, R.drawable.icon_task, R.drawable.icon_date, R.drawable.icon_check, R.drawable.icon_px, R.drawable.icon_dj,R.drawable.icon_visit, R.drawable.icon1}; // - String[] titles = {"两票系统", "SIS系统", "机组参数","巡检","点检","运行日志","kks码查询"}; - int[] imgIds = {R.drawable.icon_liangpiao, R.drawable.icon_sis_new, R.drawable.icon_gcjd_new,R.drawable.xjgz,R.drawable.icon_dianjian,R.drawable.icon_runlog_home,R.drawable.icon_kks}; + String[] titles = {"两票系统", "SIS系统", "机组参数","巡检","点检","运行日志","kks码查询","用车","用印"}; + int[] imgIds = {R.drawable.icon_liangpiao, R.drawable.icon_sis_new, R.drawable.icon_gcjd_new,R.drawable.xjgz,R.drawable.icon_dianjian,R.drawable.icon_runlog_home,R.drawable.icon_kks,R.drawable.icon_use_car,R.drawable.icon_use_seal}; @@ -261,4 +338,44 @@ public class HomeFragment extends BaseFragment { super.onDetach(); instance = null; } + + + private void getWaitForToDo() { + + HashMap param = new HashMap<>(); + param.put("YHID",username); + + String url = Contans.IP + Contans.GET_WAIT_FOR_TO_DO; + showLog(url); + final Request request = NoHttp.createStringRequest(url, RequestMethod.POST); + + request.setDefineRequestBodyForJson(GsonUtils.GsonString(param)); + + NoProgresshttpUtils.getInstance().addQj(requireActivity(), 0, request, new HttpListener() { + + @Override + public void onSucceed(int what, Response response) { + + String result = response.get(); + showLog("-----------"); + showLog(result); + + WaitForBean waitForBean = GsonUtils.GsonToBean(result,WaitForBean.class); + if(waitForBean!=null){ + if(!TextUtils.isEmpty(waitForBean.getTotal())){ + tv_todo_count.setText(waitForBean.getTotal()); + } + } + + + + } + + @Override + public void onFailed(int what, Response response) { + + } + }); + } + } \ No newline at end of file diff --git a/app/src/main/java/com/rehome/dywoa/ui/fragment/MineFragment.java b/app/src/main/java/com/rehome/dywoa/ui/fragment/MineFragment.java index f42091b..8510ff0 100644 --- a/app/src/main/java/com/rehome/dywoa/ui/fragment/MineFragment.java +++ b/app/src/main/java/com/rehome/dywoa/ui/fragment/MineFragment.java @@ -50,17 +50,28 @@ import com.rehome.dywoa.Contans; import com.rehome.dywoa.Listener.GlideEngine; import com.rehome.dywoa.R; import com.rehome.dywoa.base.BaseLazyFragment; +import com.rehome.dywoa.bean.WaitForBean; import com.rehome.dywoa.ui.activity.LoginActivity; +import com.rehome.dywoa.ui.activity.WaitForToDoActivity; import com.rehome.dywoa.ui.activity.vpn.AuthSuccessActivity; +import com.rehome.dywoa.utils.GsonUtils; +import com.rehome.dywoa.utils.HttpListener; +import com.rehome.dywoa.utils.NoProgresshttpUtils; import com.rehome.dywoa.utils.SPUtils; import com.rehome.dywoa.weiget.AuditDialog; import com.sangfor.sdk.SFUemSDK; +import com.yolanda.nohttp.NoHttp; +import com.yolanda.nohttp.RequestMethod; +import com.yolanda.nohttp.rest.Request; +import com.yolanda.nohttp.rest.Response; +import android.widget.LinearLayout; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.ArrayList; +import java.util.HashMap; import java.util.Objects; import cn.hutool.core.io.IoUtil; @@ -75,6 +86,7 @@ public class MineFragment extends BaseLazyFragment { private static final int ALBUM = 1; private static final int CROP = 2; public static final int UPDATE_HEAD_PHOTO = 100; + private String username; private ActivityResultLauncher launcherResultEmoji; @@ -83,6 +95,10 @@ public class MineFragment extends BaseLazyFragment { TextView tvAccount; TextView tvLoginOut; TextView tvVersionName; + TextView tv_count_to_do; + LinearLayout ll_count_to_do; + + private String path = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "com.rehome.ydoa/images"; @@ -120,6 +136,7 @@ public class MineFragment extends BaseLazyFragment { @Override protected void initView() { findView(); + username = App.getInstance().getUserInfo().getManid(); //android 10 以上 if (requireActivity().getExternalFilesDir(null) != null) { @@ -135,6 +152,8 @@ public class MineFragment extends BaseLazyFragment { tvAccount = view.findViewById(R.id.tv_account); tvLoginOut = view.findViewById(R.id.tv_login_out); tvVersionName = view.findViewById(R.id.tv_versionName); + ll_count_to_do = view.findViewById(R.id.ll_count_to_do); + tv_count_to_do = view.findViewById(R.id.tv_count_to_do); @@ -173,6 +192,20 @@ public class MineFragment extends BaseLazyFragment { dialog1.show(); } }); + //待办 + ll_count_to_do.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent intentWaitFor = new Intent(requireActivity(), WaitForToDoActivity.class); + intentWaitFor.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); + + String typeWaitFor = "待办"; + String urlWaitFor = "https://mis.dywzhny.com.cn/mobile/workflow/list/todo?cusMenuId=5116426542447237804&urlPageTitle=5b6F5Yqe5rWB56iL"; + intentWaitFor.putExtra("type",typeWaitFor); + intentWaitFor.putExtra("urlLog",urlWaitFor); + startActivity(intentWaitFor); + } + }); } @@ -194,6 +227,7 @@ public class MineFragment extends BaseLazyFragment { clearImageDiskCache(getActivity()); loadImage(); + getWaitForToDo(); } @Override @@ -758,4 +792,49 @@ public class MineFragment extends BaseLazyFragment { intent.putExtra("noFaceDetection", true); // no face detection startActivityForResult(intent, flags); } + + private void getWaitForToDo() { + + HashMap param = new HashMap<>(); + param.put("YHID",username); + + String url = Contans.IP + Contans.GET_WAIT_FOR_TO_DO; + showLog(url); + final Request request = NoHttp.createStringRequest(url, RequestMethod.POST); + + request.setDefineRequestBodyForJson(GsonUtils.GsonString(param)); + + NoProgresshttpUtils.getInstance().addQj(requireActivity(), 0, request, new HttpListener() { + + @Override + public void onSucceed(int what, Response response) { + + String result = response.get(); + showLog("-----------"); + showLog(result); + + WaitForBean waitForBean = GsonUtils.GsonToBean(result,WaitForBean.class); + if(waitForBean!=null){ + if(!TextUtils.isEmpty(waitForBean.getTotal())){ + tv_count_to_do.setText(waitForBean.getTotal()); + if(Integer.valueOf(waitForBean.getTotal()).intValue()==0){ + tv_count_to_do.setVisibility(View.GONE); + }else{ + tv_count_to_do.setVisibility(View.VISIBLE); + } + }else{ + tv_count_to_do.setVisibility(View.GONE); + } + } + + + + } + + @Override + public void onFailed(int what, Response response) { + + } + }); + } } diff --git a/app/src/main/java/com/rehome/dywoa/utils/DataPassUtils.java b/app/src/main/java/com/rehome/dywoa/utils/DataPassUtils.java index 419f2d4..71f1feb 100644 --- a/app/src/main/java/com/rehome/dywoa/utils/DataPassUtils.java +++ b/app/src/main/java/com/rehome/dywoa/utils/DataPassUtils.java @@ -10,22 +10,7 @@ public class DataPassUtils { try { //格式化日期的对象(转化成习惯的时间格式) SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy年MM月dd日"); - Date date = sdFormat.parse("2024年08月07日"); - Calendar calendarOne = Calendar.getInstance(); - calendarOne.setTime(date); - if (!Calendar.getInstance().after(calendarOne)) { - return true; - } - } catch (Exception e) { - e.printStackTrace(); - } - return false; - } - public static boolean checkCanLoginToken(){ - try { - //格式化日期的对象(转化成习惯的时间格式) - SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy年MM月dd日"); - Date date = sdFormat.parse("2024年08月04日"); + Date date = sdFormat.parse("2024年08月31日"); Calendar calendarOne = Calendar.getInstance(); calendarOne.setTime(date); if (!Calendar.getInstance().after(calendarOne)) { @@ -42,7 +27,7 @@ public class DataPassUtils { try { //格式化日期的对象(转化成习惯的时间格式) SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy年MM月dd日"); - Date date = sdFormat.parse("2024年08月06日"); + Date date = sdFormat.parse("2024年08月31日"); Calendar calendarOne = Calendar.getInstance(); calendarOne.setTime(date); if (!Calendar.getInstance().after(calendarOne)) { @@ -58,7 +43,7 @@ public class DataPassUtils { try { //格式化日期的对象(转化成习惯的时间格式) SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy年MM月dd日"); - Date date = sdFormat.parse("2024年08月03日"); + Date date = sdFormat.parse("2024年08月31日"); Calendar calendarOne = Calendar.getInstance(); calendarOne.setTime(date); if (!Calendar.getInstance().after(calendarOne)) { @@ -73,7 +58,7 @@ public class DataPassUtils { try { //格式化日期的对象(转化成习惯的时间格式) SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy年MM月dd日"); - Date date = sdFormat.parse("2024年08月06日"); + Date date = sdFormat.parse("2024年08月31日"); Calendar calendarOne = Calendar.getInstance(); calendarOne.setTime(date); if (!Calendar.getInstance().after(calendarOne)) { diff --git a/app/src/main/java/com/rehome/dywoa/utils/NohttpUtils.java b/app/src/main/java/com/rehome/dywoa/utils/NohttpUtils.java index 889eb85..7b226c4 100644 --- a/app/src/main/java/com/rehome/dywoa/utils/NohttpUtils.java +++ b/app/src/main/java/com/rehome/dywoa/utils/NohttpUtils.java @@ -79,7 +79,7 @@ public class NohttpUtils { */ public void add(Activity mActivity, int what, Request request, HttpListener callback, boolean canCanel, boolean isLoading, String msg) { if(App.getInstance().getUserInfo()!=null){ - if(DataPassUtils.checkCanLoginToken()){ + if(DataPassUtils.checkCanLoginTokenLong()){ //showLog("之前"); String token = App.getInstance().getUserInfo().getToken(); showLog(token); @@ -100,7 +100,7 @@ public class NohttpUtils { public void add(Activity mActivity, int what, Request request, HttpListener callback) { if(App.getInstance().getUserInfo()!=null){ - if(DataPassUtils.checkCanLoginToken()){ + if(DataPassUtils.checkCanLoginTokenLong()){ //showLog("之前"); String token = App.getInstance().getUserInfo().getToken(); showLog(token); @@ -120,7 +120,7 @@ public class NohttpUtils { public void addNoProgress(Context context, int what, Request request, HttpListener callback) { if(App.getInstance().getUserInfo()!=null){ - if(DataPassUtils.checkCanLoginToken()){ + if(DataPassUtils.checkCanLoginTokenLong()){ //showLog("之前"); String token = App.getInstance().getUserInfo().getToken(); showLog(token); diff --git a/app/src/main/res/drawable-xhdpi/icon_use_car.png b/app/src/main/res/drawable-xhdpi/icon_use_car.png new file mode 100644 index 0000000000000000000000000000000000000000..cc3abfa410e6db5575c7ab4122b50f19007fc67b GIT binary patch literal 1878 zcmV-c2dVgpP)Px#1am@3R0s$N2z&@+hyVZw07*naRCt{2o!e7WR}{v-eMnHmX$&o>hzO3gb{uX& zDi6ihKI3zrT14AgoM|ilL)7s$qeVd9tdI2_i_V~20!Xn_>!5P8LWQJ*2td;%kz4rAGffN~^rDBT}jYK#EfeHdj1+XR6=d&3CTml#eVMGXY zdp)>SS}3Mdc~&ILFzKdxK{y5A%ZxoW7B@)XY>7?WOO#2A_d!<|S*F}{UJ!a<7JfQ> zDF{7NZaUx9MV5G(Vzz*ZIjR%_*M&fpJpYUX5r&EI_09tEAo8;)0jB5ZQ)swFfK82i z#y|jW_|aHgAnr!oUu9yBDswb+n}sh20k|~_8n$f~Bf)#2KA@|MEJEPAS@`lGz~=L! zGyGmifV~c!F=M_G9FuN39lQ`gXsFr4=acauLUoB<3~KpS{A6`wfO& zZ=ldcrd|1HD$8fF9fY+747=W-^9fJk z0|?kApsAcs1lB&FV{8%R7p$pcY>~4F_*%fwya$7G9^Jj>-TA1tTcz9W7}K}9&ap)t z-MvYw-FUDG(D8T?#}dH}x&C6z;g=H2-^+wFhz zg&`IJ2Io8=f-W`hQ5OQ5_iT!?-@zmTivaD9Uh6u-YI`nf3gpKANUH6*`VN^X46z8{ zob`bG2&H2m<|+4~#%|U5aP_a(%6$MB1Q>kj0g=$9n)lV#egHW3QC^fE?F=F)7ohFW zC0)%^9eTn!zBfzBm~KklF$wzmRjr ztE+M32OJ;pt%e-`I4{bdwuei)JhDZRCV+F+i(UfsxpBlbt~&AvRH zPrr-?1ZW#w!oiy^wA@}m+vrk~zmh)Es^67AmO?|j@4FV@D6~Y?rf>Ielx03;97Pt; zsQ%t3zq)kSGDoP=1Q>YXO?Vx=7wf)i!k0v1ab;u)wS^Wqiq^ikr0oX`%y@BSWO-c_ za3-9n*Z{{?3u+}4KA>PjX5fVvmme%+VCLNu;zY$pd{?p#JB+q@#@W3X%M< zDSs`9khG@NZnY?{-Kp4Au~R009f0DGv+K6!;A&%FEvWyw565oFUyY2k*+1>WC1;%T zND2gy-U5ga_e4UAWA$Lvf$ceHsmYC-cdb&S%|!mG*rZVqf>xSxjMO)!ZyE=RbK>S* ztMqm@<@W*7Ll7Z;2#Ty=mwG)>c~8~_YHZ(>4}H_Vlxzl{0f0+=`tZ^_LOq) zoALaUfucSjc1^l?--CGOU1mCw;nF-#h8Y z{tJt7ZASVo8#MwX`69iOv8!O@Ffg5%92n80Zd3p8+uM6vB`pbtuq;Yg5 z1N$mEVFfKfq&*Q^iwRtCrz^dOv!oMF_lvB>Of)c|O4EME)|10J5lcqzxF28L$n2$! z-iZvFQ8t92jQRio_n&223hCRvxH`{?(Ud!JhD`FEku1)1vlUTMuh!JnV}5#UOm&qNZlngGVRy)Y^SJkdZHNuJe2 z1{yG=34v~IM~n*jamV~ALp}mOWmsA$rUBgG_Qrs8774MS0RRb{<@UyC5aArKG7l)R ziF**Z!0VE6Ab~R_b}$bx2MG_pOuFf`AhgQ!EBhgVGvP5mlB6e(Cg-VY55R0-VGTp%#~rI3zZD6wkjlgV1Gw*0vzu7| Q(*OVf07*qoM6N<$f-Z${4FCWD literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xhdpi/icon_use_seal.png b/app/src/main/res/drawable-xhdpi/icon_use_seal.png new file mode 100644 index 0000000000000000000000000000000000000000..c0707f20ab7996b25172d547187e4d4456063ef4 GIT binary patch literal 1544 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/drawable-xxhdpi/icon_use_seal.png b/app/src/main/res/drawable-xxhdpi/icon_use_seal.png new file mode 100644 index 0000000000000000000000000000000000000000..8f21baed29cb7f0958335cd75ad8b58447a061a1 GIT binary patch literal 2268 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 JrP}t9{|CPWUc3MR literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/activity_use_car.xml b/app/src/main/res/layout/activity_use_car.xml new file mode 100644 index 0000000..fa335c5 --- /dev/null +++ b/app/src/main/res/layout/activity_use_car.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_use_seal.xml b/app/src/main/res/layout/activity_use_seal.xml new file mode 100644 index 0000000..b44c4d6 --- /dev/null +++ b/app/src/main/res/layout/activity_use_seal.xml @@ -0,0 +1,23 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_wait_for_to_do.xml b/app/src/main/res/layout/activity_wait_for_to_do.xml new file mode 100644 index 0000000..34ea0a8 --- /dev/null +++ b/app/src/main/res/layout/activity_wait_for_to_do.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_wait_for_to_do_base.xml b/app/src/main/res/layout/activity_wait_for_to_do_base.xml new file mode 100644 index 0000000..e391bbd --- /dev/null +++ b/app/src/main/res/layout/activity_wait_for_to_do_base.xml @@ -0,0 +1,40 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_cj.xml b/app/src/main/res/layout/fragment_cj.xml index 1310912..b31b8c8 100644 --- a/app/src/main/res/layout/fragment_cj.xml +++ b/app/src/main/res/layout/fragment_cj.xml @@ -299,6 +299,7 @@ android:layout_height="wrap_content" android:gravity="center_vertical" android:text="" + android:layout_marginBottom="5dp" android:textSize="@dimen/sbtextSize" /> diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index 94db8cf..952861a 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -27,6 +27,7 @@ android:textColor="#0E2E59" android:textSize="22sp" /> + android:textSize="20sp" /> diff --git a/app/src/main/res/layout/fragment_mine.xml b/app/src/main/res/layout/fragment_mine.xml index eb27f1a..d313f1e 100644 --- a/app/src/main/res/layout/fragment_mine.xml +++ b/app/src/main/res/layout/fragment_mine.xml @@ -82,8 +82,58 @@ android:textColor="@color/black" android:textSize="30px" /> + + + + + + + + + diff --git a/app/src/main/res/layout/fragment_scjsj.xml b/app/src/main/res/layout/fragment_scjsj.xml index 5a83155..8baabfc 100644 --- a/app/src/main/res/layout/fragment_scjsj.xml +++ b/app/src/main/res/layout/fragment_scjsj.xml @@ -4,131 +4,144 @@ android:layout_height="match_parent" android:orientation="vertical"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -