wangshan 3 жил өмнө
parent
commit
34af977278

+ 6 - 8
src/jfw/modules/bigmember/src/service/use/use.go

@@ -432,10 +432,9 @@ func (u *Use) Attachment() {
 		status := BaseMsg.Status
 		if status <= 0 {
 			//判断免费用户是否有留资下载权限
-			if BaseMsg.FreeFile == 1 {
+			if _, _, freeFileNum := jy.FreeExperience(userid); freeFileNum == 1 {
 				//免费用户下载后取消下载权限
-				redis.PutKV(fmt.Sprintf("article_attach_%s", userid), -1)
-				jy.ClearBigVipUserPower(userid)
+				redis.PutKV(fmt.Sprintf(jy.PowerCacheFileKey, userid), -1)
 			} else {
 				for _, v := range m {
 					for k, _ := range v {
@@ -622,11 +621,10 @@ func (u *Use) IsAdd() {
 		d["viper"] = bigPower.Vip_BuySet.Upgrade == 1
 		d["isSubCount"] = bigPower.Pid != ""
 		d["is_member_trial"] = bigPower.HasTrial
-		d["entniche"] = false                       //是否是商机管理用户
-		d["freeEntPort"] = bigPower.FreeEntPort     //免费用户可查看企业画像次数
-		d["freeBuyerPort"] = bigPower.FreeBuyerPort //免费用户可查看采购单位画像次数
-		d["freeFile"] = bigPower.FreeFile           //免费用户可以进行附件下载次数
-		d["isUpgrade"] = bigPower.IsUpgrade         //是否是升级后的免费用户  默认false
+		d["entniche"] = false //是否是商机管理用户
+		//免费用户可查看企业画像次数//免费用户可查看采购单位画像次数//免费用户可以进行附件下载次数
+		d["freeEntPort"], d["freeBuyerPort"], d["freeFile"] = jy.FreeExperience(userid)
+		d["isUpgrade"] = bigPower.IsUpgrade //是否是升级后的免费用户  默认false
 		//新用户->新订阅设置页面
 		if config.Config.NewFreeUser < bigPower.Registedate {
 			d["isUpgrade"] = true

+ 17 - 15
src/jfw/modules/common/src/qfw/util/jy/bigVipPower.go

@@ -27,11 +27,11 @@ type BigVipBaseMsg struct {
 	VipStatus  int    `json:"vip_status"` //超级订阅状态
 	Vip_BuySet BuySet `json:"vip_buyset"` //超级订阅套餐内容
 
-	FreeEntPort   int   `json:"freeEntPort"`   //免费用户可查看企业画像次数
-	FreeBuyerPort int   `json:"freeBuyerPort"` //免费用户可查看采购单位画像次数
-	FreeFile      int   `json:"freeFile"`      //免费用户可进行附件下载次数
-	IsUpgrade     bool  `json:"isUpgrade"`     //是否是免费用户订阅升级用户 默认true
-	Registedate   int64 `json:"registedate"`   //用户注册时间
+	IsUpgrade   bool  `json:"isUpgrade"`   //是否是免费用户订阅升级用户 默认true
+	Registedate int64 `json:"registedate"` //用户注册时间
+	// FreeEntPort   int   `json:"freeEntPort"`   //免费用户可查看企业画像次数
+	// FreeBuyerPort int   `json:"freeBuyerPort"` //免费用户可查看采购单位画像次数
+	// FreeFile      int   `json:"freeFile"`      //免费用户可进行附件下载次数
 }
 
 //超级订阅购买内容
@@ -47,16 +47,22 @@ const (
 	BigmemberServiceTable   = "bigmember_service"
 	BigmemberUserPowerTable = "bigmember_service_user"
 
-	PowerCacheDb  = "other"
-	PowerCacheKey = "bigmember_power_3_%s"
-	OneDay        = 60 * 60 * 24
-	PowerCacheEntPortKey   = "ent_portrait_%s"
-	PowerCacheBuyerPortKey = "buyer_portrait_%s"
-	PowerCacheFileKey      = "article_attach_%s"
+	PowerCacheDb           = "other"
+	PowerCacheKey          = "bigmember_power_3_%s"
+	OneDay                 = 60 * 60 * 24
+	PowerCacheEntPortKey   = "free_ent_portrait_%s"
+	PowerCacheBuyerPortKey = "free_buyer_portrait_%s"
+	PowerCacheFileKey      = "free_article_attach_%s"
 	UserUpdateAreaKey      = "free_area_num_%s_%s"
 	BaseAreaNum            = 1
 )
 
+//免费用户体验会员功能权限
+//免费用户在企业画像/采购单位画像/附件下载留资 留资成功后用户才有功能使用次数
+func FreeExperience(userId string) (int, int, int) {
+	return redis.GetInt(PowerCacheDb, fmt.Sprintf(PowerCacheEntPortKey, userId)), redis.GetInt(PowerCacheDb, fmt.Sprintf(PowerCacheBuyerPortKey, userId)), redis.GetInt(PowerCacheDb, fmt.Sprintf(PowerCacheFileKey, userId))
+}
+
 //初始化大会员权益
 func InitBigVipService(mysql *mysql.Mysql) {
 	serviceList := mysql.Find(BigmemberServiceTable, nil, "id,s_url_front,s_url_back", "id", -1, -1)
@@ -137,10 +143,6 @@ func GetBigVipUserBaseMsg(userId string, mysql *mysql.Mysql, mg MongodbSim) *Big
 		}
 		//免费用户画像和附件下载权限
 		if userPower.Status <= 0 && userPower.VipStatus <= 0 {
-			//免费用户在企业画像/采购单位画像/附件下载留资 留资成功后用户才有功能使用次数
-			userPower.FreeEntPort = redis.GetInt(PowerCacheDb, fmt.Sprintf(PowerCacheEntPortKey, userId))
-			userPower.FreeBuyerPort = redis.GetInt(PowerCacheDb, fmt.Sprintf(PowerCacheBuyerPortKey, userId))
-			userPower.FreeFile = redis.GetInt(PowerCacheDb, fmt.Sprintf(PowerCacheFileKey, userId))
 			o_jy := qutil.ObjToMap((*data)["o_jy"])
 			//"i_newfree":    1, //新免费用户=>新订阅设置页面 20211122
 			if qutil.IntAll((*o_jy)["i_newfree"]) > 0 {