作者 Your Name

Merge branch 'dev-1' into test

-----BEGIN RSA PRIVATE KEY-----
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
-----END RSA PRIVATE KEY-----
... ...
-----BEGIN CERTIFICATE-----
MIIGazCCBVOgAwIBAgIQZBwijHoFToh2kjGwQ1E6bjANBgkqhkiG9w0BAQsFADBc
MQswCQYDVQQGEwJDTjEaMBgGA1UEChMRV29UcnVzIENBIExpbWl0ZWQxMTAvBgNV
BAMMKFdvVHJ1cyBPViBTZXJ2ZXIgQ0EgIFtSdW4gYnkgdGhlIElzc3Vlcl0wHhcN
MjEwMjA0MDAwMDAwWhcNMjIwMzA2MjM1OTU5WjCB0TELMAkGA1UEBhMCQ04xDzAN
BgNVBBETBjM1MDAxNTESMBAGA1UEBwwJ56aP5bee5biCMU8wTQYDVQQJDEbpqazl
sL7ljLrmuZbph4zot68yN+WPtzEj5qW85LqU5qW8NTEw44CBNTEx5a6k77yI6Ieq
6LS46K+V6aqM5Yy65YaF77yJMTAwLgYDVQQKDCfnpo/lu7rkubDkubDkubDkv6Hm
ga/np5HmioDmnInpmZDlhazlj7gxGjAYBgNVBAMMESouZmptYWltYWltYWkuY29t
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy0OxRf+NheQG9epxbrud
wnrzqVgqK5zCuRAkLUgaSMATVXEAiDzJN39om+Q49MmtEk4pXGzKUyzkFJG96PA8
tJq0E+bSDtSK3n+2mjZb6pChmgHwKEX7T8ZVLqJBSrfrI4Z2BJDNEC+3wvVW3zpo
g1RlfKgft6NYUzNLUqE5Mxzq7lpDeRsq+FhzM1sOeEb2dAmUlDDs+7HcR3Kj0ttK
eg+hKqIottQ/H6Tq4c8deEQGnO0+RN3CygyETbYmLuWttI/sUltulWJALIuU81Yr
6uCOq5MSt2WsU8CTuhRwGXSvcQCOFLYppYktoMDOGIBQffmJc/DdT1d35fvdpKbm
+QIDAQABo4ICsTCCAq0wHwYDVR0jBBgwFoAUDUmPFTN7wE+2+zo4Cfw0Fdpg3RQw
HQYDVR0OBBYEFMGZEgzwtp+UhpTAS9nmSxlo9tIlMA4GA1UdDwEB/wQEAwIFoDAM
BgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBJBgNV
HSAEQjBAMDQGCysGAQQBsjEBAgIWMCUwIwYIKwYBBQUHAgEWF2h0dHBzOi8vc2Vj
dGlnby5jb20vQ1BTMAgGBmeBDAECAjA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8v
Y3JsLmNybG9jc3AuY24vV29UcnVzT1ZTZXJ2ZXJDQV8yLmNybDBsBggrBgEFBQcB
AQRgMF4wOAYIKwYBBQUHMAKGLGh0dHA6Ly9haWEuY3Jsb2NzcC5jbi9Xb1RydXNP
VlNlcnZlckNBXzIuY3J0MCIGCCsGAQUFBzABhhZodHRwOi8vb2NzcC5jcmxvY3Nw
LmNuMIIBBQYKKwYBBAHWeQIEAgSB9gSB8wDxAHcARqVV63X6kSAwtaKJafTzfREs
QXS+/Um4havy/HD+bUcAAAF3brV9qAAABAMASDBGAiEAjrXS+1JJW9jag/XfW+kY
oL4sGGDNvcZgV35E0EcGQVACIQCjQh8k5oSFtqo7Qrbx2k3OISjfPSYRXNNsG4Ba
MyDmRwB2AN+lXqtogk8fbK3uuF9OPlrqzaISpGpejjsSwCBEXCpzAAABd261fdAA
AAQDAEcwRQIgcPQQJ3rkCFaQPKwT3rtfQkr0taPzw0KW7yqu+MtmBH0CIQChKeMk
v7Xs0z7J47lM6HTPOU+xXL2riC69LC1KCOS6GTAtBgNVHREEJjAkghEqLmZqbWFp
bWFpbWFpLmNvbYIPZmptYWltYWltYWkuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQBn
+jDy7sZS0gZzwMR4hnZHWqFYcJR3wnk77xr+5Yu2ifhlxaLHE3rEY3xTR9LsPwfW
pdg2McinPCI6vs009NYIpeTiHzVDPzKu2BaUfKj+EHLwZQGfXkNhp3cpqZMiTkr/
YNqf25GXsBa+spwzyHh9MBXXCfWRfdHX7JlH5zyoLNztTp8unxaRYldjghHDA3Q7
8Fyz6OncY3I4U4KKBSq2/TTxveDW6NxTTuJTPOg3/qSIkwdOBLuIzuhxmF4D9wpl
LMHmne2CilVeg73/GAzQt/w7FzmdvaHPAOVYWzdaTNALiXJxbi7EyO8q/uNK0GqY
hljMsnA1hApG+/2sOP/P
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
BgLnLPfoVs0LZODa1slb+dG5ZBSn6dk+ZAEi
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIF4TCCA8mgAwIBAgIQHQgpVDhMv3SvabmRFpvwLTANBgkqhkiG9w0BAQwFADCB
... ...
package command
type QueryAssessRemark struct {
ProjectId int `json:"projectId"`
LevelValue string `json:"levelValue"`
Category string `json:"category"`
Name string `json:"name"`
TargetUserId int `json:"targetUserId"`
}
... ...
... ... @@ -2017,3 +2017,44 @@ func (srv *SummaryEvaluationService) ListExecutorNowEvaluationSelf(param *comman
result := tool_funs.SimpleWrapGridMap(int64(cnt), listResult)
return result, nil
}
// SearchAssessRemark
func (srv *SummaryEvaluationService) SearchAssessRemark(param *command.QueryAssessRemark) (map[string][]map[string]string, error) {
transactionContext, err := factory.CreateTransactionContext(nil)
if err != nil {
return nil, err
}
if err := transactionContext.StartTransaction(); err != nil {
return nil, application.ThrowError(application.TRANSACTION_ERROR, err.Error())
}
defer func() {
_ = transactionContext.RollbackTransaction()
}()
assessDao := dao.NewStaffAssessDao(map[string]interface{}{"transactionContext": transactionContext})
data, err := assessDao.SearchAssessSelfContentRemark(param.ProjectId, param.TargetUserId, param.Category, param.Name, param.LevelValue)
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())
}
listData := []map[string]string{}
for _, val := range data {
remark := ""
for _, val2 := range val.Remark {
remark = remark + val2.RemarkText + "\n"
}
d := map[string]string{
"beginDay": val.BeginDay,
"category": val.Category,
"name": val.Name,
"remark": remark,
}
listData = append(listData, d)
}
result := map[string][]map[string]string{
"list": listData,
}
return result, nil
}
... ...
... ... @@ -1375,3 +1375,38 @@ func (d *StaffAssessDao) SearchExecutorAssessAfterNow(executorId int, companyId
_, err := tx.Query(&result, sqlStr, condition1...)
return result, err
}
type AssessSelfContentRemark struct {
Category string `pg:"category"` //评估的分类
Name string `pg:"name"` //名称
Remark []domain.AssessContemtRemark `pg:"remark"`
BeginDay string `pg:"begin_day"` //开始的天数
LevelValue string `pg:"level_value"`
}
func (d *StaffAssessDao) SearchAssessSelfContentRemark(projectId int, targetUserId int, category string, name string, levalvalue string) ([]AssessSelfContentRemark, error) {
sqlStr := ` select
staff_assess_content.level_value ,
staff_assess_content.category ,
staff_assess_content."name" ,
staff_assess_content.remark ,
to_char(staff_assess.begin_time at time zone 'PRC', 'YYYY-MM-DD') as begin_day
from staff_assess_content
join staff_assess on staff_assess_content.staff_assess_id = staff_assess.id
where 1=1
and staff_assess.deleted_at isnull
and staff_assess_content.category =?
and staff_assess_content."name" = ?
and staff_assess_content.level_value =?
and staff_assess.evaluation_project_id=?
and target_user ->>'userId'='?'
ORDER BY staff_assess.begin_time `
var result []AssessSelfContentRemark
condition := []interface{}{
category, name, levalvalue, projectId, targetUserId,
}
tx := d.transactionContext.PgTx
_, err := tx.Query(&result, sqlStr, condition...)
return result, err
}
... ...
... ... @@ -370,3 +370,17 @@ func (c *SummaryEvaluationController) ListExecutorEvaluationSelf() {
data, err := srv.ListExecutorNowEvaluationSelf(param)
c.Response(data, err)
}
// 获取现在待执行的综合自评
func (c *SummaryEvaluationController) SearchAssessRemark() {
srv := service.NewSummaryEvaluationService()
param := &command.QueryAssessRemark{}
err := c.BindJSON(param)
if err != nil {
e := application.ThrowError(application.ARG_ERROR, "json 解析错误"+err.Error())
c.Response(nil, e)
return
}
data, err := srv.SearchAssessRemark(param)
c.Response(data, err)
}
... ...
... ... @@ -36,6 +36,7 @@ func init() {
web.NSCtrlPost("/evaluation-finish/all/export", (*controllers.SummaryEvaluationController).ExportAllEvaluationFinish),
web.NSCtrlGet("/evaluation-self/now", (*controllers.SummaryEvaluationController).ListExecutorEvaluationSelf),
//
web.NSCtrlPost("/staff_assess/self/remark", (*controllers.SummaryEvaluationController).SearchAssessRemark),
)
web.AddNamespace(summaryNS)
}
... ...