作者 陈志颖

fix:任务更新报错

@@ -1101,6 +1101,7 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1101,6 +1101,7 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1101 }) 1101 })
1102 } 1102 }
1103 1103
  1104 + var taskBidEndTime time.Time
1104 // 找到当前任务 1105 // 找到当前任务
1105 task, err := taskRepository.FindOne(map[string]interface{}{"taskId": updateTaskCommand.TaskId}) 1106 task, err := taskRepository.FindOne(map[string]interface{}{"taskId": updateTaskCommand.TaskId})
1106 if err != nil { 1107 if err != nil {
@@ -1108,10 +1109,12 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1108,10 +1109,12 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1108 } 1109 }
1109 if task == nil { 1110 if task == nil {
1110 return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", string(updateTaskCommand.TaskId))) 1111 return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", string(updateTaskCommand.TaskId)))
  1112 + } else {
  1113 + if task.TaskStatus == domain.TASK_STATUS_EXPIRED {
  1114 + taskBidEndTime = task.BidInfo.BidEndTime
  1115 + }
1111 } 1116 }
1112 1117
1113 - taskBidEndTime := task.BidInfo.BidEndTime  
1114 -  
1115 if updateTaskCommand.ReferenceResourceItems != nil && len(updateTaskCommand.ReferenceResourceItems) > 0 { 1118 if updateTaskCommand.ReferenceResourceItems != nil && len(updateTaskCommand.ReferenceResourceItems) > 0 {
1116 var referenceResourceIds []int64 1119 var referenceResourceIds []int64
1117 for _, referenceResourceItem := range updateTaskCommand.ReferenceResourceItems { 1120 for _, referenceResourceItem := range updateTaskCommand.ReferenceResourceItems {
@@ -1177,7 +1180,8 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1177,7 +1180,8 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1177 } 1180 }
1178 1181
1179 if task.TaskStatus == domain.TASK_STATUS_EXPIRED { 1182 if task.TaskStatus == domain.TASK_STATUS_EXPIRED {
1180 - if task.BidInfo.BidEndTime.Local().Equal(taskBidEndTime.Local()) { 1183 + // 未修改时间或者修改的时间小于当前时间
  1184 + if task.BidInfo.BidEndTime.Local().Equal(taskBidEndTime.Local()) || task.BidInfo.BidEndTime.Local().Before(time.Now().Local()) {
1181 return nil, application.ThrowError(application.BUSINESS_ERROR, "请重新修改竞标时间") 1185 return nil, application.ThrowError(application.BUSINESS_ERROR, "请重新修改竞标时间")
1182 } else { 1186 } else {
1183 if _, err := releaseTaskService.Release(task.TaskId, task.Sponsor.Uid); err != nil { 1187 if _, err := releaseTaskService.Release(task.TaskId, task.Sponsor.Uid); err != nil {