...
|
...
|
@@ -3,6 +3,7 @@ package service |
|
|
import (
|
|
|
"github.com/linmadan/egglib-go/core/application"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/factory"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/domain"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/utils"
|
|
|
"time"
|
|
|
)
|
...
|
...
|
@@ -25,6 +26,8 @@ func (rs *NodeTaskService) SendEvaluationNode() error { |
|
|
transactionContext.RollbackTransaction()
|
|
|
}()
|
|
|
taskRepository := factory.CreateNodeTaskRepository(map[string]interface{}{"transactionContext": transactionContext})
|
|
|
projectRepository := factory.CreateEvaluationProjectRepository(map[string]interface{}{"transactionContext": transactionContext})
|
|
|
//cycleRepository := factory.CreateEvaluationCycleRepository(map[string]interface{}{"transactionContext": transactionContext})
|
|
|
|
|
|
tasks, err := taskRepository.Find(map[string]interface{}{"now": time.Now().Local()})
|
|
|
if err != nil {
|
...
|
...
|
@@ -33,17 +36,53 @@ func (rs *NodeTaskService) SendEvaluationNode() error { |
|
|
|
|
|
//ttaffAssessRepository := factory.CreateStaffAssessTaskRepository(map[string]interface{}{"transactionContext": transactionContext})
|
|
|
//
|
|
|
//for i := range tasks {
|
|
|
//
|
|
|
// staffAssessService := service.NewStaffAssessServeice()
|
|
|
// //staffAssessService.CreateStaffAssessTask()
|
|
|
//
|
|
|
// //task := tasks[i]
|
|
|
//
|
|
|
|
|
|
projectIdsMap := map[int64]*domain.EvaluationProject{}
|
|
|
cycleIdsMap := map[int64]*domain.EvaluationCycle{}
|
|
|
for i := range tasks {
|
|
|
task := tasks[i]
|
|
|
projectIdsMap[task.ProjectId] = nil
|
|
|
cycleIdsMap[task.CycleId] = nil
|
|
|
}
|
|
|
projectIds := make([]int64, 0)
|
|
|
cycleIds := make([]int64, 0)
|
|
|
for k := range projectIdsMap {
|
|
|
projectIds = append(projectIds, k)
|
|
|
}
|
|
|
for k := range cycleIdsMap {
|
|
|
cycleIds = append(cycleIds, k)
|
|
|
}
|
|
|
|
|
|
_, projects, err := projectRepository.Find(map[string]interface{}{"ids": projectIds})
|
|
|
if err != nil {
|
|
|
return application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
|
}
|
|
|
//_, cycles, err := cycleRepository.Find(map[string]interface{}{"ids": cycleIds})
|
|
|
//if err != nil {
|
|
|
// return application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
|
//}
|
|
|
|
|
|
for i := range projects {
|
|
|
projectIdsMap[projects[i].Id] = projects[i]
|
|
|
}
|
|
|
|
|
|
//staffAssessService := service.NewStaffAssessServeice()
|
|
|
|
|
|
for i := range tasks {
|
|
|
task := tasks[i]
|
|
|
|
|
|
//if project, ok := projectIdsMap[task.ProjectId]; ok {
|
|
|
|
|
|
//csat := &command.CreateStaffAssessTask{
|
|
|
// CompanyId: project.CompanyId,
|
|
|
// EvaluationProjectId: project.Id,
|
|
|
// EvaluationProjectName: project.Name,
|
|
|
// CycleId: project.CycleId,
|
|
|
//}
|
|
|
//
|
|
|
//staffAssessService.CreateStaffAssessTask(csat)
|
|
|
//}
|
|
|
|
|
|
// 下一次发送时间
|
|
|
nextTime := utils.NextTimeInc(task.NextSentAt, task.KpiCycle)
|
|
|
task.NextSentAt = &nextTime
|
...
|
...
|
|