Commit 1574f8de authored by chuan.liu's avatar chuan.liu

市场秩序提交新增提款银行账户 销售计划类型变更 团购计划类型新增 喷码方式接口变更

parent a32eb862
......@@ -102,7 +102,7 @@
"proxy": {
"/sap": {
// "target": "http://10.0.135.139/wlySap",
"target": "http://10.0.134.45:8000",
"target": "http://10.0.134.182:8000",
"changeOrigin": true
},
"/crm-app": {
......
......@@ -152,6 +152,28 @@
},
"enablePullDownRefresh": true
}
}, {
"path": "pages/select-group-plan/select-group-plan",
"style": {
"app-plus": {
"titleNView": {
"titleAlign": "left",
"titleColor": "#333",
"titleSize": "17px",
"backgroundColor": "transparent",
"titleText": "计划类型选择",
"autoBackButton": true
// "buttons": [{
// "type": "none",
// "text": "选择",
// "fontSize": "14px",
// "color": "#555"
// }]
},
"bounce": "none"
},
"enablePullDownRefresh": true
}
}, {
"path": "pages/select-product/select-product",
"style": {
......@@ -800,6 +822,23 @@
},
"enablePullDownRefresh": true
}
},
{
"path": "pages/select-salesarea-account/select-salesarea-account",
"style": {
"app-plus": {
"titleNView": {
"titleAlign": "left",
"titleColor": "#333",
"titleSize": "17px",
"backgroundColor": "#fff",
"titleText": "联络函信息",
"autoBackButton": true
},
"bounce": "none"
},
"enablePullDownRefresh": true
}
}
],
"globalStyle": {
......
......@@ -188,6 +188,18 @@
<text class="middle-date">终端地址</text>
<input class="middle-date-des" type="text" v-model="condition.terminalAddress" placeholder="" />
</view>
<view class="text-block">
<text class="middle-date">银行账户</text>
<view class="middle-date-des uni-list picker-year" @click="selectSalesAreaAccountInfo">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<input class="middle-date-des" type="text" v-model="condition.salesAreaAccountPk"
placeholder="请填写" />
</view>
</view>
<image class="icon-arrow" src="@/static/image/arrow_r@3x.png" mode=""></image>
</view>
</view>
<view class="text-block">
<text class="middle-date">稽查时间</text>
<view class="middle-date-des uni-list picker-year">
......@@ -355,9 +367,6 @@
export default {
data() {
return {
applyNum: 100,
array: ['2021', '2020', '2019', '2018'],
index: 0,
condition: {
submitMethod: '',
submitMethodName: '',
......@@ -383,14 +392,15 @@
storeName: '',
storeAddress: '',
marketName: '',
salesAreaAccountPk: '',
auditTime: '',
auditNotes: '',
barcode: '',
receiveAmount: '',
doorPicUrl: '',
productPicUrl: '',
invoicePicUrl: '',
receiptPicUrl: '',
doorPicUrl: 'https://t7.baidu.com/it/u=2487758541,1861252964&fm=193&f=GIF',
productPicUrl: 'https://t7.baidu.com/it/u=2487758541,1861252964&fm=193&f=GIF',
invoicePicUrl: 'https://t7.baidu.com/it/u=2487758541,1861252964&fm=193&f=GIF',
receiptPicUrl: 'https://t7.baidu.com/it/u=2487758541,1861252964&fm=193&f=GIF',
},
pickerIndexs: {
submitMethodIndex: 0
......@@ -450,6 +460,21 @@
_this.condition.terminalId = data.selectedClueTerminal.id
_this.condition.terminalAddress = data.selectedClueTerminal.address
})
uni.$on('selectSalesAreaAccountInfo', function(data) {
console.log('监听到事件来自 selectSalesAreaAccountInfo ,携带参数 msg 为:', data);
_this.condition.salesAreaAccountPk = data.selectedSalesAreaAccountInfo.pk
})
},
onUnload() {
console.log('onUnload')
uni.$off('selectClueTerminal')
uni.$off('selectSalesAreaAccountInfo')
},
beforeDestroy() {
console.log('onUnload2')
uni.$off('selectClueTerminal')
uni.$off('selectSalesAreaAccountInfo')
},
methods: {
async getDictionary(key) {
......@@ -511,6 +536,11 @@
url: `/pages/select-clue-terminal/select-clue-terminal?keywords=${this.condition.terminalName}`
});
},
selectSalesAreaAccountInfo() {
uni.navigateTo({
url: `/pages/select-salesarea-account/select-salesarea-account?keywords=`
});
},
async addProductByBarcode() {
const params = {
barcode: this.condition.barcode
......@@ -584,7 +614,8 @@
'platformName': this.condition.platformName,
'storeName': this.condition.storeName,
'marketName': this.condition.marketName,
'storeAddress': this.condition.storeAddress
'storeAddress': this.condition.storeAddress,
'salesAreaAccountPk': this.condition.salesAreaAccountPk,
}
const res = await apiClueSubmit(params)
},
......
......@@ -28,7 +28,7 @@
</view>
<view class="search-input-block">
<image class="icon-search" src="@/static/image/search_b@3x.png" mode=""></image>
<input class="search-input" type="text" @blur="getClueList" v-model="condition.productName"
<input class="search-input" type="text" @blur="getClueList" v-model="condition.productId"
placeholder="请输入产品名称" />
</view>
</view>
......@@ -110,7 +110,7 @@
submitSource: 'DISTRIBUTER',
submitUserId: '',
status: '',
productName: '',
productId: '',
submitMethod: '',
pwd: ''
},
......
......@@ -234,6 +234,7 @@
uni.$on('selectedPaintDesign', function(data) {
console.log('监听到事件来自 selectedPaintDesign ,携带参数 msg 为:', data);
_this.condition.ZZFLD000098 = data.selectedPaintDesign.zzfld000098
_this.HEADINFO.ZZFLD000098 = data.selectedPaintDesign.zzfld000098
})
},
onUnload() {
......@@ -292,6 +293,7 @@
break;
}
this.condition.PENGMETHOD = this.paintDesignPicker[this.paintDesignIndex].key
this.HEADINFO.PENGMETHOD = this.paintDesignPicker[this.paintDesignIndex].key
},
selectGroupClient() {
uni.navigateTo({
......
......@@ -41,6 +41,19 @@
<view class="text-block title-first">
<text class="middle-date title-first__text">{{index+1}}</text>
</view>
<view class="text-block" v-if="isBigSingleProduct === 'TRUE'"
@click="selectPlanOrder(item,index)">
<text class="middle-date">计划编号</text>
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<text class="middle-date-des">{{item.ZZFLD00002Q_TEXT}}</text>
</view>
</view>
<image class="icon-arrow" src="@/static/image/arrow_r@3x.png" mode="aspectFit">
</image>
</view>
</view>
<view class="text-block" @click="selectProduct(index,'inner')">
<text class="middle-date">产品</text>
<view class="middle-date-des uni-list picker-year">
......@@ -116,7 +129,8 @@
'product_info': {}
}],
HEADINFO: {},
productInitInfo: {}
productInitInfo: {},
isBigSingleProduct: "FALSE"
}
},
computed: {
......@@ -158,14 +172,38 @@
_this.updateQuotaData(fromIndex, data.mode, product);
})
uni.$on('selectedGroupPlan', function(data) {
console.log('监听到事件来自 selectedGroupPlan ,携带参数 msg 为:', data);
const fromIndex = data.index * 1
let selectedSalePlan = data.selectedSalePlan
let selectedProductSalePlan = {}
_this.planinnerLists = _this.planinnerLists.map((item, i) => {
if (i === fromIndex) {
item.salesplan_info = {
...selectedSalePlan
}
item.ZZFLD00002Q = selectedSalePlan.PLAN_TYPE
item.ZZFLD00002Q_TEXT = selectedSalePlan.PLAN_TYPE_DESC
selectedProductSalePlan = {
...item
}
}
return item
})
// _this.updateQuotaData(fromIndex, 'inner', selectedProductSalePlan);
})
},
onUnload() {
console.log('onUnload')
uni.$off('selectedProduct')
uni.$off('selectedGroupPlan')
},
beforeDestroy() {
console.log('onUnload2')
uni.$off('selectedProduct')
uni.$off('selectedGroupPlan')
},
created() {
const {
......@@ -210,6 +248,9 @@
INFO
} = res.DATA
// 是否为大单品产品
this.isBigSingleProduct = res.DISPLAY
// let groupOrder = {
// ...this.groupOrder,
// 'INFO': INFO,
......@@ -284,6 +325,20 @@
this.planinnerLists.splice(index, 1)
}
},
// 选择计划类型
selectPlanOrder(product, index, mode = 'inner') {
if (this.isBigSingleProduct === 'TRUE') {
uni.navigateTo({
url: `/pages/select-group-plan/select-group-plan?from=quotaOrder&product=${JSON.stringify((product))}&head=${JSON.stringify(this.HEADINFO)}`
});
} else {
uni.showToast({
title: '请先选择大单品产品',
duration: 2000,
icon: 'none'
});
}
},
selectProduct(index, mode = 'inner') {
this.mode = mode
if (this.salesCenterIndex !== -1) {
......
......@@ -25,11 +25,11 @@
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<picker class="picker-block" @change="bindPickerTypesChange" range-key='VALUE'
<picker class="picker-block" @change="bindPickerTypesChange" range-key='VALUE_KT'
mode="selector" :value="typesIndex" :range="selectedSalePlanTypes">
<view class="uni-input">
<text
class="uni-input-text">{{selectedSalePlanTypes[typesIndex] && selectedSalePlanTypes[typesIndex].VALUE || '请选择'}}</text>
class="uni-input-text">{{selectedSalePlanTypes[typesIndex] && selectedSalePlanTypes[typesIndex].VALUE_KT || '请选择'}}</text>
</view>
</picker>
</view>
......@@ -262,16 +262,24 @@
this.loadingText = '加载中'
},
async getSalesPlanTypes() {
const res = await apiSalesPlanTypesSelect()
const params = {
"object_id": [{
"sign": "I",
"option": "EQ",
"low": "A0002",
"HIGH": ""
}]
}
const res = await apiSalesPlanTypesSelect(params)
this.selectedSalePlanTypes = res.DATA
this.selectedSalePlan = this.selectedSalePlanTypes[this.typesIndex]
this.condition.RT_PLAN_TYPE[0].LOW = this.selectedSalePlanTypes[this.typesIndex].KEY
this.condition.RT_PLAN_TYPE[0].LOW = this.selectedSalePlanTypes[this.typesIndex].VALUE_ID
this.getSalesPlan()
},
bindPickerTypesChange(e) {
console.log('bindPickerTypesChange', e.detail.value)
this.typesIndex = e.detail.value
this.condition.RT_PLAN_TYPE[0].LOW = this.selectedSalePlanTypes[this.typesIndex].KEY
this.condition.RT_PLAN_TYPE[0].LOW = this.selectedSalePlanTypes[this.typesIndex].VALUE_ID
this.getSalesPlan()
},
bindPickerYearChange(e) {
......
......@@ -253,6 +253,14 @@
this.loadingText = '加载中'
},
// async getSalesPlanTypes() {
// const params = {
// "object_id": [{
// "sign": "I",
// "option": "EQ",
// "low": "A0002",
// "HIGH": ""
// }]
// }
// const res = await apiSalesPlanTypesSelect()
// this.selectedSalePlanTypes = res.DATA
// console.log('getSalesPlanTypes', res)
......
<template>
<view class="lists">
<view class="status_bar" :style="navHeight"></view>
<view class="header-bg">
<image class="header-bg-img" src="@/static/image/nav_bg@3x.png" mode="scaleToFill"></image>
</view>
<view class="main">
<view class="middle view">
<view class="text-block">
<text class="middle-date">计划类型编号</text>
<input class="middle-date-des" type="text" v-model="condition.PLAN_NUMBER" placeholder="请填写" />
</view>
</view>
<view class="planout-block">
<button class="btn" type="default" @tap="search">
<text class="btn-text">查询</text>
</button>
</view>
<scroll-view class="scroll-area" :style='scrollHeight' scroll-y="true" lower-threshold='150'
@scrolltolower='scrolltolower'>
<!-- <uni-swipe-action class="planout-block-lists">
<uni-swipe-action-item v-for="(item,index) in lists" :key='index' :threshold='100'
:auto-close="false" :disabled='true' :show="isOpened"> -->
<!-- <template v-slot:left>
<view class="swipe-right-block" @click.stop="handleChecked($event,item, index)"><text
class="swipe-right-block__text"
:class="{'swipe-right-block__active':item.checked}"></text>
</view>
</template> -->
<view class="middle view planout-block-item" v-for="(item,index) in lists" :key='index'
@click="handleChecked($event,item, index)">
<view class="text-block">
<text class="middle-date">年度</text>
<text class="middle-date-des">{{item.GJAHR}}</text>
</view>
<view class="text-block">
<text class="middle-date">计划类型编号</text>
<text class="middle-date-des">{{item.PLAN_TYPE}}</text>
</view>
<view class="text-block">
<text class="middle-date">计划类型描述</text>
<text class="middle-date-des">{{item.PLAN_TYPE_DESC}}</text>
</view>
</view>
<!-- </uni-swipe-action-item>
</uni-swipe-action> -->
<view class="loading-more" v-if='lists.length>2'>
<text class="loading-more-text">{{loadingText}}</text>
</view>
</scroll-view>
</view>
</view>
</template>
<script>
import {
mapState
} from 'vuex'
import {
apiGroupPlanTypesSelect,
} from '@/servers/common.js'
import timeFormat from '@/uview-ui/libs/function/timeFormat.js'
export default {
data() {
return {
isOpened: 'none',
loadingText: '加载中...',
condition: {
PLAN_NUMBER: ''
},
page: {
"PAGE": "1",
"PAGESIZE": "10",
},
loadParams: {
total: 0,
totalPage: 1,
isDone: false,
isRefresh: false
},
lists: [{
GJAHR: 12,
PLAN_TYPE: '222222',
PLAN_TYPE_DESC: '的点点滴滴',
}],
selectedSalePlan: {},
toPageParams: {
page: '',
index: 0,
product: {},
head: {}
}
}
},
computed: {
...mapState(['sysinfo']),
navHeight() {
return {
'height': `${this.sysinfo.safeArea.top + 44}px`
}
},
scrollHeight() {
return {
'height': `${this.sysinfo.safeArea.height - 297- 44 - 20}px`
}
}
},
onNavigationBarButtonTap(e) {
// console.log('onNavigationBarButtonTap:', e, this.isOpened, this.selectedSalePlan);
// if (this.isOpened === 'left' && this.selectedSalePlan && this.selectedSalePlan.PLAN_NUMBER) {
// uni.$emit('selectedSalePlan', {
// selectedSalePlan: this.selectedSalePlan,
// index: this.toPageParams.index
// })
// uni.navigateBack()
// return
// }
// this.isOpened = this.isOpened === 'none' ? 'left' : 'none';
// #ifdef APP-PLUS
// let pages = getCurrentPages()
// let page = pages[pages.length - 1]
// let webView = page.$getAppWebview();
// console.log('webView', webView)
// webView.setTitleNViewButtonStyle(0, {
// text: this.isOpened === 'none' ? '选择' : '完成',
// });
// let titleObj = webView.getStyle().titleNView;
// if(!titleObj.buttons){
// returnl
// }
// titleObj.buttons[0].text = 'dd';
// webView.setStyle({
// titleNView:titleObj
// })
// #endif
},
onLoad(option) {
console.log('select-saleplan', option)
if (option && option.from) {
const {
from,
product,
head
} = option
this.toPageParams.product = JSON.parse(product)
this.toPageParams.page = from
this.toPageParams.head = JSON.parse(head)
}
},
onPullDownRefresh() {
console.log('refresh');
this.reset()
this.getSalesPlan(true)
setTimeout(function() {
uni.stopPullDownRefresh();
}, 600);
},
created() {
this.reset()
this.getSalesPlan(true);
},
methods: {
async getSalesPlan(isRefresh) {
if (this.loadParams.isDone) {
return
}
const {
GJAHR,
MONAT,
PLAN_TYPE
} = this.condition
const params = {
...this.page,
"ZZFLD000001": this.toPageParams.head.ZZFLD000001,
"CUSTOMER": this.toPageParams.head.CUSTOMER,
"ORDERED_PROD": this.toPageParams.product.ORDERED_PROD,
"PLAN_NUMBER": this.condition.PLAN_NUMBER,
}
uni.showLoading({
title: '加载中'
});
setTimeout(function() {
uni.hideLoading();
}, 2000);
const res = await apiGroupPlanTypesSelect(params)
uni.hideLoading();
const {
DATA,
TOTAL
} = res
this.loadParams.total = TOTAL
this.loadParams.totalPage = Math.ceil(TOTAL * 1 / this.page.PAGESIZE * 1)
if (isRefresh) {
this.lists = DATA
this.loadParams.isDone = false
} else {
this.lists = this.lists.concat(DATA)
}
},
scrolltolower() {
console.log('onReachBottom');
if (this.page.PAGE < this.loadParams.totalPage) {
this.page.PAGE++
this.getSalesPlan()
} else {
this.loadParams.isDone = true
this.loadingText = '-- 到底了 --'
}
},
reset() {
this.loadParams = {
total: 0,
totalPage: 1,
isDone: false,
isRefresh: false
}
this.page.PAGE = 1
this.lists = []
this.loadingText = '加载中'
},
search() {
this.reset()
this.getSalesPlan(true);
},
handleChecked(e, item, index) {
console.log('当前索引:', e, index);
this.lists.forEach((cur) => {
if (cur.PLAN_TYPE === item.PLAN_TYPE) {
cur.checked = !cur.checked
} else {
cur.checked = false
}
})
if (item.checked === true) {
this.selectedSalePlan = item
if (this.selectedSalePlan && this.selectedSalePlan.PLAN_TYPE) {
uni.$emit('selectedGroupPlan', {
selectedSalePlan: this.selectedSalePlan,
index: this.toPageParams.index
})
uni.navigateBack()
}
} else {
// const selectIndex = this.selectedSalePlan.findIndex((saleplan)=>{
// return saleplan.id === item.id
// })
// this.selectedSalePlan.splice(selectIndex,1)
this.selectedSalePlan = {}
}
},
}
}
</script>
<style lang="scss" scoped>
.view {
flex-direction: column;
}
.header-bg {
height: 284rpx;
margin-top: -88rpx;
}
.header-bg-img {
width: 750rpx;
}
.lists {
position: relative;
flex-direction: column;
overflow-y: scroll;
background: #f0f4f5;
height: 100vh;
}
.main {
position: relative;
flex-direction: column;
margin-top: -164rpx;
padding: 0 16rpx;
}
.middle {
background-color: #fff;
border-radius: 16rpx;
padding: 32rpx 64rpx 40rpx 48rpx;
}
.text-block {
display: flex;
overflow: hidden;
height: 96rpx;
margin-bottom: 14rpx;
border-bottom: 1px solid #f4f5f6;
}
.text-block-last {
margin-bottom: 0;
border-bottom: 0;
}
.middle-date {
flex: 2;
font-size: 28rpx;
line-height: 96rpx;
color: #333;
margin-bottom: 8rpx;
}
.middle-date-des {
flex: 3;
font-size: 28rpx;
line-height: 96rpx;
height: 96rpx;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: #888;
}
.picker-year {
position: relative;
border-radius: 4px;
align-items: center;
}
.uni-list-cell {
flex: 1;
}
.uni-list-cell-db {
flex: 1;
}
.picker-block {
flex: 1;
}
.icon-arrow {
position: absolute;
right: 0;
top: 16px;
width: 12rpx;
height: 20rpx;
z-index: 10;
}
.planout-block-lists {
display: flex;
flex-direction: column;
overflow: hidden;
}
.uni-swipe {
flex: 1;
margin-bottom: 26rpx;
}
/deep/ .uni-swipe_box {
flex: 1;
}
.swipe-right-block {
display: flex;
width: 100rpx;
justify-content: center;
align-items: center;
}
.swipe-right-block__text {
display: inline-block;
width: 52rpx;
height: 52rpx;
border-radius: 50%;
background-color: #fff;
}
.swipe-right-block__active {
width: 52rpx;
height: 52rpx;
border-radius: 50%;
background-color: $wly-primary-color;
}
.planout-block {
display: flex;
justify-content: space-between;
height: 84rpx;
margin-top: 64rpx;
margin-bottom: 48rpx;
padding: 0 24rpx;
}
.planout-block-item {
flex: 1;
width: 750rpx;
margin-bottom: 26rpx;
}
.btn {
flex: 1;
height: 92rpx;
background: $wly-primary-color;
border-radius: 46rpx;
}
.btn-text {
color: #fff;
font-size: 34rpx;
}
.loading-more {
flex: 1;
align-items: center;
justify-content: center;
padding-top: 14px;
padding-bottom: 14px;
text-align: center;
}
.loading-more-text {
font-size: 12px;
color: #999;
}
</style>
......@@ -39,10 +39,10 @@
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<picker class="picker-block" @change="bindPickerTypesChange" range-key='VALUE'
<picker class="picker-block" @change="bindPickerTypesChange" range-key='VALUE_KT'
mode="selector" :value="typesIndex" :range="selectedSalePlanTypes">
<view class="uni-input">
{{selectedSalePlanTypes[typesIndex] && selectedSalePlanTypes[typesIndex].VALUE || '请选择'}}
{{selectedSalePlanTypes[typesIndex] && selectedSalePlanTypes[typesIndex].VALUE_KT || '请选择'}}
</view>
</picker>
</view>
......@@ -293,7 +293,15 @@
this.loadingText = '加载中'
},
async getSalesPlanTypes() {
const res = await apiSalesPlanTypesSelect()
const params = {
"object_id": [{
"sign": "I",
"option": "EQ",
"low": "A0002",
"HIGH": ""
}]
}
const res = await apiSalesPlanTypesSelect(params)
this.selectedSalePlanTypes = res.DATA
},
search() {
......@@ -303,7 +311,7 @@
bindPickerTypesChange(e) {
console.log('picker发送选择改变,携带值为', e.detail.value)
this.typesIndex = e.detail.value
this.condition.PLAN_TYPE = this.selectedSalePlanTypes[this.typesIndex].KEY
this.condition.PLAN_TYPE = this.selectedSalePlanTypes[this.typesIndex].VALUE_ID
},
bindPickerYearChange(e) {
console.log('picker发送选择改变,携带值为', e.detail.value)
......
<template>
<view class="order view">
<view class="status_bar" :style="navHeight"></view>
<view class="listview">
<list class="cell-list" v-if="lists.length > 0" :show-scrollbar='false' loadmoreoffset='100'
@loadmore="scrolltolower">
<cell @click="handleChecked(item)" v-for="(item,index) in lists" :key='index'>
<view class="cell-list-block">
<view class="cell-list-block__content">
<view class="list-block-item">
<text class="list-block-item__title1">{{item.bankName}} {{item.accountNumber}}</text>
<text class="list-block-item__label">开户名:{{item.accountName}}</text>
<text class="list-block-item__label">pk:{{item.pk}}</text>
</view>
</view>
</view>
</cell>
<cell>
<view class="loading-more" v-if='lists.length>15'>
<text class="loading-more-text">{{loadingText}}</text>
</view>
</cell>
</list>
<no-data class="no-data" v-else @retry="loadMore"></no-data>
</view>
</view>
</template>
<script>
import {
mapState
} from 'vuex'
import {
apiGetSalesAreaAccountList
} from '@/servers/breakwords.js'
import noData from '@/components/nodata.nvue';
export default {
components: {
noData
},
data() {
return {
loadingText: '加载中...',
condition: {},
loadParams: {
total: 0,
totalPage: 1,
isDone: false,
isRefresh: false
},
page: {
"currentpage": "1",
"pagesize": "15",
},
lists: [],
selectedSalesAreaAccountInfo: {},
toPageParams: {
keywords: '',
}
}
},
computed: {
navHeight() {
return {
'height': `${this.sysinfo.safeArea.top + 44}px`
}
},
...mapState(['sysinfo'])
},
onLoad(option) {
console.log('select-saleplan', option)
if (option && option.keywords) {
const {
keywords
} = option
this.toPageParams.keywords = keywords || ''
}
},
onPullDownRefresh() {
console.log('refresh');
this.reset()
this.getSalesAreaAccountList()
setTimeout(function() {
uni.stopPullDownRefresh();
}, 600);
},
created() {
this.reset()
this.getSalesAreaAccountList()
},
methods: {
async getSalesAreaAccountList(isRefresh) {
if (this.loadParams.isDone) {
return
}
uni.showLoading({
title: '加载中'
});
setTimeout(function() {
uni.hideLoading();
}, 2000);
const params = {
salesAreaCode: this.toPageParams.keywords,
...this.page
}
const res = await apiGetSalesAreaAccountList(params)
uni.hideLoading();
const {
totalNumberOfResults,
numberOfPages
} = res.data.pagination
this.loadParams.total = totalNumberOfResults
this.loadParams.totalPage = numberOfPages
if (isRefresh) {
this.lists = res.data.detail
this.loadParams.isDone = false
} else {
this.lists = this.lists.concat(res.data.detail)
}
},
scrolltolower() {
console.log('onReachBottom');
if (this.page.currentpage < this.loadParams.totalPage) {
this.page.currentpage++
this.getSalesAreaAccountList()
} else {
this.loadParams.isDone = true
this.loadingText = '-- 到底了 --'
}
},
reset() {
this.loadParams = {
total: 0,
totalPage: 1,
isDone: false,
isRefresh: false
}
this.page.currentpage = 1
this.lists = []
this.loadingText = '加载中'
},
handleChecked(item) {
this.selectedSalesAreaAccountInfo = item
uni.$emit('selectSalesAreaAccountInfo', {
selectedSalesAreaAccountInfo: item
})
uni.navigateBack()
},
loadMore() {
this.reset()
this.getSalesAreaAccountList(true)
}
}
}
</script>
<style lang="scss" scoped>
.view {
flex-direction: column;
}
/* #ifndef APP-PLUS */
page {
width: 100%;
min-height: 100%;
display: flex;
background: #fff;
}
.status_bar {
height: var(--status-bar-height);
background: #fff;
}
/* #endif */
.order {
flex: 1;
background: #f0f4f5;
}
.listview {
flex: 1;
flex-direction: column;
padding: 16rpx;
border-radius: 8px;
}
.cell-list {
flex: 1;
flex-direction: column;
background: #fff;
padding: 0 50rpx 40rpx 50rpx;
}
.icon-address {
width: 88rpx;
height: 88rpx;
line-height: 88rpx;
text-align: center;
background: #fff4f4;
font-size: 28rpx;
color: #ff1d32;
font-weight: 500;
border-radius: 50%;
margin-right: 32rpx;
}
.cell-list-block__content {
display: flex;
flex: 1;
flex-direction: column;
}
.list-block-item {
display: flex;
flex-direction: column;
}
.list-block-item__title1 {
color: #333;
font-weight: 400;
font-size: 28rpx;
margin-bottom: 4px;
}
.list-block-item__label {
color: #999999;
font-size: 24rpx;
margin-right: 16rpx;
}
.list-block-item__value {
color: #333333;
font-size: 12px;
}
.cell-list-block__desc {
color: #333;
font-size: 12px;
}
.icon-arrow {
width: 18rpx;
height: 22rpx;
margin-right: 28rpx;
}
.list-block-item__desc {
font-size: 24rpx;
color: #333;
}
.cell-list-block {
display: flex;
flex: 1;
height: 140rpx;
background: #fff;
align-items: center;
border-bottom: 1px solid #f4f5f6;
}
.loading-more {
flex: 1;
align-items: center;
justify-content: center;
padding-top: 14px;
padding-bottom: 14px;
text-align: center;
}
.loading-more-text {
font-size: 12px;
color: #999;
}
</style>
......@@ -68,4 +68,14 @@ export async function apiGetClueList(params) {
export async function apiGetClueInfoPwdList(params) {
const res = await apiHelper.post('/wmdpwebservices/clue/info/pwd', params)
return res
}
/**
* 联络函打款信息列表查询
* @param name 账户名
* @returns {Promise<AxiosResponse<T>>}
*/
export async function apiGetSalesAreaAccountList(params) {
const res = await apiHelper.post('/wmdpwebservices/salesareaaccountinfo/page/query', params)
return res
}
......@@ -26,7 +26,17 @@ export async function apiSalesPlanSelect(params) {
* @returns {Promise<AxiosResponse<T>>}
*/
export async function apiSalesPlanTypesSelect(params) {
const res = await apiHelper.post('/sap/bc/ztpm/to_new_crm/transdata/sp_type_ovs', params)
const res = await apiHelper.post('/sap/bc/ztpm/to_new_crm/transdata/get_dropvalue', params)
return res
}
/**
* 获取团购计划类型
* @param captcha 验证码
* @returns {Promise<AxiosResponse<T>>}
*/
export async function apiGroupPlanTypesSelect(params) {
const res = await apiHelper.post('/sap/bc/ztpm/to_new_crm/transdata/plan_type_ovs', params)
return res
}
......
No preview for this file type
......@@ -39,8 +39,8 @@ const store = new Vuex.Store({
vuex_version: '1.0.1',
vuex_demo: '绛紫',
userInfo: {
name: '',
code: ''
name: '测试',
code: '0050000215'
},
quotaOrder: {
'ITEM_INNER': [],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment