|
@@ -12,8 +12,8 @@ import (
|
|
"time"
|
|
"time"
|
|
)
|
|
)
|
|
|
|
|
|
-
|
|
+
|
|
-func GetChartPermissiontripRemainingByCompany(companyId int) (tripRemaining int, err error) {
|
|
+func GetChartPermissionTripRemainingByCompany(companyId int) (tripRemaining int, err error) {
|
|
companyDetail, e := data_manage.GetCompanyDetailByIdGroup(companyId)
|
|
companyDetail, e := data_manage.GetCompanyDetailByIdGroup(companyId)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("GetCompanyDetailByIdGroup, Err: " + e.Error())
|
|
err = errors.New("GetCompanyDetailByIdGroup, Err: " + e.Error())
|
|
@@ -69,9 +69,6 @@ func GetChartPermissiontripRemainingByCompany(companyId int) (tripRemaining int,
|
|
|
|
|
|
var TripBillNum int
|
|
var TripBillNum int
|
|
for _, v := range listTripBill {
|
|
for _, v := range listTripBill {
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
TripBillNum += v.BillDetailed
|
|
TripBillNum += v.BillDetailed
|
|
}
|
|
}
|
|
|
|
|
|
@@ -159,9 +156,9 @@ func ActivitySpecialCompanyTryOutReduce(comapnyId int) (err error) {
|
|
err = errors.New("GetCompanyById err:" + e.Error())
|
|
err = errors.New("GetCompanyById err:" + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- tripRemaining, err := GetChartPermissiontripRemainingByCompany(comapnyId)
|
|
+ userType, tripRemaining, mapChartName, err := GetChartPermissionSpecialSurplusByCompany(comapnyId)
|
|
if e != nil {
|
|
if e != nil {
|
|
- err = errors.New("GetChartPermissiontripRemainingByCompany err:" + e.Error())
|
|
+ err = errors.New("GetChartPermissionSpecialSurplusByCompany err:" + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
@@ -180,6 +177,43 @@ func ActivitySpecialCompanyTryOutReduce(comapnyId int) (err error) {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ err = data_manage.DelCygxActivitySpecialInheritPointsByCompanyId(comapnyId)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ chartMap := map[string]int{utils.YI_YAO_NAME:utils.YI_YAO_ID, utils.XIAO_FEI_NAME:utils.XIAO_FEI_ID, utils.KE_JI_NAME:utils.KE_JI_ID, utils.ZHI_ZAO_NAME:utils.ZHI_ZAO_ID}
|
|
|
|
+
|
|
|
|
+ inheritItems := make([]*data_manage.CygxActivitySpecialInheritPointsCompany,0)
|
|
|
|
+ if userType == 2 {
|
|
|
|
+ inheritItem := new(data_manage.CygxActivitySpecialInheritPointsCompany)
|
|
|
|
+ inheritItem.CompanyId = comapnyId
|
|
|
|
+ inheritItem.CompanyName = comapny.CompanyName
|
|
|
|
+ inheritItem.CreateTime = time.Now()
|
|
|
|
+ inheritItem.ModifyTime = time.Now()
|
|
|
|
+ inheritItem.Points = tripRemaining
|
|
|
|
+ inheritItems = append(inheritItems, inheritItem)
|
|
|
|
+ } else {
|
|
|
|
+ for k, v := range mapChartName {
|
|
|
|
+ inheritItem := new(data_manage.CygxActivitySpecialInheritPointsCompany)
|
|
|
|
+ inheritItem.CompanyId = comapnyId
|
|
|
|
+ inheritItem.CompanyName = comapny.CompanyName
|
|
|
|
+ inheritItem.CreateTime = time.Now()
|
|
|
|
+ inheritItem.ModifyTime = time.Now()
|
|
|
|
+ inheritItem.Points = v
|
|
|
|
+ inheritItem.ChartPermissionName = k
|
|
|
|
+ if _, ok := chartMap[k]; ok {
|
|
|
|
+ inheritItem.ChartPermissionId = chartMap[k]
|
|
|
|
+ }
|
|
|
|
+ inheritItems = append(inheritItems, inheritItem)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if len(inheritItems) > 0 {
|
|
|
|
+ err = data_manage.AddCygxActivitySpecialInheritPointsCompanyMulti(inheritItems)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ }
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
@@ -275,3 +309,135 @@ func GetUserType(companyId int) (userType, packageType int, permissionStrnew, co
|
|
permissionStrnew = permissionStr
|
|
permissionStrnew = permissionStr
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+func GetChartPermissionSpecialSurplusByCompany(companyId int) (userType int, tripRemaining int, mapChartName map[string]int, err error) {
|
|
|
|
+ companyDetail, e := data_manage.GetCompanyDetailByIdGroup(companyId)
|
|
|
|
+ if e != nil {
|
|
|
|
+ err = errors.New("GetCompanyDetailByIdGroup, Err: " + e.Error())
|
|
|
|
+ }
|
|
|
|
+ if companyDetail == nil {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ if companyDetail.Status != "永续" && companyDetail.Status != "正式" {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ userType, _, _, _, _ = GetUserType(companyId)
|
|
|
|
+ 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("2006")+"-01-01")
|
|
|
|
+ listTripBill, e := data_manage.GetCygxActivitySpecialTripBillList(condition, pars)
|
|
|
|
+ if e != nil {
|
|
|
|
+ err = errors.New("GetActivitySpecialTripCountByActivitySpecial, Err: " + e.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ if userType == 2 {
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ var TripBillNum int
|
|
|
|
+ for _, v := range listTripBill {
|
|
|
|
+ TripBillNum += v.BillDetailed
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ tripRemaining = TripBillNum
|
|
|
|
+ if tripRemaining < 0 {
|
|
|
|
+ tripRemaining = 0
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ } else {
|
|
|
|
+ list, e := GetCompanyReportPermissionUpgrade(companyId, 2)
|
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
|
+ err = errors.New("GetCompanyReportPermissionUpgrade, Err: " + e.Error())
|
|
|
|
+ }
|
|
|
|
+ if len(list) == 0 {
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ var chartPermissionIdSlice []string
|
|
|
|
+ mapChartName = make(map[string]int)
|
|
|
|
+ mapPermissionNameTrip := make(map[string]int)
|
|
|
|
+
|
|
|
|
+ for _, v := range list {
|
|
|
|
+ chartPermissionIdSlice = append(chartPermissionIdSlice, strconv.Itoa(v.ChartPermissionId))
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ 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
|
|
|
|
+ }
|
|
|
|
+ mapPermissionNameTrip[v.ChartPermissionName] += v.BillDetailed
|
|
|
|
+ }
|
|
|
|
+ for _, v := range chartList {
|
|
|
|
+ mapChartName[v.PermissionName] = 5 + mapPermissionNameTrip[v.ChartPermissionName]
|
|
|
|
+ }
|
|
|
|
+ for _, v := range mapChartName {
|
|
|
|
+ if v > 0 {
|
|
|
|
+ tripRemaining += v
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ return
|
|
|
|
+}
|