diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 95e0b63..e6b4490 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -82,12 +82,7 @@
tools:replace="android:allowBackup"
tools:targetApi="s">
-
-
+
+
+
+
@@ -1214,6 +1218,7 @@
android:name=".ui.activity.WeatherHistoryActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|stateHidden" />
+
diff --git a/app/src/main/java/com/rehome/zhdcoa/Contans.java b/app/src/main/java/com/rehome/zhdcoa/Contans.java
index 9015f1a..61ed65d 100644
--- a/app/src/main/java/com/rehome/zhdcoa/Contans.java
+++ b/app/src/main/java/com/rehome/zhdcoa/Contans.java
@@ -197,6 +197,8 @@ public class Contans {
//登录接口用户名和密码字段加密
public static final String LOGIN_USERNAME_AND_PWD_PUBLICKEY_ENCODE = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAkJxhKMH+nwCSpqW+T67HnYblA3/ZvFslbwUB8YE+uojGouMCaeEnlyANebvIB+r6kpc2r6xSq1wEbV7MCk2cE2CK4/IK1OvR9aMSxnQHK9eekc7X2kueLjfuScXTy/QJpFPuTDDtMnwmqsXKBizAXcldSRJ9BdEyKklXAN3PH/7tym4tne26SuK/5Mjtw6AE8oNZFYrVknKYau4y2oEQbMo4kBuYokv4qrNmxbSM22Pu/Mw4M65S8sLKgHd+DwTVAYjilzXSoruG1gyqnY61YJuBPvvevEsp6TZ6fb5NKsVeRfprQ5TuoAtF+gIoEy0m0sKes4h+OoFsF7Wp0C1ESwIDAQAB";
+ public static final String DeviceAlermInfoAccount = "admin_07";
+ public static final String DeviceAlermInfoPwd = "oDyNHQnrq2l0IXEMtJFceUwRMx8p7s9ddK//iGjzVUVpgT8LKx7tCSRiOILDJ5yFFytmkHpAUg4S0Mv1urg7ELoDuOn8y+Ked8oo0BZY3c6T7/JPwlL+83lD8R76Q6xtJetM409AiBafF15oe3C54diJsIgbtPov2CvHV/34d8TvvzZY63vb+lAWcYBiK9O/q2lzEPmOw+3RGzbhsTLsAOS84Og45Jyutph6yOjs09PkmP1MnZ8iRse01iTmXY3DETwdkO7IbgO2QfpO2Lt9uAknKTf0fNNN7GPDSW8v+ajQRS29YdNWHYM/zB73UXCSienlO7cZXqCkfmuW+iJtnA==";
}
/*
@@ -525,6 +527,8 @@ public class Contans {
public static String PRINTIP_YIHAOCHANGKU = "10.19.110.220";//1号仓库是打印机的IP
public static String PRINTIP_BIANXIE = "10.19.110.24";//便携打印机的IP
+ //设备状态智能监测及分析平台 登录
+ public final static String DeviceAlermInfoLoginUrl = "dserver/user/loginRsa";
//人员组织结构模块 用户验证接口token
public final static String AUTHENTICATIONLOGINTOKEN = "AUTHENTICATIONLOGINTOKEN";
//人员组织结构模块 下次登录时间
diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfofoActivity.kt b/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfofoActivity.kt
new file mode 100644
index 0000000..8647660
--- /dev/null
+++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/DeviceAlarmInfofoActivity.kt
@@ -0,0 +1,252 @@
+package com.rehome.zhdcoa.ui.activity
+
+
+
+import android.content.Intent
+import android.text.TextUtils
+import android.view.View
+import android.widget.TextView
+import androidx.activity.result.ActivityResultLauncher
+import androidx.activity.result.contract.ActivityResultContracts
+import com.rehome.zhdcoa.Contans
+import com.rehome.zhdcoa.R
+import com.rehome.zhdcoa.adapter.WorkRiskLevelListAdapter
+import com.rehome.zhdcoa.base.BaseActivityOaToolbarTwoViewBinding
+import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding
+import com.rehome.zhdcoa.bean.WorkRiskLevelListBean
+import com.rehome.zhdcoa.completionUtil.ReplaceSpan
+import com.rehome.zhdcoa.completionUtil.ReplaceSpan.OnClickListener
+import com.rehome.zhdcoa.databinding.ActivityDeviceAlarmInfofoBinding
+import com.rehome.zhdcoa.databinding.ActivityWorkRiskListBinding
+import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils
+import com.rehome.zhdcoa.utils.GsonUtils
+import com.rehome.zhdcoa.utils.HttpListener
+import com.rehome.zhdcoa.utils.NohttpUtils
+import com.rehome.zhdcoa.utils.RSAAndroid
+import com.yolanda.nohttp.NoHttp
+import com.yolanda.nohttp.RequestMethod
+import com.yolanda.nohttp.rest.Response
+import java.text.SimpleDateFormat
+import java.util.Calendar
+import javax.net.ssl.HostnameVerifier
+
+/**
+ * Create By HuangWenFei
+ * 创建日期:2024-04-02 14:34
+ * 描述:每日作业风险清单
+ */
+class DeviceAlarmInfofoActivity : BaseActivityOaToolbarViewBinding() {
+
+ private lateinit var headView: View
+
+ private var datas: MutableList = mutableListOf()
+ private lateinit var mAdapter: WorkRiskLevelListAdapter
+
+ private var selectList: MutableList = mutableListOf()
+ private var jobNoList: MutableList = mutableListOf()
+
+ private var selectListAssistant: MutableList = mutableListOf()
+ private var jobNoListAssistant: MutableList = mutableListOf()
+
+ private var selectListCustom: MutableList = mutableListOf()
+ private var jobNoListCustom: MutableList = mutableListOf()
+
+ private var dataA: MutableList = mutableListOf()
+ private var dataB: MutableList = mutableListOf()
+ private var dataC1: MutableList = mutableListOf()
+ private var dataC2: MutableList = mutableListOf()
+ private var dataC3: MutableList = mutableListOf()
+ private var dataLowRisk: MutableList = mutableListOf()
+ private var isNetworkNormal = false
+
+ private lateinit var launcherResultQRCode: ActivityResultLauncher
+
+ override fun getViewBinding() = ActivityDeviceAlarmInfofoBinding.inflate(layoutInflater)
+
+ override fun getToolbar() = binding.toolbarView.toolbar
+
+ override fun initView() {
+
+ initToolbar("设备预警信息", "",{
+
+ })
+
+ launcherResultQRCode = createQRCodeActivityResultLauncher()
+
+ binding.lv.emptyView = binding.tvNodata
+ headView = View.inflate(this, R.layout.item_work_risk_list, null)
+
+ mAdapter = WorkRiskLevelListAdapter(this,datas,
+ { position ->
+ val item = datas[position]
+ if(item.hazardList!=null&&item.hazardList.size>0){
+ //进入风险提示页面
+ val intent = Intent(context, WorkRiskListTipActivity::class.java)
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
+ intent.putExtra("hazardList", GsonUtils.GsonString(item.hazardList))
+ startActivity(intent)
+ }
+ },
+ { position ->
+ val item = datas[position]
+ if(item.hazardList!=null&&item.hazardList.size>0){
+ //进入修改风险等级
+ val intent = Intent(context, CustomDialogChangeLevelActivity::class.java)
+ intent.putExtra("id",item.id)
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
+ intent.putExtra("level", item.level)
+ intent.putExtra("type", item.type)
+ launcherResultQRCode.launch(intent)
+ }
+ },
+ { position ->
+ val item = datas[position]
+ showLog("---------")
+ showLog(GsonUtils.GsonString(item))
+ //工作情况汇报
+ val intent = Intent(context, WorkRiskListHuiBaoActivity::class.java)
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
+ intent.putExtra("level",item.level)
+ intent.putExtra("type",item.type)
+ intent.putExtra("id",item.id)
+ startActivity(intent)
+ }
+ )
+ //binding.lv.addHeaderView(headView, null, false)
+ binding.lv.adapter = mAdapter
+
+ //格式化日期的对象(转化成习惯的时间格式)
+ val sdFormat = SimpleDateFormat("yyyy.MM.dd")
+ //静态方法getInstance()使用默认时区和语言环境获得一个日历。
+ val calendar = Calendar.getInstance()
+ }
+
+ override fun initData() {
+ authenticationLoginDeviceAlermInfo()
+ }
+
+ override fun onRestart() {
+ super.onRestart()
+ authenticationLoginDeviceAlermInfo()
+ }
+
+ //创建一个ActivityResultLauncher
+ private fun createQRCodeActivityResultLauncher(): ActivityResultLauncher {
+ //kotlin写法
+ return registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
+ val data = it.data
+ val resultCode = it.resultCode
+ if (resultCode == RESULT_OK) {
+ if (data != null) {
+ val qrCodeStr = data.getStringExtra("code") ?: ""
+ showLog(qrCodeStr)
+ if(!TextUtils.isEmpty(qrCodeStr)){
+ //刷新列表数据
+ authenticationLoginDeviceAlermInfo()
+ }
+ }
+ }
+ }
+ }
+
+ private fun authenticationLoginDeviceAlermInfo() {
+ try {
+ //AI三维登录接口
+ val userName = Contans.SP.DeviceAlermInfoAccount
+ val strPrivateEncode = RSAAndroid.encryptByPrivateKeyForSpiltStr(Contans.SP.DeviceAlermInfoPwd,RSAAndroid.privateRsaKeyLocal)
+ val strPublicDecode = RSAAndroid.decryptByPublicKeyForSpiltStr(
+ Contans.SP.DeviceAlermInfoPwd,
+ RSAAndroid.publicRsaKeyLocal
+ )
+ showLog(userName)
+ showLog(strPublicDecode)
+ AuthenticationLoginAIUtils.authenticationDeviceAlermInfoShowProgress(
+ this, userName, strPublicDecode
+ ) { _, token ->
+ if (token != null && token == "") {
+ showToast("设备状态智能监测及分析平台登录失败")
+ isNetworkNormal = false
+ } else {
+ //getWorkRiskListData()
+ //登录成功
+ }
+ }
+ } catch (e: Exception) {
+ e.printStackTrace()
+ }
+ }
+
+ private fun getWorkRiskListData() {
+ val request = NoHttp.createStringRequest(
+ Contans.BASE_URL_AI_3D_SERVER + Contans.DAYLY_RISK_LIST_NEW,
+ RequestMethod.GET
+ )
+
+ request.add("filter",true);
+
+ if (Contans.BASE_URL_AI_3D_SERVER == Contans.BASE_URL_AI_3D_SERVER_EXTRANET) {
+ val socketFactory = NohttpUtils.getSSLSocketFactory(context)
+ if (socketFactory != null) {
+ request.sslSocketFactory = socketFactory
+ request.hostnameVerifier = HostnameVerifier { _, _ -> true }
+ }
+ }
+
+ NohttpUtils.getInstance().add(this, 0, request, object : HttpListener {
+
+ override fun onSucceed(what: Int, response: Response?) {
+ val result = response?.get()
+ showLog("----------------")
+ showLog(result)
+ val bean = GsonUtils.GsonToBean(
+ result,
+ WorkRiskLevelListBean::class.java
+ )
+ if (bean != null && bean.data != null) {
+ isNetworkNormal = true
+ val workRiskLevelLists = bean.data
+ if (workRiskLevelLists != null && workRiskLevelLists.size > 0) {
+ binding.tvNodata.visibility = View.GONE
+ headView.visibility = View.VISIBLE
+ datas.clear()
+ datas.addAll(workRiskLevelLists)
+ mAdapter.notifyDataSetChanged()
+
+ dataA.clear()
+ dataB.clear()
+ dataC1.clear()
+ dataC2.clear()
+ dataC3.clear()
+ dataLowRisk.clear()
+
+
+ selectList.clear()
+ jobNoList.clear()
+
+ selectListAssistant.clear()
+ jobNoListAssistant.clear()
+
+ selectListCustom.clear()
+ jobNoListCustom.clear()
+ } else {
+ binding.tvNodata.visibility = View.VISIBLE
+ }
+ }else{
+ isNetworkNormal = false
+ }
+ }
+
+ override fun onFailed(what: Int, response: Response?) {
+ isNetworkNormal = false
+ }
+ })
+ }
+
+ private fun toWorkRiskListHuiBaoActivity(type:String){
+ //工作情况汇报
+ val intent = Intent(context, WorkRiskListHuiBaoActivity::class.java)
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
+ intent.putExtra("type",type)
+ startActivity(intent)
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt b/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt
index 0fd11dc..8f4cbce 100644
--- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt
+++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/LoginActivity.kt
@@ -228,8 +228,8 @@ class LoginActivity : BaseActivityOaToolbarViewBinding() {
if (isApkInDebug(context)) {
// 管理员
-// binding.etUsername.setText("ZHPS_Admin")
-// binding.etPassword.setText("Rehome.zhps@996")
+ binding.etUsername.setText("ZHPS_Admin")
+ binding.etPassword.setText("Rehome.zhps@996")
//公司内网215管理员
diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpScActivity.java b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpScActivity.java
index 589d1e8..2544238 100644
--- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpScActivity.java
+++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpScActivity.java
@@ -119,6 +119,8 @@ import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
@@ -769,6 +771,7 @@ public class WztpScActivity extends BaseActivity2 {
private void uploadWZTP(String stEndName) {
Wztpscinfo.Wztp wztp = wztps.get(0);
File wztpuploadfile = new File(path + "/" + stEndName);
+ showLog(wztpuploadfile.getPath());
//showToast("filesize:" + String.valueOf(wztpuploadfile.length()));
RequestBody requestFile = RequestBody.create(MediaType.parse("image/*"), wztpuploadfile);
MultipartBody.Part body = MultipartBody.Part.createFormData("fileps", wztpuploadfile.getName(), requestFile);
@@ -808,6 +811,7 @@ public class WztpScActivity extends BaseActivity2 {
private void uploadWZTPFJT(String fjtEndName) {
Wztpscinfo.Wztp wztp = wztps.get(0);
File wztpuploadfile = new File(path + "/" + fjtEndName);
+ showLog(wztpuploadfile.getPath());
//showToast("filesize:" + String.valueOf(wztpuploadfile.length()));
RequestBody requestFile = RequestBody.create(MediaType.parse("image/*"), wztpuploadfile);
MultipartBody.Part body = MultipartBody.Part.createFormData("fileps", wztpuploadfile.getName(), requestFile);
@@ -856,14 +860,21 @@ public class WztpScActivity extends BaseActivity2 {
Log.i("app", wztp.getItemnum() + "." + extensionName);
Log.i("app", String.valueOf(duration));
+ String itemNumTemp = wztp.getItemnum();
+ if(!TextUtils.isEmpty(itemNumTemp) && itemNumTemp.contains("/")){
+ itemNumTemp.replace("/","-");
+ }
+ showLog("---------itemNumTemp-------");
+ showLog(itemNumTemp);
+
HttpUtils.getYXApi(this).uploadwztpBody(
wztp.getItemnum(),
wztp.getItemid(),
username,
"3",
- wztp.getItemnum() + "." + extensionName,
+ itemNumTemp + "." + extensionName,
duration,
- wztp.getItemnum() + ".jpg",
+ itemNumTemp + ".jpg",
body).enqueue(new BaseCallBack(context) {
@Override
public void onSuccess(Call call, retrofit2.Response response) {
@@ -893,7 +904,11 @@ public class WztpScActivity extends BaseActivity2 {
private void compressVideo() {
Wztpscinfo.Wztp wztp = wztps.get(0);
String extensionName = FileUtils.getFileType(videoFileName);
- videoCompressFilePath = context.getExternalFilesDir(null).getPath() + "/Movies/" + wztp.getItemnum() + "_compress_video." + extensionName;
+ String itemNumTemp = wztp.getItemnum();
+ if(!TextUtils.isEmpty(itemNumTemp) && itemNumTemp.contains("/")){
+ itemNumTemp = itemNumTemp.replace("/","_");
+ }
+ videoCompressFilePath = context.getExternalFilesDir(null).getPath() + "/Movies/" + itemNumTemp + "_compress_video." + extensionName;
VideoCompress.compressVideoLow(videoFilePath, videoCompressFilePath, new VideoCompress.CompressListener() {
@Override
public void onStart() {
@@ -931,14 +946,32 @@ public class WztpScActivity extends BaseActivity2 {
Log.i("app", wztp.getItemnum() + "." + extensionName);
Log.i("app", String.valueOf(duration));
- String url = Contans.IP + Contans.YDCK_WZ_UPLOAD_VIDEO_URL + "?itemnum=" + wztp.getItemnum() + "&itemid=" + wztp.getItemid() + "&operid=" + username
- + "&type=3" + "&fname=" + wztp.getItemnum() + "." + extensionName + "&videoleng=" + duration + "&videosltname=" + wztp.getItemnum() + "_video.jpg";
+ String itemNumTemp = wztp.getItemnum();
+ if(!TextUtils.isEmpty(itemNumTemp) && itemNumTemp.contains("/")){
+ itemNumTemp = itemNumTemp.replace("/","_");
+ }
+
+ showLog(itemNumTemp);
+ showLog(wztp.getItemnum());
+
+ String itemNumEncode = wztp.getItemnum();
+ try {
+ if(!TextUtils.isEmpty(itemNumEncode) && itemNumEncode.contains("/")){
+ itemNumEncode = URLEncoder.encode(itemNumEncode, "UTF-8");;
+ }
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ }
+
+ String url = Contans.IP + Contans.YDCK_WZ_UPLOAD_VIDEO_URL + "?itemnum=" + itemNumEncode + "&itemid=" + wztp.getItemid() + "&operid=" + username
+ + "&type=3" + "&fname=" + itemNumTemp + "." + extensionName + "&videoleng=" + duration + "&videosltname=" + itemNumTemp + "_video.jpg";
+
Log.i("app", url);
try {
Bitmap bitmapVideo = VideoImageUtil.createVideoThumbnail(videoFilePath, MediaStore.Images.Thumbnails.MINI_KIND);
- videoStFilePath = context.getExternalFilesDir(null).getPath() + "/Movies/" + wztp.getItemnum() + "_video.jpg";
+ videoStFilePath = context.getExternalFilesDir(null).getPath() + "/Movies/" + itemNumTemp + "_video.jpg";
VideoImageUtil.saveImage(videoStFilePath, bitmapVideo);
} catch (Exception e) {
e.printStackTrace();
@@ -1334,6 +1367,13 @@ public class WztpScActivity extends BaseActivity2 {
private void cropFromTake(String name, int flag) throws IOException {
String applicationId = App.getApplicationId(context);
stFileName = name + ".jpg";
+ showLog("-------before------");
+ showLog(stFileName);
+ if(!TextUtils.isEmpty(name) && name.contains("/")){
+ stFileName = stFileName.replace("/","_");
+ }
+ showLog("-------after------");
+ showLog(stFileName);
this.deleteFileIfNeed(path, stFileName);
File fos = this.createFileIfNeed(path, stFileName);
Uri uri = FileProvider.getUriForFile(context, applicationId + ".fileprovider", fos);
@@ -1355,6 +1395,9 @@ public class WztpScActivity extends BaseActivity2 {
String applicationId = App.getApplicationId(context);
fjtFileName = name + ".jpg";
+ if(!TextUtils.isEmpty(name) && name.contains("/")){
+ fjtFileName = fjtFileName.replace("/","_");
+ }
this.deleteFileIfNeed(path, fjtFileName);
File fos = this.createFileIfNeed(path, fjtFileName);
Uri uri = FileProvider.getUriForFile(context, applicationId + ".fileprovider", fos);
@@ -1412,6 +1455,9 @@ public class WztpScActivity extends BaseActivity2 {
private void choosePhoto(int flag) {
stFileName = UiUtlis.getText(etHgtm) + ".jpg";
+ if(!TextUtils.isEmpty(stFileName) && stFileName.contains("/")){
+ stFileName = stFileName.replace("/","_");
+ }
this.deleteFileIfNeed(path, stFileName);
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
Intent fjtxc = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
@@ -1434,6 +1480,9 @@ public class WztpScActivity extends BaseActivity2 {
private void choosePhotoFjt(int flag) {
fjtFileName = UiUtlis.getText(etHgtm) + "FJT" + ".jpg";
+ if(!TextUtils.isEmpty(fjtFileName) && fjtFileName.contains("/")){
+ fjtFileName = fjtFileName.replace("/","_");
+ }
this.deleteFileIfNeed(path, fjtFileName);
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.Q) {
Intent fjtxc = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpblScDetailActivity.java b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpblScDetailActivity.java
index 0fb4126..ad96f2b 100644
--- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpblScDetailActivity.java
+++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WztpblScDetailActivity.java
@@ -131,6 +131,8 @@ import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
@@ -862,7 +864,12 @@ public class WztpblScDetailActivity extends BaseActivityOaToolbarViewBinding()
startActivity(intent)
}
+ 9 -> {
+ intent = Intent(activity, DeviceAlarmInfofoActivity::class.java)
+ startActivity(intent)
+ }
+
else -> {}
}
}
@@ -278,6 +284,7 @@ class YunXingFragment : BaseViewBindingKotlinFragment()
item_yx.add(0)
item_yx.add(5)
item_yx.add(8)
+ item_yx.add(9)
}
"AppMobileHouse" -> item_yx.add(1)
@@ -292,7 +299,10 @@ class YunXingFragment : BaseViewBindingKotlinFragment()
"AppMeterReading" -> item_yx.add(6)
"AppXSCB" -> item_yx.add(6)
"AppDQGZ" -> item_yx.add(7)
- else -> item_yx.add(8)
+ else -> {
+ item_yx.add(8)
+ item_yx.add(9)
+ }
}
}
}
diff --git a/app/src/main/java/com/rehome/zhdcoa/utils/AuthenticationLoginAIUtils.java b/app/src/main/java/com/rehome/zhdcoa/utils/AuthenticationLoginAIUtils.java
index 69672b2..969cf69 100644
--- a/app/src/main/java/com/rehome/zhdcoa/utils/AuthenticationLoginAIUtils.java
+++ b/app/src/main/java/com/rehome/zhdcoa/utils/AuthenticationLoginAIUtils.java
@@ -254,6 +254,86 @@ public class AuthenticationLoginAIUtils {
});
}
+ public static void authenticationDeviceAlermInfoShowProgress(Activity mActivity, String account, String password, OnAuthenticationLoginListener listener) {
+
+ Request request = NoHttp.createStringRequest(Contans.IP + Contans.DeviceAlermInfoLoginUrl, RequestMethod.POST);
+
+ Map params = new HashMap<>();
+ params.put("username", account);
+ params.put("password", password);
+
+ String json = GsonUtils.GsonString(params);
+ //showLog(json);
+ String jsonEncrypt = RSAUtils.encryptBASE64Str(json);
+ //showLog(jsonEncrypt);
+ request.setDefineRequestBodyForJson(jsonEncrypt);
+
+ if (Contans.IP.equals(Contans.IP_EXTRANET)) {
+ SSLSocketFactory socketFactory = NohttpUtils.getSSLSocketFactory(mActivity);
+ if (socketFactory != null) {
+ request.setSSLSocketFactory(socketFactory);
+ request.setHostnameVerifier(new HostnameVerifier() {
+ @Override
+ public boolean verify(String s, SSLSession sslSession) {
+ return true;
+ }
+ });
+ }
+ }
+
+ NohttpUtils.getInstance().add(mActivity, 0, request, new HttpListener() {
+
+ @Override
+ public void onSucceed(int what, Response response) {
+
+ showLog("----------------",mActivity);
+ String result = response.get();
+ showLog(result,mActivity);
+
+ if(!TextUtils.isEmpty(result)){
+ UserAuthenticationAIBean bean = GsonToBean(result, UserAuthenticationAIBean.class);
+ if (bean != null) {
+ if (bean.isSuccess()&&bean.getCode()==20000) {//登录成功
+ SPUtils.put(mActivity, Contans.AUTHENTICATIONLOGINTOKENAI, bean.getData().getToken());
+ listener.onAuthenticationSuccess(true, bean.getData().getToken());
+ } else {
+ if (bean.getFlag() == -1) {
+ if (bean.getMsg() != null && bean.getMsg().equals("用户未注销")) {
+ String token = (String) SPUtils.get(mActivity, Contans.AUTHENTICATIONLOGINTOKENAI, String.valueOf(""));
+ listener.onAuthenticationSuccess(true, token);
+ }
+ } else {
+ listener.onAuthenticationSuccess(false, "");
+ if (bean.getFlag() == -2) {
+ showLog("没有传参",mActivity);
+ }
+ if (bean.getFlag() == -3) {
+ showLog("服务器解密失败",mActivity);
+ }
+ if (bean.getFlag() == -4) {
+ showLog("Json 格式不正确",mActivity);
+ }
+ if (bean.getFlag() == -5) {
+ showLog("账号密码不能为空",mActivity);
+ }
+ if (bean.getFlag() == -6) {
+ showLog("账号或密码错误",mActivity);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ @Override
+ public void onFailed(int what, Response response) {
+ showLog("onFailed",mActivity);
+ listener.onAuthenticationSuccess(false, "");
+ }
+ });
+ }
+
+
public static void showLog(String logText,Context context) {
if (isApkInDebug(context)) {
if (TextUtils.isEmpty(logText)) {
diff --git a/app/src/main/res/layout/activity_device_alarm_infofo.xml b/app/src/main/res/layout/activity_device_alarm_infofo.xml
new file mode 100644
index 0000000..c4ea359
--- /dev/null
+++ b/app/src/main/res/layout/activity_device_alarm_infofo.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file