Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
p x
SuZhouAvp
Commits
1141bca5
Commit
1141bca5
authored
Jun 20, 2025
by
p x
Browse files
3
parent
a5e7e33e
Changes
6
Show whitespace changes
Inline
Side-by-side
.kotlin/errors/errors-1750410795560.log
0 → 100644
View file @
1141bca5
kotlin version: 2.0.21
error message: The daemon has terminated unexpectedly on startup attempt #1 with error code: 0. The daemon process output:
1. Kotlin compile daemon is ready
app/src/main/java/com/sd/cavphmi/repositorys/ParseSocketRepo.kt
View file @
1141bca5
...
...
@@ -62,7 +62,9 @@ class ParseSocketRepo @Inject constructor(private val clientRetrofitMethod: Clie
}
}
/***查询车位信息***/
/***查询车位信息
* 苏州hmi用的这个接口判断空闲车位
* ***/
suspend
fun
getSpaceData
():
MyResult
<
SpaceNoBean
>
{
var
map
=
mutableMapOf
(
"pageNo"
to
20
,
"pageSize"
to
1000
)
var
body
=
RequestBodyUtil
.
toRequestBody
(
map
)
...
...
app/src/main/java/com/sd/cavphmi/ui/MainActivity.kt
View file @
1141bca5
...
...
@@ -11,6 +11,7 @@ import com.sd.cavphmi.bean.ParkBean
import
com.sd.cavphmi.bean.VehicleStats
import
com.sd.cavphmi.databinding.ActivityMainBinding
import
com.sd.cavphmi.intfaces.OnConCan
import
com.sd.cavphmi.viewmodels.AvpMapVM
import
com.sd.cavphmi.viewmodels.MainVm
import
com.sd.cavphmi.viewmodels.MockVM
import
dagger.hilt.android.AndroidEntryPoint
...
...
@@ -36,10 +37,12 @@ class MainActivity : BaseActivity<ActivityMainBinding, MainVm>() {
}
private
val
mockVM
:
MockVM
by
viewModels
()
private
val
avpMapVM
:
AvpMapVM
by
viewModels
()
private
lateinit
var
dialogFragment
:
ExitAppDialog
override
fun
initView
()
{
viewModel
.
mockVM
=
mockVM
}
...
...
@@ -48,8 +51,7 @@ class MainActivity : BaseActivity<ActivityMainBinding, MainVm>() {
viewModel
.
getCurrentTime
()
viewModel
.
getMobileNetworkSignal
()
viewModel
.
getOrderData
()
viewModel
.
getSpaceData
()
// viewModel.getSpaceData()
//test
// viewModel.findPathPlanning()
}
...
...
@@ -57,23 +59,19 @@ class MainActivity : BaseActivity<ActivityMainBinding, MainVm>() {
override
fun
initListener
()
{
mockBt
()
mockLis
()
//订单数据
viewModel
.
orderBean
.
observe
(
this
)
{
binding
.
order
=
it
}
}
private
fun
mockLis
()
{
mockVM
.
orderBean
.
observe
(
this
)
{
binding
.
order
=
it
}
}
private
fun
mockBt
()
{
binding
.
btVehicle
.
setOnClickListener
{
viewModel
.
subVehicle
().
observe
(
this
)
{
viewModel
.
subVehicle
(
true
).
observe
(
this
)
{
topicVehicle
(
it
)
}
}
...
...
@@ -93,7 +91,7 @@ class MainActivity : BaseActivity<ActivityMainBinding, MainVm>() {
viewModel
.
subEndV2x
()
}
binding
.
btChewei
.
setOnClickListener
{
viewModel
.
subPoints
().
observe
(
this
){
viewModel
.
subPoints
().
observe
(
this
)
{
topicvPoints
(
it
)
}
}
...
...
@@ -119,6 +117,7 @@ class MainActivity : BaseActivity<ActivityMainBinding, MainVm>() {
// }
}
/**停车位变更**/
private
fun
topicvPoints
(
bean
:
ParkBean
)
{
var
curValue
=
bean
.
parkingSpace
...
...
app/src/main/java/com/sd/cavphmi/viewmodels/AvpMapVM.kt
0 → 100644
View file @
1141bca5
package
com.sd.cavphmi.viewmodels
import
android.content.Context
import
androidx.lifecycle.ViewModel
import
dagger.hilt.android.lifecycle.HiltViewModel
import
dagger.hilt.android.qualifiers.ApplicationContext
import
javax.inject.Inject
@HiltViewModel
class
AvpMapVM
@Inject
constructor
(
@ApplicationContext
private
var
context
:
Context
)
:
ViewModel
()
{
}
\ No newline at end of file
app/src/main/java/com/sd/cavphmi/viewmodels/MainVm.kt
View file @
1141bca5
...
...
@@ -2,6 +2,7 @@ package com.sd.cavphmi.viewmodels
import
android.content.Context
import
android.text.TextUtils
import
androidx.activity.viewModels
import
androidx.databinding.ObservableField
import
androidx.lifecycle.LiveData
import
androidx.lifecycle.MutableLiveData
...
...
@@ -50,7 +51,8 @@ class MainVm @Inject constructor(
private
var
client
:
MyWebSocketClient
?
=
null
private
var
gson
=
Gson
()
//模拟操作
lateinit
var
mockVM
:
MockVM
//车辆位姿数据
var
carVehicle
=
MutableLiveData
<
CarVehicle
>()
...
...
@@ -114,6 +116,27 @@ class MainVm @Inject constructor(
},
2000
,
1000
*
60
)
}
/***获取信号强度**/
fun
getMobileNetworkSignal
()
{
netSingTimer
.
schedule
(
object
:
TimerTask
()
{
override
fun
run
()
{
viewModelScope
.
launch
{
var
result
=
parseSocketRepo
.
getTimeOut
()
when
(
result
)
{
is
MyResult
.
Success
<
Int
>
->
{
timeOutDiff
.
set
(
result
.
data
)
// println("-------时间差---- = ${result.data}")
}
else
->
{
// println("-------Error---- = ${result.msg}")
}
}
}
}
},
5000
,
1000
*
60
)
}
/***获取订单信息
* @param vehiclePlate 车牌号
* **/
...
...
@@ -261,26 +284,7 @@ class MainVm @Inject constructor(
}
}
/***获取信号强度**/
fun
getMobileNetworkSignal
()
{
netSingTimer
.
schedule
(
object
:
TimerTask
()
{
override
fun
run
()
{
viewModelScope
.
launch
{
var
result
=
parseSocketRepo
.
getTimeOut
()
when
(
result
)
{
is
MyResult
.
Success
<
Int
>
->
{
timeOutDiff
.
set
(
result
.
data
)
// println("-------时间差---- = ${result.data}")
}
else
->
{
// println("-------Error---- = ${result.msg}")
}
}
}
}
},
5000
,
1000
*
60
)
}
/**查询车位信息**/
fun
getSpaceData
()
{
...
...
@@ -462,9 +466,12 @@ class MainVm @Inject constructor(
/*** 联网车辆位姿数据**/
fun
subVehicle
():
LiveData
<
CarVehicle
>
{
val
reqStr
=
getSendData
(
"/topic/vehicle"
)
client
?.
send
(
reqStr
)
fun
subVehicle
(
mock
:
Boolean
=
false
):
LiveData
<
CarVehicle
>
{
if
(
mock
)
{
mockVM
.
onVehicleMock
(
carVehicle
,
heading
,
speed
)
}
else
{
client
?.
send
(
getSendData
(
"/topic/vehicle"
))
}
return
carVehicle
}
...
...
app/src/main/java/com/sd/cavphmi/viewmodels/MockVM.kt
View file @
1141bca5
package
com.sd.cavphmi.viewmodels
import
android.content.Context
import
androidx.databinding.ObservableField
import
androidx.lifecycle.LiveData
import
androidx.lifecycle.MutableLiveData
import
androidx.lifecycle.viewModelScope
import
com.sd.cavphmi.base.MyBaseViewModel
...
...
@@ -17,16 +19,16 @@ import javax.inject.Inject
@HiltViewModel
class
MockVM
@Inject
constructor
(
@ApplicationContext
var
context
:
Context
,
@ApplicationContext
private
var
context
:
Context
,
private
var
parseSocketRepo
:
ParseSocketRepo
)
:
MyBaseViewModel
()
{
//车辆位姿数据
var
carVehicle
=
MutableLiveData
<
CarVehicle
>()
//订单信息
var
orderBean
=
MutableLiveData
<
OrderBean
>()
fun
onVehicleMock
()
{
fun
onVehicleMock
(
carVehicle
:
MutableLiveData
<
CarVehicle
>,
heading
:
ObservableField
<
Int
>,
speed
:
ObservableField
<
Float
>
)
{
viewModelScope
.
launch
{
var
dst
=
mutableListOf
<
String
>()
FileIoUtils
.
getAssetMock
(
context
,
"mock/carvehicle.txt"
,
dst
)
...
...
@@ -34,23 +36,13 @@ class MockVM @Inject constructor(
delay
(
3000
)
val
bean
=
parseSocketRepo
.
parseDataBean
(
str
,
CarVehicle
::
class
.
java
)
println
(
"---模拟车辆位姿数据 = ${bean}"
)
var
result
=
parseSocketRepo
.
getOrderData
(
bean
.
vehicleData
?.
get
(
0
)
?.
vehiclePlate
?:
""
)
when
(
result
)
{
is
MyResult
.
Success
<
OrderBean
>
->
{
println
(
"-------订单信息---- = ${result.data}"
)
orderBean
.
value
=
result
.
data
}
else
->
{
// println("-------Error---- = ${result.msg}")
}
}
println
(
"------模拟车辆位姿数据 = ${bean}"
)
heading
.
set
(
bean
.
vehicleData
.
get
(
0
).
heading
.
toInt
())
speed
.
set
(
bean
.
vehicleData
.
get
(
0
).
speed
)
carVehicle
.
value
=
bean
}
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment