|
@@ -31,17 +31,7 @@
|
|
|
>
|
|
|
新增订单
|
|
|
</el-button>
|
|
|
- <el-button
|
|
|
- type="danger"
|
|
|
- size="small"
|
|
|
- plain
|
|
|
- icon="el-icon-delete"
|
|
|
- v-if="permission.order_order_delete"
|
|
|
- @click="handleBatchDelete"
|
|
|
- :disabled="selectionList.length === 0"
|
|
|
- >
|
|
|
- 批量删除
|
|
|
- </el-button>
|
|
|
+
|
|
|
</template>
|
|
|
|
|
|
<!-- 订单类型显示 -->
|
|
@@ -73,29 +63,11 @@
|
|
|
<el-button
|
|
|
type="text"
|
|
|
size="small"
|
|
|
- icon="el-icon-view"
|
|
|
- @click="handleView(row)"
|
|
|
- >
|
|
|
- 查看
|
|
|
- </el-button>
|
|
|
- <el-button
|
|
|
- type="text"
|
|
|
- size="small"
|
|
|
icon="el-icon-document"
|
|
|
@click="handleItemManagement(row)"
|
|
|
>
|
|
|
明细管理
|
|
|
</el-button>
|
|
|
- <el-button
|
|
|
- type="text"
|
|
|
- size="small"
|
|
|
- icon="el-icon-delete"
|
|
|
- @click="handleDelete(row)"
|
|
|
- v-if="permission.order_order_delete"
|
|
|
- style="color: #f56c6c"
|
|
|
- >
|
|
|
- 删除
|
|
|
- </el-button>
|
|
|
</template>
|
|
|
|
|
|
<!-- 行展开插槽 - 显示订单明细 -->
|
|
@@ -136,7 +108,7 @@
|
|
|
|
|
|
<script>
|
|
|
import { option } from './option'
|
|
|
-import { getList, add, update, remove, getDetail } from '@/api/order/order'
|
|
|
+import { getList, add, update, getDetail } from '@/api/order/order'
|
|
|
import {
|
|
|
ORDER_TYPES,
|
|
|
ORDER_STATUS,
|
|
@@ -185,6 +157,14 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
// Avue.js 事件处理
|
|
|
+ /**
|
|
|
+ * 加载表格数据
|
|
|
+ * @param {Object} page - 分页信息
|
|
|
+ * @param {number} page.currentPage - 当前页码
|
|
|
+ * @param {number} page.pageSize - 每页大小
|
|
|
+ * @param {Object} params - 查询参数
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
onLoad(page, params = {}) {
|
|
|
this.loading = true
|
|
|
getList(page.currentPage, page.pageSize, params).then(res => {
|
|
@@ -197,31 +177,66 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 搜索条件变化回调
|
|
|
+ * @param {Object} params - 搜索参数
|
|
|
+ * @param {Function} done - 完成回调
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
searchChange(params, done) {
|
|
|
this.onLoad(this.page, params)
|
|
|
done()
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 重置搜索条件回调
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
searchReset() {
|
|
|
this.onLoad(this.page)
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 表格选择变化回调
|
|
|
+ * @param {Array} list - 选中的行数据列表
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
selectionChange(list) {
|
|
|
this.selectionList = list
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 当前页码变化回调
|
|
|
+ * @param {number} currentPage - 当前页码
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
currentChange(currentPage) {
|
|
|
this.page.currentPage = currentPage
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 每页大小变化回调
|
|
|
+ * @param {number} pageSize - 每页大小
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
sizeChange(pageSize) {
|
|
|
this.page.pageSize = pageSize
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 刷新表格回调
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
refreshChange() {
|
|
|
this.onLoad(this.page)
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 表单打开前回调
|
|
|
+ * @param {Function} done - 完成回调
|
|
|
+ * @param {string} type - 操作类型 ('add'|'edit'|'view')
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
beforeOpen(done, type) {
|
|
|
if (type === 'add') {
|
|
|
this.form = {
|
|
@@ -232,6 +247,13 @@ export default {
|
|
|
done()
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 保存新增订单
|
|
|
+ * @param {Object} row - 订单数据
|
|
|
+ * @param {Function} done - 完成回调
|
|
|
+ * @param {Function} loading - 加载状态回调
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
rowSave(row, done, loading) {
|
|
|
add(row).then(() => {
|
|
|
this.$message.success('新增成功')
|
|
@@ -242,6 +264,14 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 更新订单数据
|
|
|
+ * @param {Object} row - 订单数据
|
|
|
+ * @param {number} index - 行索引
|
|
|
+ * @param {Function} done - 完成回调
|
|
|
+ * @param {Function} loading - 加载状态回调
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
rowUpdate(row, index, done, loading) {
|
|
|
update(row).then(() => {
|
|
|
this.$message.success('修改成功')
|
|
@@ -252,59 +282,21 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
|
|
|
- rowDel(row) {
|
|
|
- this.$confirm('确定将选择数据删除?', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning'
|
|
|
- }).then(() => {
|
|
|
- return remove(row.id)
|
|
|
- }).then(() => {
|
|
|
- this.$message.success('删除成功')
|
|
|
- this.onLoad(this.page)
|
|
|
- })
|
|
|
- },
|
|
|
|
|
|
- // 自定义操作方法
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 处理新增订单
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
handleAdd() {
|
|
|
this.$refs.crud.rowAdd()
|
|
|
},
|
|
|
|
|
|
- handleView(row) {
|
|
|
- this.$refs.crud.rowView(row)
|
|
|
- },
|
|
|
-
|
|
|
- handleDelete(row) {
|
|
|
- this.$confirm('确定删除该订单吗?', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning'
|
|
|
- }).then(() => {
|
|
|
- return remove(row.id)
|
|
|
- }).then(() => {
|
|
|
- this.$message.success('删除成功')
|
|
|
- this.onLoad(this.page)
|
|
|
- })
|
|
|
- },
|
|
|
-
|
|
|
- handleBatchDelete() {
|
|
|
- if (this.selectionList.length === 0) {
|
|
|
- this.$message.warning('请选择要删除的数据')
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- this.$confirm('确定删除选中的订单吗?', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning'
|
|
|
- }).then(() => {
|
|
|
- const ids = this.selectionList.map(item => item.id).join(',')
|
|
|
- return remove(ids)
|
|
|
- }).then(() => {
|
|
|
- this.$message.success('删除成功')
|
|
|
- this.onLoad(this.page)
|
|
|
- })
|
|
|
- },
|
|
|
+ /**
|
|
|
+ * 处理订单明细管理
|
|
|
+ * @param {OrderRecord} row - 订单行数据
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
|
|
|
handleItemManagement(row) {
|
|
|
this.currentOrderId = row.id
|
|
@@ -317,6 +309,10 @@ export default {
|
|
|
this.itemDialogVisible = true
|
|
|
},
|
|
|
|
|
|
+ /**
|
|
|
+ * 处理订单明细弹窗关闭
|
|
|
+ * @returns {void}
|
|
|
+ */
|
|
|
handleItemDialogClose() {
|
|
|
this.itemDialogVisible = false
|
|
|
this.currentOrderId = null
|