feat: adding regress command

This commit is contained in:
2026-04-03 11:42:31 +02:00
parent 5325c18c4e
commit 10aabc8c0a
2 changed files with 31 additions and 0 deletions

18
commands/regress_task.go Normal file
View File

@@ -0,0 +1,18 @@
package commands
import (
"fmt"
"gotask-cli/models"
"time"
)
func RegressTask(id uint, backlog []models.Task) []models.Task {
if backlog[id].Status >= 1 && backlog[id].Status <= 2 {
backlog[id].Status--
backlog[id].Updated = time.Now().Unix()
fmt.Printf("[%s] task \"%s\" regress to [%s]", models.StatusName[backlog[id].Status+1], backlog[id].Description, models.StatusName[backlog[id].Status])
} else {
fmt.Printf("Can't regress task %s", backlog[id].Description)
}
return backlog
}

View File

@@ -39,6 +39,19 @@ func main() {
fmt.Println("Missing argument")
commands.Help()
}
case "regress":
if len(os.Args[1:]) == 2 {
id, err := strconv.ParseUint(os.Args[2], 10, 32)
utils.Check(err)
if id > 0 && id <= uint64(len(backlog)) {
commands.RegressTask(uint(id)-1, backlog)
} else {
fmt.Printf("No task found with id=%d, try list to get id", id)
}
} else {
fmt.Println("Missing argument")
commands.Help()
}
default:
fmt.Println("NO !")
}