Przeglądaj źródła

2025-03-20 修改

修改:
1. 部分代码修改
zhaiy 1 rok temu
rodzic
commit
881aaaa118
19 zmienionych plików z 83 dodań i 95 usunięć
  1. 0 0
      .kotlin/sessions/kotlin-compiler-2527064222115873875.salive
  2. 1 2
      app/src/main/java/com/pan_american/android/data/model/common/network/CurrencyListRequest.kt
  3. 1 2
      app/src/main/java/com/pan_american/android/data/model/group_management/entry_and_exit_fee_draft/network/EntryAndExitDraftDocumentListRequest.kt
  4. 0 3
      app/src/main/java/com/pan_american/android/ui/customer_resource/customer_distribution/CustomerDistributionMap.kt
  5. 7 6
      app/src/main/java/com/pan_american/android/ui/customer_resource/market_sales_revenue/SalesRevenueTotalFragment.kt
  6. 0 8
      app/src/main/java/com/pan_american/android/ui/document/GroupDocumentFileListFragment.kt
  7. 2 2
      app/src/main/java/com/pan_american/android/ui/financial_module/collection_bill/CollectionBillPaymentListActivity.kt
  8. 2 1
      app/src/main/java/com/pan_american/android/ui/group_common/commission_confirm/CommissionConfirmActivity.kt
  9. 4 3
      app/src/main/java/com/pan_american/android/ui/group_invite_official/official_visits/InviteVisitsActivity.kt
  10. 2 2
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/EntryAndExitFeeTotalFragment.kt
  11. 0 2
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/OtherPaymentFragment.kt
  12. 3 3
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_draft/EntryAndExitFeeDraftTotalFragment.kt
  13. 2 2
      app/src/main/java/com/pan_american/android/ui/login/LoginActivity.kt
  14. 2 1
      app/src/main/java/com/pan_american/android/ui/personnel_module/materials_operate/MaterialHistoryListFragment.kt
  15. 7 6
      app/src/main/java/com/pan_american/android/ui/workspace/WorkspaceActivity.kt
  16. 30 28
      app/src/main/java/com/pan_american/android/ui/workspace/WorkspaceFragment.kt
  17. 18 17
      app/src/main/java/com/pan_american/android/util/SearchView.kt
  18. 2 1
      app/src/main/res/layout/item_collcetion_bill_payment.xml
  19. 0 6
      app/src/main/res/values/colors.xml

+ 0 - 0
.kotlin/sessions/kotlin-compiler-2527064222115873875.salive


+ 1 - 2
app/src/main/java/com/pan_american/android/data/model/common/network/CurrencyListRequest.kt

@@ -2,5 +2,4 @@ package com.pan_american.android.data.model.common.network
 
 import com.pan_american.android.base.BaseRequest
 
-class CurrencyListRequest(var currencyName: String = ""): BaseRequest() {
-}
+class CurrencyListRequest(var currencyName: String = ""): BaseRequest()

+ 1 - 2
app/src/main/java/com/pan_american/android/data/model/group_management/entry_and_exit_fee_draft/network/EntryAndExitDraftDocumentListRequest.kt

@@ -2,5 +2,4 @@ package com.pan_american.android.data.model.group_management.entry_and_exit_fee_
 
 import com.pan_american.android.OASystem
 
-class EntryAndExitDraftDocumentListRequest(val portType: Int = 2, val provinceId: Int = OASystem.entryAndExitDraftResponse.provinceId) {
-}
+class EntryAndExitDraftDocumentListRequest(val portType: Int = 2, val provinceId: Int = OASystem.entryAndExitDraftResponse.provinceId)

+ 0 - 3
app/src/main/java/com/pan_american/android/ui/customer_resource/customer_distribution/CustomerDistributionMap.kt

@@ -77,9 +77,6 @@ class CustomerDistributionMap : BaseActivity<ActivityCustomerDistributionMapBind
         }
     }
 
-    override fun initViews() {}
-    override fun initEvents() {}
-
     private fun initLocation() {
         locationClient = AMapLocationClient(OASystem.context) // 创建定位客户端
         locationClient?.setLocationListener(this) // 设置定位监听器

+ 7 - 6
app/src/main/java/com/pan_american/android/ui/customer_resource/market_sales_revenue/SalesRevenueTotalFragment.kt

@@ -8,6 +8,7 @@ import android.view.View
 import android.view.ViewGroup
 import android.widget.TextView
 import androidx.core.content.res.ResourcesCompat
+import androidx.core.graphics.toColorInt
 import com.github.mikephil.charting.components.Legend
 import com.github.mikephil.charting.data.PieData
 import com.github.mikephil.charting.data.PieDataSet
@@ -34,10 +35,10 @@ class SalesRevenueTotalFragment : BaseFragment<FragmentSalesRevenueTotalBinding>
 
     private companion object {
         val MATERIAL_COLOR_LIST = listOf(
-            Color.parseColor("#3F51B5"), Color.parseColor("#8BC34A"), Color.parseColor("#FF9800"),
-            Color.parseColor("#F44336"), Color.parseColor("#03A9F4"), Color.parseColor("#009688"),
-            Color.parseColor("#FFEB3B"), Color.parseColor("#E91E63"), Color.parseColor("#00BCD4"),
-            Color.parseColor("#CDDC39"), Color.parseColor("#FF5722"), Color.parseColor("#FF5722"))
+            "#3F51B5".toColorInt(), "#8BC34A".toColorInt(), "#FF9800".toColorInt(),
+            "#F44336".toColorInt(), "#03A9F4".toColorInt(), "#009688".toColorInt(),
+            "#FFEB3B".toColorInt(), "#E91E63".toColorInt(), "#00BCD4".toColorInt(),
+            "#CDDC39".toColorInt(), "#FF5722".toColorInt(), "#FF5722".toColorInt())
     }
 
     private val monthMap = mapOf(1 to "一月", 2 to "二月", 3 to "三月", 4 to "四月", 5 to "五月", 6 to "六月", 7 to "七月", 8 to "八月", 9 to "九月", 10 to "十月", 11 to "十一月", 12 to "十二月")
@@ -665,7 +666,7 @@ class SalesRevenueTotalFragment : BaseFragment<FragmentSalesRevenueTotalBinding>
                             colors = if (!isEmpty) {
                                 MATERIAL_COLOR_LIST
                             } else {
-                                listOf(Color.parseColor("#9E9E9E"))
+                                listOf("#9E9E9E".toColorInt())
                             }
                             valueTextSize = 10F
                             valueTextColor = Color.WHITE
@@ -811,7 +812,7 @@ class SalesRevenueTotalFragment : BaseFragment<FragmentSalesRevenueTotalBinding>
                             colors = if (!isEmpty) {
                                 MATERIAL_COLOR_LIST
                             } else {
-                                listOf(Color.parseColor("#9E9E9E"))
+                                listOf("#9E9E9E".toColorInt())
                             }
                             valueTextSize = 10F
                             valueTextColor = Color.WHITE

+ 0 - 8
app/src/main/java/com/pan_american/android/ui/document/GroupDocumentFileListFragment.kt

@@ -2,7 +2,6 @@ package com.pan_american.android.ui.document
 
 import android.content.Intent
 import android.os.Bundle
-import android.util.Log
 import android.view.LayoutInflater
 import android.view.View
 import android.view.ViewGroup
@@ -10,7 +9,6 @@ import android.widget.ImageView
 import android.widget.TextView
 import androidx.core.net.toUri
 import androidx.recyclerview.widget.LinearLayoutManager
-import com.google.gson.Gson
 import com.pan_american.android.OASystem
 import com.pan_american.android.R
 import com.pan_american.android.base.BaseFragment
@@ -570,12 +568,6 @@ class GroupDocumentFileListFragment : BaseFragment<FragmentGroupDocumentFileList
 
     private fun downloadGroupDocumentFile(groupDocumentFileListItem: GroupDocumentFileListItem) {
 
-        Log.e("request", Gson().toJson(GroupEnterExitCostGenerateRequest(
-            groupId,
-            groupDocumentFileListItem.documentType,
-            groupDocumentFileListItem.id
-        )))
-
         OASystem.apiService.groupEnterExitCostGenerate(
             GroupEnterExitCostGenerateRequest(
                 groupId,

+ 2 - 2
app/src/main/java/com/pan_american/android/ui/financial_module/collection_bill/CollectionBillPaymentListActivity.kt

@@ -1,10 +1,10 @@
 package com.pan_american.android.ui.financial_module.collection_bill
 
 import android.content.Intent
-import android.net.Uri
 import android.os.Bundle
 import android.view.View
 import android.widget.TextView
+import androidx.core.net.toUri
 import androidx.recyclerview.widget.LinearLayoutManager
 import com.pan_american.android.OASystem
 import com.pan_american.android.R
@@ -337,7 +337,7 @@ class CollectionBillPaymentListActivity : BaseActivity<ActivityCollectionBillPay
                                 dialog.dismiss()
                             }
                             setPositiveButtonAndListener(resources.getString(R.string.confirm)) { dialog, _ ->
-                                val uri = Uri.parse(urlResponse.data.url)
+                                val uri = urlResponse.data.url.toUri()
                                 startActivity(Intent(Intent.ACTION_VIEW, uri))
 
                                 dialog.dismiss()

+ 2 - 1
app/src/main/java/com/pan_american/android/ui/group_common/commission_confirm/CommissionConfirmActivity.kt

@@ -6,6 +6,7 @@ import android.view.View
 import android.view.ViewGroup
 import android.widget.PopupWindow
 import android.widget.TextView
+import androidx.core.view.isVisible
 import androidx.recyclerview.widget.LinearLayoutManager
 import androidx.recyclerview.widget.RecyclerView
 import com.pan_american.android.OASystem
@@ -72,7 +73,7 @@ class CommissionConfirmActivity : BaseActivity<ActivityCommissionConfirmBinding>
 
         binding.filterSwitch.setOnClickListener {
             binding.commissionFilter.apply {
-                if (binding.commissionFilter.visibility == View.VISIBLE) {
+                if (binding.commissionFilter.isVisible) {
                     visibility = View.GONE
                     binding.filterSwitch.text = resources.getString(R.string.show)
                 } else {

+ 4 - 3
app/src/main/java/com/pan_american/android/ui/group_invite_official/official_visits/InviteVisitsActivity.kt

@@ -1,7 +1,6 @@
 package com.pan_american.android.ui.group_invite_official.official_visits
 
 import android.content.Intent
-import android.net.Uri
 import android.os.Bundle
 import android.text.Editable
 import android.text.TextWatcher
@@ -12,6 +11,8 @@ import android.widget.LinearLayout
 import android.widget.PopupWindow
 import android.widget.TextView
 import androidx.core.content.res.ResourcesCompat
+import androidx.core.net.toUri
+import androidx.core.view.isGone
 import androidx.recyclerview.widget.LinearLayoutManager
 import androidx.recyclerview.widget.RecyclerView
 import com.pan_american.android.OASystem
@@ -131,7 +132,7 @@ class InviteVisitsActivity : BaseActivity<ActivityInviteVisitsBinding>() {
 
         binding.baseInfoSwitch.setOnClickListener {
 
-            if (binding.groupBaseInfo.visibility == View.GONE) {
+            if (binding.groupBaseInfo.isGone) {
                 binding.groupBaseInfo.visibility = View.VISIBLE
                 binding.baseInfoSwitch.text = resources.getString(R.string.hide)
             } else {
@@ -519,7 +520,7 @@ class InviteVisitsActivity : BaseActivity<ActivityInviteVisitsBinding>() {
                             }
 
                             setPositiveButtonAndListener(resources.getString(R.string.confirm)) { _, _ ->
-                                val uri = Uri.parse(urlResponse.data)
+                                val uri = urlResponse.data.toUri()
                                 startActivity(Intent(Intent.ACTION_VIEW, uri))
                             }
                         }.show()

+ 2 - 2
app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/EntryAndExitFeeTotalFragment.kt

@@ -1,12 +1,12 @@
 package com.pan_american.android.ui.group_management.entry_and_exit_fee_detail
 
 import android.content.Intent
-import android.net.Uri
 import android.os.Bundle
 import android.view.LayoutInflater
 import android.view.View
 import android.view.ViewGroup
 import android.widget.TextView
+import androidx.core.net.toUri
 import com.pan_american.android.OASystem
 import com.pan_american.android.R
 import com.pan_american.android.base.BaseFragment
@@ -505,7 +505,7 @@ class EntryAndExitFeeTotalFragment : BaseFragment<FragmentEntryAndExitFeeTotalBi
                 dialog.dismiss()
             }
             setPositiveButtonAndListener(resources.getString(R.string.confirm)) { dialog, _ ->
-                val uri = Uri.parse(url)
+                val uri = url.toUri()
                 startActivity(Intent(Intent.ACTION_VIEW, uri))
 
                 dialog.dismiss()

+ 0 - 2
app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/OtherPaymentFragment.kt

@@ -23,8 +23,6 @@ import com.pan_american.android.data.model.group_management.entry_and_exit_fee_d
 import com.pan_american.android.data.model.group_management.entry_and_exit_fee_detail.network.EntryAndExitPaymentTypeRequest
 import com.pan_american.android.data.model.group_management.entry_and_exit_fee_detail.network.UpdateEntryAndExitCurrencyRateRequest
 import com.pan_american.android.data.model.group_management.entry_and_exit_fee_detail.network.UpdateEntryAndExitTypeStatusRequest
-import com.pan_american.android.data.network.APIService
-import com.pan_american.android.data.network.ServiceCreator
 import com.pan_american.android.databinding.FragmentOtherPaymentBinding
 import com.pan_american.android.util.MoneyInputFilter
 import com.pan_american.android.util.ScrollEditText

+ 3 - 3
app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_draft/EntryAndExitFeeDraftTotalFragment.kt

@@ -1,7 +1,6 @@
 package com.pan_american.android.ui.group_management.entry_and_exit_fee_draft
 
 import android.content.Intent
-import android.net.Uri
 import android.os.Bundle
 import android.text.Editable
 import android.text.TextWatcher
@@ -14,6 +13,7 @@ import android.widget.LinearLayout
 import android.widget.PopupWindow
 import android.widget.TextView
 import androidx.core.content.res.ResourcesCompat
+import androidx.core.net.toUri
 import androidx.recyclerview.widget.LinearLayoutManager
 import com.pan_american.android.OASystem
 import com.pan_american.android.R
@@ -438,7 +438,7 @@ class EntryAndExitFeeDraftTotalFragment :
 
                 if (listResponse != null) {
                     if (listResponse.code == 200) {
-                        if (listResponse.data.size == 0) {
+                        if (listResponse.data.isEmpty()) {
                             showMessage(resources.getString(R.string.no_data))
                         } else {
 
@@ -777,7 +777,7 @@ class EntryAndExitFeeDraftTotalFragment :
                             }
                             setPositiveButtonAndListener(resources.getString(R.string.confirm)) { dialog, _ ->
 
-                                val uri = Uri.parse(urlResponse.data)
+                                val uri = urlResponse.data.toUri()
                                 startActivity(Intent(Intent.ACTION_VIEW, uri))
 
                                 dialog.dismiss()

+ 2 - 2
app/src/main/java/com/pan_american/android/ui/login/LoginActivity.kt

@@ -2,9 +2,9 @@ package com.pan_american.android.ui.login
 
 import android.content.Intent
 import android.content.pm.PackageManager
-import android.net.Uri
 import android.os.Build
 import android.os.Bundle
+import androidx.core.net.toUri
 import com.pan_american.android.OASystem
 import com.pan_american.android.R
 import com.pan_american.android.base.BaseActivity
@@ -64,7 +64,7 @@ class LoginActivity : BaseActivity<ActivityLoginBinding>() {
         }
 
         binding.icpCode.setOnClickListener {
-            val uri = Uri.parse("https://beian.miit.gov.cn")
+            val uri = "https://beian.miit.gov.cn".toUri()
             startActivity(Intent(Intent.ACTION_VIEW, uri))
         }
     }

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

@@ -71,6 +71,7 @@ class MaterialHistoryListFragment : BaseFragment<FragmentMaterialHistoryListBind
     }
 
     private fun initMaterialHistoryList(type: Int) {
+
         OASystem.apiService.getMaterialHistoryList(materialHistoryListRequest).enqueue(object : Callback<MaterialHistoryListResponse> {
             override fun onResponse(
                 call: Call<MaterialHistoryListResponse>,
@@ -85,7 +86,7 @@ class MaterialHistoryListFragment : BaseFragment<FragmentMaterialHistoryListBind
                             materialHistoryList.add(item)
                         }
 
-                        if (materialHistoryList.size == 0) {
+                        if (materialHistoryList.isEmpty()) {
                             showMessage(resources.getString(R.string.no_data))
                         }
 

+ 7 - 6
app/src/main/java/com/pan_american/android/ui/workspace/WorkspaceActivity.kt

@@ -5,7 +5,6 @@ import android.annotation.SuppressLint
 import android.app.NotificationChannel
 import android.app.NotificationManager
 import android.app.PendingIntent
-import android.content.Context
 import android.content.Intent
 import android.content.pm.PackageManager
 import android.graphics.BitmapFactory
@@ -22,6 +21,8 @@ import androidx.activity.result.contract.ActivityResultContracts
 import androidx.core.app.NotificationCompat
 import androidx.core.app.NotificationManagerCompat
 import androidx.core.content.res.ResourcesCompat
+import androidx.core.net.toUri
+import androidx.core.view.get
 import androidx.fragment.app.Fragment
 import androidx.lifecycle.lifecycleScope
 import androidx.viewpager2.widget.ViewPager2
@@ -220,7 +221,7 @@ class WorkspaceActivity : BaseActivity<ActivityWorkspaceBinding>() {
     }
 
     private fun isIgnoringBatteryOptimizations(): Boolean {
-        val powerManager = getSystemService(Context.POWER_SERVICE) as PowerManager
+        val powerManager = getSystemService(POWER_SERVICE) as PowerManager
         return powerManager.isIgnoringBatteryOptimizations(packageName)
     }
 
@@ -243,7 +244,7 @@ class WorkspaceActivity : BaseActivity<ActivityWorkspaceBinding>() {
     private fun requestIgnoreBatteryOptimizations() {
         // 创建 Intent 跳转到忽略电池优化设置页面
         val intent = Intent(Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS).apply {
-            data = Uri.parse("package:$packageName")
+            data = "package:$packageName".toUri()
         }
 
         // 使用 ActivityResultLauncher 启动 Intent
@@ -318,7 +319,7 @@ class WorkspaceActivity : BaseActivity<ActivityWorkspaceBinding>() {
             ViewPager2.OnPageChangeCallback() {
             override fun onPageSelected(position: Int) {
                 super.onPageSelected(position)
-                binding.navView.menu.getItem(position).isChecked = true
+                binding.navView.menu[position].isChecked = true
             }
         })
         //当导航点击切换时,viewpager2也跟着切换界面
@@ -359,7 +360,7 @@ class WorkspaceActivity : BaseActivity<ActivityWorkspaceBinding>() {
                     description = descriptionText
                 }
             val notificationManager: NotificationManager =
-                getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
+                getSystemService(NOTIFICATION_SERVICE) as NotificationManager
             notificationManager.createNotificationChannel(channel)
         }
     }
@@ -404,7 +405,7 @@ class WorkspaceActivity : BaseActivity<ActivityWorkspaceBinding>() {
     }
 
     private fun wakeUpScreen() {
-        val powerManager = OASystem.context.getSystemService(Context.POWER_SERVICE) as PowerManager
+        val powerManager = OASystem.context.getSystemService(POWER_SERVICE) as PowerManager
         val isScreenOn = powerManager.isInteractive
 
         if (!isScreenOn) {

+ 30 - 28
app/src/main/java/com/pan_american/android/ui/workspace/WorkspaceFragment.kt

@@ -1,7 +1,6 @@
 package com.pan_american.android.ui.workspace
 
 import android.content.Intent
-import android.net.Uri
 import android.os.Bundle
 import android.view.Gravity
 import android.view.LayoutInflater
@@ -10,6 +9,8 @@ import android.view.View.OnClickListener
 import android.view.ViewGroup
 import android.widget.PopupWindow
 import android.widget.TextView
+import androidx.core.net.toUri
+import androidx.core.view.isGone
 import com.pan_american.android.OASystem
 import com.pan_american.android.R
 import com.pan_american.android.base.BaseFragment
@@ -105,7 +106,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //财务模块
                 OASystem.DAILY_PAYMENT -> {
                     if (OASystem.authorization(OASystem.DAILY_PAYMENT, OASystem.VIEW)) {
-                        if (binding.financialModule.visibility == View.GONE) {
+                        if (binding.financialModule.isGone) {
                             binding.financialModule.visibility = View.VISIBLE
                         }
                         binding.dailyPayment.visibility = View.VISIBLE
@@ -115,7 +116,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.ACCOUNT_RECEIVABLE_REPORT -> {
                     if (OASystem.authorization(OASystem.DAILY_PAYMENT, OASystem.VIEW)) {
-                        if (binding.financialModule.visibility == View.GONE) {
+                        if (binding.financialModule.isGone) {
                             binding.financialModule.visibility = View.VISIBLE
                         }
                         binding.accountReceivableReport.visibility = View.VISIBLE
@@ -125,7 +126,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.PAYMENT_REFUND -> {
                     if (OASystem.authorization(OASystem.DAILY_PAYMENT, OASystem.VIEW)) {
-                        if (binding.financialModule.visibility == View.GONE) {
+                        if (binding.financialModule.isGone) {
                             binding.financialModule.visibility = View.VISIBLE
                         }
                         binding.paymentRefund.visibility = View.VISIBLE
@@ -135,7 +136,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.COLLECTION_BILL -> {
                     if (OASystem.authorization(OASystem.DAILY_PAYMENT, OASystem.VIEW)) {
-                        if (binding.financialModule.visibility == View.GONE) {
+                        if (binding.financialModule.isGone) {
                             binding.financialModule.visibility = View.VISIBLE
                         }
                         binding.collectionBill.visibility = View.VISIBLE
@@ -146,7 +147,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //人事模块
                 OASystem.MATERIAL_APPLICATION -> {
                     if (OASystem.authorization(OASystem.MATERIAL_APPLICATION, OASystem.VIEW)) {
-                        if (binding.personnelModule.visibility == View.GONE) {
+                        if (binding.personnelModule.isGone) {
                             binding.personnelModule.visibility = View.VISIBLE
                         }
                         binding.materialOperate.visibility = View.VISIBLE
@@ -157,7 +158,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组酒店
                 OASystem.HOTEL_RESOURCE -> {
                     if (OASystem.authorization(OASystem.HOTEL_RESOURCE, OASystem.VIEW)) {
-                        if (binding.groupHotel.visibility == View.GONE) {
+                        if (binding.groupHotel.isGone) {
                             binding.groupHotel.visibility = View.VISIBLE
                         }
                         binding.hotelResource.visibility = View.VISIBLE
@@ -167,7 +168,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.HOTEL_PREDETERMINE -> {
                     if (OASystem.authorization(OASystem.HOTEL_PREDETERMINE, OASystem.VIEW)) {
-                        if (binding.groupHotel.visibility == View.GONE) {
+                        if (binding.groupHotel.isGone) {
                             binding.groupHotel.visibility = View.VISIBLE
                         }
                         binding.hotelPredetermine.visibility = View.VISIBLE
@@ -178,7 +179,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组OP
                 OASystem.GUIDE_RESOURCE -> {
                     if (OASystem.authorization(OASystem.GUIDE_RESOURCE, OASystem.VIEW)) {
-                        if (binding.groupOp.visibility == View.GONE) {
+                        if (binding.groupOp.isGone) {
                             binding.groupOp.visibility = View.VISIBLE
                         }
                         binding.guideResource.visibility = View.VISIBLE
@@ -188,7 +189,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.CAR_RESOURCE -> {
                     if (OASystem.authorization(OASystem.CAR_RESOURCE, OASystem.VIEW)) {
-                        if (binding.groupOp.visibility == View.GONE) {
+                        if (binding.groupOp.isGone) {
                             binding.groupOp.visibility = View.VISIBLE
                         }
                         binding.carResource.visibility = View.VISIBLE
@@ -203,7 +204,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                             OASystem.VIEW
                         )
                     ) {
-                        if (binding.groupOp.visibility == View.GONE) {
+                        if (binding.groupOp.isGone) {
                             binding.groupOp.visibility = View.VISIBLE
                         }
                         binding.groundConveyPaymentInsert.visibility = View.VISIBLE
@@ -214,7 +215,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组商邀公务
                 OASystem.INVITE_DATA -> {
                     if (OASystem.authorization(OASystem.INVITE_DATA, OASystem.VIEW)) {
-                        if (binding.groupInviteOfficial.visibility == View.GONE) {
+                        if (binding.groupInviteOfficial.isGone) {
                             binding.groupInviteOfficial.visibility = View.VISIBLE
                         }
                         binding.inviteData.visibility = View.VISIBLE
@@ -224,7 +225,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.INVITE_OFFICIAL_PAYMENT -> {
                     if (OASystem.authorization(OASystem.INVITE_OFFICIAL_PAYMENT, OASystem.VIEW)) {
-                        if (binding.groupInviteOfficial.visibility == View.GONE) {
+                        if (binding.groupInviteOfficial.isGone) {
                             binding.groupInviteOfficial.visibility = View.VISIBLE
                         }
                         binding.inviteOfficialPayment.visibility = View.VISIBLE
@@ -234,7 +235,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.OFFICIAL_VISITS -> {
                     if (OASystem.authorization(OASystem.OFFICIAL_VISITS, OASystem.VIEW)) {
-                        if (binding.groupInviteOfficial.visibility == View.GONE) {
+                        if (binding.groupInviteOfficial.isGone) {
                             binding.groupInviteOfficial.visibility = View.VISIBLE
                         }
                         binding.officialVisits.visibility = View.VISIBLE
@@ -245,7 +246,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组经理主管
                 OASystem.GROUP_INFORMATION -> {
                     if (OASystem.authorization(OASystem.GROUP_INFORMATION, OASystem.VIEW)) {
-                        if (binding.groupManager.visibility == View.GONE) {
+                        if (binding.groupManager.isGone) {
                             binding.groupManager.visibility = View.VISIBLE
                         }
                         binding.groupOperation.visibility = View.VISIBLE
@@ -255,7 +256,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.ENTRY_AND_EXIT_FEE_DETAIL -> {
                     if (OASystem.authorization(OASystem.ENTRY_AND_EXIT_FEE_DETAIL, OASystem.VIEW)) {
-                        if (binding.groupManager.visibility == View.GONE) {
+                        if (binding.groupManager.isGone) {
                             binding.groupManager.visibility = View.VISIBLE
                         }
                         binding.entryAndExitFeeDetail.visibility = View.VISIBLE
@@ -265,7 +266,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.ENTRY_AND_EXIT_FEE_DRAFT -> {
                     if (OASystem.authorization(OASystem.ENTRY_AND_EXIT_FEE_DRAFT, OASystem.VIEW)) {
-                        if (binding.groupManager.visibility == View.GONE) {
+                        if (binding.groupManager.isGone) {
                             binding.groupManager.visibility = View.VISIBLE
                         }
                         binding.entryAndExitFeeDraft.visibility = View.VISIBLE
@@ -276,7 +277,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组签证
                 OASystem.VISA_PAYMENT_INSERT -> {
                     if (OASystem.authorization(OASystem.VISA_PAYMENT_INSERT, OASystem.VIEW)) {
-                        if (binding.groupVisa.visibility == View.GONE) {
+                        if (binding.groupVisa.isGone) {
                             binding.groupVisa.visibility = View.VISIBLE
                         }
                         binding.visaPaymentInsert.visibility = View.VISIBLE
@@ -286,7 +287,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.INSURANCE_PAYMENT_INSERT -> {
                     if (OASystem.authorization(OASystem.INSURANCE_PAYMENT_INSERT, OASystem.VIEW)) {
-                        if (binding.groupVisa.visibility == View.GONE) {
+                        if (binding.groupVisa.isGone) {
                             binding.groupVisa.visibility = View.VISIBLE
                         }
                         binding.insurancePaymentInsert.visibility = View.VISIBLE
@@ -297,7 +298,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //客户资料模块
                 OASystem.MARKET_CUSTOMER -> {
                     if (OASystem.authorization(OASystem.MARKET_CUSTOMER, OASystem.VIEW)) {
-                        if (binding.customerResource.visibility == View.GONE) {
+                        if (binding.customerResource.isGone) {
                             binding.customerResource.visibility = View.VISIBLE
                         }
                         binding.companyCustomerResource.visibility = View.VISIBLE
@@ -312,7 +313,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.MARKET_SALES_REVENUE -> {
                     if (OASystem.authorization(OASystem.MARKET_SALES_REVENUE, OASystem.VIEW)) {
-                        if (binding.customerResource.visibility == View.GONE) {
+                        if (binding.customerResource.isGone) {
                             binding.customerResource.visibility = View.VISIBLE
                         }
                         binding.marketSalesRevenue.visibility = View.VISIBLE
@@ -322,7 +323,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.RELATED_INVITEE -> {
                     if (OASystem.authorization(OASystem.RELATED_INVITEE, OASystem.VIEW)) {
-                        if (binding.customerResource.visibility == View.GONE) {
+                        if (binding.customerResource.isGone) {
                             binding.customerResource.visibility = View.VISIBLE
                         }
                         binding.relatedInvitee.visibility = View.VISIBLE
@@ -333,7 +334,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组公共模块
                 OASystem.BILL_MANAGEMENT -> {
                     if (OASystem.authorization(OASystem.BILL_MANAGEMENT, OASystem.VIEW)) {
-                        if (binding.groupCommonModel.visibility == View.GONE) {
+                        if (binding.groupCommonModel.isGone) {
                             binding.groupCommonModel.visibility = View.VISIBLE
                         }
                         binding.billManagement.visibility = View.VISIBLE
@@ -343,7 +344,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.COMMISSION_CONFIRM -> {
                     if (OASystem.authorization(OASystem.BILL_MANAGEMENT, OASystem.VIEW)) {
-                        if (binding.groupCommonModel.visibility == View.GONE) {
+                        if (binding.groupCommonModel.isGone) {
                             binding.groupCommonModel.visibility = View.VISIBLE
                         }
                         binding.commissionConfirm.visibility = View.VISIBLE
@@ -354,7 +355,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
                 //团组机票
                 OASystem.THREE_CODE_RESOURCE -> {
                     if (OASystem.authorization(OASystem.THREE_CODE_RESOURCE, OASystem.VIEW)) {
-                        if (binding.groupAirplaneTicket.visibility == View.GONE) {
+                        if (binding.groupAirplaneTicket.isGone) {
                             binding.groupAirplaneTicket.visibility = View.VISIBLE
                         }
                         binding.airplaneThreeCode.visibility = View.VISIBLE
@@ -364,7 +365,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
                 OASystem.AIRPLANE_PAYMENT_INSERT -> {
                     if (OASystem.authorization(OASystem.AIRPLANE_PAYMENT_INSERT, OASystem.VIEW)) {
-                        if (binding.groupAirplaneTicket.visibility == View.GONE) {
+                        if (binding.groupAirplaneTicket.isGone) {
                             binding.groupAirplaneTicket.visibility = View.VISIBLE
                         }
                         binding.airplanePaymentInsert.visibility = View.VISIBLE
@@ -379,7 +380,7 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
         }
 
         if (OASystem.userInfo.userId == 21 || OASystem.userInfo.userId == 22) {
-            if (binding.financialModule.visibility == View.GONE) {
+            if (binding.financialModule.isGone) {
                 binding.financialModule.visibility = View.VISIBLE
             }
             binding.expenseApproval.visibility = View.VISIBLE
@@ -578,7 +579,8 @@ class WorkspaceFragment : BaseFragment<FragmentWorkspaceBinding>(), OnClickListe
 
         //需求收集
         binding.requireGather.setOnClickListener {
-            val uri = Uri.parse("http://oa.pan-american-intl.com:4399/#/MarketplacePick?userid=${OASystem.userInfo.userId}")
+            val uri =
+                "http://oa.pan-american-intl.com:4399/#/MarketplacePick?userid=${OASystem.userInfo.userId}".toUri()
             startActivity(Intent(Intent.ACTION_VIEW, uri))
 //            val intent = Intent(OASystem.context, RequireGatherActivity::class.java)
 //            startActivity(intent)

+ 18 - 17
app/src/main/java/com/pan_american/android/util/SearchView.kt

@@ -6,6 +6,8 @@ import android.graphics.Paint
 import android.graphics.drawable.Drawable
 import android.util.AttributeSet
 import androidx.core.content.ContextCompat
+import androidx.core.content.withStyledAttributes
+import androidx.core.graphics.withTranslation
 import com.pan_american.android.R
 
 internal class SearchView(context: Context, attrs: AttributeSet) :
@@ -22,12 +24,12 @@ internal class SearchView(context: Context, attrs: AttributeSet) :
     }
 
     private fun initResource(context: Context, attrs: AttributeSet) {
-        val typedArray = context.obtainStyledAttributes(attrs, R.styleable.SearchView)
-        val density = context.resources.displayMetrics.density
-        searchSize = typedArray.getDimension(R.styleable.SearchView_imageWidth, 18 * density + 0.5f)
-        textColor = typedArray.getColor(R.styleable.SearchView_textColor, -0x7b7b7c)
-        textSize = typedArray.getDimension(R.styleable.SearchView_textSize, 16 * density + 0.5f)
-        typedArray.recycle()
+        context.withStyledAttributes(attrs, R.styleable.SearchView) {
+            val density = context.resources.displayMetrics.density
+            searchSize = getDimension(R.styleable.SearchView_imageWidth, 18 * density + 0.5f)
+            textColor = getColor(R.styleable.SearchView_textColor, -0x7b7b7c)
+            textSize = getDimension(R.styleable.SearchView_textSize, 16 * density + 0.5f)
+        }
     }
 
     private fun initPaint() {
@@ -47,18 +49,17 @@ internal class SearchView(context: Context, attrs: AttributeSet) :
             val textHeight = getFontLeading(paint)
             val dx = (width - searchSize - textWidth - 8) / 2
             val dy = (height - searchSize) / 2
-            canvas.save()
-            canvas.translate(scrollX + dx, scrollY + dy)
-            if (drawable != null) {
-                drawable!!.draw(canvas)
+            canvas.withTranslation(scrollX + dx, scrollY + dy) {
+                if (drawable != null) {
+                    drawable!!.draw(this)
+                }
+                drawText(
+                    resources.getString(R.string.search),
+                    scrollX + searchSize + 8,
+                    scrollY + (height - (height - textHeight) / 2) - paint!!.fontMetrics.bottom - dy,
+                    paint!!
+                )
             }
-            canvas.drawText(
-                resources.getString(R.string.search),
-                scrollX + searchSize + 8,
-                scrollY + (height - (height - textHeight) / 2) - paint!!.fontMetrics.bottom - dy,
-                paint!!
-            )
-            canvas.restore()
         }
     }
 

+ 2 - 1
app/src/main/res/layout/item_collcetion_bill_payment.xml

@@ -19,7 +19,8 @@
         <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
-            android:orientation="horizontal">
+            android:orientation="horizontal"
+            tools:ignore="UseCompoundDrawables">
 
             <TextView
                 android:id="@+id/price_name"

+ 0 - 6
app/src/main/res/values/colors.xml

@@ -1,11 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
-    <color name="purple_200">#FFBB86FC</color>
-    <color name="purple_500">#FF6200EE</color>
-    <color name="purple_700">#FF3700B3</color>
-    <color name="teal_200">#FF03DAC5</color>
-    <color name="teal_700">#FF018786</color>
-
     <color name="black">#FF000000</color>
     <color name="white">#FFFFFFFF</color>
     <color name="background_color">#F5F6F8</color>