已重命名3个文件
已修改1个文件
已添加3个文件
已删除2个文件
已复制2个文件
| | |
| | | button:'121231' |
| | | }, |
| | | }, |
| | | { |
| | | path: '/team', |
| | | name: 'team', |
| | | component: () => import('/@/views/contingency/team/index.vue'), |
| | | meta: { |
| | | title: 'message.router.team', |
| | | isLink: '', |
| | | isHide: false, |
| | | isKeepAlive: true, |
| | | isAffix: true, |
| | | isIframe: false, |
| | | roles: ['admin', 'common'], |
| | | icon: 'iconfont icon-shouye', |
| | | button:'121231' |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | ]; |
对比新文件 |
| | |
| | | <template> |
| | | <div class="system-edit-user-container"> |
| | | <el-dialog |
| | | title="新建应急队伍人员" |
| | | v-model="isShowDialog" |
| | | width="769px" |
| | | draggable |
| | | > |
| | | <el-form |
| | | ref="ruleFormRef" |
| | | :model="ruleForm" |
| | | size="default" |
| | | :rules="rules" |
| | | label-width="90px"> |
| | | <el-row :gutter="35"> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="选择人员" prop="selectPeople"> |
| | | <el-input |
| | | v-model="ruleForm.selectPeople" |
| | | placeholder="请选择" |
| | | class="input-with-select" |
| | | > |
| | | <template #append> |
| | | <el-button :icon="Search"/> |
| | | </template> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="人员工号" prop="jobNumber"> |
| | | <el-input v-model="ruleForm.jobNumber" placeholder="请填写人员工号"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="人员名称" prop="personnelName"> |
| | | <el-input v-model="ruleForm.personnelName" placeholder="请填写人员名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="人员性别" prop="personnelGender"> |
| | | <el-radio-group v-model="ruleForm.personnelGender"> |
| | | <el-radio label="男" /> |
| | | <el-radio label="女" /> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="手机号码" prop="phone"> |
| | | <el-input v-model="ruleForm.phone" placeholder="请填写手机号码"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="职位" prop="position"> |
| | | <el-input v-model="ruleForm.position" placeholder="请填写职位"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">继续添加</el-button> |
| | | <el-button size="default" @click="onCancel">关闭</el-button> |
| | | <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">确定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | | import { |
| | | ref, |
| | | reactive, |
| | | defineComponent |
| | | } from 'vue'; |
| | | |
| | | import type { |
| | | FormRules, |
| | | FormInstance, |
| | | } from 'element-plus' |
| | | |
| | | import { |
| | | Search |
| | | } from '@element-plus/icons-vue' |
| | | |
| | | export default defineComponent({ |
| | | name: 'addTeamLeader', |
| | | components: { |
| | | // Search, |
| | | }, |
| | | setup() { |
| | | const isShowDialog = ref(false) |
| | | const ruleFormRef = ref<FormInstance>() |
| | | const ruleForm = reactive({ |
| | | selectPeople: '', // 选择人员 |
| | | jobNumber: '', //人员工号 |
| | | personnelName: '', // 人员名称 |
| | | personnelGender: '', // 人员性别 |
| | | phone: '', // 手机号码 |
| | | position: '', // 职位 |
| | | }); |
| | | const rules = reactive<FormRules>({ |
| | | jobNumber: [ |
| | | { |
| | | required: true, |
| | | message: '人员工号不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | personnelName: [ |
| | | { |
| | | required: true, |
| | | message: '人员名称不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | personnelGender: [ |
| | | { |
| | | required: true, |
| | | message: '人员性别不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | phone: [ |
| | | { |
| | | required: true, |
| | | message: '手机号码不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | position: [ |
| | | { |
| | | required: true, |
| | | message: '职位不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | }) |
| | | const submitForm = async (formEl: FormInstance | undefined) => { |
| | | if (!formEl) return |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | console.log('submit!') |
| | | } else { |
| | | console.log('error submit!', fields) |
| | | } |
| | | }) |
| | | } |
| | | // 打开弹窗 |
| | | const openDialog = () => { |
| | | isShowDialog.value = true; |
| | | }; |
| | | // 关闭弹窗 |
| | | const closeDialog = () => { |
| | | isShowDialog.value = false; |
| | | }; |
| | | // 取消 |
| | | const onCancel = () => { |
| | | closeDialog(); |
| | | }; |
| | | return { |
| | | openDialog, |
| | | closeDialog, |
| | | isShowDialog, |
| | | ruleFormRef, |
| | | submitForm, |
| | | onCancel, |
| | | ruleForm, |
| | | rules, |
| | | Search, |
| | | }; |
| | | }, |
| | | }); |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .textarea{ |
| | | height: 168px!important; |
| | | } |
| | | .textarea ::v-deep .el-textarea__inner{ |
| | | height: 168px!important; |
| | | } |
| | | ::v-deep .el-table__cell { |
| | | font-weight: 400; |
| | | } |
| | | </style> |
对比新文件 |
| | |
| | | <template> |
| | | <div class="system-edit-user-container"> |
| | | <el-dialog |
| | | title="新建应急队伍人员" |
| | | v-model="isShowDialog" |
| | | width="769px" |
| | | draggable |
| | | > |
| | | <el-form |
| | | ref="ruleFormRef" |
| | | :model="ruleForm" |
| | | size="default" |
| | | :rules="rules" |
| | | label-width="90px"> |
| | | <el-row :gutter="35"> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="选择人员" prop="selectPeople"> |
| | | <el-input |
| | | v-model="ruleForm.selectPeople" |
| | | placeholder="请选择" |
| | | class="input-with-select" |
| | | > |
| | | <template #append> |
| | | <el-button :icon="Search"/> |
| | | </template> |
| | | </el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="人员工号" prop="jobNumber"> |
| | | <el-input v-model="ruleForm.jobNumber" placeholder="请填写人员工号"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="人员名称" prop="personnelName"> |
| | | <el-input v-model="ruleForm.personnelName" placeholder="请填写人员名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="人员性别" prop="personnelGender"> |
| | | <el-radio-group v-model="ruleForm.personnelGender"> |
| | | <el-radio label="男" /> |
| | | <el-radio label="女" /> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="手机号码" prop="phone"> |
| | | <el-input v-model="ruleForm.phone" placeholder="请填写手机号码"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="职位" prop="position"> |
| | | <el-input v-model="ruleForm.position" placeholder="请填写职位"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">继续添加</el-button> |
| | | <el-button size="default" @click="onCancel">关闭</el-button> |
| | | <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">确定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | | import { |
| | | ref, |
| | | reactive, |
| | | toRefs, |
| | | defineComponent |
| | | } from 'vue'; |
| | | |
| | | import type { |
| | | FormRules, |
| | | FormInstance, |
| | | } from 'element-plus' |
| | | |
| | | import { |
| | | Search |
| | | } from '@element-plus/icons-vue' |
| | | // 定义接口来定义对象的类型 |
| | | interface DeptData { |
| | | deptName: string; |
| | | createTime: string; |
| | | status: boolean; |
| | | sort: number | string; |
| | | describe: string; |
| | | id: number; |
| | | children?: DeptData[]; |
| | | } |
| | | |
| | | interface RuleFormRow { |
| | | // teamName: string; |
| | | // teamLevel: string; |
| | | // teamLeader: string; |
| | | // responsibleDepartment: any |
| | | // teamPhone: string; |
| | | // telephone: string; |
| | | // describe: string; |
| | | // selectPeople: string |
| | | } |
| | | interface UserState { |
| | | isShowDialog: boolean; |
| | | ruleForm: RuleFormRow; |
| | | deptData: Array<DeptData>; |
| | | } |
| | | export default defineComponent({ |
| | | name: 'editTeamLeader', |
| | | components: { |
| | | // Search, |
| | | }, |
| | | setup() { |
| | | const state = reactive<UserState>({ |
| | | isShowDialog: false, |
| | | ruleForm: { |
| | | selectPeople:'', //选择人员 |
| | | jobNumber: '', // 人员工号 |
| | | phone: '', // 手机号码 |
| | | personnelGender: '', //人员性别 |
| | | position: '', //职位 |
| | | personnelName: '', // 人员名称 |
| | | }, |
| | | deptData: [], // 部门数据 |
| | | }); |
| | | // const isShowDialog = ref(false) |
| | | const ruleFormRef = ref<FormInstance>() |
| | | // 打开弹窗 |
| | | const openDialog = (row: RuleFormRow) => { |
| | | // isShowDialog.value = true; |
| | | state.ruleForm = row; |
| | | state.isShowDialog = true; |
| | | }; |
| | | // 关闭弹窗 |
| | | const closeDialog = () => { |
| | | // isShowDialog.value = false; |
| | | state.isShowDialog = false; |
| | | }; |
| | | // 取消 |
| | | const onCancel = () => { |
| | | closeDialog(); |
| | | }; |
| | | const rules = reactive<FormRules>({ |
| | | selectPeople:[ |
| | | { |
| | | required: true, |
| | | message: '人员不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | jobNumber: [ |
| | | { |
| | | required: true, |
| | | message: '人员工号不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | personnelName: [ |
| | | { |
| | | required: true, |
| | | message: '人员名称不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | personnelGender: [ |
| | | { |
| | | required: true, |
| | | message: '人员性别不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | phone: [ |
| | | { |
| | | required: true, |
| | | message: '手机号码不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | position: [ |
| | | { |
| | | required: true, |
| | | message: '职位不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | }) |
| | | const submitForm = async (formEl: FormInstance | undefined) => { |
| | | if (!formEl) return |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | console.log('submit!') |
| | | } else { |
| | | console.log('error submit!', fields) |
| | | } |
| | | }) |
| | | } |
| | | return { |
| | | openDialog, |
| | | closeDialog, |
| | | // isShowDialog, |
| | | ruleFormRef, |
| | | submitForm, |
| | | onCancel, |
| | | rules, |
| | | Search, |
| | | ...toRefs(state), |
| | | }; |
| | | }, |
| | | }); |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .textarea{ |
| | | height: 168px!important; |
| | | } |
| | | .textarea ::v-deep .el-textarea__inner{ |
| | | height: 168px!important; |
| | | } |
| | | ::v-deep .el-table__cell { |
| | | font-weight: 400; |
| | | } |
| | | </style> |
copy from src/views/contingency/component/openSee.vue
copy to src/views/contingencyManagement/contingency/component/openAdd.vue
文件从 src/views/contingency/component/openSee.vue 复制 |
| | |
| | | <template> |
| | | <div class="system-edit-user-container"> |
| | | <el-dialog title="查看应急队伍管理" v-model="isShowDialog" width="769px"> |
| | | <el-form :model="ruleForm" size="default" label-width="90px"> |
| | | <el-dialog |
| | | title="新建应急队伍管理" |
| | | v-model="isShowDialog" |
| | | width="769px" |
| | | draggable |
| | | > |
| | | <el-form |
| | | ref="ruleFormRef" |
| | | :model="ruleForm" |
| | | size="default" |
| | | :rules="rules" |
| | | label-width="120px" |
| | | > |
| | | <el-row :gutter="35"> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="队伍名称"> |
| | | <el-input v-model="ruleForm.teamName" :disabled="true"></el-input> |
| | | <el-form-item label="队伍名称" prop="teamName"> |
| | | <el-input v-model="ruleForm.teamName" placeholder="请填写队伍名称"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="队伍级别"> |
| | | <el-select v-model="ruleForm.teamLevel" :disabled="true" class="w100"> |
| | | <el-form-item label="队伍级别" prop="teamLevel"> |
| | | <el-select v-model="ruleForm.teamLevel" class="w100" placeholder="请选择"> |
| | | <el-option label="公司" value="admin"></el-option> |
| | | <el-option label="分厂-车间" value="common"></el-option> |
| | | <el-option label="工序-班组等" value="shang"></el-option> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="队伍负责人"> |
| | | <el-form-item label="队伍负责人" prop="teamLeader"> |
| | | <el-input |
| | | v-model="ruleForm.teamLeader" |
| | | placeholder="Please input" |
| | | placeholder="请选择" |
| | | class="input-with-select" |
| | | :disabled="true" |
| | | > |
| | | <template #append> |
| | | <el-button :icon="Search"/> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="负责人部门"> |
| | | <el-tree-select v-model="ruleForm.responsibleDepartment" :data="data" :disabled="true" class="w100"/> |
| | | <el-form-item label="负责人部门" prop="responsibleDepartment"> |
| | | <el-tree-select |
| | | v-model="ruleForm.responsibleDepartment" |
| | | :data="data" class="w100" |
| | | placeholder="请选择"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="负责人手机"> |
| | | <el-input v-model="ruleForm.teamPhone" :disabled="true"></el-input> |
| | | <el-form-item label="负责人手机" prop="teamPhone"> |
| | | <el-input v-model="ruleForm.teamPhone" placeholder="请填写负责人手机"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="固定电话"> |
| | | <el-input v-model="ruleForm.telephone" :disabled="true"></el-input> |
| | | <el-form-item label="固定电话" prop="telephone"> |
| | | <el-input v-model="ruleForm.telephone" placeholder="请填写固定电话"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | | <el-form-item label="队伍描述"> |
| | | <el-input class="textarea" v-model="ruleForm.describe" type="textarea" :disabled="true" maxlength="150"></el-input> |
| | | <el-input |
| | | class="textarea" |
| | | v-model="ruleForm.describe" |
| | | type="textarea" |
| | | maxlength="150" |
| | | placeholder="请填写队伍描述" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | |
| | | action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" |
| | | :on-change="handleChange" |
| | | > |
| | | <el-button type="primary" disabled |
| | | <el-button type="primary" |
| | | >点击上传</el-button> |
| | | <template #tip> |
| | | <div class="el-upload__tip"> |
| | |
| | | <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | | <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> |
| | | <el-tab-pane label="应急队伍人员" name="first"> |
| | | <el-button type="primary" size="default" disabled>新增</el-button> |
| | | <el-button type="primary" size="default" @click="onAddEmergencyPersonnel">新增</el-button> |
| | | <el-table |
| | | :data="tableData" |
| | | style="width: 100%;margin-top: 15px;" |
| | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="onCancel" size="default">关闭</el-button> |
| | | <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">确定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | <!-- <AddTeamLeader ref="addRef" />--> |
| | | <AddEmergencyPersonnel ref="addRef" /> |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | | import { reactive, toRefs, ref, onMounted, defineComponent } from 'vue'; |
| | | import { reactive, |
| | | ref, |
| | | defineComponent |
| | | } from 'vue'; |
| | | |
| | | import type { |
| | | UploadUserFile, |
| | | TabsPaneContext, |
| | | FormInstance, |
| | | FormRules, |
| | | } from 'element-plus' |
| | | |
| | | import { |
| | | Search |
| | | } from '@element-plus/icons-vue' |
| | | // import AddTeamLeader from '/@/views/contingency/component/addTeamLeader.vue'; |
| | | // 定义接口来定义对象的类型 |
| | | interface DeptData { |
| | | deptName: string; |
| | | createTime: string; |
| | | status: boolean; |
| | | sort: number | string; |
| | | describe: string; |
| | | id: number; |
| | | children?: DeptData[]; |
| | | } |
| | | interface RuleFormRow { |
| | | teamName: string; |
| | | teamLevel: string; |
| | | teamLeader: string; |
| | | department: any; |
| | | phone: string; |
| | | telephone: string; |
| | | describe: string; |
| | | } |
| | | interface UserState { |
| | | isShowDialog: boolean; |
| | | ruleForm: RuleFormRow; |
| | | deptData: Array<DeptData>; |
| | | } |
| | | import AddEmergencyPersonnel from "/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue"; |
| | | // 定义表格数据类型 |
| | | interface User { |
| | | personnelName: string |
| | |
| | | phone: string; |
| | | position: string; |
| | | } |
| | | // // 定义表格数据类型 |
| | | // interface Team { |
| | | // personnelName: string |
| | | // teamLevel: string |
| | | // teamDescription: string |
| | | // teamPhone: string |
| | | // phone: string; |
| | | // describe: string; |
| | | // responsibleDepartment: string |
| | | // } |
| | | export default defineComponent({ |
| | | name: 'openSee', |
| | | name: 'openAdd', |
| | | components: { |
| | | // Search, |
| | | AddEmergencyPersonnel |
| | | }, |
| | | setup() { |
| | | const state = reactive<UserState>({ |
| | | isShowDialog: false, |
| | | ruleForm: { |
| | | const isShowDialog = ref(false) |
| | | |
| | | const ruleFormRef = ref<FormInstance>() |
| | | //定义表单 |
| | | const ruleForm = reactive({ |
| | | teamName: '', // 队伍名称 |
| | | teamLevel: '', // 队伍级别 |
| | | teamLeader: '', //队伍负责人 |
| | | department: [], // 负责人部门 |
| | | phone: '', // 负责人手机 |
| | | telephone: '', // 固定电话 |
| | | describe: '', // 队伍描述 |
| | | }, |
| | | deptData: [], // 部门数据 |
| | | }); |
| | | // 打开弹窗 |
| | | const openDialog = (row: RuleFormRow) => { |
| | | state.ruleForm = row; |
| | | state.isShowDialog = true; |
| | | const openDialog = () => { |
| | | // state.ruleForm = row; |
| | | isShowDialog.value = true; |
| | | }; |
| | | // 关闭弹窗 |
| | | const closeDialog = () => { |
| | | state.isShowDialog = false; |
| | | isShowDialog.value = false; |
| | | }; |
| | | // 取消 |
| | | const onCancel = () => { |
| | | closeDialog(); |
| | | }; |
| | | // 初始化部门数据 |
| | | const initTableData = () => { |
| | | state.deptData.push({ |
| | | deptName: 'vueNextAdmin', |
| | | createTime: new Date().toLocaleString(), |
| | | status: true, |
| | | sort: Math.random(), |
| | | describe: '顶级部门', |
| | | id: Math.random(), |
| | | children: [ |
| | | { |
| | | deptName: 'IT外包服务', |
| | | createTime: new Date().toLocaleString(), |
| | | status: true, |
| | | sort: Math.random(), |
| | | describe: '总部', |
| | | id: Math.random(), |
| | | }, |
| | | { |
| | | deptName: '资本控股', |
| | | createTime: new Date().toLocaleString(), |
| | | status: true, |
| | | sort: Math.random(), |
| | | describe: '分部', |
| | | id: Math.random(), |
| | | }, |
| | | ], |
| | | }); |
| | | }; |
| | | // 页面加载时 |
| | | onMounted(() => { |
| | | initTableData(); |
| | | }); |
| | | // 上传附件 |
| | | const fileList = ref<UploadUserFile[]>([]) |
| | | |
| | |
| | | |
| | | //定义表格数据 |
| | | const multipleSelection = ref<User[]>([]) |
| | | const tableData: User[] = [ |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | }, |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | }, |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | }, |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | } |
| | | ] |
| | | const tableData: User[] = [] |
| | | |
| | | // //添加队伍负责人 |
| | | // const addRef = ref(); |
| | | // //添加队伍负责人弹窗 |
| | | // const onAddTeamLeader = () => { |
| | | // addRef.value.openDialog(); |
| | | // }; |
| | | //添加队伍负责人弹窗 |
| | | const addRef = ref(); |
| | | const onAddEmergencyPersonnel = () => { |
| | | addRef.value.openDialog(); |
| | | }; |
| | | // 必填项提示 |
| | | const rules = reactive<FormRules>({ |
| | | teamName: [ |
| | | { |
| | | required: true, |
| | | message: '队伍名称不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | teamLevel: [ |
| | | { |
| | | required: true, |
| | | message: '队伍级别不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | teamLeader: [ |
| | | { |
| | | required: true, |
| | | message: '队伍负责人不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | responsibleDepartment: [ |
| | | { |
| | | required: true, |
| | | message: '负责人部门不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | teamPhone: [ |
| | | { |
| | | required: true, |
| | | message: '负责人手机不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | telephone: [ |
| | | { |
| | | required: true, |
| | | message: '固定电话不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | }) |
| | | // 表单提交验证必填项 |
| | | const submitForm = async (formEl: FormInstance | undefined) => { |
| | | if (!formEl) return |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | console.log('submit!') |
| | | } else { |
| | | console.log('error submit!', fields) |
| | | } |
| | | }) |
| | | } |
| | | return { |
| | | openDialog, |
| | | closeDialog, |
| | | isShowDialog, |
| | | onCancel, |
| | | fileList, |
| | | responsibleDepartment, |
| | |
| | | tableData, |
| | | multipleSelection, |
| | | Search, |
| | | // addRef, |
| | | // onAddTeamLeader, |
| | | ...toRefs(state), |
| | | ruleForm, |
| | | ruleFormRef, |
| | | submitForm, |
| | | rules, |
| | | addRef, |
| | | onAddEmergencyPersonnel, |
| | | }; |
| | | }, |
| | | }); |
copy from src/views/contingency/component/openSee.vue
copy to src/views/contingencyManagement/contingency/component/openEdit.vue
文件从 src/views/contingency/component/openSee.vue 复制 |
| | |
| | | <template> |
| | | <div class="system-edit-user-container"> |
| | | <el-dialog title="查看应急队伍管理" v-model="isShowDialog" width="769px"> |
| | | <el-form :model="ruleForm" size="default" label-width="90px"> |
| | | <el-dialog title="编辑应急队伍管理" v-model="isShowDialog" width="769px"> |
| | | <el-form |
| | | ref="ruleFormRef" |
| | | :rules="rules" |
| | | :model="ruleForm" |
| | | size="default" |
| | | label-width="120px" |
| | | > |
| | | <el-row :gutter="35"> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="队伍名称"> |
| | | <el-input v-model="ruleForm.teamName" :disabled="true"></el-input> |
| | | <el-form-item label="队伍名称" prop="teamName"> |
| | | <el-input v-model="ruleForm.teamName"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="队伍级别"> |
| | | <el-select v-model="ruleForm.teamLevel" :disabled="true" class="w100"> |
| | | <el-form-item label="队伍级别" prop="teamLevel"> |
| | | <el-select v-model="ruleForm.teamLevel" class="w100"> |
| | | <el-option label="公司" value="admin"></el-option> |
| | | <el-option label="分厂-车间" value="common"></el-option> |
| | | <el-option label="工序-班组等" value="shang"></el-option> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="队伍负责人"> |
| | | <el-form-item label="队伍负责人" prop="teamLeader"> |
| | | <el-input |
| | | v-model="ruleForm.teamLeader" |
| | | placeholder="Please input" |
| | | placeholder="请选择" |
| | | class="input-with-select" |
| | | :disabled="true" |
| | | > |
| | | <template #append> |
| | | <el-button :icon="Search"/> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="负责人部门"> |
| | | <el-tree-select v-model="ruleForm.responsibleDepartment" :data="data" :disabled="true" class="w100"/> |
| | | <el-form-item label="负责人部门" prop="responsibleDepartment"> |
| | | <el-tree-select v-model="ruleForm.responsibleDepartment" :data="data" class="w100"/> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="负责人手机"> |
| | | <el-input v-model="ruleForm.teamPhone" :disabled="true"></el-input> |
| | | <el-form-item label="负责人手机" prop="teamPhone"> |
| | | <el-input v-model="ruleForm.teamPhone"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | | <el-form-item label="固定电话"> |
| | | <el-input v-model="ruleForm.telephone" :disabled="true"></el-input> |
| | | <el-form-item label="固定电话" prop="telephone"> |
| | | <el-input v-model="ruleForm.telephone"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | | <el-form-item label="队伍描述"> |
| | | <el-input class="textarea" v-model="ruleForm.describe" type="textarea" :disabled="true" maxlength="150"></el-input> |
| | | <el-input |
| | | class="textarea" |
| | | v-model="ruleForm.describe" |
| | | type="textarea" |
| | | maxlength="150" |
| | | placeholder="请填写队伍描述" |
| | | ></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | |
| | | action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15" |
| | | :on-change="handleChange" |
| | | > |
| | | <el-button type="primary" disabled |
| | | >点击上传</el-button> |
| | | <el-button type="primary">点击上传</el-button> |
| | | <template #tip> |
| | | <div class="el-upload__tip"> |
| | | 添加相关附件 |
| | |
| | | <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | | <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> |
| | | <el-tab-pane label="应急队伍人员" name="first"> |
| | | <el-button type="primary" size="default" disabled>新增</el-button> |
| | | <el-button type="primary" size="default" @click="onAddEmergencyPersonnel">新增</el-button> |
| | | <el-table |
| | | :data="tableData" |
| | | style="width: 100%;margin-top: 15px;" |
| | | ref="multipleTableRef" |
| | | :header-cell-style="{background:'#f6f7fa',color:'#909399'}" |
| | | > |
| | | <el-table-column prop="jobNo" label="人员工号" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="jobNumber" label="人员工号" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="personnelName" label="人员名称" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="phone" label="手机号码" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="position" label="职位" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="操作" width="200" align="center"> |
| | | <template #default="scope"> |
| | | <el-button disabled size="small" text="plain" >查看 |
| | | <el-button size="small" type="primary" text="plain" >查看 |
| | | </el-button> |
| | | <el-button disabled size="small" text="plain" style="margin-right: 5px;">编辑 |
| | | <el-button size="small" type="primary" text="plain" @click="onEditEmergencyPersonnel" style="margin-right: 5px;">编辑 |
| | | </el-button> |
| | | <el-button disabled size="small" text="plain" style="margin-right: 5px;">删除 |
| | | <el-button size="small" type="primary" text="plain" style="margin-right: 5px;">删除 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="onCancel" size="default">关闭</el-button> |
| | | <el-button size="default" type="primary" @click="submitForm(ruleFormRef)">确定</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | | <!-- <AddTeamLeader ref="addRef" />--> |
| | | <AddEmergencyPersonnel ref="addRef" /> |
| | | <EditEmergencyPersonnel ref="editRef" /> |
| | | |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | | import { reactive, toRefs, ref, onMounted, defineComponent } from 'vue'; |
| | | import { |
| | | reactive, |
| | | toRefs, |
| | | ref, |
| | | onMounted, |
| | | defineComponent |
| | | } from 'vue'; |
| | | import type { |
| | | UploadUserFile, |
| | | TabsPaneContext, |
| | | FormInstance, |
| | | FormRules, |
| | | } from 'element-plus' |
| | | import { |
| | | Search |
| | | } from '@element-plus/icons-vue' |
| | | // import AddTeamLeader from '/@/views/contingency/component/addTeamLeader.vue'; |
| | | import AddEmergencyPersonnel from "/@/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue"; |
| | | import EditEmergencyPersonnel from "/@/views/contingencyManagement/contingency/component/editEmergencyPersonnel.vue"; |
| | | // 定义表格数据类型 |
| | | interface User { |
| | | personnelName: string |
| | | jobNumber: string |
| | | phone: string; |
| | | position: string; |
| | | } |
| | | // 定义接口来定义对象的类型 |
| | | interface DeptData { |
| | | deptName: string; |
| | |
| | | children?: DeptData[]; |
| | | } |
| | | interface RuleFormRow { |
| | | teamName: string; |
| | | teamLevel: string; |
| | | teamLeader: string; |
| | | department: any; |
| | | // teamName: string; |
| | | // teamLevel: string; |
| | | // teamLeader: string; |
| | | // responsibleDepartment: any |
| | | // teamPhone: string; |
| | | // telephone: string; |
| | | // describe: string; |
| | | selectPeople:string |
| | | jobNumber: string; |
| | | personnelName: string; |
| | | personnelGender: string; |
| | | phone: string; |
| | | telephone: string; |
| | | describe: string; |
| | | position: string; |
| | | } |
| | | interface UserState { |
| | | isShowDialog: boolean; |
| | | ruleForm: RuleFormRow; |
| | | deptData: Array<DeptData>; |
| | | } |
| | | // 定义表格数据类型 |
| | | interface User { |
| | | personnelName: string |
| | | jobNo: string |
| | | phone: string; |
| | | position: string; |
| | | } |
| | | // // 定义表格数据类型 |
| | | // interface Team { |
| | | // personnelName: string |
| | | // teamLevel: string |
| | | // teamDescription: string |
| | | // teamPhone: string |
| | | // phone: string; |
| | | // describe: string; |
| | | // responsibleDepartment: string |
| | | // } |
| | | |
| | | export default defineComponent({ |
| | | name: 'openSee', |
| | | name: 'openEdit', |
| | | components: { |
| | | // Search, |
| | | AddEmergencyPersonnel, |
| | | EditEmergencyPersonnel |
| | | }, |
| | | setup() { |
| | | const state = reactive<UserState>({ |
| | | isShowDialog: false, |
| | | ruleForm: { |
| | | teamName: '', // 队伍名称 |
| | | teamLevel: '', // 队伍级别 |
| | | teamLeader: '', //队伍负责人 |
| | | department: [], // 负责人部门 |
| | | phone: '', // 负责人手机 |
| | | telephone: '', // 固定电话 |
| | | describe: '', // 队伍描述 |
| | | selectPeople:'111', //选择人员 |
| | | jobNumber: '', // 人员工号 |
| | | phone: '', // 手机号码 |
| | | personnelGender: '', //人员性别 |
| | | position: '', //职位 |
| | | personnelName: '', // 人员名称 |
| | | }, |
| | | deptData: [], // 部门数据 |
| | | }); |
| | | // 打开弹窗 |
| | | const openDialog = (row: RuleFormRow) => { |
| | | state.ruleForm = row; |
| | | state.isShowDialog = true; |
| | | }; |
| | | |
| | | // 关闭弹窗 |
| | | const closeDialog = () => { |
| | | state.isShowDialog = false; |
| | |
| | | const onCancel = () => { |
| | | closeDialog(); |
| | | }; |
| | | // // 新增 |
| | | // const onSubmit = () => { |
| | | // closeDialog(); |
| | | // }; |
| | | // 初始化部门数据 |
| | | const initTableData = () => { |
| | | state.deptData.push({ |
| | |
| | | const handleClick = (tab: TabsPaneContext, event: Event) => { |
| | | console.log(tab, event) |
| | | } |
| | | //添加队伍负责人弹窗 |
| | | const addRef = ref(); |
| | | const onAddEmergencyPersonnel = () => { |
| | | addRef.value.openDialog(); |
| | | }; |
| | | |
| | | //定义表格数据 |
| | | const multipleSelection = ref<User[]>([]) |
| | | const tableData: User[] = [ |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | jobNumber: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | }, |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | jobNumber: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | }, |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | jobNumber: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | }, |
| | | { |
| | | personnelName: '张志刚', |
| | | jobNo: '1037', |
| | | jobNumber: '1037', |
| | | position: '副组长', |
| | | phone: '13673321356', |
| | | } |
| | | ] |
| | | // 必填项提示 |
| | | const rules = reactive<FormRules>({ |
| | | teamName: [ |
| | | { |
| | | required: true, |
| | | message: '队伍名称不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | teamLevel: [ |
| | | { |
| | | required: true, |
| | | message: '队伍级别不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | teamLeader: [ |
| | | { |
| | | required: true, |
| | | message: '队伍负责人不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | responsibleDepartment: [ |
| | | { |
| | | required: true, |
| | | message: '负责人部门不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | teamPhone: [ |
| | | { |
| | | required: true, |
| | | message: '负责人手机不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | telephone: [ |
| | | { |
| | | required: true, |
| | | message: '固定电话不能为空', |
| | | trigger: 'change', |
| | | }, |
| | | ], |
| | | }) |
| | | |
| | | // //添加队伍负责人 |
| | | // const addRef = ref(); |
| | | // //添加队伍负责人弹窗 |
| | | // const onAddTeamLeader = () => { |
| | | // addRef.value.openDialog(); |
| | | // }; |
| | | const ruleFormRef = ref<FormInstance>() |
| | | // 打开弹窗 |
| | | const openDialog = (row: RuleFormRow) => { |
| | | state.ruleForm = row; |
| | | state.isShowDialog = true; |
| | | }; |
| | | // 表单提交验证必填项 |
| | | const submitForm = async (formEl: FormInstance | undefined) => { |
| | | if (!formEl) return |
| | | await formEl.validate((valid, fields) => { |
| | | if (valid) { |
| | | console.log('submit!') |
| | | } else { |
| | | console.log('error submit!', fields) |
| | | } |
| | | }) |
| | | } |
| | | //表格编辑弹窗 |
| | | const editRef = ref(); |
| | | const onEditEmergencyPersonnel = () => { |
| | | editRef.value.openDialog(); |
| | | }; |
| | | return { |
| | | openDialog, |
| | | closeDialog, |
| | | onCancel, |
| | | // onSubmit, |
| | | fileList, |
| | | responsibleDepartment, |
| | | data, |
| | | activeName, |
| | | handleClick, |
| | | tableData, |
| | | multipleSelection, |
| | | onAddEmergencyPersonnel, |
| | | onEditEmergencyPersonnel, |
| | | addRef, |
| | | editRef, |
| | | submitForm, |
| | | Search, |
| | | // addRef, |
| | | // onAddTeamLeader, |
| | | rules, |
| | | ruleFormRef, |
| | | tableData, |
| | | ...toRefs(state), |
| | | }; |
| | | }, |
| | |
| | | } |
| | | .textarea ::v-deep .el-textarea__inner{ |
| | | height: 168px!important; |
| | | } |
| | | ::v-deep .el-table__cell { |
| | | font-weight: 400; |
| | | } |
| | | </style> |
文件名从 src/views/contingency/component/openSee.vue 修改 |
| | |
| | | <template> |
| | | <div class="system-edit-user-container"> |
| | | <el-dialog title="查看应急队伍管理" v-model="isShowDialog" width="769px"> |
| | | <el-dialog |
| | | title="查看应急队伍管理" |
| | | v-model="isShowDialog" |
| | | width="769px" |
| | | draggable |
| | | > |
| | | <el-form :model="ruleForm" size="default" label-width="90px"> |
| | | <el-row :gutter="35"> |
| | | <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20"> |
| | |
| | | import { |
| | | Search |
| | | } from '@element-plus/icons-vue' |
| | | // import AddTeamLeader from '/@/views/contingency/component/addTeamLeader.vue'; |
| | | // import AddTeamLeader from '/@/views/contingency/component/addEmergencyPersonnel.vue'; |
| | | // 定义接口来定义对象的类型 |
| | | interface DeptData { |
| | | deptName: string; |
对比新文件 |
| | |
| | | <template> |
| | | <el-dialog |
| | | v-model="dialogVisible" |
| | | title="导入Excel" |
| | | width="50%" |
| | | draggable |
| | | > |
| | | <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 size="default">下载模板</el-button> |
| | | <el-button size="default" type="primary">点击上传</el-button> |
| | | <template #tip> |
| | | <div class="el-upload__tip"> |
| | | 只允许导入“xls”或“xlsx”格式文件! |
| | | </div> |
| | | </template> |
| | | </el-upload> |
| | | </el-dialog> |
| | | </template> |
| | | <script lang="ts"> |
| | | import { ref, |
| | | defineComponent, |
| | | } from "vue"; |
| | | import { |
| | | ElMessage, |
| | | ElMessageBox |
| | | } from "element-plus"; |
| | | import type { |
| | | UploadProps, |
| | | UploadUserFile, |
| | | } from "element-plus"; |
| | | |
| | | export default defineComponent({ |
| | | setup() { |
| | | let dialogVisible =ref<boolean>(false) |
| | | 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 |
| | | ); |
| | | }; |
| | | // 打开弹窗 |
| | | const openDialog = (type:string,value:any,projectList: any,projectId:string) => { |
| | | dialogVisible.value=true |
| | | } |
| | | return { |
| | | dialogVisible, |
| | | fileList, |
| | | handleRemove, |
| | | handlePreview, |
| | | handleExceed, |
| | | beforeRemove, |
| | | openDialog, |
| | | }; |
| | | }, |
| | | }); |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .el-upload__tip{ |
| | | margin-left: 100px; |
| | | margin-top: 20px; |
| | | } |
| | | ::v-deep .el-dialog__header{ |
| | | border-bottom: 1px solid #e8e8e8; |
| | | } |
| | | </style> |
文件名从 src/views/contingency/team/index.vue 修改 |
| | |
| | | <div class="system-user-container"> |
| | | <el-card shadow="hover"> |
| | | <div class="system-user-search mb15"> |
| | | <el-input size="default" placeholder="队伍名称" style="max-width: 215px;"> </el-input> |
| | | <el-select size="default" v-model="value" placeholder="请选择队伍级别" class="ml10" style="max-width: 215px;"> |
| | | <el-option label="公司" value="shanghai"></el-option> |
| | | <el-option label="分厂-车间" value="beijing"></el-option> |
| | | <el-option label="工序-班组等" value="beijing"></el-option> |
| | | <!-- <el-option--> |
| | | <!-- v-for="item in options"--> |
| | | <!-- :key="item.value"--> |
| | | <!-- :label="item.label"--> |
| | | <!-- :value="item.value"--> |
| | | <!-- />--> |
| | | </el-select> |
| | | <el-button size="default" type="primary" class="ml10"> |
| | | 查询 |
| | | </el-button> |
| | | <el-button size="default" class="ml10" @click="submitReset"> |
| | | 重置 |
| | | </el-button> |
| | | <el-form :inline="true" :model="formInline" class="demo-form-inline"> |
| | | <el-form-item> |
| | | <el-input size="default" v-model="formInline.name" placeholder="队伍名称"> </el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-select size="default" v-model="formInline.level" placeholder="请选择队伍级别"> |
| | | <el-option label="公司" value="shanghai"></el-option> |
| | | <el-option label="分厂-车间" value="beijing"></el-option> |
| | | <el-option label="工序-班组等" value="beijing"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button size="default" type="primary" class="ml10" @click="onSubmit"> |
| | | 查询 |
| | | </el-button> |
| | | <el-button size="default" class="ml10" @click="submitReset"> |
| | | 重置 |
| | | </el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <div class="button_Line"> |
| | | <div class="button_Left"> |
| | | <el-button size="default" type="primary" @click="onOpenAdd"> |
| | | <el-button size="default" type="primary" @click="onOpenAdd('新建')"> |
| | | <el-icon> |
| | | <Plus /> |
| | | </el-icon>新建 |
| | |
| | | </el-button> |
| | | </div> |
| | | <div class="button_Right"> |
| | | <el-button> |
| | | <el-button @click="upButton"> |
| | | <el-icon> |
| | | <Upload /> |
| | | </el-icon> |
| | |
| | | <el-table-column prop="teamName" label="队伍名称" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="teamLevel" label="队伍级别" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="teamDescription" label="队伍描述" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="phone" label="负责人手机" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="teamPhone" label="负责人手机" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="attachments" label="相关附件" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="操作" width="200" align="center"> |
| | | <template #default="scope"> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <!-- <el-pagination--> |
| | | <!-- @size-change="onHandleSizeChange"--> |
| | | <!-- @current-change="onHandleCurrentChange"--> |
| | | <!-- class="mt15"--> |
| | | <!-- :pager-count="5"--> |
| | | <!-- :page-sizes="[10, 20, 30]"--> |
| | | <!-- v-model:current-page="tableData.param.pageNum"--> |
| | | <!-- background--> |
| | | <!-- v-model:page-size="tableData.param.pageSize"--> |
| | | <!-- layout="total, sizes, prev, pager, next, jumper"--> |
| | | <!-- :total="tableData.total"--> |
| | | <!-- >--> |
| | | <!-- </el-pagination>--> |
| | | <div class="pages"> |
| | | <el-pagination |
| | | v-model:currentPage="currentPage" |
| | | v-model:page-size="pageSize" |
| | | :page-sizes="[10,20,50,100]" |
| | | :small="small" |
| | | :disabled="disabled" |
| | | :background="background" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="400" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange" |
| | | /> |
| | | </div> |
| | | </el-card> |
| | | <OpenSee ref="seeRef" /> |
| | | <!-- <OpenAdd ref="addRef" />--> |
| | | <OpenAdd ref="addRef" /> |
| | | <OpenEdit ref="editRef" /> |
| | | <upData ref="upShow"></upData> |
| | | </div> |
| | | </template> |
| | | |
| | | <script lang="ts"> |
| | | import { |
| | | // toRefs, |
| | | // reactive, |
| | | reactive, |
| | | // onMounted, |
| | | ref, |
| | | defineComponent |
| | |
| | | View, |
| | | EditPen, |
| | | } from '@element-plus/icons-vue' |
| | | // import OpenAdd from '/@/views/system/user/component/openAdd.vue'; |
| | | import OpenEdit from '/@/views/contingency/component/openEdit.vue'; |
| | | import OpenSee from '/@/views/contingency/component/openSee.vue'; |
| | | import OpenAdd from '/@/views/contingencyManagement/contingency/component/openAdd.vue'; |
| | | import OpenEdit from '/@/views/contingencyManagement/contingency/component/openEdit.vue'; |
| | | import OpenSee from '/@/views/contingencyManagement/contingency/component/openSee.vue'; |
| | | import UpData from '/@/views/contingencyManagement/contingency/component/upData.vue'; |
| | | |
| | | // 定义表格数据类型 |
| | | interface User { |
| | |
| | | teamLevel: string |
| | | teamDescription: string |
| | | teamPhone: string |
| | | phone: string; |
| | | telephone: string; |
| | | describe: string; |
| | | responsibleDepartment: string |
| | | teamLeader: string |
| | |
| | | export default defineComponent({ |
| | | name: 'systemUser', |
| | | components: { |
| | | // OpenAdd, |
| | | OpenAdd, |
| | | OpenSee, |
| | | OpenEdit, |
| | | View, |
| | | EditPen, |
| | | Plus, |
| | | Edit, |
| | | Delete, Upload, Download, Refresh }, |
| | | Delete, |
| | | Upload, |
| | | Download, |
| | | Refresh, |
| | | UpData |
| | | }, |
| | | setup() { |
| | | const addRef = ref(); |
| | | // 定义表单搜索 |
| | | const formInline = reactive({ |
| | | name: '', |
| | | level: '', |
| | | }) |
| | | // 搜索按钮 |
| | | const onSubmit = () => { |
| | | console.log('submit!') |
| | | } |
| | | const seeRef = ref(); |
| | | const editRef = ref(); |
| | | // 选择框 |
| | | // const value = ref(''); |
| | | // const options = |
| | | // { |
| | | // value: 'Option1', |
| | | // label: 'Option1', |
| | | // }; |
| | | const multipleTableRef = ref<InstanceType<typeof ElTable>>() |
| | | const multipleSelection = ref<User[]>([]) |
| | | |
| | | // 上传 |
| | | const upShow=ref() |
| | | const upButton=()=>{ |
| | | upShow.value.openDialog() |
| | | } |
| | | // 定义表格数据 |
| | | const tableData: User[] = [ |
| | | { |
| | | teamName: '应急救援组', |
| | | teamLevel: '公司', |
| | | teamDescription: '实施抢险抢险的应急方案和措施实施 ;', |
| | | teamPhone: '051383830321', |
| | | phone: '13603812900', |
| | | telephone: '051383830321', |
| | | teamPhone: '13603812900', |
| | | describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' + |
| | | '(2)负责现场被困人员、受伤人员抢救工作;\n' + |
| | | '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' + |
| | |
| | | teamName: '应急救援组', |
| | | teamLevel: '公司', |
| | | teamDescription: '实施抢险抢险的应急方案和措施实施 ;', |
| | | teamPhone: '051383830321', |
| | | phone: '13603812900', |
| | | telephone: '051383830321', |
| | | teamPhone: '13603812900', |
| | | describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' + |
| | | '(2)负责现场被困人员、受伤人员抢救工作;\n' + |
| | | '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' + |
| | |
| | | teamName: '应急救援组', |
| | | teamLevel: '公司', |
| | | teamDescription: '实施抢险抢险的应急方案和措施实施 ;', |
| | | teamPhone: '051383830321', |
| | | phone: '13603812900', |
| | | telephone: '051383830321', |
| | | teamPhone: '13603812900', |
| | | describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' + |
| | | '(2)负责现场被困人员、受伤人员抢救工作;\n' + |
| | | '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' + |
| | |
| | | teamName: '应急救援组', |
| | | teamLevel: '公司', |
| | | teamDescription: '实施抢险抢险的应急方案和措施实施 ;', |
| | | teamPhone: '051383830321', |
| | | phone: '13603812900', |
| | | telephone: '051383830321', |
| | | teamPhone: '13603812900', |
| | | describe: '(1)实施抢险抢险的应急方案和措施实施 ;\n' + |
| | | '(2)负责现场被困人员、受伤人员抢救工作;\n' + |
| | | '(3)在事故有可能扩大进行抢险抢修或救援时,高度注意避免意外伤害;\n' + |
| | |
| | | seeRef.value.openDialog(row); |
| | | }; |
| | | // 打开新增用户弹窗 |
| | | // const onOpenAdd = () => { |
| | | // addRef.value.openDialog(); |
| | | // }; |
| | | const addRef = ref(); |
| | | const onOpenAdd = () => { |
| | | addRef.value.openDialog(); |
| | | }; |
| | | // 打开修改用户弹窗 |
| | | const onOpenEdit = (row: TableDataRow) => { |
| | | editRef.value.openDialog(row); |
| | |
| | | .catch(() => {}); |
| | | }; |
| | | // 分页改变 |
| | | const currentPage = ref(4); |
| | | const pageSize = ref(10); |
| | | const handleSizeChange = (val: number) => { |
| | | console.log(`${val} items per page`); |
| | | }; |
| | | const handleCurrentChange = (val: number) => { |
| | | console.log(`current page: ${val}`); |
| | | }; |
| | | // const onHandleSizeChange = (val: number) => { |
| | | // state.tableData.param.pageSize = val; |
| | | // }; |
| | | // // 分页改变 |
| | | // const onHandleCurrentChange = (val: number) => { |
| | | // state.tableData.param.pageNum = val; |
| | | // }; |
| | | // 页面加载时 |
| | | // onMounted(() => { |
| | | // initTableData(); |
| | |
| | | return { |
| | | // value, |
| | | // options, |
| | | formInline, |
| | | onSubmit, |
| | | multipleSelection, |
| | | multipleTableRef, |
| | | upButton, |
| | | upShow, |
| | | tableData, |
| | | onOpenSee, //查看 |
| | | seeRef, |
| | | onOpenEdit, //编辑 |
| | | editRef, |
| | | // onOpenAdd, //新增 |
| | | onOpenAdd, //新增 |
| | | addRef, |
| | | onRowDel, |
| | | // onHandleSizeChange, |
| | | // onHandleCurrentChange, |
| | | currentPage, |
| | | pageSize, |
| | | handleSizeChange, |
| | | handleCurrentChange, |
| | | // ...toRefs(state), |
| | | }; |
| | | }, |
| | |
| | | flex-direction: row; |
| | | justify-content: space-between; |
| | | } |
| | | .pages{ |
| | | padding-top: 20px; |
| | | display: flex; |
| | | justify-content: flex-end; |
| | | } |
| | | .el-form .el-form-item:last-of-type{ |
| | | margin-bottom: 22px!important; |
| | | } |
| | | </style> |