完善机械模块页面
This commit is contained in:
@ -7,9 +7,6 @@
|
||||
<el-form-item label="机械名称" prop="machineryName">
|
||||
<el-input v-model="queryParams.machineryName" placeholder="请输入机械名称" clearable @keyup.enter="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="机械型号" prop="machineryNumber">
|
||||
<el-input v-model="queryParams.machineryNumber" placeholder="请输入机械型号" clearable @keyup.enter="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="负责人" prop="principal">
|
||||
<el-input v-model="queryParams.principal" placeholder="请输入负责人" clearable @keyup.enter="handleQuery" />
|
||||
</el-form-item>
|
||||
@ -29,13 +26,13 @@
|
||||
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['machinery:machinery:add']"> 新增 </el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['machinery:machinery:edit']"
|
||||
>修改
|
||||
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['machinery:machinery:edit']">
|
||||
修改
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['machinery:machinery:remove']"
|
||||
>删除
|
||||
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['machinery:machinery:remove']">
|
||||
删除
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
@ -45,7 +42,19 @@
|
||||
</el-row>
|
||||
</template>
|
||||
|
||||
<el-table v-loading="loading" :data="machineryList" @selection-change="handleSelectionChange">
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="machineryList"
|
||||
@selection-change="handleSelectionChange"
|
||||
:row-key="getRowKey"
|
||||
:expand-row-keys="expandedRowKeys"
|
||||
@expand-change="handleExpandChange"
|
||||
>
|
||||
<el-table-column type="expand">
|
||||
<template #default="">
|
||||
<machinery-detail-table :machinery-id="expandedRowKeys[0]" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="序号" type="index" width="60" align="center" />
|
||||
<el-table-column label="机械名称" align="center" prop="machineryName" />
|
||||
@ -55,12 +64,13 @@
|
||||
<el-table-column label="备注" align="center" prop="remark" />
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template #default="scope">
|
||||
<el-tooltip content="修改" placement="top">
|
||||
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['machinery:machinery:edit']"></el-button>
|
||||
</el-tooltip>
|
||||
<el-tooltip content="删除" placement="top">
|
||||
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['machinery:machinery:remove']"></el-button>
|
||||
</el-tooltip>
|
||||
<el-space wrap>
|
||||
<el-button link type="success" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['machinery:machinery:edit']">修改 </el-button>
|
||||
<el-button link type="danger" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['machinery:machinery:remove']">
|
||||
删除
|
||||
</el-button>
|
||||
<el-button link type="primary" icon="Plus" @click="handleAddMachineryDetail(scope.row)"> 入场</el-button>
|
||||
</el-space>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -93,6 +103,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-dialog>
|
||||
<machinery-detail-add-dialog :machinery-id="currentMachineryId" ref="dialogRef" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -101,6 +112,8 @@ import { addMachinery, delMachinery, getMachinery, listMachinery, updateMachiner
|
||||
import { MachineryForm, MachineryQuery, MachineryVO } from '@/api/machinery/machinery/types';
|
||||
|
||||
import { useUserStoreHook } from '@/store/modules/user';
|
||||
import MachineryDetailTable from '@/views/machinery/component/MachineryDetailTable.vue';
|
||||
import MachineryDetailAddDialog from '@/views/machinery/component/MachineryDetailAddDialog.vue';
|
||||
|
||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||
|
||||
@ -247,6 +260,29 @@ const handleExport = () => {
|
||||
);
|
||||
};
|
||||
|
||||
// 存储当前展开行的 key 数组(只允许一个展开)
|
||||
const expandedRowKeys = ref([]);
|
||||
// row-key 函数:返回每一行的唯一标识
|
||||
const getRowKey = (row: any) => row.id;
|
||||
/** 展开选中数据 */
|
||||
const handleExpandChange = async (selection: MachineryVO, expanded: any) => {
|
||||
if (expanded) {
|
||||
// 展开当前行时,将其他展开行关闭,只保留当前行 id
|
||||
expandedRowKeys.value = [selection.id];
|
||||
} else {
|
||||
// 收起当前行时,从 expandedRowKeys 中移除
|
||||
expandedRowKeys.value = expandedRowKeys.value.filter((key) => key !== selection.id);
|
||||
}
|
||||
};
|
||||
|
||||
const dialogRef = ref();
|
||||
const currentMachineryId = ref<number | string>(0);
|
||||
/** 添加机械出入场详情 */
|
||||
const handleAddMachineryDetail = (row?: MachineryVO) => {
|
||||
currentMachineryId.value = row.id ?? 0;
|
||||
dialogRef.value.openDialog();
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
getList();
|
||||
});
|
||||
|
Reference in New Issue
Block a user