正在显示
6 个修改的文件
包含
74 行增加
和
14 行删除
@@ -27,6 +27,12 @@ func dayEndTime(t time.Time) time.Time { | @@ -27,6 +27,12 @@ func dayEndTime(t time.Time) time.Time { | ||
27 | return t2 | 27 | return t2 |
28 | } | 28 | } |
29 | 29 | ||
30 | +func dayZeroTime(t time.Time) time.Time { | ||
31 | + y, m, d := t.Local().Date() | ||
32 | + t2 := time.Date(y, m, d, 0, 0, 0, 0, time.Local) | ||
33 | + return t2 | ||
34 | +} | ||
35 | + | ||
30 | func (srv TaskService) CreateTaskTest(param *command.CreateTaskCommand) error { | 36 | func (srv TaskService) CreateTaskTest(param *command.CreateTaskCommand) error { |
31 | transactionContext, err := factory.CreateTransactionContext(nil) | 37 | transactionContext, err := factory.CreateTransactionContext(nil) |
32 | if err != nil { | 38 | if err != nil { |
@@ -108,7 +114,7 @@ func (srv TaskService) CreateTask(transactionContext application.TransactionCont | @@ -108,7 +114,7 @@ func (srv TaskService) CreateTask(transactionContext application.TransactionCont | ||
108 | return application.ThrowError(application.INTERNAL_SERVER_ERROR, "创建任务失败:"+err.Error()) | 114 | return application.ThrowError(application.INTERNAL_SERVER_ERROR, "创建任务失败:"+err.Error()) |
109 | } | 115 | } |
110 | 116 | ||
111 | - nowEndTime := dayEndTime(nowTime) | 117 | + nowEndTime := dayZeroTime(nowTime) |
112 | 118 | ||
113 | newTaskStage := []*domain.TaskStage{ | 119 | newTaskStage := []*domain.TaskStage{ |
114 | { | 120 | { |
@@ -590,7 +596,7 @@ func (t TaskService) CancelAttention(param *command.CancelAttentionCommand) erro | @@ -590,7 +596,7 @@ func (t TaskService) CancelAttention(param *command.CancelAttentionCommand) erro | ||
590 | } | 596 | } |
591 | 597 | ||
592 | // 员工绩效-任务管理-列表 | 598 | // 员工绩效-任务管理-列表 |
593 | -func (t TaskService) ListTask2(param command.SearchTaskCommand) (map[string]interface{}, error) { | 599 | +func (t TaskService) ListTask2(param *command.SearchTaskCommand) (map[string]interface{}, error) { |
594 | transactionContext, err := factory.CreateTransactionContext(nil) | 600 | transactionContext, err := factory.CreateTransactionContext(nil) |
595 | if err != nil { | 601 | if err != nil { |
596 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) | 602 | return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error()) |
@@ -606,7 +612,7 @@ func (t TaskService) ListTask2(param command.SearchTaskCommand) (map[string]inte | @@ -606,7 +612,7 @@ func (t TaskService) ListTask2(param command.SearchTaskCommand) (map[string]inte | ||
606 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "获取用户的角色信息"+err.Error()) | 612 | return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "获取用户的角色信息"+err.Error()) |
607 | } | 613 | } |
608 | if hrbpFlag == domain.RoleTypeSystem { | 614 | if hrbpFlag == domain.RoleTypeSystem { |
609 | - listData, err := t.ListTask2ForHrbp(param) | 615 | + listData, err := t.listTask2ForHrbp(param) |
610 | return listData, err | 616 | return listData, err |
611 | } | 617 | } |
612 | var limit = 20 | 618 | var limit = 20 |
@@ -693,7 +699,7 @@ func (t TaskService) ListTask2(param command.SearchTaskCommand) (map[string]inte | @@ -693,7 +699,7 @@ func (t TaskService) ListTask2(param command.SearchTaskCommand) (map[string]inte | ||
693 | } | 699 | } |
694 | 700 | ||
695 | // 以hrbp角色权限获取任务列表 | 701 | // 以hrbp角色权限获取任务列表 |
696 | -func (t TaskService) ListTask2ForHrbp(param command.SearchTaskCommand) (map[string]interface{}, error) { | 702 | +func (t TaskService) listTask2ForHrbp(param *command.SearchTaskCommand) (map[string]interface{}, error) { |
697 | var limit = 20 | 703 | var limit = 20 |
698 | var offset = 0 | 704 | var offset = 0 |
699 | if param.PageSize > 0 { | 705 | if param.PageSize > 0 { |
@@ -786,7 +792,45 @@ func (t TaskService) ListTask2ForHrbp(param command.SearchTaskCommand) (map[stri | @@ -786,7 +792,45 @@ func (t TaskService) ListTask2ForHrbp(param command.SearchTaskCommand) (map[stri | ||
786 | return result, nil | 792 | return result, nil |
787 | } | 793 | } |
788 | 794 | ||
789 | -// 更新任务里程碑的状态 | ||
790 | -func (t TaskService) UpdateTaskStageStatus(param command.UpdateTaskStageStatusCommand) { | 795 | +// ReplyTaskStage 根据每日的任务反馈 ,更新任务里程碑 |
796 | +func (t TaskService) ReplyTaskStage(transactionContext application.TransactionContext, param []*domain.TaskRecord) error { | ||
797 | + taskRepo := factory.CreateTaskRepository(map[string]interface{}{ | ||
798 | + "transactionContext": transactionContext, | ||
799 | + }) | ||
800 | + taskStageRepo := factory.CreateTaskStageRepository(map[string]interface{}{ | ||
801 | + "transactionContext": transactionContext, | ||
802 | + }) | ||
803 | + var taskList []*domain.Task | ||
804 | + var taskStages []*domain.TaskStage | ||
805 | + for _, val := range param { | ||
806 | + taskData, err := taskRepo.FindOne(map[string]interface{}{"id": val.TaskId}) | ||
807 | + if err != nil { | ||
808 | + return application.ThrowError(application.INTERNAL_SERVER_ERROR, "找不到任务数据"+err.Error()) | ||
809 | + } | ||
791 | 810 | ||
811 | + if !(len(val.AssistContent) == 0 || val.AssistContent == "无") { | ||
812 | + taskData.Anomaly = 0 | ||
813 | + } | ||
814 | + taskList = append(taskList, taskData) | ||
815 | + _, stageList, err := taskStageRepo.Find(map[string]interface{}{"ids": []int{val.TaskStageCheck.Id}}) | ||
816 | + if err != nil { | ||
817 | + return application.ThrowError(application.INTERNAL_SERVER_ERROR, "找不到任务里程碑数据"+err.Error()) | ||
818 | + } | ||
819 | + if len(stageList) > 0 { | ||
820 | + stageList[0].Status = val.TaskStageCheck.Status | ||
821 | + stageList[0].RealCompletedAt = val.TaskStageCheck.RealCompletedAt | ||
822 | + taskStages = append(taskStages, stageList[0]) | ||
823 | + } | ||
824 | + } | ||
825 | + err := taskStageRepo.Save(taskStages) | ||
826 | + if err != nil { | ||
827 | + return application.ThrowError(application.INTERNAL_SERVER_ERROR, "保存任务里程碑数据"+err.Error()) | ||
828 | + } | ||
829 | + for _, val := range taskList { | ||
830 | + err = taskRepo.Save(val) | ||
831 | + if err != nil { | ||
832 | + return application.ThrowError(application.INTERNAL_SERVER_ERROR, "保存任务数据"+err.Error()) | ||
833 | + } | ||
834 | + } | ||
835 | + return nil | ||
792 | } | 836 | } |
@@ -26,7 +26,7 @@ type Task struct { | @@ -26,7 +26,7 @@ type Task struct { | ||
26 | RelatedUser []int `json:"relatedUser"` // 相关的员工id | 26 | RelatedUser []int `json:"relatedUser"` // 相关的员工id |
27 | RunAt int64 `json:"runAt"` // 启动的时间戳,秒 | 27 | RunAt int64 `json:"runAt"` // 启动的时间戳,秒 |
28 | StopAt int64 `json:"stopAt"` // 停止的时间戳,秒 | 28 | StopAt int64 `json:"stopAt"` // 停止的时间戳,秒 |
29 | - Anomaly int `json:"anomaly"` //异常反馈的次数 | 29 | + Anomaly int `json:"anomaly"` // 异常反馈的次数 |
30 | } | 30 | } |
31 | 31 | ||
32 | type TaskLeader struct { | 32 | type TaskLeader struct { |
@@ -110,7 +110,9 @@ func (repo *TaskStageRepository) Find(queryOptions map[string]interface{}) (int, | @@ -110,7 +110,9 @@ func (repo *TaskStageRepository) Find(queryOptions map[string]interface{}) (int, | ||
110 | if val, ok := queryOptions["taskId"]; ok { | 110 | if val, ok := queryOptions["taskId"]; ok { |
111 | query.Where("task_stage.task_id = ?", val) | 111 | query.Where("task_stage.task_id = ?", val) |
112 | } | 112 | } |
113 | - | 113 | + if val, ok := queryOptions["ids"]; ok { |
114 | + query.Where("task_stage.id in(?)", pg.In(val)) | ||
115 | + } | ||
114 | if val, ok := queryOptions["taskIdList"]; ok { | 116 | if val, ok := queryOptions["taskIdList"]; ok { |
115 | query.Where("task_stage.task_id in(?)", pg.In(val)) | 117 | query.Where("task_stage.task_id in(?)", pg.In(val)) |
116 | } | 118 | } |
@@ -107,7 +107,7 @@ func (c *TaskController) ListTask() { | @@ -107,7 +107,7 @@ func (c *TaskController) ListTask() { | ||
107 | c.Response(data, err) | 107 | c.Response(data, err) |
108 | } | 108 | } |
109 | 109 | ||
110 | -// CancelAttention 取消关注的任务 | 110 | +// CancelAttention 员工绩效-任务管理列表-取消关注的任务 |
111 | func (c *TaskController) CancelAttention() { | 111 | func (c *TaskController) CancelAttention() { |
112 | srv := service.NewTaskService() | 112 | srv := service.NewTaskService() |
113 | paramReq := &command.CancelAttentionCommand{} | 113 | paramReq := &command.CancelAttentionCommand{} |
@@ -122,3 +122,20 @@ func (c *TaskController) CancelAttention() { | @@ -122,3 +122,20 @@ func (c *TaskController) CancelAttention() { | ||
122 | err = srv.CancelAttention(paramReq) | 122 | err = srv.CancelAttention(paramReq) |
123 | c.Response(nil, err) | 123 | c.Response(nil, err) |
124 | } | 124 | } |
125 | + | ||
126 | +// ListTask2 员工绩效-任务管理列表 | ||
127 | +func (c *TaskController) ListTask2() { | ||
128 | + srv := service.NewTaskService() | ||
129 | + paramReq := &command.SearchTaskCommand{} | ||
130 | + err := c.BindJSON(paramReq) | ||
131 | + if err != nil { | ||
132 | + e := application.ThrowError(application.ARG_ERROR, "json 解析错误"+err.Error()) | ||
133 | + c.Response(nil, e) | ||
134 | + return | ||
135 | + } | ||
136 | + userReq := middlewares.GetUser(c.Ctx) | ||
137 | + paramReq.CompanyId = int(userReq.CompanyId) | ||
138 | + paramReq.UserId = int(userReq.UserId) | ||
139 | + result, err := srv.ListTask2(paramReq) | ||
140 | + c.Response(result, err) | ||
141 | +} |
@@ -18,11 +18,11 @@ func init() { | @@ -18,11 +18,11 @@ func init() { | ||
18 | web.NSCtrlPost("/list", (*controllers.TaskController).ListTask), | 18 | web.NSCtrlPost("/list", (*controllers.TaskController).ListTask), |
19 | ) | 19 | ) |
20 | web.AddNamespace(taskAdminNS) | 20 | web.AddNamespace(taskAdminNS) |
21 | - | 21 | + // 员工绩效模块 |
22 | taskFontNS := web.NewNamespace("/v1/font/task", | 22 | taskFontNS := web.NewNamespace("/v1/font/task", |
23 | web.NSBefore(filters.AllowCors(), middlewares.CheckFontToken()), | 23 | web.NSBefore(filters.AllowCors(), middlewares.CheckFontToken()), |
24 | web.NSCtrlPost("/attention/cancel", (*controllers.TaskController).CancelAttention), | 24 | web.NSCtrlPost("/attention/cancel", (*controllers.TaskController).CancelAttention), |
25 | - web.NSCtrlPost("/list", (*controllers.TaskController).ListTask), //TODO | 25 | + web.NSCtrlPost("/list", (*controllers.TaskController).ListTask2), |
26 | ) | 26 | ) |
27 | web.AddNamespace(taskFontNS) | 27 | web.AddNamespace(taskFontNS) |
28 | 28 |
-
请 注册 或 登录 后发表评论