| | |
| | | >新增</el-button> |
| | | </el-form-item> |
| | | <el-form-item label="被检查部门/研究组:" > |
| | | <el-select v-model="queryParams.researchGroup" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in deptList" |
| | | :key="item.deptId" |
| | | :label="item.deptName" |
| | | :value="item.deptId"> |
| | | </el-option> |
| | | </el-select> |
| | | <!-- <el-select v-model="queryParams.researchGroup" placeholder="请选择" clearable>--> |
| | | <!-- <el-option--> |
| | | <!-- v-for="item in deptList"--> |
| | | <!-- :key="item.deptId"--> |
| | | <!-- :label="item.deptName"--> |
| | | <!-- :value="item.deptId">--> |
| | | <!-- </el-option>--> |
| | | <!-- </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.userName" |
| | | :label="item.nickName" |
| | | :value="item.userId"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="检查类型:" > |
| | | <el-select v-model="queryParams.checkType" placeholder="请选择" clearable> |
| | | <el-option |
| | | v-for="item in checkTypeList" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <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-date-picker |
| | | v-model="checkDate" |
| | | type="daterange" |
| | | value-format="YYYY-MM-DD" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item > |
| | | <el-button type="primary" @click="getList">查询</el-button> |
| | |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | researchGroup: null, |
| | | searchCheckUserId: null |
| | | searchCheckUserId: null, |
| | | checkType: null, |
| | | haveMainHazard: null, |
| | | checkBeginDate: '', |
| | | checkEndDate: '' |
| | | }, |
| | | dataList: [], |
| | | deptList: [], |
| | | userList: [], |
| | | checkTypeList: [ |
| | | { |
| | | value: 1, |
| | | label: '综合检查' |
| | | }, |
| | | { |
| | | value: 2, |
| | | label: '部门检查' |
| | | }, |
| | | { |
| | | value: 3, |
| | | label: '实验室自查' |
| | | }, |
| | | { |
| | | value: 4, |
| | | label: '专项检查' |
| | | } |
| | | ], |
| | | total: 0, |
| | | formConfig: { |
| | | formItems: [ |
| | |
| | | options: () => { |
| | | return state.userList.map(user => ({ |
| | | value: user.userId, |
| | | label: user.userName |
| | | label: user.nickName |
| | | })) |
| | | } |
| | | }, |
| | |
| | | { |
| | | label: '被检查部门/研究组', |
| | | prop: 'researchGroup', |
| | | type: 'select', |
| | | type: 'cascader', |
| | | showAllLevels: false, |
| | | props: { |
| | | value: 'deptId', |
| | | label: 'deptName', |
| | | children: 'children', |
| | | emitPath: false, |
| | | checkStrictly: true |
| | | }, |
| | | rules: [{ required: true, message: '请选择部门', trigger: 'blur' }], |
| | | options: () => { |
| | | return state.deptList.map(dept => ({ |
| | | value: dept.deptId, |
| | | label: dept.deptName |
| | | })) |
| | | } |
| | | options: () => state.deptList |
| | | }, |
| | | { |
| | | label: '检查类型', |
| | | prop: 'checkType', |
| | | type: 'select', |
| | | filterable: true, |
| | | rules: [{ required: true, message: '请选择检查类型', trigger: 'change' }], |
| | | options: () => state.checkTypeList |
| | | }, |
| | | { |
| | | label: '检查内容', |
| | |
| | | label: '存在的主要隐患/问题', |
| | | prop: 'mainHazard', |
| | | type: 'textarea', |
| | | placeholder: '没有则填“无”', |
| | | autosize: { minRows: 3 }, |
| | | rules: [{ required: true, message: '请输入存在的主要隐患/问题', trigger: 'blur' }] |
| | | }, |
| | |
| | | label: '整改措施', |
| | | prop: 'rectificationMeasures', |
| | | type: 'textarea', |
| | | placeholder: '没有则填“无”', |
| | | autosize: { minRows: 3 }, |
| | | rules: [{ required: true, message: '请输入整改措施', trigger: 'blur' }] |
| | | }, |
| | |
| | | label: '复查结果', |
| | | prop: 'examinationResults', |
| | | type: 'textarea', |
| | | autosize: { minRows: 3 } |
| | | autosize: { minRows: 3 }, |
| | | rules: [{ required: true, message: '请输入复查结果', trigger: 'blur' }] |
| | | }, |
| | | { |
| | | label: '复查人员', |
| | | prop: 'reCheckUserId', |
| | | type: 'select', |
| | | rules: [{ required: true, message: '请选择复查人员', trigger: 'blur' }], |
| | | options: () => { |
| | | return state.userList.map(user => ({ |
| | | value: user.userId, |
| | | label: user.userName |
| | | label: user.nickName |
| | | })) |
| | | } |
| | | }, |
| | |
| | | prop: 'reCheckDate', |
| | | type: 'date', |
| | | dateType: 'date', |
| | | valueFormat: 'YYYY-MM-DD' |
| | | valueFormat: 'YYYY-MM-DD', |
| | | rules: [{ required: true, message: '请选择复查时间', trigger: 'blur' }] |
| | | }, |
| | | { |
| | | label: '备注', |
| | |
| | | ] |
| | | }, |
| | | dataLoader: {}, |
| | | api: {} |
| | | api: {}, |
| | | checkDate: [] |
| | | }); |
| | | |
| | | const { queryParams, total, dataList,deptList, userList, formConfig, dataLoader, api } = toRefs(state); |
| | | const { queryParams, total, dataList,deptList, userList, formConfig, dataLoader, api, checkTypeList, checkDate } = toRefs(state); |
| | | onMounted(async ()=>{ |
| | | await getList() |
| | | await getDeptList() |
| | |
| | | |
| | | function getDeptList() { |
| | | listDept({}).then(response => { |
| | | state.deptList = response.data |
| | | state.deptList = proxy.handleTree(response.data, "deptId") |
| | | }); |
| | | } |
| | | |
| | | function getUserList() { |
| | | listUser().then(res => { |
| | | listUser({pageNum: 1,pageSize: 999}).then(res => { |
| | | state.userList = res.rows; |
| | | state.total = res.total; |
| | | }) |
| | | }; |
| | | |
| | | const getList = async () => { |
| | | loading.value = true |
| | | state.queryParams.checkBeginDate = state.checkDate[0] || '' |
| | | state.queryParams.checkEndDate = state.checkDate[1] || '' |
| | | const res = await getDailySafetyInspectList(state.queryParams) |
| | | if(res.code == 200){ |
| | | state.dataList = res.rows || [] |
| | |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | researchGroup: null, |
| | | searchCheckUserId: null |
| | | searchCheckUserId: null, |
| | | checkType: null, |
| | | haveMainHazard: null, |
| | | checkBeginDate: '', |
| | | checkEndDate: '' |
| | | } |
| | | state.checkDate = [] |
| | | await getList() |
| | | } |
| | | const handleDelete = (val) => { |
| | |
| | | params.dailySafetyInspectionUsers = params.dailySafetyInspectionUsers.map(item=>{ |
| | | return { |
| | | checkUserId: item, |
| | | checkUser: state.userList.find(i=>i.userId == item)?.userName, |
| | | checkUser: state.userList.find(i=>i.userId == item)?.nickName, |
| | | dailySafetyInspectionId: params.id |
| | | } |
| | | }) |
| | | params.reCheckUser = state.userList.find(i=>i.userId == params.reCheckUserId)?.userName |
| | | params.reCheckUser = state.userList.find(i=>i.userId == params.reCheckUserId)?.nickName |
| | | // 调用API保存数据 |
| | | if (type === '新增') { |
| | | delete params.id |