|
@@ -1,14 +1,38 @@
|
|
|
<template>
|
|
<template>
|
|
|
<div>
|
|
<div>
|
|
|
<basic-container v-show="show" class="page-crad">
|
|
<basic-container v-show="show" class="page-crad">
|
|
|
- <avue-crud :key="key" ref="crud" :option="option" :data="dataList" :page.sync="page" :search.sync="search"
|
|
|
|
|
- @search-change="searchChange" @current-change="currentChange" @size-change="sizeChange"
|
|
|
|
|
- @refresh-change="refreshChange" @on-load="onLoad" :table-loading="loading" @saveColumn="saveColumn"
|
|
|
|
|
- @resetColumn="resetColumn" :cell-style="cellStyle" @search-criteria-switch="searchCriteriaSwitch" @expand-change="expandChange">
|
|
|
|
|
|
|
+ <avue-crud
|
|
|
|
|
+ :key="key"
|
|
|
|
|
+ ref="crud"
|
|
|
|
|
+ :option="option"
|
|
|
|
|
+ :data="dataList"
|
|
|
|
|
+ :page.sync="page"
|
|
|
|
|
+ :search.sync="search"
|
|
|
|
|
+ @search-change="searchChange"
|
|
|
|
|
+ @current-change="currentChange"
|
|
|
|
|
+ @size-change="sizeChange"
|
|
|
|
|
+ @refresh-change="refreshChange"
|
|
|
|
|
+ @on-load="onLoad"
|
|
|
|
|
+ :table-loading="loading"
|
|
|
|
|
+ @saveColumn="saveColumn"
|
|
|
|
|
+ @resetColumn="resetColumn"
|
|
|
|
|
+ :cell-style="cellStyle"
|
|
|
|
|
+ @search-criteria-switch="searchCriteriaSwitch"
|
|
|
|
|
+ @expand-change="expandChange">
|
|
|
<template slot="menuLeft">
|
|
<template slot="menuLeft">
|
|
|
<div style="display:flex;padding-top: 10px">
|
|
<div style="display:flex;padding-top: 10px">
|
|
|
- <el-badge v-for="item of badgeList" :hidden="item.dictionaryStatus == '全部'?true:false" :value="item.count" :max="99" class="item" type="danger">
|
|
|
|
|
- <el-button style="border-radius: 0" :type="search.status == item.status?'success':''" size="mini" @click="query(item.status)">
|
|
|
|
|
|
|
+ <el-badge
|
|
|
|
|
+ v-for="item of badgeList"
|
|
|
|
|
+ :hidden="item.dictionaryStatus == '全部'?true:false"
|
|
|
|
|
+ :value="item.count"
|
|
|
|
|
+ :max="99"
|
|
|
|
|
+ class="item"
|
|
|
|
|
+ type="danger">
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ style="border-radius: 0"
|
|
|
|
|
+ :type="search.status == item.status?'success':''"
|
|
|
|
|
+ size="mini"
|
|
|
|
|
+ @click="query(item.status)">
|
|
|
{{ item.dictionaryStatus }}
|
|
{{ item.dictionaryStatus }}
|
|
|
</el-button>
|
|
</el-button>
|
|
|
</el-badge>
|
|
</el-badge>
|
|
@@ -16,7 +40,11 @@
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
<template slot="expand" slot-scope="{row}">
|
|
<template slot="expand" slot-scope="{row}">
|
|
|
- <avue-crud ref="expandCrud" :option="optionList" :table-loading="row.loading" :data="row.orderItemsList"></avue-crud>
|
|
|
|
|
|
|
+ <avue-crud
|
|
|
|
|
+ ref="expandCrud"
|
|
|
|
|
+ :option="optionList"
|
|
|
|
|
+ :table-loading="row.loading"
|
|
|
|
|
+ :data="row.orderItemsList"></avue-crud>
|
|
|
</template>
|
|
</template>
|
|
|
<template slot="corpIdSearch">
|
|
<template slot="corpIdSearch">
|
|
|
<crop-select v-model="search.corpId" corpType="KH"></crop-select>
|
|
<crop-select v-model="search.corpId" corpType="KH"></crop-select>
|
|
@@ -28,9 +56,15 @@
|
|
|
<span style="color: #409EFF;cursor: pointer" @click.stop="editOpen(row, 1)">{{ row.sysNo }}</span>
|
|
<span style="color: #409EFF;cursor: pointer" @click.stop="editOpen(row, 1)">{{ row.sysNo }}</span>
|
|
|
</template>
|
|
</template>
|
|
|
<template slot="businesDateSearch">
|
|
<template slot="businesDateSearch">
|
|
|
- <el-date-picker v-model="search.businesDate" type="daterange" start-placeholder="开始日期" end-placeholder="结束日期"
|
|
|
|
|
- format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" :default-time="['00:00:00', '23:59:59']"
|
|
|
|
|
- :picker-options="pickerOptions">
|
|
|
|
|
|
|
+ <el-date-picker
|
|
|
|
|
+ v-model="search.businesDate"
|
|
|
|
|
+ type="daterange"
|
|
|
|
|
+ start-placeholder="开始日期"
|
|
|
|
|
+ end-placeholder="结束日期"
|
|
|
|
|
+ format="yyyy-MM-dd"
|
|
|
|
|
+ value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
|
|
+ :default-time="['00:00:00', '23:59:59']"
|
|
|
|
|
+ :picker-options="pickerOptions">
|
|
|
</el-date-picker>
|
|
</el-date-picker>
|
|
|
</template>
|
|
</template>
|
|
|
<template slot-scope="{ row, index }" slot="menu">
|
|
<template slot-scope="{ row, index }" slot="menu">
|
|
@@ -73,19 +107,20 @@
|
|
|
<el-form :model="form" label-position="right">
|
|
<el-form :model="form" label-position="right">
|
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
|
<el-form-item label="收货人姓名:" label-width="100px">
|
|
<el-form-item label="收货人姓名:" label-width="100px">
|
|
|
- <span>{{form.corpAttn}}</span>
|
|
|
|
|
|
|
+ <span>{{ form.corpAttn }}</span>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
<el-form-item label="收货人电话:" label-width="100px">
|
|
<el-form-item label="收货人电话:" label-width="100px">
|
|
|
- <span>{{form.corpTel}}</span>
|
|
|
|
|
|
|
+ <span>{{ form.corpTel }}</span>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
<el-form-item label="收货人地址:" label-width="100px">
|
|
<el-form-item label="收货人地址:" label-width="100px">
|
|
|
- <span>{{form.arrivalAddress}}</span>
|
|
|
|
|
|
|
+ <span>{{ form.arrivalAddress }}</span>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
|
<el-form-item label="快递公司:" label-width="100px">
|
|
<el-form-item label="快递公司:" label-width="100px">
|
|
|
-<!-- <el-input v-model="form.courierCorporation" placeholder="请输入快递公司" size="small" style="width: 100%;"></el-input>-->
|
|
|
|
|
- <el-select v-model="form.courierCorporation" placeholder="请选择快递公司" clearable filterable size="small" style="width: 90%;">
|
|
|
|
|
|
|
+ <!-- <el-input v-model="form.courierCorporation" placeholder="请输入快递公司" size="small" style="width: 100%;"></el-input>-->
|
|
|
|
|
+ <el-select v-model="form.courierCorporation" placeholder="请选择快递公司" clearable filterable
|
|
|
|
|
+ size="small" style="width: 90%;">
|
|
|
<el-option
|
|
<el-option
|
|
|
v-for="item in courierServices"
|
|
v-for="item in courierServices"
|
|
|
:key="item.dictKey"
|
|
:key="item.dictKey"
|
|
@@ -97,7 +132,11 @@
|
|
|
</el-col>
|
|
</el-col>
|
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
|
<el-form-item label="快递单号:" label-width="100px">
|
|
<el-form-item label="快递单号:" label-width="100px">
|
|
|
- <el-input v-model="form.courierNumber" placeholder="请输入快递单号" size="small" style="width: 90%;"></el-input>
|
|
|
|
|
|
|
+ <el-input
|
|
|
|
|
+ v-model="form.courierNumber"
|
|
|
|
|
+ placeholder="请输入快递单号"
|
|
|
|
|
+ size="small"
|
|
|
|
|
+ style="width: 90%;"></el-input>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-col>
|
|
</el-col>
|
|
|
</el-form>
|
|
</el-form>
|
|
@@ -131,7 +170,7 @@ export default {
|
|
|
src: '',
|
|
src: '',
|
|
|
form: {},
|
|
form: {},
|
|
|
optionList: {
|
|
optionList: {
|
|
|
- header:false,
|
|
|
|
|
|
|
+ header: false,
|
|
|
align: "center",
|
|
align: "center",
|
|
|
addBtn: false,
|
|
addBtn: false,
|
|
|
refreshBtn: false,
|
|
refreshBtn: false,
|
|
@@ -142,9 +181,9 @@ export default {
|
|
|
menuWidth: 120,
|
|
menuWidth: 120,
|
|
|
stripe: true,
|
|
stripe: true,
|
|
|
index: true,
|
|
index: true,
|
|
|
- menu:false,
|
|
|
|
|
- expandRowKeys:[],
|
|
|
|
|
- rowKey:'id',
|
|
|
|
|
|
|
+ menu: false,
|
|
|
|
|
+ expandRowKeys: [],
|
|
|
|
|
+ rowKey: 'id',
|
|
|
indexSlot: true,
|
|
indexSlot: true,
|
|
|
showSummary: true,
|
|
showSummary: true,
|
|
|
summaryText: "合计",
|
|
summaryText: "合计",
|
|
@@ -237,7 +276,7 @@ export default {
|
|
|
show: true,
|
|
show: true,
|
|
|
loading: false,
|
|
loading: false,
|
|
|
search: {
|
|
search: {
|
|
|
- status:''
|
|
|
|
|
|
|
+ status: ''
|
|
|
},
|
|
},
|
|
|
detailData: {},
|
|
detailData: {},
|
|
|
dataList: [],
|
|
dataList: [],
|
|
@@ -319,7 +358,7 @@ export default {
|
|
|
}
|
|
}
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- courierServices:[]
|
|
|
|
|
|
|
+ courierServices: []
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
components: {
|
|
components: {
|
|
@@ -344,7 +383,7 @@ export default {
|
|
|
}
|
|
}
|
|
|
if (this.$route.query.orderId) {
|
|
if (this.$route.query.orderId) {
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
- this.editOpen({ id: this.$route.query.orderId }, 1);
|
|
|
|
|
|
|
+ this.editOpen({id: this.$route.query.orderId}, 1);
|
|
|
}, 100);
|
|
}, 100);
|
|
|
}
|
|
}
|
|
|
if (this.$route.query.check) {
|
|
if (this.$route.query.check) {
|
|
@@ -359,12 +398,12 @@ export default {
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
- confirmShipment(){
|
|
|
|
|
- if (!this.form.courierNumber){
|
|
|
|
|
|
|
+ confirmShipment() {
|
|
|
|
|
+ if (!this.form.courierNumber) {
|
|
|
this.$alert('是否继续发货', '未填写快递单号', {
|
|
this.$alert('是否继续发货', '未填写快递单号', {
|
|
|
confirmButtonText: '确定',
|
|
confirmButtonText: '确定',
|
|
|
callback: action => {
|
|
callback: action => {
|
|
|
- if (action === "confirm"){
|
|
|
|
|
|
|
+ if (action === "confirm") {
|
|
|
const loading = this.$loading({
|
|
const loading = this.$loading({
|
|
|
lock: true,
|
|
lock: true,
|
|
|
text: '加载中',
|
|
text: '加载中',
|
|
@@ -372,21 +411,21 @@ export default {
|
|
|
background: 'rgba(255,255,255,0.7)'
|
|
background: 'rgba(255,255,255,0.7)'
|
|
|
});
|
|
});
|
|
|
delivery({
|
|
delivery({
|
|
|
- id:this.form.id,
|
|
|
|
|
- courierNumber:this.form.courierNumber,
|
|
|
|
|
- courierCorporation:this.form.courierCorporation
|
|
|
|
|
- }).then(res=>{
|
|
|
|
|
|
|
+ id: this.form.id,
|
|
|
|
|
+ courierNumber: this.form.courierNumber,
|
|
|
|
|
+ courierCorporation: this.form.courierCorporation
|
|
|
|
|
+ }).then(res => {
|
|
|
loading.close();
|
|
loading.close();
|
|
|
this.$message.success("发货成功")
|
|
this.$message.success("发货成功")
|
|
|
this.dialogVisible = false
|
|
this.dialogVisible = false
|
|
|
this.onLoad(this.page)
|
|
this.onLoad(this.page)
|
|
|
- }).catch(()=>{
|
|
|
|
|
|
|
+ }).catch(() => {
|
|
|
loading.close();
|
|
loading.close();
|
|
|
})
|
|
})
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
const loading = this.$loading({
|
|
const loading = this.$loading({
|
|
|
lock: true,
|
|
lock: true,
|
|
|
text: '加载中',
|
|
text: '加载中',
|
|
@@ -394,15 +433,15 @@ export default {
|
|
|
background: 'rgba(255,255,255,0.7)'
|
|
background: 'rgba(255,255,255,0.7)'
|
|
|
});
|
|
});
|
|
|
delivery({
|
|
delivery({
|
|
|
- id:this.form.id,
|
|
|
|
|
- courierNumber:this.form.courierNumber,
|
|
|
|
|
- courierCorporation:this.form.courierCorporation
|
|
|
|
|
- }).then(res=>{
|
|
|
|
|
|
|
+ id: this.form.id,
|
|
|
|
|
+ courierNumber: this.form.courierNumber,
|
|
|
|
|
+ courierCorporation: this.form.courierCorporation
|
|
|
|
|
+ }).then(res => {
|
|
|
this.$message.success("发货成功")
|
|
this.$message.success("发货成功")
|
|
|
this.dialogVisible = false
|
|
this.dialogVisible = false
|
|
|
loading.close();
|
|
loading.close();
|
|
|
this.onLoad(this.page)
|
|
this.onLoad(this.page)
|
|
|
- }).catch(()=>{
|
|
|
|
|
|
|
+ }).catch(() => {
|
|
|
loading.close();
|
|
loading.close();
|
|
|
})
|
|
})
|
|
|
}
|
|
}
|
|
@@ -429,9 +468,9 @@ export default {
|
|
|
this.storageoptions = res.data;
|
|
this.storageoptions = res.data;
|
|
|
this.findObject(this.optionList.column, "storageId").dicData = res.data;
|
|
this.findObject(this.optionList.column, "storageId").dicData = res.data;
|
|
|
})
|
|
})
|
|
|
- if (row){
|
|
|
|
|
|
|
+ if (row) {
|
|
|
row.loading = true
|
|
row.loading = true
|
|
|
- getDetails({ id: row.id }).then(res=>{
|
|
|
|
|
|
|
+ getDetails({id: row.id}).then(res => {
|
|
|
row.orderItemsList = res.data.data.orderItemsList
|
|
row.orderItemsList = res.data.data.orderItemsList
|
|
|
row.loading = false
|
|
row.loading = false
|
|
|
})
|
|
})
|
|
@@ -457,19 +496,19 @@ export default {
|
|
|
this.$store.commit("IN_PJXS_STATUS");
|
|
this.$store.commit("IN_PJXS_STATUS");
|
|
|
},
|
|
},
|
|
|
onLoad(page, params = {}) {
|
|
onLoad(page, params = {}) {
|
|
|
- if (this.$refs.expandCrud){
|
|
|
|
|
|
|
+ if (this.$refs.expandCrud) {
|
|
|
this.dataList.forEach(item => {
|
|
this.dataList.forEach(item => {
|
|
|
this.$refs.crud.toggleRowExpansion(item, false);
|
|
this.$refs.crud.toggleRowExpansion(item, false);
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
- statusStatisticsApi({type:'1'}).then(res => {
|
|
|
|
|
|
|
+ statusStatisticsApi({type: '1'}).then(res => {
|
|
|
this.badgeList = [];
|
|
this.badgeList = [];
|
|
|
this.badgeList.push({
|
|
this.badgeList.push({
|
|
|
- count:0,
|
|
|
|
|
- dictionaryStatus:"全部",
|
|
|
|
|
- status:''
|
|
|
|
|
|
|
+ count: 0,
|
|
|
|
|
+ dictionaryStatus: "全部",
|
|
|
|
|
+ status: ''
|
|
|
});
|
|
});
|
|
|
- for (let item of res.data.data){
|
|
|
|
|
|
|
+ for (let item of res.data.data) {
|
|
|
this.badgeList.push(item)
|
|
this.badgeList.push(item)
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
@@ -487,17 +526,17 @@ export default {
|
|
|
page.pageSize,
|
|
page.pageSize,
|
|
|
data
|
|
data
|
|
|
).then(res => {
|
|
).then(res => {
|
|
|
- this.dataList = res.data.data.records ? res.data.data.records : [];
|
|
|
|
|
- this.page.total = res.data.data.total;
|
|
|
|
|
- }).finally(() => {
|
|
|
|
|
- this.loading = false;
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ this.dataList = res.data.data.records ? res.data.data.records : [];
|
|
|
|
|
+ this.page.total = res.data.data.total;
|
|
|
|
|
+ }).finally(() => {
|
|
|
|
|
+ this.loading = false;
|
|
|
|
|
+ });
|
|
|
},
|
|
},
|
|
|
editOpen(row, status) {
|
|
editOpen(row, status) {
|
|
|
this.detailData = {
|
|
this.detailData = {
|
|
|
id: row.id,
|
|
id: row.id,
|
|
|
status: status,
|
|
status: status,
|
|
|
- billType:row.billType
|
|
|
|
|
|
|
+ billType: row.billType
|
|
|
};
|
|
};
|
|
|
this.show = false;
|
|
this.show = false;
|
|
|
this.$store.commit("IN_PJXS_STATUS");
|
|
this.$store.commit("IN_PJXS_STATUS");
|
|
@@ -532,8 +571,8 @@ export default {
|
|
|
},
|
|
},
|
|
|
async saveColumn() {
|
|
async saveColumn() {
|
|
|
const inSave = await this.saveColumnData(
|
|
const inSave = await this.saveColumnData(
|
|
|
- this.getColumnName(211),
|
|
|
|
|
- this.option
|
|
|
|
|
|
|
+ this.getColumnName(211),
|
|
|
|
|
+ this.option
|
|
|
);
|
|
);
|
|
|
if (inSave) {
|
|
if (inSave) {
|
|
|
this.$nextTick(() => {
|
|
this.$nextTick(() => {
|
|
@@ -573,14 +612,14 @@ export default {
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
-<style lang="scss" scoped>
|
|
|
|
|
|
|
+<style lang="scss" scoped>
|
|
|
.page-crad ::v-deep .basic-container__card {
|
|
.page-crad ::v-deep .basic-container__card {
|
|
|
height: 94.2vh;
|
|
height: 94.2vh;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
::v-deep .el-badge__content.is-fixed {
|
|
::v-deep .el-badge__content.is-fixed {
|
|
|
z-index: 10;
|
|
z-index: 10;
|
|
|
- right:25px
|
|
|
|
|
|
|
+ right: 25px
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.item {
|
|
.item {
|
|
@@ -618,20 +657,25 @@ export default {
|
|
|
margin-bottom: 0px;
|
|
margin-bottom: 0px;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-::v-deep .el-form-item__content{
|
|
|
|
|
- margin-left: 90px;
|
|
|
|
|
|
|
+
|
|
|
|
|
+::v-deep .el-form-item__content {
|
|
|
|
|
+ //margin-left: 90px;
|
|
|
}
|
|
}
|
|
|
-::v-deep .avue-crud__right{
|
|
|
|
|
|
|
+
|
|
|
|
|
+::v-deep .avue-crud__right {
|
|
|
padding-top: 5px;
|
|
padding-top: 5px;
|
|
|
}
|
|
}
|
|
|
-::v-deep .elForm{
|
|
|
|
|
- .el-form-item{
|
|
|
|
|
|
|
+
|
|
|
|
|
+::v-deep .elForm {
|
|
|
|
|
+ .el-form-item {
|
|
|
margin-bottom: 0;
|
|
margin-bottom: 0;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-::v-deep .el-dialog__body{
|
|
|
|
|
|
|
+
|
|
|
|
|
+::v-deep .el-dialog__body {
|
|
|
padding: 0;
|
|
padding: 0;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
::v-deep .el-form-item__label {
|
|
::v-deep .el-form-item__label {
|
|
|
//text-align: right;
|
|
//text-align: right;
|
|
|
//vertical-align: middle;
|
|
//vertical-align: middle;
|