From b80d156b719cef2b9e4fce7e5ada5325681585a9 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期四, 14 七月 2022 11:15:57 +0800
Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/gtqtOut
---
src/components/DailogSearch/DailogSearch.vue | 112 +
src/views/goalManagement/safetyAssessment/index.vue | 2
src/views/facilityManagement/deviceType/index.vue | 96 ++
src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue | 128 ++
src/views/goalManagement/performanceAppraisal/index.vue | 303 ++++++
src/components/updata/updata.vue | 0
src/views/goalManagement/processForms/processForms.vue | 2
src/views/goalManagement/targetEscalation/index.vue | 2
src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue | 112 ++
src/views/goalManagement/Goalsummary/index.vue | 2
src/views/goalManagement/Incentivestandard/component/DailogAdd.vue | 84 +
src/views/goalManagement/Incentivestandard/index.vue | 211 ++++
src/views/facilityManagement/InstrumentationInformation/index.vue | 281 +++++
src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue | 129 ++
src/views/facilityManagement/deviceType/component/Dailog.vue | 64 +
src/views/goalManagement/targetImprovements/index.vue | 7
src/views/goalManagement/targetSettings/index.vue | 6
src/views/goalManagement/TargetBook/component/DailogSearch.vue | 126 ++
src/views/goalManagement/TargetBook/index.vue | 209 ++++
src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue | 127 ++
src/views/goalManagement/IncentiveRecording/index.vue | 208 ++++
src/views/goalManagement/targetDecompositionYear/index.vue | 2
src/views/goalManagement/TargetBook/component/DailogAdd.vue | 142 +++
src/views/goalManagement/performanceAppraisal/component/DailogKh.vue | 167 +++
src/views/goalManagement/performanceAppraisal/component/DailogAq.vue | 240 +++++
src/views/goalManagement/targetDecompositionMonth/index.vue | 2
26 files changed, 2,705 insertions(+), 59 deletions(-)
diff --git a/src/components/DailogSearch/DailogSearch.vue b/src/components/DailogSearch/DailogSearch.vue
index 9d297c8..0a0b644 100644
--- a/src/components/DailogSearch/DailogSearch.vue
+++ b/src/components/DailogSearch/DailogSearch.vue
@@ -2,52 +2,67 @@
<el-dialog v-model="dialogVisible" title="选择安全目标指标" width="50%" draggable>
<el-row>
<el-col :span="17">
- <el-form ref="ruleFormRef" :model="ruleForm" status-icon>
- <el-row>
- <el-col :span="6">
- <el-form-item>
- <el-input v-model="ruleForm.pass" placeholder="安全目标指标" />
- </el-form-item>
- </el-col>
- <el-col :span="6" :offset="1">
- <el-form-item>
- <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
- </el-form-item>
- </el-col>
- <el-col :span="6" :offset="1">
- <el-form-item>
- <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
- <el-button @click="resetForm(ruleFormRef)">重置</el-button>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- <el-button size="default" :icon="Delete">清除选择</el-button>
- <el-table :data="tableData" style="width: 100%;margin-top:20px">
- <el-table-column align="center" prop="date" label="安全目标指标" width="180" />
- <el-table-column align="center" prop="name" label="目标指标编号" width="180" />
- <el-table-column align="center" prop="address" label="年度" />
- <el-table-column align="center" prop="address" label="指标值" />
- </el-table>
- <el-pagination
- style="padding:20px 0;border-bottom:1px solid #dedede"
- v-model:currentPage="currentPage4"
- v-model:page-size="pageSize4"
- :page-sizes="[100, 200, 300, 400]"
- :small="small"
- :disabled="disabled"
- :background="background"
- layout="total, sizes, prev, pager, next, jumper"
- :total="400"
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- />
- </el-col>
- <el-col :span="7">
- <el-tag v-for="tag in dynamicTags" :key="tag" class="mx-1" style="margin:5px" closable :disable-transitions="false" @close="handleClose(tag)">
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item>
+ <el-input v-model="ruleForm.pass" placeholder="安全目标指标" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6" :offset="1">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6" :offset="1">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-button size="default" :icon="Delete">清除选择</el-button>
+ <el-table :data="tableData" style="width: 100%; margin-top: 20px">
+ <el-table-column align="center">
+ <template #default="scope">
+ <el-radio-group v-model="radio1" @change="radio">
+ <el-radio :label="scope.row.date" size="large">{{null}}</el-radio>
+ </el-radio-group>
+ </template>
+ </el-table-column>
+ <el-table-column align="center" prop="date" label="安全目标指标" width="180" />
+ <el-table-column align="center" prop="name" label="目标指标编号" width="180" />
+ <el-table-column align="center" prop="address" label="年度" />
+ <el-table-column align="center" prop="address" label="指标值" />
+ </el-table>
+ <el-pagination
+ style="padding: 20px 0; border-bottom: 1px solid #dedede"
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ <el-col :span="7">
+ <el-tag
+ v-for="tag in dynamicTags"
+ :key="tag"
+ class="mx-1"
+ style="margin: 5px"
+ closable
+ :disable-transitions="false"
+ @close="handleClose(tag)"
+ >
{{ tag }}
</el-tag>
- </el-col>
+ </el-col>
</el-row>
<template #footer>
<span class="dialog-footer">
@@ -102,10 +117,15 @@
console.log(`current page: ${val}`);
};
// 右方点击添加后显示标签
- const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3']);
+ const dynamicTags = ref(['2016-05-03']);
const handleClose = (tag: string) => {
dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
+ radio1.value=""
};
+ const radio1=ref('2016-05-03')
+ const radio=(event:any)=>{
+ dynamicTags.value[0]=event
+ }
return {
dialogVisible,
openDailog,
@@ -116,6 +136,8 @@
handleCurrentChange,
dynamicTags,
handleClose,
+ radio1,
+ radio,
Delete,
};
},
diff --git a/src/views/goalManagement/targetSettings/component/updata.vue b/src/components/updata/updata.vue
similarity index 100%
rename from src/views/goalManagement/targetSettings/component/updata.vue
rename to src/components/updata/updata.vue
diff --git a/src/views/facilityManagement/InstrumentationInformation/index.vue b/src/views/facilityManagement/InstrumentationInformation/index.vue
new file mode 100644
index 0000000..9d9702b
--- /dev/null
+++ b/src/views/facilityManagement/InstrumentationInformation/index.vue
@@ -0,0 +1,281 @@
+<template>
+ <div>
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
+ <el-row>
+ <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.pass" placeholder="装置设施名称" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-row>
+ <el-col :span="4">
+ <div class="tree">
+ <el-input v-model="filterText" style="height: 30px" placeholder="Filter keyword" />
+ <el-tree ref="treeRef" class="filter-tree" :data="data" :props="defaultProps" default-expand-all :filter-node-method="filterNode" />
+ </div>
+ </el-col>
+ <el-col :span="20">
+ <div class="btns">
+ <div>
+ <el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+ <el-button type="warning" plain :icon="EditPen">修改</el-button>
+ <el-button type="danger" :icon="Delete" plain>删除</el-button>
+ </div>
+ <div>
+ <el-button :icon="Upload"></el-button>
+ <el-button :icon="Download"></el-button>
+ <el-button :icon="Refresh"></el-button>
+ </div>
+ </div>
+ <div style="padding-left: 10px">
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column type="selection" align="center" width="55" />
+ <el-table-column type="expand">
+ <template #default>
+ <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick" style="margin: 0 5%">
+ <el-tab-pane label="设备保养" name="first">
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column property="name" align="center" label="保养情况" sortable />
+ <el-table-column property="name" align="center" label="保养负责人" sortable />
+ <el-table-column property="name" align="center" label="保养日期" sortable />
+ <el-table-column property="name" align="center" label="保养负责人单位" sortable />
+ </el-table>
+ </el-tab-pane>
+ <el-tab-pane label="设备检查" name="second"
+ ><el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column property="name" align="center" label="检查人" sortable />
+ <el-table-column property="name" align="center" label="检查日期" sortable />
+ <el-table-column property="name" align="center" label="检查人部门" sortable />
+ <el-table-column property="name" align="center" label="检查结果" sortable />
+ <el-table-column property="name" align="center" label="检查状态" sortable /> </el-table
+ ></el-tab-pane>
+ <el-tab-pane label="设备检测" name="third">
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column property="name" align="center" label="检测人" sortable />
+ <el-table-column property="name" align="center" label="检测日期" sortable />
+ <el-table-column property="name" align="center" label="检测人单位" sortable />
+ <el-table-column property="name" align="center" label="检测内容" sortable />
+ <el-table-column property="name" align="center" label="检测结果" sortable />
+ <el-table-column property="name" align="center" label="检测状态" sortable />
+ </el-table>
+ </el-tab-pane>
+ <el-tab-pane label="设备维修" name="fourth">
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column property="name" align="center" label="设施异常项" sortable />
+ <el-table-column property="name" align="center" label="维修状态" sortable />
+ <el-table-column property="name" align="center" label="维修情况" sortable />
+ <el-table-column property="name" align="center" label="维修负责人" sortable />
+ <el-table-column property="name" align="center" label="维修负责人单位" sortable />
+ <el-table-column property="name" align="center" label="维修开始日期" sortable />
+ <el-table-column property="name" align="center" label="维修结束日期" sortable />
+ </el-table>
+ </el-tab-pane>
+ </el-tabs>
+ </template>
+ </el-table-column>
+ <el-table-column label="装置设施名称" align="center" sortable>
+ <template #default="scope">{{ scope.row.date }}</template>
+ </el-table-column>
+ <el-table-column property="name" align="center" label="装置设施位号" sortable />
+ <el-table-column property="name" align="center" label="装置设施用途" sortable />
+ <el-table-column property="address" label="装置设施型号" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="类型/类别外键" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="设施部位" align="center" sortable show-overflow-tooltip />
+ <el-table-column label="操作" align="center" style="width: 300px">
+ <template #default>
+ <el-button link type="primary" size="default" :icon="View">查看</el-button>
+ <el-button link type="primary" size="default" :icon="EditPen">修改</el-button>
+ <el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="pages">
+ <el-pagination
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ </div>
+ </el-col>
+ </el-row>
+ </div>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive, watch } from 'vue';
+import { ElTree, TabsPaneContext } from 'element-plus';
+import { EditPen, Plus, Delete, Download, Refresh, Upload } from '@element-plus/icons-vue';
+interface Tree {
+ id: number;
+ label: string;
+ children?: Tree[];
+}
+export default defineComponent({
+ setup() {
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+ const filterText = ref('');
+ const treeRef = ref<InstanceType<typeof ElTree>>();
+
+ const defaultProps = {
+ children: 'children',
+ label: 'label',
+ };
+
+ watch(filterText, (val) => {
+ treeRef.value!.filter(val);
+ });
+
+ const filterNode = (value: string, data: Tree) => {
+ if (!value) return true;
+ return data.label.includes(value);
+ };
+
+ const data: Tree[] = [
+ {
+ id: 1,
+ label: 'Level one 1',
+ children: [
+ {
+ id: 4,
+ label: 'Level two 1-1',
+ children: [
+ {
+ id: 9,
+ label: 'Level three 1-1-1',
+ },
+ {
+ id: 10,
+ label: 'Level three 1-1-2',
+ },
+ ],
+ },
+ ],
+ },
+ {
+ id: 2,
+ label: 'Level one 2',
+ children: [
+ {
+ id: 5,
+ label: 'Level two 2-1',
+ },
+ {
+ id: 6,
+ label: 'Level two 2-2',
+ },
+ ],
+ },
+ {
+ id: 3,
+ label: 'Level one 3',
+ children: [
+ {
+ id: 7,
+ label: 'Level two 3-1',
+ },
+ {
+ id: 8,
+ label: 'Level two 3-2',
+ },
+ ],
+ },
+ ];
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-08',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-06',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-07',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const activeName = ref('first');
+
+ const handleClick = (tab: TabsPaneContext, event: Event) => {
+ console.log(tab, event);
+ };
+ return {
+ activeName,
+ handleClick,
+ ruleForm,
+ filterText,
+ treeRef,
+ defaultProps,
+ filterNode,
+ data,
+ tableData,
+ Plus,
+ EditPen,
+ Delete,
+ Download,
+ Refresh,
+ Upload,
+ };
+ },
+});
+</script>
+<style scoped>
+.topTitle {
+ background-color: #fff;
+ padding: 20px 0px 20px 0px;
+ margin-bottom: 10px;
+}
+.tree {
+ height: 750px;
+ background-color: #fff;
+ overflow: hidden;
+ overflow-y: auto;
+}
+.btns {
+ padding: 10px 0px 10px 10px;
+ display: flex;
+ justify-content: space-between;
+ background-color: #fff;
+}
+</style>
diff --git a/src/views/facilityManagement/deviceType/component/Dailog.vue b/src/views/facilityManagement/deviceType/component/Dailog.vue
new file mode 100644
index 0000000..6f8b671
--- /dev/null
+++ b/src/views/facilityManagement/deviceType/component/Dailog.vue
@@ -0,0 +1,64 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建设备设施类型管理" width="50%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="是否为设备内容">
+ <el-select v-model="form.region" placeholder="请选择" style="width:100%">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="父级编号">
+ <el-select v-model="form.region" placeholder="请选择" style="width:100%">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="类别名称">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="排列序列">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+</template>
+<script lang="ts">
+import { defineComponent, ref } from 'vue';
+export default defineComponent({
+ setup() {
+ const dialogVisible = ref(false);
+ const form = ref({});
+ const openDailog=()=>{
+ dialogVisible.value=true
+ }
+ return {
+ dialogVisible,
+ form,
+ openDailog
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row{
+ padding: 0 0 20px 0;
+}
+</style>
diff --git a/src/views/facilityManagement/deviceType/index.vue b/src/views/facilityManagement/deviceType/index.vue
new file mode 100644
index 0000000..5e3fb06
--- /dev/null
+++ b/src/views/facilityManagement/deviceType/index.vue
@@ -0,0 +1,96 @@
+<template>
+ <div class="box">
+ <el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+ <el-table :data="tableData" style="width: 100%" row-key="id">
+ <el-table-column align="center" prop="date" label="是否为设备内容"/>
+ <el-table-column align="center" prop="name" label="巡检" />
+ <el-table-column align="center" prop="address" label="检测" />
+ <el-table-column align="center" prop="address" label="类别名称" />
+ <el-table-column align="center" label="操作">
+ <template #default>
+ <el-button type="primary" link :icon="View">查看</el-button>
+ <el-button type="primary" link :icon="EditPen">修改</el-button>
+ <el-button type="primary" link :icon="Delete">删除</el-button>
+ <el-button type="primary" link :icon="CirclePlus">添加下级设备设施类型管理</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <Dailog ref="Show"></Dailog>
+ </div>
+</template>
+<script lang="ts">
+import { defineComponent,ref } from 'vue'
+import {Plus,View,EditPen,Delete,CirclePlus} from '@element-plus/icons-vue'
+import Dailog from "./component/Dailog.vue"
+export default defineComponent({
+ components:{Dailog},
+ setup() {
+ const tableData = [
+ {
+ id: 1,
+ date: '2016-05-02',
+ name: 'wangxiaohu',
+ },
+ {
+ id: 2,
+ date: '2016-05-04',
+ name: 'wangxiaohu',
+ },
+ {
+ id: 3,
+ date: '2016-05-01',
+ name: 'wangxiaohu',
+ children: [
+ {
+ id: 31,
+ date: '2016-05-01',
+ name: 'wangxiaohu',
+ children: [
+ {
+ id: 35,
+ date: '2016-05-01',
+ name: 'wangxiaohu',
+ },
+ {
+ id: 36,
+ date: '2016-05-01',
+ name: 'wangxiaohu',
+ },
+ ],
+ },
+ {
+ id: 32,
+ date: '2016-05-01',
+ name: 'wangxiaohu',
+ },
+ ],
+ },
+ {
+ id: 4,
+ date: '2016-05-03',
+ name: 'wangxiaohu',
+ },
+]
+ const Show=ref()
+ const openD=()=>{
+ Show.value.openDailog()
+ }
+ return{
+ tableData,
+ Show,
+ openD,
+ Plus,
+ View,
+ EditPen,
+ Delete,
+ CirclePlus
+ }
+ },
+})
+</script>
+<style scoped>
+.box{
+ padding: 20px;
+ background-color: #fff;
+}
+</style>
diff --git a/src/views/goalManagement/Goalsummary/index.vue b/src/views/goalManagement/Goalsummary/index.vue
index 8b05f37..1746d27 100644
--- a/src/views/goalManagement/Goalsummary/index.vue
+++ b/src/views/goalManagement/Goalsummary/index.vue
@@ -1,4 +1,5 @@
<template>
+ <div>
<el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
<el-row>
<el-col :span="4">
@@ -64,6 +65,7 @@
/>
</div>
</div>
+ </div>
</template>
<script lang="ts">
import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';
diff --git a/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue b/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue
new file mode 100644
index 0000000..4cc273c
--- /dev/null
+++ b/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue
@@ -0,0 +1,112 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建奖惩记录" width="50%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="员工姓名">
+ <el-input v-model="form.name" placeholder="请选择">
+ <template #append> <el-button :icon="Search" @click="daiInpts" /> </template
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="奖惩名称">
+ <el-input v-model="form.name" placeholder="请选择">
+ <template #append> <el-button :icon="Search" @click="daiInpt" /> </template
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="奖惩类型">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="奖惩内容">
+ <el-input v-model="form.name" placeholder="请填写奖惩内容" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="依据">
+ <el-input v-model="form.name" placeholder="请填写奖惩依据"/>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="备注信息">
+ <el-input v-model="form.name" type="textarea" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ <DailogSearchUser ref="Show"></DailogSearchUser>
+ <DailogSearch ref="Shows"></DailogSearch>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive } from 'vue';
+import { Search } from '@element-plus/icons-vue';
+import DailogSearch from './DailogSearch.vue';
+import DailogSearchUser from '/@/components/DailogSearchUser/index.vue'
+export default defineComponent({
+ components: { DailogSearch,DailogSearchUser },
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const form = reactive({
+ name: '',
+ region: '',
+ date1: '',
+ date2: '',
+ delivery: false,
+ type: [],
+ resource: '',
+ desc: '',
+ });
+ const openDailog = (type: string, value: any, projectList: any, projectId: string) => {
+ dialogVisible.value = true;
+ };
+ // 导航
+ const activeName = ref('1');
+ // 表格
+
+ // 安全目标指标弹窗
+ const Shows = ref();
+ const daiInpt = () => {
+ Shows.value.openDailog();
+ };
+ const Show = ref();
+ const daiInpts = () => {
+ Show.value.openDailog();
+ };
+ return {
+ form,
+ dialogVisible,
+ openDailog,
+ activeName,
+ Shows,
+ daiInpt,
+ Show,
+ daiInpts,
+ Search,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue b/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue
new file mode 100644
index 0000000..88ad9a9
--- /dev/null
+++ b/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue
@@ -0,0 +1,128 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="奖惩类型" width="50%" draggable>
+ <el-row>
+ <el-col :span="17">
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item>
+ <el-input v-model="ruleForm.pass" placeholder="奖惩名称" />
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="6" :offset="1">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="11" :offset="1">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-button size="default" :icon="Delete">清除选择</el-button>
+ <el-table :data="tableData" style="width: 100%;margin-top:20px">
+ <el-table-column align="center" type="selection"/>
+ <el-table-column align="center" prop="date" label="奖惩名称" width="180" />
+ <el-table-column align="center" prop="name" label="奖惩类型" width="180" />
+ <el-table-column align="center" prop="address" label="奖惩内容" />
+ </el-table>
+ <el-pagination
+ style="padding:20px 0;border-bottom:1px solid #dedede"
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ <el-col :span="7">
+ <el-tag v-for="tag in dynamicTags" :key="tag" class="mx-1" style="margin:5px" closable :disable-transitions="false" @close="handleClose(tag)">
+ {{ tag }}
+ </el-tag>
+ </el-col>
+ </el-row>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+</template>
+<script lang="ts">
+import { defineComponent, reactive, ref } from 'vue';
+import { Delete } from '@element-plus/icons-vue';
+export default defineComponent({
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const openDailog = () => {
+ dialogVisible.value = true;
+ };
+ // 搜索条件
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+ // 表格
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const pageSize4 = ref(100);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ // 右方点击添加后显示标签
+ const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3']);
+ const handleClose = (tag: string) => {
+ dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
+ };
+ return {
+ dialogVisible,
+ openDailog,
+ ruleForm,
+ tableData,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ dynamicTags,
+ handleClose,
+ Delete,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
diff --git a/src/views/goalManagement/IncentiveRecording/index.vue b/src/views/goalManagement/IncentiveRecording/index.vue
new file mode 100644
index 0000000..ec09aa2
--- /dev/null
+++ b/src/views/goalManagement/IncentiveRecording/index.vue
@@ -0,0 +1,208 @@
+<template>
+<div>
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
+ <el-row>
+ <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.name" placeholder="请选择被奖惩者">
+ <template #append> <el-button :icon="Search" @click="openSearch" /> </template
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="4">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div class="minCenter">
+ <div class="btns">
+ <div>
+ <el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+ <el-button type="warning" plain :icon="EditPen">修改</el-button>
+ <el-button type="danger" :icon="Delete" plain>删除</el-button>
+ </div>
+ <div>
+ <el-button :icon="Download"></el-button>
+ <el-button :icon="Refresh"></el-button>
+ </div>
+ </div>
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column type="selection" align="center" width="55" />
+ <el-table-column label="奖惩日期" align="center" sortable>
+ <template #default="scope">{{ scope.row.date }}</template>
+ </el-table-column>
+ <el-table-column property="name" align="center" label="奖惩类型" sortable />
+ <el-table-column property="name" align="center" label="被奖惩者" sortable />
+ <el-table-column property="address" label="奖惩内容" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="奖惩依据" align="center" sortable show-overflow-tooltip />
+ <!-- <el-table-column property="address" label="指标级别" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="完成期限" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="状态" align="center" sortable show-overflow-tooltip /> -->
+ <el-table-column label="操作" align="center" style="width:300px">
+ <template #default>
+ <el-button link type="primary" size="default" :icon="View">查看</el-button>
+ <el-button link type="primary" size="default" :icon="EditPen">修改</el-button>
+ <el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="pages">
+ <el-pagination
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ <DailogAdd ref="openAdd"></DailogAdd>
+ <DailogSearchUser ref="openUser"></DailogSearchUser>
+ </div>
+ </div>
+</template>
+<script lang="ts">
+import DailogAdd from './component/DailogAdd.vue'
+import DailogSearchUser from '/@/components/DailogSearchUser/index.vue'
+import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';
+import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';
+import { Plus, Delete, Upload, Download, Refresh, View,EditPen,Search} from '@element-plus/icons-vue';
+interface User {
+ date: string;
+ name: string;
+ address: string;
+}
+import type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';
+export default defineComponent({
+ components: { ElButton, ElInput,DailogAdd,DailogSearchUser },
+ setup() {
+ // 搜索条件
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+
+ const formatter = (row: User, column: TableColumnCtx<User>) => {
+ return row.address;
+ };
+
+ const tableData: User[] = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-08',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-06',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-07',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const currentPage4 = ref(4);
+ const pageSize4 = ref(100);
+ const small = ref(false);
+ const disabled = ref(false);
+ const background = ref(false);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ // 弹窗
+ const openAdd = ref();
+ const openD = () => {
+ openAdd.value.openDailog();
+ };
+ const openUser =ref();
+ const openSearch=()=>{
+ openUser.value.openDailog()
+ }
+ return {
+
+ tableData,
+ formatter,
+ currentPage4,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ openAdd,
+ openD,
+ small,
+ disabled,
+ background,
+ ruleForm,
+ openUser,
+ openSearch,
+ Plus,
+ Delete,
+ Upload,
+ Download,
+ Refresh,
+ View,
+ EditPen,
+ Search
+ };
+ },
+});
+</script>
+<style scoped>
+.minCenter {
+ width: 100%;
+ background-color: #fff;
+ margin-top: 10px;
+ padding: 0 20px;
+}
+.topTitle {
+ background-color: #fff;
+ padding: 20px 0px 20px 0px;
+ margin-bottom:10px ;
+}
+.btns {
+ padding: 10px 0px 10px 0px;
+ display: flex;
+ justify-content: space-between;
+}
+.pages {
+ padding: 20px 0;
+ display: flex;
+ justify-content: right;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue b/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue
new file mode 100644
index 0000000..aa4698c
--- /dev/null
+++ b/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue
@@ -0,0 +1,84 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建奖惩标准设定" width="50%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="奖惩类型">
+ <el-select v-model="form.region" style="width:100%" placeholder="">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="奖惩内容">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="奖惩名称">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="依据">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="备注信息">
+ <el-input v-model="form.name" type="textarea" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive } from 'vue';
+import { Search } from '@element-plus/icons-vue';
+export default defineComponent({
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const form = reactive({
+ name: '',
+ region: '',
+ date1: '',
+ date2: '',
+ delivery: false,
+ type: [],
+ resource: '',
+ desc: '',
+ });
+ const openDailog = (type: string, value: any, projectList: any, projectId: string) => {
+ dialogVisible.value = true;
+ };
+ // 导航
+ const activeName = ref('1');
+ // 表格
+
+ return {
+ form,
+ dialogVisible,
+ openDailog,
+ activeName,
+ Search,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/Incentivestandard/index.vue b/src/views/goalManagement/Incentivestandard/index.vue
new file mode 100644
index 0000000..0e2e707
--- /dev/null
+++ b/src/views/goalManagement/Incentivestandard/index.vue
@@ -0,0 +1,211 @@
+<template>
+<div>
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
+ <el-row>
+ <el-col :span="4">
+ <el-form-item>
+ <el-select v-model="ruleForm.region" style="width:100%" placeholder="">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="4">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div class="minCenter">
+ <div class="btns">
+ <div>
+ <el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+ <el-button type="warning" plain :icon="EditPen">修改</el-button>
+ <el-button type="danger" :icon="Delete" plain>删除</el-button>
+ </div>
+ <div>
+ <el-button :icon="Upload" @click="upButton"></el-button>
+ <el-button :icon="Download"></el-button>
+ <el-button :icon="Refresh"></el-button>
+ </div>
+ </div>
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column type="selection" align="center" width="55" />
+ <el-table-column label="奖惩名称" align="center" sortable>
+ <template #default="scope">{{ scope.row.date }}</template>
+ </el-table-column>
+ <el-table-column property="name" align="center" label="奖惩类型" sortable />
+ <el-table-column property="address" label="奖惩内容" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="依据" align="center" sortable show-overflow-tooltip />
+ <!-- <el-table-column property="address" label="指标级别" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="完成期限" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="状态" align="center" sortable show-overflow-tooltip /> -->
+ <el-table-column property="address" label="备注信息" align="center" sortable show-overflow-tooltip />
+ <el-table-column label="操作" align="center" sortable show-overflow-tooltip>
+ <template #default>
+ <el-button link type="primary" size="default" :icon="View">查看</el-button>
+ <el-button link type="primary" size="default" :icon="EditPen">修改</el-button>
+ <el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="pages">
+ <el-pagination
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ <DailogAdd ref="openAdd"></DailogAdd>
+ <upData ref="upShow"></upData>
+ </div>
+ </div>
+</template>
+<script lang="ts">
+import DailogAdd from './component/DailogAdd.vue'
+import upData from '../../../components/updata/updata.vue';
+import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';
+import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';
+import { Plus, Delete, Upload, Download, Refresh, View,EditPen } from '@element-plus/icons-vue';
+interface User {
+ date: string;
+ name: string;
+ address: string;
+}
+import type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';
+export default defineComponent({
+ components: { ElButton, ElInput, upData,DailogAdd },
+ setup() {
+ // 搜索条件
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+
+ const formatter = (row: User, column: TableColumnCtx<User>) => {
+ return row.address;
+ };
+
+ const tableData: User[] = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-08',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-06',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-07',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const currentPage4 = ref(4);
+ const pageSize4 = ref(100);
+ const small = ref(false);
+ const disabled = ref(false);
+ const background = ref(false);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ // 弹窗
+ const openAdd = ref();
+ const openD = () => {
+ openAdd.value.openDailog();
+ };
+
+ // 上传
+ const upShow = ref();
+ const upButton = () => {
+ upShow.value.openDialog();
+ };
+ return {
+
+ tableData,
+ formatter,
+ currentPage4,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ openAdd,
+ openD,
+ upShow,
+ upButton,
+ small,
+ disabled,
+ background,
+ ruleForm,
+ Plus,
+ Delete,
+ Upload,
+ Download,
+ Refresh,
+ View,
+ EditPen
+ };
+ },
+});
+</script>
+<style scoped>
+.minCenter {
+ width: 100%;
+ background-color: #fff;
+ margin-top: 10px;
+ padding: 0 20px;
+}
+.topTitle {
+ background-color: #fff;
+ padding: 20px 0px 20px 0px;
+ margin-bottom:10px ;
+}
+.btns {
+ padding: 10px 0px 10px 0px;
+ display: flex;
+ justify-content: space-between;
+}
+.pages {
+ padding: 20px 0;
+ display: flex;
+ justify-content: right;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/TargetBook/component/DailogAdd.vue b/src/views/goalManagement/TargetBook/component/DailogAdd.vue
new file mode 100644
index 0000000..4d7d2da
--- /dev/null
+++ b/src/views/goalManagement/TargetBook/component/DailogAdd.vue
@@ -0,0 +1,142 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建目标责任书" width="50%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="岗位">
+ <el-input v-model="form.name" placeholder="请选择">
+ <template #append> <el-button :icon="Search" @click="daiInpt" /> </template
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="责任书签订日期">
+ <el-date-picker v-model="form.date1" type="date" placeholder="Pick a date" style="width: 100%" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="备注信息">
+ <el-input v-model="form.name" type="textarea" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="责任书附件">
+ <el-upload
+ v-model:file-list="fileList"
+ class="upload-demo"
+ action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
+ multiple
+ :on-preview="handlePreview"
+ :on-remove="handleRemove"
+ :before-remove="beforeRemove"
+ :limit="3"
+ :on-exceed="handleExceed"
+ >
+ <el-button type="primary">点击上传</el-button>
+ <template #tip>
+ <div class="el-upload__tip">添加相关附件</div>
+ </template>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ <DailogSearch ref="Shows"></DailogSearch>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive } from 'vue';
+import { Search } from '@element-plus/icons-vue';
+import DailogSearch from './DailogSearch.vue';
+import { ElMessage, ElMessageBox } from 'element-plus';
+import type { UploadProps, UploadUserFile } from 'element-plus';
+export default defineComponent({
+ components: { DailogSearch },
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const form = reactive({
+ name: '',
+ region: '',
+ date1: '',
+ date2: '',
+ delivery: false,
+ type: [],
+ resource: '',
+ desc: '',
+ });
+ const openDailog = (type: string, value: any, projectList: any, projectId: string) => {
+ dialogVisible.value = true;
+ };
+ // 导航
+ const activeName = ref('1');
+ // 表格
+
+ // 安全目标指标弹窗
+ const Shows = ref();
+ const daiInpt = () => {
+ Shows.value.openDailog();
+ };
+ // 点击上传
+ const fileList = ref<UploadUserFile[]>([
+ {
+ name: 'element-plus-logo.svg',
+ url: 'https://element-plus.org/images/element-plus-logo.svg',
+ },
+ {
+ name: 'element-plus-logo2.svg',
+ url: 'https://element-plus.org/images/element-plus-logo.svg',
+ },
+ ]);
+
+ const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {
+ console.log(file, uploadFiles);
+ };
+
+ const handlePreview: UploadProps['onPreview'] = (uploadFile) => {
+ console.log(uploadFile);
+ };
+
+ const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {
+ ElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);
+ };
+
+ const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {
+ return ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(
+ () => true,
+ () => false
+ );
+ };
+ return {
+ form,
+ dialogVisible,
+ openDailog,
+ activeName,
+ Shows,
+ daiInpt,
+ Search,
+ fileList,
+ handleRemove,
+ handlePreview,
+ handleExceed,
+ beforeRemove
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/TargetBook/component/DailogSearch.vue b/src/views/goalManagement/TargetBook/component/DailogSearch.vue
new file mode 100644
index 0000000..5801430
--- /dev/null
+++ b/src/views/goalManagement/TargetBook/component/DailogSearch.vue
@@ -0,0 +1,126 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="选择岗位" width="50%" draggable>
+ <el-row>
+ <el-col :span="17">
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item>
+ <el-input v-model="ruleForm.pass" placeholder="岗位名称" />
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="6" :offset="1">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="11" :offset="1">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-button size="default" :icon="Delete">清除选择</el-button>
+ <el-table :data="tableData" style="width: 100%;margin-top:20px">
+ <el-table-column align="center" type="selection"/>
+ <el-table-column align="center" prop="date" label="岗位名称" />
+ </el-table>
+ <el-pagination
+ style="padding:20px 0;border-bottom:1px solid #dedede"
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ <el-col :span="7">
+ <el-tag v-for="tag in dynamicTags" :key="tag" class="mx-1" style="margin:5px" closable :disable-transitions="false" @close="handleClose(tag)">
+ {{ tag }}
+ </el-tag>
+ </el-col>
+ </el-row>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+</template>
+<script lang="ts">
+import { defineComponent, reactive, ref } from 'vue';
+import { Delete } from '@element-plus/icons-vue';
+export default defineComponent({
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const openDailog = () => {
+ dialogVisible.value = true;
+ };
+ // 搜索条件
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+ // 表格
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const pageSize4 = ref(100);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ // 右方点击添加后显示标签
+ const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3']);
+ const handleClose = (tag: string) => {
+ dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
+ };
+ return {
+ dialogVisible,
+ openDailog,
+ ruleForm,
+ tableData,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ dynamicTags,
+ handleClose,
+ Delete,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
diff --git a/src/views/goalManagement/TargetBook/index.vue b/src/views/goalManagement/TargetBook/index.vue
new file mode 100644
index 0000000..c14768b
--- /dev/null
+++ b/src/views/goalManagement/TargetBook/index.vue
@@ -0,0 +1,209 @@
+<template>
+ <div>
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
+ <el-row>
+ <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.name" placeholder="请选择岗位">
+ <template #append> <el-button :icon="Search" @click="openSearch" /> </template
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="4">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div class="minCenter">
+ <div class="btns">
+ <div>
+ <el-button type="primary" :icon="Plus" @click="openD">新建</el-button>
+ <el-button type="warning" plain :icon="EditPen">修改</el-button>
+ <el-button type="danger" :icon="Delete" plain>删除</el-button>
+ </div>
+ <div>
+ <el-button :icon="Download"></el-button>
+ <el-button :icon="Refresh"></el-button>
+ </div>
+ </div>
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column type="selection" align="center" width="55" />
+ <el-table-column type="index" label="序号" align="center" width="70" />
+ <el-table-column label="岗位" align="center" sortable>
+ <template #default="scope">{{ scope.row.date }}</template>
+ </el-table-column>
+ <el-table-column property="name" align="center" label="责任书签订日期" sortable />
+ <el-table-column property="name" align="center" label="附件" sortable />
+ <el-table-column property="address" label="备注信息" align="center" sortable show-overflow-tooltip />
+ <!-- <el-table-column property="address" label="奖惩依据" align="center" sortable show-overflow-tooltip /> -->
+ <!-- <el-table-column property="address" label="指标级别" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="完成期限" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="状态" align="center" sortable show-overflow-tooltip /> -->
+ <el-table-column label="操作" align="center" style="width:300px">
+ <template #default>
+ <el-button link type="primary" size="default" :icon="View">查看</el-button>
+ <el-button link type="primary" size="default" :icon="EditPen">修改</el-button>
+ <el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="pages">
+ <el-pagination
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ <DailogAdd ref="openAdd"></DailogAdd>
+ <DailogSearch ref="openUser"></DailogSearch>
+ </div>
+ </div>
+</template>
+<script lang="ts">
+import DailogAdd from './component/DailogAdd.vue'
+import DailogSearch from './component/DailogSearch.vue'
+import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';
+import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';
+import { Plus, Delete, Upload, Download, Refresh, View,EditPen,Search} from '@element-plus/icons-vue';
+interface User {
+ date: string;
+ name: string;
+ address: string;
+}
+import type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';
+export default defineComponent({
+ components: { ElButton, ElInput,DailogAdd,DailogSearch },
+ setup() {
+ // 搜索条件
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+
+ const formatter = (row: User, column: TableColumnCtx<User>) => {
+ return row.address;
+ };
+
+ const tableData: User[] = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-08',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-06',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-07',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const currentPage4 = ref(4);
+ const pageSize4 = ref(100);
+ const small = ref(false);
+ const disabled = ref(false);
+ const background = ref(false);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ // 弹窗
+ const openAdd = ref();
+ const openD = () => {
+ openAdd.value.openDailog();
+ };
+ const openUser =ref();
+ const openSearch=()=>{
+ openUser.value.openDailog()
+ }
+ return {
+
+ tableData,
+ formatter,
+ currentPage4,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ openAdd,
+ openD,
+ small,
+ disabled,
+ background,
+ ruleForm,
+ openUser,
+ openSearch,
+ Plus,
+ Delete,
+ Upload,
+ Download,
+ Refresh,
+ View,
+ EditPen,
+ Search
+ };
+ },
+});
+</script>
+<style scoped>
+.minCenter {
+ width: 100%;
+ background-color: #fff;
+ margin-top: 10px;
+ padding: 0 20px;
+}
+.topTitle {
+ background-color: #fff;
+ padding: 20px 0px 20px 0px;
+ margin-bottom:10px ;
+}
+.btns {
+ padding: 10px 0px 10px 0px;
+ display: flex;
+ justify-content: space-between;
+}
+.pages {
+ padding: 20px 0;
+ display: flex;
+ justify-content: right;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue
new file mode 100644
index 0000000..3eff224
--- /dev/null
+++ b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue
@@ -0,0 +1,240 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建安全考核管理" width="50%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="考核标题">
+ <el-input v-model="form.name"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="考核日期">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="合格分数">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="总分">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="考核部门">
+ <el-select v-model="form.region" style="width: 100%" placeholder="请选择">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="考核人">
+ <el-input v-model="form.name">
+ <template #append> <el-button :icon="Search" @click="daiInpt" /></template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="被考核部门">
+ <el-select v-model="form.region" style="width: 100%" placeholder="请选择">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="被考核人">
+ <el-input v-model="form.name">
+ <template #append> <el-button :icon="Search" @click="daiInpt" /></template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="考核模板">
+ <el-upload
+ v-model:file-list="fileList"
+ class="upload-demo"
+ action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
+ multiple
+ :on-preview="handlePreview"
+ :on-remove="handleRemove"
+ :before-remove="beforeRemove"
+ :limit="3"
+ :on-exceed="handleExceed"
+ >
+ <el-button type="primary">点击上传</el-button>
+ <template #tip>
+ <div class="el-upload__tip">添加相关附件</div>
+ </template>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="考核模板">
+ <el-input v-model="form.name">
+ <template #append> <el-button :icon="Search" @click="daiAdd" /></template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="备注信息">
+ <el-input v-model="form.name" type="textarea"> </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
+ <el-tab-pane label="考核项目" name="1">
+ <!-- <el-button type="primary" size="default" @click="daiAdd">新增</el-button> -->
+ </el-tab-pane>
+ </el-tabs>
+ <el-table :data="tableData" style="width: 100%">
+ <el-table-column align="center" prop="date" label="考核项目" />
+ <el-table-column align="center" prop="name" label="考核内容" />
+ <el-table-column align="center" prop="address" label="考核分数" />
+ <!-- <el-table-column align="center" prop="address" label="制定日期" />
+ <el-table-column align="center" prop="address" label="上报人" />
+ <el-table-column align="center" label="操作">
+ <template #default>
+ <el-button link type="primary">查看</el-button>
+ </template>
+ </el-table-column> -->
+ </el-table>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ <DailogSearch ref="Show"></DailogSearch>
+ <DailogSearchUser ref="Shows"></DailogSearchUser>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive } from 'vue';
+import { Search } from '@element-plus/icons-vue';
+import DailogSearch from './DailogSearch.vue'
+import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
+import { ElMessage, ElMessageBox } from 'element-plus';
+
+import type { UploadProps, UploadUserFile } from 'element-plus';
+export default defineComponent({
+ components: { DailogSearchUser,DailogSearch},
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const form = reactive({
+ name: '',
+ region: '',
+ date1: '',
+ date2: '',
+ delivery: false,
+ type: [],
+ resource: '',
+ desc: '',
+ });
+ const openDailog = (type: string, value: any, projectList: any, projectId: string) => {
+ dialogVisible.value = true;
+ };
+ // 导航
+ const activeName = ref('1');
+ // 表格
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ // 新增弹窗
+ const Show = ref();
+ const daiAdd = () => {
+ Show.value.openDailog();
+ };
+ // 安全目标指标弹窗
+ const Shows = ref();
+ const daiInpt = () => {
+ Shows.value.openDailog();
+ };
+ // 点击上传
+ const fileList = ref<UploadUserFile[]>([
+ {
+ name: 'element-plus-logo.svg',
+ url: 'https://element-plus.org/images/element-plus-logo.svg',
+ },
+ {
+ name: 'element-plus-logo2.svg',
+ url: 'https://element-plus.org/images/element-plus-logo.svg',
+ },
+ ]);
+
+ const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {
+ console.log(file, uploadFiles);
+ };
+
+ const handlePreview: UploadProps['onPreview'] = (uploadFile) => {
+ console.log(uploadFile);
+ };
+
+ const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {
+ ElMessage.warning(`The limit is 3, you selected ${files.length} files this time, add up to ${files.length + uploadFiles.length} totally`);
+ };
+
+ const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {
+ return ElMessageBox.confirm(`Cancel the transfert of ${uploadFile.name} ?`).then(
+ () => true,
+ () => false
+ );
+ };
+ return {
+ form,
+ dialogVisible,
+ openDailog,
+ activeName,
+ tableData,
+ Show,
+ daiAdd,
+ Shows,
+ daiInpt,
+ Search,
+ fileList,
+ handleRemove,
+ handlePreview,
+ handleExceed,
+ beforeRemove
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue
new file mode 100644
index 0000000..633afdf
--- /dev/null
+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKh.vue
@@ -0,0 +1,167 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建考核标准设定" width="60%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="标准标题">
+ <el-input v-model="form.name"> </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="适用范围">
+ <el-select v-model="form.region" style="width: 100%" placeholder="请选择">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <div v-if="clickType">
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="设定人">
+ <el-input v-model="form.name">
+ <template #append> <el-button :icon="Search" @click="daiInpt" /></template>
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="设定人部门">
+ <el-select v-model="form.region" style="width: 100%" placeholder="请选择">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="模板分类编码">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2">
+ <el-form-item label="合格分数">
+ <el-input v-model="form.name" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="11">
+ <el-form-item label="备注信息">
+ <el-input v-model="form.name" type="textarea" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :offset="2" v-if="clickType">
+ <el-form-item label="设定日期">
+ <el-date-picker v-model="form.date1" type="date" placeholder="Pick a date" style="width: 100%" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
+ <el-tab-pane label="目标指标分解" name="1">
+ <el-button type="primary" size="default" @click="daiAdd">新增</el-button>
+ </el-tab-pane>
+ </el-tabs>
+ <el-table :data="tableData" style="width: 100%">
+ <el-table-column align="center" prop="date" label="类型" width="180" />
+ <el-table-column align="center" prop="name" label="考核项目" width="180" />
+ <el-table-column align="center" prop="address" label="考核内容" />
+ <el-table-column align="center" prop="address" label="评定标准" />
+ <el-table-column align="center" prop="address" label="考核说明" />
+ <el-table-column align="center" label="操作">
+ <template #default>
+ <el-button link type="primary">查看</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ <DailogKhS ref="Show"></DailogKhS>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive } from 'vue';
+import { Search } from '@element-plus/icons-vue';
+import DailogKhS from './DailogKhS.vue'
+export default defineComponent({
+ components: { DailogKhS },
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const form = reactive({
+ name: '',
+ region: '',
+ date1: '',
+ date2: '',
+ delivery: false,
+ type: [],
+ resource: '',
+ desc: '',
+ });
+ const clickType=ref()
+ const openDailog = (type: boolean) => {
+ dialogVisible.value = true;
+ clickType.value=type
+ };
+ // 导航
+ const activeName = ref('1');
+ // 表格
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ // 新增弹窗
+ const Show = ref();
+ const daiAdd = () => {
+ Show.value.openDailog();
+ };
+ // 安全目标指标弹窗
+ const Shows = ref();
+ const daiInpt = () => {
+ Shows.value.openDailog();
+ };
+ return {
+ form,
+ dialogVisible,
+ openDailog,
+ activeName,
+ tableData,
+ Show,
+ daiAdd,
+ Shows,
+ clickType,
+ daiInpt,
+ Search,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue
new file mode 100644
index 0000000..cbe1489
--- /dev/null
+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue
@@ -0,0 +1,127 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="新建考核项目" width="50%" draggable>
+ <el-form :model="form" label-width="120px">
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="类型">
+ <el-input v-model="form.name" type="textarea"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="考核项目">
+ <el-input v-model="form.name" type="textarea"> </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="考核内容">
+ <el-input v-model="form.name" type="textarea"> </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="评定标准">
+ <el-input v-model="form.name" type="textarea"> </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item label="考核说明">
+ <el-input v-model="form.name" type="textarea"> </el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button>
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+ <!-- <DailogAdd ref="Show"></DailogAdd>
+ <DailogSearch ref="Shows"></DailogSearch> -->
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive } from 'vue';
+import { Search } from '@element-plus/icons-vue';
+// import DailogAdd from './DailogAdd.vue'
+// import DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue'
+export default defineComponent({
+ // components:{DailogAdd,DailogSearch},
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const form = reactive({
+ name: '',
+ region: '',
+ date1: '',
+ date2: '',
+ delivery: false,
+ type: [],
+ resource: '',
+ desc: '',
+ });
+ const openDailog = (type: string, value: any, projectList: any, projectId: string) => {
+ dialogVisible.value = true;
+ };
+ // 导航
+ const activeName = ref('1');
+ // 表格
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ // 新增弹窗
+ const Show = ref();
+ const daiAdd = () => {
+ Show.value.openDailog();
+ };
+ // 安全目标指标弹窗
+ const Shows = ref();
+ const daiInpt = () => {
+ Shows.value.openDailog();
+ };
+ return {
+ form,
+ dialogVisible,
+ openDailog,
+ activeName,
+ tableData,
+ Show,
+ daiAdd,
+ Shows,
+ daiInpt,
+ Search,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
\ No newline at end of file
diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue
new file mode 100644
index 0000000..89f9032
--- /dev/null
+++ b/src/views/goalManagement/performanceAppraisal/component/DailogSearch.vue
@@ -0,0 +1,129 @@
+<template>
+ <el-dialog v-model="dialogVisible" title="选择安全目标指标" width="50%" draggable>
+ <el-row>
+ <el-col :span="17">
+ <el-form ref="ruleFormRef" :model="ruleForm" status-icon>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item>
+ <el-input v-model="ruleForm.pass" placeholder="标准标题" />
+ </el-form-item>
+ </el-col>
+ <!-- <el-col :span="6" :offset="1">
+ <el-form-item>
+ <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
+ </el-form-item>
+ </el-col> -->
+ <el-col :span="6" :offset="1">
+ <el-form-item>
+ <el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
+ <el-button @click="resetForm(ruleFormRef)">重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-button size="default" :icon="Delete">清除选择</el-button>
+ <el-table :data="tableData" style="width: 100%;margin-top:20px">
+ <el-table-column align="center" width="50px" type="selection"></el-table-column>
+ <el-table-column align="center" prop="date" label="标准标题" />
+ <!-- <el-table-column align="center" prop="name" label="目标指标编号" width="180" />
+ <el-table-column align="center" prop="address" label="年度" />
+ <el-table-column align="center" prop="address" label="指标值" /> -->
+ </el-table>
+ <el-pagination
+ style="padding:20px 0;border-bottom:1px solid #dedede"
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </el-col>
+ <el-col :span="7">
+ <el-tag v-for="tag in dynamicTags" :key="tag" class="mx-1" style="margin:5px" closable :disable-transitions="false" @close="handleClose(tag)">
+ {{ tag }}
+ </el-tag>
+ </el-col>
+ </el-row>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="dialogVisible = false" size="default">关闭</el-button>
+ <el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+ </span>
+ </template>
+ </el-dialog>
+</template>
+<script lang="ts">
+import { defineComponent, reactive, ref } from 'vue';
+import { Delete } from '@element-plus/icons-vue';
+export default defineComponent({
+ setup() {
+ const dialogVisible = ref<boolean>(false);
+ const openDailog = () => {
+ dialogVisible.value = true;
+ };
+ // 搜索条件
+ const ruleForm = reactive({
+ pass: '',
+ checkPass: '',
+ });
+ // 表格
+ const tableData = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const pageSize4 = ref(100);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ // 右方点击添加后显示标签
+ const dynamicTags = ref(['Tag 1', 'Tag 2', 'Tag 3']);
+ const handleClose = (tag: string) => {
+ dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
+ };
+ return {
+ dialogVisible,
+ openDailog,
+ ruleForm,
+ tableData,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ dynamicTags,
+ handleClose,
+ Delete,
+ };
+ },
+});
+</script>
+<style scoped>
+.el-row {
+ padding: 0 0 20px 0;
+}
+</style>
diff --git a/src/views/goalManagement/performanceAppraisal/index.vue b/src/views/goalManagement/performanceAppraisal/index.vue
index e340b14..543d4ce 100644
--- a/src/views/goalManagement/performanceAppraisal/index.vue
+++ b/src/views/goalManagement/performanceAppraisal/index.vue
@@ -1,12 +1,301 @@
<template>
-
+ <div>
+ <div class="minCenter">
+ <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
+ <el-tab-pane label="安全考核管理" name="1">
+ <el-form :model="ruleForm" status-icon label-width="20px" class="topTitle">
+ <el-row>
+ <el-col :span="4">
+ <el-form-item>
+ <el-select v-model="ruleForm.region" style="width: 100%" placeholder="请选择考核部门">
+ <el-option label="Zone one" value="shanghai" />
+ <el-option label="Zone two" value="beijing" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item>
+ <el-button type="primary">查询</el-button>
+ <el-button>重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div class="btns">
+ <div>
+ <el-button type="primary" :icon="Plus" @click="openDai">新建</el-button>
+ <el-button type="warning" plain :icon="EditPen">修改</el-button>
+ <el-button type="danger" plain :icon="Delete">删除</el-button>
+ </div>
+ </div>
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column type="selection" align="center" width="55" />
+ <el-table-column type="expand">
+ <template #default>
+ <div class="tableC">
+ <el-tabs v-model="activeNames">
+ <el-tab-pane label="考核项目" name="1">
+ <el-table :data="tableData" style="width: 100%">
+ <el-table-column align="center" prop="date" label="类型"/>
+ <el-table-column align="center" prop="name" label="考核项目"/>
+ <el-table-column align="center" prop="address" label="考核内容"/>
+ <el-table-column align="center" prop="address" label="评定标准" />
+ <el-table-column align="center" prop="address" label="考核说明" />
+ </el-table>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column label="考核日期" align="center" sortable>
+ <template #default="scope">{{ scope.row.date }}</template>
+ </el-table-column>
+ <el-table-column property="name" align="center" label="考核部门" sortable />
+ <el-table-column property="address" label="考核人" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="被考核部门" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="总分" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="考核结果" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="附件" align="center" sortable show-overflow-tooltip />
+ <el-table-column label="操作" align="center" width="250px">
+ <template #default>
+ <el-button link type="primary" size="default" :icon="View" @click="handleClick">查看</el-button>
+ <el-button link type="primary" size="default" :icon="EditPen" @click="handleClick">修改</el-button>
+ <el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="pages">
+ <el-pagination
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="考核标准设定" name="2">
+ <el-form :model="ruleForm" status-icon label-width="20px" class="topTitle">
+ <el-row>
+ <el-col :span="4">
+ <el-form-item>
+ <el-input v-model="ruleForm.pass" placeholder="标准标题" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-form-item>
+ <el-button type="primary">查询</el-button>
+ <el-button>重置</el-button>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <div class="btns">
+ <div>
+ <el-button type="primary" :icon="Plus" @click="openDaiK('新建')">新建</el-button>
+ <el-button type="warning" plain :icon="EditPen">修改</el-button>
+ <el-button type="danger" plain :icon="Delete">删除</el-button>
+ </div>
+ </div>
+ <el-table ref="multipleTableRef" :data="tableData" style="width: 100%">
+ <el-table-column type="selection" align="center" width="55" />
+ <el-table-column type="expand">
+ <template #default>
+ <div class="tableC">
+ <el-tabs v-model="activeNames">
+ <el-tab-pane label="考核项目" name="1">
+ <el-table :data="tableData" style="width: 100%">
+ <el-table-column align="center" prop="date" label="类型"/>
+ <el-table-column align="center" prop="name" label="考核项目"/>
+ <el-table-column align="center" prop="address" label="考核内容"/>
+ <el-table-column align="center" prop="address" label="评定标准" />
+ <el-table-column align="center" prop="address" label="考核说明" />
+ </el-table>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column label="标准标题" align="center" sortable>
+ <template #default="scope">{{ scope.row.date }}</template>
+ </el-table-column>
+ <el-table-column property="name" align="center" label="适用范围" sortable />
+ <el-table-column property="address" label="设定人" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="设定人部门" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="设定日期" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="模板分类编码" align="center" sortable show-overflow-tooltip />
+ <el-table-column property="address" label="合格分数" align="center" sortable show-overflow-tooltip />
+ <el-table-column label="操作" align="center" width="250px">
+ <template #default>
+ <el-button link type="primary" size="default" :icon="View" @click="openDaiK('查看')">查看</el-button>
+ <el-button link type="primary" size="default" :icon="EditPen" @click="openDaiK('修改')">修改</el-button>
+ <el-button link type="primary" size="default" :icon="Delete">删除</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="pages">
+ <el-pagination
+ v-model:currentPage="currentPage4"
+ v-model:page-size="pageSize4"
+ :page-sizes="[100, 200, 300, 400]"
+ :small="small"
+ :disabled="disabled"
+ :background="background"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="400"
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ />
+ </div>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+ <DailogAq ref="ShowAq"></DailogAq>
+ <DailogKh ref="ShowKh"></DailogKh>
+ </div>
</template>
<script lang="ts">
-import { defineComponent } from 'vue'
-
+import DailogAq from './component/DailogAq.vue'
+import DailogKh from './component/DailogKh.vue'
+import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';
+import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';
+import { Plus, Delete, Upload, Download, Refresh, View, EditPen } from '@element-plus/icons-vue';
+interface User {
+ date: string;
+ name: string;
+ address: string;
+}
+import type { TableColumnCtx } from 'element-plus/es/components/table/src/table-column/defaults';
export default defineComponent({
- setup() {
-
- },
-})
+ components: { ElButton, ElInput,DailogAq,DailogKh},
+ setup() {
+ const ruleForm = reactive({});
+
+ // 下方导航与表格
+ const activeName = ref('1');
+ const activeNames = ref('1');
+ const handleClick = (tab: TabsPaneContext, event: Event) => {
+ console.log(tab, event);
+ };
+ const formatter = (row: User, column: TableColumnCtx<User>) => {
+ return row.address;
+ };
+
+ const tableData: User[] = [
+ {
+ date: '2016-05-03',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-02',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-04',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-01',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-08',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-06',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ {
+ date: '2016-05-07',
+ name: 'Tom',
+ address: 'No. 189, Grove St, Los Angeles',
+ },
+ ];
+ const currentPage4 = ref(4);
+ const pageSize4 = ref(100);
+ const small = ref(false);
+ const disabled = ref(false);
+ const background = ref(false);
+ const handleSizeChange = (val: number) => {
+ console.log(`${val} items per page`);
+ };
+ const handleCurrentChange = (val: number) => {
+ console.log(`current page: ${val}`);
+ };
+ const ShowAq=ref()
+ const openDai=()=>{
+ ShowAq.value.openDailog()
+ }
+ const ShowKh=ref()
+ const openDaiK=(name:string)=>{
+ if(name=='新建'){
+ ShowKh.value.openDailog(false)
+ }else{
+ ShowKh.value.openDailog(true)
+ }
+
+ }
+ return {
+ activeName,
+ activeNames,
+ handleClick,
+ tableData,
+ formatter,
+ currentPage4,
+ pageSize4,
+ handleSizeChange,
+ handleCurrentChange,
+ small,
+ disabled,
+ background,
+ ruleForm,
+ ShowAq,
+ openDai,
+ ShowKh,
+ openDaiK,
+ Plus,
+ Delete,
+ Upload,
+ Download,
+ Refresh,
+ View,
+ EditPen,
+ };
+ },
+});
</script>
+<style scoped>
+.minCenter {
+ width: 100%;
+ background-color: #fff;
+ margin-top: 10px;
+ padding: 0 20px;
+}
+.btns {
+ padding: 20px;
+}
+.topTitle {
+ padding: 5px 0 20px 0;
+ border-bottom: 1px solid #dedede;
+}
+.pages {
+ padding: 20px 0;
+ display: flex;
+ justify-content: right;
+}
+.tableC{
+ margin:0 10%;
+}
+</style>
diff --git a/src/views/goalManagement/processForms/processForms.vue b/src/views/goalManagement/processForms/processForms.vue
index d6ddaa1..403dbb4 100644
--- a/src/views/goalManagement/processForms/processForms.vue
+++ b/src/views/goalManagement/processForms/processForms.vue
@@ -1,4 +1,5 @@
<template>
+ <div>
<h4 class="title">胡海涛2022-07-01 16:08:42发起了目标检查上报(检查)--检查</h4>
<div class="box">
<el-menu
@@ -26,6 +27,7 @@
<div class="btns">
<el-button type="primary">发起上报</el-button>
</div>
+ </div>
</template>
<script lang="ts">
import { defineComponent, reactive, ref,onMounted } from 'vue';
diff --git a/src/views/goalManagement/safetyAssessment/index.vue b/src/views/goalManagement/safetyAssessment/index.vue
index 7a55320..5ac4928 100644
--- a/src/views/goalManagement/safetyAssessment/index.vue
+++ b/src/views/goalManagement/safetyAssessment/index.vue
@@ -1,4 +1,5 @@
<template>
+ <div>
<el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
<el-row>
<el-col :span="4">
@@ -59,6 +60,7 @@
</div>
<Dailog ref="openAdd"></Dailog>
</div>
+ </div>
</template>
<script lang="ts">
import Dailog from './component/Dailog.vue';
diff --git a/src/views/goalManagement/targetDecompositionMonth/index.vue b/src/views/goalManagement/targetDecompositionMonth/index.vue
index 4e34329..cf44651 100644
--- a/src/views/goalManagement/targetDecompositionMonth/index.vue
+++ b/src/views/goalManagement/targetDecompositionMonth/index.vue
@@ -1,4 +1,5 @@
<template>
+ <div>
<search></search>
<div class="minCenter">
<div class="btns">
@@ -77,6 +78,7 @@
</div>
</div>
<Dailog ref="Show"></Dailog>
+ </div>
</template>
<script lang="ts">
import search from '../targetSettings/component/search.vue'
diff --git a/src/views/goalManagement/targetDecompositionYear/index.vue b/src/views/goalManagement/targetDecompositionYear/index.vue
index b0c64bf..4260417 100644
--- a/src/views/goalManagement/targetDecompositionYear/index.vue
+++ b/src/views/goalManagement/targetDecompositionYear/index.vue
@@ -1,4 +1,5 @@
<template>
+ <div>
<search></search>
<div class="minCenter">
<div class="btns">
@@ -76,6 +77,7 @@
</div>
</div>
<Dailog ref="Show"></Dailog>
+ </div>
</template>
<script lang="ts">
import search from '../targetSettings/component/search.vue'
diff --git a/src/views/goalManagement/targetEscalation/index.vue b/src/views/goalManagement/targetEscalation/index.vue
index 1c6d1b6..1263f21 100644
--- a/src/views/goalManagement/targetEscalation/index.vue
+++ b/src/views/goalManagement/targetEscalation/index.vue
@@ -1,4 +1,5 @@
<template>
+ <div>
<search></search>
<div class="minCenter">
<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
@@ -40,6 +41,7 @@
</div>
</div>
<Dailog ref="Show"></Dailog>
+ </div>
</template>
<script lang="ts">
import search from '../targetSettings/component/search.vue';
diff --git a/src/views/goalManagement/targetImprovements/index.vue b/src/views/goalManagement/targetImprovements/index.vue
index d3b0d0a..1f9a7be 100644
--- a/src/views/goalManagement/targetImprovements/index.vue
+++ b/src/views/goalManagement/targetImprovements/index.vue
@@ -1,4 +1,5 @@
<template>
+<div>
<el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
<el-row>
<el-col :span="4">
@@ -6,11 +7,6 @@
<el-input v-model="ruleForm.pass" placeholder="安全目标指标" />
</el-form-item>
</el-col>
- <!-- <el-col :span="4">
- <el-form-item>
- <el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
- </el-form-item>
- </el-col> -->
<el-col :span="4">
<el-form-item>
<el-button type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
@@ -164,6 +160,7 @@
</el-tabs>
</div>
<Dailogprove ref="Show"></Dailogprove>
+ </div>
</template>
<script lang="ts">
import { ref, toRefs, reactive, onMounted, defineComponent } from 'vue';
diff --git a/src/views/goalManagement/targetSettings/index.vue b/src/views/goalManagement/targetSettings/index.vue
index f730b45..3fea760 100644
--- a/src/views/goalManagement/targetSettings/index.vue
+++ b/src/views/goalManagement/targetSettings/index.vue
@@ -1,4 +1,5 @@
<template>
+<div>
<search></search>
<div class="minCenter">
<el-tabs
@@ -9,7 +10,7 @@
<div class="btns">
<div>
<el-button type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
- <el-button type="danger" :icon="Delete">删除</el-button>
+ <el-button type="danger" :icon="Delete" plain>删除</el-button>
</div>
<div>
<el-button :icon="Upload" @click="upButton"></el-button>
@@ -114,10 +115,11 @@
<dailogAdd ref="openAdd"></dailogAdd>
<upData ref="upShow"></upData>
</div>
+ </div>
</template>
<script lang="ts">
import dailogAdd from './component/dailogAdd.vue'
-import upData from './component/updata.vue'
+import upData from '../../../components/updata/updata.vue'
import search from './component/search.vue'
import { ref, toRefs, reactive, onMounted, defineComponent } from "vue";
import {
--
Gitblit v1.9.2