lct
Your Name
2022-07-07 fd285d6245ddd54c2eef8237eb878f573d665f94
src/views/doublePreventSystem/riskLevelManage/safetyRiskAnalyseUnit/index.vue
@@ -2,37 +2,32 @@
    <div class="system-role-container">
        <el-card shadow="hover">
            <div class="system-user-search mb15">
                <div class="basic-search">
                <div class="basic-line">
                    <span>责任部门:</span>
                    <el-cascader
                        @change="achiveUserList"
                        @change="achieveUserList"
                        :options="departmentList"
                        :props="{ emitPath: false, checkStrictly: true, value: 'id', label: 'name' }"
                        placeholder="责任部门"
                        clearable
                        filterable
                        v-model="safetyRiskAnalyseUnitData.params.liableDep"
                        class="unit-input"
                        class="input-box"
                        v-model="safetyRiskAnalyseUnitData.params.liableDepId"
                    >
                    </el-cascader>
                </div>
                <div class="basic-search">
                <div class="basic-line">
                    <span>责任人:</span>
                    <el-select v-model="safetyRiskAnalyseUnitData.params.liablePerson" clearable filterable class="unit-input" placeholder="责任人">
                        <el-option
                        v-for="item in userList"
                        :key="item.uid"
                        :label="item.realName"
                        :value="item.uid"
                        ></el-option>
                    <el-select v-model="safetyRiskAnalyseUnitData.params.liablePersonId" clearable filterable class="input-box" placeholder="责任人">
                        <el-option v-for="item in userList" :key="item.uid" :label="item.realName" :value="item.uid"></el-option>
                    </el-select>
                </div>
                <div class="basic-search">
                <div class="basic-line">
                    <span>单元名称:</span>
                    <el-input v-model="safetyRiskAnalyseUnitData.params.riskUnitName" clearable filterable class="unit-input" placeholder="单元名称">
                    <el-input v-model="safetyRiskAnalyseUnitData.params.riskUnitName" clearable filterable class="input-box" placeholder="单元名称">
                    </el-input>
                </div>
                <el-button size="default" type="primary" class="ml10" @click="handleSearch">
                <el-button size="default" type="primary" class="ml10" v-throttle @click="handleSearch">
                    <el-icon>
                        <ele-Search />
                    </el-icon>
@@ -53,9 +48,9 @@
                <el-table-column prop="liableDep" label="责任部门" show-overflow-tooltip></el-table-column>
                <el-table-column prop="liablePerson" label="责任人" show-overflow-tooltip></el-table-column>
                <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
                <el-table-column prop="gtmCreate" label="创建时间" show-overflow-tooltip></el-table-column>
                <el-table-column prop="lastEditByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
                <el-table-column prop="gtmCreate" label="最后修改时间" show-overflow-tooltip></el-table-column>
                <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip></el-table-column>
                <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
                <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip></el-table-column>
                <el-table-column label="操作" width="150">
                    <template #default="scope">
                        <el-button size="small" text type="primary" @click="onOpenDialogRef('修改',scope.row)">修改</el-button>
@@ -85,7 +80,7 @@
    import { toRefs, reactive, onMounted, ref } from 'vue';
    import { ElMessageBox, ElMessage } from 'element-plus';
    import safetyRiskAnalyseUnitDialog from './components/safetyRiskAnalyseUnitDialog.vue';
    import { safetyRiskAnalyseUnitApi } from "/@/api/doublePreventSystem/safetyRiskAnalyseUnit/index.ts";
import { safetyRiskAnalyseUnitApi } from '/@/api/doublePreventSystem/safetyRiskAnalyseUnit/index.ts';
    import { departmentApi } from '/@/api/department';
    import { userApi } from '/@/api/user';
    import { productionDeviceApi } from '/@/api/doublePreventSystem/productionDevice';
@@ -116,17 +111,11 @@
        departmentList:Array<DepartmentState>;
        allProduceDeviceData:Array<produceDeviceState>;
    }
    interface produceDeviceState {
interface produceDeviceState {}
interface DepartmentState {}
interface UserState {}
    }
    interface DepartmentState {
    }
    interface UserState {
    }
    export default ({
export default {
        name: 'productionDevice',
        components: { safetyRiskAnalyseUnitDialog },
        setup() {
@@ -141,18 +130,18 @@
                        pageSize: 10,
                        riskUnitName: null,
                        liableDepId: null,
                        liablePersonId: null,
                    },
                    liablePersonId: null
                }
                },
                userList: [],
                departmentList: [],
                allProduceDeviceData: [],
            allProduceDeviceData: []
            });
            // 初始化表格数据
            const initSafetyRiskAnalyseUnitData = async () => {
                let res = await safetyRiskAnalyseUnitApi().getSafetyRiskAnalyseUnitList(state.safetyRiskAnalyseUnitData.params)
            let res = await safetyRiskAnalyseUnitApi().getSafetyRiskAnalyseUnitList(state.safetyRiskAnalyseUnitData.params);
                if(res.data.code === '200'){
                    state.safetyRiskAnalyseUnitData.data = res.data.data
                state.safetyRiskAnalyseUnitData.data = res.data.data;
                    state.safetyRiskAnalyseUnitData.total = res.data.count;
                }else{
                    ElMessage({
@@ -162,7 +151,7 @@
                }
            };
            const achiveUserList = () => {
        const achieveUserList = () => {
                state.safetyRiskAnalyseUnitData.params.liablePersonId = null;
                state.userList = [];
                getUserData();
@@ -205,7 +194,7 @@
                        message:res.data.msg
                    });
                }
            }
        };
            // 打开生产装置弹窗
            const onOpenDialogRef = (type: string, value: any) => {
@@ -214,11 +203,12 @@
            
            // 删除角色
            const onDelProductionDevice = (row: any) => {
                ElMessageBox.confirm(`此操作将永久删除角色名称:“${row.riskUnitName}”,是否继续?`, '提示', {
            ElMessageBox.confirm(`此操作将永久删除该条安全风险分析单元:“${row.riskUnitName}”,是否继续?`, '提示', {
                    confirmButtonText: '确认',
                    cancelButtonText: '取消',
                    type: 'warning',
                }).then(async () => {
                type: 'warning'
            })
                .then(async () => {
                    let res = await safetyRiskAnalyseUnitApi().deleteSafetyRiskAnalyseUnit({id:row.id});
               if(res.data.code ==='200'){
                  ElMessage({
@@ -233,12 +223,13 @@
                     message:res.data.msg
                  });
               }
                }).catch(() => {});
                })
                .catch(() => {});
            };
            const handleSearch = () => {
                initSafetyRiskAnalyseUnitData();
            }
        };
            // 分页改变
            const onHandleSizeChange = (val: number) => {
@@ -261,7 +252,7 @@
            return {
                handleSearch,
                achiveUserList,
            achieveUserList,
                onOpenDialogRef,
                onHandleSizeChange,
                onDelProductionDevice,
@@ -269,18 +260,10 @@
                safetyRiskAnalyseUnitDialog,
                safetyRiskAnalyseUnitDialogRef,
                initSafetyRiskAnalyseUnitData,
                ...toRefs(state),
            ...toRefs(state)
            };
        },
    });
    }
};
</script>
<style scoped>
.basic-search{
    display:inline-block;
    padding-left: 10px;
}
.unit-input{
    width:200px
}
</style>
<style scoped></style>