切换导航条
此项目
正在载入...
登录
allied-creation
/
performance
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
郑周
2 years ago
提交
bfe1efd1ab888cd390d25b37363ec110bd0f29ca
1 个父辈
0a444d4d
1. 超管提交分数,同步到上级分数中去
隐藏空白字符变更
内嵌
并排对比
正在显示
2 个修改的文件
包含
69 行增加
和
9 行删除
pkg/application/summary_evaluation/service/edit_evaluation_admin.go
pkg/application/summary_evaluation/service/service2.go
pkg/application/summary_evaluation/service/edit_evaluation_admin.go
查看文件 @
bfe1efd
...
...
@@ -155,15 +155,6 @@ func (srv *SummaryEvaluationService) EditEvaluationFinish(param *command.EditEva
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"不能提交临时数据"
)
}
lock
:=
xredis
.
NewLockSummaryEvaluationId
(
param
.
SummaryEvaluationId
)
err
:=
lock
.
Lock
()
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"未能完全提交评估内容"
)
}
defer
func
()
{
lock
.
UnLock
()
}()
transactionContext
,
err
:=
factory
.
StartTransaction
()
if
err
!=
nil
{
return
nil
,
err
...
...
@@ -195,6 +186,16 @@ func (srv *SummaryEvaluationService) EditEvaluationFinish(param *command.EditEva
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"考核类型错误"
)
}
// 按照被评估人id ,加锁
lock
:=
xredis
.
NewLockSummaryEvaluation
(
result
.
TargetUser
.
UserId
)
err
=
lock
.
Lock
()
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"未能完全提交评估内容"
)
}
defer
func
()
{
lock
.
UnLock
()
}()
_
,
itemList
,
err
:=
itemUsedRepo
.
Find
(
map
[
string
]
interface
{}{
"evaluationProjectId"
:
result
.
EvaluationProjectId
,
"nodeType"
:
domain
.
LinkNodeSelfAssessment
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
...
...
@@ -222,6 +223,55 @@ func (srv *SummaryEvaluationService) EditEvaluationFinish(param *command.EditEva
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
// 需要同步提交分数到上级去
if
len
(
itemValueList
)
>
0
{
superValues
,
evaluationList
,
err
:=
srv
.
findCycleItemValueByType
(
transactionContext
,
result
.
CycleId
,
result
.
TargetUser
.
UserId
,
[]
int
{
int
(
domain
.
EvaluationSuper
)})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
// 上级评估存在(有上级考核类型时,不管分数有没有填写都算,没填写当作零)
if
len
(
evaluationList
)
>
0
{
super
:=
evaluationList
[
0
]
super
.
Status
=
domain
.
EvaluationCompleted
err
=
evaluationRepo
.
Save
(
super
)
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
// 上级评估条目对应分数值
superMap
:=
map
[
int
]
*
domain
.
SummaryEvaluationValue
{}
for
i
:=
range
superValues
{
it
:=
superValues
[
i
]
superMap
[
it
.
EvaluationItemId
]
=
it
}
newList
:=
make
([]
*
domain
.
SummaryEvaluationValue
,
0
)
for
i
:=
range
itemValueList
{
it
:=
itemValueList
[
i
]
v
,
ok
:=
superMap
[
it
.
EvaluationItemId
]
if
!
ok
{
v
=
&
domain
.
SummaryEvaluationValue
{}
v
.
SummaryEvaluationId
=
super
.
Id
v
.
Id
=
0
v
.
EvaluationItemId
=
it
.
EvaluationItemId
}
v
.
Value
=
it
.
Value
v
.
Score
=
it
.
Score
v
.
Remark
=
it
.
Remark
v
.
Weight
=
it
.
Weight
v
.
Rating
=
it
.
Rating
newList
=
append
(
newList
,
v
)
}
for
_
,
v
:=
range
newList
{
err
=
itemValueRepo
.
Save
(
v
)
// 保存填写值
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
}
}
}
if
err
:=
transactionContext
.
CommitTransaction
();
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
...
...
pkg/application/summary_evaluation/service/service2.go
查看文件 @
bfe1efd
...
...
@@ -2,6 +2,7 @@ package service
import
(
"fmt"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/infrastructure/xredis"
"strconv"
"strings"
"time"
...
...
@@ -760,6 +761,15 @@ func (srv *SummaryEvaluationService) ModifyFinishScore(param *command.ModifyFini
if
result
.
Types
!=
domain
.
EvaluationFinish
{
return
nil
}
// 按照被评估人id ,加锁
lock
:=
xredis
.
NewLockSummaryEvaluation
(
result
.
TargetUser
.
UserId
)
err
=
lock
.
Lock
()
if
err
!=
nil
{
return
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"未能完全提交评估内容"
)
}
defer
func
()
{
lock
.
UnLock
()
}()
// 获取考核结果评分
_
,
itemValues
,
err
:=
itemValueRepo
.
Find
(
map
[
string
]
interface
{}{
"summaryEvaluationId"
:
result
.
Id
})
...
...
请
注册
或
登录
后发表评论