diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_red.xml b/app/src/main/res/drawable/ic_dot_red.xml new file mode 100644 index 0000000..cb190e5 --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_red.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_red.xml b/app/src/main/res/drawable/ic_dot_red.xml new file mode 100644 index 0000000..cb190e5 --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_red.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_equipment_detail.xml b/app/src/main/res/layout/activity_equipment_detail.xml index d0b6d73..9a98227 100644 --- a/app/src/main/res/layout/activity_equipment_detail.xml +++ b/app/src/main/res/layout/activity_equipment_detail.xml @@ -8,6 +8,11 @@ + + { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_red.xml b/app/src/main/res/drawable/ic_dot_red.xml new file mode 100644 index 0000000..cb190e5 --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_red.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_equipment_detail.xml b/app/src/main/res/layout/activity_equipment_detail.xml index d0b6d73..9a98227 100644 --- a/app/src/main/res/layout/activity_equipment_detail.xml +++ b/app/src/main/res/layout/activity_equipment_detail.xml @@ -8,6 +8,11 @@ + + - - - \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_red.xml b/app/src/main/res/drawable/ic_dot_red.xml new file mode 100644 index 0000000..cb190e5 --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_red.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_equipment_detail.xml b/app/src/main/res/layout/activity_equipment_detail.xml index d0b6d73..9a98227 100644 --- a/app/src/main/res/layout/activity_equipment_detail.xml +++ b/app/src/main/res/layout/activity_equipment_detail.xml @@ -8,6 +8,11 @@ + + - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_equipment_state_change_log.xml b/app/src/main/res/layout/fragment_equipment_state_change_log.xml new file mode 100644 index 0000000..d578419 --- /dev/null +++ b/app/src/main/res/layout/fragment_equipment_state_change_log.xml @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_red.xml b/app/src/main/res/drawable/ic_dot_red.xml new file mode 100644 index 0000000..cb190e5 --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_red.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_equipment_detail.xml b/app/src/main/res/layout/activity_equipment_detail.xml index d0b6d73..9a98227 100644 --- a/app/src/main/res/layout/activity_equipment_detail.xml +++ b/app/src/main/res/layout/activity_equipment_detail.xml @@ -8,6 +8,11 @@ + + - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_equipment_state_change_log.xml b/app/src/main/res/layout/fragment_equipment_state_change_log.xml new file mode 100644 index 0000000..d578419 --- /dev/null +++ b/app/src/main/res/layout/fragment_equipment_state_change_log.xml @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_entrust_log_rv_l.xml b/app/src/main/res/layout/item_entrust_log_rv_l.xml index 95106e9..c995428 100644 --- a/app/src/main/res/layout/item_entrust_log_rv_l.xml +++ b/app/src/main/res/layout/item_entrust_log_rv_l.xml @@ -13,23 +13,25 @@ + android:background="@color/hintColor" /> + android:background="@drawable/ic_dot" /> + android:background="@color/hintColor" /> diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt index 2ee9631..83ba5ec 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/entrust/LogRecordFragment.kt @@ -38,17 +38,17 @@ .setTextColor(R.id.remarkView, Color.BLACK) viewHolder.setVisibility(R.id.topLineView, View.INVISIBLE) - viewHolder.setImageResource(R.id.tagImageView, R.drawable.dot_top) + viewHolder.setImageResource(R.id.tagImageView, R.drawable.ic_dot_red) } it.data.size - 1 -> { viewHolder.setVisibility(R.id.bottomLineView, View.INVISIBLE) viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_bottom + R.id.tagImageView, R.drawable.ic_dot_gray ) } else -> { viewHolder.setImageResource( - R.id.tagImageView, R.drawable.dot_middle + R.id.tagImageView, R.drawable.ic_dot ) } } diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt deleted file mode 100644 index 394fae6..0000000 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/ChangeRecordFragment.kt +++ /dev/null @@ -1,24 +0,0 @@ -package com.casic.xz.meterage.fragment.equipment - -import com.casic.xz.meterage.R -import com.pengxh.kt.lite.base.KotlinBaseFragment - -class ChangeRecordFragment : KotlinBaseFragment() { - override fun initData() { - - } - - override fun initEvent() { - - } - - override fun initLayoutView(): Int = R.layout.fragment_equipment_change_record - - override fun observeRequestState() { - - } - - override fun setupTopBarLayout() { - - } -} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt new file mode 100644 index 0000000..2b40221 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/StateChangeLogFragment.kt @@ -0,0 +1,59 @@ +package com.casic.xz.meterage.fragment.equipment + +import androidx.lifecycle.ViewModelProvider +import androidx.recyclerview.widget.DividerItemDecoration +import com.casic.xz.meterage.R +import com.casic.xz.meterage.model.EquipmentStateChangeModel +import com.casic.xz.meterage.vm.EquipmentViewModel +import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter +import com.pengxh.kt.lite.adapter.ViewHolder +import com.pengxh.kt.lite.base.KotlinBaseFragment +import kotlinx.android.synthetic.main.fragment_equipment_state_change_log.* + +class StateChangeLogFragment(private val id: String) : KotlinBaseFragment() { + + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] + equipmentViewModel.getEquipmentStateChangeLog(id) + equipmentViewModel.stateChangeResult.observe(this) { + if (it.code == 200) { + val stateLogAdapter = + object : NormalRecyclerAdapter( + R.layout.item_equipment_state_change_log_rv_l, it.data + ) { + override fun convertView( + viewHolder: ViewHolder, + position: Int, + item: EquipmentStateChangeModel.DataModel + ) { + viewHolder.setText( + R.id.nameTagView, item.applyPersonName.last().toString() + ).setText(R.id.userNameView, item.applyPersonName) + .setText(R.id.dateView, "时间:${item.startDate} ~ ${item.endDate}") + .setText(R.id.stateView, "状态:${item.managerStateName}") + } + } + stateLogRecyclerView.addItemDecoration( + DividerItemDecoration(requireContext(), DividerItemDecoration.VERTICAL) + ) + stateLogRecyclerView.adapter = stateLogAdapter + } + } + } + + override fun initEvent() { + + } + + override fun initLayoutView(): Int = R.layout.fragment_equipment_state_change_log + + override fun observeRequestState() { + + } + + override fun setupTopBarLayout() { + + } +} \ No newline at end of file diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt index 29a3d26..5c98be3 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/equipment/UsageRecordFragment.kt @@ -1,11 +1,16 @@ package com.casic.xz.meterage.fragment.equipment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R +import com.casic.xz.meterage.vm.EquipmentViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment -class UsageRecordFragment : KotlinBaseFragment() { - override fun initData() { +class UsageRecordFragment(private val id: String) : KotlinBaseFragment() { + private lateinit var equipmentViewModel: EquipmentViewModel + + override fun initData() { + equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java] } override fun initEvent() { diff --git a/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java new file mode 100644 index 0000000..d540a00 --- /dev/null +++ b/app/src/main/java/com/casic/xz/meterage/model/EquipmentStateChangeModel.java @@ -0,0 +1,163 @@ +package com.casic.xz.meterage.model; + +import java.util.List; + +public class EquipmentStateChangeModel { + + private int code; + private List data; + private String message; + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } + + public List getData() { + return data; + } + + public void setData(List data) { + this.data = data; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public static class DataModel { + private String applyId; + private String applyPerson; + private String applyPersonName; + private String createTime; + private String createUser; + private String endDate; + private String equipmentId; + private String id; + private String isDel; + private String managerState; + private String managerStateName; + private String remark; + private String startDate; + private String updateTime; + + public String getApplyId() { + return applyId; + } + + public void setApplyId(String applyId) { + this.applyId = applyId; + } + + public String getApplyPerson() { + return applyPerson; + } + + public void setApplyPerson(String applyPerson) { + this.applyPerson = applyPerson; + } + + public String getApplyPersonName() { + return applyPersonName; + } + + public void setApplyPersonName(String applyPersonName) { + this.applyPersonName = applyPersonName; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public String getCreateUser() { + return createUser; + } + + public void setCreateUser(String createUser) { + this.createUser = createUser; + } + + public String getEndDate() { + return endDate; + } + + public void setEndDate(String endDate) { + this.endDate = endDate; + } + + public String getEquipmentId() { + return equipmentId; + } + + public void setEquipmentId(String equipmentId) { + this.equipmentId = equipmentId; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getIsDel() { + return isDel; + } + + public void setIsDel(String isDel) { + this.isDel = isDel; + } + + public String getManagerState() { + return managerState; + } + + public void setManagerState(String managerState) { + this.managerState = managerState; + } + + public String getManagerStateName() { + return managerStateName; + } + + public void setManagerStateName(String managerStateName) { + this.managerStateName = managerStateName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStartDate() { + return startDate; + } + + public void setStartDate(String startDate) { + this.startDate = startDate; + } + + public String getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(String updateTime) { + this.updateTime = updateTime; + } + } +} diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt index 6e7a0c9..44282fc 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt @@ -175,6 +175,15 @@ ): String /** + * 获取仪器设备状态变更记录 + */ + @POST("/meter/assets/queryStateChangeLogList") + suspend fun getEquipmentStateChangeLog( + @Header("token") token: String, + @Body requestBody: RequestBody + ): String + + /** * 获取检定规程列表 */ @POST("/meter/standard/regulation/listPage") diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt index a6affba..300a8d6 100644 --- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt +++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt @@ -374,6 +374,18 @@ } /** + * 获取仪器设备状态变更记录 + */ + suspend fun getEquipmentStateChangeLog(id: String): String { + val paramObject = JSONObject() + paramObject["id"] = id + val requestBody = paramObject.toString().toRequestBody( + "application/json;charset=UTF-8".toMediaType() + ) + return api.getEquipmentStateChangeLog(AuthenticationHelper.token!!, requestBody) + } + + /** * 获取检定规程列表 */ suspend fun getVerifyProcedureList(id: String): String { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt index 7dee13c..d5e5b34 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/EquipmentDetailActivity.kt @@ -21,8 +21,8 @@ fragmentPages.add(BasicInformationFragment(equipmentId)) fragmentPages.add(InspectionRecordFragment()) - fragmentPages.add(ChangeRecordFragment()) - fragmentPages.add(UsageRecordFragment()) + fragmentPages.add(StateChangeLogFragment(equipmentId)) + fragmentPages.add(UsageRecordFragment(equipmentId)) fragmentPages.add(CertificateFragment()) val equipmentPageTitles = arrayOf("基础信息", "周检记录", "状态变更记录", "使用记录", "检定证书") diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt index cf2b7a0..2997f22 100644 --- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt +++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt @@ -24,6 +24,8 @@ val standardDeviceList = MutableLiveData() val standardDeviceDetail = MutableLiveData() val supportEquipmentList = MutableLiveData() + val stateChangeResult = MutableLiveData() +// val usageResult = MutableLiveData() fun getEquipmentList( equipmentNo: String, @@ -166,4 +168,22 @@ loadState.value = LoadState.Fail it.cause.toString().show(BaseApplication.get()) }) + + fun getEquipmentStateChangeLog(id: String) = launch({ + loadState.value = LoadState.Loading + val response = RetrofitServiceManager.getEquipmentStateChangeLog(id) + val responseCode = response.separateResponseCode() + if (responseCode == 200) { + loadState.value = LoadState.Success + stateChangeResult.value = gson.fromJson( + response, object : TypeToken() {}.type + ) + } else { + loadState.value = LoadState.Fail + response.toErrorMessage().show(BaseApplication.get()) + } + }, { + loadState.value = LoadState.Fail + it.cause.toString().show(BaseApplication.get()) + }) } \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_bottom.xml b/app/src/main/res/drawable/dot_bottom.xml deleted file mode 100644 index 2b18622..0000000 --- a/app/src/main/res/drawable/dot_bottom.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_middle.xml b/app/src/main/res/drawable/dot_middle.xml deleted file mode 100644 index 26ecfb9..0000000 --- a/app/src/main/res/drawable/dot_middle.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/dot_top.xml b/app/src/main/res/drawable/dot_top.xml deleted file mode 100644 index abc1a8d..0000000 --- a/app/src/main/res/drawable/dot_top.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_dot.xml b/app/src/main/res/drawable/ic_dot.xml new file mode 100644 index 0000000..ee801ca --- /dev/null +++ b/app/src/main/res/drawable/ic_dot.xml @@ -0,0 +1,13 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_gray.xml b/app/src/main/res/drawable/ic_dot_gray.xml new file mode 100644 index 0000000..5a1a24a --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_gray.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/ic_dot_red.xml b/app/src/main/res/drawable/ic_dot_red.xml new file mode 100644 index 0000000..cb190e5 --- /dev/null +++ b/app/src/main/res/drawable/ic_dot_red.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/layout/activity_equipment_detail.xml b/app/src/main/res/layout/activity_equipment_detail.xml index d0b6d73..9a98227 100644 --- a/app/src/main/res/layout/activity_equipment_detail.xml +++ b/app/src/main/res/layout/activity_equipment_detail.xml @@ -8,6 +8,11 @@ + + - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_equipment_state_change_log.xml b/app/src/main/res/layout/fragment_equipment_state_change_log.xml new file mode 100644 index 0000000..d578419 --- /dev/null +++ b/app/src/main/res/layout/fragment_equipment_state_change_log.xml @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_entrust_log_rv_l.xml b/app/src/main/res/layout/item_entrust_log_rv_l.xml index 95106e9..c995428 100644 --- a/app/src/main/res/layout/item_entrust_log_rv_l.xml +++ b/app/src/main/res/layout/item_entrust_log_rv_l.xml @@ -13,23 +13,25 @@ + android:background="@color/hintColor" /> + android:background="@drawable/ic_dot" /> + android:background="@color/hintColor" /> diff --git a/app/src/main/res/layout/item_equipment_state_change_log_rv_l.xml b/app/src/main/res/layout/item_equipment_state_change_log_rv_l.xml new file mode 100644 index 0000000..fcc5214 --- /dev/null +++ b/app/src/main/res/layout/item_equipment_state_change_log_rv_l.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file