diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 49a8458..95e0b63 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1209,7 +1209,11 @@
+ android:windowSoftInputMode="adjustResize|stateHidden" />
+
diff --git a/app/src/main/java/com/rehome/zhdcoa/adapter/WeatherHistoryAdapter.java b/app/src/main/java/com/rehome/zhdcoa/adapter/WeatherHistoryAdapter.java
new file mode 100644
index 0000000..fe9c471
--- /dev/null
+++ b/app/src/main/java/com/rehome/zhdcoa/adapter/WeatherHistoryAdapter.java
@@ -0,0 +1,60 @@
+package com.rehome.zhdcoa.adapter;
+
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.ViewGroup;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import com.rehome.zhdcoa.base.BaseViewBindingAdapter;
+import com.rehome.zhdcoa.bean.WeatherHistoryBean;
+import com.rehome.zhdcoa.databinding.AdapterWeatherHistoryBinding;
+import java.util.List;
+
+public class WeatherHistoryAdapter extends BaseViewBindingAdapter {
+ private List datas;
+
+ public WeatherHistoryAdapter(Context context, List datas) {
+ super(context);
+ this.datas = datas;
+ }
+
+ @Override
+ protected void handleData(int position, AdapterWeatherHistoryBinding binding) {
+ WeatherHistoryBean.DataBean item = datas.get(position);
+ if (item != null) {
+ binding.tvTime.setText(item.getTime());
+ binding.tvValue.setText(item.getVal());
+ }
+ }
+
+ @Override
+ protected AdapterWeatherHistoryBinding getBinding(@NonNull LayoutInflater inflater, @Nullable ViewGroup parent) {
+ return AdapterWeatherHistoryBinding.inflate(inflater, parent, false);
+ }
+
+ @Override
+ public int getCount() {
+ return datas.size();
+ }
+
+ @Override
+ public Object getItem(int position) {
+ return datas.get(position);
+ }
+
+ @Override
+ public long getItemId(int position) {
+ return Long.valueOf(position);
+ }
+
+ public interface OnWorkRiskLevelClickListener {
+ void onItemClick(int position);
+ }
+ public interface OnWorkRiskContentlickListener {
+ void onItemClick(int position);
+ }
+ public interface OnPaoHaolickListener {
+ void onItemClick(int position);
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/rehome/zhdcoa/bean/WeatherHistoryBean.java b/app/src/main/java/com/rehome/zhdcoa/bean/WeatherHistoryBean.java
new file mode 100644
index 0000000..def8ee3
--- /dev/null
+++ b/app/src/main/java/com/rehome/zhdcoa/bean/WeatherHistoryBean.java
@@ -0,0 +1,54 @@
+package com.rehome.zhdcoa.bean;
+
+import java.util.List;
+
+public class WeatherHistoryBean extends AIBaseBean{
+ private int TotalPage;
+ private int Total;
+ private List data;
+
+ public int getTotalPage() {
+ return TotalPage;
+ }
+
+ public void setTotalPage(int totalPage) {
+ TotalPage = totalPage;
+ }
+
+ public int getTotal() {
+ return Total;
+ }
+
+ public void setTotal(int total) {
+ Total = total;
+ }
+
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public static class DataBean {
+ private String time;
+ private String val;
+
+ public String getTime() {
+ return time;
+ }
+
+ public void setTime(String time) {
+ this.time = time;
+ }
+
+ public String getVal() {
+ return val;
+ }
+
+ public void setVal(String val) {
+ this.val = val;
+ }
+ }
+}
diff --git a/app/src/main/java/com/rehome/zhdcoa/ui/activity/WeatherActivity.kt b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WeatherActivity.kt
index e5cc500..9f7153c 100644
--- a/app/src/main/java/com/rehome/zhdcoa/ui/activity/WeatherActivity.kt
+++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WeatherActivity.kt
@@ -37,30 +37,6 @@ import javax.net.ssl.HostnameVerifier
*/
class WeatherActivity : 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()
-
-
-
-
override fun getViewBinding() = ActivityWeatherBinding.inflate(layoutInflater)
override fun getToolbar() = binding.toolbarView.toolbar
@@ -106,13 +82,13 @@ class WeatherActivity : BaseActivityOaToolbarViewBinding
binding.rlQiya.setOnClickListener {
showHistoryPage("大气气压")
}
- binding.rlFengqiang.setOnClickListener {
+ binding.rlFengshu.setOnClickListener {
showHistoryPage("实时风速")
}
- binding.rlYuliang.setOnClickListener {
+ binding.rlFengqiang.setOnClickListener {
showHistoryPage("实时风向")
}
- binding.rlFengshu.setOnClickListener {
+ binding.rlYuliang.setOnClickListener {
showHistoryPage("日雨量累计")
}
}
@@ -122,10 +98,9 @@ class WeatherActivity : BaseActivityOaToolbarViewBinding
}
private fun showHistoryPage(type: String) {
- val intent = Intent(context, WorkTickerAssistantSelectListActivity::class.java)
+ val intent = Intent(context, WeatherHistoryActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
- intent.putExtra("selectList", GsonUtils.GsonString(selectListAssistant))
- intent.putExtra("jobNoList", GsonUtils.GsonString(jobNoListAssistant))
+ intent.putExtra("dataType", type)
startActivity(intent)
}
@@ -173,14 +148,4 @@ class WeatherActivity : BaseActivityOaToolbarViewBinding
}
})
}
-
-
-
- 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/WeatherHistoryActivity.kt b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WeatherHistoryActivity.kt
new file mode 100644
index 0000000..4451476
--- /dev/null
+++ b/app/src/main/java/com/rehome/zhdcoa/ui/activity/WeatherHistoryActivity.kt
@@ -0,0 +1,190 @@
+package com.rehome.zhdcoa.ui.activity
+
+
+import android.annotation.SuppressLint
+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.WeatherHistoryAdapter
+import com.rehome.zhdcoa.adapter.WorkRiskLevelListAdapter
+import com.rehome.zhdcoa.base.BaseActivityOaToolbarTwoViewBinding
+import com.rehome.zhdcoa.base.BaseActivityOaToolbarViewBinding
+import com.rehome.zhdcoa.bean.WeatherHistoryBean
+import com.rehome.zhdcoa.bean.WeatherRealDataBean
+import com.rehome.zhdcoa.bean.WorkRiskLevelListBean
+import com.rehome.zhdcoa.completionUtil.ReplaceSpan
+import com.rehome.zhdcoa.completionUtil.ReplaceSpan.OnClickListener
+import com.rehome.zhdcoa.databinding.ActivityWeatherBinding
+import com.rehome.zhdcoa.databinding.ActivityWeatherHistoryBinding
+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
+
+
+/**
+ * Create By HuangWenFei
+ * 创建日期:2025-09-19 16:51
+ * 描述:气象 历史数据
+ */
+class WeatherHistoryActivity : BaseActivityOaToolbarViewBinding() {
+
+ private lateinit var headView: View
+
+ private var datas: MutableList = mutableListOf()
+ private lateinit var mAdapter: WeatherHistoryAdapter
+ private lateinit var dataType: String
+
+ 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 page = 1
+ private var pageSize = 500
+
+ override fun getViewBinding() = ActivityWeatherHistoryBinding.inflate(layoutInflater)
+
+ override fun getToolbar() = binding.toolbarView.toolbar
+
+ override fun initView() {
+
+ initToolbar("历史数据", "", {
+
+ })
+ dataType = intent.getStringExtra("dataType").toString()
+ binding.itemHead.tvDataType.text = dataType
+
+// item_weather_list
+// item_weather_header
+
+ //格式化日期的对象(转化成习惯的时间格式)
+ val sdFormat = SimpleDateFormat("yyyy.MM.dd HH:mm:ss")
+ //静态方法getInstance()使用默认时区和语言环境获得一个日历。
+ val calendar = Calendar.getInstance()
+ //输出当前系统时间;
+ //binding.tvTime.text = sdFormat.format(calendar.time)
+
+ binding.lv.emptyView = binding.tvNodata
+ binding.tvNodata.visibility = View.VISIBLE
+ binding.lv.visibility = View.GONE
+ mAdapter = WeatherHistoryAdapter(this, datas)
+ binding.lv.adapter = mAdapter
+
+ }
+
+ @SuppressLint("SimpleDateFormat")
+ override fun initData() {
+ //格式化日期的对象(转化成习惯的时间格式)
+ val sdf = SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
+ //静态方法getInstance()使用默认时区和语言环境获得一个日历。
+ val calendarSt = Calendar.getInstance()
+ val calendarEt = Calendar.getInstance()
+
+ calendarSt.add(Calendar.HOUR, -2)
+ val st = sdf.format(calendarSt.time)
+ val et = sdf.format(calendarEt.time)
+
+ requestData(st, et);
+ }
+
+ private fun requestData(st: String, et: String) {
+ val request = NoHttp.createStringRequest(
+ Contans.BASE_URL + Contans.GET_WEATHER_HISTORY_DATA,
+ RequestMethod.GET
+ )
+
+ request.add("page", page)
+ request.add("pageSize", pageSize)
+// request.add("dataType",dataType)
+ request.add("times", st)
+ request.add("timee", et)
+
+ if ("大气温度" == dataType) {
+ request.add("dataType", "E16")
+ }
+ if ("大气湿度" == dataType) {
+ request.add("dataType", "E14")
+ }
+ if ("大气气压" == dataType) {
+ request.add("dataType", "E15")
+ }
+ if ("实时风速" == dataType) {
+ request.add("dataType", "E1")
+ }
+ if ("实时风向" == dataType) {
+ request.add("dataType", "E12")
+ }
+ if ("日雨量累计" == dataType) {
+ request.add("dataType", "E4")
+ }
+
+// 数据类型:
+// E1:风速(米/秒)
+// E4:日雨量(毫米)
+// E12:风向(度)
+// E14:湿度(%)
+// E15:气压(hPa)
+// E16:气温(摄氏度)
+
+
+ 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,
+ WeatherHistoryBean::class.java
+ )
+ if (bean != null && bean.code == 1 && bean.data != null && bean.data.size > 0) {
+ binding.tvNodata.visibility = View.GONE
+ binding.lv.visibility = View.VISIBLE
+ datas.clear()
+ datas.addAll(bean.data)
+ mAdapter.notifyDataSetChanged()
+ } else {
+ binding.tvNodata.visibility = View.VISIBLE
+ binding.lv.visibility = View.GONE
+ }
+ }
+
+ override fun onFailed(what: Int, response: Response?) {
+
+ }
+ })
+ }
+
+
+ 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/res/layout/activity_weather.xml b/app/src/main/res/layout/activity_weather.xml
index 1be05ff..310beb1 100644
--- a/app/src/main/res/layout/activity_weather.xml
+++ b/app/src/main/res/layout/activity_weather.xml
@@ -283,7 +283,7 @@
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
- android:textSize="20sp" />
+ android:textSize="15sp" />
+ android:textSize="15sp" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/adapter_weather_history.xml b/app/src/main/res/layout/adapter_weather_history.xml
new file mode 100644
index 0000000..62cd97e
--- /dev/null
+++ b/app/src/main/res/layout/adapter_weather_history.xml
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/item_weather_header.xml b/app/src/main/res/layout/item_weather_header.xml
new file mode 100644
index 0000000..b995d35
--- /dev/null
+++ b/app/src/main/res/layout/item_weather_header.xml
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/item_weather_list.xml b/app/src/main/res/layout/item_weather_list.xml
new file mode 100644
index 0000000..ce59b15
--- /dev/null
+++ b/app/src/main/res/layout/item_weather_list.xml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+