瀏覽代碼

邮件内容

zhangxinlei1996 5 年之前
父節點
當前提交
1ad6024e80

+ 1 - 0
src/jfw/modules/subscribepay/src/entity/dataExportSearch.go

@@ -57,6 +57,7 @@ type VipFilter struct {
 	Addareacount       map[string]interface{} `json:"addareacount"`       //新增地区数量
 	Addbuyerclasscount int                    `json:"addbuyerclasscount"` //新增地区数量
 	Buyset             map[string]interface{} `json:buyset`
+	NewBuyset          map[string]interface{} `json:newBuyset` //逻辑重写后的判断条件
 }
 
 const (

+ 130 - 70
src/jfw/modules/subscribepay/src/entity/dataexport.go

@@ -351,93 +351,107 @@ func SendMailToBJFinance(order *map[string]interface{}, pay_time, transaction_id
 			vf := new(VipFilter)
 			err := json.Unmarshal([]byte(filter), &vf)
 			if err == nil && vf != nil {
-				if vip_type == 2 { //升级查新订单
-					addareacount := vf.Addareacount             //区域数量
-					addbuyerclasscount := vf.Addbuyerclasscount //行业数量
-					if len(addareacount) != 0 {
-						province_count = qutil.IntAll((addareacount)["province"])
-						city_count = qutil.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 = "全国"
-						}
+				newbuyset := vf.NewBuyset //如果newBuyset存在  则为<续费升级逻辑更新>之后的订单 (否则为老订单)
+				if vip_type == 2 {        //升级查新订单
+					if newbuyset != nil {
+						subscription_area, industry = newbuysetConversion(newbuyset)
 					} else {
-						subscription_area = "无"
-					}
-					//升级行业显示
-					industry = fmt.Sprintf("%d个行业", addbuyerclasscount)
-					if addbuyerclasscount == 0 {
-						industry = "无"
-					}
-					if addbuyerclasscount == -1 {
-						industry = "全行业"
-					}
-				} else if vip_type == 1 { //续费
-					buyset_r := vf.Buyset
-					if buyset_r != nil {
-						province_count = qutil.IntAll(buyset_r["areacount"])
-						buyerclasscount := qutil.IntAll(buyset_r["buyerclasscount"])
-						citys := qutil.ObjToMap(buyset_r["citys"])
-						if citys != nil {
-							for _, v := range *citys {
-								city_count += qutil.IntAll(v)
+						addareacount := vf.Addareacount             //区域数量
+						addbuyerclasscount := vf.Addbuyerclasscount //行业数量
+						if len(addareacount) != 0 {
+							province_count = qutil.IntAll((addareacount)["province"])
+							city_count = qutil.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 = "全国"
 							}
+						} else {
+							subscription_area = "无"
 						}
-						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 = "全国"
+						//升级行业显示
+						industry = fmt.Sprintf("%d个行业", addbuyerclasscount)
+						if addbuyerclasscount == 0 {
+							industry = "无"
 						}
-						if buyerclasscount == -1 {
+						if addbuyerclasscount == -1 {
 							industry = "全行业"
-						} else {
-							industry = fmt.Sprintf("%d个行业", buyerclasscount)
 						}
 					}
-				} else { //非升级
-					vip_area := vf.Area    //区域
-					vip_ind := vf.Industry //行业
-					nbs := JyVipSubStruct.NewBuySet(&vip_area, vip_ind)
-					if nbs != nil {
-						if nbs.NewCitys != nil {
-							for _, v := range nbs.NewCitys {
-								city_count += v
+				} else if vip_type == 1 { //续费
+					if newbuyset != nil {
+						subscription_area, industry = newbuysetConversion(newbuyset)
+					} else {
+						buyset_r := vf.Buyset
+						if buyset_r != nil {
+							province_count = qutil.IntAll(buyset_r["areacount"])
+							buyerclasscount := qutil.IntAll(buyset_r["buyerclasscount"])
+							citys := qutil.ObjToMap(buyset_r["citys"])
+							if citys != nil {
+								for _, v := range *citys {
+									city_count += qutil.IntAll(v)
+								}
 							}
-						}
-						//订阅区域
-						if nbs.AreaCount == -1 {
-							subscription_area = "全国"
-						} else {
-							if city_count != 0 && nbs.AreaCount == 0 {
+							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)
-							} else if city_count == 0 && nbs.AreaCount != 0 {
-								subscription_area = fmt.Sprintf("%d个省级区域", nbs.AreaCount)
-							} else if city_count != 0 && nbs.AreaCount != 0 {
-								subscription_area = fmt.Sprintf("%d个省级区域、%d个地市", nbs.AreaCount, city_count)
+							}
+							if province_count == -1 {
+								subscription_area = "全国"
+							}
+							if buyerclasscount == -1 {
+								industry = "全行业"
+							} else {
+								industry = fmt.Sprintf("%d个行业", buyerclasscount)
 							}
 						}
-						//行业
-						if nbs.BuyerclassCount != -1 {
-							industry = fmt.Sprintf("%d个行业", nbs.BuyerclassCount)
-						} else {
-							industry = "全行业"
+					}
+				} else { //非升级
+					if newbuyset != nil {
+						subscription_area, industry = newbuysetConversion(newbuyset)
+					} else {
+						vip_area := vf.Area    //区域
+						vip_ind := vf.Industry //行业
+						nbs := JyVipSubStruct.NewBuySet(&vip_area, vip_ind)
+						if nbs != nil {
+							if nbs.NewCitys != nil {
+								for _, v := range nbs.NewCitys {
+									city_count += v
+								}
+							}
+							//订阅区域
+							if nbs.AreaCount == -1 {
+								subscription_area = "全国"
+							} else {
+								if city_count != 0 && nbs.AreaCount == 0 {
+									subscription_area = fmt.Sprintf("%d个地市", city_count)
+								} else if city_count == 0 && nbs.AreaCount != 0 {
+									subscription_area = fmt.Sprintf("%d个省级区域", nbs.AreaCount)
+								} else if city_count != 0 && nbs.AreaCount != 0 {
+									subscription_area = fmt.Sprintf("%d个省级区域、%d个地市", nbs.AreaCount, city_count)
+								}
+							}
+							//行业
+							if nbs.BuyerclassCount != -1 {
+								industry = fmt.Sprintf("%d个行业", nbs.BuyerclassCount)
+							} else {
+								industry = "全行业"
+							}
 						}
 					}
 				}
 
 				// 订阅周期 有效日期
 				if vip_endtime != "" && vip_starttime != "" {
+					log.Println(vip_endtime, "---", vip_starttime)
 					year := 0
 					month := 0
 					//订阅周期
@@ -477,6 +491,14 @@ func SendMailToBJFinance(order *map[string]interface{}, pay_time, transaction_id
 							subscription_cycle = fmt.Sprintf("%d个月", vf.Cyclecount)
 						} else if vf.Cycleunit == -1 {
 							subscription_cycle = "不延期"
+						} else {
+							if year == 0 && month > 0 {
+								subscription_cycle = fmt.Sprintf("%d个月", month)
+							} else if year > 0 && month > 0 {
+								subscription_cycle = fmt.Sprintf("%d年%d个月", year, month)
+							} else if year > 0 && month == 0 {
+								subscription_cycle = fmt.Sprintf("%d年", year)
+							}
 						}
 					}
 					//有效日期
@@ -860,3 +882,41 @@ func getPayTransactionId(payWay, tradeNo string) (transaction_id string) {
 	}
 	return
 }
+
+//升级续费逻辑升级后的 转换
+func newbuysetConversion(newbuyset map[string]interface{}) (subscription_area, industry string) {
+	areacount := qutil.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)
+		}
+	}
+	//行业
+	if newbuyset["buyerclasscount"] == -1 {
+		industry = "全行业"
+	} else {
+		industry = fmt.Sprintf("%d个行业", int(newbuyset["buyerclasscount"].(float64)))
+	}
+	return subscription_area, industry
+}

+ 44 - 33
src/web/templates/weixin/vipsubscribe/vip_order_detail.html

@@ -540,43 +540,42 @@ try{
 					break;
 				}
 
-          } 
-		    //计价清单
-            var filterObj=JSON.parse(r.data.order.filter);
-			var upgradeSubtotail=filterObj.upgradeSubtotail;
-			if (upgradeSubtotail){	//有则显示
-				$.ajax({
-				    type: 'POST',
-				    url: '/subscribepay/orderListDetails/getValuationList',
-				    data: {
-						"order_code":orderCode
-				    },
-				    success: function (data) {
-				        console.log(data);
-				        appendList(data.list);
-				    }
-				});
-			
-				$(".valuationList").css("display","");
-				// 计算标准点击事件
-				$('.valuationList').on('click', function () {
-					pickerShow('.billing-list-container', true)
-				})
-				// 计算标准隐藏
-				$('.billing-list-container .dialog_hd__close').on('click', function () {
-					pickerShow('.billing-list-container', false)
-				})
-				$('.weui-mask').on('click', function () {
-					pickerShow('.billing-list-container', false)
-				})
-			}
-		  
+          }  
         }else if(r.data.order.order_status==-2){
     		$("#pageTitle").text("已取消");
      		$(".invoice").css("display","none");//隐藏开发票
         }
       }
+      	//计价清单
+      	var filterObj=JSON.parse(r.data.order.filter);
+      	var upgradeSubtotail=filterObj.upgradeSubtotail;
+      	if (upgradeSubtotail){	//有则显示
+      		$.ajax({
+      		    type: 'POST',
+      		    url: '/subscribepay/orderListDetails/getValuationList',
+      		    data: {
+      				"order_code":orderCode
+      		    },
+      		    success: function (data) {
+      		        console.log(data);
+      		        appendList(data.list);
+      		    }
+      		});
       	
+      		$(".valuationList").css("display","");
+      		// 计算标准点击事件
+      		$('.valuationList').on('click', function () {
+      			pickerShow('.billing-list-container', true)
+      		})
+      		// 计算标准隐藏
+      		$('.billing-list-container .dialog_hd__close').on('click', function () {
+      			pickerShow('.billing-list-container', false)
+      		})
+      		$('.weui-mask').on('click', function () {
+      			pickerShow('.billing-list-container', false)
+      		})
+      	}
+		
       	if (r.data.order.order_status==0){
 	    	//倒计时 未购买
 			var create_time=r.data.order.create_time;
@@ -747,13 +746,25 @@ try{
 			if (list[i].oldBuyset.areacount === -1) {
 				showArea = "全国"
 			} else {
-				showArea = list[i].oldBuyset.areacount + "个省";
 				if (list[i].oldBuyset.newcitys.length > 0) {
 					var cityCount = 0;
 					for (var j = 0; j < list[i].oldBuyset.newcitys.length; j++) {
 						cityCount += list[i].oldBuyset.newcitys[j];
 					}
-					showArea += "、" + 3 + "个市(分布在" + list[i].oldBuyset.newcitys.length + "个省内)";
+					if(list[i].oldBuyset.areacount!=0){
+						showArea = list[i].oldBuyset.areacount + "个省";
+						if (list[i].oldBuyset.newcitys.length>1){
+							showArea += "、" + cityCount + "个市(分布在" + list[i].oldBuyset.newcitys.length + "个省内)";
+						}else{
+							showArea += "、" + cityCount + "个市";
+						}
+					}else{
+						if (list[i].oldBuyset.newcitys.length>1){
+							showArea += cityCount + "个市(分布在" + list[i].oldBuyset.newcitys.length + "个省内)";
+						}else{
+							showArea += cityCount + "个市";
+						}
+					}
 				}
 			}
 			var industryShow = "";