// 通过数组再次赋值,过滤敏感参数,避免普通用户获取敏感信息
// 通过range 获取数组的值 -> 不能修改原数组中结构体的值:
// 通过range获取数组下标 -> 可以修改原数组中结构体的值:
func FIlterSensitiveInformation(list *[]custom_trade_union.CustomActivePosition, c *gin.Context) []custom_trade_union.CustomActivePosition {
filterList := *list
reqUserAuthorityId := utils.GetUserAuthorityId(c)
fmt.Println("reqUserAuthorityId:", reqUserAuthorityId)
// 匿名登录,无用户信息
if reqUserAuthorityId == 0 {
for k, _ := range filterList {
filterList[k].Capital_investmen = nil
filterList[k].District_project_archives = ""
filterList[k].Project_archives = ""
}
} else if reqUserAuthorityId != 1 && reqUserAuthorityId != 888 {
// 是县区用户,则只显示县区 资金来源和县区 项目资料
// 过滤 出 属于县区的资金来源
fmt.Println("县区用户:")
for k, v := range filterList {
tgt := v.Capital_investmen[:0]
for _, ele := range v.Capital_investmen {
if ele.Type == "4" {
tgt = append(tgt, ele)
}
}
filterList[k].Capital_investmen = tgt
// 删除 市的项目档案资料
filterList[k].Project_archives = ""
fmt.Println(tgt, v)
}
}
return filterList
}