Browse Source

Merge branch 'cygx_fix_need_20220920_art_pulishdate' of http://8.136.199.33:3000/hongze/hongze_cygx into debug

xingzai 2 years ago
parent
commit
6b21ee89db

+ 2 - 2
controllers/activity.go

@@ -737,7 +737,7 @@ func (this *ActivityCoAntroller) Detail() {
 		return
 	}
 	if activityInfo.IsLimitPeople > 0 {
-		noPower, err := services.GetShareNoPowe(activityInfo, permissionStr, userType)
+		noPower, err := services.GetShareNoPowe(activityInfo, permissionStr, userType, user)
 		if err != nil {
 			br.Msg = "获取信息失败"
 			br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
@@ -3978,7 +3978,7 @@ func (this *ActivityCoAntroller) SpecialDetail() {
 	}
 	itemAct := new(models.ActivityDetail)
 	itemAct.CustomerTypeIds = activityInfo.CustomerTypeIds
-	noPower, err := services.GetShareNoPowe(itemAct, permissionStr, userType)
+	noPower, err := services.GetShareNoPowe(itemAct, permissionStr, userType, user)
 	if err != nil {
 		br.Msg = "获取信息失败"
 		br.ErrMsg = "获取客户信息失败,Err:" + err.Error()

+ 13 - 0
controllers/article.go

@@ -337,6 +337,19 @@ Loop:
 		detail.IsNeedJump = true
 	}
 
+	// 处理研选下面的路演精华 的报告链接是否跳转
+	if hasPermission == 1 && detail.ArticleId > utils.SummaryArticleId && detail.ArticleTypeId > 0 {
+		articleTYpeDetail, err := models.GetArticleTypeInfo(detail.ArticleTypeId)
+		if err != nil && err.Error() != utils.ErrNoRow() {
+			br.Msg = "获取信息失败"
+			br.ErrMsg = "获取销售信息失败,Err:" + err.Error()
+			return
+		}
+		if articleTYpeDetail != nil {
+			detail.IsShowLinkButton = articleTYpeDetail.IsShowLinkButton
+		}
+		detail.PublishDate = utils.TimeRemoveHms2(detail.PublishDate)
+	}
 	resp := new(models.ArticleDetailResp)
 	resp.HasPermission = hasPermission
 	resp.HaveResearch = haveResearch

+ 24 - 21
controllers/user.go

@@ -251,30 +251,33 @@ func (this *UserController) Detail() {
 			}
 			if companyItem != nil && companyItem.CompanyId > 0 {
 				detail.CompanyName = companyItem.CompanyName
-				if companyItem.Status == "试用" || companyItem.Status == "永续" || companyItem.Status == "正式" {
-					permissionStr, err := models.GetCompanyPermissionByUser(companyItem.CompanyId)
-					if err != nil {
-						br.Msg = "获取信息失败"
-						br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
-						return
-					}
-					permissionStrOld, err := models.GetCompanyPermission(companyItem.CompanyId)
-					if err != nil {
-						br.Msg = "获取信息失败"
-						br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
-						return
-					}
-					permissionStrListOld := strings.Split(permissionStrOld, ",")
-					for _, v := range permissionStrListOld {
-						if strings.Count(permissionStr, v) > 1 {
-							permissionStr = strings.Replace(permissionStr, v+"(主观)", v, -1)
-							permissionStr = strings.Replace(permissionStr, v+"(客观),", "", -1)
-						}
+				//if companyItem.Status == "试用" || companyItem.Status == "永续" || companyItem.Status == "正式" {
+				permissionStr, err := models.GetCompanyPermissionByUser(companyItem.CompanyId)
+				if err != nil {
+					br.Msg = "获取信息失败"
+					br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
+					return
+				}
+				permissionStrOld, err := models.GetCompanyPermission(companyItem.CompanyId)
+				if err != nil {
+					br.Msg = "获取信息失败"
+					br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
+					return
+				}
+				permissionStrListOld := strings.Split(permissionStrOld, ",")
+				for _, v := range permissionStrListOld {
+					if strings.Count(permissionStr, v) > 1 {
+						permissionStr = strings.Replace(permissionStr, v+"(主观)", v, -1)
+						permissionStr = strings.Replace(permissionStr, v+"(客观),", "", -1)
 					}
-					detail.PermissionName = permissionStr
-				} else {
+				}
+
+				detail.PermissionName = permissionStr
+				//} else {
+				if permissionStr == "" {
 					hasPermission = 1
 				}
+				//}
 				detail.SellerName = companyItem.SellerName
 				detail.SellerMobile = companyItem.Mobile
 			} else {

+ 3 - 0
models/activity.go

@@ -185,6 +185,9 @@ type ActivityDetail struct {
 	YidongActivityUrl       string                     `description:"易董活动跳转地址"`
 	AudioLink               bool                       `description:"是否展示回放按钮"`
 	VoiceList               *CygxActivityVoiceReq      `description:"音频数据"`
+	AdminId                 int                        `description:"管理员、销售ID "`
+	IsMakerShow             int                        `description:"是否仅决策人可见 0,否 、1,是"`
+	VisibleRange            int                        `description:"可见范围 1,仅本组可见 、2,全部客户可见"`
 }
 
 type CygxActivityResp struct {

+ 3 - 21
models/article.go

@@ -147,6 +147,9 @@ type ArticleDetail struct {
 	SellerList              []*SellerRep
 	HttpUrl                 string `description:"文章链接跳转地址"`
 	IsNeedJump              bool   `description:"是否需要跳转链接地址"`
+	ReportLink              string `description:"报告链接"`
+	IsShowLinkButton        int    `description:"这种报告类型是否展示查看报告链接"`
+	ArticleTypeId           int    `description:"文章类型ID"`
 }
 
 type ArticleDetailFileLink struct {
@@ -626,27 +629,6 @@ WHERE
 	return
 }
 
-type CygxArticleType struct {
-	ArticleTypeId      int       `orm:"column(article_type_id);pk";description:"文章类型ID"`
-	ArticleTypeName    string    `description:"类型名称"`
-	Sort               int       `description:"排序字段"`
-	CreateTime         time.Time `description:"创建时间"`
-	ModifyTime         time.Time `description:"最后修改时间"`
-	IsSendEs           int       `description:"这种报告类型是否同步到Es"`
-	YanxPermissionId   int       `description:"研选类型所对应的ID"`
-	YanxPermissionName string    `description:"研选类型所对应的名称"`
-	IcoLink            string    `description:"图标链接地址"`
-	IcoLinkM           string    `description:"移动端图标链接地址"`
-}
-
-//报告类型列表
-func GetCygxArticleTypeList() (items []*CygxArticleType, err error) {
-	o := orm.NewOrm()
-	sql := `SELECT * FROM cygx_article_type ORDER BY sort DESC`
-	_, err = o.Raw(sql).QueryRows(&items)
-	return
-}
-
 //通过文章ID获取文章所关联的标的ID
 func GetSubjectIds(articleId int) (subjects string, err error) {
 	sql := ` SELECT

+ 51 - 0
models/article_type.go

@@ -0,0 +1,51 @@
+package models
+
+import (
+	"github.com/beego/beego/v2/client/orm"
+	"time"
+)
+
+type CygxArticleType struct {
+	ArticleTypeId      int       `orm:"column(article_type_id);pk";description:"文章类型ID"`
+	ArticleTypeName    string    `description:"类型名称"`
+	Sort               int       `description:"排序字段"`
+	CreateTime         time.Time `description:"创建时间"`
+	ModifyTime         time.Time `description:"最后修改时间"`
+	IsSendEs           int       `description:"这种报告类型是否同步到Es"`
+	YanxPermissionId   int       `description:"研选类型所对应的ID"`
+	YanxPermissionName string    `description:"研选类型所对应的名称"`
+	IcoLink            string    `description:"图标链接地址"`
+	IcoLinkM           string    `description:"移动端图标链接地址"`
+	IsShowLinkButton   int       `description:"这种报告类型是否展示查看报告链接"`
+}
+
+//详情
+func GetCygxArticleTypeDetailById(activityTypeId int) (item *CygxArticleType, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM cygx_article_type WHERE article_type_id = ? `
+	err = o.Raw(sql, activityTypeId).QueryRow(&item)
+	return
+}
+
+//获取数量
+func GetCygxArticleTypeCount(condition string) (count int, err error) {
+	o := orm.NewOrm()
+	sqlCount := `SELECT COUNT(1) AS count  FROM cygx_article_type WHERE  1=1 ` + condition
+	err = o.Raw(sqlCount).QueryRow(&count)
+	return
+}
+
+//报告类型列表
+func GetCygxArticleTypeList() (items []*CygxArticleType, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM cygx_article_type ORDER BY sort DESC`
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}
+
+func GetArticleTypeInfo(activityTypeId int) (item *CygxArticleType, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT * FROM cygx_article_type   WHERE  article_type_id=? `
+	err = o.Raw(sql, activityTypeId).QueryRow(&item)
+	return
+}

+ 15 - 1
models/send_company_user.go

@@ -241,7 +241,7 @@ func GetWxUserOpLog(createTime string) (items []*WxUserOpLogResp, err error) {
 			wx_user_op_log AS l
 			INNER JOIN wx_user AS u ON u.mobile = l.mobile 
 		WHERE
-			l.log_type IN ( 'add', 'edit', 'import', 'move' )  AND create_time >=  '` + createTime + `'  GROUP BY u.company_id `
+			 l.create_time >=  '` + createTime + `'  GROUP BY u.company_id `
 	_, err = o.Raw(sql).QueryRows(&items)
 	return
 }
@@ -259,6 +259,20 @@ func GetWxUserOpLogDelete(createTime string) (items []*WxUserOpLogDeleteResp, er
 	return
 }
 
+//获取指定时间内被暂停的客户
+func GetWxUserOpLogSuspend(createTime string) (items []*WxUserOpLogDeleteResp, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT
+				* 
+			FROM
+				company_operation_record AS p 
+			WHERE
+				remark = '暂停' 
+				AND p.id IN ( SELECT MAX( p.id ) AS max_id FROM company_operation_record AS p WHERE 1 = 1 AND p.create_time > '` + createTime + `' )  `
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}
+
 //获取指定时间内试用转冻结,冻结转流失的客户
 func GetCompanyFreezeAndLoss(createTime string) (items []*WxUserOpLogResp, err error) {
 	o := orm.NewOrm()

+ 1 - 1
models/shanghai_company_log.go

@@ -46,7 +46,7 @@ func GetCygxShanghaiCompanyLog() (items []*CygxShanghaiCompanyLog, err error) {
 //三十天之后的日志自行删除
 func DeleteCygxShanghaiCompanyLog() (err error) {
 	o := orm.NewOrm()
-	sql := `DELETE FROM cygx_shanghai_company_log WHERE  DATE_SUB(CURDATE(), INTERVAL 30 DAY) > date(create_time)`
+	sql := `DELETE FROM cygx_shanghai_company_log WHERE  DATE_SUB(CURDATE(), INTERVAL 90 DAY) > date(create_time)`
 	_, err = o.Raw(sql).Exec()
 	return
 }

+ 57 - 9
services/activity.go

@@ -329,7 +329,7 @@ func GetUserType(companyId int) (userType int, permissionStrnew string, err erro
 				err = errs
 				return
 			}
-			permissionStr, errs = models.GetCompanyPermissionByUserNoStatus(companyId)
+			permissionStr, errs = models.GetCompanyPermissionByUser(companyId)
 			if errs != nil {
 				err = errs
 				return
@@ -393,7 +393,11 @@ func GetUserType(companyId int) (userType int, permissionStrnew string, err erro
 }
 
 // 校验被分享的用户是否有查看详情的权限
-func GetShareNoPowe(activityInfo *models.ActivityDetail, permissionStr string, userType int) (noPower bool, err error) {
+func GetShareNoPowe(activityInfo *models.ActivityDetail, permissionStr string, userType int, user *models.WxUserItem) (noPower bool, err error) {
+	//如果是弘则的就不进行可见权限校验
+	if user.CompanyId == utils.HZ_COMPANY_ID {
+		return
+	}
 	//var noPower bool
 	if (userType == 1 || userType == 4 || userType == 5) && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(userType)) {
 		noPower = true
@@ -411,6 +415,39 @@ func GetShareNoPowe(activityInfo *models.ActivityDetail, permissionStr string, u
 	if userType == 3 && !strings.Contains(permissionStr, "专家") && !strings.Contains(activityInfo.CustomerTypeIds, strconv.Itoa(3)) {
 		noPower = true
 	}
+	if !noPower {
+		noPower, err = CheckUserPowerByActivityChoose(user, activityInfo)
+	}
+	return
+}
+
+//处理活动本组们是否决策人权限
+func CheckUserPowerByActivityChoose(user *models.WxUserItem, activityInfo *models.ActivityDetail) (noPower bool, err error) {
+	//处理 见范围 1,仅本组可见 、2,全部客户可见
+	if activityInfo.VisibleRange == 1 {
+		adminIds, errAdmin := models.GetSelleridWhichGroup(user.CompanyId, 2)
+		if errAdmin != nil {
+			err = errAdmin
+			return
+		}
+		sliceAdminIds := strings.Split(adminIds, ",")
+		var haveAdminId bool
+		for _, v := range sliceAdminIds {
+			if v == strconv.Itoa(activityInfo.AdminId) {
+				haveAdminId = true
+			}
+		}
+		if !haveAdminId {
+			noPower = true
+		}
+	}
+	//处理 是否仅决策人可见 0,否 、1,是
+	if activityInfo.IsMakerShow == 1 {
+		if user.IsMaker == 0 {
+			noPower = true
+		}
+	}
+	fmt.Println(noPower)
 	return
 }
 
@@ -503,7 +540,8 @@ func GetActivityonditionList(user *models.WxUserItem, activityTypeId, chartPermi
 
 	var condition string
 	var conditionAdmin string
-	var sqlExport string // 专家权限处理
+	var conditionHz string // 弘则权限处理
+	var sqlExport string   // 专家权限处理
 	permissionSqlStr = `  AND art.chart_permission_name  IN (` + permissionNameStr + `)`
 	sqlExport = ` AND (art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%' `
 	if userType == 2 {
@@ -521,10 +559,7 @@ func GetActivityonditionList(user *models.WxUserItem, activityTypeId, chartPermi
 			condition = ` AND art.publish_status = 1  AND art.label != ''  AND art.activity_type_id = ` + activityTypeId
 		}
 	}
-	//活动仅决策人可见
-	if isMaker == 0 {
-		condition += ` AND art.is_maker_show = 0  `
-	}
+
 	//主题
 	if label != "" {
 		condition = ` AND art.label  LIKE '%` + label + `%' `
@@ -581,8 +616,16 @@ func GetActivityonditionList(user *models.WxUserItem, activityTypeId, chartPermi
 	}
 
 	//查询全部可见的数据(是否全部客户可见)
-	condition += ` AND art.visible_range != 1  AND art.publish_status = 1 `
+	//condition += ` AND art.visible_range != 1  AND art.publish_status = 1 `
+	condition += `   AND art.publish_status = 1 `
+	conditionHz = condition
 
+	//活动仅决策人可见
+	if isMaker == 0 {
+		condition += ` AND art.is_maker_show = 0  `
+	}
+	conditionAdmin = condition + `  AND art.visible_range = 1 `
+	condition += `  AND art.visible_range != 1 `
 	if (userType == 2 || userType == 3 || userType == 4) && strings.Contains(permissionStr, "专家") {
 		conditionOr += ` OR (  art.is_limit_people = 1 AND art.customer_type_ids LIKE '%4%'	 ` + condition + `) `
 	}
@@ -602,7 +645,7 @@ func GetActivityonditionList(user *models.WxUserItem, activityTypeId, chartPermi
 			conditionOr += ` OR (  art.scale LIKE '%` + companyProduct.Scale + `%'	 ` + condition + `) `
 		}
 	}
-	conditionAdmin = condition
+
 	if adminIds != "" {
 		conditionOr += ` OR (  art.customer_type_ids LIKE '%` + strconv.Itoa(userType) + `%' ` + ` AND  art.admin_id IN (` + adminIds + `) ` + conditionAdmin + `) `
 		if companyProduct != nil {
@@ -612,6 +655,11 @@ func GetActivityonditionList(user *models.WxUserItem, activityTypeId, chartPermi
 		}
 	}
 
+	//弘则研究下的客户不做权限,限制
+	if user.CompanyId == 16 {
+		conditionOr += ` OR (  art.publish_status = 1 ` + conditionHz + `) `
+	}
+
 	conditionActivity = condition + permissionSqlStr + sqlExport + conditionOr
 	return
 }

+ 7 - 0
services/article.go

@@ -700,6 +700,13 @@ func HandleArticleListByApi(artcleId int) (err error) {
 		fmt.Println("Getres.PublicGetDate Err:", err.Error())
 		return err
 	}
+	item := new(models.CygxShanghaiCompanyLog)
+	item.CreateTime = time.Now()
+	item.Url = clueApiUrl
+	item.Body = ""
+	item.Result = string(body)
+	go models.AddCygxShanghaiCompanyLog(item)
+
 	articleResult := articleResultDate.Data
 	exitMap := make(map[int]int)
 	classMap := make(map[int]int)

+ 141 - 1
services/send_company_user.go

@@ -123,7 +123,7 @@ func DotongbuShangHai(cont context.Context) (err error) {
 			companyIds += strconv.Itoa(v.CompanyId) + ","
 		}
 	}
-	////获取冻结跟流失的
+	////获取冻结跟流失的
 	listFreezeAndLoss, err := models.GetCompanyFreezeAndLoss(updateTime)
 	if err != nil && err.Error() != utils.ErrNoRow() {
 		return err
@@ -133,6 +133,19 @@ func DotongbuShangHai(cont context.Context) (err error) {
 			companyIds += strconv.Itoa(v.CompanyId) + ","
 		}
 	}
+
+	listDeleteUser, err := models.GetWxUserOpLogDelete(updateTime)
+	if err != nil && err.Error() != utils.ErrNoRow() {
+		return err
+	}
+
+	////获取删除客户
+	if len(listDeleteUser) > 0 {
+		for _, v := range listDeleteUser {
+			companyIds += strconv.Itoa(v.CompanyId) + ","
+		}
+	}
+
 	condition = ` AND p.modify_time > ` + "'" + updateTime + "'"
 	companyIds = strings.TrimRight(companyIds, ",")
 
@@ -155,6 +168,9 @@ func DotongbuShangHai(cont context.Context) (err error) {
 		condition = ` AND c.company_id  IN (` + companyIds + ")"
 		DotongbuShangHaApi(condition)
 	}
+
+	//处理被禁用的用户,将禁用用户的状态同步
+	CompanySuspend()
 	return
 }
 
@@ -529,3 +545,127 @@ func GetShangHaiCrmApiToken() (token string, err error) {
 	}
 	return
 }
+
+//处理被禁用的用户,将禁用用户的状态转冻结
+func CompanySuspend() (err error) {
+	var msg string
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			go utils.SendAlarmMsg("同步策略平台处理被禁用的用户,将禁用用户的状态转冻结失败", 2)
+			go utils.SendEmail("同步策略平台处理被禁用的用户,将禁用用户的状态转冻结失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToExpert)
+		}
+	}()
+	var url string
+	accessToken, err := GetShangHaiCrmApiToken()
+	if err != nil {
+		return
+	}
+	updateTime := time.Now().Add(-time.Minute * 22).Format("2006-01-02 15:04:05")
+	listSuspendCompany, err := models.GetWxUserOpLogSuspend(updateTime)
+	if err != nil && err.Error() != utils.ErrNoRow() {
+		return err
+	}
+	fmt.Println("禁用的用户", len(listSuspendCompany))
+	var suspendCompanyIds string
+	if len(listSuspendCompany) > 0 {
+		for _, v := range listSuspendCompany {
+			suspendCompanyIds += strconv.Itoa(v.CompanyId) + ","
+		}
+	} else {
+		return err
+	}
+	fmt.Println(suspendCompanyIds)
+	//同步权益客户
+	if suspendCompanyIds == "" {
+		return err
+	}
+
+	suspendCompanyIds = strings.TrimRight(suspendCompanyIds, ",")
+	condition := ` AND c.company_id  IN (` + suspendCompanyIds + ")"
+
+	companyList, err := models.GetSendCompanyList(condition)
+	if err != nil {
+		msg = "GetSendCompanyList Err:" + err.Error()
+		fmt.Println(err)
+		return err
+	}
+	fmt.Println("权益客户", len(companyList))
+	var companyItems []*models.CompanyJson
+	if len(companyList) > 0 {
+		//url = "https://crm.hzinsights.com/openapi/v1/Customer/batchSyncFiccCustomer?access_token=" + accessToken
+		url = utils.ShangHaiCrmApiLink + "openapi/v1/Customer/batchSyncFiccCustomer?access_token=" + accessToken
+		for k, _ := range companyList {
+			companyList[k].Fe = "权益"
+			companyList[k].Status = "暂停"
+			companyList[k].EndDate = strconv.Itoa(int(companyList[k].EndDateTime.Unix()))
+			//一次同步一百条
+			companyItems = append(companyItems, companyList[k])
+			if (k+1)%100 == 0 {
+				data, err := json.Marshal(companyItems)
+				if err != nil {
+					msg = "companyItems Err:" + err.Error()
+					return err
+				}
+				jsonstr := string(data)
+				jsonstr = "{\"sync_data\": " + jsonstr + " }"
+				SendComapnyToShanghai(url, jsonstr, "权益")
+				companyItems = make([]*models.CompanyJson, 0)
+			}
+		}
+		//如果剩下还有则同步剩下的部分
+		if len(companyItems) > 0 {
+			data, err := json.Marshal(companyItems)
+			if err != nil {
+				msg = "companyItems Err:" + err.Error()
+				return err
+			}
+			jsonstr := string(data)
+			jsonstr = "{\"sync_data\": " + jsonstr + " }"
+			SendComapnyToShanghai(url, jsonstr, "权益")
+			companyItems = make([]*models.CompanyJson, 0)
+		}
+	}
+	//同步FICC客户
+	companyFiccList, err := models.GetSendCompanyFiccList(condition)
+	if err != nil {
+		msg = "GetSendCompanyFiccList Err:" + err.Error()
+		return err
+	}
+
+	fmt.Println("FICC客户", len(companyFiccList))
+	var companyFiccItems []*models.CompanyJson
+	if len(companyFiccList) > 0 {
+		url = utils.ShangHaiCrmApiLink + "openapi/v1/Customer/batchSyncFiccCustomer?access_token=" + accessToken
+		for k, _ := range companyFiccList {
+			companyFiccList[k].Fe = "FICC"
+			companyList[k].Status = "暂停"
+			companyFiccList[k].EndDate = strconv.Itoa(int(companyFiccList[k].EndDateTime.Unix()))
+			//一次同步一百条
+			companyFiccItems = append(companyFiccItems, companyFiccList[k])
+			if (k+1)%100 == 0 {
+				data, err := json.Marshal(companyFiccItems)
+				if err != nil {
+					msg = "companyFiccItems Err:" + err.Error()
+					return err
+				}
+				jsonstr := string(data)
+				jsonstr = "{\"sync_data\": " + jsonstr + " }"
+				SendComapnyToShanghai(url, jsonstr, "FICC")
+				companyFiccItems = make([]*models.CompanyJson, 0)
+			}
+		}
+		//如果剩下还有则同步剩下的部分
+		if len(companyFiccItems) > 0 {
+			data, err := json.Marshal(companyFiccItems)
+			if err != nil {
+				msg = "companyFiccItems Err:" + err.Error()
+				return err
+			}
+			jsonstr := string(data)
+			jsonstr = "{\"sync_data\": " + jsonstr + " }"
+			SendComapnyToShanghai(url, jsonstr, "FICC")
+		}
+	}
+	return
+}

+ 2 - 1
utils/constants.go

@@ -88,6 +88,8 @@ const (
 	KE_JI_ID                         int    = 20
 	ZHI_ZAO_NAME                     string = "智造"
 	ZHI_ZAO_ID                       int    = 19
+	LINK_WX_EXPLAIN                         = "https://mp.weixin.qq.com/s?__biz=Mzg2OTYzODk0Nw==&mid=2247483662&idx=1&sn=3752df99025189b9d77fe658bfc0edbd&chksm=ce98b742f9ef3e54b49986e647dd951a3aad74f323174b252174e0938c264c0562c8ec455106#rd" //用户阅读数据
+	HZ_COMPANY_ID                    int    = 16                                                                                                                                                                                                 // 弘则公司的ID
 )
 
 const (
@@ -95,7 +97,6 @@ const (
 )
 
 const (
-	LINK_WX_EXPLAIN   = "https://mp.weixin.qq.com/s?__biz=Mzg2OTYzODk0Nw==&mid=2247483662&idx=1&sn=3752df99025189b9d77fe658bfc0edbd&chksm=ce98b742f9ef3e54b49986e647dd951a3aad74f323174b252174e0938c264c0562c8ec455106#rd" //用户阅读数据
 	YAN_XUAN__EXPLAIN = "买方研选内容实行阶段,限时免费。也欢迎您向我们提宝贵建议。"
 )