|
@@ -223,73 +223,55 @@ func GetSpecialSurplusByCompany(companyId int) (specialSurplus string, err error
|
|
|
if companyDetail.Status == "永续" {
|
|
|
specialSurplus = "不限次数"
|
|
|
}
|
|
|
+
|
|
|
+ inheritList, e := cygx.GetCygxActivitySpecialInheritPointsByCompanyId(companyId)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetCygxActivitySpecialInheritPointsByCompanyId, Err: " + e.Error())
|
|
|
+ }
|
|
|
|
|
|
|
|
|
+ chartNameMap := map[string]int{utils.YI_YAO_NAME: 0, utils.XIAO_FEI_NAME: 0, utils.KE_JI_NAME: 0, utils.ZHI_ZAO_NAME: 0}
|
|
|
+ var condition string
|
|
|
+ var pars []interface{}
|
|
|
+
|
|
|
+ condition += ` AND company_id = ? `
|
|
|
+ pars = append(pars, companyId)
|
|
|
+
|
|
|
+
|
|
|
+ condition += ` AND b.create_time >= ? `
|
|
|
+ pars = append(pars, time.Now().Format(utils.FormatYearDate)+"-01-01")
|
|
|
+ listTripBill, e := cygx.GetCygxActivitySpecialTripBillList(condition, pars)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
if companyDetail.Status == "正式" {
|
|
|
userType, _, _, _, _ := GetUserType(companyId)
|
|
|
if userType == 2 {
|
|
|
- var condition string
|
|
|
- var pars []interface{}
|
|
|
-
|
|
|
- condition += ` AND company_id = ? `
|
|
|
- pars = append(pars, companyId)
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- condition += ` AND create_time >= ? `
|
|
|
- pars = append(pars, time.Now().Format(utils.FormatYearDate)+"-01-01")
|
|
|
- listTripBill, e := cygx.GetCygxActivitySpecialTripBill(condition, pars)
|
|
|
- if e != nil {
|
|
|
- err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- var TripBillNum int
|
|
|
+ var tripBillNum int
|
|
|
for _, v := range listTripBill {
|
|
|
|
|
|
|
|
|
|
|
|
- TripBillNum += v.BillDetailed
|
|
|
+ tripBillNum += v.BillDetailed
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
-
|
|
|
- tripRemaining := TripBillNum
|
|
|
+ if len(inheritList) > 0 {
|
|
|
+ for _, v := range inheritList {
|
|
|
+ if v.ChartPermissionId == 0 {
|
|
|
+ tripBillNum += v.Points
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ tripRemaining := tripBillNum
|
|
|
if tripRemaining < 0 {
|
|
|
tripRemaining = 0
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
specialSurplus = strconv.Itoa(tripRemaining) + "次"
|
|
|
-
|
|
|
} else {
|
|
|
- list, e := company.GetCompanyReportPermissionUpgrade(companyId, 2)
|
|
|
+ list, e := company.GetCompanyReportPermissionByCompanyIdAndProductId(companyId, 2)
|
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
err = errors.New("GetCompanyReportPermissionUpgrade, Err: " + e.Error())
|
|
|
}
|
|
@@ -298,44 +280,30 @@ func GetSpecialSurplusByCompany(companyId int) (specialSurplus string, err error
|
|
|
}
|
|
|
var chartPermissionIdSlice []string
|
|
|
mapChartName := make(map[string]int)
|
|
|
+ mapUpgradeId := make(map[int]int)
|
|
|
mapPermissionNameTrip := make(map[string]int)
|
|
|
+ mapInheritChartName := make(map[string]int)
|
|
|
|
|
|
for _, v := range list {
|
|
|
chartPermissionIdSlice = append(chartPermissionIdSlice, strconv.Itoa(v.ChartPermissionId))
|
|
|
-
|
|
|
+
|
|
|
+ if v.IsUpgrade == 1 {
|
|
|
+ mapUpgradeId[v.ChartPermissionId] = 1
|
|
|
+ }
|
|
|
}
|
|
|
- chartList, e := models.GetChartPermissionByIds(chartPermissionIdSlice)
|
|
|
- if e != nil {
|
|
|
- err = errors.New("获取品种信息失败, Err:" + e.Error())
|
|
|
- return
|
|
|
+ chartList := make([]*models.ChartPermission, 0)
|
|
|
+ if len(chartPermissionIdSlice) > 0 {
|
|
|
+ chartList, e = models.GetChartPermissionByIds(chartPermissionIdSlice)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("获取品种信息失败, Err:" + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
if len(chartList) == 0 {
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- var condition string
|
|
|
- var pars []interface{}
|
|
|
-
|
|
|
- condition += ` AND company_id = ? `
|
|
|
- pars = append(pars, companyId)
|
|
|
-
|
|
|
-
|
|
|
- condition += ` AND b.create_time >= ? `
|
|
|
- pars = append(pars, time.Now().Format(utils.FormatYearDate)+"-01-01")
|
|
|
- listTripBill, e := cygx.GetCygxActivitySpecialTripBillList(condition, pars)
|
|
|
- if e != nil {
|
|
|
- err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
|
- return
|
|
|
- }
|
|
|
+
|
|
|
|
|
|
for _, v := range listTripBill {
|
|
|
if v.ActivityId == 0 {
|
|
@@ -344,8 +312,25 @@ func GetSpecialSurplusByCompany(companyId int) (specialSurplus string, err error
|
|
|
mapPermissionNameTrip[v.ChartPermissionName] += v.BillDetailed
|
|
|
}
|
|
|
for _, v := range chartList {
|
|
|
- mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+
|
|
|
+ if _, ok := mapUpgradeId[v.ChartPermissionId]; ok {
|
|
|
+ mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+ } else {
|
|
|
+ mapChartName[v.PermissionName] = mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, v := range inheritList {
|
|
|
+ mapInheritChartName[v.ChartPermissionName] = v.Points
|
|
|
+ }
|
|
|
+ for k, _ := range chartNameMap {
|
|
|
+ if _, ok := mapChartName[k]; ok {
|
|
|
+ if inherit, ok2 := mapInheritChartName[k]; ok2 {
|
|
|
+ mapChartName[k] += inherit
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
for k, v := range mapChartName {
|
|
|
if v > 0 {
|
|
|
specialSurplus += k + strconv.Itoa(v) + "次+"
|
|
@@ -421,7 +406,7 @@ func CheckActivitySpecialUpdatePower(adminId int, activityInfo *cygx.ActivitySpe
|
|
|
}
|
|
|
|
|
|
|
|
|
-func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tripRemaining int,mapChartName map[string]int, err error) {
|
|
|
+func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tripRemaining int, mapChartName map[string]int, err error) {
|
|
|
companyDetail, e := cygx.GetCompanyDetailByIdGroup(companyId)
|
|
|
if e != nil {
|
|
|
err = errors.New("GetCompanyDetailByIdGroup, Err: " + e.Error())
|
|
@@ -438,6 +423,7 @@ func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tri
|
|
|
}
|
|
|
|
|
|
|
|
|
+ chartNameMap := map[string]int{utils.YI_YAO_NAME: 0, utils.XIAO_FEI_NAME: 0, utils.KE_JI_NAME: 0, utils.ZHI_ZAO_NAME: 0}
|
|
|
if companyDetail.Status == "正式" {
|
|
|
|
|
|
userType, _, _, _, _ = GetUserType(companyId)
|
|
@@ -455,55 +441,35 @@ func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tri
|
|
|
err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+ inheritList, e := cygx.GetCygxActivitySpecialInheritPointsByCompanyId(companyId)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetCygxActivitySpecialInheritPointsByCompanyId, Err: " + e.Error())
|
|
|
+ }
|
|
|
if userType == 2 {
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- var TripBillNum int
|
|
|
+
|
|
|
+ var tripBillNum int
|
|
|
for _, v := range listTripBill {
|
|
|
|
|
|
|
|
|
|
|
|
- TripBillNum += v.BillDetailed
|
|
|
+ tripBillNum += v.BillDetailed
|
|
|
+ }
|
|
|
+ if len(inheritList) > 0 {
|
|
|
+ for _, v := range inheritList {
|
|
|
+ if v.ChartPermissionId == 0 {
|
|
|
+ tripBillNum += v.Points
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
- tripRemaining = TripBillNum
|
|
|
+ tripRemaining = tripBillNum
|
|
|
if tripRemaining < 0 {
|
|
|
tripRemaining = 0
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
} else {
|
|
|
- list, e := company.GetCompanyReportPermissionUpgrade(companyId, 2)
|
|
|
+ list, e := company.GetCompanyReportPermissionByCompanyIdAndProductId(companyId, 2)
|
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
err = errors.New("GetCompanyReportPermissionUpgrade, Err: " + e.Error())
|
|
|
}
|
|
@@ -512,31 +478,30 @@ func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tri
|
|
|
}
|
|
|
var chartPermissionIdSlice []string
|
|
|
mapChartName = make(map[string]int)
|
|
|
+ mapUpgradeId := make(map[int]int)
|
|
|
mapPermissionNameTrip := make(map[string]int)
|
|
|
+ mapInheritChartName := make(map[string]int)
|
|
|
|
|
|
for _, v := range list {
|
|
|
chartPermissionIdSlice = append(chartPermissionIdSlice, strconv.Itoa(v.ChartPermissionId))
|
|
|
-
|
|
|
+
|
|
|
+ if v.IsUpgrade == 1 {
|
|
|
+ mapUpgradeId[v.ChartPermissionId] = 1
|
|
|
+ }
|
|
|
}
|
|
|
- chartList, e := models.GetChartPermissionByIds(chartPermissionIdSlice)
|
|
|
- if e != nil {
|
|
|
- err = errors.New("获取品种信息失败, Err:" + e.Error())
|
|
|
- return
|
|
|
+ chartList := make([]*models.ChartPermission, 0)
|
|
|
+ if len(chartPermissionIdSlice) > 0 {
|
|
|
+ chartList, e = models.GetChartPermissionByIds(chartPermissionIdSlice)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("获取品种信息失败, Err:" + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
if len(chartList) == 0 {
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
-
|
|
|
for _, v := range listTripBill {
|
|
|
if v.ActivityId == 0 {
|
|
|
continue
|
|
@@ -544,8 +509,25 @@ func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tri
|
|
|
mapPermissionNameTrip[v.ChartPermissionName] += v.BillDetailed
|
|
|
}
|
|
|
for _, v := range chartList {
|
|
|
- mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+
|
|
|
+ if _, ok := mapUpgradeId[v.ChartPermissionId]; ok {
|
|
|
+ mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+ } else {
|
|
|
+ mapChartName[v.PermissionName] = mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, v := range inheritList {
|
|
|
+ mapInheritChartName[v.ChartPermissionName] = v.Points
|
|
|
}
|
|
|
+ for k, _ := range chartNameMap {
|
|
|
+ if _, ok := mapChartName[k]; ok {
|
|
|
+ if inherit, ok2 := mapInheritChartName[k]; ok2 {
|
|
|
+ mapChartName[k] += inherit
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
for k, v := range mapChartName {
|
|
|
if v > 0 {
|
|
|
specialSurplus += k + strconv.Itoa(v) + "次+"
|
|
@@ -558,8 +540,15 @@ func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tri
|
|
|
}
|
|
|
|
|
|
|
|
|
-func ActivitySpecialCompanyApproval(companyId int,companyName string) (err error) {
|
|
|
+func ActivitySpecialCompanyApproval(companyId int, companyName string) (err error) {
|
|
|
userType, packageType, _, _, _ := GetUserType(companyId)
|
|
|
+
|
|
|
+ inheritList, e := cygx.GetCygxActivitySpecialInheritPointsByCompanyId(companyId)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetCygxActivitySpecialInheritPointsByCompanyId, Err: " + e.Error())
|
|
|
+ }
|
|
|
+ chartNameMap := map[string]int{utils.YI_YAO_NAME: 0, utils.XIAO_FEI_NAME: 0, utils.KE_JI_NAME: 0, utils.ZHI_ZAO_NAME: 0}
|
|
|
+
|
|
|
itemBill := new(cygx.CygxActivitySpecialTripBill)
|
|
|
itemBill.CreateTime = time.Now()
|
|
|
itemBill.CompanyId = companyId
|
|
@@ -570,15 +559,26 @@ func ActivitySpecialCompanyApproval(companyId int,companyName string) (err error
|
|
|
if userType == 2{
|
|
|
packageTypeMap := map[int]int{1: 16, 2: 10}
|
|
|
totalTrip := packageTypeMap[packageType]
|
|
|
- itemBill.BillDetailed = totalTrip
|
|
|
- itemBill.Total = strconv.Itoa(totalTrip) + "次"
|
|
|
+ if len(inheritList) > 0 {
|
|
|
+ for _, v := range inheritList {
|
|
|
+ if v.ChartPermissionId == 0 {
|
|
|
+ itemBill.BillDetailed = totalTrip + v.Points
|
|
|
+ } else {
|
|
|
+ itemBill.BillDetailed = totalTrip
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ itemBill.BillDetailed = totalTrip
|
|
|
+ }
|
|
|
+
|
|
|
+ itemBill.Total = strconv.Itoa(itemBill.BillDetailed) + "次"
|
|
|
if totalTrip == 10 {
|
|
|
itemBill.Content = "45w大套餐转正"
|
|
|
} else {
|
|
|
itemBill.Content = "70w大套餐转正"
|
|
|
}
|
|
|
} else {
|
|
|
- list, e := company.GetCompanyReportPermissionUpgrade(companyId, 2)
|
|
|
+ list, e := company.GetCompanyReportPermissionByCompanyIdAndProductId(companyId, 2)
|
|
|
if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
err = errors.New("GetCompanyReportPermissionUpgrade, Err: " + e.Error())
|
|
|
}
|
|
@@ -587,25 +587,50 @@ func ActivitySpecialCompanyApproval(companyId int,companyName string) (err error
|
|
|
}
|
|
|
var chartPermissionIdSlice []string
|
|
|
mapChartName := make(map[string]int)
|
|
|
+ mapUpgradeId := make(map[int]int)
|
|
|
+ mapInheritChartName := make(map[string]int)
|
|
|
mapPermissionNameTrip := make(map[string]int)
|
|
|
|
|
|
for _, v := range list {
|
|
|
chartPermissionIdSlice = append(chartPermissionIdSlice, strconv.Itoa(v.ChartPermissionId))
|
|
|
+
|
|
|
+ if v.IsUpgrade == 1 {
|
|
|
+ mapUpgradeId[v.ChartPermissionId] = 1
|
|
|
+ }
|
|
|
}
|
|
|
- chartList, e := models.GetChartPermissionByIds(chartPermissionIdSlice)
|
|
|
- if e != nil {
|
|
|
- err = errors.New("获取品种信息失败, Err:" + e.Error())
|
|
|
- return
|
|
|
+ chartList := make([]*models.ChartPermission, 0)
|
|
|
+ if len(chartPermissionIdSlice) > 0 {
|
|
|
+ chartList, e = models.GetChartPermissionByIds(chartPermissionIdSlice)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("获取品种信息失败, Err:" + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
if len(chartList) == 0 {
|
|
|
return
|
|
|
}
|
|
|
for _, v := range chartList {
|
|
|
- mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+
|
|
|
+ if _, ok := mapUpgradeId[v.ChartPermissionId]; ok {
|
|
|
+ mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+ } else {
|
|
|
+ mapChartName[v.PermissionName] = mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for _, v := range inheritList {
|
|
|
+ mapInheritChartName[v.ChartPermissionName] = v.Points
|
|
|
+ }
|
|
|
+ for k, _ := range chartNameMap {
|
|
|
+ if _, ok := mapChartName[k]; ok {
|
|
|
+ if inherit, ok2 := mapInheritChartName[k]; ok2 {
|
|
|
+ mapChartName[k] += inherit
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
for k, v := range mapChartName {
|
|
|
if v > 0 {
|
|
|
- itemBill.BillDetailed += 5
|
|
|
+ itemBill.BillDetailed += v
|
|
|
itemBill.Total += k + strconv.Itoa(v) + "次+"
|
|
|
}
|
|
|
}
|
|
@@ -619,7 +644,6 @@ func ActivitySpecialCompanyApproval(companyId int,companyName string) (err error
|
|
|
return
|
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
func ActivitySpecialPublishAndCancel(activityInfo *cygx.ActivitySpecialDetail) (err error) {
|
|
|
|
|
@@ -641,4 +665,35 @@ func ActivitySpecialPublishAndCancel(activityInfo *cygx.ActivitySpecialDetail) (
|
|
|
|
|
|
|
|
|
return
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+func GetSpecialSurplusByCompanyNew(companyId int) (specialSurplus string, err error) {
|
|
|
+ companyDetail, e := cygx.GetCompanyDetailByIdGroup(companyId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetCompanyDetailByIdGroup, Err: " + e.Error())
|
|
|
+ }
|
|
|
+ if companyDetail == nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if companyDetail.Status != "永续" && companyDetail.Status != "正式" {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if companyDetail.Status == "永续" {
|
|
|
+ specialSurplus = "不限次数"
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if companyDetail.Status == "正式" {
|
|
|
+ billItem,e := cygx.GetCygxActivitySpecialTripBillByCompanyId(companyId)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = e
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if billItem != nil {
|
|
|
+ specialSurplus = billItem.Total
|
|
|
+ }
|
|
|
+ return
|
|
|
+ }
|
|
|
+ return
|
|
|
}
|