优化代码结构

This commit is contained in:
源文雨 2022-03-11 16:18:11 +08:00
parent 44575fb19e
commit b7b9d92148

View File

@ -3,15 +3,15 @@ package epidemic
import ( import (
"encoding/json" "encoding/json"
"strconv"
control "github.com/FloatTech/zbputils/control" zero "github.com/wdvxdr1123/ZeroBot"
"github.com/wdvxdr1123/ZeroBot/message"
"github.com/FloatTech/zbputils/binary"
"github.com/FloatTech/zbputils/control"
"github.com/FloatTech/zbputils/control/order" "github.com/FloatTech/zbputils/control/order"
"github.com/FloatTech/zbputils/process" "github.com/FloatTech/zbputils/process"
"github.com/FloatTech/zbputils/web" "github.com/FloatTech/zbputils/web"
log "github.com/sirupsen/logrus"
zero "github.com/wdvxdr1123/ZeroBot"
"github.com/wdvxdr1123/ZeroBot/message"
) )
const ( const (
@ -21,7 +21,6 @@ const (
// result 疫情查询结果 // result 疫情查询结果
type result struct { type result struct {
Ret int `json:"ret"`
Data string `json:"data"` Data string `json:"data"`
} }
@ -60,19 +59,24 @@ func init() {
ctx.SendChain(message.Text("你还没有输入城市名字呢!")) ctx.SendChain(message.Text("你还没有输入城市名字呢!"))
return return
} }
process.SleepAbout1sTo2s() data, times, err := queryEpidemic(text)
data, times := queryEpidemic(text) if err != nil {
if data == nil { ctx.SendChain(message.Text("ERROR: ", err))
ctx.SendChain(message.Text("没有找到【" + text + "】城市的疫情数据."))
return return
} }
msgtext := "【" + data.Name + "】疫情数据:\n" + if data == nil {
"新增:" + strconv.Itoa(data.Today.Confirm) + ctx.SendChain(message.Text("没有找到【", text, "】城市的疫情数据."))
" ,现有确诊:" + strconv.Itoa(data.Total.NowConfirm) + return
" ,治愈:" + strconv.Itoa(data.Total.Heal) + }
" ,死亡:" + strconv.Itoa(data.Total.Dead) + " " + data.Total.Grade process.SleepAbout1sTo2s()
ctx.SendChain( ctx.SendChain(
message.Text(msgtext), message.Text(
"【", data.Name, "】疫情数据:\n",
"新增:", data.Today.Confirm,
" ,现有确诊:", data.Total.NowConfirm,
" ,治愈:", data.Total.Heal,
" ,死亡:", data.Total.Dead, " ", data.Total.Grade,
),
message.Text("\n"), message.Text("\n"),
message.Text("更新时间:"+times), message.Text("更新时间:"+times),
message.Text("\n"), message.Text("\n"),
@ -102,24 +106,21 @@ func rcity(a *area, cityName string) *area {
} }
// queryEpidemic 查询城市疫情 // queryEpidemic 查询城市疫情
func queryEpidemic(findCityName string) (citydata *area, times string) { func queryEpidemic(findCityName string) (citydata *area, times string, err error) {
response, err := web.GetData(txurl) data, err := web.GetData(txurl)
if err != nil { if err != nil {
log.Errorln("[txurl-err]:", err) return
return nil, ""
} }
var r result var r result
err = json.Unmarshal(response, &r) err = json.Unmarshal(data, &r)
if err != nil { if err != nil {
log.Errorln("[txjson-Result-err]:", err) return
return nil, ""
} }
var e epidemic var e epidemic
err = json.Unmarshal([]byte(r.Data), &e) err = json.Unmarshal(binary.StringToBytes(r.Data), &e)
if err != nil { if err != nil {
log.Errorln("[txjson-Epidemic-err]:", err) return
return nil, ""
} }
citydata = rcity(&e.AreaTree[0], findCityName) citydata = rcity(e.AreaTree[0], findCityName)
return citydata, e.LastUpdateTime return citydata, e.LastUpdateTime, nil
} }