From 0e7cc1976ba1c23f9ffff2ce84dbd9d041a3fc96 Mon Sep 17 00:00:00 2001 From: yu Date: Mon, 13 May 2019 15:31:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81,=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E4=B8=8D=E5=BF=85=E8=A6=81=E7=9A=84=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- router.go | 78 +++++++++++++++++++++++++++---------------------------- 1 file changed, 38 insertions(+), 40 deletions(-) diff --git a/router.go b/router.go index d31c6ef..86a6080 100644 --- a/router.go +++ b/router.go @@ -672,50 +672,44 @@ func seat_api(c *gin.Context) { var data Seat_data var conf_data [][]interface{} //conf.GATEWAY_INFO.CONFIG 采集器配置信息 + // log.Println("DEVICEDATAS.data:",DEVICEDATAS.DATA) for _, i := range conf.GATEWAY_INFO.CONFIG { - - //if i.ID == "deb03e28-ddcb-4e5d-aa31-d870a1f0f09b" { - // log.Println("begin debug") - //} - arr := get_seat_device_data(i.ID) //获取到设备版本 version, num := arr[0], arr[1] - //if i.ID == "deb03e28-ddcb-4e5d-aa31-d870a1f0f09b" { - // log.Println("conf.data:", i.DATA) - // log.Println("devicedatas.data:", DEVICEDATAS.DATA) - //} - - for k, j := range i.DATA { - if DEVICEDATAS.DATA[version+"_"+num].DATA != nil { - //if i.ID == "deb03e28-ddcb-4e5d-aa31-d870a1f0f09b" { - // log.Println("data:", DEVICEDATAS.DATA[version+"_"+num].DATA) - //} - - // log.Println("============================devicedatas.data:", DEVICEDATAS.DATA[version+"_"+num].DATA) - if DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)] != nil { - // log.Println("==========================do.data:", DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)]) - j = append(j, DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)]) - } + if version=="null" || num == "null"{ + continue + } + if DEVICEDATAS.DATA[version+"_"+num].DATA != nil { + log.Println("^^^^^^^^^^^^^^^^^^DEVICEDATAS.DATA-version_num",DEVICEDATAS.DATA[version+"_"+num]) + for k, j := range i.DATA { + //log.Println("@@@@@@@@@@@@@@@@@@@@@@@@@@,i.DATA-j",j) + // log.Println("============================devicedatas.data:", DEVICEDATAS.DATA[version+"_"+num].DATA) + if DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)] != nil { + //这里不会改变DEVICEDATAS.DATA的数据,只是判断一下有没有数据,如果有,则加上 + // log.Println("==========================do.data:", DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)]) + j = append(j, DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)]) + } + conf_data = append(conf_data, j) + //log.Println("@@@@@@@@@@@@@@@@@@@@@@@@@@,i.DATA-j,appended.conf_data",conf_data) } - conf_data = append(conf_data, j) } } - log.Println("end conf.data:", conf_data) + log.Println("=================end conf.data:", conf_data) switch type_id { - case "1": - data = scan_seat_from_confdata("男厕位", conf_data) - case "2": - data = scan_seat_from_confdata("男便池", conf_data) - case "3": - data = scan_seat_from_confdata("女厕位", conf_data) - case "4": - data = scan_seat_from_confdata("母婴", conf_data) - case "5": - data = scan_seat_from_confdata("残卫", conf_data) + case "1": + data = scan_seat_from_confdata("男厕位", conf_data) + case "2": + data = scan_seat_from_confdata("男便池", conf_data) + case "3": + data = scan_seat_from_confdata("女厕位", conf_data) + case "4": + data = scan_seat_from_confdata("母婴", conf_data) + case "5": + data = scan_seat_from_confdata("残卫", conf_data) } DEVICEDATAS.RUnlock() c.JSON(http.StatusOK, gin.H{"status": http.StatusOK, "data": data}) @@ -728,11 +722,9 @@ func get_seat_device_data(id string) []string { //配置表中devices_list //例如["4E5D52DD-EB81-43C0-A2B6-04E432412EBA", "loraport", "yunhorn_kgl_l_v1", "1"], for _, i := range conf.DEVICES_LIST { - // log.Println("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&") - // log.Println(i) if id == i[0] { data[0], data[1] = i[2], i[3] - log.Println(data) + log.Println("get_seat_device_data",data) break } else { data[0], data[1] = "null", "null" @@ -749,6 +741,12 @@ func scan_seat_from_confdata(T string, conf_data [][]interface{}) Seat_data { data.POSITIONLIST = make([]interface{}, 0) data.HASPERSONLIST = make([]interface{}, 0) for _, i := range conf_data { + //T 男厕位 女厕位 + //conf_data [[男厕位 1],[女厕位 1]] + // 第一位是数据类型 第二位是位置 第三位是有无人占用 + //conf_data [男厕位 1 0/1] + + //把当前符合类型的数据加入到返回集合中 if i[0] == T { data.POSITIONLIST = append(data.POSITIONLIST, i[1]) if len(i) < 3 { @@ -756,10 +754,10 @@ func scan_seat_from_confdata(T string, conf_data [][]interface{}) Seat_data { } data.HASPERSONLIST = append(data.HASPERSONLIST, i[2]) switch i[2] { - case 0: - data.EMPTYPOSITION++ - case 1: - data.OCCUPYPOSITION++ + case 0: + data.EMPTYPOSITION++ + case 1: + data.OCCUPYPOSITION++ } } }