Przeglądaj źródła

2025-07-31 修改

1. 部分实体类型修改,优化参数,实体类调用文件修改
2. 更新高德地图ndk配置
3. AndroidManifest.xml 更新最高SDK支持 32 -> 36
zhaiy 8 miesięcy temu
rodzic
commit
ccfc02c524
32 zmienionych plików z 75 dodań i 69 usunięć
  1. 2 2
      .idea/deploymentTargetSelector.xml
  2. 11 2
      app/build.gradle.kts
  3. 4 11
      app/src/main/AndroidManifest.xml
  4. 1 2
      app/src/main/java/com/pan_american/android/base/BaseActivity.kt
  5. 2 2
      app/src/main/java/com/pan_american/android/base/CardAdapter.kt
  6. 1 1
      app/src/main/java/com/pan_american/android/ui/customer_resource/market_sales_revenue/SalesCustomerVisitListActivity.kt
  7. 1 1
      app/src/main/java/com/pan_american/android/ui/financial_module/collection_bill/CollectionBillPaymentListActivity.kt
  8. 1 1
      app/src/main/java/com/pan_american/android/ui/financial_module/daily_payment/AddDailyPaymentActivity.kt
  9. 1 1
      app/src/main/java/com/pan_american/android/ui/financial_module/payment_refund/PaymentRefundListFragment.kt
  10. 1 1
      app/src/main/java/com/pan_american/android/ui/group_airplane_ticket/airplane_payment_insert/AddAirplaneTicketActivity.kt
  11. 1 1
      app/src/main/java/com/pan_american/android/ui/group_airplane_ticket/airplane_payment_insert/AirplaneTicketListFragment.kt
  12. 1 1
      app/src/main/java/com/pan_american/android/ui/group_hotel/hotel_predetermine/HotelPredetermineBaseFragment.kt
  13. 1 1
      app/src/main/java/com/pan_american/android/ui/group_hotel/hotel_predetermine/HotelPredetermineListFragment.kt
  14. 16 11
      app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_data/AddInviteDataActivity.kt
  15. 1 1
      app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_data/InviteDataListFragment.kt
  16. 1 1
      app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_official_payment_insert/GroupInvitePaymentListFragment.kt
  17. 13 13
      app/src/main/java/com/pan_american/android/ui/group_invite_official/official_visits/AddOfficialVisitsActivity.kt
  18. 1 1
      app/src/main/java/com/pan_american/android/ui/group_invite_official/official_visits/InviteVisitsActivity.kt
  19. 1 1
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/EntryAndExitPaymentListFragment.kt
  20. 1 1
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/OtherPaymentFragment.kt
  21. 1 1
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_draft/EntryAndExitPaymentDraftListFragment.kt
  22. 1 1
      app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_draft/OtherPaymentDraftFragment.kt
  23. 1 1
      app/src/main/java/com/pan_american/android/ui/group_management/group_info/GroupCustomerListFragment.kt
  24. 1 1
      app/src/main/java/com/pan_american/android/ui/group_visa/insurance_payment_insert/AddInsurancePaymentActivity.kt
  25. 1 1
      app/src/main/java/com/pan_american/android/ui/group_visa/insurance_payment_insert/InsuranceListFragment.kt
  26. 1 1
      app/src/main/java/com/pan_american/android/ui/group_visa/visa_payment_insert/AddVisaPaymentActivity.kt
  27. 1 1
      app/src/main/java/com/pan_american/android/ui/group_visa/visa_payment_insert/VisaPaymentListFragment.kt
  28. 1 1
      app/src/main/java/com/pan_american/android/ui/resource_management/airplane_three_code/AirplaneThreeCodeListFragment.kt
  29. 1 1
      app/src/main/java/com/pan_american/android/ui/resource_management/car_resource/CarResourceListFragment.kt
  30. 1 1
      app/src/main/java/com/pan_american/android/ui/resource_management/guide_resource/GuideResourceListFragment.kt
  31. 1 1
      app/src/main/java/com/pan_american/android/ui/resource_management/hotel_resource/HotelResourceListFragment.kt
  32. 2 2
      gradle.properties

+ 2 - 2
.idea/deploymentTargetSelector.xml

@@ -4,10 +4,10 @@
     <selectionStates>
       <SelectionState runConfigName="app">
         <option name="selectionMode" value="DROPDOWN" />
-        <DropdownSelection timestamp="2025-07-24T06:58:17.773225800Z">
+        <DropdownSelection timestamp="2025-07-30T01:31:37.813625800Z">
           <Target type="DEFAULT_BOOT">
             <handle>
-              <DeviceId pluginId="Default" identifier="serial=127.0.0.1:16384;connection=1cb7ce77" />
+              <DeviceId pluginId="Default" identifier="serial=127.0.0.1:16384;connection=1eb8887e" />
             </handle>
           </Target>
         </DropdownSelection>

+ 11 - 2
app/build.gradle.kts

@@ -19,14 +19,20 @@ android {
         versionName = "1.0.11"
 
         testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
+
+        // 高德地图ndk配置
+        ndk {
+            abiFilters.clear()
+            abiFilters.addAll(arrayOf("armeabi-v7a", "arm64-v8a"))
+        }
     }
 
     buildTypes {
         release {
             isMinifyEnabled = false
             proguardFiles(
-                    getDefaultProguardFile("proguard-android-optimize.txt"),
-                    "proguard-rules.pro"
+                getDefaultProguardFile("proguard-android-optimize.txt"),
+                "proguard-rules.pro"
             )
         }
     }
@@ -81,4 +87,7 @@ dependencies {
 
     //图片选择框架
     implementation(libs.matisse)
+
+    //高德地图SDK
+    implementation(fileTree(baseDir = "libs") { include("*.jar") })
 }

+ 4 - 11
app/src/main/AndroidManifest.xml

@@ -13,11 +13,11 @@
     <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
     <uses-permission
         android:name="android.permission.MANAGE_EXTERNAL_STORAGE"
-        android:maxSdkVersion="32"
+        android:maxSdkVersion="36"
         tools:ignore="ScopedStorage" />
     <uses-permission
         android:name="android.permission.READ_EXTERNAL_STORAGE"
-        android:maxSdkVersion="32" />
+        android:maxSdkVersion="36" />
     <uses-permission android:name="android.permission.READ_MEDIA_VISUAL_USER_SELECTED" />
     <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" /> <!-- 用于进行网络定位 -->
     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 用于访问GPS定位 -->
@@ -274,10 +274,6 @@
             android:name=".ui.resource_management.guide_resource.GuideResourceActivity"
             android:exported="false"
             android:launchMode="singleTop" />
-        <activity
-            android:name=".ui.efficiency_tools.itinerary.AddItineraryActivity"
-            android:exported="false"
-            android:launchMode="singleTop" />
         <activity
             android:name=".ui.customer_resource.company_customer.AddNewCustomerActivity"
             android:exported="false"
@@ -286,10 +282,6 @@
             android:name=".ui.customer_resource.company_customer.MarketCustomerActivity"
             android:exported="false"
             android:launchMode="singleTop" />
-        <activity
-            android:name=".ui.efficiency_tools.itinerary.ItineraryActivity"
-            android:exported="false"
-            android:launchMode="singleTop" />
         <activity
             android:name=".ui.efficiency_tools.exchange_tool.ExchangeToolActivity"
             android:exported="false"
@@ -327,7 +319,8 @@
                 android:resource="@xml/file_paths" />
         </provider>
 
-        <service android:name=".data.network.TCPService" /> <!-- 定位service -->
+        <!-- 定位service -->
+        <service android:name=".data.network.TCPService" />
         <service android:name="com.amap.api.location.APSService" />
     </application>
 

+ 1 - 2
app/src/main/java/com/pan_american/android/base/BaseActivity.kt

@@ -1,7 +1,6 @@
 package com.pan_american.android.base
 
 import android.annotation.SuppressLint
-import android.content.Context
 import android.content.pm.ActivityInfo
 import android.os.Bundle
 import android.os.CountDownTimer
@@ -132,7 +131,7 @@ abstract class BaseActivity<T : ViewBinding> : AppCompatActivity() {
 
         //点击隐藏软键盘
         val inputMethodManager =
-            this.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
+            this.getSystemService(INPUT_METHOD_SERVICE) as InputMethodManager
         if (inputMethodManager.isActive) {
             inputMethodManager.hideSoftInputFromWindow(this.window.decorView.windowToken, 0)
         }

+ 2 - 2
app/src/main/java/com/pan_american/android/base/CardAdapter.kt

@@ -22,7 +22,7 @@ class CardAdapter<T> private constructor(): RecyclerView.Adapter<CardAdapter<T>.
     //是否有删除权限
     private var canDelete = false
 
-    lateinit var onRecyclerViewItemClick: OnRecyclerViewItemClick<T>
+    lateinit var onRecyclerViewItemClick: OnRecyclerViewItemClick
 
     inner class ViewHolder(view: View): RecyclerView.ViewHolder(view) {
         val deleteButton: ImageView = view.findViewById(R.id.delete)
@@ -51,7 +51,7 @@ class CardAdapter<T> private constructor(): RecyclerView.Adapter<CardAdapter<T>.
         }
     }
 
-    interface OnRecyclerViewItemClick<T> {
+    interface OnRecyclerViewItemClick {
         fun onItemClick(position: Int)
         fun onItemDelete(position: Int)
     }

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/customer_resource/market_sales_revenue/SalesCustomerVisitListActivity.kt

@@ -180,7 +180,7 @@ class SalesCustomerVisitListActivity : BaseActivity<ActivitySalesCustomerVisitLi
 
         binding.visitHistoryList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<VisitHistoryListItem> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
                 val intent = Intent(OASystem.context, AddCustomerVisitHistoryActivity::class.java).apply {
                     putExtra("fromList", true)

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

@@ -231,7 +231,7 @@ class CollectionBillPaymentListActivity : BaseActivity<ActivityCollectionBillPay
 
         binding.groupPaymentList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<CollectionBillItem> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
                 collectionBillPaymentList[position].apply {
                     val intent = Intent(OASystem.context, AddCollectionBillPaymentActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/financial_module/daily_payment/AddDailyPaymentActivity.kt

@@ -594,7 +594,7 @@ class AddDailyPaymentActivity : BaseActivity<ActivityAddDailyPaymentBinding>() {
         binding.paymentItemList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<DailyPaymentListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 
                     val item = dailyPaymentList[position]

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/financial_module/payment_refund/PaymentRefundListFragment.kt

@@ -217,7 +217,7 @@ class PaymentRefundListFragment : BaseFragment<FragmentPaymentRefundListBinding>
 
         binding.paymentRefundList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<PaymentRefundListItem> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
                 if (groupPaymentRefundList[position].isAuditGM != 1) {
                     val intent = Intent(OASystem.context, AddPaymentRefundActivity::class.java)

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_airplane_ticket/airplane_payment_insert/AddAirplaneTicketActivity.kt

@@ -1186,7 +1186,7 @@ class AddAirplaneTicketActivity : BaseActivity<ActivityAddAirplaneTicketBinding>
 
         binding.customerList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<Selector> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
 
             }

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_airplane_ticket/airplane_payment_insert/AirplaneTicketListFragment.kt

@@ -316,7 +316,7 @@ class AirplaneTicketListFragment : BaseFragment<FragmentAirplaneTicketListBindin
         binding.airplaneTicketPaymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<GroupAirplaneTicketListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddAirplaneTicketActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_hotel/hotel_predetermine/HotelPredetermineBaseFragment.kt

@@ -579,7 +579,7 @@ class HotelPredetermineBaseFragment : BaseFragment<FragmentHotelPredetermineBase
 
         binding.customerList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<Selector> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
 
             }

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_hotel/hotel_predetermine/HotelPredetermineListFragment.kt

@@ -219,7 +219,7 @@ class HotelPredetermineListFragment : BaseFragment<FragmentHotelPredetermineList
         binding.hotelPredetermineList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<HotelPredetermineListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddHotelPredetermineActivity::class.java).apply {

+ 16 - 11
app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_data/AddInviteDataActivity.kt

@@ -1,7 +1,6 @@
 package com.pan_american.android.ui.group_invite_official.invite_data
 
 import android.Manifest
-import android.app.Activity
 import android.content.Intent
 import android.content.pm.PackageManager
 import android.graphics.Bitmap
@@ -46,9 +45,9 @@ import com.pan_american.android.data.model.group_invite_official.invite_data.net
 import com.pan_american.android.databinding.ActivityAddInviteDataBinding
 import com.pan_american.android.databinding.LayoutTitleBinding
 import com.pan_american.android.util.CommitButton
-import okhttp3.MediaType
+import okhttp3.MediaType.Companion.toMediaTypeOrNull
 import okhttp3.MultipartBody
-import okhttp3.RequestBody
+import okhttp3.RequestBody.Companion.toRequestBody
 import retrofit2.Call
 import retrofit2.Callback
 import retrofit2.Response
@@ -107,7 +106,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
         }
 
         getPhotoResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
-            if (it.resultCode == Activity.RESULT_OK) {
+            if (it.resultCode == RESULT_OK) {
 
                 telephoneOCR = ""
                 phoneOCR = ""
@@ -313,7 +312,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
                             }
                         }
 
-                        if (selectorList.size == 0) {
+                        if (selectorList.isEmpty()) {
                             showMessage(resources.getString(R.string.no_data))
                         } else {
                             for (i in 0 until selectorList.size) {
@@ -418,7 +417,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
                 updateInviteDataDetailRequest.fax = binding.contactsFax.text.toString()
             }
 
-            if (groupSelected.size > 0) {
+            if (groupSelected.isNotEmpty()) {
                 var i = 0
 
                 var groupIdStr = ""
@@ -525,7 +524,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
                                 initGroupNameList()
                             }
 
-                            if (sndFilePathItem.size > 0) {
+                            if (sndFilePathItem.isNotEmpty()) {
 
                                 for (item in sndFilePathItem) {
                                     fileListItem.add(FileListItem().apply {
@@ -570,7 +569,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
 
         binding.groupList.adapter = groupNameAdapter
 
-        groupNameAdapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<Selector> {
+        groupNameAdapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
 
             }
@@ -607,7 +606,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
 
         binding.inviteDataFileList.adapter = fileListAdapter
 
-        fileListAdapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<FileListItem> {
+        fileListAdapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
 
             }
@@ -699,7 +698,13 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
             for (item in fileListItem) {
                 if (!item.fromServer) {
                     val file = contentResolver.openInputStream(item.uri)!!
-                    val fileRequestBody = RequestBody.create(MediaType.parse("multipart/form-data"), file.readBytes())
+                    val content = file.readBytes()
+                    val fileRequestBody =
+                        content.toRequestBody(
+                            "multipart/form-data".toMediaTypeOrNull(),
+                            0,
+                            content.size
+                        )
                     addFormDataPart("Files", item.fileName, fileRequestBody)
                     file.close()
                 }
@@ -891,7 +896,7 @@ class AddInviteDataActivity : BaseActivity<ActivityAddInviteDataBinding>() {
     private fun openFileManager() {
         val intent = Intent(Intent.ACTION_OPEN_DOCUMENT)
         intent.addCategory(Intent.CATEGORY_OPENABLE)
-        intent.setType("*/*") // Use specific MIME type if you know the file type (e.g., "text/plain" for .txt files)
+        intent.type = "*/*" // Use specific MIME type if you know the file type (e.g., "text/plain" for .txt files)
 
         fileSelectResult.launch(intent)
     }

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_data/InviteDataListFragment.kt

@@ -184,7 +184,7 @@ class InviteDataListFragment : BaseFragment<FragmentInviteDataListBinding>() {
 
         binding.inviteDataList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<InviteDataListItem> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
                 val intent = Intent(OASystem.context, AddInviteDataActivity::class.java).apply {
                     putExtra("data_id", inviteDataList[position].id)

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_invite_official/invite_official_payment_insert/GroupInvitePaymentListFragment.kt

@@ -338,7 +338,7 @@ class GroupInvitePaymentListFragment : BaseFragment<FragmentGroupInvitePaymentLi
         binding.invitePaymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<InviteOfficialListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddInvitePaymentActivity::class.java).apply {

+ 13 - 13
app/src/main/java/com/pan_american/android/ui/group_invite_official/official_visits/AddOfficialVisitsActivity.kt

@@ -53,9 +53,9 @@ import com.pan_american.android.util.MoneyInputFilter
 import com.scwang.smart.refresh.layout.api.RefreshLayout
 import com.scwang.smart.refresh.layout.listener.OnRefreshLoadMoreListener
 import com.squareup.picasso.Picasso
-import okhttp3.MediaType
+import okhttp3.MediaType.Companion.toMediaTypeOrNull
 import okhttp3.MultipartBody
-import okhttp3.RequestBody
+import okhttp3.RequestBody.Companion.asRequestBody
 import retrofit2.Call
 import retrofit2.Callback
 import retrofit2.Response
@@ -672,7 +672,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                if (photoList.size == 0) {
+                if (photoList.isEmpty()) {
                     showMessage(resources.getString(R.string.picture_upload_hint))
                     return@setOnClickListener
                 }
@@ -680,7 +680,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
 
             if (needTranslator) {
                 updateOfficialVisitRequest.isNeedTrans = 1
-                binding.translator.getText().apply {
+                binding.translator.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.name =
                             this.toString()
@@ -690,7 +690,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translatorArea.getText().apply {
+                binding.translatorArea.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.area =
                             this.toString()
@@ -714,7 +714,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translatorPhone.getText().apply {
+                binding.translatorPhone.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.tel = this.toString()
                     } else {
@@ -723,7 +723,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translatorEmail.getText().apply {
+                binding.translatorEmail.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.email = this.toString()
                     } else {
@@ -732,7 +732,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translatorWechat.getText().apply {
+                binding.translatorWechat.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.wechatNo = this.toString()
                     } else {
@@ -741,7 +741,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translatorOtherAccounts.getText().apply {
+                binding.translatorOtherAccounts.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.otherSocialAccounts = this.toString()
                     } else {
@@ -750,7 +750,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translateLanguage.getText().apply {
+                binding.translateLanguage.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.language = this.toString()
                     } else {
@@ -759,7 +759,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                     }
                 }
 
-                binding.translatePayment.getText().apply {
+                binding.translatePayment.text.apply {
                     if (isNotBlank()) {
                         updateOfficialVisitRequest.translatorInfo.price = this.toString().toDouble()
                     } else {
@@ -1300,7 +1300,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
         binding.emailScreenshotList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<FileListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 //                val intent = Intent(OASystem.context, PicturePreviewActivity::class.java).apply {
 //                    putExtra("name", photoList[position].picName)
@@ -1501,7 +1501,7 @@ class AddOfficialVisitsActivity : BaseActivity<ActivityAddOfficialVisitsBinding>
                 if (!item.fromServer) {
                     val file = File(uri2Path(item.uri))
                     val fileRequestBody =
-                        RequestBody.create(MediaType.parse("multipart/form-data"), file)
+                        file.asRequestBody("multipart/form-data".toMediaTypeOrNull())
                     addFormDataPart("files", file.name, fileRequestBody)
                 }
             }

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

@@ -414,7 +414,7 @@ class InviteVisitsActivity : BaseActivity<ActivityInviteVisitsBinding>() {
 
         binding.officialVisitsList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<OfficialVisitListItem> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
                 val intent = Intent(OASystem.context, AddOfficialVisitsActivity::class.java).apply {
                     run {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_detail/EntryAndExitPaymentListFragment.kt

@@ -198,7 +198,7 @@ class EntryAndExitPaymentListFragment : BaseFragment<FragmentEntryAndExitPayment
         binding.paymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<EntryAndExitPaymentListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 
                     val item = paymentList[position]

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

@@ -185,7 +185,7 @@ class OtherPaymentFragment : BaseFragment<FragmentOtherPaymentBinding>() {
         binding.paymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<EntryAndExitOtherPayment> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 
                     val item = paymentList[position]

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_draft/EntryAndExitPaymentDraftListFragment.kt

@@ -195,7 +195,7 @@ class EntryAndExitPaymentDraftListFragment : BaseFragment<FragmentEntryAndExitPa
         binding.paymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<EntryAndExitDraftPaymentListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 
                     val item = paymentList[position]

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_management/entry_and_exit_fee_draft/OtherPaymentDraftFragment.kt

@@ -185,7 +185,7 @@ class OtherPaymentDraftFragment : BaseFragment<FragmentOtherPaymentDraftBinding>
         binding.paymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<EntryAndExitDraftOtherPayment> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 
                     val item = paymentList[position]

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_management/group_info/GroupCustomerListFragment.kt

@@ -219,7 +219,7 @@ class GroupCustomerListFragment : BaseFragment<FragmentGroupCustomerListBinding>
         binding.customerList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<GroupCustomerInfo> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
 
                     val groupCustomerDetailFragment = GroupCustomerDetailFragment()

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_visa/insurance_payment_insert/AddInsurancePaymentActivity.kt

@@ -703,7 +703,7 @@ class AddInsurancePaymentActivity : BaseActivity<ActivityAddInsurancePaymentBind
 
         binding.customerList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<Selector> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
 
             }

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_visa/insurance_payment_insert/InsuranceListFragment.kt

@@ -281,7 +281,7 @@ class InsuranceListFragment : BaseFragment<FragmentInsuranceListBinding>() {
         binding.insurancePaymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<InsurancePaymentListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddInsurancePaymentActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_visa/visa_payment_insert/AddVisaPaymentActivity.kt

@@ -1040,7 +1040,7 @@ class AddVisaPaymentActivity : BaseActivity<ActivityAddVisaPaymentBinding>() {
 
         binding.customerList.adapter = adapter
 
-        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick<Selector> {
+        adapter.onRecyclerViewItemClick = object : CardAdapter.OnRecyclerViewItemClick {
             override fun onItemClick(position: Int) {
 
             }

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/group_visa/visa_payment_insert/VisaPaymentListFragment.kt

@@ -303,7 +303,7 @@ class VisaPaymentListFragment : BaseFragment<FragmentVisaPaymentListBinding>() {
         binding.visaPaymentList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<VisaPaymentListItem> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddVisaPaymentActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/resource_management/airplane_three_code/AirplaneThreeCodeListFragment.kt

@@ -162,7 +162,7 @@ class AirplaneThreeCodeListFragment : BaseFragment<FragmentAirplaneThreeCodeList
         binding.airplaneResourceList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<AirplaneThreeCode> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddAirplaneThreeCodeActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/resource_management/car_resource/CarResourceListFragment.kt

@@ -164,7 +164,7 @@ class CarResourceListFragment : BaseFragment<FragmentCarResourceListBinding>() {
         binding.carResourceList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<CarResource> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddCarResourceActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/resource_management/guide_resource/GuideResourceListFragment.kt

@@ -168,7 +168,7 @@ class GuideResourceListFragment : BaseFragment<FragmentGuideResourceListBinding>
         binding.guideResourceList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<GuideResource> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddGuideResourceActivity::class.java).apply {

+ 1 - 1
app/src/main/java/com/pan_american/android/ui/resource_management/hotel_resource/HotelResourceListFragment.kt

@@ -171,7 +171,7 @@ class HotelResourceListFragment : BaseFragment<FragmentHotelResourceListBinding>
         binding.hotelResourceList.adapter = adapter
 
         adapter.onRecyclerViewItemClick =
-            object : CardAdapter.OnRecyclerViewItemClick<UpdateHotelResource> {
+            object : CardAdapter.OnRecyclerViewItemClick {
                 override fun onItemClick(position: Int) {
                     val intent =
                         Intent(OASystem.context, AddHotelResourceActivity::class.java).apply {

+ 2 - 2
gradle.properties

@@ -21,6 +21,6 @@ kotlin.code.style=official
 # resources declared in the library itself and none from the library's dependencies,
 # thereby reducing the size of the R class for that library
 android.nonTransitiveRClass=true
-# use jcenter
-#android.enableJetifier=true
+
+android.enableJetifier=true
 #org.gradle.unsafe.configuration-cache=true