Explorar el Código

优化价格驱动访问记录

hsun hace 2 años
padre
commit
e3ccd78098

+ 39 - 33
models/tables/yb_price_driven_visit_log/entity.go

@@ -4,17 +4,19 @@ import "time"
 
 // YbPriceDrivenVisitLog 研报-价格驱动访问记录表
 type YbPriceDrivenVisitLog struct {
-	ID            int       `gorm:"primaryKey;column:id;type:bigint(20) unsigned;not null" json:"-"`
-	PriceDrivenID int       `gorm:"index:idx_price_driven_id;column:price_driven_id;type:int(10) unsigned;not null" json:"priceDrivenId"` // 价格驱动ID
-	UserID        int       `gorm:"index:idx_user_id;column:user_id;type:int(10) unsigned;not null;default:0" json:"userId"`              // 用户ID
-	Mobile        string    `gorm:"column:mobile;type:varchar(30);not null;default:''" json:"mobile"`                                     // 手机号
-	RealName      string    `gorm:"column:real_name;type:varchar(100);not null;default:''" json:"realName"`                               // 真实姓名
-	NickName      string    `gorm:"column:nick_name;type:varchar(100);not null;default:''" json:"nickName"`                               // 昵称
-	CompanyID     int       `gorm:"column:company_id;type:int(10) unsigned;not null;default:0" json:"companyId"`                          // 客户ID
-	CompanyName   string    `gorm:"column:company_name;type:varchar(100);not null;default:''" json:"companyName"`                         // 客户名称
-	CompanyStatus string    `gorm:"column:company_status;type:varchar(30);not null;default:''" json:"companyStatus"`                      // 客户状态
-	SourceAgent   int       `gorm:"column:source_agent;type:tinyint(4) unsigned;not null;default:1" json:"sourceAgent"`                   // 操作来源,1:小程序,2:小程序 pc 3:弘则研究公众号,4:web pc
-	CreateTime    time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP" json:"createTime"`                         // 创建时间
+	ID                  int       `gorm:"primaryKey;column:id;type:bigint(20) unsigned;not null" json:"-"`
+	PriceDrivenID       int       `gorm:"index:idx_price_driven_id;column:price_driven_id;type:int(10) unsigned;not null" json:"priceDrivenId"`                       // 价格驱动ID
+	ChartPermissionID   int       `gorm:"index:idx_chart_permission_id;column:chart_permission_id;type:int(10) unsigned;not null;default:0" json:"chartPermissionId"` // 品种权限ID
+	ChartPermissionName string    `gorm:"column:chart_permission_name;type:varchar(100);not null;default:''" json:"chartPermissionName"`                              // 品种权限名称
+	UserID              int       `gorm:"index:idx_user_id;column:user_id;type:int(10) unsigned;not null;default:0" json:"userId"`                                    // 用户ID
+	Mobile              string    `gorm:"column:mobile;type:varchar(30);not null;default:''" json:"mobile"`                                                           // 手机号
+	RealName            string    `gorm:"column:real_name;type:varchar(100);not null;default:''" json:"realName"`                                                     // 真实姓名
+	NickName            string    `gorm:"column:nick_name;type:varchar(100);not null;default:''" json:"nickName"`                                                     // 昵称
+	CompanyID           int       `gorm:"column:company_id;type:int(10) unsigned;not null;default:0" json:"companyId"`                                                // 客户ID
+	CompanyName         string    `gorm:"column:company_name;type:varchar(100);not null;default:''" json:"companyName"`                                               // 客户名称
+	CompanyStatus       string    `gorm:"column:company_status;type:varchar(30);not null;default:''" json:"companyStatus"`                                            // 客户状态
+	SourceAgent         int       `gorm:"column:source_agent;type:tinyint(4) unsigned;not null;default:1" json:"sourceAgent"`                                         // 来源:1-小程序 2-小程序 PC 3-弘则研究公众号 4-Web PC
+	CreateTime          time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP" json:"createTime"`                                               // 创建时间
 }
 
 // TableName get sql table name.获取数据库表名
@@ -24,27 +26,31 @@ func (m *YbPriceDrivenVisitLog) TableName() string {
 
 // YbPriceDrivenVisitLogColumns get sql column name.获取数据库列名
 var YbPriceDrivenVisitLogColumns = struct {
-	ID            string
-	PriceDrivenID string
-	UserID        string
-	Mobile        string
-	RealName      string
-	NickName      string
-	CompanyID     string
-	CompanyName   string
-	CompanyStatus string
-	SourceAgent   string
-	CreateTime    string
+	ID                  string
+	PriceDrivenID       string
+	ChartPermissionID   string
+	ChartPermissionName string
+	UserID              string
+	Mobile              string
+	RealName            string
+	NickName            string
+	CompanyID           string
+	CompanyName         string
+	CompanyStatus       string
+	SourceAgent         string
+	CreateTime          string
 }{
-	ID:            "id",
-	PriceDrivenID: "price_driven_id",
-	UserID:        "user_id",
-	Mobile:        "mobile",
-	RealName:      "real_name",
-	NickName:      "nick_name",
-	CompanyID:     "company_id",
-	CompanyName:   "company_name",
-	CompanyStatus: "company_status",
-	SourceAgent:   "source_agent",
-	CreateTime:    "create_time",
+	ID:                  "id",
+	PriceDrivenID:       "price_driven_id",
+	ChartPermissionID:   "chart_permission_id",
+	ChartPermissionName: "chart_permission_name",
+	UserID:              "user_id",
+	Mobile:              "mobile",
+	RealName:            "real_name",
+	NickName:            "nick_name",
+	CompanyID:           "company_id",
+	CompanyName:         "company_name",
+	CompanyStatus:       "company_status",
+	SourceAgent:         "source_agent",
+	CreateTime:          "create_time",
 }

+ 2 - 13
services/community/video.go

@@ -67,22 +67,11 @@ func SaveVideoPlayLog(userInfo user.UserInfo, videoId, sourceAgent int) (errMsg
 		err = errors.New("获取客户信息失败, Err: " + e.Error())
 		return
 	}
-	var companyName, companyStatus string
+	companyName := "潜在客户"
+	companyStatus := "潜在"
 	if companyInfo != nil {
 		companyName = companyInfo.CompanyName
 		companyStatus = companyInfo.Status
-	} else {
-		// 是否是权益用户-视作潜在用户
-		equityCompany, e := company_product.GetByCompany2ProductId(userInfo.CompanyID, 2)
-		if e != nil && e != utils.ErrNoRow {
-			errMsg = "保存失败"
-			err = errors.New("获取客户权益信息失败, Err: " + e.Error())
-			return
-		}
-		if equityCompany != nil {
-			companyName = equityCompany.CompanyName
-			companyStatus = "潜在"
-		}
 	}
 	item := &yb_community_video_play_log.YbCommunityVideoPlayLog{
 		CommunityVideoID: video.CommunityVideoID,

+ 30 - 17
services/price_driven/price_driven.go

@@ -3,6 +3,7 @@ package price_driven
 import (
 	"errors"
 	"hongze/hongze_yb/models/response"
+	"hongze/hongze_yb/models/tables/chart_permission"
 	"hongze/hongze_yb/models/tables/company_product"
 	"hongze/hongze_yb/models/tables/yb_price_driven"
 	"hongze/hongze_yb/models/tables/yb_price_driven_visit_log"
@@ -41,33 +42,45 @@ func SavePriceDrivenVisitLog(priceDrivenId, sourceAgent int, userInfo user.UserI
 		err = errors.New("获取客户信息失败, Err: " + e.Error())
 		return
 	}
-	var companyName, companyStatus string
+	companyName := "潜在客户"
+	companyStatus := "潜在"
 	if companyInfo != nil {
 		companyName = companyInfo.CompanyName
 		companyStatus = companyInfo.Status
-	} else {
-		// 是否是权益用户-视作潜在用户
-		equityCompany, e := company_product.GetByCompany2ProductId(userInfo.CompanyID, 2)
+	}
+	item, e := yb_price_driven.GetPriceDrivenById(priceDrivenId)
+	if e != nil && e != utils.ErrNoRow {
+		errMsg = "保存失败"
+		err = errors.New("获取价格驱动信息失败, Err:" + e.Error())
+		return
+	}
+	permissionId := 0
+	permissionName := ""
+	if item != nil {
+		// 研报10.0这里需要调整成标签,目前急着上线先用着品种
+		chartPermission, e := chart_permission.GetByChartPermissionId(item.ChartPermissionID)
 		if e != nil && e != utils.ErrNoRow {
 			errMsg = "保存失败"
-			err = errors.New("获取客户权益信息失败, Err: " + e.Error())
+			err = errors.New("获取品种权限失败, Err:" + e.Error())
 			return
 		}
-		if equityCompany != nil {
-			companyName = equityCompany.CompanyName
-			companyStatus = "潜在"
+		if chartPermission != nil {
+			permissionId = int(chartPermission.ChartPermissionID)
+			permissionName = chartPermission.PermissionName
 		}
 	}
 	logItem := &yb_price_driven_visit_log.YbPriceDrivenVisitLog{
-		PriceDrivenID: priceDrivenId,
-		UserID:        int(userInfo.UserID),
-		Mobile:        userInfo.Mobile,
-		RealName:      userInfo.RealName,
-		NickName:      userInfo.NickName,
-		CompanyID:     int(userInfo.CompanyID),
-		CompanyName:   companyName,
-		CompanyStatus: companyStatus,
-		SourceAgent:   sourceAgent,
+		PriceDrivenID:       priceDrivenId,
+		ChartPermissionID:   permissionId,
+		ChartPermissionName: permissionName,
+		UserID:              int(userInfo.UserID),
+		Mobile:              userInfo.Mobile,
+		RealName:            userInfo.RealName,
+		NickName:            userInfo.NickName,
+		CompanyID:           int(userInfo.CompanyID),
+		CompanyName:         companyName,
+		CompanyStatus:       companyStatus,
+		SourceAgent:         sourceAgent,
 	}
 	if e := logItem.Create(); e != nil {
 		errMsg = "保存失败"