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