修复修改任务分组的bug

pull/1/head
Doflatango 2017-02-20 10:56:32 +08:00 committed by miraclesu
parent fc4b332d2b
commit e494b261ce
2 changed files with 21 additions and 2 deletions

View File

@ -78,7 +78,11 @@ func (j *Job) ChangeJobStatus(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)
err := decoder.Decode(&job)
if err != nil {
@ -92,10 +96,16 @@ func (j *Job) UpdateJob(w http.ResponseWriter, r *http.Request) {
return
}
var deleteOldKey string
var successCode = http.StatusOK
if len(job.ID) == 0 {
successCode = http.StatusCreated
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)
@ -110,6 +120,13 @@ func (j *Job) UpdateJob(w http.ResponseWriter, r *http.Request) {
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)
}

View File

@ -59,7 +59,8 @@ export default {
job: {
id: '',
name: '',
group: 'default',
oldGroup: '',
group: '',
user: '',
cmd: '',
pause: false,
@ -121,6 +122,7 @@ export default {
this.$rest.GET('job/'+this.$route.params.group+'-'+this.$route.params.id).
onsucceed(200, (resp)=>{
vm.job = resp;
vm.job.oldGroup = resp.group;
if (vm.job.rules) {
for (var i in vm.job.rules) {
if (vm.job.rules[i].id.length == 0) {