123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- package jy
- import (
- "app.yhyue.com/moapp/jybase/go-xweb/httpsession"
- "app.yhyue.com/moapp/jypkg/middleground"
- )
- var SwitchService = &switchService{
- SessionKey: "vSwitch",
- Member: "m",
- Vip: "v",
- Free: "",
- Entniche: "s",
- }
- //切换超级订阅、大会员服务
- type switchService struct {
- SessionKey string
- Member string
- Vip string
- Free string
- Entniche string
- }
- /* 获取当前所选的服务类型
- * @param session
- * @param mongodb
- * @return string 服务类型
- */
- func (s *switchService) Get(session *httpsession.Session, middleground middleground.Middleground) string {
- //userId, _ := session.Get("userId").(string)
- v, _ := session.Get(s.SessionKey).(string)
- data := GetBigVipUserBaseMsg(session, middleground)
- //u, ok := m.FindById("user", userId, `{"i_member_status":1,"i_vip_status":1}`)
- if data != nil {
- if i_member_status := data.Status; v == s.Member && i_member_status > 0 {
- return s.Member
- } else if i_vip_status := data.VipStatus; v == s.Vip && i_vip_status > 0 {
- return s.Vip
- } else if i_member_status > 0 {
- session.Set(s.SessionKey, s.Member)
- return s.Member
- } else if i_vip_status > 0 {
- session.Set(s.SessionKey, s.Vip)
- return s.Vip
- }
- }
- session.Del(s.SessionKey)
- return s.Free
- }
- func (s *switchService) GetEntniche(session *httpsession.Session, middleground middleground.Middleground) string {
- sessMap := session.GetMultiple()
- //userId, _ := sessMap["userId"].(string)
- v, _ := sessMap[s.SessionKey].(string)
- //u, ok := m.FindById("user", userId, `{"i_member_status":1,"i_vip_status":1}`)
- data := GetBigVipUserBaseMsg(session, middleground)
- /* if entId, entUserId := util.IntAll(sessMap["entId"]), util.IntAll(sessMap["entUserId"]); entId > 0 && entUserId > 0 {
- //当前企业是否购买商机管理
- if sql.CountBySql(`SELECT count(1) as count FROM entniche_info a inner join entniche_user b on (a.id=? and a.status=1 and ifnull(a.power_source,0)=0 and b.id=? and b.power=1)`, entId, entUserId) > 0 {
- entniche = true
- }
- }*/
- entniche := data.Data.Entniche.Status > 0
- if data != nil {
- if i_member_status := data.Status; v == s.Member && i_member_status > 0 {
- return s.Member
- } else if v == s.Entniche && entniche {
- return s.Entniche
- } else if i_vip_status := data.VipStatus; v == s.Vip && i_vip_status > 0 {
- return s.Vip
- } else if i_member_status > 0 {
- session.Set(s.SessionKey, s.Member)
- return s.Member
- } else if entniche {
- session.Set(s.SessionKey, s.Entniche)
- return s.Entniche
- } else if i_vip_status > 0 {
- session.Set(s.SessionKey, s.Vip)
- return s.Vip
- }
- }
- session.Del(s.SessionKey)
- return s.Free
- }
- //所选服务是否是大会员
- func (s *switchService) IsMember(session *httpsession.Session, middleground middleground.Middleground) bool {
- return s.GetEntniche(session, middleground) == s.Member
- }
- //所选服务是否是超级订阅
- func (s *switchService) IsVip(session *httpsession.Session, middleground middleground.Middleground) bool {
- return s.Get(session, middleground) == s.Vip
- }
- //所选服务是否是免费
- func (s *switchService) IsFree(session *httpsession.Session, middleground middleground.Middleground) bool {
- return s.Get(session, middleground) == s.Free
- }
|