annotate src/kaigo/Perori/perori.go @ 62:a2c9a535cdd3

add watcher.go
author pyon@macmini
date Wed, 14 Oct 2020 21:30:04 +0900
parents b50f2a581cf8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
1 package main
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
2
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
3 import (
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
4 "flag"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
5 "compress/gzip"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
6 "encoding/csv"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
7 "fmt"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
8 "html/template"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
9 "io/ioutil"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
10 "log"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
11 "os"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
12 "strings"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
13 "sort"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
14 "time"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
15
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
16 "golang.org/x/text/encoding/japanese"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
17 "golang.org/x/text/transform"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
18 )
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
19
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
20 var debug_log bool
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
21
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
22 // Constants
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
23 const version = "0.3b"
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
24 const default_dbfile = "ikenshoirai.db"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
25 const default_csvfile = "ikenshoirai.csv"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
26
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
27 const tpl = `
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
28 <!DOCTYPE html> <html>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
29 <head>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
30 <style type="text/css">
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
31 body { font-size: 9pt; margin-left: 0px;}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
32 h2 { font-size: 11pt; margin-bottom: 1px; background-color: #ccccff; padding-left: 5px; }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
33 h3 { font-size: 11pt; margin-bottom: 1px; background-color: #f0a8a8; padding-left: 10px; }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
34 table, th, td { border: 0.3px #c0c0c0 solid; border-collapse:collapse; }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
35 table { margin-bottom: 5px; margin-left: 15px; }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
36 th { background-color: #ccffcc; }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
37 hr { page-break-before: always; }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
38 </style>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
39 <title> - </title>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
40 </head>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
41 <body>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
42
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
43 <h2> List <small>( Date = {{.Ymd}} / N = {{.NHhs}} / Dr = {{.NDr}} )</small> </h2>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
44 {{range .Doctors}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
45 <h3>{{.Name}}<small> ..... {{.Hp}}:{{.Senmon}}</small></h3>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
46 {{range .Clients}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
47 <table>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
48 <tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
49 <td width=140 style="background-color: #98f0f0; padding-left: 10px;">{{.Name}}</td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
50 <td width=120 align=center>{{.Kubun}} {{.Ymd}}</td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
51 <td width=480 style="padding-left: 10px;">
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
52
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
53 {{if .Prev.Ymd}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
54 {{if eq .DrId .Prev.DrId}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
55 {{str2cp932 "★ 継続 -"}} {{.Prev.Ymd}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
56 {{else}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
57 {{.Prev.Dr}} {{.Prev.Ymd}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
58 {{end}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
59 {{else}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
60 New !
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
61 {{end}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
62
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
63 </td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
64 <td width=80 align=center>{{.Hhsno}}</td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
65 </tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
66 <tr>
43
77dd877929f5 bug fix.
pyon@macmini
parents: 42
diff changeset
67 <td colspan=4 style="font-family: serif; font-size: 8pt; padding-left: 30px;">{{.Biko}}</td>
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
68 </tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
69
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
70 </table>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
71 {{end}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
72 {{end}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
73
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
74 <hr />
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
75 {{$hpno := 0}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
76 <h2> N by Hp </h2>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
77 <table>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
78 <tr> <th> no </th> <th> hp </th> <th width=60> n </th> </tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
79 {{range $hp, $n := .Hp}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
80 <tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
81 {{$hpno = add1 $hpno}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
82 <td align=right style="padding-right: 5px;"> {{$hpno}} </td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
83 <td style="padding-left: 5px;"> {{$hp}} </td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
84 <td align=right style="padding-right: 5px;"> {{$n}} </td>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
85 </tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
86 {{end}}
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
87 <tr> <td></td> <td align=right> sum &gt &gt &gt</td> <td align=right style="padding-right: 5px;"> <b> {{.HpSum}} </b> </td> </tr>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
88 </table>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
89 </body>
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
90 </html>`
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
91
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
92
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
93 // Define Types
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
94 type PrevSinsei struct {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
95 Biko string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
96 DrId string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
97 Dr string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
98 IraiYmd string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
99 Ymd string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
100 Kubun string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
101 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
102
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
103 type Sinsei struct {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
104 Hhsno string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
105 Name string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
106 Biko string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
107 DrId string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
108 Dr string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
109 DrKana string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
110 Hp string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
111 IraiYmd string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
112 Ymd string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
113 Kubun string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
114 Senmon string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
115 Prev PrevSinsei
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
116 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
117
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
118 func (s *Sinsei) SetPrev(prev PrevSinsei) {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
119 s.Prev = prev
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
120 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
121
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
122 func (s Sinsei) String() string {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
123 return strings.Join([]string{s.Hhsno, s.Name, s.Ymd, s.Kubun, s.Dr, s.Hp, s.Senmon, s.IraiYmd, s.Biko}, ",")
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
124 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
125
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
126 func (s *Sinsei) Humanize() {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
127 var buf string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
128
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
129 switch s.Kubun {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
130 case "01":
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
131 buf = "新規"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
132 case "02":
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
133 buf = "更新"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
134 case "10":
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
135 buf = "支介"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
136 case "05":
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
137 buf = "区変"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
138 case "03":
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
139 buf = "転入"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
140 case "09":
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
141 buf = "証交"
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
142 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
143 s.Kubun, _, _ = transform.String(japanese.ShiftJIS.NewEncoder(), buf)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
144
43
77dd877929f5 bug fix.
pyon@macmini
parents: 42
diff changeset
145 s.Ymd = strings.Join([]string{s.Ymd[2:4], s.Ymd[4:6], s.Ymd[6:8]}, ".")
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
146 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
147
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
148 type Doctor struct {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
149 Id string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
150 Name string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
151 Kana string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
152 Hp string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
153 Senmon string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
154 Clients []Sinsei
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
155 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
156
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
157 func (d *Doctor) AddClient(sinsei Sinsei) {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
158 d.Clients = append(d.Clients, sinsei)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
159 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
160
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
161 func (d Doctor) String() string {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
162 return d.Name
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
163 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
164
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
165 // Main
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
166 func main() {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
167 var csvfile, dbfile, date string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
168
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
169 today := time.Now().Format("20060102")
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
170
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
171 flag.StringVar(&csvfile, "c", default_csvfile, "csv file")
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
172 flag.StringVar(&dbfile, "b", default_dbfile, "db file")
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
173 flag.StringVar(&date, "r", today, "Ikensho Irai YMD")
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
174 flag.BoolVar(&debug_log, "d", false, "print debug-log (stderr)")
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
175 flag.Parse()
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
176
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
177 csvdata, hhshash, err := getdata_fromCSV(csvfile, date)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
178 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
179 log.Fatal(err)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
180 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
181 print_debug_log(fmt.Sprintf("csvdata: n=%d", len(csvdata))) //
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
182 print_debug_log(fmt.Sprintf("hhshash: n=%d", len(hhshash))) //
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
183
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
184 dbdata, err := getdata_fromDB(dbfile, hhshash)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
185 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
186 log.Fatal(err)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
187 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
188 print_debug_log(fmt.Sprintf("dbdata: n=%d", len(dbdata))) //
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
189
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
190 dbdata = append(dbdata, csvdata...)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
191 print_debug_log(fmt.Sprintf("dbdata: n=%d", len(dbdata))) //
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
192
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
193 sort.Slice(dbdata, func(i, j int) bool {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
194 if dbdata[i].Hhsno != dbdata[j].Hhsno {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
195 return dbdata[i].Hhsno < dbdata[j].Hhsno
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
196 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
197 if dbdata[i].Ymd != dbdata[j].Ymd {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
198 return dbdata[i].Ymd > dbdata[j].Ymd
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
199 }
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
200 if dbdata[i].IraiYmd != dbdata[j].IraiYmd {
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
201 return dbdata[i].IraiYmd > dbdata[j].IraiYmd
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
202 }
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
203 return false
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
204 })
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
205
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
206 var dbdata2 []Sinsei // delete same Ymd (for changing Dr.)
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
207 var lasthhsno, lastymd string
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
208 for _, ss := range dbdata {
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
209 if ss.Hhsno == lasthhsno && lastymd == ss.Ymd {
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
210 continue
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
211 }
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
212 dbdata2 = append(dbdata2, ss)
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
213 lasthhsno = ss.Hhsno
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
214 lastymd = ss.Ymd
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
215 }
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
216
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
217 var lastdata []Sinsei
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
218 prevhash := make(map[string]PrevSinsei)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
219 hhscnt := make(map[string]int)
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
220 for _, ss := range dbdata2 {
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
221 ss.Humanize()
42
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
222 switch hhscnt[ss.Hhsno] {
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
223 case 0:
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
224 lastdata = append(lastdata, ss)
42
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
225 case 1:
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
226 prevhash[ss.Hhsno] = PrevSinsei{
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
227 Biko: ss.Biko,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
228 DrId: ss.DrId,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
229 Dr: ss.Dr + "(" + ss.Hp + ":" + ss.Senmon + ")",
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
230 IraiYmd: ss.IraiYmd,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
231 Ymd: ss.Ymd,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
232 Kubun: ss.Kubun,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
233 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
234 }
43
77dd877929f5 bug fix.
pyon@macmini
parents: 42
diff changeset
235 hhscnt[ss.Hhsno]++;
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
236 }
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
237 print_debug_log(fmt.Sprintf("lastdata: n=%d", len(lastdata))) //
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
238
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
239 doctorhash := make(map[string]Doctor)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
240 hpcnt := make(map[string]int)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
241 var hpcntsum int
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
242 for _, ss := range lastdata {
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
243 ss.SetPrev(prevhash[ss.Hhsno])
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
244 if d, ok := doctorhash[ss.DrId]; !ok {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
245 doctorhash[ss.DrId] = Doctor{
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
246 Id: ss.DrId,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
247 Name: ss.Dr,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
248 Kana: ss.DrKana,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
249 Hp: ss.Hp,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
250 Senmon: ss.Senmon,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
251 Clients: []Sinsei{ss},
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
252 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
253 } else {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
254 d.AddClient(ss)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
255 doctorhash[ss.DrId] = d
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
256 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
257 hpcnt[ss.Hp]++
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
258 hpcntsum++
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
259 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
260
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
261 var doctors []Doctor
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
262 for _, dr := range doctorhash {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
263 doctors = append(doctors, dr)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
264 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
265 sort.Slice(doctors, func(i, j int) bool {
42
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
266 if doctors[i].Kana != doctors[j].Kana {
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
267 return doctors[i].Kana < doctors[j].Kana
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
268 }
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
269 if doctors[i].Id != doctors[j].Id {
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
270 return doctors[i].Id < doctors[j].Id
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
271 }
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
272 return false
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
273 })
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
274
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
275 irai := struct {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
276 Ymd string
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
277 NHhs int
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
278 //NSinsei int
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
279 NDr int
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
280 Doctors []Doctor
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
281 Hp map[string]int
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
282 HpSum int
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
283 }{
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
284 Ymd: strings.Join([]string{date[0:4], date[4:6], date[6:8]}, "."),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
285 NHhs: len(hhshash),
44
b50f2a581cf8 bug fix.
pyon@macmini
parents: 43
diff changeset
286 //NSinsei: len(dbdata),
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
287 NDr: len(doctors),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
288 Doctors: doctors,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
289 Hp: hpcnt,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
290 HpSum: hpcntsum,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
291 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
292
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
293 funcmap := template.FuncMap{
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
294 "shorten": shorten,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
295 "str2cp932": str2cp932,
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
296 "add1": func(a int) int { return a + 1 },
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
297 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
298
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
299 t, err := template.New("webpage").Funcs(funcmap).Parse(tpl)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
300 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
301 log.Fatal(err)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
302 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
303
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
304 err = t.Execute(os.Stdout, irai)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
305 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
306 log.Fatal(err)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
307 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
308 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
309
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
310 // Utility functions
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
311 func csv2sinsei(record []string) Sinsei {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
312 return Sinsei{
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
313 Hhsno: strings.TrimSpace(record[0]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
314 Name: strings.TrimSpace(record[1]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
315 Biko: strings.TrimSpace(record[2]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
316 DrId: strings.TrimSpace(record[3]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
317 Dr: strings.TrimSpace(record[4]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
318 DrKana: strings.TrimSpace(record[5]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
319 Hp: strings.TrimSpace(record[6]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
320 IraiYmd: strings.TrimSpace(record[7]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
321 Ymd: strings.TrimSpace(record[8]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
322 Kubun: strings.TrimSpace(record[9]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
323 Senmon: strings.TrimSpace(record[10]),
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
324 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
325 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
326
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
327 func getdata_fromCSV(file, date string) (sinsei []Sinsei, hhshash map[string]bool, err error) {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
328 hhshash = make(map[string]bool)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
329
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
330 data, err := ioutil.ReadFile(file)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
331 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
332 return sinsei, hhshash, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
333 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
334
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
335 r := csv.NewReader(strings.NewReader(string(data)))
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
336 records, err := r.ReadAll()
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
337 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
338 return sinsei, hhshash, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
339 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
340
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
341 for _, record := range records {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
342 ss := csv2sinsei(record)
42
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
343 if ss.IraiYmd == date {
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
344 hhshash[ss.Hhsno] = true
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
345 }
42
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
346 }
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
347
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
348 for _, record := range records {
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
349 ss := csv2sinsei(record)
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
350 if _, ok := hhshash[ss.Hhsno]; ok {
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
351 sinsei = append(sinsei, ss)
c58172a59534 bug fix.
pyon@macmini
parents: 41
diff changeset
352 }
41
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
353 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
354
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
355 return sinsei, hhshash, nil
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
356 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
357
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
358 func getdata_fromDB(file string, hhshash map[string]bool) (sinsei []Sinsei, err error) {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
359 f, err := os.Open(file)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
360 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
361 return sinsei, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
362 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
363 defer f.Close()
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
364
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
365 zr, err := gzip.NewReader(f)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
366 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
367 return sinsei, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
368 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
369
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
370 data, err := ioutil.ReadAll(zr)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
371 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
372 return sinsei, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
373 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
374
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
375 if err := zr.Close(); err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
376 return sinsei, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
377 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
378
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
379 r := csv.NewReader(strings.NewReader(string(data)))
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
380 records, err := r.ReadAll()
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
381 if err != nil {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
382 return sinsei, err
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
383 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
384
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
385 for _, record := range records {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
386 hno := strings.TrimSpace(record[0])
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
387 if _, ok := hhshash[hno]; ok {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
388 sinsei = append(sinsei, csv2sinsei(record))
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
389 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
390 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
391
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
392 return sinsei, nil
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
393 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
394
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
395 func shorten(msg string, length int) string {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
396 if len(msg) > length {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
397 msg = msg[0:length] + "..."
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
398 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
399 return msg
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
400 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
401
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
402 func str2cp932(s string) string {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
403 s, _, _ = transform.String(japanese.ShiftJIS.NewEncoder(), s)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
404 return s
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
405 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
406
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
407 func print_debug_log(msg string) {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
408 if debug_log {
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
409 fmt.Fprintf(os.Stderr, "%s\n", msg)
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
410 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
411 }
34a474fb83c3 add perori/porori/nk.
pyon@macmini
parents:
diff changeset
412