|
|
package service
|
|
|
|
|
|
import (
|
|
|
"time"
|
|
|
|
|
|
"github.com/linmadan/egglib-go/core/application"
|
|
|
"github.com/linmadan/egglib-go/utils/tool_funs"
|
|
|
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/factory"
|
...
|
...
|
@@ -13,8 +11,8 @@ import ( |
|
|
type StaffAssessServeice struct {
|
|
|
}
|
|
|
|
|
|
// 获取我参与过的评估项目列表
|
|
|
func (srv StaffAssessServeice) SearchAssessMe(param *query.SearchAssessMeQuery) (map[string]interface{}, error) {
|
|
|
// 获取我参与过的评估任务列表
|
|
|
func (srv StaffAssessServeice) SearchAssessTaskMe(param *query.SearchAssessMeQuery) (map[string]interface{}, error) {
|
|
|
transactionContext, err := factory.CreateTransactionContext(nil)
|
|
|
if err != nil {
|
|
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
...
|
...
|
@@ -25,35 +23,45 @@ func (srv StaffAssessServeice) SearchAssessMe(param *query.SearchAssessMeQuery) |
|
|
defer func() {
|
|
|
_ = transactionContext.RollbackTransaction()
|
|
|
}()
|
|
|
cycleRepo := factory.CreateEvaluationCycleRepository(map[string]interface{}{
|
|
|
staffAssessTaskRepo := factory.CreateStaffAssessTaskRepository(map[string]interface{}{
|
|
|
"transactionContext": transactionContext,
|
|
|
})
|
|
|
currentTime, err := time.ParseInLocation("2006-01-02", param.CurrentTime, time.Local)
|
|
|
if err != nil {
|
|
|
return nil, application.ThrowError(application.TRANSACTION_ERROR, "时间条件填写错误")
|
|
|
}
|
|
|
//获取param.CurrentTime 对应的周期
|
|
|
_, cycleList, err := cycleRepo.Find(map[string]interface{}{
|
|
|
"companyId": param.CompanyId,
|
|
|
"timeStart": currentTime,
|
|
|
"timeEnd": currentTime,
|
|
|
"limit": 1,
|
|
|
})
|
|
|
var limit int = 20
|
|
|
var offset int = 0
|
|
|
if param.PageSize > 0 {
|
|
|
limit = param.PageSize
|
|
|
}
|
|
|
offset = (param.PageNumber - 1) * param.PageSize
|
|
|
condition := map[string]interface{}{
|
|
|
"executorId": param.UserId,
|
|
|
"companyId": param.CompanyId,
|
|
|
"limit": limit,
|
|
|
}
|
|
|
if offset > 0 {
|
|
|
condition["offset"] = offset
|
|
|
}
|
|
|
cnt, assessTaskList, err := staffAssessTaskRepo.Find(condition)
|
|
|
if err != nil {
|
|
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, "查询周期"+err.Error())
|
|
|
}
|
|
|
if len(cycleList) == 0 {
|
|
|
listData := []adapter.SearchAssessMeResp{}
|
|
|
return tool_funs.SimpleWrapGridMap(0, listData), nil
|
|
|
}
|
|
|
|
|
|
//更具周期和param.UserId 获取评估项目列表
|
|
|
if err := transactionContext.CommitTransaction(); err != nil {
|
|
|
return nil, application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
|
}
|
|
|
var cnt int64
|
|
|
var listData []adapter.SearchAssessMeResp
|
|
|
return tool_funs.SimpleWrapGridMap(cnt, listData), nil
|
|
|
listData := make([]adapter.SearchAssessMeResp, 0, len(assessTaskList))
|
|
|
var temp adapter.SearchAssessMeResp
|
|
|
for _, v := range assessTaskList {
|
|
|
temp = adapter.SearchAssessMeResp{
|
|
|
AssessTaskId: v.Id,
|
|
|
BeginTime: v.BeginTime.Format("2006-01-02 15:04:05"),
|
|
|
EndTime: v.EndTime.Format("2006-01-02 15:04:05"),
|
|
|
CycleId: v.CycleId,
|
|
|
CycleName: v.CycleName,
|
|
|
EvaluationProjectId: v.EvaluationProjectId,
|
|
|
EvaluationProjectName: v.EvaluationProjectName,
|
|
|
}
|
|
|
listData = append(listData, temp)
|
|
|
}
|
|
|
return tool_funs.SimpleWrapGridMap(int64(cnt), listData), nil
|
|
|
}
|
|
|
|
|
|
// 获取项目评估进度描述
|
...
|
...
|
@@ -98,3 +106,22 @@ func (srv StaffAssessServeice) AssessSelfList(param query.AssessTaskDescQuery) ( |
|
|
result["userInfo"] = userInfo
|
|
|
return result, nil
|
|
|
}
|
|
|
|
|
|
// 更具项目评估的配置,创建员工的评估任务
|
|
|
func (srv StaffAssessServeice) CreateStaffAssessTask() error {
|
|
|
transactionContext, err := factory.CreateTransactionContext(nil)
|
|
|
if err != nil {
|
|
|
return application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
|
|
}
|
|
|
if err := transactionContext.StartTransaction(); err != nil {
|
|
|
return application.ThrowError(application.TRANSACTION_ERROR, err.Error())
|
|
|
}
|
|
|
defer func() {
|
|
|
_ = transactionContext.RollbackTransaction()
|
|
|
}()
|
|
|
|
|
|
if err := transactionContext.CommitTransaction(); err != nil {
|
|
|
return application.ThrowError(application.INTERNAL_SERVER_ERROR, err.Error())
|
|
|
}
|
|
|
return nil
|
|
|
} |
...
|
...
|
|