18034727885
2026-04-09 6668460ef703ef6cbc3954ebd60c7fa11990d4c8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
package com.driver.igotrip.ui.pub
 
import android.annotation.SuppressLint
import android.app.Activity
import android.content.Intent
import android.util.Log
import android.view.Gravity
import android.view.View
import android.widget.EditText
import android.widget.ImageView
import android.widget.TextView
import android.widget.Toast
import cn.sinata.xldutils.utils.SPUtils
import cn.sinata.xldutils.utils.clickDelay
import cn.sinata.xldutils.utils.getAreaCode
import cn.sinata.xldutils.utils.getString
import com.driver.emanagercar.ui.base.Local.BaseLoginActivity
import com.driver.igotrip.R
import com.driver.igotrip.base.MyApplication
import com.driver.igotrip.base.gaode.AMapKit
import com.driver.igotrip.bean.AgreeBean
import com.driver.igotrip.bean.LoginBean
import com.driver.igotrip.netUtls.Api
import com.driver.igotrip.netUtls.callNet
import com.driver.igotrip.netUtls.getMapByAny
import com.driver.igotrip.ui.main.GetOrderFragment
import com.driver.igotrip.ui.main.MainActivity
import com.driver.igotrip.utils.Cache.CacheKey
import com.driver.igotrip.utils.LanguageUtil
import com.driver.igotrip.utils.PhoneCheckUtil
import com.lzf.easyfloat.EasyFloat
import com.lzf.easyfloat.enums.ShowPattern
import com.lzf.easyfloat.enums.SidePattern
import com.lzf.easyfloat.interfaces.OnInvokeView
import org.jetbrains.anko.dip
import org.jetbrains.anko.find
import org.jetbrains.anko.startActivity
import org.jetbrains.anko.startActivityForResult
import org.jetbrains.anko.toast
import java.util.*
 
class LoginActivity : BaseLoginActivity() {
    override fun setContentView() {
        setContentView(R.layout.activity_login)
    }
 
    private val areaCode by lazy { find<TextView>(R.id.areaCode) }
    private val et_login_phone by lazy { find<EditText>(R.id.et_login_phone) }
    private val iv_logo by lazy { find<View>(R.id.iv_logo) }
    private val tv_driver by lazy { find<View>(R.id.tv_driver) }
    private val tv_forget_pwd by lazy { find<View>(R.id.tv_forget_pwd) }
    private val iv_eye by lazy { find<ImageView>(R.id.iv_eye) }
    private val et_login_pwd by lazy { find<EditText>(R.id.et_login_pwd) }
    private val tv_login by lazy { find<TextView>(R.id.tv_login) }
 
 
    override fun initView() {
        showHeader(false)
        showTitle(false)
//        toast(MyUtils.getInstans().getUuid(this))
        et_login_phone.setText("")
        /*iv_logo.clickDelay {
            var lang = SPUtils.getString(Const.language)
            if (lang.isNullOrEmpty() || lang == Const.Language.CHINESE){
                SPUtils.save(Const.language,Const.Language.ENGLISH)
                LanguageUtil.changeAppLanguage(this,Const.Language.ENGLISH,"")
                LanguageUtil.reApp(this)
            }else{
                SPUtils.save(Const.language,Const.Language.CHINESE)
                LanguageUtil.changeAppLanguage(this,Const.Language.CHINESE,"")
                LanguageUtil.reApp(this)
            }
        }*/
    }
 
    fun callHtml(click: (s: String) -> Unit) {
        var map = getMapByAny()
        map["type"] = 9
        callNet(Api.queryByType, map) {
            var data = gson.fromJson<AgreeBean>(it, AgreeBean::class.java)
            click(data.data.content)
        }
    }
 
 
    override fun setOnclick() {
        areaCode.setOnClickListener {
            startActivityForResult<AreaCodeActivity>(10086)
        }
        tv_driver.setOnClickListener {
            startActivity<BecomeDriverActivity>()
        }
 
        tv_forget_pwd.setOnClickListener {
            startActivity<ForgetPwdActivity>()
        }
 
        iv_eye.setOnClickListener {
            callHtml {
 
            }
            showEye(iv_eye, et_login_pwd)
        }
        tv_login.setOnClickListener {
            if (et_login_phone.getString().isEmpty()) {
                toast(getString(R.string.请输入手机号))
                return@setOnClickListener
            }
            if (!PhoneCheckUtil.phoneCheck(et_login_phone.getString())) {
                toast(getString(R.string.手机号格式错误))
                return@setOnClickListener
            }
            if (et_login_pwd.getString().isEmpty()) {
                toast(getString(R.string.请输入密码))
                return@setOnClickListener
            }
            if (et_login_pwd.getString().length < 6) {
                toast(getString(R.string.密码不能小于6位))
                return@setOnClickListener
            }
            var map = getMapByAny()
            map["password"] = et_login_pwd.getString()
            map["phone"] = areaCode.getAreaCode() + et_login_phone.getString()
            callNet(Api.loginPhone, map) {
                var bean = gson.fromJson<LoginBean>(it, LoginBean::class.java)
                CacheKey.putKeyStr("appid", bean.data.appid)
                CacheKey.putKeyStr("token", bean.data.token)
                CacheKey.putKeyStr("vehicleId", bean.data.vehicleId)
                CacheKey.putKeyStr("userId", bean.data.id.toString())
                CacheKey.putKeyStr("serverId", bean.data.serverId.toString())
                CacheKey.putKeyStr("terminalName", bean.data.terminalId.toString())
//                CacheKey.putKeyStr("jumpCode",bean.data.jumpCode.toString())
                toast(getString(R.string.登录成功))
                MyApplication.getInstance()!!.setAlisa()
                startActivity<MainActivity>()
            }
        }
    }
 
    override fun tvInit(tv_code: TextView) {
 
    }
 
    override fun tvIniting(tv_code: TextView, time: String) {
    }
 
    private var mBackAppTime: Long = 0
 
    @SuppressLint("MissingSuperCall")
    override fun onBackPressed() {
        if (System.currentTimeMillis() - mBackAppTime > 2000) {
            Toast.makeText(this, getString(R.string.再按一次退出程序), Toast.LENGTH_SHORT)
                .show()
            mBackAppTime = System.currentTimeMillis()
        } else {
            closeAll()
        }
    }
 
    override fun onStop() {
        super.onStop()
        // showFloater()
        //EasyFloat.show("EasyFloatTag")
    }
 
    private var floater: EasyFloat.Builder? = null //浮窗
    private fun showFloater() {
        if (floater == null) {
            floater = EasyFloat.with(applicationContext)
                .setLayout(R.layout.layout_floter, OnInvokeView {
                    it.setOnClickListener {
                        startActivity<MainActivity>()
                    }
                })
                .setShowPattern(ShowPattern.ALL_TIME)
                .setSidePattern(SidePattern.RESULT_LEFT)
                .setGravity(Gravity.START or Gravity.BOTTOM, 0, dip(-180))
                .setDragEnable(true)
                .setTag("EasyFloatTag")
                .setMatchParent(widthMatch = false, heightMatch = false)
                .registerCallback {
                    touchEvent { view, motionEvent ->
                        motionEvent.action
                    }
                }
            floater?.show()
        }
    }
 
    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)
        if (resultCode == Activity.RESULT_OK && requestCode == 10086) {
            data?.getStringExtra("code")?.let {
                areaCode.text = it
            }
        }
    }
 
}