mirror of https://github.com/shunfei/cronsun
修复修改任务分组的bug
parent
fc4b332d2b
commit
e494b261ce
19
web/job.go
19
web/job.go
|
@ -78,7 +78,11 @@ func (j *Job) ChangeJobStatus(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (j *Job) UpdateJob(w http.ResponseWriter, r *http.Request) {
|
func (j *Job) UpdateJob(w http.ResponseWriter, r *http.Request) {
|
||||||
job := &models.Job{}
|
var job = &struct {
|
||||||
|
*models.Job
|
||||||
|
OldGroup string `json:"oldGroup"`
|
||||||
|
}{}
|
||||||
|
|
||||||
decoder := json.NewDecoder(r.Body)
|
decoder := json.NewDecoder(r.Body)
|
||||||
err := decoder.Decode(&job)
|
err := decoder.Decode(&job)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -92,10 +96,16 @@ func (j *Job) UpdateJob(w http.ResponseWriter, r *http.Request) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var deleteOldKey string
|
||||||
var successCode = http.StatusOK
|
var successCode = http.StatusOK
|
||||||
if len(job.ID) == 0 {
|
if len(job.ID) == 0 {
|
||||||
successCode = http.StatusCreated
|
successCode = http.StatusCreated
|
||||||
job.ID = models.NextID()
|
job.ID = models.NextID()
|
||||||
|
} else {
|
||||||
|
job.OldGroup = strings.TrimSpace(job.OldGroup)
|
||||||
|
if job.OldGroup != job.Group {
|
||||||
|
deleteOldKey = models.JobKey(job.OldGroup, job.ID)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
b, err := json.Marshal(job)
|
b, err := json.Marshal(job)
|
||||||
|
@ -110,6 +120,13 @@ func (j *Job) UpdateJob(w http.ResponseWriter, r *http.Request) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// remove old key
|
||||||
|
if len(deleteOldKey) > 0 {
|
||||||
|
if _, err = models.DefalutClient.Delete(deleteOldKey); err != nil {
|
||||||
|
log.Errorf("failed to remove old job key[%s], err: %s.", deleteOldKey, err.Error())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
outJSONWithCode(w, successCode, nil)
|
outJSONWithCode(w, successCode, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,8 @@ export default {
|
||||||
job: {
|
job: {
|
||||||
id: '',
|
id: '',
|
||||||
name: '',
|
name: '',
|
||||||
group: 'default',
|
oldGroup: '',
|
||||||
|
group: '',
|
||||||
user: '',
|
user: '',
|
||||||
cmd: '',
|
cmd: '',
|
||||||
pause: false,
|
pause: false,
|
||||||
|
@ -121,6 +122,7 @@ export default {
|
||||||
this.$rest.GET('job/'+this.$route.params.group+'-'+this.$route.params.id).
|
this.$rest.GET('job/'+this.$route.params.group+'-'+this.$route.params.id).
|
||||||
onsucceed(200, (resp)=>{
|
onsucceed(200, (resp)=>{
|
||||||
vm.job = resp;
|
vm.job = resp;
|
||||||
|
vm.job.oldGroup = resp.group;
|
||||||
if (vm.job.rules) {
|
if (vm.job.rules) {
|
||||||
for (var i in vm.job.rules) {
|
for (var i in vm.job.rules) {
|
||||||
if (vm.job.rules[i].id.length == 0) {
|
if (vm.job.rules[i].id.length == 0) {
|
||||||
|
|
Loading…
Reference in New Issue