GxtUserScoreController 时序图
1. 获取人员评分页面数据时序图
sequenceDiagram
participant User as 用户
participant Controller as GxtUserScoreController
participant UserService as IGxtUserScoreService
participant FanInspectionService as IGxtUserFanInspectionScoreService
participant RepairProjectService as IGxtUserRepairProjectScoreService
participant RuntimeScoreService as IGxtUserRuntimeScoreService
participant CoefficientService as IGxtCoefficientScoreService
participant ConfigService as ISysConfigService
User->>Controller: GET /getUserScoreInfo?rtType=&monthPeriod=
Controller->>ConfigService: selectConfigByKey("gxt.user.scorePage")
ConfigService-->>Controller: 返回配置信息
Controller->>UserService: selectGxtUserScoreListByCondition(rtType, monthPeriod, userId, deptId, permission)
UserService-->>Controller: 返回GxtUserScore列表
Controller->>FanInspectionService: selectFanInspectionScoreByCondition(rtType, monthPeriod, userId, deptId, permission)
FanInspectionService-->>Controller: 返回GxtUserFanInspectionScore列表
Controller->>RepairProjectService: selectUserRepairProjectScoreByCondition(rtType, monthPeriod, userId, deptId, permission)
RepairProjectService-->>Controller: 返回GxtUserRepairProjectScore列表
Controller->>RuntimeScoreService: selectGxtUserRuntimeScoreListByRtTypeAndMonth(rtType, monthPeriod, userId, deptId, permission)
RuntimeScoreService-->>Controller: 返回GxtUserRuntimeScore列表
Controller->>CoefficientService: selectGxtCoefficientScoreList(coefficientScore)
CoefficientService-->>Controller: 返回GxtCoefficientScore列表
Controller->>User: 返回整合后的数据(AjaxResult)
2. 提交所有评分数据时序图(第一部分)
sequenceDiagram
participant User as 用户
participant Controller as GxtUserScoreController
participant CoefficientService as IGxtCoefficientScoreService
participant UserService as IGxtUserScoreService
participant FanInspectionService as IGxtUserFanInspectionScoreService
User->>Controller: POST /submitAllScores
Note over User,Controller: 请求体包含GxtUserScoreSubmissionDTO
loop 处理系数与定检台数统计数据
Controller->>CoefficientService: 根据monthPeriod查询是否存在记录
CoefficientService-->>Controller: 返回查询结果
alt 记录存在
Controller->>CoefficientService: updateGxtCoefficientScore(score)
else 记录不存在
Controller->>CoefficientService: insertGxtCoefficientScore(score)
end
end
loop 处理安全运行工单列表数据
Controller->>UserService: 根据monthPeriod和userName查询是否存在记录
UserService-->>Controller: 返回查询结果
alt 记录存在
Controller->>UserService: updateGxtUserScore(score)
else 记录不存在
Controller->>UserService: insertGxtUserScore(score)
end
end
loop 处理维保机组类型评分数据
Controller->>FanInspectionService: 根据monthPeriod和userName查询是否存在记录
FanInspectionService-->>Controller: 返回查询结果
alt 记录存在
Controller->>FanInspectionService: updateGxtUserFanInspectionScore(score)
else 记录不存在
Controller->>FanInspectionService: insertGxtUserFanInspectionScore(score)
end
end
3. 提交所有评分数据时序图(第二部分)
sequenceDiagram
participant User as 用户
participant Controller as GxtUserScoreController
participant UserService as IGxtUserScoreService
participant RepairProjectService as IGxtUserRepairProjectScoreService
loop 处理检修员得分列表数据
Controller->>UserService: 根据monthPeriod和userName查询是否存在记录
UserService-->>Controller: 返回查询结果
alt 记录存在
Controller->>UserService: updateGxtUserScore(score)
else 记录不存在
Controller->>UserService: insertGxtUserScore(score)
end
end
loop 处理维修员最终得分列表数据
Controller->>UserService: 根据monthPeriod和userName查询是否存在记录
UserService-->>Controller: 返回查询结果
alt 记录存在
Controller->>UserService: updateGxtUserScore(score)
else 记录不存在
Controller->>UserService: insertGxtUserScore(score)
end
end
loop 处理场站负责人评分列表数据
Controller->>RepairProjectService: 根据monthPeriod和userName查询是否存在记录
RepairProjectService-->>Controller: 返回查询结果
alt 记录存在
Controller->>RepairProjectService: updateGxtUserRepairProjectScore(score)
else 记录不存在
Controller->>RepairProjectService: insertGxtUserRepairProjectScore(score)
end
end
Controller->>User: 返回提交成功信息(AjaxResult)
4. 获取月度工分汇总页面数据时序图
sequenceDiagram
participant User as 用户
participant Controller as GxtUserScoreController
participant MonthScoreService as IGxtMonthScoreService
participant ConfigService as ISysConfigService
User->>Controller: GET /getScoreSummary?rtType=&monthPeriod=&deptId=
Controller->>ConfigService: selectConfigByKey("gxt.user.scorePage")
ConfigService-->>Controller: 返回配置信息
Controller->>MonthScoreService: getGxtMonthScoreByParams(rtType, monthPeriod, permission, deptId)
MonthScoreService-->>Controller: 返回GxtMonthScore对象
Controller->>User: 返回月度工分汇总数据(AjaxResult)