diff --git a/APIServer.exe b/APIServer.exe index 20310e7..6ffa556 100644 Binary files a/APIServer.exe and b/APIServer.exe differ diff --git a/APIServer.go b/APIServer.go index 835c380..038d7ce 100644 --- a/APIServer.go +++ b/APIServer.go @@ -434,8 +434,8 @@ func handleGetUutInfo(w http.ResponseWriter, r *http.Request) { switch params["ACTION"] { case "QueryByFilter": rst = ews.GetUutInfo(cfg, logger, host, addr, uri, params) - case "GetDefectReport": - rst = ews.GetDefectReport(cfg, logger, host, addr, uri, params) + case "GetIssueReport": + rst = ews.GetIssueReport(cfg, logger, host, addr, uri, params) case "GetOfflineReport": rst = ews.GetOfflineReport(cfg, logger, host, addr, uri, params) default: diff --git a/APIServer.yml b/APIServer.yml index 2948321..683d42d 100644 --- a/APIServer.yml +++ b/APIServer.yml @@ -12,8 +12,10 @@ MySQL: Database: ewsv3_f716 User: apisvc Password: wcqte + OfflineTable: v_offline + IssueTable: v_issue Remark: - Columns_UutInfo: [usn,mac,ipaddr,status,message,first_ack,last_ack,last_change,last_transfer] + Columns_UutInfo: [usn,mac,ipaddr,status,message,first_ack,last_ack,last_change] Columns_LocInfo: [mac,line,col,row,num,last_found] USER_RO: ewsv3:ewsv3 USER_RW: apisvc:wcqte diff --git a/Index.html b/Index.html index 1e3c418..aad73cb 100644 --- a/Index.html +++ b/Index.html @@ -29,7 +29,7 @@ @@ -37,9 +37,9 @@ diff --git a/cnf/cnf.go b/cnf/cnf.go index 0d174aa..fa909c9 100644 --- a/cnf/cnf.go +++ b/cnf/cnf.go @@ -15,9 +15,11 @@ type Settings struct { } type MySQL struct { - Server string `yaml:"Server"` - Port string `yaml:"Port"` - Database string `yaml:"Database"` - User string `yaml:"User"` - Password string `yaml:"Password"` + Server string `yaml:"Server"` + Port string `yaml:"Port"` + Database string `yaml:"Database"` + User string `yaml:"User"` + Password string `yaml:"Password"` + IssueTable string `yaml:"IssueTable"` + OfflineTable string `yaml:"OfflineTable"` } diff --git a/ews/ews.go b/ews/ews.go index 2880202..258b8cf 100644 --- a/ews/ews.go +++ b/ews/ews.go @@ -30,7 +30,7 @@ type UutInfo struct { LastChg string } -type DefectInfo struct { +type ReportInfo struct { USN string PartNO string MfgMO string @@ -506,7 +506,7 @@ func (e *EWS) GetUutInfo(cfg cnf.Cfg, logger *log.Logger, host string, addr stri return rst } -func (e *EWS) GetDefectReport(cfg cnf.Cfg, logger *log.Logger, host string, addr string, uri string, params map[string]string) map[string]string { +func (e *EWS) GetIssueReport(cfg cnf.Cfg, logger *log.Logger, host string, addr string, uri string, params map[string]string) map[string]string { rst := map[string]string{"RESULT": ""} dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s", @@ -532,12 +532,12 @@ func (e *EWS) GetDefectReport(cfg cnf.Cfg, logger *log.Logger, host string, addr return rst } - di := new(DefectInfo) + ri := new(ReportInfo) defect := "" - rows, err := dbo.Query( + rows, err := dbo.Query(fmt.Sprintf( `SELECT usn,partno,mo,sku,line,location,item,status,message,first_ack,last_ack,last_change,diffmins - FROM v_ngreport - ORDER BY diffmins ASC;`) + FROM %s + ORDER BY diffmins ASC;`, cfg.MySQL.IssueTable)) if err != nil { logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, err.Error()) rst["RESULT"] = "NG" @@ -549,25 +549,25 @@ func (e *EWS) GetDefectReport(cfg cnf.Cfg, logger *log.Logger, host string, addr num := 1 for rows.Next() { err := rows.Scan( - &di.USN, - &di.PartNO, - &di.MfgMO, - &di.SKU, - &di.Line, - &di.Location, - &di.Item, - &di.Status, - &di.Message, - &di.FirstAck, - &di.LastAck, - &di.LastChg, - &di.DiffMins, + &ri.USN, + &ri.PartNO, + &ri.MfgMO, + &ri.SKU, + &ri.Line, + &ri.Location, + &ri.Item, + &ri.Status, + &ri.Message, + &ri.FirstAck, + &ri.LastAck, + &ri.LastChg, + &ri.DiffMins, ) if err != nil { break } temp := fmt.Sprintf(`