切换导航条
此项目
正在载入...
登录
allied-creation
/
performance
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
tangxvhui
2 years ago
提交
26eae9e5464ce5216fc184acebc997fa34236847
1 个父辈
09a2d06c
修复一些问题
隐藏空白字符变更
内嵌
并排对比
正在显示
3 个修改的文件
包含
95 行增加
和
6 行删除
pkg/application/staff_assess/command/save_assess_info.go
pkg/application/staff_assess/service/service.go
pkg/port/beego/controllers/staff_assess_controller.go
pkg/application/staff_assess/command/save_assess_info.go
查看文件 @
26eae9e
...
...
@@ -2,7 +2,9 @@ package command
//保存员工填写评估内容
type
SaveAssessInfoCommand
struct
{
AssessId
int
`json:"assessId"`
AssessId
int
`json:"assessId"`
//
ExecutorId
int
`json:"executorId"`
//填写人的id
CompanyId
int
`json:"companyId"`
//公司id
AssessContent
[]
AssesssContent
`json:"assessContent"`
}
...
...
pkg/application/staff_assess/service/service.go
查看文件 @
26eae9e
...
...
@@ -208,10 +208,7 @@ func (srv StaffAssessServeice) AssessTaskDesc(param *query.AssessTaskDescQuery)
}
}
}
//未参与的,不算在个人的评估环节里
if
stepItem
.
Status
!=
""
{
result
.
StepList
=
append
(
result
.
StepList
,
stepItem
)
}
result
.
StepList
=
append
(
result
.
StepList
,
stepItem
)
}
if
err
:=
transactionContext
.
CommitTransaction
();
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
...
...
@@ -1598,6 +1595,12 @@ func (srv *StaffAssessServeice) getStaffDescrip(transactionContext application.T
departmentRepo
:=
factory
.
CreateDepartmentRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
// //查找员工的部门
// var departmentList []*domain.Department
// if len(userData.DepartmentId) > 0 {
// }
var
supperUserList
[]
*
domain
.
User
if
len
(
userData
.
DepartmentId
)
>
0
{
_
,
departmentList
,
err
:=
departmentRepo
.
Find
(
map
[
string
]
interface
{}{
...
...
@@ -1659,7 +1662,13 @@ func (srv StaffAssessServeice) SaveAssessInfo(param *command.SaveAssessInfoComma
if
endTimeInt
<
time
.
Now
()
.
Unix
()
{
return
nil
,
application
.
ThrowError
(
application
.
BUSINESS_ERROR
,
"当前环节已过截止时间,提交后无法修改内容"
)
}
//检查执行人
if
assessData
.
CompanyId
!=
param
.
CompanyId
{
return
nil
,
application
.
ThrowError
(
application
.
BUSINESS_ERROR
,
"当前用户不是评估的执行人"
)
}
if
assessData
.
Executor
.
UserId
!=
param
.
ExecutorId
{
return
nil
,
application
.
ThrowError
(
application
.
BUSINESS_ERROR
,
"当前用户不是评估的执行人"
)
}
assessContentRepo
:=
factory
.
CreateStaffAssessContentRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
...
...
@@ -1763,3 +1772,78 @@ func (srv StaffAssessServeice) ListTargetUserAssess(param *query.ListTargetUserA
return
tool_funs
.
SimpleWrapGridMap
(
int64
(
cnt
),
assessList
),
nil
}
//获取员工的上级是谁 ,TODO
func
(
srv
StaffAssessServeice
)
getStaffSuper
(
transactionContext
application
.
TransactionContext
,
targetUser
domain
.
User
)
([]
domain
.
User
,
error
)
{
departmentRepo
:=
factory
.
CreateDepartmentRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
userRepo
:=
factory
.
CreateUserRepository
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
var
departmemtList
[]
*
domain
.
Department
var
err
error
if
len
(
targetUser
.
DepartmentId
)
>
0
{
_
,
departmemtList
,
err
=
departmentRepo
.
Find
(
map
[
string
]
interface
{}{
"ids"
:
targetUser
.
DepartmentId
,
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"获取员工的部门列表"
+
err
.
Error
())
}
}
if
len
(
departmemtList
)
==
0
{
}
//获取部门管理员
var
chargeUserIds
[]
int64
var
targetUserAsManager
*
domain
.
Department
loop
:
for
_
,
v
:=
range
departmemtList
{
if
len
(
v
.
ChargeUserIds
)
==
0
{
continue
}
//检查员工自身是否是管理员
for
_
,
vv
:=
range
v
.
ChargeUserIds
{
if
vv
==
targetUser
.
Id
{
targetUserAsManager
=
v
break
loop
}
}
chargeUserIds
=
append
(
chargeUserIds
,
v
.
ChargeUserIds
...
)
}
if
targetUserAsManager
!=
nil
{
//清空原有的管理员
chargeUserIds
=
[]
int64
{}
//员工自身是否是管理员,查找父级部门
_
,
parentDepartment
,
err
:=
departmentRepo
.
Find
(
map
[
string
]
interface
{}{
"id"
:
targetUserAsManager
.
ParentId
,
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"获取员工现在部门的父级"
+
err
.
Error
())
}
for
_
,
v
:=
range
parentDepartment
{
chargeUserIds
=
append
(
chargeUserIds
,
v
.
ChargeUserIds
...
)
}
}
var
chargeUserList
[]
*
domain
.
User
if
len
(
chargeUserIds
)
>
0
{
_
,
chargeUserList
,
err
=
userRepo
.
Find
(
map
[
string
]
interface
{}{
"ids"
:
chargeUserIds
,
})
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"获取主管员工数据"
+
err
.
Error
())
}
}
if
len
(
chargeUserList
)
==
0
{
//如果都找不到数据
}
// _, chargeUserList, err := userRepo.Find(map[string]interface{}{
// "ids": chargeUserIds,
// })
return
nil
,
nil
}
...
...
pkg/port/beego/controllers/staff_assess_controller.go
查看文件 @
26eae9e
...
...
@@ -237,6 +237,9 @@ func (c *StaffAssessController) SaveAssessInfo() {
c
.
Response
(
nil
,
e
)
return
}
userReq
:=
middlewares
.
GetUser
(
c
.
Ctx
)
paramReq
.
ExecutorId
=
int
(
userReq
.
UserId
)
paramReq
.
CompanyId
=
int
(
userReq
.
CompanyId
)
data
,
err
:=
srv
.
SaveAssessInfo
(
paramReq
)
c
.
Response
(
data
,
err
)
}
...
...
请
注册
或
登录
后发表评论