| | |
| | | <template> |
| | | <el-card shadow="never"> |
| | | <template #header> |
| | | <div><el-text tag="b" size="large">æ°æ®æºæ£æ¥</el-text></div> |
| | | <el-text size="small" type="info">æ£æ¥è¯ä¼°æéæ°æ®æºæ¯å¦å®æ´</el-text> |
| | | </template> |
| | | <FormCol> |
| | | <template v-for="(v, i) in checkResults" :key="i"> |
| | | <el-row class="h-small" align="middle"> |
| | | <el-col :span="14"> |
| | | <el-row align="middle"> |
| | | <el-text size="default" :class="v.required ? 'required' : 'not-required'">*</el-text> |
| | | <el-text size="default" class="m-l-4">{{ v.name }}</el-text> |
| | | </el-row> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-row align="middle"> |
| | | <el-space> |
| | | <template v-if="v.loading"> |
| | | <el-icon class="is-loading"><Loading /></el-icon> |
| | | <el-text size="default" type="default">æ£æ¥ä¸...</el-text> |
| | | </template> |
| | | <template v-else-if="v.pass == true"> |
| | | <el-icon color="var(--el-color-success)"><Check /></el-icon> |
| | | <el-text size="default" type="success">éè¿</el-text> |
| | | </template> |
| | | <template v-else-if="v.pass == false"> |
| | | <el-icon color="var(--el-color-danger)"><Close /></el-icon> |
| | | <el-text size="default" type="danger">缺失</el-text> |
| | | </template> |
| | | <template v-else> |
| | | <el-icon color="var(--el-color-warning)"><Warning /></el-icon> |
| | | <el-text size="default" type="warning">æç¥è¿</el-text> |
| | | </template> |
| | | </el-space> |
| | | </el-row> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-button |
| | | v-show="!v.loading" |
| | | :type="v.pass ? '' : 'danger'" |
| | | size="small" |
| | | @click="goto(v.path)" |
| | | :disabled="v.path == ''" |
| | | > |
| | | {{ v.pass ? 'å»ä¿®æ¹' : 'å»å®å' }} |
| | | <el-icon class="m-l-4"><Right /></el-icon> |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row align="middle" class="m-b-16"> |
| | | <el-text size="small" class="not-required">*</el-text> |
| | | <el-text size="small" class="m-l-4 color-i">{{ v.des }}</el-text> |
| | | <div> |
| | | <el-card shadow="never"> |
| | | <template #header> |
| | | <div><el-text tag="b" size="large">æ°æ®æºæ£æ¥</el-text></div> |
| | | <el-text size="small" type="info">æ£æ¥è¯ä¼°æéæ°æ®æºæ¯å¦å®æ´</el-text> |
| | | </template> |
| | | <FormCol> |
| | | <template v-for="(v, i) in checkResults" :key="i"> |
| | | <el-row class="h-small" align="middle"> |
| | | <el-col :span="14"> |
| | | <el-row align="middle"> |
| | | <el-text |
| | | size="default" |
| | | :class="v.required ? 'required' : 'not-required'" |
| | | >*</el-text |
| | | > |
| | | <el-text size="default" class="m-l-4">{{ v.name }}</el-text> |
| | | </el-row> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-row align="middle"> |
| | | <el-space> |
| | | <template v-if="v.loading"> |
| | | <el-icon class="is-loading"><Loading /></el-icon> |
| | | <el-text size="default" type="default">æ£æ¥ä¸...</el-text> |
| | | </template> |
| | | <template v-else-if="v.pass == true"> |
| | | <el-icon color="var(--el-color-success)"><Check /></el-icon> |
| | | <el-text size="default" type="success">éè¿</el-text> |
| | | </template> |
| | | <template v-else-if="v.pass == false"> |
| | | <el-icon color="var(--el-color-danger)"><Close /></el-icon> |
| | | <el-text size="default" type="danger">缺失</el-text> |
| | | </template> |
| | | <template v-else> |
| | | <el-icon color="var(--el-color-warning)" |
| | | ><Warning |
| | | /></el-icon> |
| | | <el-text size="default" type="warning">æç¥è¿</el-text> |
| | | </template> |
| | | </el-space> |
| | | </el-row> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-button |
| | | v-show="!v.loading" |
| | | :type="v.pass ? '' : 'danger'" |
| | | size="small" |
| | | @click="goto(v.path)" |
| | | :disabled="v.path == ''" |
| | | > |
| | | {{ v.pass ? 'å»ä¿®æ¹' : 'å»å®å' }} |
| | | <el-icon class="m-l-4"><Right /></el-icon> |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row align="middle" class="m-b-16"> |
| | | <el-text size="small" class="not-required">*</el-text> |
| | | <el-text size="small" class="m-l-4 color-i">{{ v.des }}</el-text> |
| | | </el-row> |
| | | </template> |
| | | </FormCol> |
| | | <template #footer> |
| | | <el-row justify="space-around"> |
| | | <el-button type="primary" size="default" @click="lastStep" |
| | | >ä¸ä¸æ¥</el-button |
| | | > |
| | | <el-button |
| | | :disabled="!checkPass" |
| | | type="primary" |
| | | size="default" |
| | | @click="nextStep" |
| | | >ä¸ä¸æ¥</el-button |
| | | > |
| | | </el-row> |
| | | </template> |
| | | </FormCol> |
| | | <template #footer> |
| | | <el-row justify="space-around"> |
| | | <el-button type="primary" size="default" @click="lastStep">ä¸ä¸æ¥</el-button> |
| | | <el-button :disabled="!checkPass" type="primary" size="default" @click="nextStep" |
| | | >ä¸ä¸æ¥</el-button |
| | | > |
| | | </el-row> |
| | | </template> |
| | | </el-card> |
| | | </el-card> |
| | | <el-dialog |
| | | title="æ¬å°çæµæ°æ®æåº¦ç»è®¡ç®¡ç" |
| | | v-model="dialog1" |
| | | destroy-on-close |
| | | width="90%" |
| | | > |
| | | <CompDataResultEdit :areaInfo="areaInfo"></CompDataResultEdit> |
| | | <template #footer> </template> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | import taskApi from '@/api/fysp/taskApi'; |
| | | import userMapApi from '@/api/fysp/userMapApi'; |
| | | import problemApi from '@/api/fysp/problemApi'; |
| | | import monitordataApi from '@/api/fysp/monitordataApi'; |
| | | import complaintApi from '@/api/fytz/complaintApi'; |
| | | import CompDataResultEdit from '../../CompDataResultEdit.vue'; |
| | | |
| | | /** |
| | | * çæä¸é¡¹æ°æ®æºæ£æ¥è®°å½ |
| | | * @param {*} _name |
| | | * @param {*} _path |
| | | * @param {*} _fetch |
| | | * @param {*} _required |
| | | * çæä¸é¡¹æ°æ®æºæ£æ¥æ¡ç® |
| | | * @param {*} _name æ¡ç®åç§° |
| | | * @param {*} _path 跳转页é¢URL |
| | | * @param {*} _fetch æ¡ç®çç½ç»è¯·æ±å½æ° |
| | | * @param {*} _required æ¯å¦å¿
é |
| | | */ |
| | | function baseCheckItem(_name, _path, _fetch, _required) { |
| | | return { |
| | |
| | | async fetch() { |
| | | this.loading = true; |
| | | setTimeout(async () => { |
| | | if (_fetch != undefined) { |
| | | if (typeof _fetch === 'function') { |
| | | _fetch() |
| | | .then((res) => { |
| | | this.pass = res ? res.pass : undefined; |
| | |
| | | * è¯ä¼°æ°æ®æºå®æ´æ§æ£æ¥ |
| | | */ |
| | | export default { |
| | | components: { |
| | | CompDataResultEdit |
| | | }, |
| | | props: { |
| | | // æ¥éª¤ä¸æ |
| | | modelValue: Number |
| | |
| | | }); |
| | | }), |
| | | // åºåèå´å
ççæµæ°æ®æ¯å¦åå¨ãæ°æ®æ¶é´è·¨åº¦æ¯å¦å®æ´ãæ°æ®ç忥忿¯å¦å®æ |
| | | baseCheckItem('ç°åºçæµæ°æ®', ''), |
| | | baseCheckItem( |
| | | 'ç°åºçæµæ°æ®', |
| | | () => { |
| | | this.dialog1 = true; |
| | | }, |
| | | () => { |
| | | return monitordataApi |
| | | .fetchDustDataResult(this.areaInfo) |
| | | .then((res) => { |
| | | const pass = res.data.length > 0; |
| | | let des = ''; |
| | | if (pass) { |
| | | des = `æ¾å°æåº¦ç»è®¡å
±${res.data.length}æ¡`; |
| | | } else { |
| | | des = 'æªæ¾å°ç¸å
³è®°å½'; |
| | | } |
| | | return { pass, des }; |
| | | }); |
| | | } |
| | | ), |
| | | // åºåèå´å
çæ¯ä¸ªç管ç¹ä½ä¸çæµä»ªå¨çå¹é
è®°å½æ¯å¦åå¨ï¼ç¼ºå¤±æ
åµç |
| | | baseCheckItem('ç管ç¹ä½ä¸çæµç¹å¹é
', '', () => { |
| | | return userMapApi.fetchDeviceMap(this.areaInfo).then((res) => { |
| | |
| | | // complaintApi.fetchPunishment(); |
| | | // åºåèå´å
çè¡æ¿å¤ç½è®°å½æ¯å¦åå¨ï¼å¯éæ¶è¡¥å
|
| | | baseCheckItem('è¡æ¿å¤ç½', '') |
| | | ] |
| | | ], |
| | | dialog1: false |
| | | }; |
| | | }, |
| | | computed: { |
| | |
| | | }, |
| | | // è·³è½¬æ£æ¥é¡¹ç龿¥ |
| | | goto(path) { |
| | | if (path && path != '') { |
| | | if (typeof path === 'string' && path != '') { |
| | | this.$router.push(path); |
| | | } else if (typeof path === 'function') { |
| | | path(); |
| | | } |
| | | }, |
| | | // å¼å§æ£æ¥ä»»å¡ |