气象实时概况页面完成

master
wenfei 3 months ago
parent b49805a085
commit d4a66fc7e3

@ -584,10 +584,18 @@ public class Contans {
//通讯录
public static String GETCONTACTLIST_URL="PubFile/Data/GetAddressbookRsa.ashx";
//修改手机号或者密码
public static String UPLOAD_PHONE_OR_PWD_URL="PubFile/Data/aboutme/UpdateUserPwd.ashx";
//气象获取实时数据
public final static String GET_WEATHER_NOW_DATA = "PubFile/Data/QXZ/GetCurrentData.ashx";
//气象获取历史数据
public final static String GET_WEATHER_HISTORY_DATA = "PubFile/Data/QXZ/GetHistoryData.ashx";
//http://localhost:28105/PubFile/Data/QXZ/GetHistoryData.ashx?times=2025-09-07 00:00:00&timee=2025-09-19 23:00:00&page=2&pageSize=20&dataType=E1
//http://localhost:28105/PubFile/Data/QXZ/GetCurrentData.ashx
/**
*
*

@ -0,0 +1,196 @@
package com.rehome.zhdcoa.bean;
public class WeatherRealDataBean extends AIBaseBean{
private DataBean data;
public DataBean getData() {
return data;
}
public void setData(DataBean data) {
this.data = data;
}
public static class DataBean {
private String IDM;
private String IDFAC;
private String TIME;
private String E1;
private String E2;
private String E3;
private String E4;
private String E5;
private String E6;
private String E7;
private String E8;
private String E9;
private String E10;
private String E11;
private String E12;
private String E13;
private String E14;
private String E15;
private String E16;
private String TBSJ;
public String getIDM() {
return IDM;
}
public void setIDM(String IDM) {
this.IDM = IDM;
}
public String getIDFAC() {
return IDFAC;
}
public void setIDFAC(String IDFAC) {
this.IDFAC = IDFAC;
}
public String getTIME() {
return TIME;
}
public void setTIME(String TIME) {
this.TIME = TIME;
}
public String getE1() {
return E1;
}
public void setE1(String e1) {
E1 = e1;
}
public String getE2() {
return E2;
}
public void setE2(String e2) {
E2 = e2;
}
public String getE3() {
return E3;
}
public void setE3(String e3) {
E3 = e3;
}
public String getE4() {
return E4;
}
public void setE4(String e4) {
E4 = e4;
}
public String getE5() {
return E5;
}
public void setE5(String e5) {
E5 = e5;
}
public String getE6() {
return E6;
}
public void setE6(String e6) {
E6 = e6;
}
public String getE7() {
return E7;
}
public void setE7(String e7) {
E7 = e7;
}
public String getE8() {
return E8;
}
public void setE8(String e8) {
E8 = e8;
}
public String getE9() {
return E9;
}
public void setE9(String e9) {
E9 = e9;
}
public String getE10() {
return E10;
}
public void setE10(String e10) {
E10 = e10;
}
public String getE11() {
return E11;
}
public void setE11(String e11) {
E11 = e11;
}
public String getE12() {
return E12;
}
public void setE12(String e12) {
E12 = e12;
}
public String getE13() {
return E13;
}
public void setE13(String e13) {
E13 = e13;
}
public String getE14() {
return E14;
}
public void setE14(String e14) {
E14 = e14;
}
public String getE15() {
return E15;
}
public void setE15(String e15) {
E15 = e15;
}
public String getE16() {
return E16;
}
public void setE16(String e16) {
E16 = e16;
}
public String getTBSJ() {
return TBSJ;
}
public void setTBSJ(String TBSJ) {
this.TBSJ = TBSJ;
}
}
}

@ -12,9 +12,11 @@ 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.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.ActivityWorkRiskListBinding
import com.rehome.zhdcoa.utils.AuthenticationLoginAIUtils
import com.rehome.zhdcoa.utils.GsonUtils
@ -33,7 +35,7 @@ import javax.net.ssl.HostnameVerifier
* 创建日期2025-09-18 15:19
* 描述气象数据 实时概况
*/
class WeatherActivity : BaseActivityOaToolbarViewBinding<ActivityWorkRiskListBinding>() {
class WeatherActivity : BaseActivityOaToolbarViewBinding<ActivityWeatherBinding>() {
private lateinit var headView: View
@ -55,183 +57,88 @@ class WeatherActivity : BaseActivityOaToolbarViewBinding<ActivityWorkRiskListBin
private var dataC2: MutableList<WorkRiskLevelListBean.RowsBean> = mutableListOf()
private var dataC3: MutableList<WorkRiskLevelListBean.RowsBean> = mutableListOf()
private var dataLowRisk: MutableList<WorkRiskLevelListBean.RowsBean> = mutableListOf()
private var isNetworkNormal = false
private lateinit var launcherResultQRCode: ActivityResultLauncher<Intent>
override fun getViewBinding() = ActivityWorkRiskListBinding.inflate(layoutInflater)
override fun getViewBinding() = ActivityWeatherBinding.inflate(layoutInflater)
override fun getToolbar() = binding.toolbarView.toolbar
override fun initView() {
initToolbar("气象数据实时概况", "",{
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
binding.llRefresh.setOnClickListener { authenticationLoginAI() }
binding.llWorkTicket.setOnClickListener {
if(isNetworkNormal){
//进入风险提示页面 WorkTickerSelectListActivity
val intent = Intent(context, WorkTickerSelectListActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
intent.putExtra("selectList", GsonUtils.GsonString(selectList))
intent.putExtra("jobNoList", GsonUtils.GsonString(jobNoList))
startActivity(intent)
}else{
//WorkTickerAssistantSelectListActivity
showToast("列表数据加载失败,请检查网络环境或重新加载列表数据")
//格式化日期的对象(转化成习惯的时间格式)
val sdFormat = SimpleDateFormat("yyyy.MM.dd HH:mm:ss")
//静态方法getInstance()使用默认时区和语言环境获得一个日历。
val calendar = Calendar.getInstance()
//输出当前系统时间;
//binding.tvTime.text = sdFormat.format(calendar.time)
binding.tvRefresh1.setOnClickListener {
refreshData()
}
binding.tvRefresh2.setOnClickListener {
refreshData()
}
binding.llAssiting.setOnClickListener {
if(isNetworkNormal){
//进入风险提示页面 WorkTickerAssistantSelectListActivity
val intent = Intent(context, WorkTickerAssistantSelectListActivity::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))
startActivity(intent)
}else{
showToast("列表数据加载失败,请检查网络环境或重新加载列表数据")
binding.tvRefresh3.setOnClickListener {
refreshData()
}
binding.tvRefresh4.setOnClickListener {
refreshData()
}
binding.llCustomAdd.setOnClickListener {
if(isNetworkNormal){
//进入风险提示页面 WorkTickerAssistantSelectListActivity
val intent = Intent(context, WorkTickerCustomListActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
intent.putExtra("selectList", GsonUtils.GsonString(selectListCustom))
intent.putExtra("jobNoList", GsonUtils.GsonString(jobNoListCustom))
startActivity(intent)
}else{
showToast("列表数据加载失败,请检查网络环境或重新加载列表数据")
binding.tvRefresh5.setOnClickListener {
refreshData()
}
binding.tvRefresh6.setOnClickListener {
refreshData()
}
//格式化日期的对象(转化成习惯的时间格式)
val sdFormat = SimpleDateFormat("yyyy.MM.dd")
//静态方法getInstance()使用默认时区和语言环境获得一个日历。
val calendar = Calendar.getInstance()
//输出当前系统时间;
binding.tvTime.text = sdFormat.format(calendar.time)
bindViewClick()
binding.rlWendu.setOnClickListener {
showHistoryPage("大气温度")
}
override fun initData() {
authenticationLoginAI()
binding.rlShidu.setOnClickListener {
showHistoryPage("大气湿度")
}
override fun onRestart() {
super.onRestart()
authenticationLoginAI()
}
//创建一个ActivityResultLauncher
private fun createQRCodeActivityResultLauncher(): ActivityResultLauncher<Intent> {
//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)){
//刷新列表数据
authenticationLoginAI()
binding.rlQiya.setOnClickListener {
showHistoryPage("大气气压")
}
binding.rlFengqiang.setOnClickListener {
showHistoryPage("实时风速")
}
binding.rlYuliang.setOnClickListener {
showHistoryPage("实时风向")
}
binding.rlFengshu.setOnClickListener {
showHistoryPage("日雨量累计")
}
}
private fun authenticationLoginAI() {
try {
//AI三维登录接口
val userName = Contans.SP.AI_ACCOUNT
//String strPrivateEncode=RSAAndroid.encryptByPrivateKeyForSpiltStr(Contans.SP.AI_PWD,RSAAndroid.privateRsaKeyLocal);
val strPublicDecode = RSAAndroid.decryptByPublicKeyForSpiltStr(
Contans.SP.AI_PWD_ENCODE,
RSAAndroid.publicRsaKeyLocal
)
AuthenticationLoginAIUtils.authenticationAILoginShowProgress(
this, userName, strPublicDecode
) { _, token ->
if (token != null && token == "") {
showToast("AI三维平台登录失败")
isNetworkNormal = false
} else {
getWorkRiskListData()
}
private fun refreshData() {
requestData()
}
} catch (e: Exception) {
e.printStackTrace()
private fun showHistoryPage(type: String) {
val intent = Intent(context, WorkTickerAssistantSelectListActivity::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))
startActivity(intent)
}
override fun initData() {
requestData()
}
private fun getWorkRiskListData() {
private fun requestData() {
val request = NoHttp.createStringRequest(
Contans.BASE_URL_AI_3D_SERVER + Contans.DAYLY_RISK_LIST_NEW,
Contans.BASE_URL + Contans.GET_WEATHER_NOW_DATA,
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<String?> {
override fun onSucceed(what: Int, response: Response<String?>?) {
@ -240,128 +147,34 @@ class WeatherActivity : BaseActivityOaToolbarViewBinding<ActivityWorkRiskListBin
showLog(result)
val bean = GsonUtils.GsonToBean(
result,
WorkRiskLevelListBean::class.java
WeatherRealDataBean::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()
for(item in datas){
if("ticket" == item.type){
selectList.add(item.id)
jobNoList.add(item.jobNo)
}
if("assisting" == item.type){
selectListAssistant.add(item.id)
jobNoListAssistant.add(item.jobNo)
}
if("custom" == item.type){
selectListCustom.add(item.id)
jobNoListCustom.add(item.jobNo)
}
if (bean != null && bean.code==1 && bean.data != null) {
val data = bean.data
binding.timeQiya.text=data.tbsj
binding.timeShidu.text=data.tbsj
binding.timeWendu.text=data.tbsj
binding.timeFengsu.text=data.tbsj
binding.timeYuliang.text=data.tbsj
binding.timeFengxiang.text=data.tbsj
binding.tvWendu.text=data.e16
binding.tvShidu.text=data.e14
binding.tvQiya.text=data.e15
binding.tvFengsu.text=data.e1
binding.tvFengxiang.text=data.e12
binding.tvYuliang.text=data.e4
showLog(GsonUtils.GsonString(item))
if(item.level!=null&&item.level=="A"){
dataA.add(item)
}
if(item.level!=null&&item.level=="B"){
dataB.add(item)
}
if(item.level!=null&&item.level=="C1"){
dataC1.add(item)
}
if(item.level!=null&&item.level=="C2"){
dataC2.add(item)
}
if(item.level!=null&&item.level=="C3"){
dataC3.add(item)
}
if(item.level!=null&&item.level=="低风险"){
dataLowRisk.add(item)
}
}
binding.tvA.text = dataA.size.toString()
binding.tvB.text = dataB.size.toString()
binding.tvC1.text = dataC1.size.toString()
binding.tvC2.text = dataC2.size.toString()
binding.tvC3.text = dataC3.size.toString()
binding.tvLowLisk.text = dataLowRisk.size.toString()
} else {
binding.tvNodata.visibility = View.VISIBLE
}
}else{
isNetworkNormal = false
}
}
override fun onFailed(what: Int, response: Response<String?>?) {
isNetworkNormal = false
}
})
}
private fun bindViewClick() {
binding.tvA.setOnClickListener {
datas.clear()
datas.addAll(dataA)
mAdapter.notifyDataSetChanged()
}
binding.tvB.setOnClickListener {
datas.clear()
datas.addAll(dataB)
mAdapter.notifyDataSetChanged()
}
binding.tvC1.setOnClickListener {
datas.clear()
datas.addAll(dataC1)
mAdapter.notifyDataSetChanged()
}
binding.tvC2.setOnClickListener {
datas.clear()
datas.addAll(dataC2)
mAdapter.notifyDataSetChanged()
}
binding.tvC3.setOnClickListener {
datas.clear()
datas.addAll(dataC3)
mAdapter.notifyDataSetChanged()
}
binding.tvLowLisk.setOnClickListener {
datas.clear()
datas.addAll(dataLowRisk)
mAdapter.notifyDataSetChanged()
}
binding.tvReport.setOnClickListener {
val intent = Intent(context, WorkRiskListReportActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_SINGLE_TOP)
startActivity(intent)
}
}
private fun toWorkRiskListHuiBaoActivity(type:String){
//工作情况汇报

@ -209,8 +209,8 @@ class HomeFragment : BaseViewBindingFragment<FragmentHomeBinding>() {
"党建",
// "工会培训问卷",
"生产过程监督",
"安防"
//"气象数据"
"安防",
"气象数据"
)
val imgIds = intArrayOf(
// R.drawable.icon_visit,
@ -225,8 +225,8 @@ class HomeFragment : BaseViewBindingFragment<FragmentHomeBinding>() {
R.drawable.icon_dj,
// R.drawable.gh_icon,
R.drawable.icon_gcjd,
R.drawable.icon1
//R.drawable.real_weather
R.drawable.icon1,
R.drawable.icon_weather
)
for (i in titles.indices) {
val item = GridItem(titles[i], imgIds[i])

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

@ -0,0 +1,16 @@
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<solid
android:color="#ffffff">
</solid>
<stroke
android:width="1dp"
android:color="#dddddd">
</stroke>
<corners
android:topLeftRadius="10dp"
android:topRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:bottomRightRadius="10dp">
</corners>
</shape>

@ -11,394 +11,643 @@
layout="@layout/layout_base" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_height="120dp"
android:layout_marginStart="10dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="10dp"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/ll_workTicket"
android:layout_width="0dp"
android:layout_height="40dp"
android:background="#cccccc"
android:layout_height="match_parent"
android:background="@drawable/lv_border_all_weather"
android:layout_weight="1"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="120dp"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:layout_weight="2"
android:orientation="vertical">
<TextView
android:id="@+id/tv_workTicket"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="32dp"
android:id="@+id/rl_wendu"
android:gravity="center_vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="大气温度"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:gravity="center"
android:paddingEnd="20dp"
android:textSize="16sp"
android:text="工作票"/>
android:textSize="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="12dp"
android:layout_marginTop="6dp"
android:src="@drawable/arrow_right_weather"
android:contentDescription="" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_wendu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
android:textSize="20sp" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/tv_wendu"
android:layout_alignParentEnd="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="12dp"
android:text="°C"
android:textColor="#000000"
android:textSize="18sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/time_wendu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="2025-09-08 13:12:11"
android:textColor="#666666"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:background="#aaaaaa" />
<LinearLayout
android:id="@+id/ll_assiting"
android:layout_width="0dp"
android:layout_height="40dp"
android:background="#cccccc"
android:layout_width="70dp"
android:layout_height="120dp"
android:layout_weight="1"
android:gravity="center|bottom"
android:paddingBottom="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_assiting"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/colorPrimary"
android:id="@+id/tv_refresh1"
android:layout_width="25dp"
android:layout_height="25dp"
android:gravity="center"
android:textSize="16sp"
android:text="辅助工作"/>
android:background="@drawable/icon_refresh"
android:text=""/>
</LinearLayout>
</LinearLayout>
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:background="#aaaaaa" />
<LinearLayout
android:id="@+id/ll_custom_add"
android:layout_width="0dp"
android:layout_height="40dp"
android:background="#cccccc"
android:layout_height="match_parent"
android:background="@drawable/lv_border_all_weather"
android:layout_weight="1"
android:layout_marginStart="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="120dp"
android:layout_weight="2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_custom_add"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/colorPrimary"
android:gravity="center"
android:textSize="16sp"
android:text="手动添加"/>
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
<LinearLayout
<RelativeLayout
android:id="@+id/rl_shidu"
android:layout_width="match_parent"
android:layout_height="32dp"
android:gravity="center_vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="5dp"
android:paddingEnd="5dp"
android:paddingTop="5dp"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical">
android:layout_marginStart="12dp"
android:text="大气湿度"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:textSize="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="12dp"
android:layout_marginTop="6dp"
android:src="@drawable/arrow_right_weather"
android:contentDescription="" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_shidu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
android:textSize="20sp" />
<LinearLayout
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:minHeight="66px">
android:layout_toRightOf="@+id/tv_shidu"
android:layout_alignParentEnd="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="12dp"
android:text="%"
android:textColor="#000000"
android:textSize="18sp" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center">
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/time_shidu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:text="每日作业风险清单" />
</LinearLayout>
android:layout_marginStart="12dp"
android:text="2025-09-08 13:12:11"
android:textColor="#666666"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_width="70dp"
android:layout_height="120dp"
android:layout_weight="1"
android:gravity="center">
android:gravity="center|bottom"
android:paddingBottom="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_time"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text=""
android:textSize="18sp" />
android:id="@+id/tv_refresh2"
android:layout_width="25dp"
android:layout_height="25dp"
android:gravity="center"
android:background="@drawable/icon_refresh"
android:text=""/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="80px"
android:gravity="center"
android:layout_marginTop="5dp"
android:layout_height="120dp"
android:layout_marginStart="10dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/lv_border_all_weather"
android:layout_weight="1"
android:orientation="horizontal"
android:minHeight="60px">
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="120dp"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:layout_weight="2"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_qiya"
android:layout_width="match_parent"
android:layout_height="32dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_a_desc"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|right"
android:layout_weight="1"
android:textSize="20sp"
android:text="A:" />
android:layout_marginStart="12dp"
android:text="大气气压"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:textSize="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="12dp"
android:layout_marginTop="6dp"
android:src="@drawable/arrow_right_weather"
android:contentDescription="" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_a"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:layout_marginStart="5dp"
android:textColor="#FFA500"
android:textSize="20sp"
android:text="0" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:id="@+id/tv_qiya"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal"
android:minHeight="60px">
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
android:textSize="20sp" />
<TextView
android:id="@+id/tv_b_desc"
android:layout_width="0dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|right"
android:layout_weight="1"
android:textSize="20sp"
android:text="B:" />
android:layout_toRightOf="@+id/tv_qiya"
android:layout_alignParentEnd="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="12dp"
android:text="hpa"
android:textColor="#000000"
android:textSize="18sp" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_b"
android:layout_width="0dp"
android:id="@+id/time_qiya"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:layout_marginStart="5dp"
android:textColor="#FFA500"
android:textSize="20sp"
android:text="0" />
android:layout_marginStart="12dp"
android:text="2025-09-08 13:12:11"
android:textColor="#666666"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="70dp"
android:layout_height="120dp"
android:layout_weight="1"
android:gravity="center|bottom"
android:paddingBottom="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_refresh3"
android:layout_width="25dp"
android:layout_height="25dp"
android:gravity="center"
android:background="@drawable/icon_refresh"
android:text=""/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/lv_border_all_weather"
android:layout_weight="1"
android:orientation="horizontal"
android:minHeight="60px">
android:layout_marginStart="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="120dp"
android:layout_weight="2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_fengshu"
android:layout_width="match_parent"
android:layout_height="32dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_c1_desc"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|right"
android:layout_weight="1.2"
android:textSize="20sp"
android:text="C1:" />
android:layout_marginStart="12dp"
android:text="实时风速"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:textSize="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="12dp"
android:layout_marginTop="6dp"
android:src="@drawable/arrow_right_weather"
android:contentDescription="" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_c1"
android:layout_width="0dp"
android:id="@+id/tv_fengsu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.8"
android:gravity="center_vertical|left"
android:layout_marginStart="5dp"
android:textColor="#FFA500"
android:textSize="20sp"
android:text="0" />
</LinearLayout>
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
android:textSize="20sp" />
</LinearLayout>
<LinearLayout
<TextView
android:layout_width="match_parent"
android:layout_height="80px"
android:gravity="center"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal"
android:minHeight="60px">
android:layout_toRightOf="@+id/tv_fengsu"
android:layout_alignParentEnd="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="12dp"
android:text="米/秒"
android:textColor="#000000"
android:textSize="18sp" />
</RelativeLayout>
<TextView
android:id="@+id/tv_c2_desc"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center|right"
android:text="C2:"
android:textSize="20sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_c2"
android:layout_width="0dp"
android:id="@+id/time_fengsu"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="2025-09-08 13:12:11"
android:textColor="#666666"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="70dp"
android:layout_height="120dp"
android:layout_weight="1"
android:layout_gravity="center"
android:gravity="center_vertical|left"
android:layout_marginStart="5dp"
android:textColor="#FFA500"
android:textSize="20sp"
android:text="0" />
android:gravity="center|bottom"
android:paddingBottom="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_refresh4"
android:layout_width="25dp"
android:layout_height="25dp"
android:gravity="center"
android:background="@drawable/icon_refresh"
android:text=""/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="120dp"
android:layout_margin="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/lv_border_all_weather"
android:layout_weight="1"
android:orientation="horizontal"
android:minHeight="60px">
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="120dp"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:layout_weight="2"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_fengqiang"
android:layout_width="match_parent"
android:layout_height="32dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_c3_desc"
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|right"
android:layout_weight="1"
android:textSize="20sp"
android:text="C3:" />
android:layout_marginStart="12dp"
android:text="实时风向"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:textSize="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="12dp"
android:layout_marginTop="6dp"
android:src="@drawable/arrow_right_weather"
android:contentDescription="" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_c3"
android:layout_width="0dp"
android:id="@+id/tv_fengxiang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:layout_marginStart="5dp"
android:textColor="#FFA500"
android:textSize="20sp"
android:text="0" />
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
android:textSize="20sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal"
android:minHeight="60px">
android:layout_toRightOf="@+id/tv_fengxiang"
android:layout_alignParentEnd="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="12dp"
android:text="°"
android:textColor="#000000"
android:textSize="18sp" />
</RelativeLayout>
<TextView
android:id="@+id/tv_lowLisk_desc"
android:layout_width="0dp"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center|right"
android:layout_weight="1.2"
android:textSize="20sp"
android:text="低风险:" />
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_lowLisk"
android:layout_width="0dp"
android:id="@+id/time_fengxiang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.8"
android:gravity="center_vertical|left"
android:layout_marginStart="5dp"
android:textColor="#FFA500"
android:textSize="20sp"
android:text="0" />
android:layout_marginStart="12dp"
android:text="2025-09-08 13:12:11"
android:textColor="#666666"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="70dp"
android:layout_height="120dp"
android:layout_weight="1"
android:gravity="center|bottom"
android:paddingBottom="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_refresh5"
android:layout_width="25dp"
android:layout_height="25dp"
android:gravity="center"
android:background="@drawable/icon_refresh"
android:text=""/>
</LinearLayout>
<include
android:id="@+id/item_head"
layout="@layout/item_work_risk_list"
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:background="@drawable/lv_border_all_weather"
android:layout_weight="1"
android:layout_marginStart="10dp"
android:orientation="horizontal">
<LinearLayout
android:layout_width="match_parent"
android:layout_marginStart="10px"
android:layout_marginEnd="10px"
android:layout_marginTop="5dp"
android:layout_height="wrap_content" />
<FrameLayout
android:layout_height="120dp"
android:layout_weight="2"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="10px"
android:layout_marginEnd="10px"
android:layout_marginBottom="10px"
android:layout_weight="1">
android:orientation="vertical">
<ListView
android:id="@+id/lv"
<RelativeLayout
android:id="@+id/rl_yuliang"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="#00000000"
android:dividerHeight="0px"/>
android:layout_height="32dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_name_sd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="日雨量累计"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:textSize="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_marginEnd="12dp"
android:layout_marginTop="6dp"
android:src="@drawable/arrow_right_weather"
android:contentDescription="" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="24dp"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_yuliang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="0"
android:textColor="#000000"
android:textSize="20sp" />
<TextView
android:id="@+id/tv_nodata"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/viewfinder_mask"
android:gravity="center"
android:text="暂无数据"/>
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/tv_yuliang"
android:layout_alignParentEnd="true"
android:layout_marginStart="10dp"
android:layout_marginEnd="12dp"
android:text="毫米"
android:textColor="#000000"
android:textSize="18sp" />
</RelativeLayout>
</FrameLayout>
<LinearLayout
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/colorPrimary"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="1"
android:background="@color/colorPrimary"
android:orientation="vertical">
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:gravity="center_vertical">
<TextView
android:id="@+id/tv_report"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/white"
android:gravity="center"
android:textSize="16sp"
android:text="查看报告"/>
android:id="@+id/time_yuliang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:text="2025-09-08 13:12:11"
android:textColor="#666666"
android:textSize="12sp" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<View
android:layout_width="2dp"
android:layout_height="match_parent"
android:background="#aaaaaa" />
<LinearLayout
android:id="@+id/ll_refresh"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_width="70dp"
android:layout_height="120dp"
android:layout_weight="1"
android:background="@color/colorPrimary"
android:gravity="center|bottom"
android:paddingBottom="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/tv_refresh"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/white"
android:id="@+id/tv_refresh6"
android:layout_width="25dp"
android:layout_height="25dp"
android:gravity="center"
android:textSize="16sp"
android:text="重新加载列表数据"/>
android:background="@drawable/icon_refresh"
android:text=""/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>

@ -4,6 +4,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#E7F1F7"
tools:context=".ui.activity.WorkRiskListActivity">
<include

Loading…
Cancel
Save