Browse Source

Merge branch 'dev2.6.1.1' into release

lianbingjie 5 năm trước cách đây
mục cha
commit
66a6422864
2 tập tin đã thay đổi với 119 bổ sung59 xóa
  1. 2 0
      core/README.md
  2. 117 59
      core/src/qfw/manage/vipOrder.go

+ 2 - 0
core/README.md

@@ -0,0 +1,2 @@
+dev2.6.1.1
+升级续费改版,订单详情修改

+ 117 - 59
core/src/qfw/manage/vipOrder.go

@@ -227,81 +227,93 @@ func (v *VipOrder) VipOrderDetail(order_code string) error {
 			(*res)["product_type"] = "VIP订阅(试用)"
 		}
 
-		//条件 升级订单用户另算
+		//条件 升级/续费订单用户另算		有newbuyset的 都是升级续费逻辑重写后的订单 没有的是老订单
 		subscription_area, industry_str, subscription_cycle, effective_date := "", "", "", ""
 		province_count, city_count := 0, 0
 		filterData := (*res)["filter"]
 		if err := json.Unmarshal([]byte(filterData.(string)), &filterMap); err == nil {
+			newBuyset := *util.ObjToMap((filterMap)["newBuyset"])
 			if util.Int64All((*res)["vip_type"]) != 2 {
-				area := util.ObjToMap(filterMap["area"])
-				subscription_area = SubscriptionArea(*area)
-
-				//行业数量 []string
-				industry := filterMap["industry"].([]interface{})
-				BuyerclassCount := util.If(len(industry) > 0, len(industry), -1).(int)
-				if BuyerclassCount != -1 {
-					industry_str = fmt.Sprintf("%d个行业", BuyerclassCount)
+				if newBuyset != nil {
+					subscription_area, industry_str = newbuysetConversion(newBuyset)
 				} else {
-					industry_str = "全行业"
+					area := util.ObjToMap(filterMap["area"])
+					subscription_area = SubscriptionArea(*area)
+					//行业数量 []string
+					industry := filterMap["industry"].([]interface{})
+					BuyerclassCount := util.If(len(industry) > 0, len(industry), -1).(int)
+					if BuyerclassCount != -1 {
+						industry_str = fmt.Sprintf("%d个行业", BuyerclassCount)
+					} else {
+						industry_str = "全行业"
+					}
 				}
 			} else {
 				//升级
-				addareacount := *util.ObjToMap(filterMap["addareacount"])
-				if len(addareacount) != 0 {
-					province_count = util.IntAll((addareacount)["province"])
-					city_count = util.IntAll((addareacount)["city"])
-					//升级区域显示
-					if city_count != 0 && province_count == 0 {
-						subscription_area = fmt.Sprintf("%d个地市", city_count)
-					} else if city_count == 0 && province_count != 0 {
-						subscription_area = fmt.Sprintf("%d个省级区域", province_count)
-					} else if city_count != 0 && province_count != 0 {
-						subscription_area = fmt.Sprintf("%d个省级区域、%d个地市", province_count, city_count)
-					} else if city_count == 0 && province_count == 0 {
-						subscription_area = "全国"
-					}
+				if newBuyset != nil {
+					subscription_area, industry_str = newbuysetConversion(newBuyset)
 				} else {
-					subscription_area = "无"
-				}
-				//
-				addbuyerclasscount := util.IntAll(filterMap["addbuyerclasscount"])
-				industry_str = fmt.Sprintf("%d个行业", addbuyerclasscount)
-				if addbuyerclasscount == 0 {
-					industry_str = "无"
-				}
-				if addbuyerclasscount == -1 {
-					industry_str = "全行业"
-				}
-			}
-			if util.Int64All((*res)["vip_type"]) == 1 {
-				buyset := util.ObjToMap(filterMap["buyset"])
-				if len(*buyset) != 0 {
-					province_count = util.IntAll((*buyset)["areacount"])
-					citys := util.ObjToMap((*buyset)["citys"])
-					if len(*citys) != 0 {
-						for _, v := range *citys {
-							city_count += util.IntAll(v)
-						}
-					}
-					if city_count == -1 {
-						subscription_area = "全国"
-					} else {
-						if city_count != 0 && province_count != 0 {
-							subscription_area = fmt.Sprintf("%d个省级区域、%d个地市", province_count, city_count)
+					addareacount := *util.ObjToMap(filterMap["addareacount"])
+					if len(addareacount) != 0 {
+						province_count = util.IntAll((addareacount)["province"])
+						city_count = util.IntAll((addareacount)["city"])
+						//升级区域显示
+						if city_count != 0 && province_count == 0 {
+							subscription_area = fmt.Sprintf("%d个地市", city_count)
 						} else if city_count == 0 && province_count != 0 {
 							subscription_area = fmt.Sprintf("%d个省级区域", province_count)
-						} else if city_count != 0 && province_count == 0 {
-							subscription_area = fmt.Sprintf("%d个地市", city_count)
+						} else if city_count != 0 && province_count != 0 {
+							subscription_area = fmt.Sprintf("%d个省级区域、%d个地市", province_count, city_count)
+						} else if city_count == 0 && province_count == 0 {
+							subscription_area = "全国"
 						}
+					} else {
+						subscription_area = "无"
 					}
-					if province_count == -1 {
-						subscription_area = "全国"
+					//
+					addbuyerclasscount := util.IntAll(filterMap["addbuyerclasscount"])
+					industry_str = fmt.Sprintf("%d个行业", addbuyerclasscount)
+					if addbuyerclasscount == 0 {
+						industry_str = "无"
 					}
-					buyerclasscount := util.IntAll((*buyset)["buyerclasscount"])
-					if buyerclasscount == -1 {
+					if addbuyerclasscount == -1 {
 						industry_str = "全行业"
-					} else {
-						industry_str = fmt.Sprintf("%d个行业", buyerclasscount)
+					}
+				}
+			}
+			if util.Int64All((*res)["vip_type"]) == 1 { //续费
+				if newBuyset != nil {
+					subscription_area, industry_str = newbuysetConversion(newBuyset)
+				} else {
+					buyset := util.ObjToMap(filterMap["buyset"])
+					if len(*buyset) != 0 {
+						province_count = util.IntAll((*buyset)["areacount"])
+						citys := util.ObjToMap((*buyset)["citys"])
+						if len(*citys) != 0 {
+							for _, v := range *citys {
+								city_count += util.IntAll(v)
+							}
+						}
+						if city_count == -1 {
+							subscription_area = "全国"
+						} else {
+							if city_count != 0 && province_count != 0 {
+								subscription_area = fmt.Sprintf("%d个省级区域、%d个地市", province_count, city_count)
+							} else if city_count == 0 && province_count != 0 {
+								subscription_area = fmt.Sprintf("%d个省级区域", province_count)
+							} else if city_count != 0 && province_count == 0 {
+								subscription_area = fmt.Sprintf("%d个地市", city_count)
+							}
+						}
+						if province_count == -1 {
+							subscription_area = "全国"
+						}
+						buyerclasscount := util.IntAll((*buyset)["buyerclasscount"])
+						if buyerclasscount == -1 {
+							industry_str = "全行业"
+						} else {
+							industry_str = fmt.Sprintf("%d个行业", buyerclasscount)
+						}
 					}
 				}
 			}
@@ -357,6 +369,10 @@ func (v *VipOrder) VipOrderDetail(order_code string) error {
 					} else if util.IntAll(filterMap["cycleunit"]) == -1 {
 						subscription_cycle = "不延期"
 					}
+					//升级续费后的根据 不延期 cycleunit,cyclecount=0,0
+					if util.IntAll(filterMap["cycleunit"]) == 0 && util.IntAll(filterMap["cyclecount"]) == 0 {
+						subscription_cycle = "不延期"
+					}
 				}
 				if util.ObjToString((*res)["pay_way"]) == "trial" {
 					(filterMap)["subscription_cycle"] = "7天"
@@ -364,6 +380,8 @@ func (v *VipOrder) VipOrderDetail(order_code string) error {
 					(filterMap)["subscription_cycle"] = subscription_cycle
 				}
 				(filterMap)["effective_date"] = effective_date
+			} else {
+
 			}
 		}
 	}
@@ -600,3 +618,43 @@ func isOrderCode(value string) bool {
 	bl, _ := regexp.MatchString(`^(\d+)$`, value)
 	return bl
 }
+
+//
+//升级续费逻辑升级后的 转换
+func newbuysetConversion(newbuyset map[string]interface{}) (subscription_area, industry string) {
+	areacount := util.Int64All(newbuyset["areacount"])
+	newcityscount := len(newbuyset["newcitys"].([]interface{})) //分布
+	if areacount == -1 {
+		subscription_area = "全国"
+	} else {
+		if newcityscount > 0 {
+			cityCount := 0
+			for _, v := range newbuyset["newcitys"].([]interface{}) {
+				cityCount += int(v.(float64))
+			}
+			if newcityscount > 1 { //显示(分布在x个省内)
+				if areacount != 0 {
+					subscription_area = fmt.Sprintf("%d个省、%d个地市(分布在%d个省内)", areacount, cityCount, newcityscount)
+				} else {
+					subscription_area = fmt.Sprintf("%d个地市(分布在%d个省内)", cityCount, newcityscount)
+				}
+			} else {
+				if areacount != 0 {
+					subscription_area = fmt.Sprintf("%d个省、%d个地市", areacount, cityCount)
+				} else {
+					subscription_area = fmt.Sprintf("%d个地市", cityCount)
+				}
+			}
+		} else {
+			subscription_area = fmt.Sprintf("%d个省", areacount)
+		}
+	}
+	//行业
+	buyerclasscount := util.Int64All(newbuyset["buyerclasscount"])
+	if buyerclasscount == -1 {
+		industry = "全行业"
+	} else {
+		industry = fmt.Sprintf("%d个行业", int(newbuyset["buyerclasscount"].(float64)))
+	}
+	return subscription_area, industry
+}