| | |
| | | <!-- </el-select>--> |
| | | <el-cascader v-model="queryParams.researchGroup" placeholder="请选择" :options="deptList" :show-all-levels="false" :props="{value: 'deptId',label: 'deptName',children: 'children',emitPath: false,checkStrictly: true}"/> |
| | | </el-form-item> |
| | | <el-form-item label="参加检查人员:" > |
| | | <el-select v-model="queryParams.searchCheckUserId" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in userList" |
| | | :key="item.userId" |
| | | :label="item.nickName" |
| | | :value="item.userId"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-form-item label="参加检查人员" > |
| | | <el-input v-model.trim="queryParams.checkUser" placeholder="参加检查人员"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="检查类型:" > |
| | | <el-form-item label="检查类型" > |
| | | <el-select v-model="queryParams.checkType" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in checkTypeList" |
| | |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="隐患:" > |
| | | <el-form-item label="隐患" > |
| | | <el-select v-model="queryParams.haveMainHazard" placeholder="请选择" clearable> |
| | | <el-option :key="1" label="有" :value="1"></el-option> |
| | | <el-option :key="0" label="无" :value="0"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="检查日期:" > |
| | | <el-form-item label="检查日期" > |
| | | <el-date-picker |
| | | v-model="checkDate" |
| | | type="daterange" |
| | |
| | | <el-table-column prop="checkDate" align="center" label="检查时间"/> |
| | | <el-table-column prop="checkPlace" align="center" label="检查地点"/> |
| | | <el-table-column prop="checkRoom" align="center" label="检查房间号"/> |
| | | <el-table-column prop="enactmentDate" align="center" label="参加检查人员"> |
| | | <el-table-column prop="checkUser" align="center" label="参加检查人员"/> |
| | | <el-table-column prop="researchGroupName" align="center" label="被检查部门/研究组"> |
| | | <template #default="scope"> |
| | | {{scope.row.dailySafetyInspectionUsers.map(i=>i.checkUser).join('、')}} |
| | | {{ scope.row.dailySafetyInspectionDepts.filter(item=>item.deptName && item.deptName !== '').map(i=>i.deptName).join('、') }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="researchGroupName" align="center" label="被检查部门/研究组"/> |
| | | <el-table-column prop="checkContent" align="center" label="检查内容"/> |
| | | <el-table-column label="操作" align="center"> |
| | | <template #default="scope"> |
| | |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | researchGroup: null, |
| | | searchCheckUserId: null, |
| | | checkUser: '', |
| | | checkType: null, |
| | | haveMainHazard: null, |
| | | checkBeginDate: '', |
| | | checkEndDate: '' |
| | | }, |
| | | originDeptList: [], |
| | | dataList: [], |
| | | deptList: [], |
| | | safetyDeptList: [], |
| | | userList: [], |
| | | checkTypeList: [ |
| | | { |
| | |
| | | }, |
| | | { |
| | | label: '参加检查人员', |
| | | prop: 'dailySafetyInspectionUsers', |
| | | type: 'select', |
| | | multiple: true, |
| | | filterable: true, |
| | | rules: [{ required: true, message: '请选择人员', trigger: 'change' }], |
| | | options: () => { |
| | | return state.userList.map(user => ({ |
| | | value: user.userId, |
| | | label: user.nickName |
| | | })) |
| | | } |
| | | prop: 'checkUser', |
| | | type: 'text', |
| | | rules: [{ required: true, message: '请输入人员', trigger: 'blur' }], |
| | | }, |
| | | { |
| | | label: '检查地点', |
| | |
| | | }, |
| | | { |
| | | label: '被检查部门/研究组', |
| | | prop: 'researchGroup', |
| | | prop: 'dailySafetyInspectionDepts', |
| | | type: 'cascader', |
| | | showAllLevels: false, |
| | | props: { |
| | |
| | | label: 'deptName', |
| | | children: 'children', |
| | | emitPath: false, |
| | | checkStrictly: true |
| | | checkStrictly: true, |
| | | multiple: true |
| | | }, |
| | | rules: [{ required: true, message: '请选择部门', trigger: 'blur' }], |
| | | options: () => state.deptList |
| | | options: () => state.safetyDeptList |
| | | }, |
| | | { |
| | | label: '检查类型', |
| | |
| | | }, |
| | | { |
| | | label: '复查人员', |
| | | prop: 'reCheckUserId', |
| | | type: 'select', |
| | | rules: [{ required: true, message: '请选择复查人员', trigger: 'blur' }], |
| | | options: () => { |
| | | return state.userList.map(user => ({ |
| | | value: user.userId, |
| | | label: user.nickName |
| | | })) |
| | | } |
| | | prop: 'reCheckUser', |
| | | type: 'text', |
| | | rules: [{ required: true, message: '请输入复查人员', trigger: 'blur' }] |
| | | }, |
| | | { |
| | | label: '复查时间', |
| | |
| | | }) |
| | | |
| | | function getDeptList() { |
| | | listDept({safety: '1'}).then(response => { |
| | | listDept().then(response => { |
| | | state.originDeptList = response.data |
| | | state.deptList = proxy.handleTree(response.data, "deptId") |
| | | }); |
| | | state.safetyDeptList = proxy.handleTree(response.data.filter(item=>item.safety == '1'), "deptId") |
| | | }) |
| | | } |
| | | |
| | | function getUserList() { |
| | |
| | | |
| | | const downloadFile = async (val)=>{ |
| | | let tableData = val |
| | | tableData.checkNames = val.dailySafetyInspectionUsers.map(item=>item.checkUser).join('、') |
| | | try { |
| | | generateWordDocument('/dailyCheckSheet.docx', tableData, '日常安全检查记录表.docx'); |
| | | } catch (error){ |
| | |
| | | } |
| | | |
| | | const openDialog = (type, value) => { |
| | | let initalData = JSON.parse(JSON.stringify(value)) |
| | | if(type == 'edit' || type == 'view'){ |
| | | initalData.dailySafetyInspectionUsers = value.dailySafetyInspectionUsers.map(i=>i.checkUserId) |
| | | } |
| | | const initalData = JSON.parse(JSON.stringify(value)) |
| | | dialogRef.value.openDialog(type, initalData) |
| | | } |
| | | |
| | |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | researchGroup: null, |
| | | searchCheckUserId: null, |
| | | checkUser: '', |
| | | checkType: null, |
| | | haveMainHazard: null, |
| | | checkBeginDate: '', |
| | |
| | | |
| | | const handleSubmit = async (data, type) => { |
| | | const params = JSON.parse(JSON.stringify(data)) |
| | | params.dailySafetyInspectionUsers = params.dailySafetyInspectionUsers.map(item=>{ |
| | | console.log(state.originDeptList,'ori') |
| | | params.dailySafetyInspectionDepts = params.dailySafetyInspectionDepts.map(i=>{ |
| | | return { |
| | | checkUserId: item, |
| | | checkUser: state.userList.find(i=>i.userId == item)?.nickName, |
| | | dailySafetyInspectionId: params.id |
| | | deptId: i, |
| | | deptName: state.originDeptList.find(item=>item.deptId == i)?.deptName |
| | | } |
| | | }) |
| | | params.reCheckUser = state.userList.find(i=>i.userId == params.reCheckUserId)?.nickName |
| | | // params.reCheckUser = state.userList.find(i=>i.userId == params.reCheckUserId)?.nickName |
| | | // 调用API保存数据 |
| | | if (type === '新增') { |
| | | delete params.id |