作者 tangxvhui

geng xi

@@ -115,9 +115,7 @@ func (srv TaskService) CreateTask(transactionContext application.TransactionCont @@ -115,9 +115,7 @@ func (srv TaskService) CreateTask(transactionContext application.TransactionCont
115 if err != nil { 115 if err != nil {
116 return application.ThrowError(application.INTERNAL_SERVER_ERROR, "创建任务失败:"+err.Error()) 116 return application.ThrowError(application.INTERNAL_SERVER_ERROR, "创建任务失败:"+err.Error())
117 } 117 }
118 -  
119 - nowEndTime := dayZeroTime(nowTime)  
120 - 118 + nowEndTime := dayEndTime(nowTime)
121 newTaskStage := []*domain.TaskStage{ 119 newTaskStage := []*domain.TaskStage{
122 { 120 {
123 Id: 0, 121 Id: 0,
@@ -144,6 +142,7 @@ func (srv TaskService) CreateTask(transactionContext application.TransactionCont @@ -144,6 +142,7 @@ func (srv TaskService) CreateTask(transactionContext application.TransactionCont
144 RealCompletedAt: 0, 142 RealCompletedAt: 0,
145 }, 143 },
146 } 144 }
  145 +
147 err = taskStageRepo.Save(newTaskStage) 146 err = taskStageRepo.Save(newTaskStage)
148 if err != nil { 147 if err != nil {
149 return application.ThrowError(application.INTERNAL_SERVER_ERROR, "创建任务失败:"+err.Error()) 148 return application.ThrowError(application.INTERNAL_SERVER_ERROR, "创建任务失败:"+err.Error())
@@ -240,7 +239,6 @@ func (srv TaskService) UpdateTask(param *command.UpdateTaskCommand) (map[string] @@ -240,7 +239,6 @@ func (srv TaskService) UpdateTask(param *command.UpdateTaskCommand) (map[string]
240 if err != nil { 239 if err != nil {
241 return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "请填写里程碑完成时间") 240 return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "请填写里程碑完成时间")
242 } 241 }
243 - t = dayEndTime(t)  
244 if i > 0 { 242 if i > 0 {
245 if lastPlanCompletedAt.After(t) { 243 if lastPlanCompletedAt.After(t) {
246 return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "里程碑["+val2.Name+"]完成时间填写错误") 244 return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "里程碑["+val2.Name+"]完成时间填写错误")
@@ -253,9 +251,10 @@ func (srv TaskService) UpdateTask(param *command.UpdateTaskCommand) (map[string] @@ -253,9 +251,10 @@ func (srv TaskService) UpdateTask(param *command.UpdateTaskCommand) (map[string]
253 TaskId: taskData.Id, 251 TaskId: taskData.Id,
254 Name: val2.Name, 252 Name: val2.Name,
255 SortBy: i + 1, 253 SortBy: i + 1,
256 - PlanCompletedAt: t.Unix(), 254 + PlanCompletedAt: 0,
257 RealCompletedAt: 0, 255 RealCompletedAt: 0,
258 } 256 }
  257 + newStage.SetPlanCompleted(t)
259 newStageList = append(newStageList, &newStage) 258 newStageList = append(newStageList, &newStage)
260 continue 259 continue
261 } 260 }
@@ -266,7 +265,7 @@ func (srv TaskService) UpdateTask(param *command.UpdateTaskCommand) (map[string] @@ -266,7 +265,7 @@ func (srv TaskService) UpdateTask(param *command.UpdateTaskCommand) (map[string]
266 oldStage.DeletedAt = nil 265 oldStage.DeletedAt = nil
267 oldStage.SortBy = i + 1 266 oldStage.SortBy = i + 1
268 oldStage.Name = val2.Name 267 oldStage.Name = val2.Name
269 - if ok := oldStage.PlanCompleted(t); ok { 268 + if ok := oldStage.SetPlanCompleted(t); ok {
270 markStage = append(markStage, *oldStage) 269 markStage = append(markStage, *oldStage)
271 } 270 }
272 } 271 }
@@ -52,8 +52,8 @@ func (t TaskStage) StatusDescription() string { @@ -52,8 +52,8 @@ func (t TaskStage) StatusDescription() string {
52 return str 52 return str
53 } 53 }
54 54
55 -// 计划完成是否变更  
56 -func (t *TaskStage) PlanCompleted(now time.Time) bool { 55 +// 计划完成时间是否变更
  56 +func (t *TaskStage) SetPlanCompleted(now time.Time) bool {
57 if t.RealCompletedAt != 0 { 57 if t.RealCompletedAt != 0 {
58 return false 58 return false
59 } 59 }
@@ -65,6 +65,11 @@ func (t *TaskStage) PlanCompleted(now time.Time) bool { @@ -65,6 +65,11 @@ func (t *TaskStage) PlanCompleted(now time.Time) bool {
65 return true 65 return true
66 } 66 }
67 67
  68 +func (t *TaskStage) SetRealCompleted(now time.Time) {
  69 + nowDay := t.dayEndTime(now)
  70 + t.RealCompletedAt = nowDay.Unix()
  71 +}
  72 +
68 func (t TaskStage) dayEndTime(now time.Time) time.Time { 73 func (t TaskStage) dayEndTime(now time.Time) time.Time {
69 yyyy, m, d := now.Local().Date() 74 yyyy, m, d := now.Local().Date()
70 endTime := time.Date(yyyy, m, d, 23, 59, 59, 0, time.Local) 75 endTime := time.Date(yyyy, m, d, 23, 59, 59, 0, time.Local)