Explorar el Código

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

xingzai hace 5 meses
padre
commit
d11f82d2a4

+ 19 - 0
models/cygx_seller_mobile_map.go

@@ -0,0 +1,19 @@
+package models
+
+import "github.com/beego/beego/v2/client/orm"
+
+//权益销售手机号映射关系表
+
+type CygxSellerMobileMap struct {
+	RealName       string `description:"销售姓名"`
+	Mobile         string `description:"销售手机号"`
+	ServerRealName string `description:"服务销售姓名"`
+	ServerMobile   string `description:"服务销售手机号"`
+}
+
+func GetCygxSellerMobileMap() (items []*CygxSellerMobileMap, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT *  FROM cygx_seller_mobile_map  LIMIT  100 `
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}

+ 3 - 2
models/ficc_report/report.go

@@ -137,11 +137,12 @@ func GetByReportId(reportId int) (item *Report, err error) {
 func GetFiccRreportToCygxArticle(condition string, pars []interface{}) (items []*Report, err error) {
 	o := orm.NewOrmUsingDB("rddp")
 	sql := ` SELECT	* FROM report WHERE state = 2 AND  is_public_publish = 1 
-			AND classify_name_first IN ('宏观报告','晨会纪要','调研纪要','数据点评')
-			AND classify_name_second IN ('大类资产周报','晨会纪要','黑色调研','宏观G2观察','人民币汇率双周报','房地产市场跟踪','黄金月报','铜行业数据点评','原油基本面推演','原油船期数据跟踪','EIA原油库存点评')
+			AND classify_name_first IN ('宏观报告','晨会纪要','调研纪要','数据点评','从宏观看商品')
+			AND classify_name_second IN ('大类资产周报','晨会纪要','黑色调研','宏观G2观察','人民币汇率双周报','房地产市场跟踪','黄金月报','铜行业数据点评','原油基本面推演','原油船期数据跟踪','EIA原油库存点评','从宏观看商品')
 			AND IF ( classify_name_first = '宏观报告' , classify_name_second IN  ('大类资产周报','宏观G2观察''人民币汇率双周报''房地产市场跟踪''黄金月报')  ,1=1 )
 			AND IF ( classify_name_first = '晨会纪要' , classify_name_second = '晨会纪要' ,1=1 )
 			AND IF ( classify_name_first = '调研纪要' , classify_name_second = '黑色调研' ,1=1 ) 
+			AND IF ( classify_name_first = '从宏观看商品' , classify_name_second = '从宏观看商品' ,1=1 ) 
 			AND IF ( classify_name_first = '数据点评' , classify_name_second  IN  ('铜行业数据点评','原油基本面推演','原油船期数据跟踪','EIA原油库存点评')  ,1=1 ) ` + condition + ` ORDER BY  modify_time	 DESC   `
 	_, err = o.Raw(sql, pars).QueryRows(&items)
 	return

+ 46 - 39
services/es_comprehensive.go

@@ -1009,6 +1009,7 @@ func GetResourceDataEsList(list []*SearchComprehensiveItem, user *models.WxUserI
 	var yanxuanSpecialIds []int       // 研选专栏
 	var askserieVideoIds []string     //问答系列视频
 	var reportselectionIds []int      //报告精选
+	var ficcreporrtIds []string       //FICC研报
 	//Source      string    `description:"资源类型 报告 :article 、图表 :newchart、微路演 :roadshow、活动 :activity、活动视频:activityvideo、活动音频:activityvoice、专项调研活动:activityspecial 、 本周研究汇总: researchsummary 、 上周纪要汇总 :minutessummary 、晨会精华 :meetingreviewchapt "`
 	for _, v := range list {
 		if v.Source == "article" {
@@ -1044,6 +1045,8 @@ func GetResourceDataEsList(list []*SearchComprehensiveItem, user *models.WxUserI
 			askserieVideoIds = append(askserieVideoIds, strconv.Itoa(v.SourceId))
 		} else if v.Source == "reportselection" {
 			reportselectionIds = append(reportselectionIds, v.SourceId)
+		} else if v.Source == utils.CYGX_OBJ_FICC_REPORT {
+			ficcreporrtIds = append(ficcreporrtIds, strconv.Itoa(v.SourceId))
 		}
 	}
 	//处理文章
@@ -1495,55 +1498,59 @@ func GetResourceDataEsList(list []*SearchComprehensiveItem, user *models.WxUserI
 		}
 	}
 
+	//处理FICC研报
+	if len(ficcreporrtIds) > 0 {
+		pars = make([]interface{}, 0)
+		condition = ` AND a.report_id IN (` + utils.GetOrmInReplace(len(ficcreporrtIds)) + `)`
+		pars = append(pars, ficcreporrtIds)
+
+		listArticle, e := models.GetHomeList(condition, pars, 0, len(ficcreporrtIds))
+		if e != nil {
+			err = errors.New("GetHomeList, Err: " + e.Error())
+			return
+		}
+
+		listArticle, e = HandleArticleCategoryImg(listArticle)
+		if e != nil {
+			err = errors.New("HandleArticleCategoryImg, Err: " + e.Error())
+			return
+		}
+		for _, v := range listArticle {
+			//fmt.Println(v.ArticleId)
+			v.Body = ""
+			v.Source = 0          //配合前端这里强制改为 0
+			v.ArticleResponse = 0 //配合前端这里强制改为 0
+			//v.Source = utils.CYGX_OBJ_YANXUANSPECIAL
+			mapItems[fmt.Sprint("ficcreport", v.ReportId)].FiccReport = v
+		}
+
+		//listArticle, e = HandleArticleCategoryImg(listArticle)
+		//if e != nil {
+		//	err = errors.New("HandleArticleCategoryImg, Err: " + e.Error())
+		//	return
+		//}
+		//for _, v := range listArticle {
+		//	//reportInfoItem := new(ficc_report.ReportDetail)
+		//	//reportInfoItem.ReportInfo.ReportId = v.ReportId
+		//	//reportInfoItem.ReportInfo.PublishTime = utils.StrTimeToTime(v.PublishDate)
+		//	//reportInfoItem.ReportInfo.Title = v.Title
+		//	mapItems[fmt.Sprint("ficcreport", v.ArticleId)].FiccReport = v
+		//
+		//}
+	}
+
 	for _, vList := range list {
 		for _, v := range mapItems {
 			//如果这些类型都为空,那么就不合并
-			if v.Article == nil && v.Newchart == nil && v.Roadshow == nil && v.Activity == nil && v.Activityvideo == nil && v.Activityvoice == nil && v.Activityspecial == nil && v.Researchsummary == nil && v.Minutessummary == nil && v.Meetingreviewchapt == nil && v.ProductInterior == nil && v.IndustrialResource == nil && v.YanxuanSpecial == nil && v.AskserieVideo == nil && v.ReportSelection == nil {
+			if v.Article == nil && v.Newchart == nil && v.Roadshow == nil && v.Activity == nil && v.Activityvideo == nil && v.Activityvoice == nil && v.Activityspecial == nil && v.Researchsummary == nil && v.Minutessummary == nil && v.Meetingreviewchapt == nil && v.ProductInterior == nil && v.IndustrialResource == nil && v.YanxuanSpecial == nil && v.AskserieVideo == nil && v.ReportSelection == nil && v.FiccReport == nil {
 				continue
 			}
-			//if v.Article != nil && v.SourceId == vList.SourceId {
-			//	v.Article.Title = vList.Title
-			//}
-			//if v.Newchart != nil && v.SourceId == vList.SourceId {
-			//	v.Newchart.Title = vList.Title
-			//}
-			//if v.Roadshow != nil && v.SourceId == vList.SourceId {
-			//	v.Roadshow.Title = vList.Title
-			//}
-			//if v.Activity != nil && v.SourceId == vList.SourceId {
-			//	v.Activity.ActivityName = vList.Title
-			//}
-			//if v.Activityvideo != nil && v.SourceId == vList.SourceId {
-			//	v.Activityvideo.Title = vList.Title
-			//}
-			//if v.Activityvoice != nil && v.SourceId == vList.SourceId {
-			//	v.Activityvoice.Title = vList.Title
-			//}
-			//
-			//if v.Activityspecial != nil && v.SourceId == vList.SourceId {
-			//	v.Activityspecial.ResearchTheme = vList.Title
-			//}
-			//if v.Researchsummary != nil && v.SourceId == vList.SourceId {
-			//	v.Researchsummary.Title = vList.Title
-			//}
-			//if v.Minutessummary != nil && v.SourceId == vList.SourceId {
-			//	v.Minutessummary.Title = vList.Title
-			//}
-			//if v.ProductInterior != nil && v.SourceId == vList.SourceId {
-			//	v.ProductInterior.Title = vList.Title
-			//}
-			//if v.IndustrialResource != nil && v.SourceId == vList.SourceId {
-			//	v.IndustrialResource.UpdateTime = vList.PublishDate
-			//}
-
-			//if v.YanxuanSpecial != nil && v.SourceId == vList.SourceId {
-			//	v.YanxuanSpecial.Title = vList.Title
-			//}
 			if v.SourceId == vList.SourceId && v.Source == vList.Source {
 				items = append(items, v)
 			}
 		}
 	}
+
 	for _, v := range items {
 		if v.IndustrialResource != nil {
 			v.Source = "industrialsource"

+ 12 - 0
services/wechat_send_msg.go

@@ -106,6 +106,7 @@ func SendPermissionApplyTemplateMsg(realName, companyName, mobile, applyMethod,
 			err = errors.New("GetRaiSellerByCompanyId, Err: " + e.Error())
 			return
 		}
+
 		//如果有共享销售给共享销售也推模版消息
 		if sealldetail.ShareSellerId > 0 {
 			adminShare, e := models.GetSellerByAdminId(sealldetail.ShareSellerId)
@@ -113,6 +114,17 @@ func SendPermissionApplyTemplateMsg(realName, companyName, mobile, applyMethod,
 				err = errors.New("GetSellerByAdminId, Err: " + e.Error())
 				return
 			}
+			listSellerMobile, e := models.GetCygxSellerMobileMap()
+			if e != nil {
+				err = errors.New("GetCygxSellerMobileMap, Err: " + e.Error())
+				return
+			}
+			//mapMobile := make(map[string]string)
+			for _, vm := range listSellerMobile {
+				if adminShare.Mobile == vm.ServerMobile {
+					adminShare.Mobile = vm.Mobile
+				}
+			}
 			mobileOpenid = sealldetail.Mobile + "," + adminShare.Mobile
 		} else {
 			mobileOpenid = sealldetail.Mobile

+ 15 - 4
services/wx_category_template_msg.go

@@ -79,7 +79,7 @@ func SendPermissionApplyTemplateMsgAdminByYxCategory(req models.ApplyTryReq, com
 	}()
 
 	//潜在客户、未开权益,已开FICC的客户推给王芳,开通权益的客户推给对应销售
-	mobileOpneid := utils.WxMsgTemplateIdAskMsgMobilePublic
+	mobileOpenid := utils.WxMsgTemplateIdAskMsgMobilePublic
 	if companyId > 1 {
 		raiCount, e := models.GetCompanyProductCount(companyId, utils.COMPANY_PRODUCT_RAI_ID)
 		if e != nil {
@@ -99,14 +99,25 @@ func SendPermissionApplyTemplateMsgAdminByYxCategory(req models.ApplyTryReq, com
 					err = errors.New("GetSellerByAdminId, Err: " + e.Error())
 					return
 				}
-				mobileOpneid = sealldetail.Mobile + "," + adminShare.Mobile
+				listSellerMobile, e := models.GetCygxSellerMobileMap()
+				if e != nil {
+					err = errors.New("GetCygxSellerMobileMap, Err: " + e.Error())
+					return
+				}
+				//mapMobile := make(map[string]string)
+				for _, vm := range listSellerMobile {
+					if adminShare.Mobile == vm.ServerMobile {
+						adminShare.Mobile = vm.Mobile
+					}
+				}
+				mobileOpenid = sealldetail.Mobile + "," + adminShare.Mobile
 			} else {
-				mobileOpneid = sealldetail.Mobile
+				mobileOpenid = sealldetail.Mobile
 			}
 		}
 	}
 
-	openIdList, e := models.GetMfyxWxOpenIdByMobileList(mobileOpneid)
+	openIdList, e := models.GetMfyxWxOpenIdByMobileList(mobileOpenid)
 	if e != nil {
 		err = errors.New("GetMfyxWxOpenIdByMobileList, Err: " + e.Error())
 		return err

+ 6 - 6
services/wx_template_msg.go

@@ -127,9 +127,9 @@ func SendWxMsgWithAsk(name, askTime, askMsg, title string, openIdList []*models.
 	var msg string
 	defer func() {
 		if err != nil {
-			go utils.SendEmail("发送模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
-			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,用户名", name, "文章ID:", articleId), 2)
-			utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
+			//go utils.SendEmail("发送模版消息失败"+"【"+utils.APPNAME+"】"+time.Now().Format("2006-01-02 15:04:05"), msg+";Err:"+err.Error(), utils.EmailSendToUsers)
+			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,SendWxMsgWithAsk 用户名", name, "文章ID:", articleId, "Err:"+err.Error()), 2)
+			//utils.FileLog.Info("发送模版消息失败,Err:%s", err.Error())
 		}
 		fmt.Println("line 21", err, msg)
 	}()
@@ -213,7 +213,7 @@ func SendWxMsgWithArticleClassToAdmin(keyword1, keyword2, keyword3, keyword4 str
 	}
 	defer func() {
 		if err != nil {
-			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,文章ID:", articleId), 2)
+			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,SendWxMsgWithArticleClassToAdmin 文章ID:", articleId, "Err:"+err.Error()), 2)
 		}
 	}()
 
@@ -261,7 +261,7 @@ func SendWxMsgWithArticleUserRemind(keyword1, keyword2 string, openIdList []*mod
 	}
 	defer func() {
 		if err != nil {
-			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,文章ID:", articleId), 2)
+			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,SendWxMsgWithArticleUserRemind 文章ID:", articleId, "Err:"+err.Error()), 2)
 		}
 	}()
 
@@ -494,7 +494,7 @@ func SendTemplateMsg(sendUrl string, data []byte, resource string, sendType int,
 func SendWxMsgWithArticleUpdate(first, keyword1, keyword2, keyword3, keyword4 string, item *models.OpenIdList, articleId int) (err error) {
 	defer func() {
 		if err != nil {
-			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,文章ID:", articleId), 2)
+			go utils.SendAlarmMsg(fmt.Sprint("发送报告提问消息提醒模版消息失败,SendWxMsgWithArticleUpdate 文章ID:", articleId, "Err:"+err.Error()), 2)
 		}
 	}()
 	//accessToken, err := models.GetWxAccessTokenByXzs()