This commit is contained in:
myTest383
2025-05-12 17:47:08 +08:00
parent 29313b8db2
commit 90e76e043e
13 changed files with 609 additions and 0 deletions

View File

@@ -0,0 +1 @@
[data-v-c8434d4e] .el-collapse-item__header{height:40px;padding:10px;font-weight:700;font-size:20px;text-align:left;color:#fff;background-color:#0294d7}[data-v-c8434d4e] .el-collapse-item__content{padding-bottom:0}

View File

@@ -0,0 +1 @@
.trightb[data-v-7bb0ba38]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.trightb_item[data-v-7bb0ba38]{padding-top:5px}.span[data-v-7bb0ba38]{margin-left:50px;font-size:15px;font-weight:400}[data-v-7bb0ba38] .el-collapse-item__header{height:40px;padding:10px;font-weight:700;font-size:20px;text-align:left;color:#fff;background-color:#0294d7}[data-v-7bb0ba38] .el-collapse-item__content{padding-bottom:0}

View File

@@ -0,0 +1 @@
[data-v-269d3c95] .el-form-item__error{margin-left:120px!important}.must[data-v-269d3c95]{color:red}.span-sty[data-v-269d3c95]{width:130px!important}.addinputInfo[data-v-269d3c95]{margin-left:120px!important}.formaddcopy02 .el-row .el-col[data-v-269d3c95] .el-form-item .addinputw{margin-left:120px!important;width:calc(100% - 115px)}.first_row[data-v-269d3c95]{border-top:1px solid #e0e3eb}.titleOne[data-v-269d3c95]{padding:7px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-radio[data-v-269d3c95] .el-radio__label{font-size:14px!important}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,30 @@
import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/mall/lpksreservoorders/orderList',
method: 'post',
data: params,
})
},
// 获取订单详情
getOrderDetails: function(params) {
return request({
url: '/mall/order/OrderDetailsNew/' + params,
method: 'get'
})
},
// 审核发票
toExamine: function(params) {
return request({
url: '/mall/lpksreservoorders/examineCancelReservation',
method: 'post',
data: params,
})
},
}

View File

@@ -0,0 +1,568 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="取消预约单审核" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }}
</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="预约单编号">
<el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search"
@click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh"
@click="resetQuery">重置</el-button>
</div>
</div>
</div>
<!-- Start 项目列表头部 -->
<div class="listtop">
<div class="tit">预约单列表</div>
</div>
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="">
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%">
<!-- <el-table-column fixed width="50" type="selection" align="center" /> -->
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column label="操作" align="center" width="120">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">审核</el-button>
<!-- <el-button type="primary" size="mini" @click="toRelevancyInfo(scope.row)">删除</el-button> -->
</template>
</el-table-column>
<el-table-column prop="userName" label="提交人" align="center" />
<el-table-column prop="userPhone" label="联系电话" align="center" />
<!-- <el-table-column prop="createTime" label="提交时间" align="center" /> -->
<el-table-column label="预约单据编号" align="center">
<template slot-scope="scope">
<div style="color: #1890FF; text-decoration: underline ;cursor:pointer;"
@click="showOrder(scope.row)">{{ scope.row.reserveCode }}</div>
</template>
</el-table-column>
<el-table-column prop="reason" label="取消原因" align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
</div>
</div>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<!-- <divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> -->
<el-dialog title="审核预约单" :visible.sync="dialogVisible" :before-close="handleClose">
<el-form ref="dataForm1" class="formadd" style="margin-top: -40px;" :model="itemInfo">
<el-row class="first_row">
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">预约单号</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{itemInfo.reserveCode}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">预约日期</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{itemInfo.reserveDate}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">提货地点</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{itemInfo.storeName}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">详细地址</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{itemInfo.address}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">提货人</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{itemInfo.userName}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">联系电话</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{itemInfo.userPhone}}</span>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-form ref="dataForm2" class="formadd" :model="formobj">
<el-row class="first_row">
<el-col :span="8" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">审核结果</span>
</el-form-item>
</el-col>
<el-col :span="16">
<el-form-item class="trightb_item">
<el-radio-group v-model="formobj.state" size="small" @change="changeTheme">
<el-radio :label="'0'">同意</el-radio>
<el-radio :label="'1'">拒绝</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<!-- <el-row>
<el-col :span="8" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">审核意见</span>
</el-form-item>
</el-col>
<el-col :span="16">
<el-form-item class="trightb_item">
<el-input v-model="formobj.remarks" placeholder="请填写审核意见" class="addinputw"
style="width:100%" clearable />
</el-form-item>
</el-col>
</el-row> -->
</el-form>
<div style="display: flex;flex-direction: row;width: 100%;justify-content: center;align-items: center;">
<el-button type="primary" style="margin-top: 20px;" @click="saveExamine"> </el-button>
</div>
</el-dialog>
<el-dialog title="预约订单详情" :visible.sync="dialogVisible2" :before-close="handleClose2">
<el-form ref="dataForm1" class="formadd" style="margin-top: -40px;" :model="orderInfo">
<div class="title" style="display: flex;align-items: center;justify-content: space-between;height:40px">
<div>订单信息</div>
</div>
<el-row class="first_row">
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">预约单号</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.reserveCode}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">预约日期</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.reserveDate}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">提货地点</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.storeName}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">详细地址</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.address}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">提货人</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.userName}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">联系电话</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.userPhone}}</span>
</el-form-item>
</el-col>
</el-row>
<el-collapse v-model="activeNames" style="margin-top: 20px;">
<el-collapse-item name="1" title="商品列表">
<!-- <template slot="title">
商品列表<span class="span" @click.stop="add()">添加</span>
</template> -->
<el-table v-loading="listLoading" :data="orderInfo.goodsVo" border style="width: 100%;"
:row-style="{height: '40px'}">
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column label="商品名称" prop="goodName" align="center" />
<el-table-column label="份数" prop="num" align="center" />
<el-table-column label="单位" prop="unitName" align="center" />
</el-table>
</el-collapse-item>
</el-collapse>
</el-form>
<div style="display: flex;flex-direction: row;width: 100%;justify-content: center;align-items: center;">
<el-button type="primary" style="margin-top: 20px;" @click="handleClose2"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import req from '@/api/cancelReservation/cancelReservation.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
// import divAdd from './appletNoticeAdd.vue'
export default {
name: 'SupplierBankInfoIndex',
components: {
ButtonBar,
Pagination,
pageye,
// divAdd
},
data() {
return {
activeNames: ['1'],
listLoading: false,
formobj: {
code: "",
state: "", //0申请通过 1不通过
},
dialogVisible: false,
dialogVisible2: false,
btndisabled: false,
viewState: 1, // 1、列表 2、添加 3、修改 4、查看
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [
// {
// type: 'primary',
// size: 'small',
// icon: 'plus',
// btnKey: 'toAdd',
// btnLabel: '新增'
// },
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
queryParams: {
current: 1,
size: 10,
total: 0,
params: {
name: '',
state: '5'
}
},
sids: [],
itemInfo: {},
orderInfo: {}
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
// 搜索条件效果
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
switch (btnKey) {
case 'toAdd':
this.toAdd()
break
case 'doClose':
this.doClose()
break
default:
break
}
},
loadList() {
this.tableLoading = true
req.listPage(this.queryParams).then((resp) => {
this.tableLoading = false
if (resp.success) {
const data = resp.data
this.queryParams.total = data.total
this.dataList = data.records
} else {
// 根据resp.code进行异常情况处理
this.dataList = []
this.queryParams.total = 0
}
}).catch(() => {
this.tableLoading = false
})
},
// 序号
indexMethod(index) {
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
var pageindex = index + 1 + pagestart
return pageindex
},
dosearch() {
this.queryParams.current = 1
this.loadList()
},
resetQuery() {
this.queryParams = {
current: 1,
size: 10,
total: 0,
params: {
name: '',
state: '5'
}
}
this.loadList()
},
toAdd() {
this.viewState = 2
this.$refs['divadd'].showAdd()
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
toRelevancy(row) {
this.dialogVisible = true
this.formobj.sid = row.sid
this.formobj.code = row.reserveCode
this.itemInfo = row
},
changeTheme(val) {
},
handleClose() {
this.dialogVisible = false
},
handleClose2() {
this.dialogVisible2 = false
},
saveExamine() {
console.log("saveExamine", this.formobj);
if (this.formobj.state == '') {
this.$message({
type: 'warning',
message: '请选择审核结果',
showClose: true
})
return
}
// if (this.formobj.state == 2 && this.formobj.remarks == '') {
// this.$message({
// type: 'warning',
// message: '请填写审核意见',
// showClose: true
// })
// return
// }
req.toExamine(this.formobj).then((resp) => {
if (resp.success) {
this.$message({
type: 'success',
message: '审核完成',
showClose: true
})
this.loadList()
this.formobj = {
code: "",
state: "",
}
this.dialogVisible = false
}
}).catch(e => {
})
},
toRelevancyInfo(row) {
const tip = '请确认是否删除所选商品?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.deleteGoods(row.sid).then((resp) => {
loading.close()
if (resp.success) {
this.$message({
type: 'success',
message: resp.msg,
showClose: true
})
this.loadList()
} else {
// 根据resp.code进行异常情况处理
}
}).catch(e => {
loading.close()
})
}).catch(() => {})
},
resetState() {
this.viewState = 1
},
showOrder(item) {
console.log("showOrder", item);
// if (item.sid != this.orderInfo.sid) {
// req.getOrderDetails(item.sid).then((resp) => {
// this.orderInfo = resp.data
// this.tableLoading = false
// this.dialogVisible2 = true
// }).catch(() => {
// this.tableLoading = false
// })
// } else {
this.orderInfo = item
this.dialogVisible2 = true
// }
},
}
}
</script>
<style scoped>
.trightb {
display: flex;
align-items: center;
text-align: center;
justify-content: center;
}
.trightb_item {
padding-top: 5px;
}
/deep/.el-form {}
/deep/.el-collapse-item__header {
height: 40px;
padding: 10px;
font-weight: bold;
font-size: 20px;
text-align: left;
color: #ffffff;
background-color: #0294d7;
}
/deep/.el-collapse-item__content {
padding-bottom: 0;
}
</style>