切换导航条
此项目
正在载入...
登录
allied-creation
/
performance
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
Your Name
2 years ago
提交
6b084bf9dc4465a3958b0fd0ac1c6fe5a326ba46
1 个父辈
334bb8a7
更改查询我参与的评估任务
显示空白字符变更
内嵌
并排对比
正在显示
2 个修改的文件
包含
81 行增加
和
23 行删除
pkg/application/staff_assess/service/service.go
pkg/infrastructure/dao/staff_assess_dao.go
pkg/application/staff_assess/service/service.go
查看文件 @
6b084bf
...
...
@@ -37,27 +37,40 @@ func (srv StaffAssessServeice) SearchAssessTaskMe(param *query.SearchAssessMeQue
defer
func
()
{
_
=
transactionContext
.
RollbackTransaction
()
}()
staffAssessTaskRepo
:=
factory
.
CreateStaffAssessTaskRepository
(
map
[
string
]
interface
{}{
// staffAssessTaskRepo := factory.CreateStaffAssessTaskRepository(map[string]interface{}{
// "transactionContext": transactionContext,
// })
staffAssessTaskRepo
:=
dao
.
NewStaffAssessDao
(
map
[
string
]
interface
{}{
"transactionContext"
:
transactionContext
,
})
var
limit
int
=
20
var
limit
int
=
200
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
assessTaskList
,
err
:=
staffAssessTaskRepo
.
SearchAssessTaskMe
(
param
.
UserId
,
param
.
CompanyId
,
limit
,
offset
)
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"查询评估任务"
+
err
.
Error
())
}
cnt
,
assessTaskList
,
err
:=
staffAssessTaskRepo
.
Find
(
condition
)
cnt
,
err
:=
staffAssessTaskRepo
.
CountAssessTaskMe
(
param
.
UserId
,
param
.
CompanyId
)
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"查询
周期
"
+
err
.
Error
())
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
"查询
评估任务
"
+
err
.
Error
())
}
// 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
err
:=
transactionContext
.
CommitTransaction
();
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
INTERNAL_SERVER_ERROR
,
err
.
Error
())
}
...
...
@@ -200,6 +213,7 @@ func (srv StaffAssessServeice) AssessTaskDesc(param *query.AssessTaskDescQuery)
}
}
if
uncompletedNum
>
0
{
stepItem
.
Status
=
string
(
domain
.
StaffAssessUncompleted
)
stepItem
.
Desc
=
fmt
.
Sprintf
(
"截止日期:%s 待评估%d人"
,
stepItem
.
EndTime
,
uncompletedNum
)
}
}
...
...
@@ -332,15 +346,15 @@ func (srv StaffAssessServeice) AssessSelfList(param *query.AssessSelfListQuery)
// 根据项目评估的配置,创建员工的评估任务
func
(
srv
StaffAssessServeice
)
CreateStaffAssessTask
(
transactionContext
application
.
TransactionContext
,
param
*
command
.
CreateStaffAssessTask
)
(
map
[
string
]
interface
{},
error
)
{
transactionContext
,
err
:=
factory
.
CreateTransactionContext
(
nil
)
if
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
TRANSACTION_ERROR
,
err
.
Error
())
}
if
err
:=
transactionContext
.
StartTransaction
();
err
!=
nil
{
return
nil
,
application
.
ThrowError
(
application
.
TRANSACTION_ERROR
,
err
.
Error
())
}
defer
func
()
{
_
=
transactionContext
.
RollbackTransaction
()
}()
// if err != nil {
// return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
// }
// if err := transactionContext.StartTransaction(); err != nil {
// return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
// }
// defer func() {
// _ = transactionContext.RollbackTransaction()
// }()
log
.
Logger
.
Debug
(
"CreateStaffAssessTask 获取参数"
,
map
[
string
]
interface
{}{
"param"
:
param
,
})
...
...
@@ -454,9 +468,9 @@ func (srv StaffAssessServeice) CreateStaffAssessTask(transactionContext applicat
}
}
if
err
:=
transactionContext
.
CommitTransaction
();
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())
// }
return
map
[
string
]
interface
{}{
"assessTaskId"
:
assessTaskData
.
Id
,
},
nil
...
...
pkg/infrastructure/dao/staff_assess_dao.go
查看文件 @
6b084bf
...
...
@@ -5,6 +5,7 @@ import (
"github.com/go-pg/pg/v10"
pgTransaction
"github.com/linmadan/egglib-go/transaction/pg"
"gitlab.fjmaimaimai.com/allied-creation/performance/pkg/domain"
)
type
StaffAssessDao
struct
{
...
...
@@ -54,3 +55,46 @@ func (d *StaffAssessDao) CountInviteAssessByTargetUser(userIds []int, assessTask
_
,
err
:=
tx
.
Query
(
&
result
,
sqlStr
,
condition
...
)
return
result
,
err
}
// 搜索 executorId 参与的评估任务
func
(
d
*
StaffAssessDao
)
SearchAssessTaskMe
(
executorId
int
,
companyId
int
,
limit
int
,
offset
int
)
([]
*
domain
.
StaffAssessTask
,
error
)
{
if
limit
<
0
{
limit
=
20
}
if
offset
<
0
{
offset
=
0
}
sqlStr
:=
`SELECT DISTINCT staff_assess_task.* FROM staff_assess_task
JOIN staff_assess ON staff_assess_task."id" = staff_assess."staff_assess_task_id"
WHERE staff_assess.company_id=?
and staff_assess.executor->>'userId'='?'
limit ? offset ?
`
tx
:=
d
.
transactionContext
.
PgTx
condition
:=
[]
interface
{}{
companyId
,
executorId
,
limit
,
offset
,
}
result
:=
[]
*
domain
.
StaffAssessTask
{}
_
,
err
:=
tx
.
Query
(
&
result
,
sqlStr
,
condition
...
)
return
result
,
err
}
// 搜索 executorId 参与的评估任务
func
(
d
*
StaffAssessDao
)
CountAssessTaskMe
(
executorId
int
,
companyId
int
)
(
int
,
error
)
{
sqlStr
:=
`SELECT count( DISTINCT staff_assess_task."id") FROM staff_assess_task
JOIN staff_assess ON staff_assess_task."id" = staff_assess."staff_assess_task_id"
WHERE staff_assess.company_id=?
and staff_assess.executor->>'userId'='?'
`
tx
:=
d
.
transactionContext
.
PgTx
condition
:=
[]
interface
{}{
companyId
,
executorId
,
}
result
:=
0
_
,
err
:=
tx
.
QueryOne
(
pg
.
Scan
(
&
result
),
sqlStr
,
condition
...
)
return
result
,
err
}
...
...
请
注册
或
登录
后发表评论