Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
W
wly-APP
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
刘川
wly-APP
Commits
5c9cfe35
Commit
5c9cfe35
authored
Jul 25, 2022
by
chuan.liu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
违约处理 违约处理详情联调
parent
2bcd2c35
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
145 additions
and
117 deletions
+145
-117
breakwords-handle-detail.nvue
pages/breakwords-handle-detail/breakwords-handle-detail.nvue
+41
-26
breakwords-handle.nvue
pages/breakwords-handle/breakwords-handle.nvue
+84
-91
breakwords.js
servers/breakwords.js
+20
-0
No files found.
pages/breakwords-handle-detail/breakwords-handle-detail.nvue
View file @
5c9cfe35
...
...
@@ -8,30 +8,34 @@
<view class="scroll-item">
<view class="top">
<text class="title-no">
TP10000021
</text>
<text class="title-no">
{{detail.id}}
</text>
<view class="title-info">
<text class="order-date">
2021-08-06 05:14
</text>
<text class="item-block-btn__text
title-info__status-fail__text">失效
</text>
<text class="order-date">
{{detail.createDate}}
</text>
<text class="item-block-btn__text
">{{detail.statusName}}
</text>
</view>
</view>
<view class="middle view">
<view class="middle-title">
<text class="middle-title__text">处罚说明:</text>
<text class="middle-title__text">处罚说明:
{{detail.notes}}
</text>
</view>
<view class="text-block-box">
<view class="text-block-box"
v-for="(item2,index2) in detail.punishEntries" :key="index2"
>
<view class="text-block">
<text class="middle-date">类型</text>
<text class="middle-date-des">黄牌警告</text>
<text class="middle-date-des">{{item2.punishTypeName}}</text>
</view>
<view class="text-block" v-if="item2.terminalName">
<text class="middle-date">终端名称</text>
<text class="middle-date-des">{{item2.terminalName}}</text>
</view>
<view class="text-block">
<text class="middle-date">截止时间</text>
<text class="middle-date-des">2021-08-06</text>
</view>
<view class="text-block text-block-last">
<text class="middle-date">有无异议</text>
<text class="middle-date-des">无异议</text>
<text class="middle-date-des">{{item2.punishEndTime}}</text>
</view>
</view>
<view class="text-block text-block-last">
<text class="middle-date">有无异议</text>
<text class="middle-date-des">{{detail.appealNotes=='1'?'有异议':'无异议'}}</text>
</view>
</view>
</view>
</view>
...
...
@@ -44,12 +48,8 @@
} from 'vuex'
import {
apiSalesPlanTypesSelect
} from '@/servers/common.js'
import {
apiSalesPlan
} from '@/servers/purchasePlan.js'
apiGetProcessOrderDetail
} from '@/servers/breakwords.js'
export default {
...
...
@@ -57,11 +57,9 @@
return {
loadingText: '加载中...',
condition: {
id: ''
},
lists: [{
'sss': '2'
}],
detail: {}
}
},
computed: {
...
...
@@ -81,13 +79,28 @@
'height': `${this.sysinfo.safeArea.height - 44 - 30 }px`
}
},
},
created() {},
onLoad(option) {
console.log('breakwords-handle-detail', option)
if (option && option.id) {
this.condition.id = option.id
this.getOrderDetail()
}
},
methods: {
}
async getOrderDetail() {
uni.showLoading({
title: '加载中'
});
setTimeout(function() {
uni.hideLoading();
}, 2000);
const res = await apiGetProcessOrderDetail(this.condition)
uni.hideLoading();
this.detail = res.data
}
},
}
</script>
...
...
@@ -210,6 +223,8 @@
.text-block-box {
display: flex;
flex-direction: column;
border-bottom: 1px solid #F4F5F6;
margin-bottom: 30rpx;
}
.middle-date-right {
...
...
pages/breakwords-handle/breakwords-handle.nvue
View file @
5c9cfe35
...
...
@@ -7,24 +7,25 @@
<view class="main" :style="mainHeight">
<view class="navs-block">
<view class="navs-tab">
<view class="navs-tab-item"
@click="checkTab(0)"
>
<picker class="search-type-text" @change="bindPicker
YearChange" mode="date"
:value="condition.RT_GJAHR[0].LOW" fields='year'
>
<text class="uni-input-text">{{
condition.RT_GJAHR[0].LOW
}}</text>
<view class="navs-tab-item">
<picker class="search-type-text" @change="bindPicker
TypesChange" range-key='name'
mode="selector" :value="punishTypeSelected.name" :range="selectDataOptions.PunishType"
>
<text class="uni-input-text">{{
punishTypeSelected.name
}}</text>
</picker>
<image class="icon-arrow-down" src="@/static/image/arrow_down@3x.png" mode=""></image>
</view>
<view class="navs-tab-item">
<picker class="search-type-text" @change="bindPickerYearChange" mode="date"
:value="condition.RT_GJAHR[0].LOW" fields='year'>
<text class="uni-input-text">{{condition.RT_GJAHR[0].LOW}}</text>
<picker class="search-type-text" @change="bindPickerStatusChange" range-key='name'
mode="selector" :value="orderStatusSelected.name"
:range="selectDataOptions.ProcessOrderStatus">
<text class="uni-input-text">{{orderStatusSelected.name}}</text>
</picker>
<image class="icon-arrow-down" src="@/static/image/arrow_down@3x.png" mode=""></image>
</view>
<view class="navs-tab-item"
@click="checkTab(1)"
>
<view class="navs-tab-item">
<picker class="search-type-text" @change="bindPickerYearChange" mode="date"
:value="condition.
RT_GJAHR[0].LOW
" fields='year'>
<text class="uni-input-text">年度 {{condition.
RT_GJAHR[0].LOW
}}</text>
:value="condition.
year
" fields='year'>
<text class="uni-input-text">年度 {{condition.
year
}}</text>
</picker>
<image class="icon-arrow-down" src="@/static/image/arrow_down@3x.png" mode=""></image>
</view>
...
...
@@ -39,26 +40,30 @@
<cell v-for="(item,index) in lists" :key="index">
<view class="scroll-item">
<view class="top">
<text class="title-no">
TP10000021
</text>
<text class="title-no">
{{item.id}}
</text>
<view class="title-info">
<text class="order-date">
2021-08-06 05:14
</text>
<text class="item-block-btn__text
title-info__status-fail__text">失效
</text>
<text class="order-date">
{{item.createDate}}
</text>
<text class="item-block-btn__text
">{{item.statusName}}
</text>
</view>
</view>
<view class="middle view">
<view class="middle-title">
<text class="middle-title__text">处罚说明:</text>
<text class="middle-title__text">处罚说明:
{{item.notes}}
</text>
</view>
<view class="text-block-box">
<view class="text-block-box"
v-for="(item2,index2) in item.punishEntries" :key="index2"
>
<view class="text-block">
<text class="middle-date">类型</text>
<text class="middle-date-des">黄牌警告</text>
<text class="middle-date-des">{{item2.punishTypeName}}</text>
</view>
<view class="text-block" v-if="item2.terminalName">
<text class="middle-date">终端名称</text>
<text class="middle-date-des">{{item2.terminalName}}</text>
</view>
<view class="text-block text-block-last">
<view class="middle-date-right">
<text class="middle-date">截止时间</text>
</view>
<text class="middle-date-des middle-date-right">
2021-08-06
</text>
<text class="middle-date-des middle-date-right">
{{item2.punishEndTime}}
</text>
</view>
</view>
</view>
...
...
@@ -89,13 +94,11 @@
mapState
} from 'vuex'
import {
apiSalesPlanTypesSelect
} from '@/servers/common.js'
import {
apiSalesPlan
} from '@/servers/purchasePlan.js'
apiGetDictionary,
apiGetProcessOrder,
} from '@/servers/breakwords.js'
import timeFormat from '@/uview-ui/libs/function/timeFormat.js'
...
...
@@ -107,24 +110,13 @@
loadingText: '加载中...',
refreshing: false,
condition: {
MV_BP: '0081000010',
ROLE: 'WLYALL',
RT_GJAHR: [{
SIGN: 'I',
OPTION: 'EQ',
LOW: '',
HIGH: ''
}],
RT_PLAN_TYPE: [{
SIGN: 'I',
OPTION: 'EQ',
LOW: '',
HIGH: ''
}]
year: '',
punishTypes: [],
statusList: []
},
page: {
"
PAGE
": "1",
"
PAGESIZE
": "10",
"
currentPage
": "1",
"
pageSize
": "10",
},
loadParams: {
total: 0,
...
...
@@ -134,10 +126,20 @@
},
selectedSalePlan: {},
selectedSalePlanTypes: [],
punishTypeSelected: {
'code': '',
'name': '全部类型'
},
orderStatusSelected: {
'code': '',
'name': '全部状态'
},
selectDataOptions: {
'PunishType': [],
'ProcessOrderStatus': [],
},
typesIndex: 0,
lists: [{
'sss': '2'
}],
lists: [],
}
},
computed: {
...
...
@@ -160,11 +162,22 @@
},
created() {
this.condition.RT_GJAHR[0].LOW = timeFormat(new Date(), 'yyyy')
this.condition.MV_BP = '0081000010' || this.userInfo.code
this.condition.year = timeFormat(new Date(), 'yyyy')
// 处罚类型
this.getDictionary('PunishType')
// 任务单状态
this.getDictionary('ProcessOrderStatus')
this.getProcessOrder()
},
methods: {
async getSalesPlan(isRefresh) {
async getDictionary(key) {
const params = {
dictionaryKey: key
}
const res = await apiGetDictionary(params)
this.selectDataOptions[key] = res.data
},
async getProcessOrder(isRefresh) {
if (this.loadParams.isDone) {
return
}
...
...
@@ -180,31 +193,22 @@
setTimeout(function() {
uni.hideLoading();
}, 2000);
// const res = await apiSalesPlan(params)
const res = []
const res = await apiGetProcessOrder(params)
uni.hideLoading();
const {
lt_result,
page,
pagesize,
total
} = res
this.page.PAGE = page
this.page.PAGESIZE = pagesize
this.loadParams.total = total
this.loadParams.totalPage = Math.ceil(total * 1 / this.page.PAGESIZE * 1)
const dataMap = lt_result && lt_result.map((item) => {
item.checked = false
return item
})
totalNumberOfResults,
numberOfPages
} = res.data.pagination
this.loadParams.total = totalNumberOfResults
this.loadParams.totalPage = numberOfPages
if (isRefresh) {
this.lists =
dataMap
this.lists =
res.data.results
this.loadParams.isDone = false
} else {
this.lists = this.lists.concat(
dataMap
)
this.lists = this.lists.concat(
res.data.results
)
}
setTimeout(() => {
...
...
@@ -215,7 +219,7 @@
refresh(e) {
this.refreshing = true;
this.reset()
this.get
SalesPlan
(true)
this.get
ProcessOrder
(true)
// #ifdef APP-NVUE
try {
// console.log('-------', this.$refs.list)
...
...
@@ -228,9 +232,9 @@
},
scrolltolower() {
console.log('onReachBottom');
if (this.page.
PAGE
< this.loadParams.totalPage) {
this.page.
PAGE
++
this.get
SalesPlan
()
if (this.page.
currentPage
< this.loadParams.totalPage) {
this.page.
currentPage
++
this.get
ProcessOrder
()
} else {
this.loadParams.isDone = true
this.loadingText = '-- 到底了 --'
...
...
@@ -243,42 +247,30 @@
isDone: false,
isRefresh: false
}
this.page.
PAGE
= 1
this.page.
currentPage
= 1
this.lists = []
this.loadingText = '加载中'
},
async getSalesPlanTypes() {
const res = await apiSalesPlanTypesSelect()
this.selectedSalePlanTypes = res.DATA
this.selectedSalePlan = this.selectedSalePlanTypes[this.typesIndex]
this.condition.RT_PLAN_TYPE[0].LOW = this.selectedSalePlanTypes[this.typesIndex].KEY
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.getSalesPlan()
this.punishTypeSelected = this.selectDataOptions['PunishType'][e.detail.value]
this.condition.punishTypes[0] = this.punishTypeSelected.code
this.getProcessOrder(true)
},
bindPickerStatusChange(e) {
console.log('bindPickerStatusChange', e.detail.value)
this.orderStatusSelected = this.selectDataOptions['ProcessOrderStatus'][e.detail.value]
this.condition.statusList[0] = this.orderStatusSelected.code
this.getProcessOrder(true)
},
bindPickerYearChange(e) {
console.log('bindPickerYearChange', e.detail.value)
this.condition.RT_GJAHR[0].LOW = e.detail.value
this.getSalesPlan()
},
handleClick(e, content, index) {
console.log('click当前索引:', e, content, index);
},
nextStep() {
this.$emit('click', 'orderUpload')
},
preStep() {
uni.switchTab({
url: `/pages/go-order/go-order`
})
this.condition.year = e.detail.value
this.getProcessOrder(true)
},
checkDetal(item) {
uni.navigateTo({
url: `/pages/breakwords-handle-detail/breakwords-handle-detail`
url: `/pages/breakwords-handle-detail/breakwords-handle-detail
?id=${item.id}
`
})
}
}
...
...
@@ -321,6 +313,7 @@
.scroll-area {
background: #f0f4f5;
padding: 0 16rpx;
overflow-y: scroll;
}
.navs-block {
...
...
servers/breakwords.js
View file @
5c9cfe35
...
...
@@ -88,4 +88,24 @@ export async function apiGetSalesAreaAccountList(params) {
export
async
function
apiGetMissionList
(
params
)
{
const
res
=
await
apiHelper
.
post
(
'/wmdpwebservices/backlog/search/distributer'
,
params
)
return
res
}
/**
* 查询处理单
* @param name 账户名
* @returns {Promise<AxiosResponse<T>>}
*/
export
async
function
apiGetProcessOrder
(
params
)
{
const
res
=
await
apiHelper
.
post
(
'/wmdpwebservices/processOrder/search'
,
params
)
return
res
}
/**
* 处理单详情查询
* @param name 账户名
* @returns {Promise<AxiosResponse<T>>}
*/
export
async
function
apiGetProcessOrderDetail
(
params
)
{
const
res
=
await
apiHelper
.
post
(
'/wmdpwebservices/processOrder/info'
,
params
)
return
res
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment