Andrea Fazzi 5 lat temu
rodzic
commit
51c9a36a4e
3 zmienionych plików z 59 dodań i 0 usunięć
  1. 19 0
      orm/job.go
  2. 5 0
      orm/mappings.go
  3. 35 0
      templates/jobs.html.tpl

+ 19 - 0
orm/job.go

@@ -45,6 +45,14 @@ func GetFile(args map[string]string) (interface{}, error) {
 	}, nil
 }
 
+func GetJobs(args map[string]string) (interface{}, error) {
+	var jobs []*Job
+	if err := DB().Debug().Order("start DESC").Find(&jobs).Error; err != nil {
+		return nil, err
+	}
+	return jobs, nil
+}
+
 func GetJob(args map[string]string) (interface{}, error) {
 	var job Job
 	if err := DB().Preload("Document").Preload("Files").First(&job, args["id"]).Error; err != nil {
@@ -81,3 +89,14 @@ func SaveJob(job interface{}) (interface{}, error) {
 	}
 	return job, nil
 }
+
+func DeleteJob(args map[string]string, r *http.Request) (IDer, error) {
+	job, err := GetJob(args)
+	if err != nil {
+		return nil, err
+	}
+	if err := DB().Unscoped().Delete(job.(*Job)).Error; err != nil {
+		return nil, err
+	}
+	return job.(*Job), nil
+}

+ 5 - 0
orm/mappings.go

@@ -104,6 +104,7 @@ var (
 
 		// Jobs
 
+		"/jobs":                       GetJobs,
 		"/jobs/{id}":                  GetJob,
 		"/jobs/{id}/files/{filename}": GetFile,
 
@@ -196,6 +197,10 @@ var (
 		"/api/documents/add/":        AddDocument,
 
 		// Jobs
+
+		"/jobs/{id}/delete": DeleteJob,
+
 		"/api/jobs/{id}/update": UpdateJob,
+		"/api/jobs/{id}/delete": DeleteJob,
 	}
 )

+ 35 - 0
templates/jobs.html.tpl

@@ -0,0 +1,35 @@
+{{ define "content" }}
+
+<div class="container">
+  
+  <div class="karmen-info-header">
+    <div class="row">
+      <div class="col-md-12">
+	<h1>Lavori ({{len .Data}})</h1>
+      </div>
+    </div>
+  </div>
+
+  <div class="input-group" style="margin-bottom: 20px">
+    <span class="input-group-addon" id="search-query"><span class="glyphicon glyphicon-search"></span></span>
+    <input type="text" id="myInput" class="form-control" aria-describedby="search-query">
+  </div>
+  
+  {{if not .Data}}
+  <p>Non c'è alcun elemento da visualizzare</p>
+  {{else}}
+  <div class="list-group" id="myUL">
+    {{range $job := .Data}}
+    <a class="list-group-item list-group-item-action" href="/jobs/{{$job.ID}}?{{query "tpl_layout" "base" "tpl_content" "jobs_show"}}">
+      <span class="fa fa-file"></span>
+      Lavoro ID {{$job.ID}} relativo al document {{.Document.Name}}
+      <div class="text-right">
+	<small>optional tag goes here</small>
+      </div>
+    </a>
+    {{end}}
+  </div>
+  {{end}}
+</div>
+  
+{{ end }}