|
|
<template>
|
|
|
<layout-body>
|
|
|
<layout-filter>
|
|
|
<filter-item :label="filters.orderCode.label">
|
|
|
<Input v-model.trim="filters.orderCode.model"
|
|
|
:placeholder="filters.orderCode.holder" maxlength="9" ></Input>
|
|
|
</filter-item>
|
|
|
|
|
|
<filter-item :label="filters.productSku.label">
|
|
|
<Input v-model.trim="filters.productSku.model"
|
|
|
:placeholder="filters.productSku.holder" maxlength="9"></Input>
|
|
|
</filter-item>
|
|
|
|
|
|
<filter-item>
|
|
|
<Button type="primary" @click="getSellBack">筛选</Button>
|
|
|
<Button @click="clearFilters">清空条件</Button>
|
|
|
</filter-item>
|
|
|
</layout-filter>
|
|
|
|
|
|
<layout-list>
|
|
|
<Table border :columns="tableCols" :data="tableData"></Table>
|
|
|
<Page :total="pageData.total" :current="pageData.current"
|
|
|
@on-change="pageChange" :page-size="20" show-total></Page>
|
|
|
</layout-list>
|
|
|
|
|
|
<edit-img ref="showImgEdit" @on-success="editSuccess"></edit-img>
|
|
|
|
|
|
</layout-body>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import store from './store';
|
|
|
import EditImg from './components/edit-img.vue';
|
|
|
import SellService from 'services/repository/sellback-service';
|
|
|
|
|
|
export default {
|
|
|
created() {
|
|
|
this.sellService = new SellService();
|
|
|
},
|
|
|
data() {
|
|
|
return store.call(this);
|
|
|
},
|
|
|
mounted() {
|
|
|
this.getSellBack();
|
|
|
},
|
|
|
methods: {
|
|
|
editImg(row) {
|
|
|
this.$refs.showImgEdit.show(row);
|
|
|
},
|
|
|
editSuccess() {
|
|
|
this.getImg();
|
|
|
},
|
|
|
clearFilters() {
|
|
|
this.filters.orderCode.model = null;
|
|
|
this.filters.productSku.model = null;
|
|
|
this.pageData.current = 1;
|
|
|
|
|
|
this.getSellBack();
|
|
|
},
|
|
|
pageChange(page) {
|
|
|
this.pageData.current = page;
|
|
|
this.getSellBack();
|
|
|
},
|
|
|
filtersParams() {
|
|
|
let params = {};
|
|
|
let orderCode = this.filters.orderCode.model;
|
|
|
let productSku = this.filters.productSku.model;
|
|
|
|
|
|
let pageNo = this.pageData.current;
|
|
|
let pageSize = this.pageData.pageSize;
|
|
|
|
|
|
if (this.filters.orderCode.model) {
|
|
|
if (this.isNumber(this.filters.orderCode.model)) {
|
|
|
params.orderCode = this.filters.orderCode.model;
|
|
|
} else {
|
|
|
return Promise.reject('订单号必须是数字');
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (this.filters.productSku.model) {
|
|
|
if (this.isNumber(this.filters.productSku.model)) {
|
|
|
params.productSku = this.filters.productSku.model;
|
|
|
} else {
|
|
|
return Promise.reject('sku必须是数字');
|
|
|
}
|
|
|
}
|
|
|
|
|
|
params.pageSize = this.pageData.pageSize;
|
|
|
params.pageNo = this.pageData.current;
|
|
|
|
|
|
return Promise.resolve({
|
|
|
params,
|
|
|
productSku,
|
|
|
orderCode,
|
|
|
pageNo,
|
|
|
pageSize
|
|
|
});
|
|
|
},
|
|
|
getSellBack() {
|
|
|
this.$Loading.start();
|
|
|
return this.filtersParams().then((params) => {
|
|
|
return this.sellService.list(params);
|
|
|
}).then((result) => {
|
|
|
if (result.code === 200) {
|
|
|
this.pageData.total = result.data.totalCount;
|
|
|
this.pageData.current = result.data.pageNo;
|
|
|
this.tableData = result.data.records;
|
|
|
}
|
|
|
this.$Loading.finish();
|
|
|
}).catch((err) => {
|
|
|
this.$Loading.finish();
|
|
|
this.$Message.error(err);
|
|
|
});
|
|
|
},
|
|
|
isNumber(numStr) {
|
|
|
const isNumber = /^[0-9]+$/;
|
|
|
|
|
|
return isNumber.test(numStr);
|
|
|
},
|
|
|
getImg() {
|
|
|
return this.filterParams().then((params) => {
|
|
|
return this.sellService.imgDetail(params).then((result) => {
|
|
|
if (result.code === 200) {
|
|
|
this.tableData = result.data;
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
},
|
|
|
},
|
|
|
components: {
|
|
|
EditImg
|
|
|
}
|
|
|
};
|
|
|
</script> |
...
|
...
|
|