切换导航条
此项目
正在载入...
登录
allied-creation
/
performance
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
tangxvhui
2 years ago
提交
70a835e69aeb630feca00f141b6f1c2c4ebc22f9
1 个父辈
44d7a6f5
更改 评级数量 汇总方式
隐藏空白字符变更
内嵌
并排对比
正在显示
6 个修改的文件
包含
121 行增加
和
46 行删除
pkg/application/summary_evaluation/service/export.go
pkg/application/summary_evaluation/service/service.go
pkg/application/summary_evaluation/service/service2.go
pkg/domain/summary_evaluation.go
pkg/infrastructure/pg/models/summary_evaluation.go
pkg/infrastructure/repository/pg_summary_evaluation_repository.go
pkg/application/summary_evaluation/service/export.go
0 → 100644
查看文件 @
70a835e
package
service
import
(
"github.com/xuri/excelize/v2"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/summary_evaluation/command"
)
// 导出数据
// 综合管理-周期评估
func
(
srv
*
SummaryEvaluationService
)
ExportAllEvaluationSuper
(
param
*
command
.
QueryEvaluationList
)
(
*
excelize
.
File
,
error
)
{
return
nil
,
nil
}
...
...
pkg/application/summary_evaluation/service/service.go
查看文件 @
70a835e
...
...
@@ -463,11 +463,14 @@ func (srv *SummaryEvaluationService) EditEvaluationSelf(param *command.EditEvalu
}
evaluationItemMap
:=
map
[
int
]
*
domain
.
EvaluationItemUsed
{}
evaluationValueMap
:=
map
[
int
]
*
domain
.
SummaryEvaluationValue
{}
evaluationData
.
TotalRating
=
nil
//清空评级数量统计
for
_
,
v
:=
range
itemList
{
newValue
:=
&
domain
.
SummaryEvaluationValue
{}
newValue
.
SetBlankValue
(
evaluationData
,
v
)
evaluationValueMap
[
v
.
Id
]
=
newValue
evaluationItemMap
[
v
.
Id
]
=
v
//重置计数
evaluationData
.
ResetTotalRating
(
v
)
}
for
_
,
v
:=
range
itemValueList
{
if
mValue
,
ok
:=
evaluationValueMap
[
v
.
EvaluationItemId
];
ok
{
...
...
@@ -847,12 +850,15 @@ func (srv *SummaryEvaluationService) EditEvaluationSuper(param *command.EditEval
}
evaluationItemMap
:=
map
[
int
]
*
domain
.
EvaluationItemUsed
{}
evaluationValueMap
:=
map
[
int
]
*
domain
.
SummaryEvaluationValue
{}
evaluationData
.
TotalRating
=
nil
//清空评级数量统计
for
_
,
v
:=
range
itemList
{
newValue
:=
&
domain
.
SummaryEvaluationValue
{}
//初始一个空白的value
newValue
.
SetBlankValue
(
evaluationData
,
v
)
evaluationValueMap
[
v
.
Id
]
=
newValue
evaluationItemMap
[
v
.
Id
]
=
v
//重置评级统计数量
evaluationData
.
ResetTotalRating
(
v
)
}
for
_
,
v
:=
range
itemValueList
{
if
mValue
,
ok
:=
evaluationValueMap
[
v
.
EvaluationItemId
];
ok
{
...
...
pkg/application/summary_evaluation/service/service2.go
查看文件 @
70a835e
...
...
@@ -2,6 +2,9 @@ package service
import
(
"fmt"
"strings"
"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"
...
...
@@ -10,8 +13,6 @@ import (
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/summary_evaluation/command"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/domain"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/infrastructure/dao"
"strings"
"time"
)
// Evaluation360List 获取360综评列表
...
...
@@ -391,11 +392,14 @@ func (srv *SummaryEvaluationService) EditEvaluation360(param *command.EditEvalua
evaluationValueMap
:=
map
[
int
]
*
domain
.
SummaryEvaluationValue
{}
evaluationItemMap
:=
map
[
int
]
*
domain
.
EvaluationItemUsed
{}
summaryEvaluation
.
TotalRating
=
nil
//清空评级数量统计
for
i
,
v
:=
range
itemList
{
newValue
:=
&
domain
.
SummaryEvaluationValue
{}
newValue
.
SetBlankValue
(
summaryEvaluation
,
v
)
evaluationValueMap
[
v
.
Id
]
=
newValue
evaluationItemMap
[
v
.
Id
]
=
itemList
[
i
]
//重置计数
summaryEvaluation
.
ResetTotalRating
(
v
)
}
for
_
,
v
:=
range
itemValueList
{
if
mValue
,
ok
:=
evaluationValueMap
[
v
.
EvaluationItemId
];
ok
{
...
...
@@ -739,12 +743,14 @@ func (srv *SummaryEvaluationService) EditEvaluationHRBP(param *command.EditEvalu
evaluationValueMap
:=
map
[
int
]
*
domain
.
SummaryEvaluationValue
{}
evaluationItemMap
:=
map
[
int
]
*
domain
.
EvaluationItemUsed
{}
summaryEvaluation
.
TotalRating
=
nil
//清空评级数量统计
for
i
,
v
:=
range
itemList
{
newValue
:=
&
domain
.
SummaryEvaluationValue
{}
newValue
.
SetBlankValue
(
summaryEvaluation
,
v
)
evaluationValueMap
[
v
.
Id
]
=
newValue
evaluationItemMap
[
v
.
Id
]
=
itemList
[
i
]
//重置计数
summaryEvaluation
.
ResetTotalRating
(
v
)
}
for
_
,
v
:=
range
itemValueList
{
if
mValue
,
ok
:=
evaluationValueMap
[
v
.
EvaluationItemId
];
ok
{
...
...
pkg/domain/summary_evaluation.go
查看文件 @
70a835e
...
...
@@ -7,25 +7,32 @@ import (
// 周综合评估
type
SummaryEvaluation
struct
{
Id
int
CompanyId
int
//公司id
EvaluationProjectId
int
//对应的项目id
EvaluationProjectName
string
//对应的项目名称
CycleId
int64
//对应的周期id
CycleName
string
//对应的周期名称
NodeId
int
//
TargetUser
StaffDesc
//被评估的目标用户,被执行的
TargetDepartment
[]
StaffDepartment
//被评估的目标用户所在的部门
Executor
StaffDesc
//填写评估的用户,执行人
Types
EvaluationType
//评估类型
Status
EvaluationStatus
//评估的填写状态
CheckResult
EvaluationCheckResult
//被执行的人确认评估结果
BeginTime
time
.
Time
//开始时间
EndTime
time
.
Time
//截止时间
TotalScore
string
//最终上级评估得分.
CreatedAt
time
.
Time
//数据创建时间
UpdatedAt
time
.
Time
//数据更新时间
DeletedAt
*
time
.
Time
//数据删除时间
Id
int
`json:"id"`
CompanyId
int
`json:"companyId"`
//公司id
EvaluationProjectId
int
`json:"evaluationProjectId"`
//对应的项目id
EvaluationProjectName
string
`json:"evaluationProjectName"`
//对应的项目名称
CycleId
int64
`json:"cycleId"`
//对应的周期id
CycleName
string
`json:"cycleName"`
//对应的周期名称
NodeId
int
`json:"nodeId"`
//对应的节点id
TargetUser
StaffDesc
`json:"targetUser"`
//被评估的目标用户,被执行的
TargetDepartment
[]
StaffDepartment
`json:"targetDepartment"`
//被评估的目标用户所在的部门
Executor
StaffDesc
`json:"executor"`
//填写评估的用户,执行人
Types
EvaluationType
`json:"types"`
//评估类型
Status
EvaluationStatus
`json:"status"`
//评估的填写状态
CheckResult
EvaluationCheckResult
`json:"checkResult"`
//被执行的人确认评估结果
BeginTime
time
.
Time
`json:"beginTime"`
//开始时间
EndTime
time
.
Time
`json:"endTime"`
//截止时间
TotalScore
string
`json:"totalScore"`
//最终上级评估得分.
TotalRating
[]
RatingCodeNumber
`json:"totalRating"`
//汇总各个评级的数量
CreatedAt
time
.
Time
`json:"createdAt"`
//数据创建时间
UpdatedAt
time
.
Time
`json:"updatedAt"`
//数据更新时间
DeletedAt
*
time
.
Time
`json:"deletedAt"`
//数据删除时间
}
// 各个评级的数量
type
RatingCodeNumber
struct
{
Code
string
`json:"code"`
Number
int
`json:"number"`
}
type
EvaluationType
int
//综合评估类型
...
...
@@ -64,13 +71,52 @@ type SummaryEvaluationRepository interface {
func
(
evaluation
*
SummaryEvaluation
)
EvaluationTotalScore
(
valueList
[]
*
SummaryEvaluationValue
)
error
{
var
totalScore
float64
for
_
,
v
:=
range
valueList
{
score
,
err
:=
v
.
SumScore
()
if
err
!=
nil
{
return
err
}
if
v
.
Weight
==
0
{
evaluation
.
SumRatingCode
(
v
.
Rating
.
Code
)
}
else
{
score
,
err
:=
v
.
SumScore
()
if
err
!=
nil
{
return
err
}
totalScore
+=
score
totalScore
+=
score
}
}
evaluation
.
TotalScore
=
fmt
.
Sprintf
(
"%.1f"
,
totalScore
)
return
nil
}
// 重置评级统计数量
func
(
evaluation
*
SummaryEvaluation
)
ResetTotalRating
(
param
*
EvaluationItemUsed
)
{
if
param
.
Weight
>
0
{
return
}
if
len
(
evaluation
.
TotalRating
)
==
0
{
evaluation
.
TotalRating
=
make
([]
RatingCodeNumber
,
0
)
}
for
_
,
v
:=
range
param
.
Rule
.
Rating
.
Levels
{
isExist
:=
false
for
i2
,
v2
:=
range
evaluation
.
TotalRating
{
if
v
.
Code
==
v2
.
Code
{
isExist
=
true
evaluation
.
TotalRating
[
i2
]
.
Number
=
0
}
}
if
!
isExist
{
evaluation
.
TotalRating
=
append
(
evaluation
.
TotalRating
,
RatingCodeNumber
{
Code
:
v
.
Code
,
Number
:
0
,
})
}
}
}
// 增加对应评级的数量
func
(
evaluation
*
SummaryEvaluation
)
SumRatingCode
(
code
string
)
{
for
i
:=
range
evaluation
.
TotalRating
{
if
evaluation
.
TotalRating
[
i
]
.
Code
==
code
{
evaluation
.
TotalRating
[
i
]
.
Number
+=
1
break
}
}
}
...
...
pkg/infrastructure/pg/models/summary_evaluation.go
查看文件 @
70a835e
...
...
@@ -8,23 +8,25 @@ import (
// 周综合评估
type
SummaryEvaluation
struct
{
tableName
struct
{}
`comment:"周综合评估" pg:"summary_evaluation"`
Id
int
`pg:",pk"`
CompanyId
int
//公司id
EvaluationProjectId
int
//对应的项目id
EvaluationProjectName
string
//对应的项目名称
CycleId
int64
//对应的周期id
CycleName
string
//对应的周期名称
TargetUser
domain
.
StaffDesc
//被评估的目标用户,被执行的
TargetDepartment
[]
domain
.
StaffDepartment
//被评估的目标用户所在的部门
Executor
domain
.
StaffDesc
//填写评估的用户,执行人
Types
int
//评估类型
Status
string
//评估的填写状态
CheckResult
string
//被执行的人确认评估结果
BeginTime
time
.
Time
//开始时间
EndTime
time
.
Time
//截止时间
TotalScore
string
//最终上级评估得分.
CreatedAt
time
.
Time
//数据创建时间
UpdatedAt
time
.
Time
//数据更新时间
DeletedAt
*
time
.
Time
//数据删除时间
tableName
struct
{}
`comment:"周综合评估" pg:"summary_evaluation"`
Id
int
`pg:",pk"`
CompanyId
int
//公司id
EvaluationProjectId
int
//对应的项目id
EvaluationProjectName
string
//对应的项目名称
CycleId
int64
//对应的周期id
CycleName
string
//对应的周期名称
NodeId
int
//对应的节点id
TargetUser
domain
.
StaffDesc
//被评估的目标用户,被执行的
TargetDepartment
[]
domain
.
StaffDepartment
//被评估的目标用户所在的部门
Executor
domain
.
StaffDesc
//填写评估的用户,执行人
Types
int
//评估类型
Status
string
//评估的填写状态
CheckResult
string
//被执行的人确认评估结果
BeginTime
time
.
Time
//开始时间
EndTime
time
.
Time
//截止时间
TotalScore
string
//最终上级评估得分.
TotalRating
[]
domain
.
RatingCodeNumber
//汇总评级
CreatedAt
time
.
Time
//数据创建时间
UpdatedAt
time
.
Time
//数据更新时间
DeletedAt
*
time
.
Time
//数据删除时间
}
...
...
pkg/infrastructure/repository/pg_summary_evaluation_repository.go
查看文件 @
70a835e
...
...
@@ -38,6 +38,7 @@ func (repo *SummaryEvaluationRepository) TransformToDomain(d *models.SummaryEval
BeginTime
:
d
.
BeginTime
,
EndTime
:
d
.
EndTime
,
TotalScore
:
d
.
TotalScore
,
TotalRating
:
d
.
TotalRating
,
CreatedAt
:
d
.
CreatedAt
,
UpdatedAt
:
d
.
UpdatedAt
,
DeletedAt
:
d
.
DeletedAt
,
...
...
@@ -52,6 +53,7 @@ func (repo *SummaryEvaluationRepository) Save(param *domain.SummaryEvaluation) e
EvaluationProjectName
:
param
.
EvaluationProjectName
,
CycleId
:
param
.
CycleId
,
CycleName
:
param
.
CycleName
,
NodeId
:
param
.
NodeId
,
TargetUser
:
param
.
TargetUser
,
TargetDepartment
:
param
.
TargetDepartment
,
Executor
:
param
.
Executor
,
...
...
@@ -61,6 +63,7 @@ func (repo *SummaryEvaluationRepository) Save(param *domain.SummaryEvaluation) e
BeginTime
:
param
.
BeginTime
,
EndTime
:
param
.
EndTime
,
TotalScore
:
param
.
TotalScore
,
TotalRating
:
param
.
TotalRating
,
CreatedAt
:
param
.
CreatedAt
,
UpdatedAt
:
param
.
UpdatedAt
,
DeletedAt
:
param
.
DeletedAt
,
...
...
请
注册
或
登录
后发表评论