Compare commits

..

No commits in common. "c48074a6539fe89da2a735d2a7df62d16f2b5ab1" and "4b26ae1ab75ea848ba6b1500c9e4db2c93348f9e" have entirely different histories.

10 changed files with 778 additions and 909 deletions

View File

@ -1,433 +1,326 @@
<template> <template>
<view class="table pr" :style="'zoom:' + size + ';'"> <view class="table pr" :style="'zoom:'+size+';'">
<view class="v-tr" style="display: flex"> <view class="v-tr" style="display: flex;">
<view <view class="v-td" :class="{
class="v-td" colspan: Array.isArray(treeData.children) ? treeData.children.length * 2 : 1,
:class="{ parentLevel: Array.isArray(treeData.children) && treeData.children.length,
colspan: Array.isArray(treeData.children) extend: Array.isArray(treeData.children) && treeData.children.length && treeData.extend
? treeData.children.length * 2 }">
: 1, <view :class="{ node: true }">
parentLevel: <view class="person" :class="Array.isArray(treeData.class) ? treeData.class : []">
Array.isArray(treeData.children) && treeData.children.length, <image @click.stop="clickNode(treeData)" class="person-ava" :src="treeData.avatarUrl" mode=""></image>
extend: </view>
Array.isArray(treeData.children) && </view>
treeData.children.length && </view>
treeData.extend, </view>
}" <view class="v-tr" v-if="Array.isArray(treeData.children) && treeData.children.length && treeData.extend">
> <view v-for="(children, index) in treeData.children" :key="index" colspan="2" class="childLevel v-td">
<view :class="{ node: true }"> <TreeChart :json="children" :left="0" :top="0" @click-node="clickNode" />
<view </view>
class="person" </view>
:class="Array.isArray(treeData.class) ? treeData.class : []" </view>
>
<view class="frame-text">
<view style="font-weight: bold">{{
treeData.nodeCode === '0-root' ? '' : treeData.nodeCode
}}</view>
<view v-if="treeData.memberCode && treeData.memberName">
<view> {{ treeData.memberCode }}</view>
<view>{{ treeData.memberName }}</view>
</view>
<view v-else> 空点位 </view>
</view>
</view>
</view>
</view>
</view>
<view
class="v-tr"
v-if="
Array.isArray(treeData.children) &&
treeData.children.length &&
treeData.extend
"
>
<view
v-for="(children, index) in treeData.children"
:key="index"
colspan="2"
class="childLevel v-td"
>
<TreeChart
:json="children"
:left="0"
:top="0"
@click-node="clickNode"
@click-top="clickTop"
/>
</view>
</view>
</view>
</template> </template>
<script> <script>
export default { export default {
name: 'TreeChart', name: 'TreeChart',
props: ['json', 'size'], props: ['json', 'size'],
data() { data() {
return { return {
treeData: {}, treeData: {}
} };
}, },
watch: { watch: {
json: { json: {
handler: function (Props) { handler: function(Props) {
let extendKey = function (jsonData) { let extendKey = function(jsonData) {
jsonData.extend = jsonData.extend = jsonData.extend === void 0 ? true : !!jsonData.extend;
jsonData.extend === void 0 ? true : !!jsonData.extend if (Array.isArray(jsonData.children)) {
if (Array.isArray(jsonData.children)) { jsonData.children.forEach(c => {
jsonData.children.forEach(c => { extendKey(c);
extendKey(c) });
}) }
} return jsonData;
return jsonData };
} if (Props) {
if (Props) { this.treeData = extendKey(Props);
this.treeData = extendKey(Props) }
} },
}, immediate: true
immediate: true, }
}, },
}, methods: {
methods: { toggleExtend: function(treeData) {
toggleExtend: function (treeData) { treeData.extend = !treeData.extend;
treeData.extend = !treeData.extend this.$forceUpdate();
this.$forceUpdate() },
}, clickNode(e){
clickNode(e) { this.$emit('click-node',e)
this.$emit('click-node', e) }
}, }
clickTop(e) { };
this.$emit('click-top', e)
},
},
}
</script> </script>
<style scoped> <style scoped>
.f18 { .f18 {
font-size: 18rpx; font-size: 18rpx;
} }
.pv-btn { .pv-btn {
width: 200rpx; width: 200rpx;
height: 50rpx; height: 50rpx;
background: #007bff; background-color: #b2821e;
color: #fff; color: #fff;
font-size: 20rpx; font-size: 20rpx;
line-height: 50rpx; line-height: 50rpx;
display: flex; display: flex;
align-items: center; align-items: center;
margin: auto; margin: auto;
margin-top: 12rpx; margin-top: 12rpx;
margin-bottom: 12rpx; margin-bottom: 12rpx;
border-radius: 8rpx; }
box-shadow: 0 2rpx 8rpx rgba(0, 123, 255, 0.2);
transition: all 0.3s ease;
}
.pv-btn:hover { .next-btn {
background: #0056b3; border-radius: 50%;
transform: translateY(-1rpx); background: none;
box-shadow: 0 4rpx 12rpx rgba(0, 123, 255, 0.3); width: 40rpx;
} height: 40rpx;
margin: auto;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
}
.next-btn { .table {
border-radius: 50%; border-collapse: separate !important;
background: #6c757d; border-spacing: 0 !important;
width: 40rpx; width: 100%;
height: 40rpx; }
margin: auto;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
box-shadow: 0 2rpx 4rpx rgba(0, 0, 0, 0.1);
transition: all 0.3s ease;
}
.next-btn:hover { .v-tr {
background: #495057;
transform: scale(1.05);
box-shadow: 0 4rpx 8rpx rgba(0, 0, 0, 0.15);
}
.table { display: inline-flex;
border-collapse: separate !important; justify-content: center;
border-spacing: 0 !important; align-items: flex-start;
width: 100%; /* width: 100%; */
/* background: #f8f9fa; */
padding: 40rpx 0;
}
.v-tr { }
display: inline-flex;
justify-content: center;
align-items: flex-start;
width: 100%;
}
.v-td { .v-td {
position: relative; position: relative;
vertical-align: top; vertical-align: top;
padding: 0 0 130rpx 0; padding: 0 0 100rpx 0;
text-align: center; text-align: center;
} }
.extend_handle { .extend_handle {
position: absolute; position: absolute;
left: 50%; left: 50%;
bottom: 30rpx; bottom: 30rpx;
width: 10rpx; width: 10rpx;
height: 10rpx; height: 10rpx;
padding: 10rpx; padding: 10rpx;
transform: translate3d(-30rpx, 0, 0); transform: translate3d(-30rpx, 0, 0);
cursor: pointer; cursor: pointer;
transition: all 0.3s ease; }
}
.extend_handle:before { .extend_handle:before {
content: ''; content: '';
display: block; display: block;
width: 100%; width: 100%;
height: 100%; height: 100%;
box-sizing: border-box; box-sizing: border-box;
border: 4rpx solid; border: 4rpx solid;
border-color: #6c757d #6c757d transparent transparent; border-color: #f2f2f2 #f2f2f2 transparent transparent;
transform: rotateZ(135deg); transform: rotateZ(135deg);
transform-origin: 50% 50% 0; transform-origin: 50% 50% 0;
transition: all 0.3s ease; transition: transform ease 300ms;
} }
.extend_handle:hover:before { .extend_handle:hover:before {
border-color: #495057 #495057 transparent transparent; border-color: #f2f2f2 #f2f2f2 transparent transparent;
transform: rotateZ(135deg) scale(1.1); }
}
.extend .extend_handle:before { .extend .extend_handle:before {
transform: rotateZ(-45deg); transform: rotateZ(-45deg);
} }
.extend .extend_handle:hover:before { .extend::after {
transform: rotateZ(-45deg) scale(1.1); content: '';
} position: absolute;
left: 50%;
bottom: 84rpx;
height: 84rpx;
border-left: 4rpx solid #f2f2f2;
transform: translate3d(-2rpx, 0, 0);
}
.extend::after { .childLevel::before {
content: ''; content: '';
position: absolute; position: absolute;
left: 50%; left: 50%;
bottom: 84rpx; bottom: 100%;
height: 84rpx; height: 84rpx;
border-left: 4rpx solid #dee2e6; border-left: 4rpx solid #f2f2f2;
transform: translate3d(-2rpx, 0, 0); transform: translate3d(-2rpx, 0, 0);
} }
.childLevel::before { .childLevel::after {
content: ''; content: '';
position: absolute; position: absolute;
left: 50%; left: 0;
bottom: 100%; right: 0;
height: 84rpx; top: -88rpx;
border-left: 4rpx solid #dee2e6; border-top: 4rpx solid #f2f2f2;
transform: translate3d(-2rpx, 0, 0); }
}
.childLevel::after { .childLevel:first-child:before,
content: ''; .childLevel:last-child:before {
position: absolute; display: none;
left: 0; }
right: 0;
top: -88rpx;
border-top: 4rpx solid #dee2e6;
}
.childLevel:first-child:before, .childLevel:first-child:after {
.childLevel:last-child:before { left: 50%;
display: none; height: 84rpx;
} border: 4rpx solid;
border-color: #f2f2f2 transparent transparent #f2f2f2;
border-radius: 6rpx 0 0 0;
transform: translate3d(2rpx, 0, 0);
}
.childLevel:first-child:after { .childLevel:last-child:after {
left: 50%; right: 50%;
height: 84rpx; height: 84rpx;
border: 4rpx solid; border: 4rpx solid;
border-color: #dee2e6 transparent transparent #dee2e6; border-color: #f2f2f2 #f2f2f2 transparent transparent;
border-radius: 8rpx 0 0 0; border-radius: 0 6rpx 0 0;
transform: translate3d(2rpx, 0, 0); transform: translate3d(-2rpx, 0, 0);
} }
.childLevel:last-child:after { .childLevel:first-child.childLevel:last-child::after {
right: 50%; left: auto;
height: 84rpx; border-radius: 0;
border: 4rpx solid; border-color: transparent #f2f2f2 transparent transparent;
border-color: #dee2e6 #dee2e6 transparent transparent; transform: translate3d(2rpx, 0, 0);
border-radius: 0 8rpx 0 0; }
transform: translate3d(-2rpx, 0, 0);
}
.childLevel:first-child.childLevel:last-child::after { .node {
left: auto; position: relative;
border-radius: 0; display: inline-block;
border-color: transparent #dee2e6 transparent transparent; margin: 0 10rpx;
transform: translate3d(2rpx, 0, 0); box-sizing: border-box;
} text-align: center;
}
.node { .node .person {
position: relative; position: relative;
display: inline-block; display: inline-block;
margin: 0 10rpx; z-index: 2;
box-sizing: border-box; width: 104rpx;
text-align: center; height: 104rpx;
} }
.node .person { .node .person .person-ava {
position: relative; width: 104rpx;
display: inline-block; height: 104rpx;
z-index: 2; }
width: fit-content;
padding: 20rpx;
background: #ffffff;
box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.1);
border-radius: 16rpx;
border: 2rpx solid #e9ecef;
transition: all 0.3s ease;
cursor: pointer;
}
.node .person:hover { .node .person .avat {
transform: translateY(-4rpx); display: block;
box-shadow: 0 8rpx 24rpx rgba(0, 0, 0, 0.15); width: 4em;
border-color: #6c757d; height: 4em;
} margin: auto;
overflow: hidden;
background: #fff;
border: 4px solid #f2f2f2;
box-sizing: border-box;
border-radius: 0.5em;
}
.node .person:active { .node .person .avat img {
transform: translateY(-2rpx); width: 100%;
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1); height: 100%;
} }
.node .person .person-ava { .node .person .name {
width: 88rpx; display: block;
height: 53rpx; margin: auto;
border-radius: 15rpx; overflow: hidden;
box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.1); box-sizing: border-box;
} overflow: hidden;
font-size: 20rpx;
line-height: 1.5;
padding-top: 24rpx;
}
.frame-text { .node .person .name-bottom {
border-radius: 8rpx; display: block;
font-size: 22rpx; margin: auto;
margin: 0 auto; overflow: hidden;
color: #495057; border-top: none;
font-weight: 500; box-sizing: border-box;
line-height: 1.4; overflow: hidden;
} }
.frame-text view:first-child { .node .person .operation {}
font-weight: 600;
font-size: 24rpx;
margin-bottom: 4rpx;
color: #212529;
}
.frame-text view:not(:first-child) { .node.hasMate::after {
font-size: 20rpx; content: '';
color: #6c757d; position: absolute;
margin-bottom: 2rpx; left: 2em;
} right: 2em;
top: 2em;
border-top: 4px solid #f2f2f2;
z-index: 1;
}
.node .person .avat { /* 横板 */
display: block; .landscape {
width: 4em; transform: translate(-100%, 0) rotate(-90deg);
height: 4em; transform-origin: 100% 0;
margin: auto; }
overflow: hidden;
background: #f8f9fa;
border: 4px solid #e9ecef;
box-sizing: border-box;
border-radius: 1em;
}
.node .person .avat img { .landscape .node {
width: 100%; text-align: left;
height: 100%; height: 8em;
border-radius: inherit; width: 8em;
} }
.node .person .name { .landscape .person {
display: block; position: relative;
margin: auto; transform: rotate(90deg);
overflow: hidden; padding-left: 4.5em;
box-sizing: border-box; height: 4em;
font-size: 20rpx; top: 4em;
line-height: 1.5; left: -1em;
padding-top: 24rpx; }
color: #495057;
font-weight: 500;
}
.node .person .name-bottom { .landscape .person .avat {
display: block; position: absolute;
margin: auto; left: 0;
overflow: hidden; }
border-top: none;
box-sizing: border-box;
color: #6c757d;
}
.node.hasMate::after { .landscape .person .name {
content: ''; height: 4em;
position: absolute; line-height: 4em;
left: 2em; }
right: 2em;
top: 2em;
border-top: 4px solid #dee2e6;
z-index: 1;
}
/* 横板 */ .landscape .hasMate {
.landscape { position: relative;
transform: translate(-100%, 0) rotate(-90deg); }
transform-origin: 100% 0;
}
.landscape .node { .landscape .hasMate .person {
text-align: left; position: absolute;
height: 8em; }
width: 8em;
}
.landscape .person { .landscape .hasMate .person:first-child {
position: relative; left: auto;
transform: rotate(90deg); right: -4em;
padding-left: 4.5em; }
height: 4em;
top: 4em;
left: -1em;
}
.landscape .person .avat { .landscape .hasMate .person:last-child {
position: absolute; left: -4em;
left: 0; margin-left: 0;
} }
.landscape .person .name {
height: 4em;
line-height: 4em;
}
.landscape .hasMate {
position: relative;
}
.landscape .hasMate .person {
position: absolute;
}
.landscape .hasMate .person:first-child {
left: auto;
right: -4em;
}
.landscape .hasMate .person:last-child {
left: -4em;
margin-left: 0;
}
</style> </style>

View File

@ -1,25 +1,17 @@
const http = uni.$u.http const http = uni.$u.http
//架构上方会员等级图标 //架构上方会员等级图标
export const getAvarerInfo = params => export const getAvarerInfo = (params) => http.get('/member/api/member-structure/get-avatar-info', {params})
http.get('/member/api/member-structure/get-avatar-info', { params })
//结算期数下拉选 //结算期数下拉选
export const getMemberSettlePeriod = params => export const getMemberSettlePeriod = (params) => http.get('/member/api/member-structure/get-member-settle-period', {params})
http.get('/member/api/member-structure/get-member-settle-period', { params })
//安置架构 //安置架构
export const getAzFramework = params => export const getAzFramework = (params) => http.get('/member/api/member-structure/az-framework', {params})
http.get('/member/api/member-structure/three-framework', { params })
// 查询会员子节点
export const getChildList = params =>
http.get('/member/api/member-structure/childList', { params })
//推荐架构 //推荐架构
export const getTjFramework = params => export const getTjFramework = (params) => http.get('/member/api/member-structure/tj-framework', {params})
http.get('/member/api/member-structure/tj-framework', { params })
//转换为base64格式用于图片下载 //转换为base64格式用于图片下载
export const getUrlBase = data => export const getUrlBase = (data) => http.post('/member/manage/member-structure/get-url-base64', data)
http.post('/member/manage/member-structure/get-url-base64', data)

View File

@ -20,7 +20,7 @@ module.exports = vm => {
//#ifdef DEV_SERVER //#ifdef DEV_SERVER
console.log('DEV_SERVER') console.log('DEV_SERVER')
config.baseURL = 'https://t-zk.beida666.com/prod-api' config.baseURL = 'http://192.168.0.86:8080'
//#endif //#endif
//#ifdef QA_SERVER //#ifdef QA_SERVER

View File

@ -739,7 +739,7 @@
{ {
"path": "pages/architecture/resettleArchite/resettle1", "path": "pages/architecture/resettleArchite/resettle1",
"style": { "style": {
"navigationBarTitleText": "方案一", "navigationBarTitleText": "安置方案一",
"enablePullDownRefresh": false "enablePullDownRefresh": false
} }
}, },

View File

@ -1,128 +1,117 @@
<template> <template>
<view class="content"> <view class="content">
<view class="theflex"> <view class="theflex">
<view <view @click="goRouter(item.path)" class="kuaibox" v-for="(item,index) in kuaiList"
@click="goRouter(item.path)" :key="index">
class="kuaibox" <view class="">
v-for="(item, index) in menus" {{item.name}}
:key="index" </view>
> <image class="kuaiimg" :src="item.url" mode=""></image>
<view class=""> </view>
{{ item.name }} </view>
</view>
<image class="kuaiimg" :src="item.url" mode=""></image> </view>
</view>
</view>
</view>
</template> </template>
<script> <script>
import * as mar from '@/config/market.js' import * as mar from "@/config/market.js"
export default { export default {
data() { data() {
return { return {
menus: [ kuaiList: [{
{ name:'安置方案一',
name: '方案一', url: "../../static/images/my_icon14.png",
url: '../../static/images/my_icon14.png', path: "/pages/architecture/resettleArchite/resettle1",
path: '/pages/architecture/resettleArchite/resettle1', value: "marketDynamics",
value: 'marketDynamics', isShow: false,
isShow: false, }, {
}, name: '安置方案二',
// { url: "../../static/images/my_icon14.png",
// name: '', path: "/pages/architecture/resettleArchite/resettle2",
// url: '../../static/images/my_icon14.png', value: 'incomeDetail',
// path: '/pages/architecture/resettleArchite/resettle2', isShow: false,
// value: 'incomeDetail', }, {
// isShow: false, name: '安置方案三',
// }, url: "../../static/images/my_icon14.png",
// { path: "/pages/architecture/resettleArchite/resettle3",
// name: '', value: 'bonusSource',
// url: '../../static/images/my_icon14.png', isShow: false,
// path: '/pages/architecture/resettleArchite/resettle3', }, {
// value: 'bonusSource', name: '安置方案四',
// isShow: false, url: "../../static/images/my_icon14.png",
// }, path: "/pages/architecture/resettleArchite/resettle4",
// { isShow: false,
// name: '', value: 'appraisal',
// url: '../../static/images/my_icon14.png', }, {
// path: '/pages/architecture/resettleArchite/resettle4', name: '推荐方案一',
// isShow: false, url: "../../static/images/my_icon14.png",
// value: 'appraisal', path: "/pages/architecture/recommendArchite/recommend1",
// }, isShow: false,
// { value: 'registration',
// name: '', }, {
// url: '../../static/images/my_icon14.png', name: '推荐方案二',
// path: '/pages/architecture/recommendArchite/recommend1', url: "../../static/images/my_icon14.png",
// isShow: false, path: "/pages/architecture/recommendArchite/recommend2",
// value: 'registration', isShow: false,
// }, // value: 'investment',
// { }, {
// name: '', name: '推荐方案三',
// url: '../../static/images/my_icon14.png', url: "../../static/images/my_icon14.png",
// path: '/pages/architecture/recommendArchite/recommend2', path: "/pages/architecture/recommendArchite/recommend3",
// isShow: false, isShow: false,
// // value: 'investment', value: 'activeZone',
// }, }, {
// { name: '推荐方案四',
// name: '', url: "../../static/images/my_icon14.png",
// url: '../../static/images/my_icon14.png', path: "/pages/architecture/recommendArchite/recommend4",
// path: '/pages/architecture/recommendArchite/recommend3', isShow: false,
// isShow: false, value: 'activeZone',
// value: 'activeZone', }]
// }, }
// { },
// name: '',
// url: '../../static/images/my_icon14.png',
// path: '/pages/architecture/recommendArchite/recommend4',
// isShow: false,
// value: 'activeZone',
// },
],
}
},
methods: { methods: {
goRouter(path) { goRouter(path) {
uni.navigateTo({ uni.navigateTo({
url: path, url: path
}) })
}, },
},
} }
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.content { .content {
background-color: #f2f2f2; background-color: #F2F2F2;
height: 100vh; height: 100vh;
padding: 4rpx 21rpx 500rpx 21rpx; padding: 4rpx 21rpx 500rpx 21rpx;
.theflex { .theflex {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between; justify-content: space-between;
} }
.kuaibox { .kuaibox {
width: 40%; width: 40%;
// height: 150rpx; // height: 150rpx;
border-radius: 20rpx; border-radius: 20rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
padding: 60rpx 40rpx 60rpx 22rpx; padding: 60rpx 40rpx 60rpx 22rpx;
margin: 13rpx 0rpx; margin: 13rpx 0rpx;
background-color: #ffffff; background-color: #FFFFFF;
font-size: 24rpx; font-size: 24rpx;
font-family: Source Han Sans CN; font-family: Source Han Sans CN;
font-weight: 400; font-weight: 400;
color: #666666; color: #666666;
.kuaiimg { .kuaiimg {
width: 52rpx; width: 52rpx;
height: 53rpx; height: 53rpx;
} }
} }
} }
</style> </style>

View File

@ -1,27 +1,42 @@
<template> <template>
<view> <view>
<view class="seach"> <view class="seach">
<view class="neibox"> 子点位 </view> <view class="neibox"> 会员编号 </view>
<view class="seach_i"> <view class="seach_i">
<view class="inputbox" @click="childNodeListVisible = true"> <u--input class="these" v-model="queryParams.memberCode">
<view class=""> <template slot="suffix">
{{ selectedChildNodeName ? selectedChildNodeName : '请选择子点位' }} <view class="seatch_r">
</view> <u-icon
<u-icon name="arrow-right" size="24rpx" color="#005bac"></u-icon> @click="getDataList"
</view> name="search"
size="22"
color="#fff"
></u-icon>
</view>
</template>
</u--input>
</view> </view>
<view class="neibox" @click="popShow = true"> 筛选 </view> <view class="neibox" @click="popShow = true"> 筛选 </view>
</view> </view>
<view class="mainbox"> <view class="mainbox">
<view class="main_top">
<view
class="top_flex"
v-for="(item, index) in avaerInfoList"
:key="index"
>
<img class="theimg" :src="item.value" alt="" />
<view class="fle2">{{ item.name }}</view>
</view>
</view>
<view class="main_bottom"> <view class="main_bottom">
<view <view
class="scoll_main" class="scoll_main"
ref="scrollMain" ref="scrollMain"
@touchstart.prevent="handleTouchStart" @touchstart="handleTouchStart"
@touchmove.prevent="handleTouchMove" @touchmove="handleTouchMove"
@touchend="handleTouchEnd" @touchend="handleTouchEnd"
@dblclick="handleDoubleClick"
:style="containerStyle"
> >
<TreeChart <TreeChart
:size="size" :size="size"
@ -51,27 +66,29 @@
<view class="top_red" @click="popShow = false">{{ '返回' }}</view> <view class="top_red" @click="popShow = false">{{ '返回' }}</view>
</view> </view>
<view class="typesBox"> <view class="typesBox">
<view class="typeTitle" @click="stageListVisible = true"> 阶段 </view> <view class="typeTitle" @click="listShow = true"> 结算期数 </view>
<view class="choiceBox"> <view class="choiceBox">
<view class="inputbox" @click="stageListVisible = true"> <view class="inputbox" @click="listShow = true">
<view class=""> <view class="">
{{ stageName ? stageName : '请选择' }} {{ settleName ? settleName : '请选择' }}
</view> </view>
<u-icon name="arrow-right" size="24rpx" color="#090000"></u-icon> <u-icon name="arrow-right" size="24rpx" color="#090000"></u-icon>
</view> </view>
</view> </view>
</view> </view>
<view class="typesBox"> <view class="typesBox">
<view class="typeTitle" @click="statusListVisible = true"> <view class="typeTitle"> 代数 </view>
状态
</view>
<view class="choiceBox"> <view class="choiceBox">
<view class="inputbox" @click="statusListVisible = true"> <u--input
<view class=""> v-model="queryParams.level"
{{ statusName ? statusName : '请选择' }} style="
</view> background-color: rgba(176, 196, 222, 0.45);
<u-icon name="arrow-right" size="24rpx" color="#090000"></u-icon> border-color: rgba(176, 196, 222, 0.45) !important;
</view> "
placeholder="请输入"
border="surround"
shape="circle"
></u--input>
</view> </view>
</view> </view>
@ -81,7 +98,7 @@
class="bottom_btn thebtn2" class="bottom_btn thebtn2"
@click=" @click="
() => { () => {
handleSearch(), (popShow = false) getDataList(), (popShow = false)
} }
" "
>{{ '确定' }} >{{ '确定' }}
@ -89,32 +106,128 @@
</view> </view>
</view> </view>
<u-picker <u-picker
@cancel="stageListVisible = false" @cancel="listShow = false"
:show="stageListVisible" :show="listShow"
ref="uPicker" ref="uPicker"
:columns="stageList" :columns="memberSettlePeriodList"
@confirm="stagePickerHandleConfirm" @confirm="confirm"
keyName="label" keyName="settleDate"
></u-picker>
<u-picker
@cancel="statusListVisible = false"
:show="statusListVisible"
ref="uPicker"
:columns="statusList"
@confirm="statusPickerHandleConfirm"
keyName="label"
></u-picker> ></u-picker>
</u-popup> </u-popup>
<!-- 子点位选择picker --> <u-popup
<u-picker :show="isPop"
@cancel="childNodeListVisible = false" closeable
:show="childNodeListVisible" mode="center"
ref="childNodePicker" round="10"
:columns="childNodeColumns" @close="isPop = false"
@confirm="childNodePickerHandleConfirm" >
keyName="childNode" <view class="ispop_box">
></u-picker> <view class="Poster1">
<view class="pop_top">
<view class="pop_top">
<view>
<image
crossorigin="anonymous"
data-etype="image"
:data-enode="popMould.avatarUrl"
:src="'data:image/png;base64,' + popMould.avatarUrlBase64"
mode="aspectFit"
class="poster1"
></image>
</view>
<view>
<image
crossorigin="anonymous"
data-etype="image"
:data-enode="popMould.countryUrl2"
:src="'data:image/png;base64,' + popMould.countryUrl2Base64"
mode="aspectFit"
class="poster2"
></image>
</view>
</view>
<view class="top_right">
<image
crossorigin="anonymous"
data-etype="image"
:data-enode="popMould.settleCountryUrl2"
:src="
'data:image/png;base64,' + popMould.settleCountryUrl2Base64
"
mode="aspectFit"
class="poster2"
></image>
<view style="margin-top: 18rpx"> 结算国家 </view>
</view>
</view>
<view class="pop_center">
<view class="center_flex">
<view class="c1">会员编号</view>
<view class="c2">{{ popMould.memberCode }}</view>
</view>
<view class="center_flex">
<view class="c1">会员姓名</view>
<view class="c2">{{ popMould.name }}</view>
</view>
<view class="center_flex">
<view class="c1">支付时间</view>
<view class="c2">{{ popMould.payDate }}</view>
</view>
</view>
<view class="pop_bottom">
<view class="b_flex">
<view class="bt1">业绩</view>
<view class="bt1">左区</view>
<view class="bt1">右区</view>
</view>
<view class="b_flex">
<view class="bt2">真实新增</view>
<view class="bt2">{{ popMould.leftRealNewPv }}</view>
<view class="bt2">{{ popMould.rightRealNewPv }}</view>
</view>
<view class="b_flex">
<view class="bt2">首购新增</view>
<view class="bt2">{{ popMould.leftFirstPurchaseAdd }}</view>
<view class="bt2">{{ popMould.rightFirstPurchaseAdd }}</view>
</view>
<view class="b_flex">
<view class="bt2">复购新增</view>
<view class="bt2">{{ popMould.leftRepeatPurchaseSurplus }}</view>
<view class="bt2">{{ popMould.rightRepeatPurchaseSurplus }}</view>
</view>
<view class="b_flex">
<view class="bt2">真实累计</view>
<view class="bt2">{{ popMould.leftRealTotal }}</view>
<view class="bt2">{{ popMould.rightRealTotal }}</view>
</view>
<view class="b_flex">
<view class="bt2">首购累计</view>
<view class="bt2">{{ popMould.leftFirstTotal }}</view>
<view class="bt2">{{ popMould.rightFirstTotal }}</view>
</view>
<view class="b_flex">
<view class="bt2">复购累计</view>
<view class="bt2">{{ popMould.leftRepeatPurchaseTotal }}</view>
<view class="bt2">{{ popMould.rightRepeatPurchaseTotal }}</view>
</view>
<view class="b_flex">
<view class="bt2">首购结余</view>
<view class="bt2">{{ popMould.leftFirstSurplus }}</view>
<view class="bt2">{{ popMould.rightFirstSurplus }}</view>
</view>
<view class="b_flex">
<view class="bt2">复购结余</view>
<view class="bt2">{{ popMould.leftRepeatPurchaseSurplus }}</view>
<view class="bt2">{{ popMould.rightRepeatPurchaseSurplus }}</view>
</view>
</view>
</view>
<view class="btn_box">
<view class="small-btn" @click="downImage('Poster1')">下载图片</view>
<view class="small-text-btn" @click="copyText()">复制文字</view>
</view>
</view>
</u-popup>
<Eposter <Eposter
width="750" width="750"
height="1334" height="1334"
@ -140,36 +253,20 @@ export default {
}, },
data() { data() {
return { return {
childNodeList: [], avaerInfoList: [],
childNodeColumns: [[]],
childNodeListVisible: false,
selectedChildNodeName: '',
treeData: [], treeData: [],
queryParams: { queryParams: {
childNode: '', memberSettlePeriodId: '', //
stage: 1, memberCode: '', //
status: 0, level: 6, //
type: 1,
}, },
stageList: [ memberSettlePeriodList: [], //
[
{ value: 1, label: '阶段一' },
{ value: 2, label: '阶段二' },
{ value: 3, label: '阶段三' },
],
], //
statusList: [
[
{ value: 0, label: '已完成' },
{ value: 1, label: '未完成' },
],
], //
popShow: false, popShow: false,
stageListVisible: false, listShow: false,
statusListVisible: false, settleName: '',
stageName: '',
statusName: '',
data: {}, data: {},
size: 0.5, size: 0.3,
landscape: [], landscape: [],
popMould: {}, popMould: {},
isPop: false, isPop: false,
@ -182,53 +279,14 @@ export default {
y: 0, y: 0,
}, },
initialDistance: 0, initialDistance: 0,
initialSize: 0.4, //
minSize: 0.2, //
maxSize: 3.0, //
isZooming: false, //
isDragging: false, //
dragStartPosition: { x: 0, y: 0 }, //
containerTransform: { x: 0, y: 0 }, //
lastTouchTime: 0, //
lastTouchPosition: { x: 0, y: 0 }, //
velocity: { x: 0, y: 0 }, //
maxTransform: { x: 1000, y: 1000 }, //
list: [], list: [],
} }
}, },
onLoad() { onLoad() {
this.init() this.getAvarerInfo()
this.getChildList().then(() => { this.getDataList()
this.getDataList()
})
},
mounted() {
//
this.$nextTick(() => {
console.log('组件已挂载')
})
},
computed: {
containerStyle() {
return {
transform: `translate(${this.containerTransform.x}px, ${this.containerTransform.y}px) scale(${this.size})`,
transformOrigin: 'center center',
transition:
this.isDragging || this.isZooming
? 'none'
: 'transform 0.1s ease-out',
}
},
}, },
methods: { methods: {
init() {
this.stageName = this.stageList[0][0].label
this.statusName = this.statusList[0][0].label
this.queryParams.stage = this.stageList[0][0].value
this.queryParams.status = this.statusList[0][0].value
},
// //
copyText() { copyText() {
let self = this let self = this
@ -288,210 +346,75 @@ export default {
}, },
handleTouchStart(event) { handleTouchStart(event) {
console.log('handleTouchStart triggered', event.touches.length)
const touch1 = event.touches[0] const touch1 = event.touches[0]
const touch2 = event.touches[1] const touch2 = event.touches[1]
const currentTime = Date.now()
if (touch2) { if (touch2) {
// -
this.isZooming = true
this.isDragging = false
this.initialSize = this.size
this.touchStartPosition1 = { this.touchStartPosition1 = {
x: touch1.clientX, x: touch1.pageX,
y: touch1.clientY, y: touch1.pageY,
} }
this.touchStartPosition2 = { this.touchStartPosition2 = {
x: touch2.clientX, x: touch2.pageX,
y: touch2.clientY, y: touch2.pageY,
} }
this.initialDistance = Math.hypot( this.initialDistance = Math.hypot(
touch2.clientX - touch1.clientX, touch2.pageX - touch1.pageX,
touch2.clientY - touch1.clientY touch2.pageY - touch1.pageY
) )
} else {
// -
this.isZooming = false
this.isDragging = true
this.dragStartPosition = {
x: touch1.clientX,
y: touch1.clientY,
}
this.lastTouchTime = currentTime
} }
}, },
handleTouchMove(event) { handleTouchMove(event) {
const touch1 = event.touches[0] const touch1 = event.touches[0]
const touch2 = event.touches[1] const touch2 = event.touches[1]
if (touch2) {
if (touch2 && this.isZooming && this.initialDistance > 0) {
//
const currentDistance = Math.hypot( const currentDistance = Math.hypot(
touch2.clientX - touch1.clientX, touch2.pageX - touch1.pageX,
touch2.clientY - touch1.clientY touch2.pageY - touch1.pageY
) )
const scale = currentDistance / this.initialDistance const scale = currentDistance / this.initialDistance
let newSize = this.initialSize * scale this.size = this.size * scale
//
newSize = Math.max(this.minSize, Math.min(this.maxSize, newSize))
//
const sizeDiff = newSize - this.size
this.size = this.size + sizeDiff * 0.3
} else if (!touch2 && this.isDragging) {
//
const deltaX = touch1.clientX - this.dragStartPosition.x
const deltaY = touch1.clientY - this.dragStartPosition.y
console.log('拖动中', {
deltaX,
deltaY,
touch: { x: touch1.clientX, y: touch1.clientY },
dragStart: this.dragStartPosition,
containerTransform: this.containerTransform,
})
//
this.velocity.x = deltaX * 0.1
this.velocity.y = deltaY * 0.1
//
let newX = this.containerTransform.x + deltaX * 0.8
let newY = this.containerTransform.y + deltaY * 0.8
//
const scaledMaxX = this.maxTransform.x * this.size
const scaledMaxY = this.maxTransform.y * this.size
newX = Math.max(-scaledMaxX, Math.min(scaledMaxX, newX))
newY = Math.max(-scaledMaxY, Math.min(scaledMaxY, newY))
this.containerTransform.x = newX
this.containerTransform.y = newY
//
this.dragStartPosition.x = touch1.clientX
this.dragStartPosition.y = touch1.clientY
// DOM
this.updateContainerTransform()
} }
}, },
handleTouchEnd(event) { handleTouchEnd() {
const currentTime = Date.now() this.touchStartPosition1 = {
const touchDuration = currentTime - this.lastTouchTime x: 0,
y: 0,
// }
if ( this.touchStartPosition2 = {
this.isDragging && x: 0,
(Math.abs(this.velocity.x) > 1 || Math.abs(this.velocity.y) > 1) y: 0,
) {
this.startInertiaScroll()
} }
//
this.isZooming = false
this.isDragging = false
this.touchStartPosition1 = { x: 0, y: 0 }
this.touchStartPosition2 = { x: 0, y: 0 }
this.initialDistance = 0 this.initialDistance = 0
this.initialSize = this.size
this.dragStartPosition = { x: 0, y: 0 }
}, },
//
startInertiaScroll() {
const friction = 0.95 //
const minVelocity = 0.1 //
const animateInertia = () => {
//
let newX = this.containerTransform.x + this.velocity.x
let newY = this.containerTransform.y + this.velocity.y
//
const scaledMaxX = this.maxTransform.x * this.size
const scaledMaxY = this.maxTransform.y * this.size
newX = Math.max(-scaledMaxX, Math.min(scaledMaxX, newX))
newY = Math.max(-scaledMaxY, Math.min(scaledMaxY, newY))
this.containerTransform.x = newX
this.containerTransform.y = newY
//
this.velocity.x *= friction
this.velocity.y *= friction
// DOM
this.updateContainerTransform()
//
if (
Math.abs(this.velocity.x) > minVelocity ||
Math.abs(this.velocity.y) > minVelocity
) {
requestAnimationFrame(animateInertia)
}
}
requestAnimationFrame(animateInertia)
},
// - 使
updateContainerTransform() {
// 使DOM
console.log('容器变换更新', this.containerTransform, this.size)
},
//
resetZoom() {
this.size = 0.4
this.initialSize = 0.4
this.containerTransform = { x: 0, y: 0 }
this.updateContainerTransform()
},
//
handleDoubleClick() {
this.resetZoom()
},
clickNode(e) { clickNode(e) {
return let self = this
if (e) {
arc
.getUrlBase({
countryUrl2: e.countryUrl2,
settleCountryUrl2: e.settleCountryUrl2,
avatarUrl: e.avatarUrl,
})
.then(res => {
self.popMould = e
self.popMould.countryUrl2Base64 = res.countryUrl2Base64
self.popMould.settleCountryUrl2Base64 = res.settleCountryUrl2Base64
self.popMould.avatarUrlBase64 = res.avatarUrlBase64
self.isPop = true
})
}
}, },
stagePickerHandleConfirm(e) { confirm(e) {
this.queryParams.memberSettlePeriodId = e.value[0].value this.queryParams.memberSettlePeriodId = e.value[0].pkId
this.stageName = e.value[0].label this.settleName = e.value[0].settleDate
this.stageListVisible = false this.listShow = false
}, },
statusPickerHandleConfirm(e) { getAvarerInfo() {
this.queryParams.status = e.value[0].value arc.getAvarerInfo().then(res => {
this.statusName = e.value[0].label this.avaerInfoList = res.data
this.statusListVisible = false })
}, arc.getMemberSettlePeriod().then(res => {
childNodePickerHandleConfirm(e) { this.memberSettlePeriodList = [res.data]
this.queryParams.memberCode = e.value[0].childNode
this.selectedChildNodeName = e.value[0].childNode
this.childNodeListVisible = false
//
this.getDataList()
},
getChildList() {
return new Promise((resolve, reject) => {
arc.getChildList(this.queryParams).then(res => {
if (res.code === 200) {
this.childNodeList = res.data
// picker
this.childNodeColumns = [res.data]
this.queryParams.childNode = res.data[0].childNode
this.selectedChildNodeName = res.data[0].childNode
resolve()
}
})
}) })
}, },
getDataList() { getDataList() {
@ -499,20 +422,15 @@ export default {
this.data = res.data[0] this.data = res.data[0]
}) })
}, },
handleSearch() {
this.getChildList().then(() => {
this.getDataList()
})
},
clearAll() { clearAll() {
this.popShow = false this.popShow = false
this.init() this.settleName = ''
this.queryParams = { this.queryParams = {
stage: this.stageList[0][0].value, memberSettlePeriodId: '', //
status: this.statusList[0][0].value, memberCode: '', //
level: '', //
} }
this.handleSearch() this.getDataList()
}, },
}, },
} }
@ -783,22 +701,6 @@ export default {
flex: 1; flex: 1;
background: #f5f6f8; background: #f5f6f8;
margin: 0 20rpx; margin: 0 20rpx;
.inputbox {
font-size: 26rpx;
width: 100%;
padding: 15rpx 20rpx;
border-radius: 34rpx;
background-color: #f5f6f8;
display: flex;
justify-content: space-between;
align-items: center;
color: #333333;
&:active {
background-color: #e8e9eb;
}
}
} }
.neibox { .neibox {
@ -819,11 +721,40 @@ export default {
.mainbox { .mainbox {
padding: 26rpx 22rpx; padding: 26rpx 22rpx;
height: 100%;
.main_top {
background: #ffffff;
border-radius: 20rpx;
padding: 20rpx 4rpx;
display: flex;
flex-wrap: wrap;
.top_flex {
display: flex;
flex-direction: column;
align-items: center;
margin: 15rpx 20rpx;
// justify-content: center;
width: 98rpx;
.theimg {
width: 92rpx;
height: 92rpx;
border-radius: 50%;
}
.flex2 {
font-size: 26rpx;
font-family: Source Han Sans CN;
font-weight: 400;
color: #666666;
}
}
}
.main_bottom { .main_bottom {
width: 100%; width: 100%;
height: 100%; height: calc(100vh - 600rpx);
margin-top: 25rpx; margin-top: 25rpx;
background-color: #ffffff; background-color: #ffffff;
padding: 38rpx 0; padding: 38rpx 0;
@ -833,13 +764,11 @@ export default {
.scoll_main { .scoll_main {
width: 700rpx; width: 700rpx;
height: calc(100vh - 600rpx);
overflow: auto;
transform-origin: center center; // // overflow: scroll;
cursor: grab; // // overflow-x: auto;
&:active {
cursor: grabbing; //
}
} }
} }
</style> </style>

View File

@ -88,6 +88,49 @@
</view> </view>
</view> </view>
<!-- 收益区域 -->
<view class="my_order" v-if="regionInfoVisible">
<view class="my_title">
<text class="thetitle">收益区域</text>
</view>
<template
v-if="
regionInfo.provinceVal || regionInfo.cityVal || regionInfo.countyVal
"
>
<view class="region-info-box">
<view class="region-info-item">
<text class="region-info-label">{{ '省' }}</text>
<text class="region-info-value">{{
regionInfo.provinceVal || '-'
}}</text>
</view>
<view class="region-info-item">
<text class="region-info-label">{{ '市' }}</text>
<text class="region-info-value">{{
regionInfo.cityVal || '-'
}}</text>
</view>
<view class="region-info-item">
<text class="region-info-label">{{ '区' }}</text>
<text class="region-info-value">{{
regionInfo.countyVal || '-'
}}</text>
</view>
</view>
</template>
<template v-else>
<view class="region-select-action">
<u-button
@click="openRegionSelect"
color="#005BAC"
shape="circle"
text="选择区域"
></u-button>
</view>
</template>
</view>
<view class="my_order"> <view class="my_order">
<view class="order_flex"> <view class="order_flex">
<template v-for="(item, index) in otherMenuList"> <template v-for="(item, index) in otherMenuList">
@ -101,9 +144,47 @@
<view class="order_text">{{ item.name }}</view> <view class="order_text">{{ item.name }}</view>
</view> </view>
</template> </template>
<!-- <view
class="theorderflex1"
@click="goTo('/pages/mine/feedBack/feedBack')"
>
<image class="order_img" src="../../static/images/my_icon12.png" />
<view class="order_text">{{ '意见反馈' }}</view>
</view> -->
<!-- <picker
:range="getLanguageList"
:value="index"
range-key="label"
@change="bindPickerChange"
>
<view class="theorderflex1" @click="goTo('')">
<image class="order_img" src="../../static/images/mark6.png" />
<view class="order_text">{{ '多语言切换' }}</view>
</view>
</picker> -->
<!-- <view
class="theorderflex1"
@click="goTo('/pages/mine/branchAddress/branchAddress')"
>
<image class="order_img" src="../../static/images/my_icon9.png" />
<view class="order_text"
>{{ '分公司' }}{{ '地址' }}</view
>
</view> -->
<!-- <view class="theorderflex1" @click="goYear">
<image class='order_img' src="../../static/images/my_icon12.png" />
<view class="order_text">{{ '年度奖衔' }}</view>
</view> -->
<!-- <view class="theorderflex1" @click="goTo('')">
<image class='order_img' src="../../static/images/my_icon12.png" />
<view class="order_text">关于我们</view>
</view> -->
</view> </view>
</view> </view>
<!-- 会员中心 -->
<view class="btnbox"> <view class="btnbox">
<u-button <u-button
shape="circle" shape="circle"
@ -139,6 +220,12 @@
</u-button> </u-button>
</view> </view>
</u-popup> </u-popup>
<!-- <RegionSelect
v-if="isNormal"
ref="regionSelect"
@success="getRegionSelect"
/> -->
<!-- <talentList :drShow="drShow" @closeShow="closeShow"></talentList> -->
</view> </view>
</template> </template>
@ -199,6 +286,13 @@ export default {
menuKey: 'selfHelp', menuKey: 'selfHelp',
ifshow: true, ifshow: true,
}, },
// {
// url: '/pages/mine/share/index',
// name: '广',
// imgurl: '../../static/images/list.svg',
// menuKey: 'share',
// ifshow: false,
// },
{ {
url: '/pages/userSecure/index', url: '/pages/userSecure/index',
name: '账号安全', name: '账号安全',
@ -227,13 +321,13 @@ export default {
menuKey: 'bankInfo', menuKey: 'bankInfo',
ifshow: true, ifshow: true,
}, },
{ // {
url: '/pages/architecture/architecture', // url: '/pages/mine/addNewPv/index',
name: '架构管理', // name: '',
imgurl: '../../static/images/my_icon14.png', // imgurl: '../../static/images/mark9.png',
menuKey: 'recommend', // menuKey: 'iNewAchievement',
ifshow: false, // ifshow: false,
}, // },
], ],
drShow: false, drShow: false,
actMenu: false, actMenu: false,

View File

@ -470,22 +470,20 @@
</div> </div>
</div> </div>
<div v-show="specialArea == UPGRADE_AREA.id"> <div v-show="specialArea == UPGRADE_AREA.id">
<div class="tit4">{{ '会员信息' }}</div> <div class="tit4">{{ '升级会员信息' }}</div>
<div class="quan"> <div class="quan">
<div class="kuang_i"> <div class="kuang_i">
<div>{{ '会员编号' }}</div> <div>{{ '升级编号' }}</div>
<div>{{ orderData.memberCode }}</div> <div>{{ orderData.memberCode }}</div>
</div> </div>
<div class="kuang_i"> <div class="kuang_i">
<div>{{ '会员姓名' }}</div> <div>{{ '升级姓名' }}</div>
<div>{{ orderData.memberName }}</div> <div>{{ orderData.memberName }}</div>
</div> </div>
<!--
<div class="kuang_i"> <div class="kuang_i">
<div>{{ '升级级别' }}</div> <div>{{ '升级级别' }}</div>
<div>{{ orderData.pkGradeVal }}</div> <div>{{ orderData.pkGradeVal }}</div>
</div> </div>
-->
<div class="kuang_i"> <div class="kuang_i">
<div>{{ '发货方式' }}</div> <div>{{ '发货方式' }}</div>
<div>{{ orderData.deliveryWayVal }}</div> <div>{{ orderData.deliveryWayVal }}</div>
@ -952,7 +950,7 @@ export default {
url = url =
this.specialArea == REGIEST_AREA.id this.specialArea == REGIEST_AREA.id
? api.payRegOrder ? api.payRegOrder
: api.payOthOrder //api.upgradePay : api.upgradePay
} else { } else {
url = api.payOthOrder url = api.payOthOrder
} }

View File

@ -969,51 +969,26 @@ export default {
shoppingId: item, shoppingId: item,
}) })
}) })
upgradeOrder(
api Object.assign({}, this.form, this.allGoodsData, {
.confirmOthOrder( deleteList: deleteList,
Object.assign({}, this.form, this.allGoodsData, { shopList: deleteList,
deleteList: deleteList, parentCode: this.form.parent,
shopList: deleteList, upgradeMemberCode: this.form.memberCode,
buyMemberCode: this.userInfo.memberCode,
})
)
.then(res => {
this.isLoading = false
if (res.code == 200) {
const params = {
...res.data,
specialArea: this.specialArea,
}
uni.redirectTo({
url:
'/pages/pay/index?paramsPost=' +
JSON.stringify(params) +
'&businessType=1',
})
}
}) })
// upgradeOrder( ).then(res => {
// Object.assign({}, this.form, this.allGoodsData, { this.isLoading = false
// deleteList: deleteList, if (res.code == 200) {
// shopList: deleteList, uni.redirectTo({
// parentCode: this.form.parent, url:
// upgradeMemberCode: this.form.memberCode, '/pages/pay/index?paramsPost=' +
// }) JSON.stringify(
// ).then(res => { Object.assign({ specialArea: this.specialArea }, res.data)
// this.isLoading = false ) +
// if (res.code == 200) { '&businessType=1',
// uni.redirectTo({ })
// url: }
// '/pages/pay/index?paramsPost=' + })
// JSON.stringify(
// Object.assign({ specialArea: this.specialArea }, res.data)
// ) +
// '&businessType=1',
// })
// }
// })
}) })
}, },
getDiqu() { getDiqu() {

View File

@ -5,8 +5,7 @@ export const REGIEST_AREA = {
export const UPGRADE_AREA = { export const UPGRADE_AREA = {
id: 42, id: 42,
// name: '升级专区', name: '升级专区',
name: '甄选专区',
} }
export const REISSUE_AREA = { export const REISSUE_AREA = {