From 467880f0ce1dd1778b5e9bc92631f970b6b3aa98 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期一, 07 九月 2020 10:49:51 +0800
Subject: [PATCH] add testNightPush
---
service/msgPush.go | 63 +++++++++++++++++++++++++++++++
routers/router.go | 1
controllers/car.go | 24 ++++++++++++
3 files changed, 88 insertions(+), 0 deletions(-)
diff --git a/controllers/car.go b/controllers/car.go
index 22aeaa6..9f50298 100644
--- a/controllers/car.go
+++ b/controllers/car.go
@@ -243,6 +243,30 @@
c.ServeJSON()
}
+// @router /testNightPush [get]
+func (c *CarController) TestNightPush() {
+ carOwnNames := service.GetLeftCarOwners()
+
+ //灏嗗叿浣撶殑杞︿富淇℃伅鎺ㄩ�佺粰绠$悊鍛�
+ if carOwnNames != nil && len(carOwnNames) >0 {
+ //鑾峰彇杞︿富濮撳悕
+ managerMsg := fmt.Sprintf("%s 鏈┒绂昏溅涓�: %s", time.Now().Format("2006-01-02 15:04:05"), strings.Join(carOwnNames, " "))
+ mb,me, managerArr := service.Push2Manager("鑲茶嫳涓鍋滆溅", managerMsg)
+ mLogE := models.Log{
+ Id: uuid.NewV4().String(),
+ CreateTime: time.Now().Format("2006-01-02 15:04:05"),
+ Result: mb,
+ Phones: strings.Join(managerArr, ","),
+ }
+ if me != nil {
+ mLogE.Content = me.Error()
+ } else {
+ mLogE.Content = managerMsg
+ }
+ mLogE.Insert()
+ fmt.Println("mb:", mb, "me:", me, "message:", managerMsg)
+ }
+}
// @router /spaceInfo [get]
func (c *CarController) SpaceInfo() {
sv := service.NewCarService()
diff --git a/routers/router.go b/routers/router.go
index e1f14f9..7606e6f 100644
--- a/routers/router.go
+++ b/routers/router.go
@@ -61,6 +61,7 @@
beego.Router(preApi+"/car/crossRecord", &controllers.CarController{}, "*:CrossRecord")
beego.Router(preApi+"/car/testPush", &controllers.CarController{}, "*:TestPush")
+ beego.Router(preApi+"/testNightPush", &controllers.CarController{}, "*:TestNightPush")
beego.Router(preApi+"/car/pushLog", &controllers.CarController{}, "*:PushLog")
beego.Router(preApi+"/car/spaceInfo", &controllers.CarController{}, "*:SpaceInfo")
beego.Router(preApi+"/car/spaceUser", &controllers.CarController{}, "*:SpaceUser")
diff --git a/service/msgPush.go b/service/msgPush.go
index 4b2d58d..41b2c2e 100644
--- a/service/msgPush.go
+++ b/service/msgPush.go
@@ -507,6 +507,69 @@
return b,e, aliasArr, carOwners
}
+
+//姝ゆ柟娉曞仛娴嬭瘯浣跨敤
+//鑾峰彇鍋滅暀鍦ㄨ溅搴撳唴杞︿富鐨勫鍚嶏紝鎵句笉鍒板鍚嶈繑鍥炶繖鐗�
+func GetLeftCarOwners() []string {
+ var carOwners []string
+ pushUserM := make(map[string]string)
+ var userE models.User
+ allUsers, _ := userE.GetAllUsers()
+ if allUsers != nil {
+ for _,u := range allUsers {
+ pushUserM[u.Id] = u.PhoneNum
+ }
+ }
+
+ carPersonM := make(map[string]string)
+ csv := NewCarService()
+ carPersons := csv.GetVehicleListByPerson("")
+ if carPersons != nil {
+ for _, cp := range carPersons {
+ cnPlateNo := preDealPlateNo(cp.PlateNo)
+ if cnPlateNo != "" {
+ carPersonM[cnPlateNo] = cp.PersonId
+ }
+ }
+ }
+ //澶滈棿鏌愪簺棰嗗鐨勮溅鍙互鍋滃湪杞﹀簱鍐�
+ var vipPlateNoArr []string
+ vipArr := strings.Split(beego.AppConfig.String("nightVipPlateNos"), ",")
+ if vipArr != nil && len(vipArr) >0 {
+ for _,po := range vipArr {
+ if po != "" {
+ cnPo := preDealPlateNo(po)
+ if cnPo != "" {
+ vipPlateNoArr = append(vipPlateNoArr, cnPo)
+ }
+ }
+ }
+ }
+
+ hikPersonMap := csv.GetHikPersonMap()
+
+ spaceNos := csv.FindSpaceNo("")
+ for _,sn := range spaceNos {
+ if sn.State == 1 { //杞﹀皻鍦ㄥ仠杞﹀満鐨勮溅鐗�
+ inCnPlateNo := preDealPlateNo(sn.PlateNo)
+ if inCnPlateNo != "" {
+ if !isVipCar(inCnPlateNo, vipPlateNoArr) {
+ if personId,ok := carPersonM[inCnPlateNo];ok {
+
+ if v,ex := hikPersonMap[personId]; ex {
+ carOwners = append(carOwners, v.PersonName)
+ }
+ } else { //鎵句笉鍒拌溅涓伙紝鍗宠涓轰复鏃惰溅锛屽皢杞︾墝浣滀负杞︿富濮撳悕鎺ㄩ��
+ carOwners = append(carOwners, sn.PlateNo)
+ }
+ }
+ }
+ }
+ }
+
+ return carOwners
+}
+
//vip杞︿富锛屼笉鎺ユ敹璇风寮�鐨勯�氱煡锛屼篃涓嶉�氱煡绠$悊鍛樿繖涓溅杩樺湪杞﹀簱鍐�
func isVipCar(targetPlateNo string, vipPlateNoArr []string) bool {
b := false
--
Gitblit v1.8.0