From a39b212a7bcbab336c12f69a09d79f03758e2eae Mon Sep 17 00:00:00 2001 From: shoopea Date: Tue, 11 Jun 2019 09:59:20 +0800 Subject: [PATCH] test --- def.go | 4 ++-- job.go | 46 ++++++++++++++++++++++++++++++++++++++++++++++ sql.go | 2 ++ workers.go | 5 +++++ 4 files changed, 55 insertions(+), 2 deletions(-) diff --git a/def.go b/def.go index c578589..d7abf98 100644 --- a/def.go +++ b/def.go @@ -347,8 +347,8 @@ const ( objSubTypeJobSetJobDone = 607 objSubTypeJobMsgClient = 608 objSubTypeJobMsgRefresh = 609 - objSubTypeJobExportBackup = 610 - objSubTypeJobImportBackup = 611 + objSubTypeJobBackupExport = 610 + objSubTypeJobBackupImport = 611 objSubTypeItemResource = 701 objSubTypeItemAlch = 702 objSubTypeItemMisc = 703 diff --git a/job.go b/job.go index 3b98dcb..fda4afd 100644 --- a/job.go +++ b/job.go @@ -412,3 +412,49 @@ func jobMsgClient(j Job) { logOnError(err, "joMsgClient : setJobDone") return } + +func jobBackupExport(j Job) { + var p JobPayloadBackupExport + err := setJobStart(j.ID64) + logOnError(err, "jobBackupExport : setJobStart") + + err = json.Unmarshal(j.Payload, &p) + logOnError(err, "jobBackupExport : Unmarshal payload") + + if err == nil { + m := TGCommand{ + Type: commandReplyMsg, + Text: "Backup exported.", + FromMsgID64: p.MsgID64, + FromChatID64: p.ChatID64, + } + TGCmdQueue <- m + } + + err = setJobDone(j.ID64) + logOnError(err, "jobBackupExport : setJobDone") + return +} + +func jobBackupImport(j Job) { + var p JobPayloadBackupImport + err := setJobStart(j.ID64) + logOnError(err, "jobBackupImport : setJobStart") + + err = json.Unmarshal(j.Payload, &p) + logOnError(err, "jobBackupImport : Unmarshal payload") + + if err == nil { + m := TGCommand{ + Type: commandReplyMsg, + Text: "Backup imported.", + FromMsgID64: p.MsgID64, + FromChatID64: p.ChatID64, + } + TGCmdQueue <- m + } + + err = setJobDone(j.ID64) + logOnError(err, "jobBackupImport : setJobDone") + return +} diff --git a/sql.go b/sql.go index df6abb9..a01b058 100644 --- a/sql.go +++ b/sql.go @@ -424,6 +424,8 @@ func initDB() { ,(` + strconv.Itoa(objSubTypeJobSetJobDone) + `, "job_set_done", "Set job as done job", ` + strconv.Itoa(objTypeJob) + `) ,(` + strconv.Itoa(objSubTypeJobMsgClient) + `, "job_msg_client", "Send message via client", ` + strconv.Itoa(objTypeJob) + `) ,(` + strconv.Itoa(objSubTypeJobMsgRefresh) + `, "job_msg_refresh", "Refresh message from client", ` + strconv.Itoa(objTypeJob) + `) + ,(` + strconv.Itoa(objSubTypeJobBackupExport) + `, "job_backup_export", "Export Backup", ` + strconv.Itoa(objTypeJob) + `) + ,(` + strconv.Itoa(objSubTypeJobBackupImport) + `, "job_backup_import", "Import Backup", ` + strconv.Itoa(objTypeJob) + `) ,(` + strconv.Itoa(objSubTypeItemResource) + `, "item_res", "Time", ` + strconv.Itoa(objTypeItem) + `) ,(` + strconv.Itoa(objSubTypeItemAlch) + `, "item_alch", "Time", ` + strconv.Itoa(objTypeItem) + `) ,(` + strconv.Itoa(objSubTypeItemMisc) + `, "item_misc", "Time", ` + strconv.Itoa(objTypeItem) + `) diff --git a/workers.go b/workers.go index 131f796..2a96fe7 100644 --- a/workers.go +++ b/workers.go @@ -237,6 +237,11 @@ func JobWorker(id int, jobs <-chan Job) { jobMsgClient(j) case objSubTypeJobMsgRefresh: jobMsgRefresh(j) + case objSubTypeJobBackupExport: + jobBackupExport(j) + case objSubTypeJobBackupImport: + jobBackupImport(j) + default: log.Printf("jobWorker["+strconv.Itoa(id)+"] : No handler for job type #%d.\n", j.JobTypeID) }