|
@@ -25,6 +25,7 @@ import com.pan_american.android.data.model.common.entity.SimpleGroupInfo
|
|
|
import com.pan_american.android.data.model.common.network.SimpleGroupInfoRequest
|
|
|
import com.pan_american.android.data.model.common.network.SimpleGroupInfoResponse
|
|
|
import com.pan_american.android.data.model.personnel_module.materials_operate.entity.MaterialTypeData
|
|
|
+import com.pan_american.android.data.model.personnel_module.materials_operate.entity.SimpleUserInfo
|
|
|
import com.pan_american.android.databinding.FragmentMaterialHistorySearchBinding
|
|
|
import com.scwang.smart.refresh.layout.api.RefreshLayout
|
|
|
import com.scwang.smart.refresh.layout.listener.OnRefreshLoadMoreListener
|
|
@@ -36,11 +37,15 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
|
|
|
private var materialSearchBaseData = OASystem.materialBaseData
|
|
|
|
|
|
+ private var materialUser = OASystem.materialPerson
|
|
|
+
|
|
|
private var materialTypeId = 0
|
|
|
|
|
|
- private var detailTypeIds = arrayListOf(0)
|
|
|
+ private var materialTypes = arrayListOf(0)
|
|
|
+
|
|
|
+ private var userIds = arrayListOf(0)
|
|
|
|
|
|
- private var groupIds = arrayListOf(0)
|
|
|
+ private var groupIds = arrayListOf(-3)
|
|
|
|
|
|
private var verifyStatusIds = arrayListOf(-1)
|
|
|
|
|
@@ -62,13 +67,7 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
name = resources.getString(R.string.all)
|
|
|
})
|
|
|
|
|
|
- for (item in materialSearchBaseData) {
|
|
|
- item.subTypeItems.add(0, MaterialTypeData.SubTypeItem().apply {
|
|
|
- id = 0
|
|
|
- sTid = item.id
|
|
|
- name = resources.getString(R.string.all)
|
|
|
- })
|
|
|
- }
|
|
|
+ materialUser.add(0, SimpleUserInfo(id = 0, userName = resources.getString(R.string.all)))
|
|
|
|
|
|
initViews()
|
|
|
|
|
@@ -79,9 +78,7 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
|
|
|
binding.materialType.text = resources.getString(R.string.all)
|
|
|
|
|
|
- binding.detailType.text = resources.getString(R.string.all)
|
|
|
-
|
|
|
- binding.associationGroup.text = resources.getString(R.string.all)
|
|
|
+ binding.applicationPerson.text = resources.getString(R.string.all)
|
|
|
|
|
|
binding.verifyStatus.text = resources.getString(R.string.all)
|
|
|
|
|
@@ -92,7 +89,7 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
binding.materialType.setOnClickListener {
|
|
|
showSelector {
|
|
|
val adapter = ListAdapter.Builder<MaterialTypeData>().apply {
|
|
|
- setData(OASystem.materialBaseData)
|
|
|
+ setData(materialSearchBaseData)
|
|
|
setLayoutId(R.layout.item_selector)
|
|
|
addBindView { itemView, data ->
|
|
|
itemView.findViewById<TextView>(R.id.selector_item_name).apply {
|
|
@@ -124,18 +121,45 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
adapter.onRecyclerViewItemClick = object : ListAdapter.OnRecyclerViewItemClick<MaterialTypeData> {
|
|
|
override fun onItemClick(position: Int) {
|
|
|
|
|
|
- OASystem.materialBaseData[position].apply {
|
|
|
+ materialSearchBaseData[position].apply {
|
|
|
+
|
|
|
+ if (id == 0) {
|
|
|
+
|
|
|
+ materialTypes.clear()
|
|
|
|
|
|
- if (materialTypeId != id) {
|
|
|
- materialTypeId = id
|
|
|
+ materialTypes.add(id)
|
|
|
|
|
|
binding.materialType.text = name
|
|
|
|
|
|
- detailTypeIds.clear()
|
|
|
+ } else {
|
|
|
+
|
|
|
+ materialTypes.remove(0)
|
|
|
+
|
|
|
+ if (materialTypes.contains(id)) {
|
|
|
+ materialTypes.remove(id)
|
|
|
+ } else {
|
|
|
+ materialTypes.add(id)
|
|
|
+ }
|
|
|
+
|
|
|
+ var valueString = ""
|
|
|
+
|
|
|
+ var i = 0
|
|
|
+
|
|
|
+ while (i < materialTypes.size) {
|
|
|
+ for (item in materialSearchBaseData) {
|
|
|
+ if (materialTypes[i] == item.id) {
|
|
|
+ valueString += item.name
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ i++
|
|
|
|
|
|
- detailTypeIds.add(0)
|
|
|
+ if (i < materialTypes.size) {
|
|
|
+ valueString += "\t\t"
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- binding.detailType.text = resources.getString(R.string.all)
|
|
|
+ binding.materialType.text = valueString.trim()
|
|
|
}
|
|
|
|
|
|
popupWindow.dismiss()
|
|
@@ -145,27 +169,18 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- binding.detailType.setOnClickListener {
|
|
|
- val subTypeItem = ArrayList<MaterialTypeData.SubTypeItem>()
|
|
|
-
|
|
|
+ binding.applicationPerson.setOnClickListener {
|
|
|
showSelector {
|
|
|
- val adapter = ListAdapter.Builder<MaterialTypeData.SubTypeItem>().apply {
|
|
|
- for (item in materialSearchBaseData) {
|
|
|
- if (materialTypeId == item.id) {
|
|
|
- subTypeItem.clear()
|
|
|
+ val adapter = ListAdapter.Builder<SimpleUserInfo>().apply {
|
|
|
|
|
|
- subTypeItem.addAll(item.subTypeItems)
|
|
|
-
|
|
|
- setData(subTypeItem)
|
|
|
- }
|
|
|
- }
|
|
|
+ setData(materialUser)
|
|
|
|
|
|
setLayoutId(R.layout.item_selector)
|
|
|
|
|
|
addBindView { itemView, data ->
|
|
|
itemView.findViewById<TextView>(R.id.selector_item_name).apply {
|
|
|
|
|
|
- if (detailTypeIds.contains(data.id)) {
|
|
|
+ if (userIds.contains(data.id)) {
|
|
|
setTextColor(
|
|
|
ResourcesCompat.getColor(
|
|
|
resources,
|
|
@@ -183,55 +198,55 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
)
|
|
|
}
|
|
|
|
|
|
- text = data.name
|
|
|
+ text = data.userName
|
|
|
}
|
|
|
}
|
|
|
}.create()
|
|
|
|
|
|
selector.adapter = adapter
|
|
|
|
|
|
- adapter.onRecyclerViewItemClick = object : ListAdapter.OnRecyclerViewItemClick<MaterialTypeData.SubTypeItem> {
|
|
|
+ adapter.onRecyclerViewItemClick = object : ListAdapter.OnRecyclerViewItemClick<SimpleUserInfo> {
|
|
|
override fun onItemClick(position: Int) {
|
|
|
|
|
|
- subTypeItem[position].apply {
|
|
|
+ materialUser[position].apply {
|
|
|
|
|
|
if (id == 0) {
|
|
|
|
|
|
- detailTypeIds.clear()
|
|
|
+ userIds.clear()
|
|
|
|
|
|
- detailTypeIds.add(id)
|
|
|
+ userIds.add(id)
|
|
|
|
|
|
- binding.detailType.text = name
|
|
|
+ binding.applicationPerson.text = userName
|
|
|
|
|
|
} else {
|
|
|
|
|
|
- detailTypeIds.remove(0)
|
|
|
+ userIds.remove(0)
|
|
|
|
|
|
- if (detailTypeIds.contains(id)) {
|
|
|
- detailTypeIds.remove(id)
|
|
|
+ if (userIds.contains(id)) {
|
|
|
+ userIds.remove(id)
|
|
|
} else {
|
|
|
- detailTypeIds.add(id)
|
|
|
+ userIds.add(id)
|
|
|
}
|
|
|
|
|
|
var valueString = ""
|
|
|
|
|
|
var i = 0
|
|
|
|
|
|
- while (i < detailTypeIds.size) {
|
|
|
- for (item in subTypeItem) {
|
|
|
- if (detailTypeIds[i] == item.id) {
|
|
|
- valueString += item.name
|
|
|
+ while (i < userIds.size) {
|
|
|
+ for (item in OASystem.materialPerson) {
|
|
|
+ if (userIds[i] == item.id) {
|
|
|
+ valueString += item.userName
|
|
|
}
|
|
|
}
|
|
|
|
|
|
i++
|
|
|
|
|
|
- if (i < detailTypeIds.size) {
|
|
|
+ if (i < userIds.size) {
|
|
|
valueString += "\t\t"
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- binding.detailType.text = valueString.trim()
|
|
|
+ binding.applicationPerson.text = valueString.trim()
|
|
|
}
|
|
|
|
|
|
popupWindow.dismiss()
|
|
@@ -259,9 +274,19 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
|
|
|
simpleGroupInfoList.clear()
|
|
|
|
|
|
- simpleGroupInfoList.add(0, SimpleGroupInfo().apply {
|
|
|
+ simpleGroupInfoList.add(SimpleGroupInfo().apply {
|
|
|
+ id = -2
|
|
|
+ name = resources.getString(R.string.inventory_adjustment)
|
|
|
+ })
|
|
|
+
|
|
|
+ simpleGroupInfoList.add(SimpleGroupInfo().apply {
|
|
|
+ id = -1
|
|
|
+ name = resources.getString(R.string.material_client_visiting)
|
|
|
+ })
|
|
|
+
|
|
|
+ simpleGroupInfoList.add(SimpleGroupInfo().apply {
|
|
|
id = 0
|
|
|
- name = resources.getString(R.string.all)
|
|
|
+ name = resources.getString(R.string.other_material)
|
|
|
})
|
|
|
|
|
|
getSimpleGroupInfoResource(1)
|
|
@@ -370,26 +395,37 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
//点击查询隐藏软键盘
|
|
|
val inputMethodManager =
|
|
|
requireActivity().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
|
|
|
+
|
|
|
if (inputMethodManager.isActive) {
|
|
|
inputMethodManager.hideSoftInputFromWindow(
|
|
|
requireActivity().window.decorView.windowToken, 0
|
|
|
)
|
|
|
}
|
|
|
+
|
|
|
val bundle = Bundle().apply {
|
|
|
- if (detailTypeIds.contains(0)) {
|
|
|
- putString("detail_type", "")
|
|
|
- } else {
|
|
|
- putString("detail_type", detailTypeIds.toString().replace("[", "").replace("]", ""))
|
|
|
- }
|
|
|
+
|
|
|
putString("material_name", binding.materialName.text.toString())
|
|
|
putString("start_time", binding.materialApplicationStartTime.text.toString())
|
|
|
putString("end_time", binding.materialApplicationEndTime.text.toString())
|
|
|
- if (groupIds.contains(0)) {
|
|
|
+
|
|
|
+ if (groupIds.contains(-3)) {
|
|
|
putString("group_id", "")
|
|
|
} else {
|
|
|
putString("group_id", groupIds.toString().replace("[", "").replace("]", ""))
|
|
|
+ }
|
|
|
|
|
|
+ if (materialTypes.contains(0)) {
|
|
|
+ putString("detail_type", "")
|
|
|
+ } else {
|
|
|
+ putString("detail_type", materialTypes.toString().replace("[", "").replace("]", ""))
|
|
|
}
|
|
|
+
|
|
|
+ if (userIds.contains(0)) {
|
|
|
+ putString("user_id", "")
|
|
|
+ } else {
|
|
|
+ putString("user_id", userIds.toString().replace("[", "").replace("]", ""))
|
|
|
+ }
|
|
|
+
|
|
|
if (verifyStatusIds.contains(-1)) {
|
|
|
putString("verify_status", "")
|
|
|
} else {
|
|
@@ -467,43 +503,32 @@ class MaterialHistorySearchFragment : BaseFragment<FragmentMaterialHistorySearch
|
|
|
override fun onItemClick(position: Int) {
|
|
|
simpleGroupInfoList[position].apply {
|
|
|
|
|
|
- if (id == 0) {
|
|
|
- groupIds.clear()
|
|
|
-
|
|
|
- groupIds.add(id)
|
|
|
-
|
|
|
- binding.associationGroup.text = name
|
|
|
+ if (groupIds.contains(id)) {
|
|
|
+ groupIds.remove(id)
|
|
|
} else {
|
|
|
+ groupIds.add(id)
|
|
|
+ }
|
|
|
|
|
|
- groupIds.remove(0)
|
|
|
-
|
|
|
- if (groupIds.contains(id)) {
|
|
|
- groupIds.remove(id)
|
|
|
- } else {
|
|
|
- groupIds.add(id)
|
|
|
- }
|
|
|
-
|
|
|
- var valueString = ""
|
|
|
+ var valueString = ""
|
|
|
|
|
|
- var i = 0
|
|
|
+ var i = 0
|
|
|
|
|
|
- while (i < groupIds.size) {
|
|
|
+ while (i < groupIds.size) {
|
|
|
|
|
|
- for (item in simpleGroupInfoList) {
|
|
|
- if (groupIds[i] == item.id) {
|
|
|
- valueString += item.name
|
|
|
- }
|
|
|
+ for (item in simpleGroupInfoList) {
|
|
|
+ if (groupIds[i] == item.id) {
|
|
|
+ valueString += item.name
|
|
|
}
|
|
|
+ }
|
|
|
|
|
|
- i ++
|
|
|
+ i ++
|
|
|
|
|
|
- if (i < groupIds.size) {
|
|
|
- valueString += "\n\n"
|
|
|
- }
|
|
|
+ if (valueString.isNotEmpty() && i < groupIds.size) {
|
|
|
+ valueString += "\n\n"
|
|
|
}
|
|
|
-
|
|
|
- binding.associationGroup.text = valueString
|
|
|
}
|
|
|
+
|
|
|
+ binding.associationGroup.text = valueString
|
|
|
popupWindow.dismiss()
|
|
|
}
|
|
|
}
|