| | |
| | | "dayjs": "^1.11.10", |
| | | "element-plus": "^2.4.3", |
| | | "js-base64": "^3.7.5", |
| | | "md5": "^2.3.0", |
| | | "pinia": "^2.0.26", |
| | | "vue": "^3.2.45", |
| | | "vue-i18n": "^9.8.0", |
| | |
| | | "node": ">=8" |
| | | } |
| | | }, |
| | | "node_modules/charenc": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npmmirror.com/charenc/-/charenc-0.0.2.tgz", |
| | | "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", |
| | | "engines": { |
| | | "node": "*" |
| | | } |
| | | }, |
| | | "node_modules/check-error": { |
| | | "version": "1.0.2", |
| | | "dev": true, |
| | |
| | | }, |
| | | "engines": { |
| | | "node": ">= 8" |
| | | } |
| | | }, |
| | | "node_modules/crypt": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npmmirror.com/crypt/-/crypt-0.0.2.tgz", |
| | | "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", |
| | | "engines": { |
| | | "node": "*" |
| | | } |
| | | }, |
| | | "node_modules/cssesc": { |
| | |
| | | "node": ">=8" |
| | | } |
| | | }, |
| | | "node_modules/is-buffer": { |
| | | "version": "1.1.6", |
| | | "resolved": "https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz", |
| | | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" |
| | | }, |
| | | "node_modules/is-ci": { |
| | | "version": "3.0.1", |
| | | "dev": true, |
| | |
| | | "node_modules/map-stream": { |
| | | "version": "0.1.0", |
| | | "dev": true |
| | | }, |
| | | "node_modules/md5": { |
| | | "version": "2.3.0", |
| | | "resolved": "https://registry.npmmirror.com/md5/-/md5-2.3.0.tgz", |
| | | "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", |
| | | "dependencies": { |
| | | "charenc": "0.0.2", |
| | | "crypt": "0.0.2", |
| | | "is-buffer": "~1.1.6" |
| | | } |
| | | }, |
| | | "node_modules/memoize-one": { |
| | | "version": "6.0.0", |
| | |
| | | } |
| | | } |
| | | }, |
| | | "charenc": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npmmirror.com/charenc/-/charenc-0.0.2.tgz", |
| | | "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==" |
| | | }, |
| | | "check-error": { |
| | | "version": "1.0.2", |
| | | "dev": true |
| | |
| | | "shebang-command": "^2.0.0", |
| | | "which": "^2.0.1" |
| | | } |
| | | }, |
| | | "crypt": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npmmirror.com/crypt/-/crypt-0.0.2.tgz", |
| | | "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==" |
| | | }, |
| | | "cssesc": { |
| | | "version": "3.0.0", |
| | |
| | | "binary-extensions": "^2.0.0" |
| | | } |
| | | }, |
| | | "is-buffer": { |
| | | "version": "1.1.6", |
| | | "resolved": "https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz", |
| | | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" |
| | | }, |
| | | "is-ci": { |
| | | "version": "3.0.1", |
| | | "dev": true, |
| | |
| | | "version": "0.1.0", |
| | | "dev": true |
| | | }, |
| | | "md5": { |
| | | "version": "2.3.0", |
| | | "resolved": "https://registry.npmmirror.com/md5/-/md5-2.3.0.tgz", |
| | | "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", |
| | | "requires": { |
| | | "charenc": "0.0.2", |
| | | "crypt": "0.0.2", |
| | | "is-buffer": "~1.1.6" |
| | | } |
| | | }, |
| | | "memoize-one": { |
| | | "version": "6.0.0" |
| | | }, |
| | |
| | | "dayjs": "^1.11.10", |
| | | "element-plus": "^2.4.3", |
| | | "js-base64": "^3.7.5", |
| | | "md5": "^2.3.0", |
| | | "pinia": "^2.0.26", |
| | | "vue": "^3.2.45", |
| | | "vue-i18n": "^9.8.0", |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { $jingan } from './index'; |
| | | |
| | | export default { |
| | | /** |
| | | * æ¥è¯¢é确认çè®¾å¤æ¸
å |
| | | */ |
| | | queryDevice(updateTime) { |
| | | return $jingan.get(`feedback/queryDevice?updateTime=${updateTime}`).then((res) => res.data); |
| | | }, |
| | | |
| | | /** |
| | | * æ¥è¯¢æ°å»ºå·¥å° |
| | | */ |
| | | queryGdNew(createTime) { |
| | | return $jingan.get(`feedback/queryGdNew?createTime=${createTime}`).then((res) => res.data); |
| | | }, |
| | | |
| | | /** |
| | | * ä¸ä¼ 设å¤åå·¥å°å
³èå
³ç³»ï¼æ°å¢å·¥å°æç°æå·¥å°ï¼ |
| | | */ |
| | | uploadConstructionDevice(data) { |
| | | return $jingan.post(`feedback/sbGlgd`, data).then((res) => res.data); |
| | | }, |
| | | }; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import axios from 'axios'; |
| | | import md5 from 'md5'; |
| | | import { ElMessage } from 'element-plus'; |
| | | |
| | | let IP = 'http://101.230.224.80:8082/'; |
| | | |
| | | const $jingan = axios.create({ |
| | | baseURL: IP, |
| | | timeout: 20000 |
| | | }); |
| | | |
| | | const TOKEN = 'e6dc8bb9e1ff0ce973fb92b4af2e4c3f'; |
| | | // ç»ä¸æ¶é´æ³è¯·æ±å¤´ |
| | | const headTimeStamp = function () { |
| | | const date = new Date(); |
| | | const nowS = parseInt(date.getTime() / 1000); |
| | | const now = nowS - 200; |
| | | // const now = 1722234092; |
| | | const key = `${now}${TOKEN}`; |
| | | const sign = md5(key); |
| | | return [ |
| | | { key: 'JA-TIMESTAMP', value: now }, |
| | | { key: 'JA-SIGN', value: sign }, |
| | | { key: 'JA-TOKEN', value: TOKEN } |
| | | ]; |
| | | }; |
| | | |
| | | //æ·»å æ¦æªå¨ |
| | | [$jingan].forEach((i) => { |
| | | // æ·»å è¯·æ±æ¦æªå¨ |
| | | i.interceptors.request.use( |
| | | function (config) { |
| | | // å¨åé请æ±ä¹ååäºä»ä¹ |
| | | console.log('==>请æ±å¼å§'); |
| | | console.log(`${config.baseURL}${config.url}`); |
| | | if (config.data) { |
| | | console.log('==>è¯·æ±æ°æ®', config.data); |
| | | } |
| | | const heads = headTimeStamp(); |
| | | heads.forEach((h) => { |
| | | config.headers[h.key] = h.value; |
| | | }); |
| | | return config; |
| | | }, |
| | | function (error) { |
| | | // 对请æ±é误åäºä»ä¹ |
| | | console.log('==>请æ±å¼å§'); |
| | | console.log(error); |
| | | ElMessage({ |
| | | message: error, |
| | | type: 'error' |
| | | }); |
| | | return Promise.reject(error); |
| | | } |
| | | ); |
| | | |
| | | // æ·»å ååºæ¦æªå¨ |
| | | i.interceptors.response.use( |
| | | function (response) { |
| | | // 2xx èå´å
çç¶æç é½ä¼è§¦åè¯¥å½æ°ã |
| | | // 对ååºæ°æ®åç¹ä»ä¹ |
| | | console.log(response); |
| | | console.log('==>请æ±ç»æ'); |
| | | if (response.status == 200) { |
| | | if (response.data.code != undefined && response.data.code != null) { |
| | | if (response.data.code == 20000) { |
| | | return response; |
| | | } else { |
| | | ElMessage({ |
| | | message: response.data.message, |
| | | type: 'error' |
| | | }); |
| | | return Promise.reject(response.data.message); |
| | | } |
| | | } else { |
| | | return response; |
| | | } |
| | | } else { |
| | | return Promise.reject(response); |
| | | } |
| | | }, |
| | | function (error) { |
| | | // è¶
åº 2xx èå´çç¶æç é½ä¼è§¦åè¯¥å½æ°ã |
| | | // 对ååºé误åç¹ä»ä¹ |
| | | console.log(error); |
| | | console.log('==>请æ±ç»æ'); |
| | | ElMessage({ |
| | | message: error, |
| | | type: 'error' |
| | | }); |
| | | return Promise.reject(error); |
| | | } |
| | | ); |
| | | }); |
| | | |
| | | export { $jingan }; |
| | |
| | | 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 ip1 = 'https://fyami.com.cn:447/'; |
| | | let ip1_file = 'https://fyami.com.cn:447/'; |
| | | let ip1 = 'http://47.100.191.150:9005/'; |
| | | let ip1_file = 'http://47.100.191.150:9005/'; |
| | | // let ip1 = 'https://fyami.com.cn:447/'; |
| | | // let ip1_file = 'https://fyami.com.cn:447/'; |
| | | let ip2 = 'https://fyami.com.cn/'; |
| | | let ip2_file = 'https://fyami.com.cn/'; |
| | | |
| | |
| | | import dayjs from 'dayjs'; |
| | | |
| | | const MONTH = 'month'; |
| | | const DATE = 'date'; |
| | | |
| | | export default { |
| | | props: { |
| | |
| | | handleChange(value) { |
| | | this.$emit('update:value', value); |
| | | }, |
| | | timeFormat() { |
| | | switch (this.type) { |
| | | case MONTH: |
| | | return 'YYYY-MM'; |
| | | default: |
| | | return 'YYYY-MM'; |
| | | } |
| | | } |
| | | }, |
| | | mounted() { |
| | | if (this.initValue) { |
| | |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | path: '/fysp/support', |
| | | icon: 'Files', |
| | | name: '坹夿¯æ' |
| | | }, |
| | | |
| | | // { |
| | | // icon: 'Search', |
| | |
| | | component: () => import('@/views/fysp/scene/SceneEdit.vue'), |
| | | meta: { transition: 'slide-left' } |
| | | }, |
| | | { |
| | | //坹夿¯æ |
| | | name: 'fyspSupport', |
| | | path: '/fysp/support', |
| | | component: () => import('@/views/fysp/support/JingAnSupport.vue'), |
| | | }, |
| | | |
| | | /**********************************é£ç¾½ç¯å¢***********************************************/ |
| | | { |
| | |
| | | </template> |
| | | |
| | | <template #table-column> |
| | | <el-table-column fixed="left" prop="sceneName" :show-overflow-tooltip="true" label="åç§°" width="300"> |
| | | <el-table-column fixed="left" sortable prop="sceneIndex" label="ç¼å·" width="80"> |
| | | </el-table-column> |
| | | <el-table-column prop="sceneName" :show-overflow-tooltip="true" label="åç§°" width="300"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="subTaskTime" |
| | |
| | | </template> |
| | | |
| | | <template #table-column> |
| | | <el-table-column fixed="left" sortable prop="index" label="ç¼å·" width="80"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="left" |
| | | prop="name" |
| | |
| | | :show-overflow-tooltip="true" |
| | | width="400" |
| | | > |
| | | <!-- <template #default="scope"> |
| | | <el-tooltip |
| | | effect="dark" |
| | | :content="scope.row.name" |
| | | placement="top-start" |
| | | :show-after="500" |
| | | > |
| | | {{ scope.row.name }} |
| | | </el-tooltip> |
| | | </template> --> |
| | | </el-table-column> |
| | | <el-table-column prop="type" label="ç±»å" width="130" /> |
| | | <el-table-column prop="provincename" label="ç" width="90" /> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <FYOptionTime :initValue="true" type="date" v-model:value="updateTime"></FYOptionTime> |
| | | <el-button type="primary" @click="fetchNewDevice">æ¥è¯¢æ°è®¾å¤</el-button> |
| | | <el-button type="primary" @click="fetchNewConstruction">æ¥è¯¢æ°å·¥å°</el-button> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-text>æ°è®¾å¤</el-text> |
| | | <div v-for="item in deviceList" :key="item.id"> |
| | | <div>{{ item.id }}</div> |
| | | <div>{{ item.code }}</div> |
| | | <div>{{ item.name }}</div> |
| | | <div>{{ item.address }}</div> |
| | | <div>{{ item.status }}</div> |
| | | <span>{{ item.createTime }} |</span> |
| | | <span>{{ item.updateTime }} |</span> |
| | | <span>{{ item.remark }} |</span> |
| | | <span>{{ item.lon }} |</span> |
| | | <span>{{ item.lat }}</span> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-text>æ°å·¥å°</el-text> |
| | | <div v-for="item in constructionList" :key="item.id"> |
| | | <div>{{ item.id }}</div> |
| | | <div>{{ item.code }}</div> |
| | | <div>{{ item.name }}</div> |
| | | <div>{{ item.address }}</div> |
| | | <div>{{ item.street }}</div> |
| | | <div>{{ item.status }}</div> |
| | | <span>{{ item.lon }} |</span> |
| | | <span>{{ item.lat }}</span> |
| | | <span>{{ item.score }} |</span> |
| | | <span>{{ item.grade }}</span> |
| | | <span>{{ item.subTaskId }} |</span> |
| | | <span>{{ item.createTime }} |</span> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </template> |
| | | <script setup> |
| | | import { ref } from 'vue'; |
| | | import dayjs from 'dayjs'; |
| | | import constructionApi from '@/api/additional-jingan/constructionApi'; |
| | | import { useFetchData } from '@/composables/fetchData'; |
| | | |
| | | const { loading, fetchData } = useFetchData(); |
| | | |
| | | const updateTime = ref(); |
| | | const deviceList = ref([]); |
| | | const constructionList = ref([]); |
| | | |
| | | // æ¥è¯¢é确认çè®¾å¤æ¸
å |
| | | function fetchNewDevice() { |
| | | const param = dayjs(updateTime.value).format('YYYY-MM-DD HH:mm:ss'); |
| | | fetchData(() => { |
| | | return constructionApi.queryDevice(param).then((res) => { |
| | | deviceList.value = res.data; |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | // æ¥è¯¢æ°å»ºå·¥å° |
| | | function fetchNewConstruction() { |
| | | const param = dayjs(updateTime.value).format('YYYY-MM-DD HH:mm:ss'); |
| | | fetchData(() => { |
| | | return constructionApi.queryGdNew(param).then((res) => { |
| | | constructionList.value = res.data; |
| | | }); |
| | | }); |
| | | } |
| | | </script> |
| | | <style scoped></style> |