# HG changeset patch # User pyon@macmini # Date 1584437360 -32400 # Node ID b50f2a581cf85ee2592f8a0b4e54d2f62eb07455 # Parent 77dd877929f58de0e56751130e149b62e53e285f bug fix. diff -r 77dd877929f5 -r b50f2a581cf8 src/kaigo/Perori/perori.go --- a/src/kaigo/Perori/perori.go Fri Mar 13 18:21:08 2020 +0900 +++ b/src/kaigo/Perori/perori.go Tue Mar 17 18:29:20 2020 +0900 @@ -20,7 +20,7 @@ var debug_log bool // Constants -const version = "0.3a" +const version = "0.3b" const default_dbfile = "ikenshoirai.db" const default_csvfile = "ikenshoirai.csv" @@ -197,17 +197,31 @@ if dbdata[i].Ymd != dbdata[j].Ymd { return dbdata[i].Ymd > dbdata[j].Ymd } + if dbdata[i].IraiYmd != dbdata[j].IraiYmd { + return dbdata[i].IraiYmd > dbdata[j].IraiYmd + } return false }) - var recentdata []Sinsei + var dbdata2 []Sinsei // delete same Ymd (for changing Dr.) + var lasthhsno, lastymd string + for _, ss := range dbdata { + if ss.Hhsno == lasthhsno && lastymd == ss.Ymd { + continue + } + dbdata2 = append(dbdata2, ss) + lasthhsno = ss.Hhsno + lastymd = ss.Ymd + } + + var lastdata []Sinsei prevhash := make(map[string]PrevSinsei) hhscnt := make(map[string]int) - for _, ss := range dbdata { + for _, ss := range dbdata2 { ss.Humanize() switch hhscnt[ss.Hhsno] { case 0: - recentdata = append(recentdata, ss) + lastdata = append(lastdata, ss) case 1: prevhash[ss.Hhsno] = PrevSinsei{ Biko: ss.Biko, @@ -220,12 +234,12 @@ } hhscnt[ss.Hhsno]++; } - print_debug_log(fmt.Sprintf("recentdata: n=%d", len(recentdata))) // + print_debug_log(fmt.Sprintf("lastdata: n=%d", len(lastdata))) // doctorhash := make(map[string]Doctor) hpcnt := make(map[string]int) var hpcntsum int - for _, ss := range recentdata { + for _, ss := range lastdata { ss.SetPrev(prevhash[ss.Hhsno]) if d, ok := doctorhash[ss.DrId]; !ok { doctorhash[ss.DrId] = Doctor{ @@ -261,7 +275,7 @@ irai := struct { Ymd string NHhs int - NSinsei int + //NSinsei int NDr int Doctors []Doctor Hp map[string]int @@ -269,7 +283,7 @@ }{ Ymd: strings.Join([]string{date[0:4], date[4:6], date[6:8]}, "."), NHhs: len(hhshash), - NSinsei: len(dbdata), + //NSinsei: len(dbdata), NDr: len(doctors), Doctors: doctors, Hp: hpcnt,