diff --git a/.gitmodules b/.gitmodules index 406c9695..48596a20 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,5 @@ [submodule "vtm"] path = vtm url = git@github.com:xiaoyan159/vtm.git + branch = master + diff --git a/app/src/main/java/com/navinfo/omqs/bean/EvaluationInfo.kt b/app/src/main/java/com/navinfo/omqs/bean/EvaluationInfo.kt index 8515940f..f93034a8 100644 --- a/app/src/main/java/com/navinfo/omqs/bean/EvaluationInfo.kt +++ b/app/src/main/java/com/navinfo/omqs/bean/EvaluationInfo.kt @@ -12,7 +12,7 @@ data class EvaluationInfo( val linkPid: String = "",//Link号 @SerializedName("linkStatus") - val linkStatus: String = "",//Link状态 + val linkStatus: Int = 0,//Link状态 @SerializedName("markId") val markId: String = "",//Link状态 @@ -27,7 +27,7 @@ data class EvaluationInfo( val featureName: String = "",//问题类型 @SerializedName("problemType") - val problemType: String = "",//问题现象 + val problemType: String = "",//问题现象 0错误 1多余 2遗漏 服务字段定义为Integer,使用包装类,对应无值情况为空 @SerializedName("problemPhenomenon") val problemPhenomenon: String = "",//问题现象 @@ -48,6 +48,24 @@ data class EvaluationInfo( val evaluationDate: String = "",//测评日期(yyyy-mm-dd) @SerializedName("evaluationWay") - val evaluationWay: String = "现场测评"//测评方式 + val evaluationWay: String = "2",//测评方式 1生产测评 2现场测评 服务字段定义为Integer,使用包装类,对应无值情况为空 + + @SerializedName("roadClassfcation") + val roadClassfcation: String = "",//道路种别 + + @SerializedName("roadFunctionGrade") + val roadFunctionGrade: String = "",//道路功能等级 + + @SerializedName("noEvaluationreason") + val noEvaluationreason: String = "",//未测评原因 + + @SerializedName("linkLength") + val linkLength: Double = 0.0,//link长度(m 保留3位小数) + + @SerializedName("dataLevel") + val dataLevel: String = "",//数据级别 + + @SerializedName("linstringLength") + val linstringLength: Double = 0.0,//错误要素长度(m) ) : Parcelable diff --git a/app/src/main/java/com/navinfo/omqs/bean/LoginUserBean.kt b/app/src/main/java/com/navinfo/omqs/bean/LoginUserBean.kt index bfd9bcbd..27cc9587 100644 --- a/app/src/main/java/com/navinfo/omqs/bean/LoginUserBean.kt +++ b/app/src/main/java/com/navinfo/omqs/bean/LoginUserBean.kt @@ -1,6 +1,6 @@ package com.navinfo.omqs.bean data class LoginUserBean( - var username: String = "", - var password: String = "" + var userCode: String = "", + var passWord: String = "" ) \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/bean/SysUserBean.kt b/app/src/main/java/com/navinfo/omqs/bean/SysUserBean.kt new file mode 100644 index 00000000..d9ce0e6c --- /dev/null +++ b/app/src/main/java/com/navinfo/omqs/bean/SysUserBean.kt @@ -0,0 +1,8 @@ +package com.navinfo.omqs.bean + +data class SysUserBean( + var userName: String = "", + var passWord: String = "", + var userCode: String = "", + var roleId: Int = 0, +) \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/http/DefaultUserResponse.kt b/app/src/main/java/com/navinfo/omqs/http/DefaultUserResponse.kt new file mode 100644 index 00000000..cea3dcc6 --- /dev/null +++ b/app/src/main/java/com/navinfo/omqs/http/DefaultUserResponse.kt @@ -0,0 +1,7 @@ +package com.navinfo.omqs.http + +class DefaultUserResponse { + var success: Boolean = false + var msg: String = "" + var obj: T? = null +} \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/http/NetResult.kt b/app/src/main/java/com/navinfo/omqs/http/NetResult.kt index 4222a09f..5c0f96ce 100644 --- a/app/src/main/java/com/navinfo/omqs/http/NetResult.kt +++ b/app/src/main/java/com/navinfo/omqs/http/NetResult.kt @@ -31,8 +31,8 @@ package com.navinfo.omqs.http sealed class NetResult { data class Success(val data: T?) : NetResult() - data class Failure(val code: Int, val msg: String) : NetResult() - data class Error(val exception: Exception) : NetResult() + data class Failure(val code: Int, val msg: String) : NetResult() + data class Error(val exception: Exception) : NetResult() object Loading : NetResult() /** @@ -42,8 +42,8 @@ sealed class NetResult { override fun toString(): String { return when (this) { is Success<*> -> "网络访问成功,返回正确结果Success[data=$data]" - is Failure -> "网络访问成功,返回错误结果Failure[$msg]" - is Error -> "网络访问出错 Error[exception=$exception]" + is Failure<*> -> "网络访问成功,返回错误结果Failure[$msg]" + is Error<*> -> "网络访问出错 Error[exception=$exception]" is Loading -> "网络访问中 Loading" } } diff --git a/app/src/main/java/com/navinfo/omqs/http/NetworkService.kt b/app/src/main/java/com/navinfo/omqs/http/NetworkService.kt index fbeb5ff9..2698d9b6 100644 --- a/app/src/main/java/com/navinfo/omqs/http/NetworkService.kt +++ b/app/src/main/java/com/navinfo/omqs/http/NetworkService.kt @@ -2,6 +2,10 @@ package com.navinfo.omqs.http import com.navinfo.omqs.bean.OfflineMapCityBean import com.navinfo.collect.library.data.entity.TaskBean +import com.navinfo.omqs.bean.LoginUserBean +import com.navinfo.omqs.bean.SysUserBean +import okhttp3.ResponseBody +import retrofit2.Response /** @@ -16,4 +20,9 @@ interface NetworkService { * 获取任务列表 */ suspend fun getTaskList(evaluatorNo:String): NetResult>> + + /** + * 登录接口 + */ + suspend fun loginUser(loginUserBean: LoginUserBean): NetResult> } \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/http/NetworkServiceImpl.kt b/app/src/main/java/com/navinfo/omqs/http/NetworkServiceImpl.kt index a7dc4eed..ffa4f2f1 100644 --- a/app/src/main/java/com/navinfo/omqs/http/NetworkServiceImpl.kt +++ b/app/src/main/java/com/navinfo/omqs/http/NetworkServiceImpl.kt @@ -2,8 +2,12 @@ package com.navinfo.omqs.http import com.navinfo.omqs.bean.OfflineMapCityBean import com.navinfo.collect.library.data.entity.TaskBean +import com.navinfo.omqs.bean.LoginUserBean +import com.navinfo.omqs.bean.SysUserBean import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext +import okhttp3.ResponseBody +import retrofit2.Response import javax.inject.Inject /** @@ -24,13 +28,13 @@ class NetworkServiceImpl @Inject constructor( if (result.code() == 200) { NetResult.Success(result.body()) } else { - NetResult.Failure(result.code(), result.message()) + NetResult.Failure(result.code(), result.message()) } } else { - NetResult.Failure(result.code(), result.message()) + NetResult.Failure(result.code(), result.message()) } } catch (e: Exception) { - NetResult.Error(e) + NetResult.Error(e) } } @@ -43,13 +47,32 @@ class NetworkServiceImpl @Inject constructor( if (result.code() == 200) { NetResult.Success(result.body()) } else { - NetResult.Failure(result.code(), result.message()) + NetResult.Failure(result.code(), result.message()) } } else { - NetResult.Failure(result.code(), result.message()) + NetResult.Failure(result.code(), result.message()) } } catch (e: Exception) { - NetResult.Error(e) + NetResult.Error(e) + } + } + + override suspend fun loginUser(loginUserBean: LoginUserBean): NetResult> = + //在IO线程中运行 + withContext(Dispatchers.IO) { + return@withContext try { + val result = netApi.retrofitLoginUser(loginUserBean) + if (result.isSuccessful) { + if (result.code() == 200) { + NetResult.Success(result.body()) + } else { + NetResult.Failure(result.code(), result.message()) + } + } else { + NetResult.Failure(result.code(), result.message()) + } + } catch (e: Exception) { + NetResult.Error(e) } } } \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/omqs/http/RetrofitNetworkServiceAPI.kt b/app/src/main/java/com/navinfo/omqs/http/RetrofitNetworkServiceAPI.kt index d128052d..a2592cdd 100644 --- a/app/src/main/java/com/navinfo/omqs/http/RetrofitNetworkServiceAPI.kt +++ b/app/src/main/java/com/navinfo/omqs/http/RetrofitNetworkServiceAPI.kt @@ -3,6 +3,8 @@ package com.navinfo.omqs.http import com.navinfo.omqs.bean.EvaluationInfo import com.navinfo.omqs.bean.OfflineMapCityBean import com.navinfo.collect.library.data.entity.TaskBean +import com.navinfo.omqs.bean.LoginUserBean +import com.navinfo.omqs.bean.SysUserBean import okhttp3.ResponseBody import retrofit2.Response import retrofit2.http.* @@ -40,6 +42,13 @@ interface RetrofitNetworkServiceAPI { @GET("/drdc/MapDownload/maplist") suspend fun retrofitGetOfflineMapCityList(): Response> + /** + * 登录接口 + */ + @Headers("Content-Type: application/json") + @POST("/devcp/loginUser") + suspend fun retrofitLoginUser(@Body loginUserBean: LoginUserBean): Response> + /** * 下载文件 */ diff --git a/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt b/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt index 10fb6570..f2976f61 100644 --- a/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt +++ b/app/src/main/java/com/navinfo/omqs/http/taskupload/TaskUploadScope.kt @@ -121,26 +121,71 @@ class TaskUploadScope( if (objects != null&&objects.size>0) { val copyList = realm.copyFromRealm(objects) copyList.forEach { + var problemType = "0" + if(it.problemType=="错误"){ + problemType = "0" + }else if(it.problemType=="多余"){ + problemType = "1" + }else if(it.problemType=="遗漏"){ + problemType = "2" + } + var evaluationWay = "2"; +/* if(it.evaluationWay=="生产测评"){ + evaluationWay = "1" + }else if(it.evaluationWay=="现场测评"){ + evaluationWay = "2" + }*/ val evaluationInfo = EvaluationInfo( evaluationTaskId = taskBean.id.toString(), linkPid = hadLinkDvoBean.linkPid,//"84207223282277331" - linkStatus = "已测评", + linkStatus = 1, markId = hadLinkDvoBean.mesh,//"20065597" trackPhotoNumber = "", markGeometry = it.geometry, featureName = it.classType, - problemType = it.problemType, + problemType = problemType, problemPhenomenon = it.phenomenon, problemDesc = it.description, problemLink = it.problemLink, problemReason = it.cause, evaluatorName = it.checkUserId, evaluationDate = it.checkTime, - evaluationWay = "现场测评" + evaluationWay = evaluationWay, + roadClassfcation = "", + roadFunctionGrade = "", + noEvaluationreason = "", + linkLength = 0.0, + dataLevel = "", + linstringLength = 0.0, ) bodyList.add(evaluationInfo) } + }else{ + val evaluationInfo = EvaluationInfo( + evaluationTaskId = taskBean.id.toString(), + linkPid = hadLinkDvoBean.linkPid,//"84207223282277331" + linkStatus = 0, + markId = hadLinkDvoBean.mesh,//"20065597" + trackPhotoNumber = "", + markGeometry = "", + featureName = "", + problemType = "", + problemPhenomenon = "", + problemDesc = "", + problemLink = "", + problemReason = "", + evaluatorName = "", + evaluationDate = "", + evaluationWay = "", + roadClassfcation = "", + roadFunctionGrade = "", + noEvaluationreason = "", + linkLength = 0.0, + dataLevel = "", + linstringLength = 0.0, + ) + bodyList.add(evaluationInfo) } } diff --git a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt index 720fd20b..cd36992d 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/activity/login/LoginViewModel.kt @@ -10,8 +10,9 @@ import androidx.lifecycle.viewModelScope import com.blankj.utilcode.util.ResourceUtils import com.navinfo.omqs.Constant import com.navinfo.omqs.bean.LoginUserBean -import com.navinfo.omqs.db.MyRealmModule +import com.navinfo.omqs.bean.SysUserBean import com.navinfo.omqs.db.RoomAppDatabase +import com.navinfo.omqs.http.DefaultUserResponse import com.navinfo.omqs.http.NetResult import com.navinfo.omqs.http.NetworkService import com.navinfo.omqs.tools.FileManager @@ -19,6 +20,7 @@ import dagger.hilt.android.lifecycle.HiltViewModel import io.realm.Realm import io.realm.RealmConfiguration import kotlinx.coroutines.* +import retrofit2.Response import java.io.File import java.io.IOException import javax.inject.Inject @@ -74,7 +76,7 @@ class LoginViewModel @Inject constructor( var jobLogin: Job? = null; init { - loginUser.value = LoginUserBean(username = "admin", password = "123456") + loginUser.value = LoginUserBean(userCode = "02911", passWord = "123456") } @@ -82,7 +84,7 @@ class LoginViewModel @Inject constructor( * 处理注册按钮 */ fun onClick(view: View) { - loginUser.value!!.username = "admin2" + loginUser.value!!.userCode = "admin2" loginUser.value = loginUser.value } @@ -111,12 +113,61 @@ class LoginViewModel @Inject constructor( // withContext(Dispatchers.IO) { //网络访问 loginStatus.postValue(LoginStatus.LOGIN_STATUS_NET_LOADING) - //假装网络访问,等待2秒 - delay(1000) + var userCode = "99999"; + //登录访问 + when (val result = networkService.loginUser(LoginUserBean(userName,password))) { + is NetResult.Success<*> ->{ + if (result.data!=null) { + try { + val defaultUserResponse = result.data as DefaultUserResponse + if(defaultUserResponse.success){ + if(defaultUserResponse.obj==null|| defaultUserResponse.obj!!.userCode==null){ + withContext(Dispatchers.Main) { + Toast.makeText(context, "服务返回用户Code信息错误", Toast.LENGTH_SHORT) + .show() + } + loginStatus.postValue(LoginStatus.LOGIN_STATUS_CANCEL) + return + }else{ + userCode = defaultUserResponse.obj?.userCode.toString() + } + }else{ + withContext(Dispatchers.Main) { + Toast.makeText(context, "${defaultUserResponse.msg}", Toast.LENGTH_SHORT) + .show() + } + loginStatus.postValue(LoginStatus.LOGIN_STATUS_CANCEL) + return + } + + } catch (e: IOException) { + loginStatus.postValue(LoginStatus.LOGIN_STATUS_FOLDER_FAILURE) + } + } + } + is NetResult.Error<*> ->{ + withContext(Dispatchers.Main) { + Toast.makeText(context, "${result.exception.message}", Toast.LENGTH_SHORT) + .show() + } + loginStatus.postValue(LoginStatus.LOGIN_STATUS_CANCEL) + return + } + is NetResult.Failure<*> ->{ + withContext(Dispatchers.Main) { + Toast.makeText(context, "${result.code}:${result.msg}", Toast.LENGTH_SHORT) + .show() + } + loginStatus.postValue(LoginStatus.LOGIN_STATUS_CANCEL) + return + } + else -> {} + } + //文件夹初始化 try { loginStatus.postValue(LoginStatus.LOGIN_STATUS_FOLDER_INIT) - createUserFolder(context, "02911") + createUserFolder(context, userCode) } catch (e: IOException) { loginStatus.postValue(LoginStatus.LOGIN_STATUS_FOLDER_FAILURE) } @@ -134,13 +185,13 @@ class LoginViewModel @Inject constructor( roomAppDatabase.getOfflineMapDao().insertOrUpdate(result.data) } } - is NetResult.Error -> { + is NetResult.Error<*> -> { withContext(Dispatchers.Main) { Toast.makeText(context, "${result.exception.message}", Toast.LENGTH_SHORT) .show() } } - is NetResult.Failure -> { + is NetResult.Failure<*> -> { withContext(Dispatchers.Main) { Toast.makeText(context, "${result.code}:${result.msg}", Toast.LENGTH_SHORT) .show() diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultFragment.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultFragment.kt index 4e811b25..210893fa 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultFragment.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultFragment.kt @@ -1,5 +1,6 @@ package com.navinfo.omqs.ui.fragment.evaluationresult +import android.app.Dialog import android.os.Build import android.os.Bundle import android.util.Log @@ -19,6 +20,7 @@ import com.navinfo.omqs.ui.fragment.BaseFragment import com.navinfo.omqs.ui.other.shareViewModels import dagger.hilt.android.AndroidEntryPoint import androidx.navigation.findNavController +import com.navinfo.omqs.ui.dialog.FirstDialog @AndroidEntryPoint class EvaluationResultFragment : BaseFragment(), View.OnClickListener { @@ -65,7 +67,17 @@ class EvaluationResultFragment : BaseFragment(), View.OnClickListener { } //返回按钮点击 binding.evaluationBar.setOnClickListener() { - onBackPressed() + val mDialog = FirstDialog(context) + mDialog.setTitle("提示?") + mDialog.setMessage("是否退出,请确认!") + mDialog.setPositiveButton("确定", object : FirstDialog.OnClickListener { + override fun onClick(dialog: Dialog?, which: Int) { + mDialog.dismiss() + onBackPressed() + } + }) + mDialog.setNegativeButton("取消", null) + mDialog.show() } //保存事件 @@ -76,7 +88,7 @@ class EvaluationResultFragment : BaseFragment(), View.OnClickListener { //删除事件 binding.evaluationBarDelete.setOnClickListener() { - viewModel.deleteData() + viewModel.deleteData(requireContext()) } diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt index 24a27f49..99158c55 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/evaluationresult/EvaluationResultViewModel.kt @@ -1,6 +1,7 @@ package com.navinfo.omqs.ui.fragment.evaluationresult import android.app.Activity +import android.app.Dialog import android.content.Context import android.graphics.drawable.AnimationDrawable import android.graphics.drawable.BitmapDrawable @@ -22,12 +23,13 @@ import com.navinfo.collect.library.data.entity.QsRecordBean import com.navinfo.collect.library.data.entity.RenderEntity.Companion.LinkTable import com.navinfo.collect.library.map.NIMapController import com.navinfo.collect.library.utils.GeometryTools -import com.navinfo.omqs.bean.SignBean import com.navinfo.omqs.Constant import com.navinfo.omqs.R import com.navinfo.omqs.bean.ChatMsgEntity +import com.navinfo.omqs.bean.SignBean import com.navinfo.omqs.db.RealmOperateHelper import com.navinfo.omqs.db.RoomAppDatabase +import com.navinfo.omqs.ui.dialog.FirstDialog import com.navinfo.omqs.util.DateTimeUtil import com.navinfo.omqs.util.SoundMeter import com.navinfo.omqs.util.SpeakMode @@ -326,22 +328,29 @@ class EvaluationResultViewModel @Inject constructor( } } - fun deleteData() { - viewModelScope.launch(Dispatchers.IO) { - - val realm = Realm.getDefaultInstance() - Log.e("jingo", "realm hashCOde ${realm.hashCode()}") - realm.executeTransaction { - val objects = - it.where(QsRecordBean::class.java).equalTo("id", liveDataQsRecordBean.value?.id) - .findFirst() - objects?.deleteFromRealm() + fun deleteData(context: Context) { + val mDialog = FirstDialog(context) + mDialog.setTitle("提示?") + mDialog.setMessage("是否删除Mark,请确认!") + mDialog.setPositiveButton("确定", object : FirstDialog.OnClickListener { + override fun onClick(dialog: Dialog?, which: Int) { + mDialog.dismiss() + viewModelScope.launch(Dispatchers.IO) { + val realm = Realm.getDefaultInstance() + Log.e("jingo", "realm hashCOde ${realm.hashCode()}") + realm.executeTransaction { + val objects = it.where(QsRecordBean::class.java) + .equalTo("id", liveDataQsRecordBean.value?.id).findFirst() + objects?.deleteFromRealm() + } + mapController.markerHandle.removeQsRecordMark(liveDataQsRecordBean.value!!) + mapController.mMapView.vtmMap.updateMap(true) + liveDataFinish.postValue(true) + } } -// realm.close() - mapController.markerHandle.removeQsRecordMark(liveDataQsRecordBean.value!!) - mapController.mMapView.vtmMap.updateMap(true) - liveDataFinish.postValue(true) - } + }) + mDialog.setNegativeButton("取消", null) + mDialog.show() } /** diff --git a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt index 6ea1334c..382ed521 100644 --- a/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt +++ b/app/src/main/java/com/navinfo/omqs/ui/fragment/tasklist/TaskViewModel.kt @@ -91,13 +91,13 @@ class TaskViewModel @Inject constructor( } } } - is NetResult.Error -> { + is NetResult.Error<*> -> { withContext(Dispatchers.Main) { Toast.makeText(context, "${result.exception.message}", Toast.LENGTH_SHORT) .show() } } - is NetResult.Failure -> { + is NetResult.Failure<*> -> { withContext(Dispatchers.Main) { Toast.makeText(context, "${result.code}:${result.msg}", Toast.LENGTH_SHORT) .show() diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 415ee1e6..a756f978 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -92,7 +92,7 @@ android:hint="@string/input_user_name" android:lines="1" android:background="@drawable/shape_login_inputlayout_bg" - android:text="@{loginUserModel.loginUser.username}" + android:text="@{loginUserModel.loginUser.userCode}" tools:ignore="TouchTargetSizeCheck" /> @@ -113,7 +113,7 @@ android:lines="1" android:inputType="textPassword" android:background="@drawable/shape_login_inputlayout_bg" - android:text="@{loginUserModel.loginUser.password}" + android:text="@{loginUserModel.loginUser.passWord}" tools:ignore="TouchTargetSizeCheck" /> diff --git a/app/src/main/res/layout/adapter_offline_map_city.xml b/app/src/main/res/layout/adapter_offline_map_city.xml index a0e19109..c8a01951 100644 --- a/app/src/main/res/layout/adapter_offline_map_city.xml +++ b/app/src/main/res/layout/adapter_offline_map_city.xml @@ -58,7 +58,7 @@ style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="16dp" - android:layout_below="@id/offline_map_download_btn" + android:layout_below="@id/offline_map_city_size" android:paddingTop="10dp" android:progressDrawable="@drawable/progress_bg" android:visibility="invisible" /> diff --git a/app/src/main/res/layout/adapter_task_list.xml b/app/src/main/res/layout/adapter_task_list.xml index 50771d23..a8de167f 100644 --- a/app/src/main/res/layout/adapter_task_list.xml +++ b/app/src/main/res/layout/adapter_task_list.xml @@ -72,7 +72,8 @@ style="@style/btn_default_stroke_horizontal_round" android:layout_width="72dp" android:layout_alignParentRight="true" - android:layout_alignParentBottom="true" + android:layout_below="@id/task_data_version" + android:layout_marginTop="5dp" android:gravity="center" android:text="下载" android:textSize="@dimen/card_title_font_2size" /> @@ -108,7 +109,7 @@ style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="16dp" - android:layout_below="@id/task_color" + android:layout_below="@id/task_download_btn" android:paddingTop="10dp" android:progressDrawable="@drawable/progress_bg" android:visibility="invisible" /> diff --git a/app/src/main/res/layout/fragment_evaluation_result.xml b/app/src/main/res/layout/fragment_evaluation_result.xml index 77e477e5..5fc689b2 100644 --- a/app/src/main/res/layout/fragment_evaluation_result.xml +++ b/app/src/main/res/layout/fragment_evaluation_result.xml @@ -24,6 +24,7 @@ android:id="@+id/evaluation_bar" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:drawableLeft="@drawable/selector_btn_back_xml" android:layout_marginLeft="12dp" android:layout_marginTop="14dp" android:text="Mark" @@ -48,6 +49,7 @@ android:id="@+id/evaluation_bar_cancel" android:layout_width="40dp" android:layout_height="40dp" + android:visibility="gone" android:layout_marginRight="10dp" android:background="@color/transparent" android:src="@drawable/icon_fragment_close" diff --git a/app/src/main/res/layout/fragment_offline_map.xml b/app/src/main/res/layout/fragment_offline_map.xml index 62c43931..740710dd 100644 --- a/app/src/main/res/layout/fragment_offline_map.xml +++ b/app/src/main/res/layout/fragment_offline_map.xml @@ -13,6 +13,7 @@ android:layout_height="wrap_content" app:layout_constraintTop_toTopOf="parent" style="@style/left_pannel_title_layout"> + + android:src="@drawable/ic_baseline_keyboard_arrow_left_24"> + + + app:layout_constraintBottom_toBottomOf="parent"> + + + + + + diff --git a/app/src/main/res/layout/text_item_select.xml b/app/src/main/res/layout/text_item_select.xml index a68151b7..ff443387 100644 --- a/app/src/main/res/layout/text_item_select.xml +++ b/app/src/main/res/layout/text_item_select.xml @@ -10,12 +10,11 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="4dp" + android:drawableLeft="@drawable/selector_text_drawable_left_white_blue" + android:drawablePadding="10dp" android:gravity="center" android:padding="4dp" - android:drawablePadding="10dp" - android:drawableLeft="@drawable/selector_text_drawable_left_white_blue" android:textColor="@color/selector_black_blue_color" - android:textSize="14sp"/> + android:textSize="14sp" /> - - \ No newline at end of file + diff --git a/collect-library/src/main/assets/editormarker.xml b/collect-library/src/main/assets/editormarker.xml index d8d52cf1..7815f74b 100644 --- a/collect-library/src/main/assets/editormarker.xml +++ b/collect-library/src/main/assets/editormarker.xml @@ -1878,6 +1878,7 @@ + \ No newline at end of file diff --git a/vtm b/vtm deleted file mode 160000 index 1ee201a4..00000000 --- a/vtm +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 1ee201a41f78f169873848209a3f3bdac36f185a