From 6e961fafc0f921d575772a3c89f2c5cad28c270d Mon Sep 17 00:00:00 2001
From: zhangwei <1504152376@qq.com>
Date: 星期五, 14 三月 2025 17:15:14 +0800
Subject: [PATCH] -
---
src/pages/delivergoods/arrange.vue | 223 ++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 162 insertions(+), 61 deletions(-)
diff --git a/src/pages/delivergoods/arrange.vue b/src/pages/delivergoods/arrange.vue
index a17a80e..bf5e787 100644
--- a/src/pages/delivergoods/arrange.vue
+++ b/src/pages/delivergoods/arrange.vue
@@ -21,17 +21,27 @@
<view class="coreshop-ff chuany-bradius20">
<view class="chuany-font26">
<view class="chuany-flex chuany-justify-between">
- <text class="chuany-width7">{{index+1}}</text>
+ <text class="chuany-width6">{{index+1}}</text>
<view class="chuany-width15">
- {{$util.formatDate(item.createTime,'riqi')}}
+ {{$util.formatDate(item.deliverTime,'riqi')}}
</view>
- <view class="chuany-width73">
- <u-text size='14' :text="item.remark" lines="1">
+ <view :class="item.deliveredstatus !== 'Delivered'?'chuany-width67':'chuany-width79'"
+ @click='goDetail(item)'>
+ <u-text size='14' :text="item.remark||item.companyName" lines="1">
</u-text>
</view>
- <view class="chuany-width5">
- <up-icon name="edit-pen" @click='editOrder(item)'></up-icon>
- </view>
+ <template v-if="item.deliveredstatus !== 'Delivered'">
+ <view class="chuany-width6 chuany-paddingright-10" @tap.stop='editOrder(item)'>
+ <up-icon name="edit-pen" size='18'></up-icon>
+ </view>
+ <view class="chuany-width6" @tap.stop='UndoDeliverPlans(item)'>
+ <up-icon name="reload" size='19'></up-icon>
+ </view>
+ </template>
+ <!-- <view class="chuany-width6" v-else>
+ <u-text size='14' type="" text="" lines="1">
+ </u-text>
+ </view> -->
</view>
</view>
</view>
@@ -42,28 +52,41 @@
<up-empty text='鏆傛棤' icon="/static/order.png">
</up-empty>
</view>
- <up-modal title="閫佽揣瀹夋帓" :show="show7" showCancelButton @confirm="confirmSave" @cancel='cancelModal'
- :asyncClose="true">
+ <up-modal title="閫佽揣瀹夋帓" :show="show7" showCancelButton @confirm="confirmSave" @cancel='cancelModal'
+ ref='modalArrange' :asyncClose="true">
<up-form labelPosition="left" :model="arrangeInfo" ref="formRef" labelWidth='140rpx'>
<up-form-item label="閫佽揣鏃ユ湡" prop="deliverTime" required :borderBottom='false' ref="item1"
@click="clickShouTime">
<!-- <up-input v-model="arrangeInfo.deliverTime" readonly border="none"
placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃ユ湡"></up-input> -->
<up-datetime-picker hasInput @confirm='confirmDate' :show="shougHuoshow" v-model="deliverTime"
- mode="date" placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃ユ湡" :minDate='Number(new Date(minDate))'
- @cancel='() => shougHuoshow = false'></up-datetime-picker>
+ disabled disabledColor='#FFF' mode="date" placeholder="鐐瑰嚮閫夋嫨宸ヤ綔鏃ユ湡"
+ :minDate='Number(new Date(minDate))' @cancel='() => shougHuoshow = false'></up-datetime-picker>
</up-form-item>
- <up-form-item label="鍙告満" prop="driverId" required :borderBottom='false' @click="clickAction('driver')"
+ <up-form-item label="鎺掑簭" prop="sort" required :borderBottom='false' ref="item1">
+ <up-input v-model="arrangeInfo.sort" placeholder="璇疯緭鍏ユ帓搴�" border="none" type="number">
+ </up-input>
+ </up-form-item>
+ <up-form-item label="鍙告満" prop="driverName" required :borderBottom='false' @click="clickAction('driver')"
ref="item1">
- <up-input v-model="driverName" disabled border="none" disabledColor="#ffffff"
+ <up-input v-model="arrangeInfo.driverName" disabled border="none" disabledColor="#ffffff"
placeholder="璇烽�夋嫨鍙告満"></up-input>
</up-form-item>
- <up-form-item label="鏀惰揣鍗曚綅" prop="buyerId" required :borderBottom='false' ref="item1">
- <up-input v-model="buyerName" placeholder="璇烽�夋嫨鏀惰揣鍗曚綅" border="none">
+ <up-form-item label="鏀惰揣鍗曚綅" prop="companyName" labelPosition='top' required :borderBottom='false'
+ ref="item1" v-if='show7'>
+ <!-- <tem-selects-fan placeholder="璇烽�夋嫨鏀惰揣鍗曚綅" :data="customerList" :clearable='true'
+ :value="arrangeInfo.companyName" :value-type="valueType" :filterable='true' :searchType='1'
+ @input='selectChange'></tem-selects-fan> -->
+ <!-- <form-select class="form_select" ref="formSelect1" :search="true" :icon="true"
+ :placeholder="optionPlaceholder" :selectedId="optionId" :localdata="optionModel"
+ @change="changeOption" @clear="clearOption"></form-select> -->
+ <tem-select ref="formSelect" placeholder="璇烽�夋嫨鏀惰揣鍗曚綅" :selectedId="arrangeInfo.buyerId" :value='arrangeInfo.companyName' :search='true'
+ :localdata="customerList" @change="selectChange"></tem-select>
+ <!-- <up-input v-model="arrangeInfo.companyName" placeholder="璇烽�夋嫨鏀惰揣鍗曚綅" border="none">
<template #suffix>
<up-button @tap="clickAction" text="鐐瑰嚮閫夋嫨" type="primary" size="mini"></up-button>
</template>
- </up-input>
+ </up-input> -->
</up-form-item>
<up-form-item label="鑱旂郴浜�" prop="lianxiren" :borderBottom='false' ref="item1">
<up-input v-model="arrangeInfo.lianxiren" border="none" placeholder="璇疯緭鍏ヨ仈绯讳汉"></up-input>
@@ -71,18 +94,18 @@
<up-form-item label="鑱旂郴鐢佃瘽" prop="dianhua" required :borderBottom='false' ref="item1">
<up-input v-model="arrangeInfo.dianhua" border="none" placeholder="璇疯緭鍏ヨ仈绯荤數璇�"></up-input>
</up-form-item>
- <up-form-item label="閫佽揣鍦板潃" prop="dizhi" required :borderBottom='false' ref="item1">
+ <up-form-item label="閫佽揣鍦板潃" prop="dizhi" labelPosition='top' required :borderBottom='false' ref="item1">
<up-input v-model="arrangeInfo.dizhi" border="none" placeholder="璇疯緭鍏ラ�佽揣鍦板潃"></up-input>
</up-form-item>
- <up-form-item label="閫佽揣浜嬬敱" prop="remark" required :borderBottom='false' ref="item1">
- <up-textarea v-model="arrangeInfo.remark" border="none" placeholder="璇疯緭鍏ラ�佽揣浜嬬敱"></up-textarea>
+ <up-form-item label="閫佽揣浜嬬敱" prop="remark" labelPosition='top' required :borderBottom='false' ref="item1">
+ <up-input v-model="arrangeInfo.remark" border="none" placeholder="璇疯緭鍏ラ�佽揣浜嬬敱"></up-input>
</up-form-item>
</up-form>
</up-modal>
- <fui-date-picker range :show="datePickerShow" :value="getFirstDayOfMonth()" type="3" zIndex="10000"
+ <fui-date-picker :show="datePickerShow" :value="getFirstDayOfMonth()" type="3" zIndex="10000"
@change="changePicker" :minDate='minDate' :maxDate='maxDate' @cancel="clickTime"></fui-date-picker>
<up-action-sheet :show="showActions" :actions="actions" title="璇烽�夋嫨" @close="showActions = false"
- @select="selectItem">
+ wrapMaxHeight='500px' @select="selectItem">
</up-action-sheet>
</view>
</template>
@@ -96,14 +119,17 @@
export default {
data() {
return {
+ valueType: {
+ label: 'companyName',
+ value: 'keyid'
+ },
datePickerShow: false,
shougHuoshow: false,
- workTime: '',
+ workTime: this.$util.formatDate(new Date()),
orderList: [],
loadStatus: 'loadmore',
pageIndex: 1,
- pageSize: 20,
- contentVal: '',
+ pageSize: 30,
customerList: [],
isEdit: false,
editItem: {},
@@ -119,11 +145,14 @@
arrangeInfo: {
deliverTime: this.$util.formatDate(new Date(), null, 1),
driverId: '',
- buyerId: '',
+ buyerId: null,
dianhua: '',
remark: '',
lianxiren: '',
dizhi: '',
+ companyName: '',
+ driverName: '',
+ sort: '1'
},
rules: {
'deliverTime': {
@@ -132,32 +161,40 @@
message: '璇烽�夋嫨鏃ユ湡',
trigger: ['blur', 'change']
},
- 'arrangeInfo.driverId': {
+ 'driverName': {
type: 'string',
- max: 1,
required: true,
message: '璇烽�夋嫨鍙告満',
trigger: ['blur', 'change']
},
- 'arrangeInfo.dianhua': {
+ 'companyName': {
type: 'string',
- max: 1,
+ required: true,
+ message: '璇烽�夋嫨鎴栧~鍐欓�佽揣鍗曚綅',
+ trigger: ['blur', 'change']
+ },
+ 'dianhua': {
+ type: 'string',
required: true,
message: '璇疯緭鍏ヨ仈绯荤數璇�',
trigger: ['blur', 'change']
},
- 'arrangeInfo.dizhi': {
+ 'dizhi': {
type: 'string',
- max: 1,
required: true,
message: '璇疯緭鍏ラ�佽揣鍦板潃',
trigger: ['blur', 'change']
},
- 'arrangeInfo.remark': {
+ 'remark': {
type: 'string',
- max: 1,
required: true,
message: '璇疯緭鍏ラ�佽揣浜嬬敱',
+ trigger: ['blur', 'change']
+ },
+ 'sort': {
+ type: 'number',
+ required: true,
+ message: '璇疯緭鍏ユ帓搴�',
trigger: ['blur', 'change']
},
},
@@ -165,8 +202,8 @@
switchVal: false,
driverList: [],
buyerName: '',
- timeStart: '',
- timeEnd: '',
+ timeStart: new Date(),
+ timeEnd: new Date(),
sevenDaysDriver: [],
deliverKeyID: '',
deliverKeyName: ''
@@ -183,20 +220,28 @@
this.getCustomer()
this.GetDriversOfWithin7days()
},
+ onMounted() {
+ this.$refs.formRef.setRules(this.rules);
+ },
onReachBottom() {
if (this.loadStatus != 'nomore') {
this.getList()
}
},
onPullDownRefresh() {
- this.startDate = ''
- this.endDate = ''
- this.workTime = ''
+ this.timeStart = new Date()
+ this.timeEnd = new Date()
+ this.workTime = this.$util.formatDate(new Date())
this.deliverKeyName = ''
this.init()
uni.stopPullDownRefresh();
},
methods: {
+ goDetail(item) {
+ uni.navigateTo({
+ url: `/pages/delivergoods/arrangedetail?KeyId=${item.keyid}`
+ });
+ },
GetDriversOfWithin7days() {
this.$api.GetDriversOfWithin7days().then(res => {
if (res.code == 1) {
@@ -205,16 +250,16 @@
})
},
changePicker(val) {
- console.log(val);
- this.workTime = val.startDate.result + '鑷�' + val.endDate.result
- this.timeStart = new Date(val.startDate.result) //宸ヤ綔寮�濮嬫椂闂�
- this.timeEnd = new Date(val.endDate.result)
+ console.log(val, '-=-=鈥�');
+ this.workTime = val.result
+ this.timeStart = new Date(val.result) //宸ヤ綔寮�濮嬫椂闂�
+ this.timeEnd = new Date(val.result)
this.datePickerShow = !this.datePickerShow
- this.getList()
+ this.init()
},
confirmDate(val) {
console.log(val);
- this.arrangeInfo.deliverTime = val
+ this.arrangeInfo.deliverTime = this.$util.formatDate(val.value)
this.shougHuoshow = false
},
getCustomer() {
@@ -223,13 +268,15 @@
this.customerList = res.data
this.customerList.forEach(item => {
item.name = item.companyName
+ item.title = item.companyName
+ item.id = item.keyid
})
}
})
},
selectItem(item) {
if (this.selectAc == 'driver') {
- this.driverName = item.name
+ this.arrangeInfo.driverName = item.name
this.arrangeInfo.driverId = item.keyid
} else if (this.selectAc == 'driver7') {
this.deliverKeyID = item.keyid
@@ -241,8 +288,22 @@
this.arrangeInfo.dizhi = item.adder
this.arrangeInfo.dianhua = item.companyPhone
this.arrangeInfo.lianxiren = item.businessManagers
+ this.arrangeInfo.companyName = item.companyName
}
this.selectAc = ''
+ },
+ selectChange(item) {
+ console.log(item,'hhhhh');
+ if (typeof item == 'object') {
+ this.buyerName = item.name
+ this.arrangeInfo.buyerId = item.keyid
+ this.arrangeInfo.dizhi = item.adder
+ this.arrangeInfo.dianhua = item.companyPhone
+ this.arrangeInfo.lianxiren = item.businessManagers
+ this.arrangeInfo.companyName = item.companyName
+ } else {
+ this.arrangeInfo.companyName = item
+ }
},
getFirstDayOfMonth() {
var currentDate = new Date();
@@ -281,14 +342,44 @@
remark: item.remark,
lianxiren: item.lianxiren,
dizhi: item.dizhi,
- keyid: item.keyid
+ keyid: item.keyid,
+ companyName: item.companyName,
+ sort: item.sort,
+ driverName: item.driver.name || ''
}
this.show7 = true
- this.driverName = item.driver.name
- let obj = this.customerList.find(ite => {
- return ite.keyid == item.buyerId
+ this.driverName = item.driver && item.driver.name
+ // let obj = this.customerList.find(ite => {
+ // return ite.keyid == item.buyerId
+ // })
+ // this.buyerName = obj.companyName
+ },
+ UndoDeliverPlans(item) {
+ let that = this
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '纭鎾ら攢璇ヨ鍗曞悧锛�',
+ success: function(res) {
+ if (res.confirm) {
+ // 鎵ц纭鍚庣殑鎿嶄綔
+ that.$api.UndoDeliverPlans(item.keyid).then(res => {
+ if (res.code == 1) {
+ that.$util.showToast({
+ title: '鎾ら攢鎴愬姛锛�'
+ })
+ that.init()
+ } else {
+ that.$util.showToast({
+ title: res.error
+ })
+ }
+ })
+ } else {
+ // 鎵ц鍙栨秷鍚庣殑鎿嶄綔
+ }
+ }
})
- this.buyerName = obj.companyName
+
},
delOrder(item) {
let that = this
@@ -320,13 +411,20 @@
},
init() {
this.pageIndex = 1
- this.pageSize = 20
+ this.pageSize = 30
this.loadStatus = 'loadmore'
this.orderList = []
- this.contentVal = ''
+ console.log(this.orderList);
this.getList()
},
confirmSave() {
+ // if (!this.arrangeInfo.driverId) {
+ // this.$refs.modalArrange.loading = false
+ // return this.$util.showToast({
+ // title: '璇烽�夋嫨鍙告満锛�'
+ // })
+ // }
+ console.log();
this.$refs.formRef.validate().then(res => {
if (this.isEdit) {
this.$api.UpDataDeliverPlans(this.arrangeInfo).then(res => {
@@ -335,11 +433,12 @@
this.arrangeInfo = {
deliverTime: this.$util.formatDate(new Date(), null, 1),
driverId: '',
- buyerId: '',
+ buyerId: null,
dianhua: '',
remark: '',
lianxiren: '',
dizhi: '',
+ sort: '1'
}
this.show7 = false
this.driverName = ''
@@ -359,11 +458,14 @@
this.arrangeInfo = {
deliverTime: this.$util.formatDate(new Date(), null, 1),
driverId: '',
- buyerId: '',
+ buyerId: null,
dianhua: '',
remark: '',
lianxiren: '',
dizhi: '',
+ companyName: '',
+ driverName: '',
+ sort: '1'
}
this.show7 = false
this.driverName = ''
@@ -376,6 +478,8 @@
}
this.isLoading = false
})
+ }).catch(errors => {
+ this.$refs.modalArrange.loading = false
})
},
@@ -383,11 +487,14 @@
this.arrangeInfo = {
deliverTime: this.$util.formatDate(new Date(), null, 1),
driverId: '',
- buyerId: '',
+ buyerId: null,
dianhua: '',
remark: '',
lianxiren: '',
dizhi: '',
+ companyName: '',
+ driverName: '',
+ sort: '1'
}
this.show7 = false
this.driverName = ''
@@ -464,12 +571,6 @@
}
}
})
- },
- actionClick(item, e) {
- console.log(e);
- if (e.index == 0) {
- this.contentVal = item.remark
- }
}
}
}
--
Gitblit v1.9.1