|
@@ -223,10 +223,10 @@ func GetSpecialSurplusByCompany(companyId int) (specialSurplus string, err error
|
|
if companyDetail.Status == "永续" {
|
|
if companyDetail.Status == "永续" {
|
|
specialSurplus = "不限次数"
|
|
specialSurplus = "不限次数"
|
|
}
|
|
}
|
|
-
|
|
+ chartMap := map[int]string{utils.YI_YAO_ID:utils.YI_YAO_NAME, utils.XIAO_FEI_ID:utils.XIAO_FEI_NAME, utils.KE_JI_ID:utils.KE_JI_NAME, utils.ZHI_ZAO_ID:utils.ZHI_ZAO_NAME}
|
|
|
|
+ chartNumMap := map[int]int{utils.YI_YAO_ID:0, utils.XIAO_FEI_ID:0, utils.KE_JI_ID:0, utils.ZHI_ZAO_ID:0}
|
|
if companyDetail.Status == "正式" {
|
|
if companyDetail.Status == "正式" {
|
|
userType, packageType, _, _, _ := GetUserType(companyId)
|
|
userType, packageType, _, _, _ := GetUserType(companyId)
|
|
- var airborneTota int
|
|
|
|
if userType == 2 {
|
|
if userType == 2 {
|
|
var condition string
|
|
var condition string
|
|
var pars []interface{}
|
|
var pars []interface{}
|
|
@@ -234,11 +234,15 @@ func GetSpecialSurplusByCompany(companyId int) (specialSurplus string, err error
|
|
condition += ` AND company_id = ? `
|
|
condition += ` AND company_id = ? `
|
|
pars = append(pars, companyId)
|
|
pars = append(pars, companyId)
|
|
|
|
|
|
- airborneTota, e = cygx.GetActivitySpecialTripAirborneCountByActivitySpecial(condition, pars)
|
|
+ airborneList, e := cygx.GetActivitySpecialTripAirborneCountByActivitySpecial(condition, pars)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetActivitySpecialTripAirborneCountByActivitySpecial, Err: " + e.Error())
|
|
err = errors.New("GetActivitySpecialTripAirborneCountByActivitySpecial, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+ ariborneMap := make(map[int]int)
|
|
|
|
+ for _, v := range airborneList {
|
|
|
|
+ ariborneMap[v.ChartPermissionId] = v.Count
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
condition += ` AND create_time >= ? `
|
|
condition += ` AND create_time >= ? `
|
|
@@ -248,19 +252,23 @@ func GetSpecialSurplusByCompany(companyId int) (specialSurplus string, err error
|
|
err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- var TripBillNum int
|
|
+ TripBillNumMap := make(map[int]int)
|
|
for _, v := range listTripBill {
|
|
for _, v := range listTripBill {
|
|
- TripBillNum += v.BillDetailed
|
|
+ TripBillNumMap[v.ChartPermissionId] += v.BillDetailed
|
|
}
|
|
}
|
|
|
|
|
|
packageTypeMap := map[int]int{1: 16, 2: 10}
|
|
packageTypeMap := map[int]int{1: 16, 2: 10}
|
|
totalTrip := packageTypeMap[packageType]
|
|
totalTrip := packageTypeMap[packageType]
|
|
|
|
|
|
- tripRemaining := totalTrip - airborneTota + TripBillNum
|
|
+ for k, _ := range chartNumMap {
|
|
- if tripRemaining < 0 {
|
|
+ tripRemaining := totalTrip - ariborneMap[k] + TripBillNumMap[k]
|
|
- tripRemaining = 0
|
|
+ if tripRemaining < 0 {
|
|
|
|
+ tripRemaining = 0
|
|
|
|
+ }
|
|
|
|
+ specialSurplus += chartMap[k] + strconv.Itoa(tripRemaining) + "次,"
|
|
}
|
|
}
|
|
- specialSurplus = strconv.Itoa(tripRemaining) + "次"
|
|
+ specialSurplus = strings.TrimRight(specialSurplus, ",")
|
|
|
|
+
|
|
|
|
|
|
} else {
|
|
} else {
|
|
list, e := company.GetCompanyReportPermissionUpgrade(companyId, 2)
|
|
list, e := company.GetCompanyReportPermissionUpgrade(companyId, 2)
|