From 3e9cf4df58f5d8266e606fff63cb9da1105a4dcf Mon Sep 17 00:00:00 2001 From: liuxiaolong <liuxiaolong@aiotlink.com> Date: 星期三, 02 九月 2020 11:54:44 +0800 Subject: [PATCH] fix night push,push to manager if car left --- service/msgPush.go | 35 ++++++++++++++++++++++++----------- controllers/car.go | 21 ++++----------------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/controllers/car.go b/controllers/car.go index 63cf1a7..e552f90 100644 --- a/controllers/car.go +++ b/controllers/car.go @@ -103,7 +103,7 @@ func nightPush(){ message := fmt.Sprintf("%s 璇峰敖蹇┒鍑哄仠杞﹀満", time.Now().Format("2006-01-02 15:04:05")) - b, e, aliasArr := service.NightPush("鑲茶嫳涓鍋滆溅", message) + b, e, aliasArr,carOwnNames := service.NightPush("鑲茶嫳涓鍋滆溅", message) //璁板綍鎺ㄩ�佹棩蹇� logE := models.Log{ Id: uuid.NewV4().String(), @@ -119,22 +119,10 @@ logE.Insert() fmt.Println("b:", b,"e:",e, "message:", message) - //濡傛灉鏈夋垚鍔熺粰杩囧杞︾殑杞︿富鎺ㄩ�侀�氱煡锛屽垯灏嗗叿浣撶殑杞︿富淇℃伅鎺ㄩ�佺粰绠$悊鍛� - if b { + //灏嗗叿浣撶殑杞︿富淇℃伅鎺ㄩ�佺粰绠$悊鍛� + if carOwnNames != nil && len(carOwnNames) >0 { //鑾峰彇杞︿富濮撳悕 - var leftUserNames []string - carSv := service.NewCarService() - hikPersons := carSv.GetHikPersonList() - hikPersonM := make(map[string]string) - for _,hikP := range hikPersons { - hikPersonM[hikP.PhoneNo] = hikP.PersonName - } - for _, pushedPhone := range aliasArr { - if name,in := hikPersonM[pushedPhone]; in { - leftUserNames = append(leftUserNames, name) - } - } - nameStr := strings.Join(leftUserNames, " ") + nameStr := strings.Join(carOwnNames, " ") managerMsg := fmt.Sprintf("%s 鏈┒绂昏溅涓�: %s", time.Now().Format("2006-01-02 15:04:05"), nameStr) mb,me, managerArr := service.Push2Manager("鑲茶嫳涓鍋滆溅", nameStr) mLogE := models.Log{ @@ -150,7 +138,6 @@ } mLogE.Insert() fmt.Println("mb:", mb, "me:", me, "message:", managerMsg) - } } diff --git a/service/msgPush.go b/service/msgPush.go index 2da943d..5a4c48e 100644 --- a/service/msgPush.go +++ b/service/msgPush.go @@ -424,8 +424,9 @@ return false, errors.New("鎺ㄩ�佸け璐�") } -func NightPush(title string, msg string) (bool, error, []string) { +func NightPush(title string, msg string) (bool, error, []string, []string) { var aliasArr []string + var carOwners []string pushUserM := make(map[string]string) var userE models.User @@ -436,24 +437,36 @@ } } if len(pushUserM) == 0 { - return false, errors.New("len(pushUserM) == 0"), aliasArr + return false, errors.New("len(pushUserM) == 0"), aliasArr, carOwners } carPersonM := make(map[string]string) csv := NewCarService() carPersons := csv.GetVehicleListByPerson("") if carPersons != nil { for _, cp := range carPersons { - carPersonM[cp.PlateNo] = cp.PersonId + cnPlateNo := preDealPlateNo(cp.PlateNo) + if cnPlateNo != "" { + carPersonM[cnPlateNo] = cp.PersonId + } } } + hikPersonMap := csv.GetHikPersonMap() + spaceNos := csv.FindSpaceNo("") var uc models.UserClient for _,sn := range spaceNos { - if sn.State == 1 && sn.PlateNo != "" { //宸茬粡鎶婅溅鍋滃埌鍋滆溅鍦虹殑杞︿富锛屼笉鍐嶆帹閫佹秷鎭� - if personId,ok := carPersonM[sn.PlateNo];ok { - if phoneNum,ok := pushUserM[personId]; ok { //姝や汉宸叉敞鍐屽埌绯荤粺,骞朵笖杞︿笉鍦ㄥ仠杞﹀簱鍐� - if uc.Exist(phoneNum) { - aliasArr = append(aliasArr, phoneNum) + if sn.State == 1 { //杞﹀皻鍦ㄥ仠杞﹀満鐨勮溅鐗� + inCnPlateNo := preDealPlateNo(sn.PlateNo) + if inCnPlateNo != "" { + if personId,ok := carPersonM[inCnPlateNo];ok { + if phoneNum,ok := pushUserM[personId]; ok { + if uc.Exist(phoneNum) { + aliasArr = append(aliasArr, phoneNum) + } + } + + if v,ex := hikPersonMap[personId]; ex { + carOwners = append(carOwners, v.PersonName) } } } @@ -462,17 +475,17 @@ if len(aliasArr) == 0 { fmt.Println("娌℃湁鎺ㄩ�佺洰鏍�,aliasArr is empty") - return false, errors.New("娌℃湁鎺ㄩ�佺洰鏍�,aliasArr is empty"), aliasArr + return false, errors.New("娌℃湁鎺ㄩ�佺洰鏍�,aliasArr is empty"), aliasArr, carOwners } cResult, taskId, ce := createPushMsg(title, msg) if !cResult { fmt.Println("createPushMsg taskId:", taskId, "err:", ce) - return false, errors.New("鍒涘缓鎺ㄩ�佸墠缃秷鎭け璐�"), aliasArr + return false, errors.New("鍒涘缓鎺ㄩ�佸墠缃秷鎭け璐�"), aliasArr, carOwners } b,e := doPush(taskId, aliasArr) - return b,e, aliasArr + return b,e, aliasArr, carOwners } //濡傛灉澶滈棿鏈夌粰杞﹀簱鍐呯殑杞︿富鎺ㄩ�佲�滆灏藉揩椹剁鈥濈殑娑堟伅锛屽垯鍛婄煡绠$悊鍛� 鏈夊摢浜涜溅灏氬仠鍦ㄨ溅搴撳唴 -- Gitblit v1.8.0