Admin
2022-07-04 364ad41d844696b80b1de0a33d8c2d1e8c101031
添加修改页面
已修改8个文件
541 ■■■■■ 文件已修改
src/views/homeMenu/homeMenu.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/approvalProcess/addApproveProcess/index.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/approvalProcess/approveProcessManagement/index.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/approvalProcess/approveProcessSetting/index.vue 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/approvalProcess/reportTypeSetting/index.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/workApplyManagement/workApply/index.vue 496 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/specialWorkSystem/workPlan/workReservation/index.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/homeMenu/homeMenu.vue
@@ -94,11 +94,7 @@
            Session.set('projectId',value)
            userInfos.value.projectId = value
            await initBackEndControlRoutes();
            router.push('/layoutPage')
        };
        //点击进入特殊作业
        const toSpecialWorkSys = () => {
            router.push('/layoutPage');
            router.push('/home')
        };
        // 页面加载时
        onMounted(() => {
@@ -111,7 +107,6 @@
            loginIconTwo,
            getThemeConfig,
            renderMenu,
            toSpecialWorkSys,
            ...toRefs(state),
        };
    },
src/views/specialWorkSystem/approvalProcess/addApproveProcess/index.vue
@@ -1,5 +1,6 @@
<template>
    <div class="home-container">
        <el-scrollbar height="100%">
        <el-row>
            <el-button type="primary" size="large" @click="addApprove">新建审批环节</el-button>
        </el-row>
@@ -44,6 +45,7 @@
                </el-form-item>
            </el-form>
        </el-dialog>
        </el-scrollbar>
    </div>
</template>
@@ -137,7 +139,8 @@
    $homeNavLengh: 8;
    .home-container {
        overflow: hidden;
        padding: 80px;
        padding: 40px;
        height: 100%;
        .el-row{
            margin-bottom: 20px;
        }
src/views/specialWorkSystem/approvalProcess/approveProcessManagement/index.vue
@@ -1,5 +1,6 @@
<template>
    <div class="home-container">
        <el-scrollbar height="100%">
        <el-row>
            <el-col :span="12">
                <div class="grid-content topInfo">
@@ -65,6 +66,7 @@
                />
            </div>
        </div>
        </el-scrollbar>
    </div>
</template>
@@ -222,8 +224,9 @@
<style scoped lang="scss">
    $homeNavLengh: 8;
    .home-container {
        height: 100%;
        overflow: hidden;
        padding: 20px 40px;
        padding: 40px;
        .el-row{
            display: flex;
            align-items: center;
src/views/specialWorkSystem/approvalProcess/approveProcessSetting/index.vue
@@ -1,5 +1,7 @@
<template>
    <div class="home-container">
        <el-scrollbar height="100%">
        <div>
        <div v-for="(item,index) in approveSteps" class="stepItem">
            <div class="stepNum">{{index+1}}</div>
            <div class="stepCard">
@@ -19,9 +21,10 @@
                </el-card>
            </div>
        </div>
        </div>
        <el-row>
            <el-button type="primary" @click="confirmEdit" size="default">确认</el-button>
            <el-button @click="cancelEdit" size="default">取消</el-button>
            <el-button type="primary" @click="confirmEdit" size="large">确认</el-button>
            <el-button @click="cancelEdit" size="large">取消</el-button>
        </el-row>
        <el-drawer v-model="showAdd" direction="rtl">
            <template #title>
@@ -62,6 +65,7 @@
              </span>
            </template>
        </el-dialog>
    </el-scrollbar>
    </div>
</template>
@@ -179,14 +183,19 @@
<style scoped lang="scss">
    $homeNavLengh: 8;
    .home-container {
        height: 100%;
        overflow: hidden;
        padding: 80px;
        padding: 40px;
        .stepItem{
            display: flex;
            align-items: flex-start;
            margin-bottom: 30px;
            margin-left: 30px;
            padding-bottom: 30px;
            border-left: 2px solid #ccc;
            &:first-of-type{
                margin-top: 30px;
            }
            &:last-of-type{
                margin-bottom: 0;
                border-left: none;
src/views/specialWorkSystem/approvalProcess/reportTypeSetting/index.vue
@@ -1,5 +1,6 @@
<template>
    <div class="home-container">
        <el-scrollbar height="100%">
        <el-row>
            <el-button type="primary" size="large" @click="addReport">新建上报类型</el-button>
        </el-row>
@@ -43,6 +44,7 @@
                </el-form-item>
            </el-form>
        </el-dialog>
        </el-scrollbar>
    </div>
</template>
@@ -135,6 +137,7 @@
<style scoped lang="scss">
    $homeNavLengh: 8;
    .home-container {
        height: 100%;
        overflow: hidden;
        padding: 80px;
        .el-row{
src/views/specialWorkSystem/workApplyManagement/workApply/index.vue
@@ -1,6 +1,7 @@
<template>
    <div class="home-container">
        <el-form :model="form" label-width="120px">
        <el-scrollbar height="100%">
        <el-form :model="form" label-width="150px">
            <el-row>
                <el-col :span="8">
                    <el-form-item label="申请部门">
@@ -12,10 +13,15 @@
                </el-col>
                <el-col :span="8">
                    <el-form-item label="申请人">
                        <el-select v-model="form.applyName" placeholder="请选择">
                            <el-option label="胡海涛" value="胡海涛" />
                            <el-option label="其他人" value="其他人" />
                        </el-select>
                        <el-input
                            v-model="form.applyName"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
            </el-row>
@@ -48,11 +54,326 @@
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="8">
                    <el-button type="primary" size="default">添加作业人</el-button>
                <el-col :span="3"><el-button type="primary" size="default" @click="dialogAddWorker = true">添加作业人</el-button></el-col>
                <el-col :span="21">
                    <el-table :data="form.workerList" style="width: 100%">
                        <el-table-column type="index" label="序号" width="100"/>
                        <el-table-column prop="worker" label="作业人"/>
                        <el-table-column prop="role" label="作业人角色" width="180" />
                        <el-table-column prop="unit" label="所属单位" width="180" />
                        <el-table-column prop="certificate" label="证书名称" width="180" />
                        <el-table-column prop="certificateId" label="证书号" />
                        <el-table-column fixed="right" label="操作">
                            <template #default="scope">
                                <el-button link type="danger" size="small" @click="deleteRow(scope.$index)">删除</el-button>
                            </template>
                        </el-table-column>
                    </el-table>
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="12">
                    <el-form-item label="作业地点">
                        <el-input
                            v-model="form.workLocation"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="作业期限">
                        <el-date-picker
                            v-model="form.workTimeLine"
                            type="daterange"
                            unlink-panels
                            range-separator="至"
                            start-placeholder="开始日期"
                            end-placeholder="结束日期"
                            :shortcuts="shortcuts"
                        />
                    </el-form-item>
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="12">
                    <el-form-item label="作业内容">
                        <el-input
                            v-model="form.workContent"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="作业单位">
                        <el-input
                            v-model="form.workUnit"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>选择作业单位</template>
                        </el-input>
                    </el-form-item>
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="6">
                    <el-form-item label="作业负责人">
                        <el-input
                            v-model="form.responser"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="6">
                    <el-form-item label="监护人">
                        <el-input
                            v-model="form.monitor"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="6">
                    <el-form-item label="监护人岗位">
                        <el-input
                            v-model="form.monitorStation"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="12">
                    <el-form-item label="生产车间负责人">
                        <el-input
                            v-model="form.workhouseLeader"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="申请日期">
                        <el-date-picker
                            size="large"
                            v-model="form.applyDate"
                            type="date"
                            placeholder="请选择"
                            style="width: 100%"
                        ></el-date-picker>
                    </el-form-item>
                </el-col>
            </el-row>
            <el-divider />
            <el-row>
                <el-col :span="24">
                    <el-form-item label="涉及的其他特殊作业">
                        <el-checkbox-group v-model="form.otherSpecialWorks">
                            <el-checkbox label="动火作业" />
                            <el-checkbox label="受限空间" />
                            <el-checkbox label="高处作业" />
                            <el-checkbox label="吊装作业" />
                            <el-checkbox label="临时用电" />
                            <el-checkbox label="设备检修" />
                            <el-checkbox label="盲板抽堵" />
                            <el-checkbox label="断路作业" />
                            <el-checkbox label="动土作业" />
                        </el-checkbox-group>
                    </el-form-item>
                </el-col>
            </el-row>
            <el-row>
                <el-col>
                    <el-form-item label="防护用品">
                        <el-cascader
                            v-model="form.protections"
                            :options="protectOption"
                            :props="{expandTrigger: 'hover'}"
                            @change="protectionsChange"
                            placeholder="请选择"
                            style="width: 100%"
                        />
                    </el-form-item>
                </el-col>
            </el-row>
            <el-row>
                <el-col :span="6"><el-button type="primary" size="default" @click="dialogAddFile = true">点击添加安全交底和风险告知书</el-button></el-col>
            </el-row>
            <el-row>
                <el-col :span="12">
                    <el-form-item label="实施安全教育人">
                        <el-input
                            v-model="form.safetyMan"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="被教育人">
                        <el-input
                            v-model="form.educated"
                            placeholder="请输入"
                            class="input-with-select"
                        >
                            <template #append>
                                <el-button :icon="Search" />
                            </template>
                        </el-input>
                    </el-form-item>
                </el-col>
            </el-row>
            <el-divider />
            <el-row>
                <el-col :span="24" class="submitBtn">
                    <el-button type="primary" size="large" plain>发起申请</el-button>
                </el-col>
            </el-row>
        </el-form>
        <el-dialog v-model="dialogAddWorker" title="添加作业人">
            <el-form :model="addWorkerForm" label-width="120px">
                <el-form-item label="作业人">
                    <el-input
                            v-model="addWorkerForm.worker"
                            placeholder="请输入"
                            class="input-with-select"
                    >
                        <template #append>
                            <el-button :icon="Search" />
                        </template>
                    </el-input>
                </el-form-item>
                <el-form-item label="作业人角色">
                    <el-input
                            v-model="addWorkerForm.role"
                            placeholder="请输入"
                            class="input-with-select"
                    >
                        <template #append>
                            <el-button :icon="Search" />
                        </template>
                    </el-input>
                </el-form-item>
                <el-form-item label="作业人角色">
                    <el-input
                            v-model="addWorkerForm.unit"
                            placeholder="请输入"
                            class="input-with-select"
                    >
                        <template #append>
                            <el-button :icon="Search" />
                        </template>
                    </el-input>
                </el-form-item>
                <el-form-item label="证书名称">
                    <el-input
                            v-model="addWorkerForm.certificate"
                            placeholder="请输入"
                            class="input-with-select"
                    >
                        <template #append>
                            <el-button :icon="Search" />
                        </template>
                    </el-input>
                </el-form-item>
                <el-form-item label="证书号">
                    <el-input
                            v-model="addWorkerForm.certificateId"
                            placeholder="请输入"
                            class="input-with-select"
                    >
                        <template #append>
                            <el-button :icon="Search" />
                        </template>
                    </el-input>
                </el-form-item>
                <el-form-item>
                    <el-button type="primary" @click="onSubmitAddForm" size="default">确认</el-button>
                    <el-button size="default" @click="cancleAdd">取消</el-button>
                </el-form-item>
            </el-form>
        </el-dialog>
        <el-dialog v-model="dialogAddFile" title="安全交底和风险告知">
            <el-form :model="form.saftyFile" label-width="120px">
                <el-form-item label="作业许可范围及作业环境:">
                    <el-input
                            v-model="form.saftyFile.surrounding"
                            :rows="2"
                            type="textarea"
                            placeholder="请输入"
                    />
                </el-form-item>
                <el-form-item label="作业风险:">
                    <el-input
                            v-model="form.saftyFile.risk"
                            :rows="2"
                            type="textarea"
                            placeholder="请输入"
                    />
                </el-form-item>
                <el-form-item label="防范措施(工艺、设备、个体防护等)">
                    <el-input
                            v-model="form.saftyFile.protection"
                            :rows="2"
                            type="textarea"
                            placeholder="请输入"
                    />
                </el-form-item>
                <el-form-item label="应急措施">
                    <el-input
                            v-model="form.saftyFile.emergency"
                            :rows="2"
                            type="textarea"
                            placeholder="请输入"
                    />
                </el-form-item>
                <el-form-item label="其他注意事项">
                    <el-input
                            v-model="form.saftyFile.otherStuff"
                            :rows="2"
                            type="textarea"
                            placeholder="请输入"
                    />
                </el-form-item>
                <el-form-item>
                    <el-button type="primary" @click="onSubmitAddFile" size="default">确认</el-button>
                    <el-button size="default" @click="cancleAddFile">取消</el-button>
                </el-form-item>
            </el-form>
        </el-dialog>
    </el-scrollbar>
    </div>
</template>
@@ -62,6 +383,7 @@
    import { initBackEndControlRoutes } from '/@/router/backEnd';
    import {useUserInfo} from "/@/stores/userInfo";
    import { Session } from '/@/utils/storage';
    import { Search } from '@element-plus/icons-vue'
    let global: any = {
        homeChartOne: null,
        homeChartTwo: null,
@@ -88,11 +410,132 @@
                applyName: '',
                level: '',
                riskIdentify: '',
                workWay: ''
                workWay: '',
                workerList: [],
                workLocation: '',
                workTimeLine: '',
                workContent: '',
                workUnit: '',
                responser: '',
                monitor: '',
                workMonitor: '',
                monitorStation: '',
                workhouseLeader: '',
                applyDate: '',
                otherSpecialWorks: [],
                protections: '',
                saftyFile: {},
                safetyMan: '',
                educated: ''
            })
            const dialogAddWorker = ref(false)
            const dialogAddFile = ref(false)
            const addWorkerForm = ref({
                worker: '',
                role: '',
                unit: '',
                certificate: '',
                certificateId: ''
            })
            const shortcuts = [
                {
                    text: 'Last week',
                    value: () => {
                        const end = new Date()
                        const start = new Date()
                        start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
                        return [start, end]
                    },
                },
                {
                    text: 'Last month',
                    value: () => {
                        const end = new Date()
                        const start = new Date()
                        start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
                        return [start, end]
                    },
                },
                {
                    text: 'Last 3 months',
                    value: () => {
                        const end = new Date()
                        const start = new Date()
                        start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
                        return [start, end]
                    },
                },
            ]
            const protectOption = [
                {
                    value: 'guide',
                    label: 'Guide',
                    children: [
                        {
                            value: 'disciplines',
                            label: 'Disciplines',
                            children: [
                                {
                                    value: 'consistency',
                                    label: 'Consistency',
                                },
                                {
                                    value: 'feedback',
                                    label: 'Feedback',
                                }
                            ],
                        },
                        {
                            value: 'navigation',
                            label: 'Navigation',
                            children: [
                                {
                                    value: 'side nav',
                                    label: 'Side Navigation',
                                }
                            ],
                        },
                    ],
                }
            ]
            const protectionsChange = (value) => {
                console.log(value)
            }
            const onSubmit = () => {
                console.log('submit!')
            const onSubmitAddForm = () => {
                form.workerList.push(addWorkerForm.value)
                addWorkerForm.value = {
                    worker: '',
                    role: '',
                    unit: '',
                    certificate: '',
                    certificateId: ''
                }
                dialogAddWorker.value = false
            }
            const onSubmitAddFile = () =>{
            }
            const cancleAdd = ()=> {
                addWorkerForm.value = {
                    worker: '',
                    role: '',
                    unit: '',
                    certificate: '',
                    certificateId: ''
                }
                dialogAddWorker.value = false
            }
            const cancleAddFile = ()=>{
            }
            const deleteRow = (index) =>{
                console.log(index)
                form.workerList.splice( index,1)
                dialogAddWorker.value = false
            }
            const addSaftyFile = () =>{
            }
            // 折线图
            const renderMenu = async (value: string) => {
@@ -103,7 +546,19 @@
            return {
                renderMenu,
                form,
                onSubmit,
                Search,
                shortcuts,
                protectOption,
                dialogAddWorker,
                dialogAddFile,
                addWorkerForm,
                cancleAddFile,
                deleteRow,
                cancleAdd,
                addSaftyFile,
                onSubmitAddForm,
                onSubmitAddFile,
                protectionsChange,
                ...toRefs(state),
            };
        },
@@ -111,8 +566,8 @@
</script>
<style scoped lang="scss">
    $homeNavLengh: 8;
    .home-container {
        height: 100%;
        overflow: hidden;
        padding: 40px;
        .el-row{
@@ -122,9 +577,24 @@
            margin-bottom: 0;
        }
        .el-col{
            display: flex;
            align-items: center;
            margin-bottom: 10px;
        }
        .el-input{
            width: 100% !important;
        }
        .el-date-editor::v-deep{
            width: 100%;
        }
        .el-select{
            width: 100%;
        }
        .el-cascader{
            width: 100% !important;
        }
        .submitBtn{
            display: flex;
            justify-content: center;
        }
    }
</style>
src/views/specialWorkSystem/workPlan/workAppointSummary/index.vue
@@ -1,5 +1,6 @@
<template>
    <div class="home-container">
        <el-scrollbar height="100%">
        <el-row>
            <el-col :span="6">
                <div class="grid-content topInfo">
@@ -89,6 +90,7 @@
            </el-row>
            <div ref="myChart" style="width: 100%;height:400px;"></div>
        </el-dialog>
        </el-scrollbar>
    </div>
</template>
@@ -427,8 +429,9 @@
<style scoped lang="scss">
    $homeNavLengh: 8;
    .home-container {
        height: 100%;
        overflow: hidden;
        padding: 20px 40px;
        padding: 40px;
        .el-row{
            margin-bottom: 20px;
        }
src/views/specialWorkSystem/workPlan/workReservation/index.vue
@@ -1,5 +1,6 @@
<template>
    <div class="home-container">
        <el-scrollbar height="100%">
        <el-row>
            <el-col :span="6">
                <div class="grid-content topInfo">
@@ -92,6 +93,7 @@
              </span>
            </template>
        </el-dialog>
        </el-scrollbar>
    </div>
</template>
@@ -219,8 +221,9 @@
<style scoped lang="scss">
    $homeNavLengh: 8;
    .home-container {
        height: 100%;
        overflow: hidden;
        padding: 20px 40px;
        padding: 40px;
        .el-row{
            margin-bottom: 20px;
        }