健康上报
This commit is contained in:
		| @@ -1,7 +1,7 @@ | ||||
|  <template> | ||||
|   <ai-detail isHasSidebar v-loading="isLoading"> | ||||
|     <template slot="title"> | ||||
|       <ai-title title="卡口登记详情" isShowBack isShowBottomBorder @onBackClick="cancel(false)"> | ||||
|       <ai-title title="健康上报详情" isShowBack isShowBottomBorder @onBackClick="cancel(false)"> | ||||
|       </ai-title> | ||||
|     </template> | ||||
|     <template slot="content"> | ||||
| @@ -163,7 +163,7 @@ | ||||
|  | ||||
|     methods: { | ||||
|       getInfo (id) { | ||||
|         this.instance.post(`/app/appepidemicpreventionregisterinfo/queryDetailById?id=${id}`).then(res => { | ||||
|         this.instance.post(`/app/appepidemicpreventionhealthreportinfo/queryDetailById?id=${id}`).then(res => { | ||||
|           if (res.code === 0) { | ||||
|             this.info = res.data | ||||
|             this.info.checkPhoto = res.data.checkPhoto ? JSON.parse(res.data.checkPhoto) : [] | ||||
|   | ||||
| @@ -1,52 +1,38 @@ | ||||
| <template> | ||||
|   <ai-list class="list"> | ||||
|     <ai-title slot="title" title="卡口登记" isShowBottomBorder :instance="instance" :hideLevel="0" :disabledLevel="disabledLevel" isShowArea v-model="search.arriveAreaId" @change="changeArea"></ai-title> | ||||
|     <ai-title slot="title" title="健康上报" isShowBottomBorder v-if="search.areaId" :instance="instance" isShowArea v-model="search.areaId" @change="changeArea"></ai-title> | ||||
|     <template slot="content"> | ||||
|       <div class="statistics-top"> | ||||
|         <div class="statistics-top__item"> | ||||
|           <span>登记人数</span> | ||||
|           <h2 style="color: #2266FF;">{{ info['登记人数'] }}</h2> | ||||
|           <span>上报人数</span> | ||||
|           <h2 style="color: #2266FF;">{{ info['上报人员'] }}</h2> | ||||
|         </div> | ||||
|         <div class="statistics-top__item"> | ||||
|           <span>今日登记</span> | ||||
|           <h2 style="color: #22AA99;">{{ info['今日登记'] }}</h2> | ||||
|           <span>今日上报</span> | ||||
|           <h2 style="color: #22AA99;">{{ info['今日上报'] }}</h2> | ||||
|         </div> | ||||
|         <div class="statistics-top__item"> | ||||
|           <span>原路返回</span> | ||||
|           <h2 style="color: #F8B425">{{ info['原路返回'] }}</h2> | ||||
|         </div> | ||||
|         <div class="statistics-top__item"> | ||||
|           <span>居家隔离</span> | ||||
|           <h2 style="color: red">{{ info['居家隔离'] }}</h2> | ||||
|           <span>今日风险</span> | ||||
|           <h2 style="color: #F8B425">{{ info['今日风险'] }}</h2> | ||||
|         </div> | ||||
|       </div> | ||||
|       <div class="content"> | ||||
|         <ai-search-bar bottomBorder> | ||||
|           <template #left> | ||||
|             <ai-select | ||||
|               v-model="search.gatewayId" | ||||
|               v-model="search.nucleicAcidResult" | ||||
|               clearable | ||||
|               placeholder="请选择卡口" | ||||
|               placeholder="请选择检测结果" | ||||
|               :selectList="dict.getDict('EP_nucleicAcidResult')"> | ||||
|             </ai-select> | ||||
|             <ai-select | ||||
|               v-model="search.todayReport" | ||||
|               clearable | ||||
|               placeholder="请选择今日是否上报" | ||||
|               :selectList="dictList" | ||||
|               @change="search.current = 1, getList()"> | ||||
|             </ai-select> | ||||
|             <el-date-picker | ||||
|               v-model="search.queryBeginTime" | ||||
|               type="date" | ||||
|               size="small" | ||||
|               value-format="yyyy-MM-dd" | ||||
|               placeholder="选择开始日期" | ||||
|               @change="search.current = 1, getList()"> | ||||
|             </el-date-picker> | ||||
|             <el-date-picker | ||||
|               v-model="search.queryEndTime" | ||||
|               type="date" | ||||
|               size="small" | ||||
|               value-format="yyyy-MM-dd" | ||||
|               placeholder="选择结束日期" | ||||
|               @change="search.current = 1, getList()"> | ||||
|             </el-date-picker> | ||||
|             <ai-download :instance="instance" url="/app/appepidemicpreventionregisterinfo/export" :params="search" fileName="卡口登记" :disabled="tableData.length == 0"> | ||||
|             <ai-download :instance="instance" url="/app/appepidemicpreventionregisterinfo/export" :params="search" fileName="健康上报" :disabled="tableData.length == 0"> | ||||
|               <el-button icon="iconfont iconExported" :disabled="tableData.length == 0">导出</el-button> | ||||
|             </ai-download> | ||||
|           </template> | ||||
| @@ -101,39 +87,83 @@ | ||||
|           current: 1, | ||||
|           size: 10, | ||||
|           name: '', | ||||
|           gatewayId: '', | ||||
|           status: '', | ||||
|           arriveAreaId: '', | ||||
|           queryBeginTime: '', | ||||
|           queryEndTime: '', | ||||
|           infoType: 0 | ||||
|           areaId: '', | ||||
|           nucleicAcidResult: '', | ||||
|           todayReport: '' | ||||
|         }, | ||||
|         dictList: [], | ||||
|         info: {}, | ||||
|         colConfigs: [ | ||||
|           { prop: 'name', label: '姓名' }, | ||||
|           { prop: 'phone', align: 'center', label: '手机号码' }, | ||||
|           { prop: 'arriveAreaName', align: 'center', label: '返乡地区' }, | ||||
|           { prop: 'areaName', align: 'center', label: '所属地区' }, | ||||
|           { | ||||
|             prop: 'arriveTime', | ||||
|             prop: 'createTime', | ||||
|             align: 'center', | ||||
|             label: '抵平时间' | ||||
|             label: '上报时间', | ||||
|             width: 200 | ||||
|           }, | ||||
|           { prop: 'companionCount', align: 'center', label: '同行人数' }, | ||||
|           { | ||||
|             prop: 'riskLevel', | ||||
|             prop: 'companionCount', | ||||
|             align: 'center', | ||||
|             label: '风险等级', | ||||
|             formart: v => this.dict.getLabel('EP_riskLevel', v) | ||||
|             label: '已接种情况', | ||||
|             render: (h, params) => { | ||||
|               return h( | ||||
|                 'span', | ||||
|                 { | ||||
|                 }, | ||||
|                 this.dict.getLabel('EP_vaccinationCount', params.row.lastReportInfo && params.row.lastReportInfo.vaccinationCount) | ||||
|               ) | ||||
|             } | ||||
|           }, | ||||
|           { prop: 'gatewayName', align: 'center', label: '登记卡口' }, | ||||
|           { prop: 'handleType', align: 'center', label: '处理意见', formart: v => this.dict.getLabel('EP_handleType', v) } | ||||
|           { | ||||
|             prop: 'lastReportInfo', | ||||
|             align: 'center', | ||||
|             label: '健康码', | ||||
|             render: (h, params) => { | ||||
|               return h( | ||||
|                 'span', | ||||
|                 { | ||||
|                 }, | ||||
|                 this.dict.getLabel('EP_jkmType', params.row.lastReportInfo && params.row.lastReportInfo.jkmType) | ||||
|               ) | ||||
|             } | ||||
|           }, | ||||
|           { | ||||
|             prop: 'lastReportInfo', | ||||
|             align: 'center', | ||||
|             label: '核酸日期', | ||||
|             render: (h, params) => { | ||||
|               return h( | ||||
|                 'span', {}, params.row.lastReportInfo && params.row.lastReportInfo.nucleicAcidDate.split(' ')[0] | ||||
|               ) | ||||
|             } | ||||
|           }, | ||||
|           { | ||||
|             prop: 'lastReportInfo', | ||||
|             align: 'center', | ||||
|             label: '检测结果', | ||||
|             render: (h, params) => { | ||||
|               return h( | ||||
|                 'span', {}, this.dict.getLabel('EP_nucleicAcidResult', params.row.lastReportInfo && params.row.lastReportInfo.nucleicAcidResult) | ||||
|               ) | ||||
|             } | ||||
|           }, | ||||
|           { prop: 'status', align: 'center', label: '健康状态', formart: v => v === '0' ? '正常' : '异常' }, | ||||
|           { prop: 'todayReport', align: 'center', label: '今日上报', formart: v => v ? '已上报' : '未上报' } | ||||
|         ], | ||||
|         ids: [], | ||||
|         tableData: [], | ||||
|         total: 0, | ||||
|         loading: false, | ||||
|         disabledLevel: 0 | ||||
|         dictList: [ | ||||
|           { | ||||
|             dictName: '是', | ||||
|             dictValue: 1 | ||||
|           }, | ||||
|           { | ||||
|             dictName: '否', | ||||
|             dictValue: 0 | ||||
|           } | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|  | ||||
| @@ -142,38 +172,24 @@ | ||||
|     }, | ||||
|  | ||||
|     created () { | ||||
|       this.disabledLevel = this.user.info.areaList.length - 1 | ||||
|       this.search.arriveAreaId = this.user.info.areaId | ||||
|       this.loading = true | ||||
|  | ||||
|       this.getTotalInfo() | ||||
|       this.getDictList() | ||||
|       this.dict.load(['EP_riskLevel', 'EP_handleType', 'modeType']).then(() => { | ||||
|         this.getList() | ||||
|       this.instance.post(`/app/appdvcpconfig/getCorpArea`).then(res => { | ||||
|         if (res.code == 0) { | ||||
|           this.search.areaId = res.data | ||||
|           this.getTotalInfo() | ||||
|           this.dict.load(['EP_jkmType', 'EP_vaccinationCount', 'EP_nucleicAcidResult', 'EP_riskStatus', 'EP_source']).then(() => { | ||||
|             this.getList() | ||||
|           }) | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|  | ||||
|     methods: { | ||||
|       getDictList () { | ||||
|         this.instance.post(`/app/appepidemicpreventiongateway/list?size=10000`).then(res => { | ||||
|           if (res.code == 0) { | ||||
|             this.dictList = res.data.records.map(v => { | ||||
|               return { | ||||
|                 dictName: v.name, | ||||
|                 dictValue: v.id | ||||
|               } | ||||
|             }) | ||||
|           } | ||||
|         }) | ||||
|       }, | ||||
|  | ||||
|       getList () { | ||||
|         this.instance.post(`/app/appepidemicpreventionregisterinfo/list`, null, { | ||||
|         this.instance.post(`/app/appepidemicpreventionhealthreportinfo/reportUserList`, null, { | ||||
|           params: { | ||||
|             ...this.search, | ||||
|             arriveAreaId: this.search.arriveAreaId, | ||||
|             queryBeginTime: this.search.queryBeginTime ? this.search.queryBeginTime + ' 00:00:00' : '', | ||||
|             queryEndTime: this.search.queryEndTime ? this.search.queryEndTime + ' 23:59:59' : '' | ||||
|             ...this.search | ||||
|           } | ||||
|         }).then(res => { | ||||
|           if (res.code == 0) { | ||||
| @@ -208,7 +224,7 @@ | ||||
|  | ||||
|       remove(id) { | ||||
|         this.$confirm('确定删除该数据?').then(() => { | ||||
|           this.instance.post(`/app/appepidemicpreventionregisterinfo/delete?id=${id}`).then(res => { | ||||
|           this.instance.post(`/app/appepidemicpreventionhealthreportinfo/delete?id=${id}`).then(res => { | ||||
|             if (res.code == 0) { | ||||
|               this.$message.success('删除成功!') | ||||
|               this.getTotalInfo() | ||||
| @@ -218,11 +234,10 @@ | ||||
|         }) | ||||
|       }, | ||||
|  | ||||
|  | ||||
|       getTotalInfo () { | ||||
|         this.instance.post(`/app/appepidemicpreventionregisterinfo/listStatistics`, null, { | ||||
|         this.instance.post(`/app/appepidemicpreventionhealthreportinfo/listStatistics`, null, { | ||||
|           params: { | ||||
|             areaId: this.search.arriveAreaId | ||||
|             areaId: this.search.areaId | ||||
|           } | ||||
|         }).then(res => { | ||||
|           if (res.code == 0) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user