소스 검색

2025-03-31 修改

修改:
1. 人事模块 - 物资进销存 领用历史 接口修改
2. 人事模块 - 物资进销存 领用历史 页面修改
3. 人事模块 - 物资进销存 界面元素修改
zhaiy 3 달 전
부모
커밋
0e5f9af6f4

+ 2 - 2
.idea/deploymentTargetSelector.xml

@@ -4,10 +4,10 @@
     <selectionStates>
       <SelectionState runConfigName="app">
         <option name="selectionMode" value="DROPDOWN" />
-        <DropdownSelection timestamp="2024-12-13T03:26:39.843416600Z">
+        <DropdownSelection timestamp="2025-03-27T01:49:41.538665900Z">
           <Target type="DEFAULT_BOOT">
             <handle>
-              <DeviceId pluginId="PhysicalDevice" identifier="serial=9P5D89RGQCRWBM8X" />
+              <DeviceId pluginId="PhysicalDevice" identifier="serial=3bb3c424" />
             </handle>
           </Target>
         </DropdownSelection>

+ 36 - 32
app/src/main/java/com/pan_american/android/OASystem.kt

@@ -18,6 +18,7 @@ import com.pan_american.android.data.model.group_management.group_info.network.G
 import com.pan_american.android.data.model.login.entity.Authority
 import com.pan_american.android.data.model.login.entity.UserInfo
 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.data.network.APIService
 import com.pan_american.android.data.network.ServiceCreator
 
@@ -45,79 +46,79 @@ class OASystem : Application() {
         //公告未读条数
         var announcementUnReadCount = 0
 
-        //日付申请名称筛选列表
+        //日付申请, 名称筛选列表
         lateinit var dailyPaymentUserName: ArrayList<Selector>
 
-        //日付申请类型筛选列表
+        //日付申请, 类型筛选列表
         lateinit var paymentType: ArrayList<Selector>
 
-        //日付申请子类型筛选列表
+        //日付申请, 子类型筛选列表
         lateinit var paymentSubType: ArrayList<Selector>
 
-        //市场客户资源客户级别
+        //市场客户资源, 客户级别
         lateinit var customerLevel: ArrayList<Selector>
 
-        //市场客户资源客户类别
+        //市场客户资源, 客户类别
         lateinit var customerClass: ArrayList<Selector>
 
-        //市场客户资源负责人列表
+        //市场客户资源, 负责人列表
         lateinit var customerManager: ArrayList<SiftListItem>
 
-        //市场客户资源业务归属
+        //市场客户资源, 业务归属
         lateinit var serviceClass: ArrayList<SiftListItem>
 
-        //市场客户资源省域
+        //市场客户资源, 省域
         lateinit var province: ArrayList<SiftListItem>
 
-        //接团信息团组类型
+        //接团信息, 团组类型
         var groupInfoGroupType = ArrayList<Selector>()
 
-        //接团信息客户级别
+        //接团信息, 客户级别
         var groupInfoCustomerLevel = ArrayList<Selector>()
 
-        //接团信息成单人
+        //接团信息, 成单人
         var groupInfoTradeDirector = ArrayList<Selector>()
 
-        //接团信息接团客户名单
+        //接团信息, 接团客户名单
         var groupInfoGroupCustomerList = ArrayList<GroupCustomerInfo>()
 
-        //接团信息OP提成等级
+        //接团信息, OP提成等级
         var groupInfoOpPercentageLevel = ArrayList<Selector>()
 
-        //接团信息舱位类型
+        //接团信息, 舱位类型
         var groupInfoBerthType = ArrayList<Selector>()
 
-        //接团信息团组操作(增改)request
+        //接团信息, 团组操作(增改)request
         lateinit var groupOperationRequest: GroupOperationRequest
 
-        //地接费用录入单位list
+        //地接费用录入, 单位list
         var groundConveyUnitList = ArrayList<Selector>()
 
-        //酒店费用录入客户类型
+        //酒店费用录入, 客户类型
         var hotelPredetermineCustomerType = ArrayList<Selector>()
 
-        //酒店费用录入支付方式
+        //酒店费用录入, 支付方式
         var hotelPredeterminePaymentWay = ArrayList<Selector>()
 
-        //酒店费用录入团组汇率
+        //酒店费用录入, 团组汇率
         var hotelPredeterminePaymentCurrency = ArrayList<Selector>()
 
-        //酒店费用录入银行卡
+        //酒店费用录入, 银行卡
         var hotelPredetermineBankCard = ArrayList<Selector>()
 
-        //酒店费用录入预订网站
+        //酒店费用录入, 预订网站
         var hotelPredetermineHotelWebSite = ArrayList<Selector>()
 
-        //酒店费用录入入住类型
+        //酒店费用录入, 入住类型
         var hotelPredetermineCheckInType = ArrayList<Selector>()
 
-        //酒店费用录入客人名单
+        //酒店费用录入, 客人名单
         var hotelPredetermineCustomerList = ArrayList<Selector>()
 
-        //酒店费用录入国家 / 城市
+        //酒店费用录入, 国家 / 城市
         var hotelPredetermineCountries = ArrayList<Selector>()
 
-        //酒店费用录入费用操作(增改)request
+        //酒店费用录入, 费用操作(增改)request
         lateinit var hotelPredetermineRequest: UpdateHotelPredetermine
 
         var marketSalesRevenueCompanyList = ArrayList<Selector>()
@@ -126,10 +127,13 @@ class OASystem : Application() {
 
         var marketSalesRevenueDateList = ArrayList<YearQuarterlyData>()
 
-        //物资进销存基础数据源
+        //物资进销存, 基础数据源
         var materialBaseData = ArrayList<MaterialTypeData>()
+        
+        //物资进销存, 申领人list
+        var materialPerson = ArrayList<SimpleUserInfo>()
 
-        //导游地接资料,导游地接类型
+        //导游地接资料, 导游地接类型
         val guideResourceGuideType = listOf(Selector().apply {
             id = 0
             name = "公司"
@@ -168,7 +172,7 @@ class OASystem : Application() {
         //团组对应币种单位
         var currency = ArrayList<Selector>()
 
-        //接团信息团组状态
+        //接团信息, 团组状态
         val groupStatus = listOf(Selector().apply {
             id = -1
             name = "全部"
@@ -180,7 +184,7 @@ class OASystem : Application() {
             name = "已完成"
         })
 
-        //收款账单增加方式
+        //收款账单, 增加方式
         val addMode = listOf(Selector().apply {
             id = 0
             name = "账单模块"
@@ -264,16 +268,16 @@ class OASystem : Application() {
         // 市场客户资源
         const val MARKET_CUSTOMER = 89
 
-        //团组经理主管接团客户名单
+        //团组经理主管, 接团客户名单
         const val GROUP_CLIENT_LIST = 104
 
-        //团组经理主管倒推表
+        //团组经理主管, 倒推表
         const val REVERSE_TABLE = 106
 
         // 车辆公司信息
         const val CAR_RESOURCE = 111
 
-        //团组经理主管出入境费用明细
+        //团组经理主管, 出入境费用明细
         const val ENTRY_AND_EXIT_FEE_DETAIL = 118
 
         // 机场三字码

+ 3 - 4
app/src/main/java/com/pan_american/android/data/model/personnel_module/materials_operate/entity/MaterialHistoryListItem.kt

@@ -1,18 +1,17 @@
 package com.pan_american.android.data.model.personnel_module.materials_operate.entity
 
 class MaterialHistoryListItem {
-    var id = 0
+    var groupName = ""
     var goodsType = ""
+    var id = 0
     var groupId = 0
-    var groupName = ""
-    var goodsId = 0
     var goodsName = ""
     var quantity = 0.0
+    var unit = ""
     var reason = ""
     var remark = ""
     var auditStatus = 0
     var auditStatusText = ""
-    var auditUserId = 0
     var auditUserName = ""
     var auditTime = ""
     var createUserName = ""

+ 3 - 0
app/src/main/java/com/pan_american/android/data/model/personnel_module/materials_operate/entity/SimpleUserInfo.kt

@@ -0,0 +1,3 @@
+package com.pan_american.android.data.model.personnel_module.materials_operate.entity
+
+class SimpleUserInfo(val id: Int, val userName: String)

+ 2 - 1
app/src/main/java/com/pan_american/android/data/model/personnel_module/materials_operate/network/MaterialBaseDataResponse.kt

@@ -2,8 +2,9 @@ package com.pan_american.android.data.model.personnel_module.materials_operate.n
 
 import com.pan_american.android.base.BaseResponse
 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
 
 class MaterialBaseDataResponse(val data: Data): BaseResponse() {
 
-    inner class Data(val goodsTypeData: ArrayList<MaterialTypeData>)
+    inner class Data(val goodsTypeData: ArrayList<MaterialTypeData>, val userNameData: ArrayList<SimpleUserInfo>)
 }

+ 2 - 0
app/src/main/java/com/pan_american/android/data/model/personnel_module/materials_operate/network/MaterialHistoryListRequest.kt

@@ -12,4 +12,6 @@ class MaterialHistoryListRequest:BaseRequest() {
     var typeLabel = ""
     var userLabel = OASystem.userInfo.userId.toString()
     var auditLabel = ""
+    val isExcelDownload = false
+    val currUserId = OASystem.userInfo.userId
 }

+ 4 - 1
app/src/main/java/com/pan_american/android/data/network/APIService.kt

@@ -1237,7 +1237,10 @@ interface APIService {
      * 物资进销存, 领用历史记录
      */
     @POST("/api/PersonnelModule/GoodsReceiveList")
-    fun getMaterialHistoryList(@Body materialHistoryListRequest: MaterialHistoryListRequest): Call<MaterialHistoryListResponse>
+    fun getMaterialHistoryList(
+        @Body materialHistoryListRequest: MaterialHistoryListRequest,
+        @Header("Authorization") headerValue: String = OASystem.token
+    ): Call<MaterialHistoryListResponse>
 
     /**
      * 费用审核, 获取团组列表

+ 2 - 1
app/src/main/java/com/pan_american/android/ui/personnel_module/materials_operate/MaterialHistoryListFragment.kt

@@ -54,6 +54,7 @@ class MaterialHistoryListFragment : BaseFragment<FragmentMaterialHistoryListBind
                 it.endDt = getString("end_time").toString()
                 it.groupLabel = getString("group_id").toString()
                 it.typeLabel = getString("detail_type").toString()
+                it.userLabel = getString("user_id").toString()
                 it.auditLabel = getString("verify_status").toString()
 
                 it.pageIndex = pageIndex
@@ -142,9 +143,9 @@ class MaterialHistoryListFragment : BaseFragment<FragmentMaterialHistoryListBind
             setLayoutId(R.layout.item_material_history)
             addBindView { itemView, data ->
                 itemView.findViewById<TextView>(R.id.material_name).text = data.goodsName
-                itemView.findViewById<TextView>(R.id.material_type).text = data.goodsType
                 itemView.findViewById<TextView>(R.id.material_counts).text = "${data.quantity}"
                 itemView.findViewById<TextView>(R.id.create_time).text = data.createTime.substring(0, 10)
+                itemView.findViewById<TextView>(R.id.applier).text = data.createUserName
                 itemView.findViewById<TextView>(R.id.verify_status).apply {
                     text = data.auditStatusText
 

+ 108 - 83
app/src/main/java/com/pan_american/android/ui/personnel_module/materials_operate/MaterialHistorySearchFragment.kt

@@ -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()
                                                 }
                                             }

+ 3 - 2
app/src/main/java/com/pan_american/android/ui/personnel_module/materials_operate/MaterialOperateActivity.kt

@@ -31,7 +31,7 @@ class MaterialOperateActivity : BaseActivity<ActivityMaterialOperateBinding>() {
 
     private lateinit var titleBinding: LayoutTitleBinding
 
-    private var isHidden = false
+    private var isHidden = true
 
     private val materialSearchRequest = MaterialSearchRequest()
 
@@ -117,6 +117,7 @@ class MaterialOperateActivity : BaseActivity<ActivityMaterialOperateBinding>() {
                     if (dataSourceResponse.code == 200) {
 
                         OASystem.materialBaseData = dataSourceResponse.data.goodsTypeData
+                        OASystem.materialPerson = dataSourceResponse.data.userNameData
 
                         materialSearchRequest.apply {
                             pageIndex = 1
@@ -340,7 +341,7 @@ class MaterialOperateActivity : BaseActivity<ActivityMaterialOperateBinding>() {
                             materialList.add(item)
                         }
 
-                        if (materialList.size == 0) {
+                        if (materialList.isEmpty()) {
                             showMessage(resources.getString(R.string.no_data))
                         }
 

+ 3 - 2
app/src/main/res/layout/activity_material_operate.xml

@@ -38,7 +38,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:gravity="end"
-                android:text="@string/hide"
+                android:text="@string/show"
                 android:textColor="@color/title_background_color"
                 android:textSize="@dimen/text_size_medium" />
 
@@ -57,7 +57,8 @@
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_margin="@dimen/common_padding"
-            android:orientation="vertical">
+            android:orientation="vertical"
+            android:visibility="gone">
 
             <LinearLayout
                 android:layout_width="match_parent"

+ 25 - 24
app/src/main/res/layout/fragment_material_history_search.xml

@@ -24,18 +24,18 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/material_type"
+                android:text="@string/association_group"
                 android:textSize="@dimen/text_size_medium" />
 
             <TextView
-                android:id="@+id/material_type"
+                android:id="@+id/association_group"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
+                android:layout_gravity="center_horizontal"
                 android:layout_marginStart="@dimen/common_padding"
                 android:layout_weight="1"
                 android:gravity="end"
                 android:hint="@string/please_select"
-                android:singleLine="true"
                 android:textColorHint="@color/hint_text_color"
                 android:textSize="@dimen/text_size_medium" />
         </LinearLayout>
@@ -57,17 +57,18 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/detail_type"
+                android:text="@string/material_type"
                 android:textSize="@dimen/text_size_medium" />
 
             <TextView
-                android:id="@+id/detail_type"
+                android:id="@+id/material_type"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/common_padding"
                 android:layout_weight="1"
                 android:gravity="end"
                 android:hint="@string/please_select"
+                android:singleLine="true"
                 android:textColorHint="@color/hint_text_color"
                 android:textSize="@dimen/text_size_medium" />
         </LinearLayout>
@@ -89,21 +90,17 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/material_name"
+                android:text="@string/application_person"
                 android:textSize="@dimen/text_size_medium" />
 
-            <EditText
-                android:id="@+id/material_name"
+            <TextView
+                android:id="@+id/application_person"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/common_padding"
                 android:layout_weight="1"
-                android:background="@color/white"
                 android:gravity="end"
-                android:hint="@string/please_input"
-                android:importantForAutofill="no"
-                android:inputType="text"
-                android:singleLine="true"
+                android:hint="@string/please_select"
                 android:textColorHint="@color/hint_text_color"
                 android:textSize="@dimen/text_size_medium" />
         </LinearLayout>
@@ -125,11 +122,11 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/material_application_start_time"
+                android:text="@string/verify_status"
                 android:textSize="@dimen/text_size_medium" />
 
             <TextView
-                android:id="@+id/material_application_start_time"
+                android:id="@+id/verify_status"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/common_padding"
@@ -158,17 +155,20 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/material_application_end_time"
+                android:text="@string/material_name"
                 android:textSize="@dimen/text_size_medium" />
 
-            <TextView
-                android:id="@+id/material_application_end_time"
+            <EditText
+                android:id="@+id/material_name"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/common_padding"
                 android:layout_weight="1"
+                android:background="@color/white"
                 android:gravity="end"
-                android:hint="@string/please_select"
+                android:hint="@string/please_input"
+                android:importantForAutofill="no"
+                android:inputType="text"
                 android:singleLine="true"
                 android:textColorHint="@color/hint_text_color"
                 android:textSize="@dimen/text_size_medium" />
@@ -191,17 +191,18 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/association_group"
+                android:text="@string/material_application_start_time"
                 android:textSize="@dimen/text_size_medium" />
 
             <TextView
-                android:id="@+id/association_group"
+                android:id="@+id/material_application_start_time"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/common_padding"
                 android:layout_weight="1"
                 android:gravity="end"
                 android:hint="@string/please_select"
+                android:singleLine="true"
                 android:textColorHint="@color/hint_text_color"
                 android:textSize="@dimen/text_size_medium" />
         </LinearLayout>
@@ -224,11 +225,11 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/verify_status"
+                android:text="@string/material_application_end_time"
                 android:textSize="@dimen/text_size_medium" />
 
             <TextView
-                android:id="@+id/verify_status"
+                android:id="@+id/material_application_end_time"
                 android:layout_width="0dp"
                 android:layout_height="wrap_content"
                 android:layout_marginStart="@dimen/common_padding"
@@ -252,7 +253,7 @@
             android:id="@+id/commit"
             android:layout_width="match_parent"
             android:layout_height="@dimen/button_height"
-            android:layout_marginTop="@dimen/common_padding_heavy"/>
+            android:layout_marginTop="@dimen/common_padding_heavy" />
 
     </LinearLayout>
 </LinearLayout>

+ 41 - 41
app/src/main/res/layout/item_material_history.xml

@@ -42,12 +42,12 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/material_type"
+                android:text="@string/material_count"
                 android:textSize="@dimen/text_size_medium"
                 android:textStyle="bold" />
 
             <TextView
-                android:id="@+id/material_type"
+                android:id="@+id/material_counts"
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_weight="1"
@@ -75,12 +75,12 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/material_count"
+                android:text="@string/payment_create_time"
                 android:textSize="@dimen/text_size_medium"
                 android:textStyle="bold" />
 
             <TextView
-                android:id="@+id/material_counts"
+                android:id="@+id/create_time"
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_weight="1"
@@ -108,12 +108,12 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/payment_create_time"
+                android:text="@string/payment_creator"
                 android:textSize="@dimen/text_size_medium"
                 android:textStyle="bold" />
 
             <TextView
-                android:id="@+id/create_time"
+                android:id="@+id/applier"
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_weight="1"
@@ -141,34 +141,19 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/verify_status"
+                android:text="@string/verify_name"
                 android:textSize="@dimen/text_size_medium"
                 android:textStyle="bold" />
 
-            <LinearLayout
-                android:layout_width="match_parent"
-                android:layout_height="wrap_content"
+            <TextView
+                android:id="@+id/verify_name"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="1"
+                android:background="@color/white"
                 android:gravity="end"
-                tools:ignore="UseCompoundDrawables">
-
-                <TextView
-                    android:id="@+id/verify_status"
-                    android:layout_width="wrap_content"
-                    android:layout_height="wrap_content"
-                    android:text="@string/verify_passed"
-                    android:textColor="@color/passed"
-                    android:textSize="@dimen/text_size_medium" />
-
-                <ImageView
-                    android:id="@+id/verify_status_icon"
-                    android:layout_width="@dimen/common_padding_huge"
-                    android:layout_height="@dimen/common_padding_huge"
-                    android:layout_gravity="center"
-                    android:layout_marginStart="@dimen/common_padding_small"
-                    android:src="@mipmap/icon_passed"
-                    tools:ignore="ContentDescription" />
-
-            </LinearLayout>
+                android:singleLine="true"
+                android:textSize="@dimen/text_size_medium" />
 
         </LinearLayout>
 
@@ -189,12 +174,12 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/verify_name"
+                android:text="@string/verify_date"
                 android:textSize="@dimen/text_size_medium"
                 android:textStyle="bold" />
 
             <TextView
-                android:id="@+id/verify_name"
+                android:id="@+id/verify_date"
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_weight="1"
@@ -223,19 +208,34 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_gravity="center"
-                android:text="@string/verify_date"
+                android:text="@string/verify_status"
                 android:textSize="@dimen/text_size_medium"
                 android:textStyle="bold" />
 
-            <TextView
-                android:id="@+id/verify_date"
-                android:layout_width="0dp"
-                android:layout_height="match_parent"
-                android:layout_weight="1"
-                android:background="@color/white"
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
                 android:gravity="end"
-                android:singleLine="true"
-                android:textSize="@dimen/text_size_medium" />
+                tools:ignore="UseCompoundDrawables">
+
+                <TextView
+                    android:id="@+id/verify_status"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="@string/verify_passed"
+                    android:textColor="@color/passed"
+                    android:textSize="@dimen/text_size_medium" />
+
+                <ImageView
+                    android:id="@+id/verify_status_icon"
+                    android:layout_width="@dimen/common_padding_huge"
+                    android:layout_height="@dimen/common_padding_huge"
+                    android:layout_gravity="center"
+                    android:layout_marginStart="@dimen/common_padding_small"
+                    android:src="@mipmap/icon_passed"
+                    tools:ignore="ContentDescription" />
+
+            </LinearLayout>
 
         </LinearLayout>
 

+ 139 - 1
app/src/main/res/layout/popup_material_history.xml

@@ -161,6 +161,39 @@
                     android:textSize="@dimen/text_size_medium" />
             </LinearLayout>
 
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/line"
+                android:layout_marginTop="@dimen/common_padding_huge"
+                android:layout_marginBottom="@dimen/common_padding"
+                android:background="@color/line_color" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/common_padding"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:text="@string/payment_creator"
+                    android:textSize="@dimen/text_size_medium" />
+
+                <TextView
+                    android:id="@+id/applier"
+                    android:layout_width="0dp"
+                    android:layout_height="match_parent"
+                    android:layout_marginStart="@dimen/common_padding"
+                    android:layout_weight="1"
+                    android:background="@color/white"
+                    android:gravity="end"
+                    android:singleLine="true"
+                    android:textColor="@color/text_color"
+                    android:textSize="@dimen/text_size_medium" />
+            </LinearLayout>
+
             <View
                 android:layout_width="match_parent"
                 android:layout_height="@dimen/line"
@@ -203,7 +236,6 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:layout_marginTop="@dimen/common_padding"
-                android:layout_marginBottom="@dimen/common_padding_huge"
                 android:orientation="vertical">
 
                 <TextView
@@ -224,6 +256,112 @@
                     android:textSize="@dimen/text_size_medium" />
             </LinearLayout>
 
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/line"
+                android:layout_marginTop="@dimen/common_padding_huge"
+                android:layout_marginBottom="@dimen/common_padding"
+                android:background="@color/line_color" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/common_padding"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:text="@string/verify_name"
+                    android:textSize="@dimen/text_size_medium" />
+
+                <TextView
+                    android:id="@+id/verify_name"
+                    android:layout_width="0dp"
+                    android:layout_height="match_parent"
+                    android:layout_marginStart="@dimen/common_padding"
+                    android:layout_weight="1"
+                    android:background="@color/white"
+                    android:gravity="end"
+                    android:singleLine="true"
+                    android:textColor="@color/text_color"
+                    android:textSize="@dimen/text_size_medium" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/line"
+                android:layout_marginTop="@dimen/common_padding_huge"
+                android:layout_marginBottom="@dimen/common_padding"
+                android:background="@color/line_color" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/common_padding"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:text="@string/verify_date"
+                    android:textSize="@dimen/text_size_medium" />
+
+                <TextView
+                    android:id="@+id/verify_date"
+                    android:layout_width="0dp"
+                    android:layout_height="match_parent"
+                    android:layout_marginStart="@dimen/common_padding"
+                    android:layout_weight="1"
+                    android:background="@color/white"
+                    android:gravity="end"
+                    android:singleLine="true"
+                    android:textColor="@color/text_color"
+                    android:textSize="@dimen/text_size_medium" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/line"
+                android:layout_marginTop="@dimen/common_padding_huge"
+                android:layout_marginBottom="@dimen/common_padding"
+                android:background="@color/line_color" />
+
+            <LinearLayout
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginTop="@dimen/common_padding"
+                android:orientation="horizontal">
+
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_gravity="center"
+                    android:text="@string/verify_status"
+                    android:textSize="@dimen/text_size_medium" />
+
+                <TextView
+                    android:id="@+id/verify_status"
+                    android:layout_width="0dp"
+                    android:layout_height="match_parent"
+                    android:layout_marginStart="@dimen/common_padding"
+                    android:layout_weight="1"
+                    android:background="@color/white"
+                    android:gravity="end"
+                    android:singleLine="true"
+                    android:textColor="@color/text_color"
+                    android:textSize="@dimen/text_size_medium" />
+            </LinearLayout>
+
+            <View
+                android:layout_width="match_parent"
+                android:layout_height="@dimen/line"
+                android:layout_marginTop="@dimen/common_padding_huge"
+                android:layout_marginBottom="@dimen/common_padding"
+                android:background="@color/line_color" />
+
         </LinearLayout>
 
     </ScrollView>

+ 5 - 0
app/src/main/res/values/strings.xml

@@ -1219,6 +1219,7 @@
     <!-- 物资进销存 -->
     <string name="material_type">物资类型</string>
     <string name="detail_type">详细类型</string>
+    <string name="application_person">领用人员</string>
     <string name="material_name">物资名称</string>
     <string name="add_material">新增物品</string>
     <string name="material_count">物资数量</string>
@@ -1227,6 +1228,10 @@
     <string name="put_in_storage">入库</string>
     <string name="using_application">领\t\t用</string>
 
+    <string name="inventory_adjustment">库存调整</string>
+    <string name="material_client_visiting">拜访客户所使用的物资</string>
+    <string name="other_material">其他物资(公司内部物资)</string>
+    
     <string name="material_type_select_hint">请选择物资类型</string>
 
     <string name="material_base_data_get_error">物资进存销基础数据源获取失败</string>