作者 陈志颖

fix:已过期任务时间判断

@@ -652,3 +652,4 @@ @@ -652,3 +652,4 @@
652 2020/11/23 17:18:21.768 [D] [server.go:1925] | 127.0.0.1| 200 | 86.366848ms| match| GET  /cash-pool/activity/ r:/cash-pool/activity/ 652 2020/11/23 17:18:21.768 [D] [server.go:1925] | 127.0.0.1| 200 | 86.366848ms| match| GET  /cash-pool/activity/ r:/cash-pool/activity/
653 2020/11/23 17:40:41.529 [I] [???:0] http server Running on http://:8082 653 2020/11/23 17:40:41.529 [I] [???:0] http server Running on http://:8082
654 2020/11/23 17:43:38.430 [I] [???:0] http server Running on http://:8082 654 2020/11/23 17:43:38.430 [I] [???:0] http server Running on http://:8082
  655 +2020/11/23 19:14:57.842 [I] [???:0] http server Running on http://:8082
@@ -1058,6 +1058,7 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1058,6 +1058,7 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1058 if err := updateTaskCommand.ValidateCommand(); err != nil { 1058 if err := updateTaskCommand.ValidateCommand(); err != nil {
1059 return nil, application.ThrowError(application.ARG_ERROR, err.Error()) 1059 return nil, application.ThrowError(application.ARG_ERROR, err.Error())
1060 } 1060 }
  1061 +
1061 transactionContext, err := factory.CreateTransactionContext(nil) 1062 transactionContext, err := factory.CreateTransactionContext(nil)
1062 if err != nil { 1063 if err != nil {
1063 return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) 1064 return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
@@ -1109,6 +1110,8 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1109,6 +1110,8 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1109 return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", string(updateTaskCommand.TaskId))) 1110 return nil, application.ThrowError(application.RES_NO_FIND_ERROR, fmt.Sprintf("%s", string(updateTaskCommand.TaskId)))
1110 } 1111 }
1111 1112
  1113 + taskBidEndTime := task.BidInfo.BidEndTime
  1114 +
1112 if updateTaskCommand.ReferenceResourceItems != nil && len(updateTaskCommand.ReferenceResourceItems) > 0 { 1115 if updateTaskCommand.ReferenceResourceItems != nil && len(updateTaskCommand.ReferenceResourceItems) > 0 {
1113 var referenceResourceIds []int64 1116 var referenceResourceIds []int64
1114 for _, referenceResourceItem := range updateTaskCommand.ReferenceResourceItems { 1117 for _, referenceResourceItem := range updateTaskCommand.ReferenceResourceItems {
@@ -1161,7 +1164,6 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1161,7 +1164,6 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1161 } 1164 }
1162 } 1165 }
1163 1166
1164 - // TODO 任务返回错误类型  
1165 if err := task.Update(updateData); err != nil { 1167 if err := task.Update(updateData); err != nil {
1166 return nil, application.ThrowError(application.BUSINESS_ERROR, err.Error()) 1168 return nil, application.ThrowError(application.BUSINESS_ERROR, err.Error())
1167 } 1169 }
@@ -1175,10 +1177,14 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask @@ -1175,10 +1177,14 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask
1175 } 1177 }
1176 1178
1177 if task.TaskStatus == domain.TASK_STATUS_EXPIRED { 1179 if task.TaskStatus == domain.TASK_STATUS_EXPIRED {
  1180 + if task.BidInfo.BidEndTime.Local().Equal(taskBidEndTime.Local()) {
  1181 + return nil, application.ThrowError(application.BUSINESS_ERROR, "请重新修改竞标时间")
  1182 + } else {
1178 if _, err := releaseTaskService.Release(task.TaskId, task.Sponsor.Uid); err != nil { 1183 if _, err := releaseTaskService.Release(task.TaskId, task.Sponsor.Uid); err != nil {
1179 return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error()) 1184 return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
1180 } 1185 }
1181 } 1186 }
  1187 + }
1182 1188
1183 if err := transactionContext.CommitTransaction(); err != nil { 1189 if err := transactionContext.CommitTransaction(); err != nil {
1184 return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) 1190 return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
@@ -712,47 +712,39 @@ func (status ExpiredStatus) Release(task *Task) error { @@ -712,47 +712,39 @@ func (status ExpiredStatus) Release(task *Task) error {
712 task.ReleaseTime = currentTime 712 task.ReleaseTime = currentTime
713 task.TaskStatus = TASK_STATUS_UNCLAIMED 713 task.TaskStatus = TASK_STATUS_UNCLAIMED
714 task.CurrentStatus = &UnClaimedStatus{} 714 task.CurrentStatus = &UnClaimedStatus{}
715 - //if task.TaskType == TASK_TYPE_BID {  
716 - // task.ReceiveTime = currentTime  
717 - // task.TaskStatus = TASK_STATUS_UNDERWAY  
718 - // task.CurrentStatus = &UnderwayStatus{}  
719 - //} else {  
720 - // task.TaskStatus = TASK_STATUS_UNCLAIMED  
721 - // task.CurrentStatus = &UnClaimedStatus{}  
722 - //}  
723 return nil 715 return nil
724 } 716 }
725 717
726 func (status ExpiredStatus) Rob(task *Task, receiver *EmployeeInfo) error { 718 func (status ExpiredStatus) Rob(task *Task, receiver *EmployeeInfo) error {
727 - panic("implement me") 719 + return fmt.Errorf("已过期的任务不允许抢单")
728 } 720 }
729 721
730 func (status ExpiredStatus) Bib(task *Task, bidder *EmployeeInfo) error { 722 func (status ExpiredStatus) Bib(task *Task, bidder *EmployeeInfo) error {
731 - panic("implement me") 723 + return fmt.Errorf("已过期的任务不允许竞标")
732 } 724 }
733 725
734 func (status ExpiredStatus) ChooseSuccessfulBidder(task *Task, successfulBidder *EmployeeInfo, plannedCompletionTime time.Time) error { 726 func (status ExpiredStatus) ChooseSuccessfulBidder(task *Task, successfulBidder *EmployeeInfo, plannedCompletionTime time.Time) error {
735 - panic("implement me") 727 + return fmt.Errorf("已过期的任务不允许选择竞标任务的中标人")
736 } 728 }
737 729
738 func (status ExpiredStatus) ApplyComplete(task *Task) error { 730 func (status ExpiredStatus) ApplyComplete(task *Task) error {
739 - panic("implement me") 731 + return fmt.Errorf("已过期的任务不允许申请完成任务")
740 } 732 }
741 733
742 func (status ExpiredStatus) Off(task *Task) error { 734 func (status ExpiredStatus) Off(task *Task) error {
743 - panic("implement me") 735 + return fmt.Errorf("已过期的任务不允许关闭")
744 } 736 }
745 737
746 func (status ExpiredStatus) Acceptance(task *Task, participators []*EmployeeInfo, suMoney float64, taskPercentage []*TaskPercentageItem, referenceResourceScore []*ReferenceResourceItem, solveReport string, solvePictureUrls []string, actualCompletionTime time.Time) error { 738 func (status ExpiredStatus) Acceptance(task *Task, participators []*EmployeeInfo, suMoney float64, taskPercentage []*TaskPercentageItem, referenceResourceScore []*ReferenceResourceItem, solveReport string, solvePictureUrls []string, actualCompletionTime time.Time) error {
747 - panic("implement me") 739 + return fmt.Errorf("已过期的任务不允许验收")
748 } 740 }
749 741
750 func (status ExpiredStatus) ConfirmTask(task *Task, plannedCompletionTime time.Time) error { 742 func (status ExpiredStatus) ConfirmTask(task *Task, plannedCompletionTime time.Time) error {
751 - panic("implement me") 743 + return fmt.Errorf("已过期的任务不允许确认任务领取人")
752 } 744 }
753 745
754 func (status ExpiredStatus) RejectReceiver(task *Task) error { 746 func (status ExpiredStatus) RejectReceiver(task *Task) error {
755 - panic("implement me") 747 + return fmt.Errorf("已过期的任务不允许驳回任务领取人")
756 } 748 }
757 749
758 type TaskRepository interface { 750 type TaskRepository interface {