From 177d64284a8d1ee07ce4a1de36c2180a7ed1fc6f Mon Sep 17 00:00:00 2001
From: zhouhao <787329763@qq.com>
Date: Thu, 04 Nov 2021 17:47:13 +0800
Subject: [PATCH] 修复代理端门店查询问题
---
src/views/old/store/business-center.vue | 439 ++++++++++++++++++++++++++++++++----------------------
1 files changed, 256 insertions(+), 183 deletions(-)
diff --git a/src/views/old/store/business-center.vue b/src/views/old/store/business-center.vue
index 427e108..2b98c40 100644
--- a/src/views/old/store/business-center.vue
+++ b/src/views/old/store/business-center.vue
@@ -6,205 +6,278 @@
* @Description:
-->
<template>
- <div class="hb-gmzf">
- <x-header :left-options="{backText: '', showBack: false}">和微分</x-header>
- <div v-if="showHwfProd">
- <div class="tab">
- <div class="tab-index">
- <p class="tab-index-one">请选择手机号类型</p>
+ <div class="hb-gmzf">
+ <div v-if='hnOrnxtype == 410000'>
+ <div class="head">
+ <div class="head-left"></div>
+ <div class="head-mid">和微分</div>
+ <div class="head-right" v-on:click="qrCodePage()">授权测试</div>
+ </div>
+ <div class="tab">
+ <van-tabs v-model="active" animated @click="onClick">
+ <van-tab
+ v-for="(item, index) in contTypeList"
+ :title="item.name"
+ :key="index"
+ >
+ <div v-for="(childItem, index) in item.childList" :key="index">
+ <div class="tab-head">
+ <div class="tab-head-icon"></div>
+ <div class="tab-head-font">
+ {{ childItem.name }}
</div>
- </div>
- <div class="order-xrw" v-if="showXrwType" @click="productPage(0)">
- <div class="order-xrw-create">
- <div class="order-xrw-create-icon">
- <img class="order-xrw-create-icon-image" src="../../../assets/imgs/product_xrw.png"></img>
- </div>
- <p class="order-xrw-create-text">
- 新入网号码
- </p>
- <i class="iconfont iconyou tab-index-two" style="width:10%;height:30px;"></i>
- </div>
- </div>
- <div class="order-xrw" style="margin-top: 30px" v-if="showXhzwType" @click="productPage(2)">
- <div class="order-xrw-create">
- <div class="order-xrw-create-icon">
- <img class="order-xrw-create-icon-image" src="../../../assets/imgs/product_xhzw.png"></img>
+ <div class="tab-head-remain"></div>
+ </div>
+ <div class="tab-index">
+ <div class="tab-index-row">
+ <div
+ class="tab-index-row-main"
+ v-for="(grandchildItem, index) in childItem.childList"
+ :key="index"
+ v-on:click="productPage(grandchildItem)"
+ >
+ <div class="tab-index-row-icon">
+ <img
+ class="order-xrw-create-icon-image"
+ :src="getIndexIcon(grandchildItem)"
+ />
</div>
- <p class="order-xrw-create-text">
- 携号转网号码
- </p>
- <i class="iconfont iconyou tab-index-two" style="width:10%;height:30px;"></i>
- </div>
- </div>
- <div class="order-xrw" style="margin-top: 30px" v-if="showClType" @click="productPage(1)">
- <div class="order-xrw-create">
- <div class="order-xrw-create-icon">
- <img class="order-xrw-create-icon-image" src="../../../assets/imgs/product_cl.png"></img>
+ <div class="tab-index-row-font">
+ {{ grandchildItem.name }}
</div>
- <p class="order-xrw-create-text">
- 存量号码
- </p>
- <i class="iconfont iconyou tab-index-two" style="width:10%;height:30px;"></i>
+ </div>
</div>
+ </div>
</div>
- </div>
+ </van-tab>
+ </van-tabs>
+ </div>
</div>
+ <wxPayScore v-else></wxPayScore>
+ </div>
</template>
<script>
- import { mapState, mapGetters } from 'vuex';
- import { async } from 'q';
- import Vue from 'vue';
- import { Toast } from 'vant';
- export default {
- components: {
- },
- data() {
- return {
- mblNoTypeList:{},
- showHwfProd:false,
- showXrwType:false,
- showClType:false,
- showXhzwType:false,
- };
- },
- computed:{
- ...mapState(['userinfo', 'msgCount']),
- ...mapGetters(['orgType']),
- },
- created () {
- if(this.orgType == 4) {
- this.getProdcuctList();
- this.init();
- }
- },
- methods: {
- init(){
- this.$api.wxScoreCreInit().then(res => {
- this.mblNoTypeList = res.body.mblNoTypeList|| {};
- this.mblNoTypeList.forEach(item => {
- if(item.code == '0'){
- this.showXrwType = true;
- }else if(item.code == '1'){
- this.showClType = true;
- }else if(item.code == '2'){
- this.showXhzwType = true;
- }
- });
- }, err => err);
- },
- productPage(type){
- let queryObj = {
- mblNoType:type,
- }
- this.$router.push({
- path: "/wx-pay-score",
- query: queryObj
- })
- },
- getProdcuctList(){
- this.$api.prodIndexTypeList().then(res => {
- let list = res.body.prodTypeRespVoList3 || [];
- list.forEach(item => {
- if(item.prodId ==30000016 && item.openStatus == 2){
- this.showHwfProd = true;
- }
- });
- });
- },
- }
+import { mapState, mapGetters } from "vuex";
+import wxPayScore from './wx-pay-score.vue'
+import Vue from "vue";
+import { Tab, Tabs } from "vant";
+Vue.use(Tab);
+Vue.use(Tabs);
+export default {
+ components: {wxPayScore},
+ data() {
+ return {
+ active: "",
+ contTypeList: [],
+ mblNoTypeList: {},
+ showHwfProd: false,
};
+ },
+ computed: {
+ ...mapState(["userinfo", "msgCount","hnOrnxtype"]),
+ ...mapGetters(["orgType"]),
+ },
+ created() {
+ if (this.orgType == 4) {
+ this.getProdcuctList();
+ this.init();
+ }
+ },
+ methods: {
+ getIndexIcon(item) {
+ let iconSrc =
+ location.origin +
+ location.pathname +
+ "/static/img/" +
+ item.icon +
+ ".png";
+ return iconSrc;
+ },
+ init() {
+ this.$api.wxScoreCreInit2().then(
+ (res) => {
+ this.contTypeList = res.body.contTypeList || {};
+ },
+ (err) => err
+ );
+ },
+ qrCodePage() {
+ this.$router.push({
+ path: "/wx-test-code",
+ query: "",
+ });
+ },
+ productPage(item) {
+ let queryObj = {
+ code: item.code,
+ mblNoType: item.mblNoType,
+ };
+ this.$router.push({
+ path: "/wx-pay-score",
+ query: queryObj,
+ });
+ },
+ getProdcuctList() {
+ this.$api.prodIndexTypeList().then((res) => {
+ let list = res.body.prodTypeRespVoList3 || [];
+ list.forEach((item) => {
+ if (item.prodId == 30000016 && item.openStatus == 2) {
+ this.showHwfProd = true;
+ }
+ });
+ });
+ },
+ },
+};
</script>
<style lang="less" scoped>
- .hb-gmzf {
- width: 100%;
+.head {
+ width: 100%;
+ height: 40px;
+ display: flex;
+ line-height: 40px;
+ background: #ffffff;
+ text-align: center;
+ &-left {
+ width: 33.3%;
+ height: 40px;
+ }
+ &-mid {
+ width: 33.3%;
+ height: 40px;
+ font-size: 18px;
+ font-family: PingFang SC;
+ font-weight: bold;
+ color: #333333;
+ }
+ &-right {
+ width: 33.4%;
+ height: 40px;
+ font-size: 14px;
+ font-family: PingFang SC;
+ color: #333333;
+ }
+}
+
+.tab {
+ width: 100%;
+ height: 100%;
+ &-head {
+ margin: 20px 30px 20px 30px;
+ width: 100%;
+ height: 24px;
+ line-height: 24px;
+ &-icon {
+ width: 3px;
+ margin-top: 3px;
+ float: left;
+ height: 18px;
+ background: #6c68ff;
+ }
+ &-font {
+ width: 20%;
+ margin-left: 10px;
+ height: 20px;
+ float: left;
+ font-size: 16px;
+ font-family: PingFang SC;
+ font-weight: bold;
+ color: #333333;
+ }
+ &-remain {
+ width: 70%;
+ float: left;
+ height: 20px;
+ }
+ }
+ .tab-index {
+ margin: 20px;
+ height: 110px;
+ line-height: 110px;
+ background: #ffffff;
+ box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.04);
+ border-radius: 16px;
+ &-row {
+ width: 100%;
+ height: 100px;
+ line-height: 100px;
+ margin: 0px 20px 0px 20px;
+ &-main {
+ width: 22.5%;
height: 100%;
- background: #FAFAFC;
- }
-
- .tab {
+ float: left;
+ text-align: center;
+ }
+ &-icon {
width: 100%;
- height: 200px;
- background: url('../../../assets/imgs/hwf_bg.png');
- background-size: 100% 100%;
- }
-
- .tab-index {
+ height: 30%;
+ &-image {
+ width: 100%;
+ height: 100%;
+ }
+ }
+ &-font {
width: 100%;
- height: 40px;
- line-height: 40px;
- box-sizing: border-box;
- padding: 100px 0px 0px 20px;
- color: #ffffff;
- i {
- font-size: 36px;
- }
- &-one,&-two{
- width: 100%;
- float: left;
- box-sizing: border-box;
- font-size: 20px;
- }
+ height: 30%;
+ font-size: 10px;
+ font-family: PingFang SC;
+ color: #333333;
+ }
}
+ }
+}
-
-
- .order-xrw {
- margin:-50px 10px 10px 10px;
- padding: 0 10px 0 10px;
- line-height: 100px;
- background: #FFFFFF;
- box-shadow: 0px 0px 26px 0px rgba(0, 0, 0, 0.04);
- border-radius: 16px;
- &-create {
- width: 100%;
- height: 100px;
- margin:0px 10px 0px 10px;
- &-icon {
- width:20%;
- height: 100%;
- float: left;
- text-align: center;
- &-image {
- width:43px;
- height:43px;
- margin-top:25px;
- }
- }
- &-text {
- width: 70%;
- float: left;
- heght:100%;
- font-size: 18px;
- font-family: PingFang SC;
- color: #333333;
- }
- &-arrow {
- margin-right:10px;
- width: 10%;
- background: url('../../../assets/imgs/product_xrw.png');
- float: right;
- }
- }
+.order-xrw {
+ margin: -50px 10px 10px 10px;
+ padding: 0 10px 0 10px;
+ line-height: 100px;
+ background: #ffffff;
+ box-shadow: 0px 0px 26px 0px rgba(0, 0, 0, 0.04);
+ border-radius: 16px;
+ &-create {
+ width: 100%;
+ height: 100px;
+ margin: 0px 10px 0px 10px;
+ &-icon {
+ width: 20%;
+ height: 100%;
+ float: left;
+ text-align: center;
+ &-image {
+ width: 43px;
+ height: 43px;
+ margin-top: 25px;
+ }
}
-
- .button-maintain {
- width:100%;
- height:100%;
- padding: 0 20px 0 20px;
- box-sizing: inherit;
- .button {
- margin: 50px 0 0 0;
- width:100%;
- height:50px;
- text-align: center;
- line-height: 50px;
- background: linear-gradient(90deg, #1C87FD, #219FFD);
- border-radius: 44px;
- .button-txt {
- margin: 8px 0 0 0;
- font-size: 22px;
- color: #FFFFFF;
- }
- }
+ &-text {
+ width: 70%;
+ float: left;
+ heght: 100%;
+ font-size: 18px;
+ font-family: PingFang SC;
+ color: #333333;
}
+ }
+}
+
+.button-maintain {
+ width: 100%;
+// height: 100%;
+ padding: 0 20px 0 20px;
+ box-sizing: inherit;
+ .button {
+ margin: 50px 0 0 0;
+ width: 100%;
+ height: 50px;
+ text-align: center;
+ line-height: 50px;
+ background: linear-gradient(90deg, #1c87fd, #219ffd);
+ border-radius: 44px;
+ .button-txt {
+ margin: 8px 0 0 0;
+ font-size: 22px;
+ color: #ffffff;
+ }
+ }
+}
</style>
--
Gitblit v1.8.0