Browse Source

Merge branch 'dev2.8.5' of http://192.168.3.207:10080/qmx/jy into dev2.8.5

wangkaiyue 5 years ago
parent
commit
65e11f5aeb

+ 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
+}

+ 7 - 19
src/jfw/modules/subscribepay/src/service/orderListDetails.go

@@ -359,39 +359,27 @@ func (o *OrderListDetails) EmailOperation() {
 func (o *OrderListDetails) GetValuationList() error {
 	userId := o.GetSession("userId")
 	order_code := o.GetString("order_code")
-	pageNum, _ := o.GetInteger("pageNum")
 	upgradeSubtotail := []map[string]interface{}{}
 	queryMap := map[string]interface{}{
 		"order_code": order_code,
 		"user_Id":    userId,
 	}
-	result := []map[string]interface{}{}
-	haveNextPage := false
 	filter := util.Mysql.FindOne(tableName_order, queryMap, "filter", "")
 	if filter != nil {
 		res := qutil.ObjToMap((*filter)["filter"])
 		upgradeSubtotail = qutil.ObjArrToMapArr((*res)["upgradeSubtotail"].([]interface{}))
-		for _, v := range upgradeSubtotail {
-			//续费 没有oldBuyset
-			if v["oldBuyset"] == nil {
-				v["oldBuyset"] = (*res)["newBuyset"]
-			}
-		}
 		if len(upgradeSubtotail) > 0 {
-			start := (pageNum - 1) * pagesize_max
-			end := pageNum * pagesize_max
-			if end > len(upgradeSubtotail) {
-				end = len(upgradeSubtotail)
-			}
-			if start < len(upgradeSubtotail) {
-				result = upgradeSubtotail[start:end]
+			for _, v := range upgradeSubtotail {
+				//续费 没有oldBuyset
+				if v["oldBuyset"] == nil {
+					v["oldBuyset"] = (*res)["newBuyset"]
+				}
 			}
 		}
-		haveNextPage = len(result) >= pagesize_max
 	}
+	log.Println("upgradeSubtotail:", upgradeSubtotail)
 	o.ServeJson(map[string]interface{}{
-		"list":         upgradeSubtotail,
-		"haveNextPage": haveNextPage,
+		"list": upgradeSubtotail,
 	})
 	return nil
 }

+ 326 - 0
src/web/staticres/vipsubscribe/css/vip_order_detail.css

@@ -487,3 +487,329 @@
   background: #2cb7ca;
   color: #fff;
 }
+
+.person > p >span , .unit > p >span{
+	margin-bottom: .12rem;
+}
+	
+.jymobile-setting-dialog {
+  font-size: .32rem;
+}
+
+.jymobile-setting-dialog .weui-dialog__hd {
+  padding: 0;
+  height: 0.82rem;
+  line-height: .82rem;
+  text-align: center;
+  background-color: #F5F4F9;
+}
+
+.jymobile-setting-dialog .weui-dialog__hd .weui-dialog__title {
+  font-size: .36rem;
+}
+
+.jymobile-setting-dialog .weui-dialog__bd {
+  padding: .37rem .1rem .38rem;
+  color: #1D1D1D;
+  font-size: .32rem;
+  text-align: center;
+}
+
+.jymobile-setting-dialog .weui-dialog__ft {
+  display: flex;
+  padding: 0 0 .38rem 0;
+  text-align: center;
+  justify-content: space-around;
+}
+
+.jymobile-setting-dialog .weui-dialog__ft:after {
+  border: none;
+}
+
+.jymobile-setting-dialog .weui-dialog__ft .weui-dialog__btn {
+  display: flex;
+  flex: none;
+  align-items: center;
+  justify-content: center;
+  width: 1.72rem;
+  height: .72rem;
+  color: #fff;
+  font-size: .32rem;
+  vertical-align: center;
+}
+
+.jymobile-setting-dialog .weui-dialog__ft .weui-dialog__btn_primary {
+  margin: 0;
+  margin-left: .3rem;
+  background-color: #2CB7CA;
+}
+
+.jymobile-setting-dialog .weui-dialog__ft .weui-dialog__btn_default {
+  margin: 0;
+  margin-right: .3rem;
+  background-color: #BFBFC3;
+}
+.cancel_time{
+	font-size: 16px;
+	margin-left: 20px;
+}
+
+.nothing{
+	margin: 50% auto;
+    display: flex;
+    justify-content: center;
+    align-items: center;
+	flex-direction:column;
+}
+.nothing img{
+    width: 120px;
+}
+.nothingDiv {
+	padding-top:0.42rem;
+	font-size:0.3rem;
+	color:#838384;
+}
+.valuationList {
+    display: inline-block;
+    padding: 0 .12rem;
+    border: 1px solid #2cb7ca;
+	border-radius: 0.06rem;
+	font-size: .28rem;
+	color:#2cb7ca;
+	margin-left: .15rem;
+}
+
+/* 弹窗 */
+.billing-list-container .weui-half-screen-dialog {
+  display: flex;
+  flex-direction: column;
+  background-color: #fff;
+  padding: 0;
+  border-radius: 0;
+}
+
+.billing-list-container .weui-half-screen-dialog .weui-half-screen-dialog__bd {
+  height: 100%;
+}
+
+.billing-list-container .weui-half-screen-dialog .weui-half-screen-dialog__hd {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  padding: 0 0.4rem;
+  height: 0.88rem;
+  background-color: #f4f4f9;
+}
+
+.billing-list-container .weui-half-screen-dialog .weui-half-screen-dialog__hd .dialog_hd__title {
+  color: #1d1d1d;
+  font-size: 0.32rem;
+}
+
+.billing-list-container .weui-half-screen-dialog .weui-half-screen-dialog__hd .dialog_hd__close {
+  color: #707070;
+  font-size: 0.36rem;
+}
+
+.billing-list-container .weui-half-screen-dialog .weui-half-screen-dialog__ft {
+  padding: 0;
+}
+
+.billing-list-container .vip_prise_table {
+  padding: 0.5rem 0.3rem 0.4rem;
+  display: flex;
+  flex-direction: column;
+  justify-content: center;
+  font-size: 0.26rem;
+  text-align: center;
+}
+
+.billing-list-container .vip_prise_table .table_title {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  margin-bottom: 0.3rem;
+  width: 100%;
+}
+
+.billing-list-container .vip_prise_table .table_title .line {
+  width: 0.16rem;
+  height: 1px;
+  transform: scaleY(0.5);
+  background-color: #888;
+}
+
+.billing-list-container .vip_prise_table .table_title .title {
+  margin: 0 0.12rem;
+}
+
+.billing-list-container .vip_prise_table table {
+  margin-bottom: 0.48rem;
+  width: 100%;
+  border-collapse: collapse;
+}
+
+.billing-list-container .vip_prise_table table td {
+  height: 0.72rem;
+  width: 50%;
+  border: 1px solid #ccc;
+}
+
+.billing-list-container .vip_prise_table .tips {
+  text-align: left;
+}
+
+.billing-list-container .vip_prise_table .tips dt {
+  margin-bottom: 0.08rem;
+}
+
+.valuation_list {
+  display: flex;
+  flex-direction: column;
+  height: 100%;
+  flex: 1;
+}
+
+.valuation_list .va-list-container {
+  flex: 1;
+  overflow-y: scroll;
+}
+
+.valuation_list .va-total-container {
+  height: 0.94rem;
+  background-color: #fff;
+}
+
+.va-list-container .text-title {
+  color: #1d1d1d;
+  font-size: 0.32rem;
+}
+
+.va-list-container .list-item {
+  margin-bottom: 0.2rem;
+  font-size: 0.26rem;
+  color: #686868;
+  background-color: #fff;
+}
+
+.va-list-container .list-item .item-top {
+  padding: 0 0.3rem;
+}
+
+.va-list-container .list-item .item-header {
+  display: flex;
+  align-items: center;
+  height: 0.79rem;
+  border-bottom: 1px solid #e0e0e0;
+}
+
+.va-list-container .list-item .item-header .header-content {
+  flex: 1;
+}
+
+.va-list-container .list-item .item-body {
+  position: relative;
+  padding: 0.14rem 0;
+}
+
+.va-list-container .list-item .item-body.vp-oneline {
+  padding: 0.38rem 0;
+}
+
+.va-list-container .list-item .item-body.vp-oneline .b-item .body-area-sub,
+.va-list-container .list-item .item-body.vp-oneline .b-item .body-industry-sub {
+  margin-top: 0.1rem;
+}
+
+.va-list-container .list-item .item-body .b-item {
+  display: flex;
+  flex-direction: column;
+  justify-content: space-around;
+  padding: 0.1rem 0;
+}
+
+.va-list-container .list-item .item-body .body-area-sub,
+.va-list-container .list-item .item-body .body-industry-sub {
+  margin-top: 0.08rem;
+}
+
+.va-list-container .list-item .item-body .vp-type {
+  position: absolute;
+  top: 50%;
+  right: 0;
+  width: 1.4rem;
+  height: 1.4rem;
+  background-color: transparent;
+  transform: translateY(-50%);
+  opacity: 0.5;
+  z-index: 1;
+}
+
+.va-list-container .list-item .item-body .vp-type .vp-type-text {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  width: 100%;
+  height: 100%;
+  color: #e6bd90;
+  font-size: 0.38rem;
+  border: 1px solid #e6bd90;
+  border-radius: 50%;
+  transform: rotate(-30deg);
+}
+
+.va-list-container .list-item .item-footer {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  padding: 0 0.3rem;
+  height: 0.84rem;
+  border-top: 1px solid #e0e0e0;
+}
+
+.va-total-container {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  padding: 0 0.3rem;
+  font-size: 0.26rem;
+  color: #686868;
+}
+
+.va-total-container .total-price {
+  font-weight: 700;
+  font-size: 0.32rem;
+  color: #fe737a;
+}
+
+.valuation_list {
+  max-height: 9.23rem;
+  background-color: #f5f4f9;
+}
+
+.va-total-container {
+  height: .94rem;
+  border-top: 1px solid #e0e0e0;
+}
+
+.jy-toast .weui-toast {
+  font-size: 0.3rem;
+  padding: 0.26rem 0.5rem;
+  width: auto;
+  height: auto;
+  max-width: 6rem;
+  min-height: 0;
+  top: 50%;
+  left: 50%;
+  margin-left: 0;
+  margin-top: -0.47rem;
+  transform: translateX(-50%) translateY(-50%);
+}
+
+.jy-toast .weui-icon_toast {
+  display: none;
+}
+
+.jy-toast .weui-toast__content {
+  margin: 0;
+}

+ 51 - 2
src/web/templates/weixin/dataExport/dataExport_toMyOrder.html

@@ -619,7 +619,8 @@
 					if (checkOrder_bl){
 						return;
 					}
-					window.location.href="/weixin/pay/renewPayPage?orderCode="+orderCode;   
+					//window.location.href="/weixin/pay/renewPayPage?orderCode="+orderCode;   
+					window.location.href="/weixin/pay/vipsubscribe_renew?orderCode"+orderCode;
 				}else if (pattern==2){
 					window.location.href="/weixin/pay/vipsubscribe_new?orderCode="+orderCode;
 				}
@@ -1226,7 +1227,55 @@
 							       effectiveduration_vip=filterObj.cyclecount+"天";
 							    }else if (filterObj.cycleunit==-1){
 							        effectiveduration_vip="不延期";
-							    }
+							    }else{
+									if((obj.vip_starttime!=undefined)&&(obj.vip_endtime!=undefined)){
+										var start_time_vip = obj.vip_starttime;
+										var end_time_vip = obj.vip_endtime;
+										var start_time_arr = start_time_vip.split(" ")[0].split("-")
+										var end_time_arr = end_time_vip.split(" ")[0].split("-")
+										var start_year=start_time_arr[0];
+										var start_month=start_time_arr[1];
+										var end_year=end_time_arr[0];
+										var end_month=end_time_arr[1];
+										
+										var year = 0;
+										var month = 0;
+										if(end_year > start_year){
+											if(end_month > start_month){
+												year = end_year - start_year;
+												month = end_month - start_month;
+											}else{
+												year = end_year - start_year-1;
+												month = 12+Number(end_month)-start_month;
+												if (month==12){
+													year=Number(year)+1;
+													month=0;
+												}
+											}
+										}else if(end_year == start_year){
+											month = end_month - start_month;
+										}
+										
+										if(year != 0 && month !=0){
+											effectiveduration_vip=year+"年"+month+"个月";
+										}else if(year !== 0&& month ===0){
+											effectiveduration_vip=year+"年";
+										}else if(year === 0&& month !==0){
+											effectiveduration_vip=month+"个月";
+										}
+										if(cycleunit_vip==3){
+											effectiveduration_vip=cyclecount_vip+"天";	 
+										}
+									}else{
+									   	if(cycleunit_vip==1){
+									    	effectiveduration_vip=cyclecount_vip+"年";
+									    }else if(cycleunit_vip==2){
+									    	effectiveduration_vip=cyclecount_vip+"个月"
+									    }else if(cycleunit_vip==3){
+									    	effectiveduration_vip=cyclecount_vip+"天";	                    
+									    }
+									}
+								}
 	                       }else if (vip_type==1){
 								filter_vip = JSON.parse(obj.filter);
 								var renewal_market=0; //续费市级地区

+ 0 - 215
src/web/templates/weixin/vipsubscribe/valuation_list.html

@@ -1,215 +0,0 @@
-<!DOCTYPE html>
-<html>
-
-<head>
-    <meta charset="utf-8">
-    <title>计价清单</title>
-    <meta name="viewport"
-        content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
-    <meta name="apple-mobile-web-app-capable" content="yes">
-    <meta name="apple-mobile-web-app-status-bar-style" content="black">
-    <meta http-equiv="X-UA-Compatible" content="ie=edge">
-    <meta http-equiv="X-UA-Compatible" content="ie=edge">
-    <script src="/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
-    <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}"/>
-	<link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/valuation_list.css?v={{Msg "seo" "version"}}">
-</head>
-
-<body>
-    <div class="valuation_list">
-        <div class="va-list-container">
-            <ul class="list-content">
-                <!-- <li class="list-item">
-                    <div class="item-top">
-                        <div class="item-header">
-                            <span class="header-label">有效日期:</span>
-                            <span class="header-content ellipsis">(1个月)2019年12月1日-2019年12月31日</span>
-                        </div>
-                        <div class="item-body">
-                            <div class="b-item body-area">
-                                <div class="body-area-title text-title">区域</div>
-                                <div class="body-area-sub">1个省、3个市(分布在2个省内)</div>
-                            </div>
-                            <div class="b-item body-industry">
-                                <div class="body-industry-title text-title">采购单位行业</div>
-                                <div class="body-industry-sub">3个行业</div>
-                            </div>
-                            <div class="vp-type">
-                                <div class="vp-type-text">升级</div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="item-footer">
-                        <span class="footer-label">小计:</span>
-                        <span class="footer-content text-title">¥223.8</span>
-                    </div>
-                </li>
-                <li class="list-item">
-                    <div class="item-top">
-                        <div class="item-header">
-                            <span class="header-label">有效日期:</span>
-                            <span class="header-content ellipsis">(1个月)2019年12月1日-2019年12月31日</span>
-                        </div>
-                        <div class="item-body vp-oneline">
-                            <div class="b-item body-area">
-                                <div class="body-area-title text-title">区域</div>
-                                <div class="body-area-sub">1个省、3个市(分布在2个省内)</div>
-                            </div>
-                            <div class="vp-type">
-                                <div class="vp-type-text">续续费</div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="item-footer">
-                        <span class="footer-label">小计:</span>
-                        <span class="footer-content text-title">¥223.8</span>
-                    </div>
-                </li>
-                <li class="list-item">
-                    <div class="item-top">
-                        <div class="item-header">
-                            <span class="header-label">有效日期:</span>
-                            <span class="header-content ellipsis">(1个月)2019年12月1日-2019年12月31日</span>
-                        </div>
-                        <div class="item-body">
-                            <div class="b-item body-area">
-                                <div class="body-area-title text-title">区域</div>
-                                <div class="body-area-sub">1个省、3个市(分布在2个省内)</div>
-                            </div>
-                            <div class="b-item body-industry">
-                                <div class="body-industry-title text-title">采购单位行业</div>
-                                <div class="body-industry-sub">3个行业</div>
-                            </div>
-                            <div class="vp-type">
-                                <div class="vp-type-text">升级</div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="item-footer">
-                        <span class="footer-label">小计:</span>
-                        <span class="footer-content text-title">¥223.8</span>
-                    </div>
-                </li>
-                <li class="list-item">
-                    <div class="item-top">
-                        <div class="item-header">
-                            <span class="header-label">有效日期:</span>
-                            <span class="header-content ellipsis">(1个月)2019年12月1日-2019年12月31日</span>
-                        </div>
-                        <div class="item-body vp-oneline">
-                            <div class="b-item body-industry">
-                                <div class="body-industry-title text-title">采购单位行业</div>
-                                <div class="body-industry-sub">3个行业</div>
-                            </div>
-                            <div class="vp-type">
-                                <div class="vp-type-text">升级</div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="item-footer">
-                        <span class="footer-label">小计:</span>
-                        <span class="footer-content text-title">¥223.8</span>
-                    </div>
-                </li> -->
-            </ul>
-        </div>
-        <div class="va-total-container">
-            <span class="total-label">共计:</span>
-            <span class="total-price">¥223.8</span>
-        </div>
-    </div>
-	<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/jquery.min.js?v={{Msg "seo" "version"}}2"></script>
-	<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/dropload.min.js?v={{Msg "seo" "version"}}2"></script>
-    <script>
-        $(function () {
-            // 定义函数区域 -------------------- >
-            function appendList(list) {
-                var str = ''
-                for (var i = 0; i < list.length; i++) {
-					var oldbuyset=list[i].oldBuyset;
-					
-                    str += '<li class="list-item"><div class="item-top"><div class="item-header"><span class="header-label" > 有效日期:</span>';
-                    str += '<span class="header-content ellipsis">(1个月)2019年12月1日-2019年12月31日</span></div><div class="item-body">';
-                    str += '<div class="b-item body-industry"><div class="body-industry-title text-title">采购单位行业</div><div class="body-industry-sub">3个行业</div>'
-					 str += '<div class="b-item body-industry"><div class="body-industry-title text-title">采购单位行业</div><div class="body-industry-sub">3个行业</div>'
-                    str += '</div><div class="vp-type"><div class="vp-type-text">升级</div></div></div></div >'
-					
-                    str += '<div class="item-footer"><span class="footer-label">小计:</span><span class="footer-content text-title">¥223.8</span></div></li > '
-                }
-                $('.va-list-container .list-content').append(str);
-            }
-
-            function init() {
-                pageNum = 1
-                $.ajax({
-                    type: 'POST',
-                    url: '/subscribepay/orderListDetails/getValuationList',
-                    data: {
-                        pageNum: pageNum,
-						order_code:{{.T.order_code}}
-                    },
-                    dataType: 'json',
-                    success: function (data) {
-                        console.log(data);
-                        appendList(data.list)
-                        if (data.hasNextPage) {
-                            $('.va-list-container').dropload({
-                                scrollArea: $('.va-list-container'),
-                                loadDownFn: function (me) {
-                                    getMoreList(me)
-                                }
-                            });
-                        } else {
-                            console.log('没有更多了');
-                        }
-                    },
-                    error: function (xhr, type) {
-                        console.log('Ajax error!');
-                    }
-                });
-            }
-            
-            function getMoreList(me) {
-                pageNum++
-                console.log(me);
-
-                // 相当于 if me { me.lock() }。如果传me了,就执行me.lock,如果没传,则不执行
-                // 详细可以百度短路运算
-                me && me.lock()
-                $.ajax({
-                    type: 'GET',
-                    url: '/page/json/valuation_list.json',
-                    data: {
-                        pageNum: pageNum
-                    },
-                    dataType: 'json',
-                    success: function (data) {
-                        console.log(data);
-                        appendList(data.list)
-
-                        // 没数据就将其置成没数据的状态
-                        // me && me.noData()
-                        // me && me.lock()
-
-                        me && me.unlock()
-                        // 每次数据加载完,必须重置
-                        me && me.resetload();
-                    },
-                    error: function (xhr, type) {
-                        alert('Ajax error!');
-                        // 即使加载出错,也得重置
-                        me && me.resetload();
-                    }
-                });
-            }
-
-
-            // 一切从js这里开始 -------------------- >
-            var pageNum = 1;
-            var pageSize = 10;
-            init()
-        })
-    </script>
-</body>
-
-</html>

+ 171 - 107
src/web/templates/weixin/vipsubscribe/vip_order_detail.html

@@ -14,102 +14,10 @@
     <link rel="stylesheet" type="text/css" href="{{Msg "seo" "cdn"}}/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}" />
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/public.css?v={{Msg "seo" "version"}}">
     <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
-    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/vip_order_detail.css?v={{Msg "seo" "version"}}1">
+    <link rel="stylesheet" href="{{Msg "seo" "cdn"}}/vipsubscribe/css/vip_order_detail.css?v={{Msg "seo" "version"}}2">
 	{{include "/common/weixin.html"}}
 	<script src="{{Msg "seo" "cdn"}}/wxswordfish/share.js?v={{Msg "seo" "version"}}"></script>   
 </head>
-<style>
-	.person > p >span , .unit > p >span{
-		margin-bottom: .12rem;
-	}
-	
-	.jymobile-setting-dialog {
-  font-size: .32rem;
-}
-
-.jymobile-setting-dialog .weui-dialog__hd {
-  padding: 0;
-  height: 0.82rem;
-  line-height: .82rem;
-  text-align: center;
-  background-color: #F5F4F9;
-}
-
-.jymobile-setting-dialog .weui-dialog__hd .weui-dialog__title {
-  font-size: .36rem;
-}
-
-.jymobile-setting-dialog .weui-dialog__bd {
-  padding: .37rem .1rem .38rem;
-  color: #1D1D1D;
-  font-size: .32rem;
-  text-align: center;
-}
-
-.jymobile-setting-dialog .weui-dialog__ft {
-  display: flex;
-  padding: 0 0 .38rem 0;
-  text-align: center;
-  justify-content: space-around;
-}
-
-.jymobile-setting-dialog .weui-dialog__ft:after {
-  border: none;
-}
-
-.jymobile-setting-dialog .weui-dialog__ft .weui-dialog__btn {
-  display: flex;
-  flex: none;
-  align-items: center;
-  justify-content: center;
-  width: 1.72rem;
-  height: .72rem;
-  color: #fff;
-  font-size: .32rem;
-  vertical-align: center;
-}
-
-.jymobile-setting-dialog .weui-dialog__ft .weui-dialog__btn_primary {
-  margin: 0;
-  margin-left: .3rem;
-  background-color: #2CB7CA;
-}
-
-.jymobile-setting-dialog .weui-dialog__ft .weui-dialog__btn_default {
-  margin: 0;
-  margin-right: .3rem;
-  background-color: #BFBFC3;
-}
-.cancel_time{
-	font-size: 16px;
-	margin-left: 20px;
-}
-
-.nothing{
-	margin: 50% auto;
-    display: flex;
-    justify-content: center;
-    align-items: center;
-	flex-direction:column;
-}
-.nothing img{
-    width: 120px;
-}
-.nothingDiv {
-	padding-top:0.42rem;
-	font-size:0.3rem;
-	color:#838384;
-}
-.valuationList {
-    display: inline-block;
-    padding: 0 .12rem;
-    border: 1px solid #2cb7ca;
-	border-radius: 0.06rem;
-	font-size: .28rem;
-	color:#2cb7ca;
-	margin-left: .15rem;
-}
-</style>
 <body style="visibility:hidden">
 	<div class="nothing" style="display:none">
         <img src="/vipsubscribe/image/nothing.png"/>
@@ -163,13 +71,13 @@
                     </div>
                     <div class="card-content">
                         <div class="item-list">
-                            <label class="dyqy">订阅区域:</label>
+                            <label class="dyqy">区域:</label>
                             <ul class="item-list-parents">
                                 <li class="areaNum"></li>
                             </ul>
                         </div>
                         <div class="item-list">
-                            <label class="dyhy">订阅行业:</label>
+                            <label class="dyhy">采购单位为行业:</label>
                             <ul class="item-list-parents">
                                 <li><span class="industryNum"></span></li>
                             </ul>
@@ -194,10 +102,32 @@
         <!--当状态为已取消时显示再次购买按钮-->
         <a class="button align" style="display:none">去支付<span class="cancel_time"></span></a>
     </div>
+	<!-- 计费清单picker -->
+	<div class="billing-list-container" style="display: none;">
+		<div class="weui-mask weui-animate-fade-in"></div>
+		<div class="weui-half-screen-dialog weui-picker weui-animate-slide-up">
+			<div class="weui-half-screen-dialog__hd">
+				<div class="dialog_hd__l"></div>
+				<div class="dialog_hd__title">计费清单</div>
+				<div class="dialog_hd__close iconfont icon-guanbi"></div>
+			</div>
+			<div class="weui-half-screen-dialog__bd valuation_list">
+				<div class="va-list-container">
+					<ul class="list-content">
+					</ul> 
+				</div>
+			</div>
+			<div class="weui-half-screen-dialog__ft">
+				<div class="va-total-container">
+					<span class="total-label">共计:</span>
+					<span class="total-price"></span>
+				</div>
+			</div>
+		</div>
+	</div>
 </body>
 <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
 <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
-<!--<script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/fastclick.js?v={{Msg "seo" "version"}}"></script>-->
 <script src="{{Msg "seo" "cdn"}}/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
 <script>
 try{
@@ -610,23 +540,42 @@ try{
 					break;
 				}
 
-          } 
-		    //计价清单
-            var filterObj=JSON.parse(r.data.order.filter);
-			var upgradeSubtotail=filterObj.upgradeSubtotail;
-			if (upgradeSubtotail){	//有则显示
-				$(".valuationList").css("display","");
-				$(".valuationList").on("click",function(){
-					window.location.href="/front/wxMyOrder/getValuationList/"+orderCode;
-				})
-			}
-		  
+          }  
         }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;
@@ -757,6 +706,121 @@ try{
 		    isPageHide = true;
 		});  
 	});
+	
+	 // picker的显示隐藏
+	function pickerShow(selector, f) {
+		if (f) {
+			// 添加进场动画,并显示
+			$(selector).find('.weui-mask').removeClass('weui-animate-fade-out').addClass('weui-animate-fade-in')
+			$(selector).find('.weui-picker').removeClass('weui-animate-slide-down').addClass('weui-animate-slide-up')
+			$(selector).show(300);
+		} else {
+			// 添加离场动画,并隐藏
+			$(selector).find('.weui-mask').removeClass('weui-animate-fade-in').addClass('weui-animate-fade-out')
+			$(selector).find('.weui-picker').removeClass('weui-animate-slide-up').addClass('weui-animate-slide-down')
+			$(selector).hide(300);
+		}
+	}
+	var total_price=0;
+	function appendList(list){
+		var returnHtml = "";
+		for (var i = 0; i < list.length; i++) {
+			var showTime=""
+			var start= new Date(list[i].startTime * 1000).pattern('yyyy-MM-dd');
+			var end =new Date(list[i].endTime * 1000).pattern('yyyy-MM-dd');
+			var effective = MonthsBetw(start,end);	//月份
+			showTime +="("+effective+"个月)"
+			if (effective>12){
+				showTime +="("+(effective/12)+"年)"
+			}
+			showTime += new Date(list[i].startTime * 1000).pattern('yyyy年MM月dd日') + "-" + new Date(list[i].endTime * 1000).pattern('yyyy年MM月dd日');
+			
+			
+			var typeName = "";
+			if (list[i].type === 1) {
+				typeName = "续费"
+			} else if (list[i].type === 0) {
+				typeName = "升级"
+			}
+			var showArea = "";
+			if (list[i].oldBuyset.areacount === -1) {
+				showArea = "全国"
+			} else {
+				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];
+					}
+					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 = "";
+			if (list[i].oldBuyset.buyerclasscount === -1) {
+				industryShow = "全行业"
+			} else {
+				industryShow = list[i].oldBuyset.buyerclasscount + "个行业";
+			}
+			returnHtml += "<li class='list-item'>"
+				+ '<div class="item-top">'
+				+ '<div class="item-header">'
+				+ '<span class="header-label">有效日期:</span>'
+				+ '<span class="header-content ellipsis">' + showTime + '</span>'
+				+ '</div>'
+				+ '<div class="item-body">'
+				+ '<div class="b-item body-area">'
+				+ '<div class="body-area-title text-title">区域</div>'
+				+ '<div class="body-area-sub">' + showArea + '</div>'
+				+ '</div>'
+				+ '<div class="b-item body-industry">'
+				+ '<div class="body-industry-title text-title">采购单位行业</div>'
+				+ '<div class="body-industry-sub">' + industryShow + '</div>'
+				+ '</div>'
+			if (typeName != "") {
+				returnHtml += '<div class="vp-type">'
+					+ '<div class="vp-type-text">' + typeName + '</div>'
+					+ '</div>'
+			}
+
+			returnHtml += '</div>'
+				+ '</div>'
+				+ '<div class="item-footer">'
+				+ '<span class="footer-label">小计:</span>'
+				+ '<span class="footer-content text-title">¥' +(list[i].price/100) + '</span>'
+				+ '</div>'
+				+ '</li>'
+				
+			total_price+=(list[i].price/100) ;
+		}
+		$(".total-price").text("¥"+total_price);
+		$(".list-content").html(returnHtml);
+	}
+	
+	function MonthsBetw(date1, date2) { //date1和date2是2019-3-12格式
+	    //用-分成数组
+	    date1 = date1.split("-");
+	    date2 = date2.split("-");
+	    //获取年,月数
+	    var year1 = parseInt(date1[0]),
+	        month1 = parseInt(date1[1]),
+	        year2 = parseInt(date2[0]),
+	        month2 = parseInt(date2[1]),
+	        //通过年,月差计算月份差
+	        months = (year2 - year1) * 12 + (month2 - month1);
+	    return months;
+	}
 </script>
 	{{include "/common/baiducc.html"}}
 </html>