| | |
| | | <meta charset="UTF-8"> |
| | | <link rel="icon" href="/favicon.ico"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | | <title>Vite App</title> |
| | | <title>çæç¯å¢çº¿ä¸ç管</title> |
| | | </head> |
| | | <body> |
| | | <div id="app"></div> |
| | |
| | | return $fysp |
| | | .post(`evaluation/auto/record/download`, param, { responseType: 'blob' }) |
| | | .then((res) => { |
| | | // return res.data; |
| | | // ææ¡£æªçæï¼å·²å¯å¨ææ¡£çæåå°ä»»å¡ |
| | | if (res.data.type == 'application/json') { |
| | | return false |
| | | } |
| | | // ææ¡£å·²åå¨ï¼ç´æ¥ä¸è½½ |
| | | else { |
| | | const name = Base64.decode(res.headers.get('filename')); |
| | | const url = window.URL.createObjectURL(res.data); |
| | | const link = document.createElement('a'); |
| | |
| | | link.click(); |
| | | document.body.removeChild(link); |
| | | window.URL.revokeObjectURL(url); |
| | | } |
| | | }); |
| | | }, |
| | | } |
| | | }; |
| | |
| | | import axios from 'axios'; |
| | | import { ElMessage } from 'element-plus'; |
| | | |
| | | const debug = true; |
| | | const debug = false; |
| | | |
| | | let ip1 = 'http://47.100.191.150:9005/'; |
| | | let ip1_file = 'http://47.100.191.150:9005/'; |
| | |
| | | let ip2_file = 'https://fyami.com.cn/'; |
| | | |
| | | if (debug) { |
| | | ip1 = 'http://192.168.1.9:8082/'; |
| | | ip1 = 'http://192.168.0.138:8082/'; |
| | | // ip1_file = 'http://47.100.191.150:9005/'; |
| | | ip2 = 'http://192.168.1.9:8080/'; |
| | | // ip2 = 'http://192.168.0.138:8080/'; |
| | | // ip2_file = 'https://fyami.com.cn/'; |
| | | } |
| | | |
| | |
| | | name: 'èªå¨è¯ä¼°', |
| | | children: [ |
| | | { |
| | | path: '/fysp/evaluation/datasource', |
| | | path: '/fysp/evaluation/evalutationTask', |
| | | icon: 'MessageBox', |
| | | name: 'è¯ä¼°ä»»å¡', |
| | | }, |
| | | { |
| | | path: '/fysp/evaluation/resultManage', |
| | | path: '/fysp/evaluation/evalutationRecord', |
| | | icon: 'Tickets', |
| | | name: 'è¯ä¼°è®°å½', |
| | | }, |
| | |
| | | }, |
| | | { |
| | | //è¯ä¼°æ°æ®æº |
| | | name: 'fyspDatasource', |
| | | path: '/fysp/evaluation/datasource', |
| | | component: () => import('@/views/fysp/evaluation/DataSource.vue'), |
| | | name: 'fyspEvalutationTask', |
| | | path: '/fysp/evaluation/evalutationTask', |
| | | component: () => import('@/views/fysp/evaluation/EvalutationTask.vue'), |
| | | meta: { keepAlive: true } |
| | | }, |
| | | { |
| | | //è¯ä¼°ç®¡ç |
| | | name: 'fyspResultManage', |
| | | path: '/fysp/evaluation/resultManage', |
| | | component: () => import('@/views/fysp/evaluation/ResultManage.vue'), |
| | | name: 'fyspEvalutationRecord', |
| | | path: '/fysp/evaluation/evalutationRecord', |
| | | component: () => import('@/views/fysp/evaluation/EvalutationRecord.vue'), |
| | | meta: { keepAlive: true } |
| | | }, |
| | | { |
| | |
| | | // } |
| | | |
| | | |
| | | let a = 4 |
| | | let b = new Number(4) |
| | | let c = '4' |
| | | console.log(a == b); |
| | | console.log(a === b); |
| | | console.log(a == c); |
| | | console.log(b === c); |
| | | // let a = 4 |
| | | // let b = new Number(4) |
| | | // let c = '4' |
| | | // console.log(a == b); |
| | | // console.log(a === b); |
| | | // console.log(a == c); |
| | | // console.log(b === c); |
| | | |
| | | var val = 'smtg' |
| | | console.log('Value is' + ((val === 'smtg') ? 'Something' : 'Nothing')); |
| | |
| | | } |
| | | }, |
| | | |
| | | formatYM(date){ |
| | | if (date) { |
| | | return this.format(date, 'YYYY-MM') |
| | | } else { |
| | | return '----/--' |
| | | } |
| | | }, |
| | | |
| | | formatYMD(date){ |
| | | if (date) { |
| | | return this.format(date, 'YYYY-MM-DD') |
| | |
| | | |
| | | function updateUser() { |
| | | updateLoading.value = true; |
| | | userApi.updateUser().finally(() => { |
| | | userApi.updateUser(formObj.value).finally(() => { |
| | | updateLoading.value = false; |
| | | }); |
| | | } |
| | |
| | | <template> |
| | | <div>ProblemType</div> |
| | | <FYSearchBar @search="onSearch"> |
| | | <template #options> |
| | | <!-- åºå¿ --> |
| | | <FYOptionLocation |
| | | :allOption="false" |
| | | :level="3" |
| | | :checkStrictly="false" |
| | | v-model:value="formSearch.locations" |
| | | ></FYOptionLocation> |
| | | <!-- åºæ¯ç±»å --> |
| | | <FYOptionScene |
| | | :allOption="false" |
| | | :type="2" |
| | | v-model:value="formSearch.scenetype" |
| | | ></FYOptionScene> |
| | | </template> |
| | | </FYSearchBar> |
| | | </template> |
| | | |
| | | <script> |
| | |
| | | name: 'ProblemType', |
| | | data() { |
| | | return { |
| | | |
| | | formSearch: { |
| | | locations: {}, |
| | | scenetype: {} |
| | | } |
| | | }; |
| | | }, |
| | | methods: { |
| | | onSearch() { |
| | | this.loading = true; |
| | | } |
| | | } |
| | | }; |
ÎļþÃû´Ó src/views/fysp/evaluation/ResultManage.vue ÐÞ¸Ä |
| | |
| | | this.$refs.tableRef.onSearch(); |
| | | }, |
| | | onSearch(page, func) { |
| | | const area = this._getParam() |
| | | const area = this._getParam(); |
| | | evaluateApi.fetchAutoEvaluation(area).then((res) => { |
| | | if (typeof func === 'function') { |
| | | func({ data: res.data }); |
| | |
| | | }); |
| | | }, |
| | | download() { |
| | | const area = this._getParam() |
| | | evaluateApi.downloadAutoEvaluation(area).then(res=>{ |
| | | this.$parent |
| | | }) |
| | | const area = this._getParam(); |
| | | evaluateApi.downloadAutoEvaluation(area).then((res) => { |
| | | if (res == false) { |
| | | // æªä¸è½½ææ¡£ï¼èæ¯å¼å¯äºææ¡£çæåå°ä»»å¡ |
| | | this.$parent; |
| | | } |
| | | }); |
| | | }, |
| | | getFilters(data) { |
| | | const townList = []; |
ÎļþÃû´Ó src/views/fysp/evaluation/DataSource.vue ÐÞ¸Ä |
| | |
| | | import CompEvaTask from './components/CompEvaTask.vue'; |
| | | import CompPreCheck from './components/precheck/CompPreCheck.vue'; |
| | | export default { |
| | | name: 'DataSource', |
| | | name: 'EvalutationTask', |
| | | components: { CompPreCheck, CompEvaTask }, |
| | | data() { |
| | | return {}; |
| | |
| | | <el-step title="èªå¨è¯ä¼°" /> |
| | | </el-steps> |
| | | <CompCheckArea v-show="stepIndex == 0" v-model="stepIndex" @change="onAreaChange"></CompCheckArea> |
| | | <CompCheckSource v-show="stepIndex == 1" v-model="stepIndex" ref="refSource"></CompCheckSource> |
| | | <CompCheckExemption v-show="stepIndex == 2" v-model="stepIndex"></CompCheckExemption> |
| | | <CompCheckSource |
| | | v-show="stepIndex == 1" |
| | | v-model="stepIndex" |
| | | ref="refSource" |
| | | @change="onDataSourceChange" |
| | | ></CompCheckSource> |
| | | <CompCheckExemption |
| | | v-show="stepIndex == 2" |
| | | v-model="stepIndex" |
| | | @change="onExemptionChange" |
| | | ></CompCheckExemption> |
| | | <CompCheckConfirm |
| | | v-show="stepIndex == 3" |
| | | v-model="stepIndex" |
| | | :area-info="area" |
| | | :data-source="dataSource" |
| | | :exemption-items="exemptionItems" |
| | | @start="onNewTask" |
| | | ></CompCheckConfirm> |
| | | </template> |
| | |
| | | return { |
| | | // æä½æ¥éª¤ä¸æ |
| | | stepIndex: 0, |
| | | area: {} |
| | | area: { |
| | | _locations: {}, |
| | | _scenetype: {} |
| | | }, |
| | | dataSource: {}, |
| | | // è±å
æ¡ç® |
| | | exemptionItems: {} |
| | | }; |
| | | }, |
| | | methods: { |
| | |
| | | */ |
| | | onAreaChange(val) { |
| | | const v = val.value; |
| | | this.area = { |
| | | this.area = v; |
| | | const a = { |
| | | provincecode: v._locations.pCode, |
| | | provincename: v._locations.pName, |
| | | citycode: v._locations.cCode, |
| | |
| | | online: true, |
| | | sourceType: v.sourceType |
| | | }; |
| | | this.$refs.refSource.startCheck(this.area); |
| | | this.$refs.refSource.startCheck(a); |
| | | }, |
| | | onDataSourceChange(val) { |
| | | this.dataSource = val; |
| | | }, |
| | | onExemptionChange(val) { |
| | | this.exemptionItems = val; |
| | | }, |
| | | /** |
| | | * èªå¨è¯ä¼°åç½®åè§æ§æ£æ¥ |
| | |
| | | <div><el-text tag="b" size="large">èªå¨è¯ä¼°ç¡®è®¤</el-text></div> |
| | | <el-text size="small" type="info">æç»ç¡®è®¤èªå¨è¯ä¼°åé
置项ï¼å¹¶å¼å§èªå¨è¯ä¼°</el-text> |
| | | </template> |
| | | <div>è¯ä¼°èå´</div> |
| | | <div>è¯ä¼°æ°æ®æºå®æ´åº¦</div> |
| | | <div>æ¯å¦æè±å
æ¡ç®</div> |
| | | <el-form label-width="160px" label-position="left"> |
| | | <div class="m-b-16"><el-text tag="b" size="large">è¯ä¼°èå´</el-text></div> |
| | | <el-form-item label="åºå"> |
| | | <el-text size="default">{{ areaInfo._locations.pName }}</el-text> |
| | | <el-text size="default">{{ areaInfo._locations.cName }}</el-text> |
| | | <el-text size="default">{{ areaInfo._locations.dName }}</el-text> |
| | | <el-text size="default">{{ areaInfo.starttime }}</el-text> |
| | | </el-form-item> |
| | | <el-form-item label="æ¶é´"> |
| | | <el-text size="default">{{ $fm.formatYM(areaInfo.time) }}</el-text> |
| | | </el-form-item> |
| | | <el-form-item label="åºæ¯"> |
| | | <el-text size="default">{{ areaInfo._scenetype.label }}</el-text> |
| | | </el-form-item> |
| | | <el-divider /> |
| | | <div class="m-b-16"><el-text tag="b" size="large">è¯ä¼°æ°æ®æºå®æ´åº¦</el-text></div> |
| | | <el-form-item :label="v.name" v-for="v in dataSource" :key="v.name"> |
| | | <template v-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-form-item> |
| | | <el-divider /> |
| | | <div class="m-b-16"><el-text tag="b" size="large">è±å
æ¡ç®</el-text></div> |
| | | <div class="m-b-16"><el-text size="default">æ è±å
æ¡ç®</el-text></div> |
| | | </el-form> |
| | | |
| | | <template #footer> |
| | | <el-row justify="space-around"> |
| | | <el-button type="primary" size="default" @click="lastStep">ä¸ä¸æ¥</el-button> |
| | |
| | | // æ¥éª¤ä¸æ |
| | | modelValue: Number, |
| | | // åºåä¿¡æ¯ |
| | | areaInfo: Object |
| | | areaInfo: { |
| | | type: Object, |
| | | default: () => { |
| | | return { |
| | | _locations: {}, |
| | | _scenetype: {} |
| | | }; |
| | | } |
| | | }, |
| | | // æ°æ®æºå®æ´åº¦æ
åµ |
| | | dataSource: Array, |
| | | // æ¡ç®è±å
æ
åµ |
| | | exemptionItems: Array |
| | | }, |
| | | emits: ['update:modelValue', 'start'], |
| | | data() { |
| | |
| | | methods: { |
| | | // å¼å¯èªå¨è¯ä¼°ä»»å¡ |
| | | startEvaluate() { |
| | | evaluateApi.autoEvaluate(this.areaInfo).then((res) => { |
| | | const v = this.areaInfo |
| | | const a = { |
| | | provincecode: v._locations.pCode, |
| | | provincename: v._locations.pName, |
| | | citycode: v._locations.cCode, |
| | | cityname: v._locations.cName, |
| | | districtcode: v._locations.dCode, |
| | | districtname: v._locations.dName, |
| | | towncode: v._locations.tCode, |
| | | townname: v._locations.tName, |
| | | starttime: this.$fm.formatYMDH(v.time), |
| | | scensetypeid: v._scenetype.value, |
| | | online: true, |
| | | sourceType: v.sourceType |
| | | }; |
| | | evaluateApi.autoEvaluate(a).then((res) => { |
| | | this.$emit('start', res.data); |
| | | }); |
| | | }, |
| | |
| | | // æ¥éª¤ä¸æ |
| | | modelValue: Number |
| | | }, |
| | | emits: ['update:modelValue'], |
| | | emits: ['update:modelValue', 'change'], |
| | | data() { |
| | | return { |
| | | |
| | | // è±å
æ¡ç® |
| | | exemptionItems: [] |
| | | }; |
| | | }, |
| | | methods: { |
| | | // 跳转ä¸ä¸æ¥ |
| | | nextStep() { |
| | | this.$emit('change', this.exemptionItems); |
| | | this.$emit('update:modelValue', this.modelValue + 1); |
| | | }, |
| | | // 跳转ä¸ä¸æ¥ |
| | |
| | | // æ¥éª¤ä¸æ |
| | | modelValue: Number |
| | | }, |
| | | emits: ['update:modelValue'], |
| | | emits: ['update:modelValue', 'change'], |
| | | data() { |
| | | return { |
| | | areaInfo: {}, |
| | |
| | | methods: { |
| | | // 跳转ä¸ä¸æ¥ |
| | | nextStep() { |
| | | this.$emit('change', this.checkResults); |
| | | this.$emit('update:modelValue', this.modelValue + 1); |
| | | }, |
| | | // 跳转ä¸ä¸æ¥ |