Record NG items
This commit is contained in:
parent
cca73fb840
commit
6d16d3b606
BIN
APIServer.exe
BIN
APIServer.exe
Binary file not shown.
@ -12,8 +12,9 @@ MySQL:
|
|||||||
Database: ewsv3_f716
|
Database: ewsv3_f716
|
||||||
User: apisvc
|
User: apisvc
|
||||||
Password: wcqte
|
Password: wcqte
|
||||||
OfflineTable: v_offline
|
IssuesTable: issues
|
||||||
IssueTable: v_issue
|
IssuesView: v_issues
|
||||||
|
OfflineView: v_offline
|
||||||
Remark:
|
Remark:
|
||||||
Columns_UutInfo: [usn,mac,ipaddr,status,message,first_ack,last_ack,last_change]
|
Columns_UutInfo: [usn,mac,ipaddr,status,message,first_ack,last_ack,last_change]
|
||||||
Columns_LocInfo: [mac,line,col,row,num,last_found]
|
Columns_LocInfo: [mac,line,col,row,num,last_found]
|
||||||
|
15
cnf/cnf.go
15
cnf/cnf.go
@ -15,11 +15,12 @@ type Settings struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type MySQL struct {
|
type MySQL struct {
|
||||||
Server string `yaml:"Server"`
|
Server string `yaml:"Server"`
|
||||||
Port string `yaml:"Port"`
|
Port string `yaml:"Port"`
|
||||||
Database string `yaml:"Database"`
|
Database string `yaml:"Database"`
|
||||||
User string `yaml:"User"`
|
User string `yaml:"User"`
|
||||||
Password string `yaml:"Password"`
|
Password string `yaml:"Password"`
|
||||||
IssueTable string `yaml:"IssueTable"`
|
IssuesTable string `yaml:"IssuesTable"`
|
||||||
OfflineTable string `yaml:"OfflineTable"`
|
IssuesView string `yaml:"IssuesView"`
|
||||||
|
OfflineView string `yaml:"OfflineView"`
|
||||||
}
|
}
|
||||||
|
37
ews/ews.go
37
ews/ews.go
@ -48,10 +48,11 @@ type ReportInfo struct {
|
|||||||
|
|
||||||
func (e *EWS) SetUutInfo(cfg cnf.Cfg, logger *log.Logger, host string, addr string, uri string, params map[string]string) map[string]string {
|
func (e *EWS) SetUutInfo(cfg cnf.Cfg, logger *log.Logger, host string, addr string, uri string, params map[string]string) map[string]string {
|
||||||
rst := map[string]string{"RESULT": ""}
|
rst := map[string]string{"RESULT": ""}
|
||||||
if params["USN"] == "" || params["MAC"] == "" {
|
//if params["USN"] == "" || params["MAC"] == "" {
|
||||||
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, "Missing Parameter USN/MAC.")
|
if params["USN"] == "" {
|
||||||
|
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, "Missing Parameter USN.")
|
||||||
rst["RESULT"] = "NG"
|
rst["RESULT"] = "NG"
|
||||||
rst["ErrMsg"] = "Missing Parameter USN/MAC."
|
rst["ErrMsg"] = "Missing Parameter USN."
|
||||||
return rst
|
return rst
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -78,6 +79,28 @@ func (e *EWS) SetUutInfo(cfg cnf.Cfg, logger *log.Logger, host string, addr stri
|
|||||||
return rst
|
return rst
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if params["STATUS"] == "NG" {
|
||||||
|
dmlIssue := fmt.Sprintf(`INSERT INTO %s
|
||||||
|
(usn,mac,ipaddr,relay,partno,mo,sku,item,status,message,last_change)
|
||||||
|
VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',NOW());`,
|
||||||
|
cfg.MySQL.IssuesTable,
|
||||||
|
params["USN"],
|
||||||
|
params["MAC"],
|
||||||
|
addr,
|
||||||
|
host,
|
||||||
|
params["PARTNO"],
|
||||||
|
params["MO"],
|
||||||
|
params["SKU"],
|
||||||
|
params["ITEM"],
|
||||||
|
params["STATUS"],
|
||||||
|
params["MESSAGE"],
|
||||||
|
)
|
||||||
|
_, err = dbo.Exec(dmlIssue)
|
||||||
|
if err != nil {
|
||||||
|
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, err.Error())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
rec := dbo.QueryRow(
|
rec := dbo.QueryRow(
|
||||||
fmt.Sprintf(`SELECT usn,mac,ipaddr,relay,item,status,message,partno,mo,sku,line,stage,first_ack,last_ack,last_change
|
fmt.Sprintf(`SELECT usn,mac,ipaddr,relay,item,status,message,partno,mo,sku,line,stage,first_ack,last_ack,last_change
|
||||||
FROM uutinfo
|
FROM uutinfo
|
||||||
@ -104,7 +127,9 @@ func (e *EWS) SetUutInfo(cfg cnf.Cfg, logger *log.Logger, host string, addr stri
|
|||||||
|
|
||||||
//如果在uutinfo表中未查找到此USN的记录, 则新增一条此USN的记录
|
//如果在uutinfo表中未查找到此USN的记录, 则新增一条此USN的记录
|
||||||
if err == sql.ErrNoRows {
|
if err == sql.ErrNoRows {
|
||||||
dmlInsert := fmt.Sprintf("INSERT INTO uutinfo (usn,mac,ipaddr,relay,item,status,message,partno,mo,sku,line,stage,first_ack,last_ack,last_change) VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s);",
|
dmlInsert := fmt.Sprintf(`INSERT INTO uutinfo
|
||||||
|
(usn,mac,ipaddr,relay,item,status,message,partno,mo,sku,line,stage,first_ack,last_ack,last_change)
|
||||||
|
VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s);`,
|
||||||
params["USN"],
|
params["USN"],
|
||||||
params["MAC"],
|
params["MAC"],
|
||||||
addr,
|
addr,
|
||||||
@ -537,7 +562,7 @@ func (e *EWS) GetIssueReport(cfg cnf.Cfg, logger *log.Logger, host string, addr
|
|||||||
rows, err := dbo.Query(fmt.Sprintf(
|
rows, err := dbo.Query(fmt.Sprintf(
|
||||||
`SELECT usn,partno,mo,sku,line,location,item,status,message,first_ack,last_ack,last_change,diffmins
|
`SELECT usn,partno,mo,sku,line,location,item,status,message,first_ack,last_ack,last_change,diffmins
|
||||||
FROM %s
|
FROM %s
|
||||||
ORDER BY diffmins ASC;`, cfg.MySQL.IssueTable))
|
ORDER BY diffmins ASC;`, cfg.MySQL.IssuesView))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, err.Error())
|
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, err.Error())
|
||||||
rst["RESULT"] = "NG"
|
rst["RESULT"] = "NG"
|
||||||
@ -608,7 +633,7 @@ func (e *EWS) GetOfflineReport(cfg cnf.Cfg, logger *log.Logger, host string, add
|
|||||||
rows, err := dbo.Query(fmt.Sprintf(
|
rows, err := dbo.Query(fmt.Sprintf(
|
||||||
`SELECT usn,partno,mo,sku,line,location,item,status,message,first_ack,last_ack,last_change,diffmins
|
`SELECT usn,partno,mo,sku,line,location,item,status,message,first_ack,last_ack,last_change,diffmins
|
||||||
FROM %s
|
FROM %s
|
||||||
ORDER BY diffmins DESC;`, cfg.MySQL.OfflineTable))
|
ORDER BY diffmins DESC;`, cfg.MySQL.OfflineView))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, err.Error())
|
logger.Printf("[ERR] %s; %s; %#v; %s\r\n", addr, uri, params, err.Error())
|
||||||
rst["RESULT"] = "NG"
|
rst["RESULT"] = "NG"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user