diff --git a/api/controller/Res.go b/api/controller/Res.go index 391392f..941a14f 100644 --- a/api/controller/Res.go +++ b/api/controller/Res.go @@ -11,6 +11,7 @@ import ( "fmt" "github.com/gin-gonic/gin" "math" + "strconv" "time" ) @@ -138,6 +139,12 @@ func (b *Res) GetResCaseRecordList(c *gin.Context) { return } + projectId, err := strconv.ParseInt(req.ProjectId, 10, 64) + if err != nil { + responses.Fail(c) + return + } + req.PlatformId = platformId if req.StartTime != "" { @@ -287,7 +294,7 @@ func (b *Res) GetResCaseRecordList(c *gin.Context) { user, _ := userDao.GetUserById(v.UserId) if user != nil { // 检测用户是否白名单 - isWhite, _ := projectPlatformWhiteService.CheckProjectPlatformWhiteByUser(user, v.PlatformId) + isWhite, _ := projectPlatformWhiteService.CheckProjectPlatformWhiteByUser(user, projectId, v.PlatformId) if isWhite { response.IsVip = 1 } diff --git a/api/service/ProjectPlatformWhite.go b/api/service/ProjectPlatformWhite.go index b2e5882..3ccc678 100644 --- a/api/service/ProjectPlatformWhite.go +++ b/api/service/ProjectPlatformWhite.go @@ -11,11 +11,21 @@ type ProjectPlatformWhiteService struct { } // CheckProjectPlatformWhiteByUser 检测用户是否属于白名单 -func (r *ProjectPlatformWhiteService) CheckProjectPlatformWhiteByUser(user *model.User, platformId int64) (b bool, err error) { +func (r *ProjectPlatformWhiteService) CheckProjectPlatformWhiteByUser(user *model.User, projectId, platformId int64) (b bool, err error) { + // 获取项目关联平台数据 + projectPlatformDao := dao.ProjectPlatformDao{} + maps := make(map[string]interface{}) + maps["project_id"] = projectId + maps["platform_id"] = platformId + projectPlatform, err := projectPlatformDao.GetProjectPlatform(maps) + if err != nil { + return false, err + } + // 白名单-医生 projectPlatformDoctorDao := dao.ProjectPlatformDoctorDao{} - maps := make(map[string]interface{}) - maps["platform_id"] = platformId + maps = make(map[string]interface{}) + maps["project_platform_id"] = projectPlatform.ProjectPlatformId maps["user_id"] = user.UserId projectPlatformDoctor, _ := projectPlatformDoctorDao.GetProjectPlatformDoctor(maps) if projectPlatformDoctor != nil { @@ -34,7 +44,7 @@ func (r *ProjectPlatformWhiteService) CheckProjectPlatformWhiteByUser(user *mode // 白名单-医院 projectPlatformHospitalDao := dao.ProjectPlatformHospitalDao{} maps = make(map[string]interface{}) - maps["platform_id"] = platformId + maps["project_platform_id"] = projectPlatform.ProjectPlatformId maps["hospital_id"] = user.HospitalId projectPlatformHospital, _ := projectPlatformHospitalDao.GetProjectPlatformHospital(maps) if projectPlatformHospital != nil { @@ -46,7 +56,7 @@ func (r *ProjectPlatformWhiteService) CheckProjectPlatformWhiteByUser(user *mode // 白名单-动态 projectPlatformDynamicDao := dao.ProjectPlatformDynamicDao{} maps = make(map[string]interface{}) - maps["platform_id"] = platformId + maps["project_platform_id"] = projectPlatform.ProjectPlatformId projectPlatformDynamics, _ := projectPlatformDynamicDao.GetProjectPlatformDynamicPreloadList(maps) if len(projectPlatformDynamics) > 0 { area := true