|
@@ -1282,35 +1282,67 @@ func BigVipOrderDetails(res *map[string]interface{}) map[string]interface{} {
|
|
|
// 获取基础服务信息
|
|
|
serverData := util.JysqlDB.FindOne("bigmember_service", map[string]interface{}{"id": 1}, "s_new_name", "")
|
|
|
if serverData != nil {
|
|
|
- var serName string
|
|
|
- serName = qutil.InterfaceToStr((*serverData)["s_new_name"])
|
|
|
- if qutil.InterfaceToStr((*res)["product_type"]) == "大会员-补充包" {
|
|
|
- supplys, _ := filterMap["supplys"].([]interface{})
|
|
|
+ //基础服务名称修改
|
|
|
+ serName := qutil.InterfaceToStr((*serverData)["s_new_name"])
|
|
|
+ supplys, _ := filterMap["supplys"].([]interface{})
|
|
|
+ if len(supplys) > 0 {
|
|
|
for _, m1 := range qutil.ObjArrToMapArr(supplys) {
|
|
|
if strings.Contains(qutil.InterfaceToStr(m1["name"]), serName) {
|
|
|
m1["name"] = "基础服务"
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
- serverArr, _ := filterMap["serverArr"].([]interface{})
|
|
|
+ filterMap["supplys"] = supplys
|
|
|
+ }
|
|
|
+ serversName := qutil.InterfaceToStr(filterMap["serversName"])
|
|
|
+ serversNameArr := strings.Split(serversName, ",")
|
|
|
+ for k, s := range serversNameArr {
|
|
|
+ if strings.Contains(s, serName) {
|
|
|
+ serversNameArr[k] = "基础服务"
|
|
|
+ filterMap["serversName"] = strings.Join(serversNameArr, ",")
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ serverArr, _ := filterMap["serverArr"].([]interface{})
|
|
|
+ if len(serverArr) > 0 {
|
|
|
for _, m1 := range qutil.ObjArrToMapArr(serverArr) {
|
|
|
if strings.Contains(qutil.InterfaceToStr(m1["name"]), serName) {
|
|
|
m1["name"] = "基础服务"
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
- filterMap["supplys"] = supplys
|
|
|
filterMap["supplys"] = serverArr
|
|
|
- } else {
|
|
|
- serversName := qutil.InterfaceToStr(filterMap["serversName"])
|
|
|
- serversNameArr := strings.Split(serversName, ",")
|
|
|
- for k, s := range serversNameArr {
|
|
|
- if strings.Contains(s, serName) {
|
|
|
- serversNameArr[k] = "基础服务"
|
|
|
- filterMap["serversName"] = strings.Join(serversNameArr, ",")
|
|
|
- break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //大会员--补充服务
|
|
|
+ if qutil.InterfaceToStr((*res)["product_type"]) == "大会员" &&
|
|
|
+ qutil.InterfaceToStr(filterMap["createType"]) == "2" &&
|
|
|
+ qutil.InterfaceToStr(filterMap["serversId"]) != "" {
|
|
|
+ var (
|
|
|
+ oldSerName, newSerName []string
|
|
|
+ )
|
|
|
+ new_serverArr := strings.Split(qutil.InterfaceToStr(filterMap["new_serverArr"]), ",")
|
|
|
+ serverDataArr := util.JysqlDB.SelectBySql(`SELECT id, CASE
|
|
|
+ WHEN id = 1 THEN "基础服务"
|
|
|
+ ELSE s_new_name
|
|
|
+ END AS s_new_name FROM bigmember_service WHERE id in (%s)`, qutil.InterfaceToStr(filterMap["serversId"]))
|
|
|
+ if serverDataArr != nil && len(*serverDataArr) > 0 {
|
|
|
+ for _, m2 := range *serverDataArr {
|
|
|
+ var isNew bool
|
|
|
+ for _, s := range new_serverArr {
|
|
|
+ if qutil.InterfaceToStr(m2["id"]) == s {
|
|
|
+ isNew = true
|
|
|
+ newSerName = append(newSerName, qutil.InterfaceToStr(m2["s_new_name"]))
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if !isNew {
|
|
|
+ oldSerName = append(oldSerName, qutil.InterfaceToStr(m2["s_new_name"]))
|
|
|
}
|
|
|
}
|
|
|
+ filterMap["oldSerName"] = strings.Join(oldSerName, ",")
|
|
|
+ filterMap["newSerName"] = strings.Join(newSerName, ",")
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -4668,6 +4700,29 @@ func SupplyBigOrder(subStatus, pay_sub_num, free_sub_num, dateType int, now, sta
|
|
|
isAll = 1
|
|
|
}
|
|
|
filterMap := ParamToFilter(param, enddate, isAll, contractStatus)
|
|
|
+ if param.BuySubject == "1" {
|
|
|
+ //补充服务记录新增服务
|
|
|
+ var oldServiceArr []map[string]interface{}
|
|
|
+ sqls := "select a.s_serviceid,b.s_name from bigmember_service_user a LEFT JOIN bigmember_service b on a.s_serviceid = b.id where a.s_userid = ? and a.i_status = 0"
|
|
|
+ serverUser := util.JysqlDB.SelectBySql(sqls, userId)
|
|
|
+ if serverUser != nil && len(*serverUser) > 0 {
|
|
|
+ oldServiceArr = *serverUser
|
|
|
+ }
|
|
|
+ var newSer []string
|
|
|
+ for _, m2 := range strings.Split(param.ServersId, ",") {
|
|
|
+ var isNewSer bool
|
|
|
+ for _, i2 := range oldServiceArr {
|
|
|
+ if m2 == qutil.InterfaceToStr(i2["s_serviceid"]) {
|
|
|
+ isNewSer = true
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if !isNewSer {
|
|
|
+ newSer = append(newSer, m2)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ filterMap["new_serverArr"] = strings.Join(newSer, ",")
|
|
|
+ }
|
|
|
filter, _ := json.Marshal(filterMap)
|
|
|
serverMap := GetServerPid()
|
|
|
agreementTime := time.Unix(param.AgreementTime, 0)
|