
6 changed files with 598 additions and 673 deletions
@ -0,0 +1,25 @@ |
|||||
|
import request from '@/utils/request' |
||||
|
|
||||
|
export default { |
||||
|
|
||||
|
// 各支行列表
|
||||
|
listBankAll: function() { |
||||
|
return request({ |
||||
|
url: '/adminapi/bank/listBankAll' |
||||
|
}); |
||||
|
}, |
||||
|
|
||||
|
// 获取支行下的提货点
|
||||
|
listStoreOfBank: function(bankSid) { |
||||
|
return request({ |
||||
|
url: '/adminapi/bank/listStoreOfBank', |
||||
|
method: 'get', |
||||
|
params: { |
||||
|
"bankSid": bankSid |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -1,342 +1,278 @@ |
|||||
<template> |
<template> |
||||
<div class="app-container"> |
<div class="app-container"> |
||||
<div v-show="viewState == 1"> |
<div v-show="viewState == 1"> |
||||
<button-bar ref="btnbar" view-title="订单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> |
<button-bar ref="btnbar" view-title="预约单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> |
||||
<div class="main-content"> |
<div class="main-content"> |
||||
<div class="searchcon"> |
<div class="searchcon"> |
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow"> |
<el-button size="small" class="searchbtn" @click="clicksearchShow"> |
||||
{{ searchxianshitit }} |
{{ searchxianshitit }} |
||||
</el-button> |
</el-button> |
||||
<div v-show="isSearchShow" class="search"> |
<div v-show="isSearchShow" class="search"> |
||||
<el-form :inline="true" class="tab-header"> |
<el-form :inline="true" class="tab-header"> |
||||
<el-form-item label="预约开始日期"> |
<el-form-item label="预约开始日期"> |
||||
<el-date-picker v-model="page.params.startDate" @change="selectTime1" type="date" |
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> |
||||
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" |
</el-form-item> |
||||
style="width: 200px;"> |
<el-form-item label="预约结束日期"> |
||||
</el-date-picker> |
<el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> |
||||
|
</el-form-item> |
||||
</el-form-item> |
<el-form-item label="所属支行"> |
||||
<el-form-item label="预约结束日期"> |
<el-select v-model="page.params.bankSid" filterable class="item_input" clearable placeholder="请选择" style="width:100%" @change="bankSelect"> |
||||
<el-date-picker v-model="page.params.endDate" @change="selectTime2" type="date" |
<el-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" /> |
||||
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" |
</el-select> |
||||
style="width: 200px;"> |
</el-form-item> |
||||
</el-date-picker> |
<el-form-item label="提货门店"> |
||||
|
<el-select v-model="page.params.store" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> |
||||
</el-form-item> |
<el-option v-for="item in storeList" :key="item.sid" :label="item.name" :value="item.sid" /> |
||||
<el-form-item label="所属支行"> |
</el-select> |
||||
<el-select v-model="page.params.bankSid" filterable class="item_input" clearable |
</el-form-item> |
||||
placeholder="请选择" style="width:100%" @change="bankSelect"> |
<el-form-item label="菜窖分类"> |
||||
<el-option v-for="item in bankList" :key="item.name" :label="item.name" |
<el-select v-model="page.params.cardType" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> |
||||
:value="item.sid"> |
<el-option v-for="item in brandList" :key="item.id" :label="item.name" :value="item.id" /> |
||||
</el-option> |
</el-select> |
||||
</el-select> |
</el-form-item> |
||||
</el-form-item> |
</el-form> |
||||
|
<div class="btn" style="text-align: center;"> |
||||
<el-form-item label="提货门店"> |
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> |
||||
<el-select v-model="page.params.store" filterable class="item_input" clearable |
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> |
||||
placeholder="请选择" style="width:100%" @change="giftPackSelect"> |
</div> |
||||
<el-option v-for="item in giftPackList" :key="item.text" :label="item.text" |
</div> |
||||
:value="item.text"> |
</div> |
||||
</el-option> |
<!-- Start 项目列表头部 --> |
||||
</el-select> |
<div class="listtop"> |
||||
</el-form-item> |
<div class="tit">预约单列表</div> |
||||
|
</div> |
||||
|
<!-- End 项目列表头部 --> |
||||
<el-form-item label="卡券类型"> |
<!-- Start 项目列表 --> |
||||
<el-select v-model="page.params.cardType" filterable class="item_input" clearable |
<div class=""> |
||||
placeholder="请选择" style="width:100%" @change="cardTypeSelect"> |
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"> |
||||
<el-option v-for="item in cardTypeList" :key="item.text" :label="item.text" |
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> |
||||
:value="item.sid"> |
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> |
||||
</el-option> |
<!-- <el-table-column label="操作" align="center" width="120"> |
||||
</el-select> |
<template slot-scope="scope"> |
||||
</el-form-item> |
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> |
||||
|
</template> |
||||
|
</el-table-column> --> |
||||
</el-form> |
<el-table-column prop="reserveDate" label="预约日期" align="center" /> |
||||
<div class="btn" style="text-align: center;"> |
<el-table-column prop="bankName" label="所属支行" align="center" /> |
||||
<el-button type="primary" size="small" icon="el-icon-search" |
<el-table-column prop="storeName" label="提货点" align="center" /> |
||||
@click="dosearch">查询</el-button> |
<el-table-column prop="brandName" label="菜窖分类" align="center" /> |
||||
<el-button type="primary" size="small" icon="el-icon-refresh" |
<el-table-column prop="userName" label="用户名称" align="center" /> |
||||
@click="resetQuery">重置</el-button> |
<el-table-column prop="userPhone" label="联系电话" align="center" /> |
||||
</div> |
<el-table-column prop="goodsName" label="商品名称" align="center" /> |
||||
</div> |
<el-table-column prop="goodsNumber" label="商品数量" align="center" /> |
||||
</div> |
</el-table> |
||||
<!-- Start 项目列表头部 --> |
</div> |
||||
<div class="listtop"> |
<!-- End 项目列表 --> |
||||
<div class="tit">订单列表</div> |
<div class="pages"> |
||||
</div> |
<div class="tit" /> |
||||
<!-- End 项目列表头部 --> |
<!-- 翻页 --> |
||||
<!-- Start 项目列表 --> |
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" :limit.sync="page.size" class="pagination" @pagination="loadList" /> |
||||
<div class=""> |
</div> |
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"> |
</div> |
||||
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> |
</div> |
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> |
<!-- End 查询和其列表部分 --> |
||||
<el-table-column label="操作" align="center" width="120"> |
<!-- 新增修改部分组件 --> |
||||
<template slot-scope="scope"> |
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> |
||||
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> |
</div> |
||||
</template> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="cardType" label="卡券类型" align="center" /> |
|
||||
<el-table-column prop="reserveDate" label="预约日期" align="center" /> |
|
||||
<el-table-column prop="bankName" label="所属支行" align="center" /> |
|
||||
<el-table-column prop="store" label="提货地点" align="center" /> |
|
||||
<el-table-column prop="serialNumber" label="卡券序列号" align="center" /> |
|
||||
<el-table-column prop="bagName" label="礼包类型" align="center" /> |
|
||||
<el-table-column prop="userName" label="用户名称" align="center" /> |
|
||||
<el-table-column prop="userPhone" label="联系电话" align="center" /> |
|
||||
</el-table> |
|
||||
</div> |
|
||||
<!-- End 项目列表 --> |
|
||||
<div class="pages"> |
|
||||
<div class="tit" /> |
|
||||
<!-- 翻页 --> |
|
||||
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" |
|
||||
:limit.sync="page.size" class="pagination" @pagination="loadList" /> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
<!-- End 查询和其列表部分 --> |
|
||||
<!-- 新增修改部分组件 --> |
|
||||
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> |
|
||||
</div> |
|
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
import req from '@/api/order/order.js' |
import req from '@/api/lpk/reserveorder.js' |
||||
import req2 from '@/api/pickupPoint/pickupPoint.js' |
import reqBank from '@/api/lpk/bank.js' |
||||
import ButtonBar from '@/components/ButtonBar' |
import reqMall from '@/api/adminmallapi.js' |
||||
import Pagination from '@/components/pagination' |
import ButtonBar from '@/components/ButtonBar' |
||||
import pageye from '@/components/pagination/pageye' |
import Pagination from '@/components/pagination' |
||||
import divAdd from './indexInfo.vue' |
import divAdd from './indexInfo.vue' |
||||
import { |
export default { |
||||
getBeforeDate |
name: 'OrderreserveIndex', |
||||
} from '@/utils/index' |
components: { |
||||
export default { |
ButtonBar, |
||||
name: 'SupplierBankInfoIndex', |
Pagination, |
||||
components: { |
divAdd |
||||
ButtonBar, |
}, |
||||
Pagination, |
data() { |
||||
pageye, |
return { |
||||
divAdd, |
btndisabled: false, |
||||
}, |
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
||||
data() { |
isSearchShow: false, |
||||
return { |
searchxianshitit: '显示查询条件', |
||||
btndisabled: false, |
tableLoading: false, |
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
dataList: [], |
||||
isSearchShow: false, |
btnList: [{ |
||||
searchxianshitit: '显示查询条件', |
type: 'success', |
||||
tableLoading: false, |
size: 'small', |
||||
dataList: [], |
icon: 'export', |
||||
btnList: [{ |
btnKey: 'build', |
||||
type: 'success', |
btnLabel: '导出' |
||||
size: 'small', |
}, |
||||
icon: 'export', |
{ |
||||
btnKey: 'build', |
type: 'info', |
||||
btnLabel: '导出' |
size: 'small', |
||||
}, |
icon: 'cross', |
||||
{ |
btnKey: 'doClose', |
||||
type: 'info', |
btnLabel: '关闭' |
||||
size: 'small', |
} |
||||
icon: 'cross', |
], |
||||
btnKey: 'doClose', |
page: { |
||||
btnLabel: '关闭' |
total: 0, // 默认数据总数 |
||||
} |
current: 1, // 默认开始页面 |
||||
], |
size: 10, // 每页的数据条数 |
||||
page: { |
params: { |
||||
total: 0, // 默认数据总数 |
startDate: '', |
||||
current: 1, // 默认开始页面 |
endDate: '', |
||||
size: 10, // 每页的数据条数 |
store: '', |
||||
params: { |
bankSid: '', |
||||
startDate: "", |
cardType: '' |
||||
endDate: "", |
} |
||||
store: "", |
}, |
||||
bankSid:"", |
brandList: [], |
||||
cardType:"" |
bankList: [], |
||||
}, |
storeList: [] |
||||
}, |
} |
||||
giftPackList: [], |
}, |
||||
bankList: [], |
mounted() { |
||||
cardTypeList:[ |
this.$refs['btnbar'].setButtonList(this.btnList) |
||||
{ |
}, |
||||
text :"全部", |
created() { |
||||
sid:"" |
this.initBank() |
||||
}, |
this.initStore() |
||||
{ |
this.initBrand() |
||||
text :"家庭卡", |
// this.getAllStore() |
||||
sid:"1" |
// this.loadList() |
||||
}, |
// this.getBankList() |
||||
{ |
}, |
||||
text :"亲情卡", |
methods: { |
||||
sid:"2" |
initBank() { |
||||
}, |
reqBank.listBankAll() |
||||
{ |
.then(resp => { |
||||
text :"企业卡", |
this.bankList = resp.data |
||||
sid:"3" |
}) |
||||
}, |
}, |
||||
|
initStore() { |
||||
] |
reqBank.listStoreOfBank(this.page.params.bankSid) |
||||
} |
.then(resp => { |
||||
}, |
this.storeList = resp.data |
||||
mounted() { |
}) |
||||
this.$refs['btnbar'].setButtonList(this.btnList) |
}, |
||||
}, |
initBrand() { |
||||
created() { |
reqMall.listAllBrand().then(resp => { |
||||
this.getAllStore() |
this.brandList = resp.data |
||||
// this.loadList() |
}) |
||||
this.getBankList() |
}, |
||||
}, |
|
||||
methods: { |
|
||||
// 搜索条件效果 |
|
||||
clicksearchShow() { |
|
||||
this.isSearchShow = !this.isSearchShow |
|
||||
if (this.isSearchShow) { |
|
||||
this.searchxianshitit = '隐藏查询条件' |
|
||||
} else { |
|
||||
this.searchxianshitit = '显示查询条件' |
|
||||
} |
|
||||
}, |
|
||||
btnHandle(btnKey) { |
|
||||
switch (btnKey) { |
|
||||
case 'build': // 导出 |
|
||||
this.doBuild() |
|
||||
break |
|
||||
case 'doClose': |
|
||||
this.doClose() |
|
||||
break |
|
||||
default: |
|
||||
break |
|
||||
} |
|
||||
}, |
|
||||
selectTime1(val) { |
|
||||
|
|
||||
console.log('selectTime1:', val) |
|
||||
this.page.params.startDate = val |
|
||||
|
|
||||
}, |
|
||||
selectTime2(val) { |
|
||||
|
|
||||
console.log('selectTime2:', val) |
|
||||
this.page.params.endDate = val |
|
||||
|
|
||||
}, |
|
||||
|
|
||||
giftPackSelect(val) { |
|
||||
console.log('>>>>>>>>>giftPackSelect', val) |
|
||||
this.page.params.store = val |
|
||||
}, |
|
||||
getBankList() { |
|
||||
req2.bankSelect() |
|
||||
.then(resp => { |
|
||||
console.log('>>>>>>>>>getBankList', resp.data) |
|
||||
this.bankList = resp.data |
|
||||
|
|
||||
}) |
|
||||
.catch(() => {}) |
|
||||
}, |
|
||||
bankSelect(val) { |
|
||||
console.log('>>>>>>>>>bankSelect', val) |
|
||||
this.page.params.bankSid = val |
|
||||
}, |
|
||||
cardTypeSelect(val){ |
|
||||
console.log('>>>>>>>>>cardTypeSelect', val) |
|
||||
this.page.params.cardType = val |
|
||||
}, |
|
||||
getAllStore() { |
|
||||
req.getAllStore().then((resp) => { |
|
||||
if (resp.success) { |
|
||||
this.giftPackList = resp.data |
|
||||
} |
|
||||
}).catch(() => {}) |
|
||||
}, |
|
||||
|
|
||||
loadList() { |
|
||||
this.tableLoading = true |
|
||||
req.orderList(this.page).then((resp) => { |
|
||||
this.tableLoading = false |
|
||||
if (resp.success) { |
|
||||
const data = resp.data |
|
||||
this.page.total = data.total |
|
||||
this.dataList = data.records |
|
||||
} else { |
|
||||
// 根据resp.code进行异常情况处理 |
|
||||
this.dataList = [] |
|
||||
this.page.total = 0 |
|
||||
} |
|
||||
}).catch(() => { |
|
||||
this.tableLoading = false |
|
||||
}) |
|
||||
}, |
|
||||
|
|
||||
// 序号 |
|
||||
indexMethod(index) { |
|
||||
var pagestart = (this.page.current - 1) * this.page.size |
|
||||
var pageindex = index + 1 + pagestart |
|
||||
return pageindex |
|
||||
}, |
|
||||
dosearch() { |
|
||||
this.page.current = 1 |
|
||||
this.loadList() |
|
||||
}, |
|
||||
resetQuery() { |
|
||||
this.page = { |
|
||||
current: 1, |
|
||||
size: 10, |
|
||||
total: 0, |
|
||||
params: { |
|
||||
startDate: "", |
|
||||
endDate: "", |
|
||||
store: "", |
|
||||
bankSid:"", |
|
||||
cardType:"" |
|
||||
}, |
|
||||
} |
|
||||
this.loadList() |
|
||||
}, |
|
||||
|
|
||||
toRelevancy(row) { |
// 搜索条件效果 |
||||
this.viewState = 3 |
clicksearchShow() { |
||||
this.$refs['divadd'].showEdit(row) |
this.isSearchShow = !this.isSearchShow |
||||
}, |
if (this.isSearchShow) { |
||||
resetState() { |
this.searchxianshitit = '隐藏查询条件' |
||||
this.viewState = 1 |
} else { |
||||
}, |
this.searchxianshitit = '显示查询条件' |
||||
doClose() { |
} |
||||
this.$store.dispatch('tagsView/delView', this.$route) |
}, |
||||
this.$router.go(-1) |
btnHandle(btnKey) { |
||||
}, |
switch (btnKey) { |
||||
|
case 'build': // 导出 |
||||
|
this.doBuild() |
||||
|
break |
||||
|
case 'doClose': |
||||
|
this.doClose() |
||||
|
break |
||||
|
default: |
||||
|
break |
||||
|
} |
||||
|
}, |
||||
|
bankSelect(val) { |
||||
|
console.log('>>>>>>>>>bankSelect', val) |
||||
|
this.page.params.bankSid = val |
||||
|
this.page.params.store = '' |
||||
|
this.initStore() |
||||
|
}, |
||||
|
loadList() { |
||||
|
this.tableLoading = true |
||||
|
req.pageOfCustomer(this.page).then((resp) => { |
||||
|
this.tableLoading = false |
||||
|
if (resp.success) { |
||||
|
const data = resp.data |
||||
|
this.page.total = data.total |
||||
|
this.dataList = data.records |
||||
|
} else { |
||||
|
// 根据resp.code进行异常情况处理 |
||||
|
this.dataList = [] |
||||
|
this.page.total = 0 |
||||
|
} |
||||
|
}).catch(() => { |
||||
|
this.tableLoading = false |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
// 导出 |
// 序号 |
||||
doBuild() { |
indexMethod(index) { |
||||
const loading = this.$loading({ |
var pagestart = (this.page.current - 1) * this.page.size |
||||
lock: true, |
var pageindex = index + 1 + pagestart |
||||
text: 'Loading', |
return pageindex |
||||
spinner: 'el-icon-loading', |
}, |
||||
background: 'rgba(0, 0, 0, 0.7)' |
dosearch() { |
||||
}) |
this.page.current = 1 |
||||
|
this.loadList() |
||||
|
}, |
||||
|
resetQuery() { |
||||
|
this.page = { |
||||
|
current: 1, |
||||
|
size: 10, |
||||
|
total: 0, |
||||
|
params: { |
||||
|
startDate: '', |
||||
|
endDate: '', |
||||
|
store: '', |
||||
|
bankSid: '', |
||||
|
cardType: '' |
||||
|
} |
||||
|
} |
||||
|
this.loadList() |
||||
|
}, |
||||
|
|
||||
|
toRelevancy(row) { |
||||
|
this.viewState = 3 |
||||
|
this.$refs['divadd'].showEdit(row) |
||||
|
}, |
||||
|
resetState() { |
||||
|
this.viewState = 1 |
||||
|
}, |
||||
|
doClose() { |
||||
|
this.$store.dispatch('tagsView/delView', this.$route) |
||||
|
this.$router.go(-1) |
||||
|
}, |
||||
|
|
||||
req.exportExcel(this.page.params).then((resp) => { |
// 导出 |
||||
loading.close() |
doBuild() { |
||||
const blob = new Blob([resp], { |
const loading = this.$loading({ |
||||
type: 'application/vnd.ms-excel' |
lock: true, |
||||
}) |
text: 'Loading', |
||||
const fileName = '订单明细_' + this.page.params.startDate + '.xls' |
spinner: 'el-icon-loading', |
||||
const elink = document.createElement('a') |
background: 'rgba(0, 0, 0, 0.7)' |
||||
elink.download = fileName |
}) |
||||
elink.style.display = 'nonde' |
|
||||
elink.href = URL.createObjectURL(blob) |
|
||||
document.body.appendChild(elink) |
|
||||
elink.click() |
|
||||
URL.revokeObjectURL(elink.href) |
|
||||
document.body.removeChild(elink) |
|
||||
}).catch(() => { |
|
||||
loading.close() |
|
||||
}) |
|
||||
}, |
|
||||
|
|
||||
|
req.expExcelOfCustomer(this.page.params).then((resp) => { |
||||
|
loading.close() |
||||
|
const blob = new Blob([resp], { |
||||
|
type: 'application/vnd.ms-excel' |
||||
|
}) |
||||
|
const fileName = '预约单明细_' + this.page.params.startDate + '.xls' |
||||
|
const elink = document.createElement('a') |
||||
|
elink.download = fileName |
||||
|
elink.style.display = 'nonde' |
||||
|
elink.href = URL.createObjectURL(blob) |
||||
|
document.body.appendChild(elink) |
||||
|
elink.click() |
||||
|
URL.revokeObjectURL(elink.href) |
||||
|
document.body.removeChild(elink) |
||||
|
}).catch(() => { |
||||
|
loading.close() |
||||
|
}) |
||||
|
} |
||||
|
|
||||
} |
} |
||||
} |
} |
||||
</script> |
</script> |
||||
<style scoped> |
<style scoped> |
||||
</style> |
</style> |
Loading…
Reference in new issue