切换导航条
此项目
正在载入...
登录
allied-creation
/
performance
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
差异文件
浏览文件
作者
郑周
2 years ago
提交
78f38f61eb052b0c15e17ca20942655feacd3eda
2 个父辈
cb00978b
033c21f4
Merge remote-tracking branch 'origin/test' into test
隐藏空白字符变更
内嵌
并排对比
正在显示
7 个修改的文件
包含
165 行增加
和
47 行删除
pkg/application/staff_assess/adapter/assess_info.go
pkg/application/staff_assess/adapter/list_invite_user_assess.go
pkg/application/staff_assess/adapter/list_supper_assess.go
pkg/application/staff_assess/query/list_invite_user_assess.go
pkg/application/staff_assess/service/service.go
pkg/port/beego/controllers/staff_assess_controller.go
pkg/port/beego/routers/staff_assess_router.go
pkg/application/staff_assess/adapter/assess_info.go
查看文件 @
78f38f6
...
...
@@ -9,16 +9,18 @@ type AssessInfoResp struct {
CycleName
string
`json:"cycleName"`
//周期名称
EvaluationProjectId
int
`json:"evaluationProjectId"`
//项目id
EvaluationProjectName
string
`json:"evaluationProjectName"`
//项目名称
BeginTime
string
`json:"beginTime"`
//开始时间 2006-01-02 15:04:05
EndTime
string
`json:"endTime"`
//结束时间 2006-01-02 15:04:05
Status
string
`json:"status"`
//完成状态
TargetUserId
int
`json:"targetUser"`
//目标用户
TargetUserName
string
`json:"targetUserName"`
//目标用户名称
CompanyId
int
`json:"companyId,string"`
//
CompanyName
string
`json:"companyName"`
//公司名称
SupperUser
string
`json:"superUser"`
//目标用户的上级
DutyTime
string
`json:"dutyTime"`
//入职时间 //
AssessContent
[]
*
domain
.
StaffAssessContent
`json:"assessContent"`
//评估内容
LinkNodeId
int
`json:"linkNodeId"`
LinkNodeName
string
`json:"linkNodeName"`
BeginTime
string
`json:"beginTime"`
//开始时间 2006-01-02 15:04:05
EndTime
string
`json:"endTime"`
//结束时间 2006-01-02 15:04:05
Status
string
`json:"status"`
//完成状态
TargetUserId
int
`json:"targetUser"`
//目标用户
TargetUserName
string
`json:"targetUserName"`
//目标用户名称
CompanyId
int
`json:"companyId,string,"`
//
CompanyName
string
`json:"companyName"`
//公司名称
SupperUser
string
`json:"superUser"`
//目标用户的上级
DutyTime
string
`json:"dutyTime"`
//入职时间 //
AssessContent
[]
*
domain
.
StaffAssessContent
`json:"assessContent"`
//评估内容
}
type
AssessContent
struct
{
...
...
pkg/application/staff_assess/adapter/list_invite_user_assess.go
查看文件 @
78f38f6
package
adapter
type
ListInviteUserAssessResp
struct
{
TableHeader
[]
ListTableHeader
List
[]
map
[
string
]
string
Total
int
LinkNodeName
string
`json:"linkNodeName"`
LinkNodeId
int
`json:"linkNodeId"`
LintNodeDesc
string
`json:"lintNodeDesc"`
TableHeader
[]
ListTableHeader
`json:"tableHeader"`
List
[]
map
[
string
]
string
`json:"list"`
Total
int
`json:"total"`
}
type
ListTableHeader
struct
{
Key
string
Name
string
Key
string
`json:"key"`
Name
string
`json:"name"`
}
...
...
pkg/application/staff_assess/adapter/list_supper_assess.go
查看文件 @
78f38f6
...
...
@@ -6,7 +6,8 @@ type ListSupperAssessResp struct {
EndTime
string
`json:"endTime"`
//截止时间
InviteTotal
int
`json:"inviteTota"`
//邀请总数
InviteCompleted
int
`json:"inviteCompleted"`
//邀请未完成
Department
string
`json:"department"`
//部门
Position
string
`json:"position"`
//职位
DutyTime
string
`json:"dutyTime"`
//入职时间
Status
string
`json:"status"`
Department
string
`json:"department"`
//部门
Position
string
`json:"position"`
//职位
DutyTime
string
`json:"dutyTime"`
//入职时间
}
...
...
pkg/application/staff_assess/query/list_invite_user_assess.go
查看文件 @
78f38f6
package
query
type
ListInviteUserAssessQuery
struct
{
PageNumber
int
`json:"pageNumber"`
PageSize
int
`json:"pageSize"`
UserName
string
`json:"userName"`
//查询条件 员工的名称
CompanyId
int
`json:"companyId"`
//
ExecutorId
int
`json:"executorId"`
//评估的执行人,必填
AssessTaskkId
int
`json:"assessTaskId"`
//评估任务id 必填
PageNumber
int
`json:"pageNumber"`
PageSize
int
`json:"pageSize"`
UserName
string
`json:"userName"`
//查询条件 员工的名称
CompanyId
int
`json:"companyId"`
//
ExecutorId
int
`json:"executorId"`
//评估的执行人,必填
AssessTaskId
int
`json:"assessTaskId"`
//评估任务id 必填
}
...
...
pkg/application/staff_assess/service/service.go
查看文件 @
78f38f6
...
...
@@ -887,6 +887,8 @@ func (srv StaffAssessServeice) GetAssessSelfInfo(param *query.AssessSelfInfoQuer
AssessId
:
assessData
.
Id
,
CycleId
:
assessData
.
CycleId
,
CycleName
:
assessData
.
CycleName
,
LinkNodeId
:
assessData
.
LinkNodeId
,
LinkNodeName
:
assessData
.
LinkNodeName
,
EvaluationProjectId
:
assessData
.
EvaluationProjectId
,
EvaluationProjectName
:
assessData
.
EvaluationProjectName
,
BeginTime
:
assessData
.
BeginTime
.
Local
()
.
Format
(
"2006-01-02 15:04:05"
),
...
...
@@ -1089,45 +1091,135 @@ func (srv StaffAssessServeice) ListExecutorInviteAssess(param *query.ListInviteU
assessRepo
:=
factory
.
CreateStaffAssessRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
assessTaskRepo
:=
factory
.
CreateStaffAssessTaskRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
//获取 executorId 对应的360评估任务 用户
cnt
,
assessList
,
err
:=
assessRepo
.
Find
(
map
[
string
]
interface
{}{
"staffAssessTaskId"
:
param
.
AssessTaskkId
,
condition
:=
map
[
string
]
interface
{}{
"staffAssessTaskId"
:
param
.
AssessTaskId
,
"executorId"
:
param
.
ExecutorId
,
"typesList"
:
[]
string
{
string
(
domain
.
AssessInviteDiffSuper
),
string
(
domain
.
AssessInviteSameSuper
)},
})
"limit"
:
20
,
}
if
param
.
PageSize
>
0
{
condition
[
"limit"
]
=
param
.
PageSize
}
offset
:=
(
param
.
PageNumber
-
1
)
*
param
.
PageSize
if
offset
>
0
{
condition
[
"offset"
]
=
offset
}
cnt
,
assessList
,
err
:=
assessRepo
.
Find
(
condition
)
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
var
assessContentList
[]
*
domain
.
StaffAssessContent
if
len
(
assessList
)
>
0
{
//获取评估用的所有评估项
assessContentList
,
err
=
srv
.
getAssessSelfInfoUncompleted
(
transactionContext
,
assessList
[
0
])
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"获取评估任务"
+
err
.
Error
())
}
}
//可变的表格列
changeableHeader
:=
[]
adapter
.
ListTableHeader
{}
//列名与字段对应
keyMap
:=
map
[
string
]
string
{}
for
i
,
v
:=
range
assessContentList
{
name
:=
fmt
.
Sprintf
(
"%s-%s"
,
v
.
Category
,
v
.
Name
)
key
:=
fmt
.
Sprintf
(
"k%d"
,
i
)
keyMap
[
name
]
=
key
changeableHeader
=
append
(
changeableHeader
,
adapter
.
ListTableHeader
{
Key
:
key
,
Name
:
name
,
})
}
assessContentRepo
:=
factory
.
CreateStaffAssessContentRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
// 获取已经填报的内容
changeableRows
:=
map
[
int
]
map
[
string
]
string
{}
for
_
,
v
:=
range
assessList
{
_
,
contentList
,
err
:=
assessContentRepo
.
Find
(
map
[
string
]
interface
{}{
"staffAssessId"
:
v
.
Id
,
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"获取评估内容"
+
err
.
Error
())
}
row
:=
map
[
string
]
string
{}
for
_
,
vv
:=
range
contentList
{
name
:=
fmt
.
Sprintf
(
"%s-%s"
,
vv
.
Category
,
vv
.
Name
)
if
kk
,
ok
:=
keyMap
[
name
];
ok
{
row
[
kk
]
=
vv
.
Value
}
}
changeableRows
[
v
.
TargetUser
.
UserId
]
=
row
}
//获取360邀请评估完成情况
//我评估别人,被邀请评估
cnnt
,
_
,
err
:=
assessRepo
.
Find
(
map
[
string
]
interface
{}{
"staffAssessTaskId"
:
param
.
AssessTaskId
,
"executorId"
:
param
.
ExecutorId
,
"typesList"
:
[]
string
{
string
(
domain
.
AssessInviteDiffSuper
),
string
(
domain
.
AssessInviteSameSuper
)},
"status"
:
domain
.
StaffAssessUncompleted
,
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
TRANSACTION_ERROR
,
"获取个人的评估环节"
+
err
.
Error
())
}
assessTaskData
,
err
:=
assessTaskRepo
.
FindOne
(
map
[
string
]
interface
{}{
"id"
:
param
.
AssessTaskId
,
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
TRANSACTION_ERROR
,
"获取评估任务"
+
err
.
Error
())
}
if
err
:=
transactionContext
.
CommitTransaction
();
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
//
TODO
评估填写数据行转列
//评估填写数据行转列
tableHeader
:=
[]
adapter
.
ListTableHeader
{
{
Key
:
"userName"
,
Name
:
"姓名"
},
{
Key
:
"status"
,
Name
:
"状态"
},
{
Key
:
"types"
,
Name
:
"360°评估关系"
},
{
Key
:
"endTime"
,
Name
:
"360°评估截止日期"
},
}
tableHeader
=
append
(
tableHeader
,
changeableHeader
...
)
listData
:=
[]
map
[
string
]
string
{}
for
_
,
v
:=
range
assessList
{
m
:=
map
[
string
]
string
{
"userName"
:
v
.
TargetUser
.
UserName
,
"userId"
:
strconv
.
Itoa
(
v
.
TargetUser
.
UserId
),
"status"
:
string
(
v
.
Status
),
"types"
:
string
(
v
.
Types
),
"endTime"
:
v
.
EndTime
.
Local
()
.
Format
(
"2006-01-02 15:04:05"
),
"assessId"
:
strconv
.
Itoa
(
v
.
Id
),
}
if
row
,
ok
:=
changeableRows
[
v
.
TargetUser
.
UserId
];
ok
{
for
k
,
v
:=
range
row
{
m
[
k
]
=
v
}
}
else
{
for
_
,
v
:=
range
changeableHeader
{
m
[
v
.
Key
]
=
""
}
}
listData
=
append
(
listData
,
m
)
}
_
=
tableHeader
result
:=
adapter
.
ListInviteUserAssessResp
{
TableHeader
:
tableHeader
,
List
:
listData
,
Total
:
cnt
,
}
for
_
,
v
:=
range
assessTaskData
.
StepList
{
if
v
.
LinkNodeType
==
domain
.
LinkNodeAllAssessment
{
result
.
LinkNodeId
=
v
.
LinkNodeId
result
.
LinkNodeName
=
v
.
LinkNodeName
result
.
LintNodeDesc
=
fmt
.
Sprintf
(
"截止时间 %s 待评估%d人"
,
v
.
EndTime
.
Local
()
.
Format
(
"2006-01-02 15:04:05"
),
cnnt
)
}
}
return
&
result
,
nil
}
...
...
@@ -1222,6 +1314,7 @@ func (srv StaffAssessServeice) ListExecutorSupperAssess(param *query.ListSupperA
UserName
:
v
.
TargetUser
.
UserName
,
EndTime
:
v
.
EndTime
.
Local
()
.
Format
(
"2006-01-02 15:04:05"
),
InviteCompleted
:
0
,
Status
:
string
(
v
.
Status
),
InviteTotal
:
5
,
Department
:
""
,
Position
:
""
,
...
...
@@ -1315,6 +1408,8 @@ func (srv StaffAssessServeice) GetAssessInfo(param *query.AssessInfoQuery) (*ada
AssessId
:
assessData
.
Id
,
CycleId
:
assessData
.
CycleId
,
CycleName
:
assessData
.
CycleName
,
LinkNodeId
:
assessData
.
LinkNodeId
,
LinkNodeName
:
assessData
.
LinkNodeName
,
EvaluationProjectId
:
assessData
.
EvaluationProjectId
,
EvaluationProjectName
:
assessData
.
EvaluationProjectName
,
BeginTime
:
assessData
.
BeginTime
.
Local
()
.
Format
(
"2006-01-02 15:04:05"
),
...
...
@@ -1481,7 +1576,7 @@ func (srv StaffAssessServeice) SaveAssessInfo(param *command.SaveAssessInfoComma
},
nil
}
// 获取员工被评估的列表
,类型是360邀请的
// 获取员工被评估的列表
func
(
srv
StaffAssessServeice
)
ListTargetUserAssess
(
param
*
query
.
ListTargetUserAssessQuery
)
(
map
[
string
]
interface
{},
error
)
{
transactionContext
,
err
:=
factory
.
CreateTransactionContext
(
nil
)
if
err
!=
nil
{
...
...
@@ -1508,5 +1603,6 @@ func (srv StaffAssessServeice) ListTargetUserAssess(param *query.ListTargetUserA
if
err
:=
transactionContext
.
CommitTransaction
();
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
return
tool_funs
.
SimpleWrapGridMap
(
int64
(
cnt
),
assessList
),
nil
}
...
...
pkg/port/beego/controllers/staff_assess_controller.go
查看文件 @
78f38f6
...
...
@@ -6,6 +6,7 @@ import (
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/staff_assess/command"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/staff_assess/query"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/application/staff_assess/service"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/domain"
)
type
StaffAssessController
struct
{
...
...
@@ -95,10 +96,8 @@ func (c *StaffAssessController) GetAssessSelfMeInfo() {
c
.
Response
(
data
,
err
)
}
//保存员工自评填写内容
// 获取员工邀请的人
func
(
c
*
StaffAssessController
)
GetAssessInviteUser
()
{
// 获取我邀请的人
func
(
c
*
StaffAssessController
)
GetAssessMeInviteUser
()
{
srv
:=
service
.
NewStaffAssessServeice
()
paramReq
:=
&
query
.
GetAssessInviteUserQuery
{}
err
:=
c
.
BindJSON
(
paramReq
)
...
...
@@ -115,7 +114,7 @@ func (c *StaffAssessController) GetAssessInviteUser() {
}
// 保持员工邀请的人
func
(
c
*
StaffAssessController
)
SaveAssessInviteUser
()
{
func
(
c
*
StaffAssessController
)
SaveAssess
Me
InviteUser
()
{
srv
:=
service
.
NewStaffAssessServeice
()
paramReq
:=
&
command
.
SaveAssessInvite
{}
err
:=
c
.
BindJSON
(
paramReq
)
...
...
@@ -183,7 +182,7 @@ func (c *StaffAssessController) ListMeSupperAssess() {
}
// 获取员工自评详情
func
(
c
*
StaffAssessController
)
GetAssessSelfInfo
()
{
func
(
c
*
StaffAssessController
)
GetAssess
TargetUser
SelfInfo
()
{
srv
:=
service
.
NewStaffAssessServeice
()
paramReq
:=
&
query
.
AssessSelfInfoQuery
{}
err
:=
c
.
BindJSON
(
paramReq
)
...
...
@@ -225,3 +224,19 @@ func (c *StaffAssessController) SaveAssessInfo() {
data
,
err
:=
srv
.
SaveAssessInfo
(
paramReq
)
c
.
Response
(
data
,
err
)
}
// 被评估的员工的评估列表-360评估
func
(
c
*
StaffAssessController
)
ListTargetUserInviteAssess
()
{
srv
:=
service
.
NewStaffAssessServeice
()
paramReq
:=
&
query
.
ListTargetUserAssessQuery
{}
err
:=
c
.
BindJSON
(
paramReq
)
if
err
!=
nil
{
e
:=
application
.
ThrowError
(
application
.
ARG_ERROR
,
"json 解析错误"
+
err
.
Error
())
c
.
Response
(
nil
,
e
)
return
}
paramReq
.
CompanyId
=
1
paramReq
.
Types
=
[]
string
{
string
(
domain
.
AssessInviteSameSuper
),
string
(
domain
.
AssessInviteDiffSuper
)}
data
,
err
:=
srv
.
ListTargetUserAssess
(
paramReq
)
c
.
Response
(
data
,
err
)
}
...
...
pkg/port/beego/routers/staff_assess_router.go
查看文件 @
78f38f6
...
...
@@ -15,16 +15,17 @@ func init() {
// /v1/staff-assess/self/me/list
assessNS
:=
web
.
NewNamespace
(
"/v1/staff-assess"
,
// web.NSBefore(filters.AllowCors(), middlewares.CheckToken()),
web
.
NSCtrlPost
(
"/self/me/list"
,
(
*
controllers
.
StaffAssessController
)
.
AssessSelfMeList
),
//获取我的自评反馈列表
web
.
NSCtrlPost
(
"/self/me/info"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessSelfMeInfo
),
//获取我的自评反馈详情
web
.
NSCtrlPost
(
"/me/invite-user"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessInviteUser
),
//获取邀请的员工
web
.
NSCtrlPost
(
"/me/save-invite-user"
,
(
*
controllers
.
StaffAssessController
)
.
SaveAssessInviteUser
),
//保存我邀请的员工
web
.
NSCtrlPost
(
"/me/invite-user/select"
,
(
*
controllers
.
StaffAssessController
)
.
SelectAssessInviteUser
),
//选择我邀请的员工
web
.
NSCtrlPost
(
"/me/execute/invite/list"
,
(
*
controllers
.
StaffAssessController
)
.
ListMeInviteUserAssess
),
//我要执行的360评估的用户列表
web
.
NSCtrlPost
(
"/me/execute/supper/list"
,
(
*
controllers
.
StaffAssessController
)
.
ListMeSupperAssess
),
//我要执行的360评估的用户列表
web
.
NSCtrlPost
(
"/self/info"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessSelfInfo
),
//获取员工的自评反馈详情
web
.
NSCtrlPost
(
"/info"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessInfo
),
//获取员工评估的详情
web
.
NSCtrlPut
(
"/info"
,
(
*
controllers
.
StaffAssessController
)
.
SaveAssessInfo
),
//保存员工评估的详情
web
.
NSCtrlPost
(
"/self/me/list"
,
(
*
controllers
.
StaffAssessController
)
.
AssessSelfMeList
),
//获取我的自评反馈列表
web
.
NSCtrlPost
(
"/self/me/info"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessSelfMeInfo
),
//获取我的自评反馈详情
web
.
NSCtrlPost
(
"/me/invite-user"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessMeInviteUser
),
//获取邀请的员工
web
.
NSCtrlPost
(
"/me/save-invite-user"
,
(
*
controllers
.
StaffAssessController
)
.
SaveAssessMeInviteUser
),
//保存我邀请的员工
web
.
NSCtrlPost
(
"/me/invite-user/select"
,
(
*
controllers
.
StaffAssessController
)
.
SelectAssessInviteUser
),
//选择我邀请的员工
web
.
NSCtrlPost
(
"/me/execute/invite/list"
,
(
*
controllers
.
StaffAssessController
)
.
ListMeInviteUserAssess
),
//我要执行的360评估的用户列表
web
.
NSCtrlPost
(
"/me/execute/supper/list"
,
(
*
controllers
.
StaffAssessController
)
.
ListMeSupperAssess
),
//我要执行的360评估的用户列表
web
.
NSCtrlPost
(
"/info"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessInfo
),
//通用获取员工评估的详情
web
.
NSCtrlPut
(
"/info"
,
(
*
controllers
.
StaffAssessController
)
.
SaveAssessInfo
),
//通用保存员工评估的详情
web
.
NSCtrlPost
(
"/target-user/invite/list"
,
(
*
controllers
.
StaffAssessController
)
.
ListTargetUserInviteAssess
),
//获取被评估员工评估的详情
web
.
NSCtrlPost
(
"/target-user/self/info"
,
(
*
controllers
.
StaffAssessController
)
.
GetAssessTargetUserSelfInfo
),
//获取被评估员工的自评反馈详情
)
web
.
AddNamespace
(
assessTaskNS
)
...
...
请
注册
或
登录
后发表评论