From ca10e9d776509f54cb0251b7eae44cee74d94b2c Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期二, 01 九月 2020 20:09:50 +0800
Subject: [PATCH] findHikSpaceUser add state=1

---
 controllers/user.go |  100 ++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 96 insertions(+), 4 deletions(-)

diff --git a/controllers/user.go b/controllers/user.go
index 9cf24da..a906ae3 100644
--- a/controllers/user.go
+++ b/controllers/user.go
@@ -63,15 +63,16 @@
 func (u *UserController) Login() {
 	phoneNum := u.GetString("phoneNum")
 	cod := u.GetString("code")
+	cid := u.GetString("cid")  //unipush clientid
 	resp := code.Code{}
-	fmt.Println("phoneNum:", phoneNum, "code:", cod)
-	if phoneNum == "" || cod == "" {
+	fmt.Println("phoneNum:", phoneNum, "code:", cod, "clientId:", cid)
+	if phoneNum == "" || cod == ""{
 		resp.Success= false
 		resp.Status= http.StatusBadRequest
 		resp.Data= "鍙傛暟鏈夎"
 	} else {
 		var sv service.UserService
-		b, info, e := sv.Login(phoneNum, cod)
+		b, info, e := sv.Login(phoneNum, cod, cid)
 
 		if b {
 			resp.Success= true
@@ -93,6 +94,17 @@
 // @Success 200 {string} logout success
 // @router /logout [get]
 func (u *UserController) Logout() {
+	cid := u.GetString("cid")  //unipush clientid
+	fmt.Println("clientId:", cid)
+
+	if cid != "" {
+		go func() {
+			unbindB, unE := service.UnbindAlias(cid)
+			fmt.Println("unbind result:", unbindB, "err:", unE)
+			var uc models.UserClient
+			uc.DeleteByCid(cid)
+		}()
+	}
 	resp := code.Code{}
 	resp.Success = true
 	resp.Status = http.StatusOK
@@ -113,9 +125,89 @@
 		resp.Status = http.StatusBadRequest
 		resp.Data = "鍙傛暟鏈夎"
 	} else {
-
+		var sv service.UserService
+		if sv.AddPlateNo(reqBody.UserId, reqBody.PlateNo) {
+			resp.Success = true
+			resp.Status = http.StatusOK
+			resp.Data = "娣诲姞鎴愬姛"
+		} else {
+			resp.Success = false
+			resp.Status = http.StatusBadRequest
+			resp.Data = "娣诲姞澶辫触"
+		}
 	}
 	u.Data["json"] = resp
 	u.ServeJSON()
 }
 
+// @router /myPlateNos [get]
+func (u *UserController) MyPlateNos() {
+	userId := u.GetString("userId")
+	fmt.Println("MyPlateNos userId", userId)
+	sv :=  service.NewCarService()
+	vehicleList := sv.GetVehicleListByPerson(userId)
+	var nos = make([]string, 0)
+	if vehicleList != nil {
+		for _,p := range vehicleList {
+			nos = append(nos, p.PlateNo)
+		}
+	}
+	resp := code.Code{
+		Success: true,
+		Status: http.StatusOK,
+		Data: nos,
+	}
+	u.Data["json"] = resp
+	u.ServeJSON()
+}
+
+// @router /delPlateNo [delete]
+func (u *UserController) DelPlateNo() {
+	userId := u.GetString("userId")
+	plateNo := u.GetString("plateNo")
+	resp := code.Code{}
+	var uc models.UserCar
+	i,e := uc.Delete(userId, plateNo)
+	fmt.Println("delPlateNo i:",i, "e:", e)
+	if e ==nil && i >0 {
+		resp.Success = true
+		resp.Status = http.StatusOK
+		resp.Data = "鍒犻櫎鎴愬姛"
+	} else {
+		resp.Success = false
+		resp.Status = http.StatusInternalServerError
+		resp.Data = "鍒犻櫎澶辫触"
+	}
+	u.Data["json"] = resp
+	u.ServeJSON()
+}
+
+// @router /all [get]
+func (u *UserController) GetUserAll() {
+	resp := code.Code{}
+	sv := service.NewCarService()
+	personAll := sv.GetHikPersonList()
+	if personAll != nil {
+		resp.Success = true
+		resp.Status = http.StatusOK
+		resp.Data = personAll
+	}
+	u.Data["json"] = resp
+	u.ServeJSON()
+}
+
+
+// @router /sync [get]
+func (u *UserController) Sync() {
+	resp := code.Code{}
+	syncCount := service.SyncHikPerson()
+
+	resp.Success = true
+	resp.Status = http.StatusOK
+	resp.Data = map[string]interface{}{
+		"syncCount": syncCount,
+	}
+
+	u.Data["json"] = resp
+	u.ServeJSON()
+}

--
Gitblit v1.8.0