作者 linmadan

修复申请完成任务bug

@@ -45,13 +45,21 @@ func (service *ApplyCompleteTaskService) ApplyComplete(taskId int64, receiverUid @@ -45,13 +45,21 @@ func (service *ApplyCompleteTaskService) ApplyComplete(taskId int64, receiverUid
45 return nil, fmt.Errorf("无效的任务") 45 return nil, fmt.Errorf("无效的任务")
46 } 46 }
47 if task.TaskType == domain.TASK_TYPE_ROB { 47 if task.TaskType == domain.TASK_TYPE_ROB {
48 - if receiver.EmployeeInfo.Uid != task.RobInfo.Receiver.Uid {  
49 - return nil, fmt.Errorf("无法申请完成别人领取的任务") 48 + if task.RobInfo.Receiver != nil {
  49 + if receiver.EmployeeInfo.Uid != task.RobInfo.Receiver.Uid {
  50 + return nil, fmt.Errorf("无法申请完成别人领取的任务")
  51 + }
  52 + } else {
  53 + return nil, fmt.Errorf("无法申请完成任务,任务可能已经被驳回")
50 } 54 }
51 } 55 }
52 if task.TaskType == domain.TASK_TYPE_BID { 56 if task.TaskType == domain.TASK_TYPE_BID {
53 - if receiver.EmployeeInfo.Uid != task.BidInfo.SuccessfulBidder.Uid {  
54 - return nil, fmt.Errorf("无法申请完成别人领取的任务") 57 + if task.BidInfo.SuccessfulBidder != nil {
  58 + if receiver.EmployeeInfo.Uid != task.BidInfo.SuccessfulBidder.Uid {
  59 + return nil, fmt.Errorf("无法申请完成别人领取的任务")
  60 + }
  61 + } else {
  62 + return nil, fmt.Errorf("无法申请完成任务,任务可能已经被驳回")
55 } 63 }
56 } 64 }
57 if err := task.ApplyComplete(); err != nil { 65 if err := task.ApplyComplete(); err != nil {