xingzai 7 meses atrás
pai
commit
fe3eeb229e

+ 39 - 2
controllers/roadshow/calendar.go

@@ -191,6 +191,19 @@ func (this *CalendarController) Add() {
 		return
 	}
 
+	//如果是权益客户,添加销售跟共享销售的信息
+	var productItemRai *company_product.CompanyProduct
+	roleTypeCode := sysUser.RoleTypeCode
+	//如果是权益销售、权益销售组长、权益管理员 添加的路演信息,做销售与共享销售信息关联查看
+	if req.CompanyId > 0 && req.ActivityType == "路演" && (roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER ||
+		roleTypeCode == utils.ROLE_TYPE_CODE_RAI_GROUP || roleTypeCode == utils.ROLE_TYPE_CODE_RAI_ADMIN) {
+		productItemRai, err = company_product.GetCompanyProductByCompanyIdAndProductId(req.CompanyId, utils.COMPANY_PRODUCT_RAI_ID)
+		if err != nil && err.Error() != utils.ErrNoRow() {
+			this.FailWithMessage("客户信息有误!", "获取客户信息失败!Err:"+err.Error())
+			return
+		}
+	}
+
 	rsCalendar := new(roadshow.RsCalendar)
 	rsCalendar.SysUserId = sysUser.AdminId
 	rsCalendar.SysUserRealName = sysUser.RealName
@@ -212,6 +225,10 @@ func (this *CalendarController) Add() {
 	rsCalendar.Source = 0
 	rsCalendar.EnglishCompany = req.EnglishCompany
 	rsCalendar.Title = getTitle(req.ActivityType, req.RoadshowType, req.ActivityCategory, req.RoadshowPlatform, req.Province, req.City)
+	if productItemRai != nil {
+		rsCalendar.SellerId = productItemRai.SellerId
+		rsCalendar.ShareSellerId = productItemRai.ShareSellerId
+	}
 	rsCalendarId, err := roadshow.AddRsCalendar(rsCalendar)
 	if err != nil {
 		this.FailWithMessage("保存失败", "保存日历活动信息失败!Err:"+err.Error())
@@ -327,13 +344,33 @@ func (this *CalendarController) CalendarList() {
 
 	roleTypeCode := adminItem.RoleTypeCode
 	//销售
+	//if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_SELLER ||
+	//	roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER ||
+	//	roleTypeCode == utils.ROLE_TYPE_CODE_FICC_GROUP ||
+	//	roleTypeCode == utils.ROLE_TYPE_CODE_RAI_GROUP ||
+	//	roleTypeCode == utils.ROLE_TYPE_CODE_RAI_ADMIN {
+	//	condition += ` AND a.sys_user_id=?`
+	//	pars = append(pars, adminItem.AdminId)
+	//}
+
 	if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_SELLER ||
-		roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER ||
+		//roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER ||
 		roleTypeCode == utils.ROLE_TYPE_CODE_FICC_GROUP ||
-		roleTypeCode == utils.ROLE_TYPE_CODE_RAI_GROUP ||
+		//roleTypeCode == utils.ROLE_TYPE_CODE_RAI_GROUP ||
+		roleTypeCode == utils.ROLE_TYPE_CODE_FICC_TEAM ||
 		roleTypeCode == utils.ROLE_TYPE_CODE_RAI_ADMIN {
 		condition += ` AND a.sys_user_id=?`
 		pars = append(pars, adminItem.AdminId)
+		//condition += ` AND a.activity_type IN('路演','公开会议') `
+	}
+
+	//权益销售
+	if roleTypeCode == utils.ROLE_TYPE_CODE_RAI_SELLER ||
+		roleTypeCode == utils.ROLE_TYPE_CODE_RAI_GROUP {
+		//if calendarType == 2 {
+		condition += ` AND  ( a.sys_user_id=?  OR a.seller_id=?  OR a.share_seller_id=?  )  `
+		pars = append(pars, adminItem.AdminId, adminItem.AdminId, adminItem.AdminId)
+		//}
 	}
 
 	if roleTypeCode == utils.ROLE_TYPE_CODE_FICC_RESEARCHR ||

+ 4 - 1
models/roadshow/calendar.go

@@ -60,6 +60,8 @@ type RsCalendar struct {
 	IsSynced         int    `description:"是否与上海同步 0:未同步 1:已同步"`
 	UnionCode        string `description:"公开会议联合编码"`
 	EnglishCompany   int    `description:"是否为英文客户: 0-否; 1-是"`
+	SellerId         int    `description:"销售id"`
+	ShareSellerId    int    `description:"共享销售员id"`
 }
 
 type RsCalendarResearcher struct {
@@ -198,7 +200,8 @@ func GetCalendarList(condition string, pars []interface{}, status int, pageLimit
 	if status == 1 {
 		sql += ` ORDER BY b.create_time ASC LIMIT ?,? `
 	} else {
-		sql += ` ORDER BY b.create_time DESC LIMIT ?,? `
+		//sql += ` ORDER BY b.create_time DESC LIMIT ?,? `
+		sql += ` ORDER BY b.start_date DESC , b.start_time DESC  LIMIT ?,? ` // 已处理申请,按照活动开始时间倒序(包括ficc的)
 	}
 	_, err = o.Raw(sql, pars, pageLimit).QueryRows(&list)
 	return

+ 1 - 0
models/tables/company_product/company_product.go

@@ -36,6 +36,7 @@ type CompanyProduct struct {
 	CompanyType      string    `description:"客户类型"`
 	PackageType      int       `description:"套餐类型,0:无,1:大套餐,2:小套餐"`
 	IsFormal         int       `description:"是否已经转正式,0是没有转正式,1是已经转过正式"`
+	ShareSellerId    int       `description:"共享销售员id"`
 }
 
 func GetCompanyProductByCompanyIdAndProductId(companyId, productId int) (item *CompanyProduct, err error) {