From 624e812b40ac87bf8d7a17b83b4a3bc3bbd901fb Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期四, 03 八月 2023 18:38:58 +0800 Subject: [PATCH] 增加客户服务单(删除工单管理、消费服务单)和客户管理模块详情页 --- src/views/sales/subOrder/index.vue | 108 +++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 74 insertions(+), 34 deletions(-) diff --git a/src/views/sales/subOrder/index.vue b/src/views/sales/subOrder/index.vue index 3d862e9..54c3e39 100644 --- a/src/views/sales/subOrder/index.vue +++ b/src/views/sales/subOrder/index.vue @@ -1,15 +1,26 @@ <template> <div class="sub-order"> - <SearchCommonView ref="searchCommonView" :query-class-options="queryClassOptions" :search-options="searchOptions" /> - <div class="btn-pager"> - <PublicFunctionBtnView :operates-list="operatesList" /> - <PagerView class="page" /> + <div v-if="isDetail" class="detail-top"> + <DetailListCommonBtn :query-class-options="queryClassOptions" /> + <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" /> </div> - <TableCommonView ref="tableListRef" :show-summary="showSummary" :table-list="tableList"> + <div v-else class="top"> + <SearchCommonView + ref="searchCommonView" + :query-class-options="queryClassOptions" + :search-options="searchOptions" + /> + <div class="btn-pager"> + <PublicFunctionBtnView :operates-list="operatesList" /> + <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" /> + </div> + </div> + <TableCommonView ref="tableListRef" :show-summary="showSummary" :table-list="tableList" :select-box="!isDetail"> <template slot="tableButton"> - <el-table-column label="鎿嶄綔" width="60"> + <el-table-column label="鎿嶄綔" width="90"> <template slot-scope="scope"> <el-button @click="handleClick(scope.row)" type="text" size="small">缂栬緫</el-button> + <el-button @click="delClick(scope.row.id)" type="text" size="small">鍒犻櫎</el-button> </template> </el-table-column> </template> @@ -21,11 +32,18 @@ <script> import AddSubOrderDialog from "@/views/sales/subOrder/AddSubOrderDialog" -import { getSubOrderList } from "@/api/sales/subOrder" +import { getSubOrderList, getDelSubOrder } from "@/api/sales/subOrder" +import pageMixin from "@/components/makepager/pager/mixin/pageMixin" export default { name: "SubOrder", - props: {}, + props: { + isDetail: { + type: Boolean, + default: false + } + }, + mixins: [pageMixin], components: { AddSubOrderDialog }, @@ -77,13 +95,13 @@ this.tableList = { tableInfomation: [], tableColumn: [ - { label: "鍗曟嵁缂栧彿", prop: "documentNumber", min: 120 }, // 鍗曟嵁缂栧彿 - { label: "瀹㈡埛鍚嶇О", prop: "customName", min: 120 }, // 瀹㈡埛鍚嶇О - { label: "閿�鍞�诲崟", prop: "masterOrder", min: 90 }, // 閿�鍞�诲崟 - { label: "璐熻矗浜�", prop: "owner" }, // 璐熻矗浜� + { label: "鍗曟嵁缂栧彿", prop: "number", min: 120 }, // 鍗曟嵁缂栧彿 + { label: "瀹㈡埛鍚嶇О", prop: "client_name", min: 120 }, // 瀹㈡埛鍚嶇О + { label: "閿�鍞�诲崟", prop: "masterOrderId", min: 90 }, // 閿�鍞�诲崟 + { label: "璐熻矗浜�", prop: "memberId" }, // 璐熻矗浜� { label: "瀹℃壒鐘舵��", prop: "approvalStatus" }, // 瀹℃壒鐘舵�� { label: "浜у搧鍚嶇О", prop: "productName" }, // 浜у搧鍚嶇О - { label: "鏁伴噺", prop: "number", min: 100 } // 鏁伴噺 + { label: "鏁伴噺", prop: "number1", min: 100 } // 鏁伴噺 ] } this.searchOptions = [] @@ -95,17 +113,23 @@ // 璇锋眰鏁版嵁 async getData() { this.loading = true - await getSubOrderList() + await getSubOrderList({ + keyword: "", + page: this.pagerOptions.currPage, + pageSize: this.pagerOptions.pageSize + }) .then((res) => { console.log(res) if (res.code === 200) { if (res.data.list && res.data.list.length > 0) { const list = res.data.list.map((item) => { return { - ...item + ...item, + client_name: item.client.name } }) this.tableList.tableInfomation = list || [] + this.pagerOptions.totalCount = res.data.count } else { this.tableList.tableInfomation = [] } @@ -124,30 +148,37 @@ addBtnClick() { this.editConfig.visible = true this.editConfig.title = "鏂板缓" - this.editConfig.infomation = { - customName: "", - documentNumber: "AC6521", - masterOrder: "", - owner: "", - currency: "", - discount: "", - total: "" - } + this.editConfig.infomation = {} }, // 缂栬緫 handleClick(row) { console.log(row) this.editConfig.visible = true this.editConfig.title = "缂栬緫" - this.editConfig.infomation = { - customName: "", - documentNumber: "AC6521", - masterOrder: "", - owner: "", - currency: "", - discount: "", - total: "14.00" - } + this.editConfig.infomation = { ...row, masterOrderNumber: "" } + }, + // 鍒犻櫎 + delClick(id) { + this.$confirm("鏄惁纭鍒犻櫎?", "璀﹀憡", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning" + }) + .then(function () { + return getDelSubOrder({ id: id }) + }) + .then((response) => { + if (response.code === 200) { + this.$message.success("鍒犻櫎鎴愬姛") + this.getData() + } else { + this.$message.warning("鍒犻櫎澶辫触") + } + }) + .catch(function () {}) + }, + getSelectArray(val) { + console.log(val) } } } @@ -156,7 +187,16 @@ <!-- Add "scoped" attribute to limit CSS to this component only --> <style lang="scss" scoped> .sub-order { - .btn-pager { + .top { + margin-bottom: 20px; + .btn-pager { + display: flex; + .page { + margin-left: auto; + } + } + } + .detail-top { display: flex; .page { margin-left: auto; -- Gitblit v1.8.0