|
@@ -235,6 +235,7 @@ func (taskService *TaskService) ReleaseTask(releaseTaskCommand *command.ReleaseT |
|
@@ -235,6 +235,7 @@ func (taskService *TaskService) ReleaseTask(releaseTaskCommand *command.ReleaseT |
|
235
|
if err := releaseTaskCommand.ValidateCommand(); err != nil {
|
235
|
if err := releaseTaskCommand.ValidateCommand(); err != nil {
|
|
236
|
return nil, application.ThrowError(application.ARG_ERROR, err.Error())
|
236
|
return nil, application.ThrowError(application.ARG_ERROR, err.Error())
|
|
237
|
}
|
237
|
}
|
|
|
|
238
|
+
|
|
238
|
transactionContext, err := factory.CreateTransactionContext(nil)
|
239
|
transactionContext, err := factory.CreateTransactionContext(nil)
|
|
239
|
if err != nil {
|
240
|
if err != nil {
|
|
240
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
241
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
|
@@ -245,6 +246,7 @@ func (taskService *TaskService) ReleaseTask(releaseTaskCommand *command.ReleaseT |
|
@@ -245,6 +246,7 @@ func (taskService *TaskService) ReleaseTask(releaseTaskCommand *command.ReleaseT |
|
245
|
defer func() {
|
246
|
defer func() {
|
|
246
|
transactionContext.RollbackTransaction()
|
247
|
transactionContext.RollbackTransaction()
|
|
247
|
}()
|
248
|
}()
|
|
|
|
249
|
+
|
|
248
|
var releaseTaskService service.ReleaseTaskService
|
250
|
var releaseTaskService service.ReleaseTaskService
|
|
249
|
if value, err := factory.CreateReleaseTaskService(map[string]interface{}{
|
251
|
if value, err := factory.CreateReleaseTaskService(map[string]interface{}{
|
|
250
|
"transactionContext": transactionContext,
|
252
|
"transactionContext": transactionContext,
|
|
@@ -257,6 +259,7 @@ func (taskService *TaskService) ReleaseTask(releaseTaskCommand *command.ReleaseT |
|
@@ -257,6 +259,7 @@ func (taskService *TaskService) ReleaseTask(releaseTaskCommand *command.ReleaseT |
|
257
|
TransactionContext: transactionContext.(*pgTransaction.TransactionContext),
|
259
|
TransactionContext: transactionContext.(*pgTransaction.TransactionContext),
|
|
258
|
})
|
260
|
})
|
|
259
|
}
|
261
|
}
|
|
|
|
262
|
+
|
|
260
|
if task, err := releaseTaskService.Release(releaseTaskCommand.TaskId, releaseTaskCommand.Operator); err != nil {
|
263
|
if task, err := releaseTaskService.Release(releaseTaskCommand.TaskId, releaseTaskCommand.Operator); err != nil {
|
|
261
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
264
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
262
|
} else {
|
265
|
} else {
|
|
@@ -1084,6 +1087,20 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask |
|
@@ -1084,6 +1087,20 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask |
|
1084
|
taskDao = value
|
1087
|
taskDao = value
|
|
1085
|
}
|
1088
|
}
|
|
1086
|
|
1089
|
|
|
|
|
1090
|
+ var releaseTaskService service.ReleaseTaskService
|
|
|
|
1091
|
+ if value, err := factory.CreateReleaseTaskService(map[string]interface{}{
|
|
|
|
1092
|
+ "transactionContext": transactionContext,
|
|
|
|
1093
|
+ }); err != nil {
|
|
|
|
1094
|
+ return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
|
|
1095
|
+ } else {
|
|
|
|
1096
|
+ releaseTaskService = value
|
|
|
|
1097
|
+ releaseTaskService.Subscribe(&subscriber.AbilityServiceSubscriber{})
|
|
|
|
1098
|
+ releaseTaskService.Subscribe(&subscriber.MmmOpenApiServiceServiceSubscriber{
|
|
|
|
1099
|
+ TransactionContext: transactionContext.(*pgTransaction.TransactionContext),
|
|
|
|
1100
|
+ })
|
|
|
|
1101
|
+ }
|
|
|
|
1102
|
+
|
|
|
|
1103
|
+ // 找到当前任务
|
|
1087
|
task, err := taskRepository.FindOne(map[string]interface{}{"taskId": updateTaskCommand.TaskId})
|
1104
|
task, err := taskRepository.FindOne(map[string]interface{}{"taskId": updateTaskCommand.TaskId})
|
|
1088
|
if err != nil {
|
1105
|
if err != nil {
|
|
1089
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
1106
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
@@ -1143,6 +1160,7 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask |
|
@@ -1143,6 +1160,7 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask |
|
1143
|
updateData["assignedPerson"] = &domain.EmployeeInfo{}
|
1160
|
updateData["assignedPerson"] = &domain.EmployeeInfo{}
|
|
1144
|
}
|
1161
|
}
|
|
1145
|
}
|
1162
|
}
|
|
|
|
1163
|
+
|
|
1146
|
// TODO 任务返回错误类型
|
1164
|
// TODO 任务返回错误类型
|
|
1147
|
if err := task.Update(updateData); err != nil {
|
1165
|
if err := task.Update(updateData); err != nil {
|
|
1148
|
return nil, application.ThrowError(application.BUSINESS_ERROR, err.Error())
|
1166
|
return nil, application.ThrowError(application.BUSINESS_ERROR, err.Error())
|
|
@@ -1155,6 +1173,13 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask |
|
@@ -1155,6 +1173,13 @@ func (taskService *TaskService) UpdateTask(updateTaskCommand *command.UpdateTask |
|
1155
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
1173
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
1156
|
}
|
1174
|
}
|
|
1157
|
}
|
1175
|
}
|
|
|
|
1176
|
+
|
|
|
|
1177
|
+ if task.TaskType == domain.TASK_STATUS_EXPIRED {
|
|
|
|
1178
|
+ if _, err := releaseTaskService.Release(task.TaskId, task.Sponsor.Uid); err != nil {
|
|
|
|
1179
|
+ return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
|
|
1180
|
+ }
|
|
|
|
1181
|
+ }
|
|
|
|
1182
|
+
|
|
1158
|
if err := transactionContext.CommitTransaction(); err != nil {
|
1183
|
if err := transactionContext.CommitTransaction(); err != nil {
|
|
1159
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
1184
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
|
1160
|
}
|
1185
|
}
|