浏览代码

Merge branch 'master' of http://8.136.199.33:3000/hongze/hongze_cygx into cygx_10.0

xingzai 1 年之前
父节点
当前提交
fc637df90d
共有 7 个文件被更改,包括 109 次插入54 次删除
  1. 25 0
      controllers/article.go
  2. 2 2
      models/activity.go
  3. 1 1
      services/activity.go
  4. 3 3
      services/article.go
  5. 16 11
      services/chart.go
  6. 59 37
      services/yidong.go
  7. 3 0
      utils/constants.go

+ 25 - 0
controllers/article.go

@@ -86,6 +86,31 @@ func (this *ArticleController) Detail() {
 	if _, ok := lyjhTypeMap[detail.CategoryId]; ok {
 		detail.IsRoadShow = true
 	}
+
+	// 高毅资产的联系人,有权限的行业也不能查看报告详情页。提示无权限页面
+	if detail.ArticleTypeId == 0 && user.CompanyId == utils.GAO_YI_ZI_CHAN_COMPANY_ID {
+		_, sellerName, sellerMobile, popupMsg, err := services.GetUserHasPermissionArticle(user)
+		if err != nil {
+			br.Msg = "获取信息失败"
+			br.ErrMsg = "判断是否已申请过试用失败,Err:" + err.Error()
+			return
+		}
+		resp.PopupMsg = popupMsg
+		resp.HasPermission = 3
+		resp.SellerName = sellerName
+		resp.SellerMobile = sellerMobile
+		detail.Body = ""
+		detail.Abstract = ""
+		detail.BodyText = ""
+		detail.SellerName = sellerName
+		detail.SellerMobile = sellerMobile
+		resp.Detail = detail
+		br.Ret = 200
+		br.Success = true
+		br.Msg = "获取成功"
+		br.Data = resp
+		return
+	}
 	articleCollectMap, _ := services.GetCygxArticleCollectMap(user.UserId)
 	detail.IsCollect = articleCollectMap[detail.ArticleId]
 	if isSendWx == 1 {

+ 2 - 2
models/activity.go

@@ -497,7 +497,7 @@ func UpdateActivitySattusToHaveInHand() (err error) {
 		}
 	}()
 	o := orm.NewOrm()
-	resultTime_30 := time.Now().Add(-time.Minute * 30).Format("2006-01-02 15:04:05")
+	resultTime_30 := time.Now().Add(-time.Minute * 60).Format("2006-01-02 15:04:05") // 线上活动也改成60分钟之后结束了 2023.5.8
 	resultTime_60 := time.Now().Add(-time.Minute * 60).Format("2006-01-02 15:04:05")
 	var sqlOr string
 	var condition string
@@ -520,7 +520,7 @@ func UpdateActivitySattusToComplete() (err error) {
 		}
 	}()
 	o := orm.NewOrm()
-	resultTime_30 := time.Now().Add(-time.Minute * 30).Format("2006-01-02 15:04:05")
+	resultTime_30 := time.Now().Add(-time.Minute * 60).Format("2006-01-02 15:04:05") // 线上活动也改成60分钟之后结束了 2023.5.8
 	resultTime_60 := time.Now().Add(-time.Minute * 60).Format("2006-01-02 15:04:05")
 	//var sqlOr string
 	var condition string

+ 1 - 1
services/activity.go

@@ -1699,7 +1699,7 @@ func ActivityButtonShow(item *models.ActivityDetail) (articleDetail *models.Acti
 		return
 	}
 
-	articleDetail.Expert, _ = GetReportContentTextSub(item.Expert)
+	//articleDetail.Expert, _ = GetReportContentTextSub(item.Expert)
 
 	//专家电话会 1
 	if articleDetail.ActivityTypeId == 1 && articleDetail.IsLimitPeople == 0 && (articleDetail.ActiveState == "1" || articleDetail.ActiveState == "2") {

+ 3 - 3
services/article.go

@@ -1328,7 +1328,7 @@ func DoArticleOnenIdWxTemplateMsg(articleId int) (err error) {
 	if articleInfo.ReportType == 1 && chartPermissionId != utils.CE_LUE_ID && chartPermissionId != utils.GU_SHOU_ID {
 		for _, item := range openidPowerList {
 			first := "您关注的赛道,有新的报告发布/更新,欢迎查看"
-			keyword1 := "所属赛道:" + articleInfo.SubCategoryName
+			keyword1 := "【" + articleInfo.SubCategoryName + "】有报告发布/更新"
 			openIditem := new(models.OpenIdList)
 			openIditem.OpenId = item.OpenId
 			openIditem.UserId = item.UserId
@@ -1406,7 +1406,7 @@ func DoArticleOnenIdWxTemplateMsg(articleId int) (err error) {
 			openIditem.UserId = k
 			openIditem.OpenId = v
 			first := "您关注的赛道,有新的报告发布/更新,欢迎查看"
-			keyword1 := "所属赛道:" + industryName
+			keyword1 := "【" + articleInfo.SubCategoryName + "】有报告发布/更新"
 			mapActivityUserId := make(map[int]string)
 			if articleInfo.IsSummary == 1 {
 				sliceSubjectId, _ := models.GetSubjectIds(articleId)
@@ -1494,7 +1494,7 @@ func DoArticleOnenIdWxTemplateMsg(articleId int) (err error) {
 			openIditem.UserId = k
 			openIditem.OpenId = v
 			first := "您关注的赛道,有新的报告发布/更新,欢迎查看"
-			keyword1 := "所属赛道:" + industryName
+			keyword1 := "【" + articleInfo.SubCategoryName + "】有报告发布/更新"
 			mapActivityUserId := make(map[int]string)
 			if articleInfo.IsSummary == 1 {
 				sliceSubjectId, _ := models.GetSubjectIds(articleId)

+ 16 - 11
services/chart.go

@@ -419,7 +419,7 @@ func GetChartDetailByChartId(cont context.Context) (err error) {
 }
 
 //func init() {
-//	GetChartDetailByChartId()
+//	GetChartDetailByApi(6159)
 //}
 
 // 同步图表详情
@@ -485,17 +485,17 @@ func GetChartDetailByApi(chartId int) (err error) {
 	}
 
 	//如果没有就新增 有就更新
-	if mapChartid[v.ChartId] == 0 {
+	if mapChartid[chartId] == 0 {
 		_, err := models.AddCygxChart(item)
 		if item.PublishStatus == 1 && v.IsActive {
-			go UpdateResourceData(item.ChartId, "newchart", "add", time.Now().Format(utils.FormatDateTime))
+			//go UpdateResourceData(chartId, "newchart", "add", time.Now().Format(utils.FormatDateTime))
 		}
 		if err != nil {
 			return err
 		}
 	} else {
 		if item.PublishStatus == 0 {
-			chartIdsDelete = append(chartIdsDelete, item.ChartId)
+			chartIdsDelete = append(chartIdsDelete, chartId)
 		}
 		updateParams := make(map[string]interface{})
 		updateParams["Title"] = v.Title
@@ -512,20 +512,20 @@ func GetChartDetailByApi(chartId int) (err error) {
 		updateParams["CtagIdTwo"] = v.CtagTwo.Id
 		updateParams["Cover"] = v.Cover
 		updateParams["Iframe"] = v.Iframe
-		whereParam := map[string]interface{}{"chart_id": v.ChartId}
+		whereParam := map[string]interface{}{"chart_id": chartId}
 		err = models.UpdateByExpr(models.CygxChart{}, whereParam, updateParams)
 		if err != nil {
 			return err
 		}
 		if item.PublishStatus == 0 {
-			go UpdateResourceData(item.ChartId, "newchart", "delete", time.Now().Format(utils.FormatDateTime))
+			//go UpdateResourceData(chartId, "newchart", "delete", time.Now().Format(utils.FormatDateTime))
 		}
 	}
 	//}
 	fmt.Println("删除的", chartIdsDelete)
-	if len(chartIdsDelete) > 0 {
-		go Deletenewchart(chartIdsDelete)
-	}
+	//if len(chartIdsDelete) > 0 {
+	//	go Deletenewchart(chartIdsDelete)
+	//}
 
 	//策略平台图表,记录所有,的显示用户收藏使用
 	{
@@ -548,8 +548,13 @@ func GetChartDetailByApi(chartId int) (err error) {
 		item.Cover = v.Cover
 		item.Iframe = v.Iframe
 
+		//如果是软删除就做取消发布处理
+		if !v.IsActive {
+			item.PublishStatus = 0
+		}
+
 		//如果没有就新增 有就更新
-		if mapAllChartid[v.ChartId] == 0 {
+		if mapAllChartid[chartId] == 0 {
 			_, err := models.AddCygxChartAll(item)
 			if err != nil {
 				return err
@@ -570,7 +575,7 @@ func GetChartDetailByApi(chartId int) (err error) {
 			updateParams["CtagIdTwo"] = v.CtagTwo.Id
 			updateParams["Cover"] = v.Cover
 			updateParams["Iframe"] = v.Iframe
-			whereParam := map[string]interface{}{"chart_id": v.ChartId}
+			whereParam := map[string]interface{}{"chart_id": chartId}
 			err = models.UpdateByExpr(models.CygxChartAll{}, whereParam, updateParams)
 			if err != nil {
 				return err

+ 59 - 37
services/yidong.go

@@ -555,7 +555,6 @@ func GetYiDongActivityMeeting(cont context.Context) (err error) {
 	condition += ` AND   activity_time > ` + "'" + startDate + "'"
 	condition += ` AND  activity_time < ` + "'" + endDate + "'"
 	//fmt.Println(startDate)
-
 	artivityListYidong, err := models.GetActivityListByYidong(condition)
 	if err != nil {
 		fmt.Println("GetActivityListByYidong Err:", err.Error())
@@ -627,6 +626,7 @@ func GetYiDongActivityMeeting(cont context.Context) (err error) {
 		}
 		var mobiles []string
 		var mobileStr string
+		var mobileStrMeet string
 		mapActivityAttendanceDetail := make(map[string]*models.CygxActivityAttendanceDetail)
 		if len(ApifoxModal.Result) > 0 {
 			itemlog := new(models.CygxYidongActivityMeetingApiLog)
@@ -640,6 +640,7 @@ func GetYiDongActivityMeeting(cont context.Context) (err error) {
 			}
 			var itemsUpdate []*models.CygxActivitySignupDetail
 			needAddAttendanc := make([]*models.CygxActivityAttendanceDetail, 0)
+
 			for _, vresult := range ApifoxModal.Result {
 				if vresult.EndTime != "" {
 					mobiles = append(mobiles, vresult.PersonTelephone)
@@ -662,8 +663,23 @@ func GetYiDongActivityMeeting(cont context.Context) (err error) {
 					mapActivityAttendanceDetail[vresult.PersonTelephone].Duration = utils.GetAttendanceDetailSecondsByYiDong(vresult.Duration)
 					itemsUpdate = append(itemsUpdate, itemDetail)
 				}
+
+				item := new(models.CygxActivityAttendanceDetail)
+				item.ActivityId = v.ActivityId
+				item.Mobile = vresult.PersonTelephone
+				if vresult.Duration != "" {
+					item.FirstMeetingTime = vresult.StartTime
+					item.LastMeetingTime = vresult.EndTime
+					item.Duration = vresult.Duration
+					item.IsMeetingStr = 1
+					mobileStrMeet += "'" + vresult.PersonTelephone + "'" + ","
+
+				}
+				mobileStr += "'" + vresult.PersonTelephone + "'" + ","
+				item.CreateTime = time.Now()
+				needAddAttendanc = append(needAddAttendanc, item)
+
 			}
-			fmt.Println(mobiles)
 			lenmobiles := len(mobiles)
 			if lenmobiles > 0 {
 				var parsYd []interface{}
@@ -680,58 +696,64 @@ func GetYiDongActivityMeeting(cont context.Context) (err error) {
 					fmt.Println("UpdateActivitySignupDetailMultiByYiDong Err:", err.Error())
 					return err
 				}
-				var condition string
-				var pars []interface{}
-				condition = ` AND do_fail_type = 0 AND mobile IN (` + utils.GetOrmInReplace(lenmobiles) + `) AND activity_id = ?`
-				pars = append(pars, mobiles, v.ActivityId)
-				listSignup, e := models.GetActivitySignupList(condition, pars)
-				if e != nil {
-					err = errors.New("GetActivitySignupList, Err: " + e.Error())
-					return err
-				}
-
-				for _, vSignup := range listSignup {
-					item := new(models.CygxActivityAttendanceDetail)
-					item.ActivityId = vSignup.ActivityId
-					item.RealName = vSignup.RealName
-					item.Mobile = vSignup.Mobile
-					item.CompanyName = vSignup.CompanyName
-					if mapActivityAttendanceDetail[vSignup.Mobile] != nil {
-						item.FirstMeetingTime = mapActivityAttendanceDetail[vSignup.Mobile].FirstMeetingTime
-						item.LastMeetingTime = mapActivityAttendanceDetail[vSignup.Mobile].LastMeetingTime
-						item.Duration = mapActivityAttendanceDetail[vSignup.Mobile].Duration
-						item.IsMeetingStr = 1
-						mobileStr += "'" + vSignup.Mobile + "'" + ","
-					}
-					item.CreateTime = time.Now()
-					needAddAttendanc = append(needAddAttendanc, item)
-				}
+				//var condition string
+				//var pars []interface{}
+				//condition = ` AND do_fail_type = 0 AND mobile IN (` + utils.GetOrmInReplace(lenmobiles) + `) AND activity_id = ?`
+				//pars = append(pars, mobiles, v.ActivityId)
+				//listSignup, e := models.GetActivitySignupList(condition, pars)
+				//if e != nil {
+				//	err = errors.New("GetActivitySignupList, Err: " + e.Error())
+				//	return err
+				//}
+
+				//for _, vSignup := range listSignup {
+				//	item := new(models.CygxActivityAttendanceDetail)
+				//	item.ActivityId = vSignup.ActivityId
+				//	item.RealName = vSignup.RealName
+				//	item.Mobile = vSignup.Mobile
+				//	item.CompanyName = vSignup.CompanyName
+				//	if mapActivityAttendanceDetail[vSignup.Mobile] != nil {
+				//		item.FirstMeetingTime = mapActivityAttendanceDetail[vSignup.Mobile].FirstMeetingTime
+				//		item.LastMeetingTime = mapActivityAttendanceDetail[vSignup.Mobile].LastMeetingTime
+				//		item.Duration = mapActivityAttendanceDetail[vSignup.Mobile].Duration
+				//		item.IsMeetingStr = 1
+				//		mobileStr += "'" + vSignup.Mobile + "'" + ","
+				//	}
+				//	item.CreateTime = time.Now()
+				//	needAddAttendanc = append(needAddAttendanc, item)
+				//}
 			}
 
 			mobileStr = strings.TrimRight(mobileStr, ",")
 			if mobileStr == "" {
 				mobileStr = "1"
 			}
+			mobileStrMeet = strings.TrimRight(mobileStrMeet, ",")
+			if mobileStrMeet == "" {
+				mobileStrMeet = "1"
+			}
+
 			listUser, err := models.GetWxUserOutboundMobile(mobileStr)
 			if err != nil {
 				fmt.Println("GetWxUserOutboundMobile Err:", err.Error())
 				return err
 			}
-			for k, v := range needAddAttendanc {
+
+			for kAdd, vAdd := range needAddAttendanc {
 				for _, v2 := range listUser {
-					if v2.OutboundMobile == v.Mobile || v2.Mobile == v.Mobile {
-						if needAddAttendanc[k].CompanyId == 0 {
-							needAddAttendanc[k].CompanyId = v2.CompanyId
-							needAddAttendanc[k].SellerName = v2.SellerName
-							needAddAttendanc[k].CompanyName = v2.CompanyName
-							needAddAttendanc[k].IsMeetingStr = 1
+					if v2.OutboundMobile == vAdd.Mobile || v2.Mobile == vAdd.Mobile {
+						if needAddAttendanc[kAdd].CompanyId <= 1 {
+							needAddAttendanc[kAdd].CompanyId = v2.CompanyId
+							needAddAttendanc[kAdd].SellerName = v2.SellerName
+							needAddAttendanc[kAdd].CompanyName = v2.CompanyName
+							//needAddAttendanc[k].IsMeetingStr = 1
 						}
 					}
 				}
 			}
 			//fmt.Println(mobileStr)
 			//参会记录
-			err = models.AddAttendancDetail(needAddAttendanc, v.ActivityId, mobileStr)
+			err = models.AddAttendancDetail(needAddAttendanc, v.ActivityId, mobileStrMeet)
 			if err != nil {
 				fmt.Println("AddAttendancDetail Err:", err.Error())
 				return err
@@ -742,7 +764,7 @@ func GetYiDongActivityMeeting(cont context.Context) (err error) {
 				fmt.Println("AddCygxActivityRestrictSignupByAdmin Err:", err.Error())
 				return err
 			}
-
+			fmt.Println(len(needAddAttendanc))
 			go AddctivitySignupDetailByJmcj(needAddAttendanc, v.ActivityId)
 		}
 	}

+ 3 - 0
utils/constants.go

@@ -167,5 +167,8 @@ const (
 const (
 	ACtIVITY_SPECIAL_EXPLAIN      = "此类调研具体行程尚未确定,待预报名人数满10人后弘则会确定行程并推送给您活动日期,只有在确定行程中再次报名才完成占位。"                        //专项调研说明
 	ACtIVITY_SPECIAL_TRIP_EXPLAIN = "此类调研时间安排已经确定,点击报名后按人次扣除对应机构的服务点数。由于每场活动人数有限,如果不能参加请提前48小时取消,未及时取消导致影响其他客户报名将会维持扣点。" //专项调研说明
+)
 
+const (
+	GAO_YI_ZI_CHAN_COMPANY_ID = 5285 // 高毅资产ID
 )