Browse Source

1.添加登录接口。

master
wangwanlei 11 months ago
parent
commit
9b601470b1

+ 8
- 0
app/src/main/java/com/xhly/manageapp/bean/LoginBean.kt View File

1
+package com.xhly.manageapp.bean
2
+
3
+//用于登录
4
+class LoginBean {
5
+    var loginname = ""
6
+    var loginpwd = ""
7
+    var sn = ""
8
+}

+ 6
- 0
app/src/main/java/com/xhly/manageapp/network/app/AppService.kt View File

3
 import com.xhly.corelib.network.bean.ResponseData
3
 import com.xhly.corelib.network.bean.ResponseData
4
 import com.xhly.manageapp.bean.AppModel
4
 import com.xhly.manageapp.bean.AppModel
5
 import com.xhly.manageapp.bean.ListAppBean
5
 import com.xhly.manageapp.bean.ListAppBean
6
+import com.xhly.manageapp.bean.UpdateBean
6
 import com.xhly.manageapp.network.UriAdress
7
 import com.xhly.manageapp.network.UriAdress
7
 import retrofit2.http.Body
8
 import retrofit2.http.Body
8
 import retrofit2.http.POST
9
 import retrofit2.http.POST
14
     @POST(UriAdress.LIST_APP)
15
     @POST(UriAdress.LIST_APP)
15
     suspend fun postListApp(@Body listapp: ListAppBean): ResponseData<ArrayList<AppModel>>
16
     suspend fun postListApp(@Body listapp: ListAppBean): ResponseData<ArrayList<AppModel>>
16
 
17
 
18
+    /**
19
+     * 获得版本更新
20
+     */
21
+    @POST(UriAdress.CLIENT_ADD)
22
+    suspend fun postClientAdd(@Body updateBean: UpdateBean): ResponseData<Any>
17
 }
23
 }

+ 32
- 2
app/src/main/java/com/xhly/manageapp/ui/login/activity/LoginActivity.kt View File

9
 import com.kongzue.dialogx.dialogs.CustomDialog
9
 import com.kongzue.dialogx.dialogs.CustomDialog
10
 import com.kongzue.dialogx.interfaces.OnBindView
10
 import com.kongzue.dialogx.interfaces.OnBindView
11
 import com.xhly.corelib.Const
11
 import com.xhly.corelib.Const
12
+import com.xhly.corelib.utils.GsonUtils
13
+import com.xhly.manageapp.ManageApplication
12
 import com.xhly.manageapp.R
14
 import com.xhly.manageapp.R
15
+import com.xhly.manageapp.bean.LoginBean
16
+import com.xhly.manageapp.bean.user.UserBean
17
+import com.xhly.manageapp.contentprovider.ZSpProvider
13
 import com.xhly.manageapp.databinding.ActivityLoginBinding
18
 import com.xhly.manageapp.databinding.ActivityLoginBinding
14
 import com.xhly.manageapp.ui.login.viewmodel.LoginViewModel
19
 import com.xhly.manageapp.ui.login.viewmodel.LoginViewModel
15
 import com.xhly.manageapp.ui.main.activity.MainActivity
20
 import com.xhly.manageapp.ui.main.activity.MainActivity
19
     override fun getBinding() = ActivityLoginBinding.inflate(layoutInflater)
24
     override fun getBinding() = ActivityLoginBinding.inflate(layoutInflater)
20
 
25
 
21
     override fun initData() {
26
     override fun initData() {
22
-
27
+       viewModel.loginData.observe(this){
28
+           if (it.xhlyLoginSucess){
29
+               loginSucess()
30
+           }else{
31
+               it.xhlyLoginMessage?.let {
32
+                   Toast(it)
33
+               }
34
+           }
35
+       }
23
     }
36
     }
24
 
37
 
25
     override fun initView() {
38
     override fun initView() {
46
             Toast(getString(R.string.codenoempty))
59
             Toast(getString(R.string.codenoempty))
47
             return
60
             return
48
         }
61
         }
49
-        viewModel.getTest()
62
+        val loginBean=LoginBean()
63
+        loginBean.loginname=account
64
+        loginBean.loginpwd=code
65
+        ManageApplication.getDeviceInfo()?.let {
66
+            loginBean.sn=it
67
+        }
68
+        viewModel.login(loginBean)
69
+    }
70
+
71
+    private fun loginSucess(){
50
         spUtils.setParam("user", "user")
72
         spUtils.setParam("user", "user")
73
+        val userBean=UserBean()
74
+        userBean.schoolid=1
75
+        userBean.userid=1
76
+        userBean.regionid=1
77
+        spUtils.saveJson(Const.USERINFO,userBean)
78
+        val parseClassToJson = GsonUtils.parseClassToJson(userBean)
79
+        ZSpProvider.save(this,"user",parseClassToJson)
51
         startIntentActivity(MainActivity().javaClass)
80
         startIntentActivity(MainActivity().javaClass)
52
         finish()
81
         finish()
53
     }
82
     }
54
 
83
 
84
+
55
     private fun showEditDialog() {
85
     private fun showEditDialog() {
56
         CustomDialog
86
         CustomDialog
57
             .build()
87
             .build()

+ 9
- 1
app/src/main/java/com/xhly/manageapp/ui/login/netservice/LoginService.kt View File

1
 package com.xhly.manageapp.ui.login.netservice
1
 package com.xhly.manageapp.ui.login.netservice
2
 
2
 
3
 import com.xhly.corelib.network.bean.ResponseData
3
 import com.xhly.corelib.network.bean.ResponseData
4
+import com.xhly.manageapp.bean.LoginBean
5
+import com.xhly.manageapp.bean.user.UserBean
6
+import com.xhly.manageapp.network.UriAdress
7
+import retrofit2.http.Body
4
 import retrofit2.http.GET
8
 import retrofit2.http.GET
9
+import retrofit2.http.POST
5
 
10
 
6
 interface LoginService {
11
 interface LoginService {
7
     @GET("/status/info")
12
     @GET("/status/info")
8
-    suspend fun getTest():ResponseData<String>
13
+    suspend fun getTest(): ResponseData<String>
14
+
15
+    @POST(UriAdress.ULOGIN_LOGIN)
16
+    suspend fun postLogin(@Body loginBean: LoginBean): ResponseData<UserBean>
9
 }
17
 }

+ 24
- 1
app/src/main/java/com/xhly/manageapp/ui/login/viewmodel/LoginViewModel.kt View File

1
 package com.xhly.manageapp.ui.login.viewmodel
1
 package com.xhly.manageapp.ui.login.viewmodel
2
 
2
 
3
+import androidx.lifecycle.LiveData
4
+import androidx.lifecycle.MutableLiveData
3
 import com.xhly.corelib.base.viewmodel.CommonBaseViewModel
5
 import com.xhly.corelib.base.viewmodel.CommonBaseViewModel
4
 import com.xhly.corelib.network.RetrofitService
6
 import com.xhly.corelib.network.RetrofitService
5
 import com.xhly.corelib.utils.LogShow
7
 import com.xhly.corelib.utils.LogShow
8
+import com.xhly.manageapp.bean.LoginBean
9
+import com.xhly.manageapp.bean.user.UserBean
6
 import com.xhly.manageapp.ui.login.netservice.LoginService
10
 import com.xhly.manageapp.ui.login.netservice.LoginService
7
 
11
 
8
 class LoginViewModel: CommonBaseViewModel() {
12
 class LoginViewModel: CommonBaseViewModel() {
9
     private var service=RetrofitService.create<LoginService>()
13
     private var service=RetrofitService.create<LoginService>()
10
-
14
+    private val loginResult=MutableLiveData<UserBean>()
15
+    val loginData:LiveData<UserBean> =loginResult
11
     fun getTest(){
16
     fun getTest(){
12
         launchUI {
17
         launchUI {
13
             val test = service.getTest()
18
             val test = service.getTest()
14
             LogShow(test.toString()+"|||"+test.msg)
19
             LogShow(test.toString()+"|||"+test.msg)
15
         }
20
         }
16
     }
21
     }
22
+
23
+    fun login(loginBean: LoginBean){
24
+        launchUI {
25
+            val postLogin = service.postLogin(loginBean)
26
+            if (postLogin.code==0){
27
+                if (postLogin.obj!=null){
28
+                    loginResult.value=postLogin.obj
29
+                }
30
+            }else{
31
+                val userBean=UserBean()
32
+                userBean.xhlyLoginSucess=false
33
+                if (postLogin.msg!=null){
34
+                    userBean.xhlyLoginMessage=postLogin.msg
35
+                }
36
+                loginResult.value=userBean
37
+            }
38
+        }
39
+    }
17
 }
40
 }

+ 3
- 0
corelib/src/main/java/com/xhly/corelib/Const.kt View File

95
     //存储pad信息提交时间,如果为同一天则不在上传,不然继续上传
95
     //存储pad信息提交时间,如果为同一天则不在上传,不然继续上传
96
     const val PADINFOTIMEKEY = "PADINFOTIMEKEY"
96
     const val PADINFOTIMEKEY = "PADINFOTIMEKEY"
97
 
97
 
98
+    //存储pad更新请求时间,如果为同一天则不在上传,不然继续上传
99
+    const val PADUPDATETIMEKEY = "PADUPDATETIMEKEY"
100
+
98
     //存储用户信息
101
     //存储用户信息
99
     const val USERINFO = "USERINFO"
102
     const val USERINFO = "USERINFO"
100
 
103
 

Loading…
Cancel
Save