| | |
| | | <div class="dailyreport"> |
| | | <div class="dailyBox"> |
| | | <div class="dailyTop"> |
| | | <el-select v-model="cityChoose" placeholder="请选择区域"> |
| | | <!-- <el-select |
| | | v-model="cityChoose" |
| | | placeholder="请选择区域" |
| | | > |
| | | <el-option |
| | | v-for="item in cityOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-select v-model="equipChoose1" placeholder="请选择设备"> |
| | | v-for="item in cityOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> --> |
| | | <el-cascader |
| | | ref="myCascader" |
| | | v-model="newRegion" |
| | | placeholder="" |
| | | :options="options" |
| | | :props="{ checkStrictly: true }" |
| | | clearable |
| | | change-on-select |
| | | style="flex: 1" |
| | | @change="getCity" |
| | | /> |
| | | <el-select |
| | | v-model="equipChoose1" |
| | | placeholder="请选择设备" |
| | | > |
| | | <el-option |
| | | v-for="item in equipOptions1" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | v-for="item in equipOptions1" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | <el-date-picker |
| | | v-model="value1" |
| | | type="daterange" |
| | | align="right" |
| | | unlink-panels |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="pickerOptions1"> |
| | | </el-date-picker> |
| | | <el-select v-if="equipChoose1==='car'" v-model="carInput" clearable placeholder="请选择走航车" style="width: 180px;display: inline-block"> |
| | | v-model="value1" |
| | | type="daterange" |
| | | align="right" |
| | | unlink-panels |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="pickerOptions1" |
| | | /> |
| | | <el-select |
| | | v-if="equipChoose1==='car'" |
| | | v-model="carInput" |
| | | clearable |
| | | placeholder="请选择走航车" |
| | | style="width: 180px;display: inline-block" |
| | | > |
| | | <el-option |
| | | v-for="(item,index) in carMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac"> |
| | | </el-option> |
| | | v-for="(item,index) in carMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac" |
| | | /> |
| | | </el-select> |
| | | <el-select v-else v-model="planSelect" clearable placeholder="请选择无人机" style="width: 180px;display: inline-block"> |
| | | <el-select |
| | | v-else |
| | | v-model="planSelect" |
| | | clearable |
| | | placeholder="请选择无人机" |
| | | style="width: 180px;display: inline-block" |
| | | > |
| | | <el-option |
| | | v-for="(item,index) in carMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac"> |
| | | </el-option> |
| | | v-for="(item,index) in carMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac" |
| | | /> |
| | | </el-select> |
| | | <el-button type="primary" @click="selectExport" style="margin-right: 10px;">查询</el-button> |
| | | <el-button type="primary" @click="upImgBtn" style="margin-left: 0">上传</el-button> |
| | | <!-- <el-button type="primary" @click="exportDom">下载demo</el-button>--> |
| | | <el-button |
| | | type="primary" |
| | | style="margin-right: 10px;" |
| | | @click="selectExport" |
| | | > |
| | | 查询 |
| | | </el-button> |
| | | <el-button |
| | | type="primary" |
| | | style="margin-left: 0" |
| | | @click="upImgBtn" |
| | | > |
| | | 上传 |
| | | </el-button> |
| | | <!-- <el-button type="primary" @click="exportDom">下载demo</el-button>--> |
| | | </div> |
| | | <div class="dailyDown" style="overflow-y: auto"> |
| | | <div |
| | | class="dailyDown" |
| | | style="overflow-y: auto" |
| | | > |
| | | <el-card class="boxCard"> |
| | | <div style="text-align: right;"> |
| | | <el-button |
| | | v-if="equipChoose1==='car'" |
| | | type="primary" |
| | | size="mini" |
| | | :disabled="handSelectData.length===0" |
| | | @click="expReport()" |
| | | > |
| | | 下载 |
| | | </el-button> |
| | | <el-button |
| | | v-else |
| | | type="primary" |
| | | size="mini" |
| | | @click="exUAVReport()" |
| | | > |
| | | 下载 |
| | | </el-button> |
| | | </div> |
| | | <el-table |
| | | :data="tableData" |
| | | style="width: 100%;overflow-y: auto; height: 82%;"> |
| | | :data="tableData" |
| | | style="width: 100%;overflow-y: auto; height: 82%;" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column |
| | | prop="name" |
| | | label="报告名称" |
| | | > |
| | | </el-table-column> |
| | | type="selection" |
| | | align="center" |
| | | width="55" |
| | | /> |
| | | <el-table-column |
| | | prop="time" |
| | | label="提交时间" |
| | | > |
| | | </el-table-column> |
| | | prop="name" |
| | | align="center" |
| | | label="报告名称" |
| | | /> |
| | | <el-table-column |
| | | prop="date" |
| | | label="创建时间" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column label="操作"> |
| | | <template slot-scope="scope"> |
| | | <el-button v-if="equipChoose1==='car'" type="text" size="medium" @click="expReport(scope.row)">下载</el-button> |
| | | <el-button v-else type="text" size="medium" @click="exUAVReport(scope.row)">下载</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | prop="mac" |
| | | align="center" |
| | | label="mac" |
| | | /> |
| | | <el-table-column |
| | | prop="time" |
| | | align="center" |
| | | label="提交时间" |
| | | /> |
| | | <el-table-column |
| | | prop="date" |
| | | align="center" |
| | | label="创建时间" |
| | | /> |
| | | <!-- <el-table-column |
| | | label="操作 " |
| | | align="center" |
| | | > --> |
| | | <!-- <template slot-scope="scope"> |
| | | <el-button |
| | | v-if="equipChoose1==='car'" |
| | | type="text" |
| | | size="medium" |
| | | @click="expReport(scope.row)" |
| | | > |
| | | 下载 |
| | | </el-button> |
| | | <el-button |
| | | v-else |
| | | type="text" |
| | | size="medium" |
| | | @click="exUAVReport(scope.row)" |
| | | > |
| | | 下载 |
| | | </el-button> |
| | | </template> --> |
| | | <!-- </el-table-column> --> |
| | | </el-table> |
| | | </el-card> |
| | | </div> |
| | | </div> |
| | | <el-dialog title="上传图片" :visible.sync="openBox"> |
| | | <el-dialog |
| | | title="上传图片" |
| | | :visible.sync="openBox" |
| | | > |
| | | <div class="openTop"> |
| | | <el-select v-model="cityChoose2" placeholder="请选择区域"> |
| | | <!-- <el-select |
| | | v-model="cityChoose2" |
| | | placeholder="请选择区域" |
| | | > |
| | | <el-option |
| | | v-for="item in cityOptions2" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | <el-select v-model="equipChoose2" placeholder="请选择设备"> |
| | | v-for="item in cityOptions2" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> --> |
| | | <el-cascader |
| | | ref="myUpCascader" |
| | | v-model="newUpRegion" |
| | | placeholder="" |
| | | :options="options" |
| | | :props="{ checkStrictly: true }" |
| | | clearable |
| | | change-on-select |
| | | style="flex: 1" |
| | | @change="getUpCity" |
| | | /> |
| | | <el-select |
| | | v-model="equipChoose2" |
| | | placeholder="请选择设备" |
| | | > |
| | | <el-option |
| | | v-for="item in equipOptions2" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | v-for="item in equipOptions2" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | <el-select v-if="equipChoose2==='car'" v-model="carInput2" clearable placeholder="请选择走航车" style="width: 180px;display: inline-block"> |
| | | <el-select |
| | | v-if="equipChoose2==='car'" |
| | | v-model="carInput2" |
| | | clearable |
| | | placeholder="请选择走航车" |
| | | style="width: 180px;display: inline-block" |
| | | > |
| | | <el-option |
| | | v-for="(item, index) in carMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac"> |
| | | </el-option> |
| | | v-for="(item, index) in carMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac" |
| | | /> |
| | | </el-select> |
| | | <el-select v-else v-model="planSelect2" clearable placeholder="请选择无人机" style="width: 180px;display: inline-block"> |
| | | <el-select |
| | | v-else |
| | | v-model="planSelect2" |
| | | clearable |
| | | placeholder="请选择无人机" |
| | | style="width: 180px;display: inline-block" |
| | | > |
| | | <el-option |
| | | v-for="(item, index) in planMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac"> |
| | | </el-option> |
| | | v-for="(item, index) in planMac" |
| | | :key="index" |
| | | :label="item.name" |
| | | :value="item.mac" |
| | | /> |
| | | </el-select> |
| | | <el-input v-if="equipChoose2==='car'" v-model="areaInput3" placeholder="请输入走航区域" clearable style="width: 180px;display: inline-block"></el-input> |
| | | <el-input v-else v-model="planInput2" placeholder="请输入飞行区域" clearable style="width: 180px;display: inline-block"></el-input> |
| | | <el-button v-if="equipChoose2!=='car'" type="primary" @click="innerVisible = true">飞行监测</el-button> |
| | | <div class="dateTimeBox" v-if="equipChoose2==='car'"> |
| | | <el-input |
| | | v-if="equipChoose2==='car'" |
| | | v-model="areaInput3" |
| | | placeholder="请输入走航区域" |
| | | clearable |
| | | style="width: 180px;display: inline-block" |
| | | /> |
| | | <el-input |
| | | v-else |
| | | v-model="planInput2" |
| | | placeholder="请输入飞行区域" |
| | | clearable |
| | | style="width: 180px;display: inline-block" |
| | | /> |
| | | <el-button |
| | | v-if="equipChoose2!=='car'" |
| | | type="primary" |
| | | @click="innerVisible = true" |
| | | > |
| | | 飞行监测 |
| | | </el-button> |
| | | <div |
| | | v-if="equipChoose2==='car'" |
| | | class="dateTimeBox" |
| | | > |
| | | <div> |
| | | <el-date-picker |
| | | v-model="value2" |
| | | type="datetimerange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="value2Pic" |
| | | @change="value2Change"> |
| | | </el-date-picker> |
| | | <el-button style="padding: 6px 8px;" @click="addDate('add')" :disabled="isDidAdd">+</el-button> |
| | | <el-button style="padding: 6px 10px;" @click="addDate('minus')" :disabled="isDisMinus">-</el-button> |
| | | v-model="value2" |
| | | type="datetimerange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="value2Pic" |
| | | @change="value2Change" |
| | | /> |
| | | <el-button |
| | | style="padding: 6px 8px;" |
| | | :disabled="isDidAdd" |
| | | @click="addDate('add')" |
| | | > |
| | | + |
| | | </el-button> |
| | | <el-button |
| | | style="padding: 6px 10px;" |
| | | :disabled="isDisMinus" |
| | | @click="addDate('minus')" |
| | | > |
| | | - |
| | | </el-button> |
| | | </div> |
| | | <div :style="{display:dateTime2}"> |
| | | <el-date-picker |
| | | v-model="value3" |
| | | type="datetimerange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="value3Pic" |
| | | @change="value3Change"> |
| | | </el-date-picker> |
| | | v-model="value3" |
| | | type="datetimerange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="value3Pic" |
| | | @change="value3Change" |
| | | /> |
| | | </div> |
| | | <div :style="{display:dateTime3}"> |
| | | <el-date-picker |
| | | v-model="value4" |
| | | type="datetimerange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="value4Pic" |
| | | @change="value4Change"> |
| | | </el-date-picker> |
| | | v-model="value4" |
| | | type="datetimerange" |
| | | range-separator="至" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :picker-options="value4Pic" |
| | | @change="value4Change" |
| | | /> |
| | | </div> |
| | | </div> |
| | | <div v-else> |
| | | <el-date-picker |
| | | v-model="planUpTime" |
| | | type="date" |
| | | placeholder="选择日期"> |
| | | </el-date-picker> |
| | | v-model="planUpTime" |
| | | type="date" |
| | | placeholder="选择日期" |
| | | /> |
| | | </div> |
| | | </div> |
| | | <div v-if="equipChoose2==='car'" class="uploadDiv" style="width:90%;overflow: auto;display: flex;flex-wrap: wrap;justify-content: space-between"> |
| | | <div |
| | | v-if="equipChoose2==='car'" |
| | | class="uploadDiv" |
| | | style="width:90%;overflow: auto;display: flex;flex-wrap: wrap;justify-content: space-between" |
| | | > |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange1" |
| | | :on-remove="handleRemove1" |
| | | :file-list="fileList1" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传走航监测概况图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange1" |
| | | :on-remove="handleRemove1" |
| | | :file-list="fileList1" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传走航监测概况图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange2" |
| | | :on-remove="handleRemove2" |
| | | :file-list="fileList2" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传PM2.5走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange2" |
| | | :on-remove="handleRemove2" |
| | | :file-list="fileList2" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传PM2.5走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange3" |
| | | :on-remove="handleRemove3" |
| | | :file-list="fileList3" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传PM10走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange3" |
| | | :on-remove="handleRemove3" |
| | | :file-list="fileList3" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传PM10走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange4" |
| | | :on-remove="handleRemove4" |
| | | :file-list="fileList4" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传NO2走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange4" |
| | | :on-remove="handleRemove4" |
| | | :file-list="fileList4" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传NO2走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange5" |
| | | :on-remove="handleRemove5" |
| | | :file-list="fileList5" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传CO走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange5" |
| | | :on-remove="handleRemove5" |
| | | :file-list="fileList5" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传CO走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange6" |
| | | :on-remove="handleRemove6" |
| | | :file-list="fileList6" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传SO2走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange6" |
| | | :on-remove="handleRemove6" |
| | | :file-list="fileList6" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传SO2走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange7" |
| | | :on-remove="handleRemove7" |
| | | :file-list="fileList7" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传O3走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange7" |
| | | :on-remove="handleRemove7" |
| | | :file-list="fileList7" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传O3走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange8" |
| | | :on-remove="handleRemove8" |
| | | :file-list="fileList8" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传VOCs走航监测图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange8" |
| | | :on-remove="handleRemove8" |
| | | :file-list="fileList8" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传VOCs走航监测图片 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="upload" |
| | | :on-change="handleChange9" |
| | | :on-remove="handleRemove9" |
| | | :file-list="fileList9" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传小结图片</div> |
| | | ref="upload" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChange9" |
| | | :on-remove="handleRemove9" |
| | | :file-list="fileList9" |
| | | :limit="1" |
| | | :on-exceed="handleExceed" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传小结图片 |
| | | </div> |
| | | </el-upload> |
| | | </div> |
| | | <div v-else class="uploadDiv" style="width:90%;overflow: auto;display: flex;flex-wrap: wrap;justify-content: space-between"> |
| | | <div |
| | | v-else |
| | | class="uploadDiv" |
| | | style="width:90%;overflow: auto;display: flex;flex-wrap: wrap;justify-content: space-between" |
| | | > |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan1" |
| | | :on-change="handleChangePlan1" |
| | | :on-remove="handleRemovePlan1" |
| | | :file-list="fileListPlan1" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传国控点位置及航拍图</div> |
| | | ref="uploadPlan1" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan1" |
| | | :on-remove="handleRemovePlan1" |
| | | :file-list="fileListPlan1" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传国控点位置及航拍图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan2" |
| | | :on-change="handleChangePlan2" |
| | | :on-remove="handleRemovePlan2" |
| | | :file-list="fileListPlan2" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传国控点实时数值图</div> |
| | | ref="uploadPlan2" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan2" |
| | | :on-remove="handleRemovePlan2" |
| | | :file-list="fileListPlan2" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传国控点实时数值图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan3" |
| | | :on-change="handleChangePlan3" |
| | | :on-remove="handleRemovePlan3" |
| | | :file-list="fileListPlan3" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传高值区域与国控点相对位置图</div> |
| | | ref="uploadPlan3" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan3" |
| | | :on-remove="handleRemovePlan3" |
| | | :file-list="fileListPlan3" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传高值区域与国控点相对位置图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan4" |
| | | :on-change="handleChangePlan4" |
| | | :on-remove="handleRemovePlan4" |
| | | :file-list="fileListPlan4" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传O3实时监测高值区域图</div> |
| | | ref="uploadPlan4" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan4" |
| | | :on-remove="handleRemovePlan4" |
| | | :file-list="fileListPlan4" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传O3实时监测高值区域图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan5" |
| | | :on-change="handleChangePlan5" |
| | | :on-remove="handleRemovePlan5" |
| | | :file-list="fileListPlan5" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传O3高值区现场航拍图</div> |
| | | ref="uploadPlan5" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan5" |
| | | :on-remove="handleRemovePlan5" |
| | | :file-list="fileListPlan5" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传O3高值区现场航拍图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan6" |
| | | :on-change="handleChangePlan6" |
| | | :on-remove="handleRemovePlan6" |
| | | :file-list="fileListPlan6" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传PM10实时监测高值区域图</div> |
| | | ref="uploadPlan6" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan6" |
| | | :on-remove="handleRemovePlan6" |
| | | :file-list="fileListPlan6" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传PM10实时监测高值区域图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan7" |
| | | :on-change="handleChangePlan7" |
| | | :on-remove="handleRemovePlan7" |
| | | :file-list="fileListPlan7" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传PM10高值区现场航拍图</div> |
| | | ref="uploadPlan7" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan7" |
| | | :on-remove="handleRemovePlan7" |
| | | :file-list="fileListPlan7" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传PM10高值区现场航拍图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan8" |
| | | :on-change="handleChangePlan8" |
| | | :on-remove="handleRemovePlan8" |
| | | :file-list="fileListPlan8" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传SO2实时监测高值区域图</div> |
| | | ref="uploadPlan8" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan8" |
| | | :on-remove="handleRemovePlan8" |
| | | :file-list="fileListPlan8" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传SO2实时监测高值区域图 |
| | | </div> |
| | | </el-upload> |
| | | <el-upload |
| | | class="upload-demo" |
| | | action="" |
| | | ref="uploadPlan9" |
| | | :on-change="handleChangePlan9" |
| | | :on-remove="handleRemovePlan9" |
| | | :file-list="fileListPlan9" |
| | | multiple |
| | | :auto-upload="false"> |
| | | <el-button slot="trigger" type="primary" size="small">选取图片</el-button> |
| | | <div slot="tip" class="el-upload__tip">请上传SO2高值区现场航拍图</div> |
| | | ref="uploadPlan9" |
| | | class="upload-demo" |
| | | action="" |
| | | :on-change="handleChangePlan9" |
| | | :on-remove="handleRemovePlan9" |
| | | :file-list="fileListPlan9" |
| | | multiple |
| | | :auto-upload="false" |
| | | > |
| | | <el-button |
| | | slot="trigger" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 选取图片 |
| | | </el-button> |
| | | <div |
| | | slot="tip" |
| | | class="el-upload__tip" |
| | | > |
| | | 请上传SO2高值区现场航拍图 |
| | | </div> |
| | | </el-upload> |
| | | </div> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="openBox = false">取 消</el-button> |
| | | <el-button type="primary" @click="submitImgs" :disabled ="isDisplay">保 存</el-button> |
| | | <div |
| | | slot="footer" |
| | | class="dialog-footer" |
| | | > |
| | | <el-button @click="openBox = false"> |
| | | 取 消 |
| | | </el-button> |
| | | <el-button |
| | | type="primary" |
| | | :disabled="isDisplay" |
| | | @click="submitImgs" |
| | | > |
| | | 保 存 |
| | | </el-button> |
| | | </div> |
| | | <el-dialog |
| | | class="innerDialog" |
| | | width="70%" |
| | | height="90%" |
| | | margin-top="7vh" |
| | | title="内层 Dialog" |
| | | :visible.sync="innerVisible" |
| | | append-to-body> |
| | | <Map></Map> |
| | | class="innerDialog" |
| | | width="70%" |
| | | height="90%" |
| | | margin-top="7vh" |
| | | title="内层 Dialog" |
| | | :visible.sync="innerVisible" |
| | | append-to-body |
| | | > |
| | | <Map /> |
| | | </el-dialog> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { exportDocx } from '@/utils/exportImageFile' |
| | | // import { exportDocx } from '@/utils/exportImageFile' |
| | | import { exportUAVImage } from '@/utils/exportUAVImage' |
| | | import requestObj from '@/utils/request' |
| | | import Map from '@/components/PlanMap/Map' |
| | | export default { |
| | | components: { Map }, |
| | | data() { |
| | | data () { |
| | | return { |
| | | cityChoose: 'gx', // 默认查询高新区走行车 |
| | | cityChoose2: 'gx', // 默认上传高新区图片 |
| | | cityOptions: [{ |
| | | value: 'gx', |
| | | label: '高新区' |
| | | }, { |
| | | value: 'hn', |
| | | label: '浑南区' |
| | | }], |
| | | cityOptions2: [{ |
| | | value: 'gx', |
| | | label: '高新区' |
| | | }, { |
| | | value: 'hn', |
| | | label: '浑南区' |
| | | }], |
| | | handSelectData: [], |
| | | options: [], |
| | | newRegion: [], |
| | | newUpRegion: [], |
| | | cityForm: {}, |
| | | cityUpForm: {}, |
| | | cityChoose: '', // 默认查询高新区走行车 |
| | | cityChoose2: '', // 默认上传高新区图片 |
| | | equipChoose1: 'car', |
| | | equipChoose2: 'car', |
| | | equipOptions1: [{ |
| | |
| | | pickerOptions1: { |
| | | shortcuts: [{ |
| | | text: '最近一周', |
| | | onClick(picker) { |
| | | onClick (picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 7) |
| | |
| | | } |
| | | }, { |
| | | text: '最近一个月', |
| | | onClick(picker) { |
| | | onClick (picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 30) |
| | |
| | | } |
| | | }, { |
| | | text: '最近三个月', |
| | | onClick(picker) { |
| | | onClick (picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 90) |
| | |
| | | }] |
| | | }, |
| | | pickerOptions: { // 快捷键 |
| | | disabledDate(time) { |
| | | disabledDate (time) { |
| | | return time.getTime() > Date.now() |
| | | }, |
| | | shortcuts: [{ |
| | | text: '今天', |
| | | onClick(picker) { |
| | | onClick (picker) { |
| | | picker.$emit('pick', new Date()) |
| | | } |
| | | }, { |
| | | text: '昨天', |
| | | onClick(picker) { |
| | | onClick (picker) { |
| | | const date = new Date() |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24) |
| | | picker.$emit('pick', date) |
| | | } |
| | | }, { |
| | | text: '一周前', |
| | | onClick(picker) { |
| | | onClick (picker) { |
| | | const date = new Date() |
| | | date.setTime(date.getTime() - 3600 * 1000 * 24 * 7) |
| | | picker.$emit('pick', date) |
| | |
| | | } |
| | | }, |
| | | watch: { |
| | | value1(n, o) { |
| | | value1 (n, o) { |
| | | if (n === null) { |
| | | this.value1 = [] |
| | | } |
| | | }, |
| | | value2(n, o) { |
| | | value2 (n, o) { |
| | | if (n === null) { |
| | | this.value2 = [] |
| | | } |
| | | }, |
| | | value3(n, o) { |
| | | value3 (n, o) { |
| | | if (n === null) { |
| | | this.value3 = [] |
| | | } |
| | | }, |
| | | value4(n, o) { |
| | | value4 (n, o) { |
| | | if (n === null) { |
| | | this.value4 = [] |
| | | } |
| | | }, |
| | | equipChoose1(n, o) { |
| | | equipChoose1 (n, o) { |
| | | if (n !== o) { |
| | | this.tableData = [] |
| | | } |
| | | }, |
| | | cityChoose(n, o) { |
| | | cityChoose (n, o) { |
| | | if (n !== o) { |
| | | this.tableData = [] |
| | | } |
| | |
| | | deep: true, |
| | | immediate: true |
| | | }, |
| | | created() { |
| | | created () { |
| | | this.getRegion() |
| | | // 走航车数组 |
| | | this.$request({ |
| | | url: 'cruiser/selectCruisers', |
| | |
| | | }).catch(err => { |
| | | console.log(err) |
| | | }) |
| | | // 无人机数组 |
| | | // this.$request({ |
| | | // url: 'uav/getUavDaily', |
| | | // method: 'get' |
| | | // }).then(res => { |
| | | // this.planMac = res.data |
| | | // }).catch(err => { |
| | | // console.log(err) |
| | | // }) |
| | | }, |
| | | methods: { |
| | | getCity () { |
| | | console.log('this.$refs.myCascader.getCheckedNodes()[0]', this.$refs.myCascader.getCheckedNodes()[0]) |
| | | if (this.newRegion.length > 0) { // 点击清空时,也会触发change事件,避免报错,先判断一下是否有值在来获取选择的节点 |
| | | const { label: org, value: orgid } = |
| | | this.$refs.myCascader.getCheckedNodes()[0] |
| | | this.cityForm = { org, orgid } |
| | | console.log('this.cityForm', this.cityForm) |
| | | this.cityChoose = orgid |
| | | } else { |
| | | this.cityForm = {} |
| | | this.cityChoose = '' |
| | | } |
| | | }, |
| | | getUpCity () { |
| | | if (this.newUpRegion.length > 0) { // 点击清空时,也会触发change事件,避免报错,先判断一下是否有值在来获取选择的节点 |
| | | const { label: org, value: orgid } = |
| | | this.$refs.myUpCascader.getCheckedNodes()[0] |
| | | this.cityUpForm = { org, orgid } |
| | | console.log('this.cityUpForm', this.cityUpForm) |
| | | this.cityChoose2 = orgid |
| | | } else { |
| | | this.cityUpForm = {} |
| | | this.cityChoose2 = '' |
| | | } |
| | | }, |
| | | getRegion () { |
| | | this.$request({ |
| | | url: '/organization/getMapPath', |
| | | method: 'get', |
| | | params: { |
| | | organizationId: this.$store.state.orgId |
| | | } |
| | | }) |
| | | .then((res) => { |
| | | const data = res.data |
| | | for (let i = 0; i < data.length; i++) { |
| | | this.options.push({ |
| | | value: data[i].provinceCode, |
| | | label: data[i].provinceName |
| | | }) |
| | | this.options[i].children = [] |
| | | for (let j = 0; j < data[i].cities.length; j++) { |
| | | this.options[i].children.push({ |
| | | value: data[i].cities[j].cityCode, |
| | | label: data[i].cities[j].cityName |
| | | }) |
| | | // 盐城暂不需要区 |
| | | if (data[i].cities[j].cityCode !== 320900) { |
| | | this.options[i].children[j].children = [] |
| | | for (let k = 0; k < data[i].cities[j].areas.length; k++) { |
| | | this.options[i].children[j].children.push({ |
| | | value: data[i].cities[j].areas[k].areaCode, |
| | | label: data[i].cities[j].areas[k].areaName |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | .catch((err) => { |
| | | // console.log('请求Region失败') |
| | | console.log(err) |
| | | }) |
| | | // console.log('请求Region结束') |
| | | }, |
| | | handleSelectionChange (e) { |
| | | this.handSelectData = e.map(i => i.id) |
| | | console.log('this.handSelectData', this.handSelectData) |
| | | }, |
| | | // 模拟下载 |
| | | exportDom() { |
| | | // const url1 = `http://47.99.64.149:8081//static/img/7f633687-8321-4f89-bffc-9a52f94cfb77.jpg` |
| | | // const url2 = `http://47.99.64.149:8081//static/img/7f633687-8321-4f89-bffc-9a52f94cfb77.jpg` |
| | | // const url3 = `http://47.99.64.149:8081//static/img/7f633687-8321-4f89-bffc-9a52f94cfb77.jpg` |
| | | // const url4 = `http://47.99.64.149:8081//static/img/7f633687-8321-4f89-bffc-9a52f94cfb77.jpg` |
| | | // this.UAVReport.fileLists[1] = [url1, url2] |
| | | // this.UAVReport.fileLists[3] = [url3, url4, url3] |
| | | exportDom () { |
| | | const baseUrl = `${requestObj.baseUrl}/static/img/` |
| | | var images = [['7f633687-8321-4f89-bffc-9a52f94cfb77.jpg', '7f633687-8321-4f89-bffc-9a52f94cfb77.jpg'], [], [], ['7f633687-8321-4f89-bffc-9a52f94cfb77.jpg', '7f633687-8321-4f89-bffc-9a52f94cfb77.jpg', '7f633687-8321-4f89-bffc-9a52f94cfb77.jpg'], [], [], [], []] |
| | | var info = 0 |
| | |
| | | exportUAVImage('/UAVReport.docx', this.UAVReport, `模拟无人机报告.docx`) |
| | | }, |
| | | // 查询走行车报告 |
| | | selectExport() { |
| | | selectExport () { |
| | | console.log(this.cityChoose) |
| | | this.selectTime = this.newTime(this.value1) |
| | | if (this.cityChoose && this.equipChoose1 && this.selectTime[1]) { |
| | | // 判断无人机or走航车 |
| | |
| | | } |
| | | info.map(v => { |
| | | var time = v.time.split('-').join('') |
| | | if (this.cityChoose === 'gx') { |
| | | v.name = `高新区走航监测报告${time}` |
| | | } else { |
| | | v.name = `浑南区走航监测报告${time}` |
| | | } |
| | | |
| | | // if (this.cityChoose === 'gx') { |
| | | // v.name = `高新区走航监测报告${time}` |
| | | // } else if (this.cityChoose === 'yc') { |
| | | // v.name = `盐城市走航监测报告${time}` |
| | | // } else { |
| | | // v.name = `浑南区走航监测报告${time}` |
| | | // } |
| | | v.name = this.cityForm.org + `${time}` |
| | | }) |
| | | info.sort((a, b) => { return b.time.split('-').join('') - a.time.split('-').join('') }) |
| | | this.tableData = info |
| | |
| | | } |
| | | }, |
| | | // 上传图片 |
| | | submitImgs() { |
| | | submitImgs () { |
| | | if (this.equipChoose2 === 'car') { // 上传走航车图片 |
| | | this.tableData = [] |
| | | this.isDisplay = true |
| | |
| | | this.equipChoose1 = this.equipChoose2 |
| | | this.cityChoose = this.cityChoose2 |
| | | var reportInfo = res.data |
| | | if (this.cityChoose2 === 'gx') { |
| | | reportInfo.name = '高新区走航监测报告' + reportInfo.time.split('-').join('') |
| | | } else { |
| | | reportInfo.name = '浑南区走航监测报告' + reportInfo.time.split('-').join('') |
| | | } |
| | | // if (this.cityChoose2 === 'gx') { |
| | | // reportInfo.name = '高新区走航监测报告' + reportInfo.time.split('-').join('') |
| | | // } else if (this.cityChoose === 'yc') { |
| | | // reportInfo.name = '盐城市走航监测报告' + reportInfo.time.split('-').join('') |
| | | // } else { |
| | | // reportInfo.name = '浑南区走航监测报告' + reportInfo.time.split('-').join('') |
| | | // } |
| | | reportInfo.name = this.cityForm.org + '走航监测报告' + reportInfo.time.split('-').join('') |
| | | this.tableData = [reportInfo] |
| | | } else if (res.code === -47) { |
| | | this.$message(res.message) |
| | |
| | | } |
| | | }, |
| | | // 上传无人机图片 |
| | | async UAVUpImage() { |
| | | async UAVUpImage () { |
| | | var upObj = {} |
| | | console.log('uav上传') |
| | | this.tableData = [] |
| | |
| | | upObj.time = this.upTime |
| | | var objJson = JSON.stringify(upObj) |
| | | console.log(objJson, 'objJson') |
| | | // const formData = new FormData() |
| | | // formData.append(`objJson`, objJson) |
| | | // 弹框隐藏 |
| | | this.openBox = false |
| | | this.$request({ |
| | | url: 'uav/getUavDaily', |
| | | // data: formData, |
| | | data: { objJson: objJson }, |
| | | method: 'post' |
| | | method: 'post', |
| | | contentType: 'application/json' |
| | | }).then(res => { |
| | | this.isDisplay = false |
| | | if (res.code === 0) { |
| | |
| | | this.equipChoose1 = this.equipChoose2 |
| | | this.cityChoose = this.cityChoose2 |
| | | var reportInfo = res.data |
| | | if (this.cityChoose === 'gx') { |
| | | reportInfo.name = '高新区飞行监测报告' + reportInfo.time.split('-').join('') |
| | | } else { |
| | | reportInfo.name = '浑南区飞行监测报告' + reportInfo.time.split('-').join('') |
| | | } |
| | | |
| | | // if (this.cityChoose === 'gx') { |
| | | // reportInfo.name = '高新区飞行监测报告' + reportInfo.time.split('-').join('') |
| | | // } else if (this.cityChoose === 'yc') { |
| | | // reportInfo.name = '盐城市飞行监测报告' + reportInfo.time.split('-').join('') |
| | | // } else { |
| | | // reportInfo.name = '浑南区飞行监测报告' + reportInfo.time.split('-').join('') |
| | | // } |
| | | reportInfo.name = this.cityForm.org + '走航监测报告' + reportInfo.time.split('-').join('') |
| | | this.tableData = [reportInfo] |
| | | } else if (res.code === -47) { |
| | | this.$message(res.message) |
| | |
| | | } |
| | | }, |
| | | // 提交文件后台接口 |
| | | MultipartFile(data) { |
| | | MultipartFile (data) { |
| | | return this.$request({ |
| | | url: '/cruiser/getDaily', |
| | | method: 'post', |
| | |
| | | }) |
| | | }, |
| | | // 下载走航车报告 |
| | | expReport(obj) { |
| | | expReport (obj) { |
| | | this.$request({ |
| | | url: '/cruiser/loadDaily', |
| | | method: 'get', |
| | | params: { |
| | | id: obj.id |
| | | method: 'post', |
| | | responseType: 'blob', |
| | | data: { |
| | | ids: this.handSelectData |
| | | } |
| | | }).then(res => { |
| | | const baseUrl = `${requestObj.baseUrl}/static/img/` |
| | | var imagesObj = res.data.images |
| | | this.sailingReport = { ...this.sailingReport, ...res.data.code } |
| | | // const url1 = `http://47.99.64.149:8081//static/img/7f633687-8321-4f89-bffc-9a52f94cfb77.jpg` |
| | | if (imagesObj) { |
| | | for (let i = 0; i < imagesObj.length; i++) { |
| | | this.sailingReport.fileLists[i] = [{ url: baseUrl + imagesObj[i] }] |
| | | } |
| | | } |
| | | this.sailingReport.index = imagesObj.length |
| | | var data2 = obj.date.split('-') |
| | | this.sailingReport.date2 = data2[0] + '年' + data2[1] + '月' + data2[2] + '日' |
| | | var time = [] |
| | | for (let i = 0; i < res.data.code.time.length; i++) { |
| | | time.push(res.data.code.time[i]) |
| | | } |
| | | this.sailingReport.time0 = time[0] |
| | | if (time.length === 2) { |
| | | this.sailingReport.time1 = time[1] |
| | | } |
| | | if (time.length === 3) { |
| | | this.sailingReport.time1 = time[1] |
| | | this.sailingReport.time2 = time[2] |
| | | } |
| | | if (this.cityChoose === 'gx') { |
| | | this.sailingReport.city = '高新区' |
| | | } else { |
| | | this.sailingReport.city = '浑南区' |
| | | } |
| | | exportDocx('/sailingReport.docx', this.sailingReport, `${obj.name}.docx`) |
| | | // if (this.cityChoose === 'gx') { |
| | | // this.sailingReport.city = '高新区' |
| | | // } else if (this.cityChoose === 'yc') { |
| | | // this.sailingReport.city = '盐城市' |
| | | // } else { |
| | | // this.sailingReport.city = '浑南区' |
| | | // } |
| | | this.sailingReport.city = this.cityForm.org |
| | | this.getOutExcel(`${this.sailingReport.city}.docx`, res) |
| | | }).catch(err => { |
| | | console.log(err) |
| | | }) |
| | | }, |
| | | getOutExcel (fileName, res) { |
| | | const blob = new Blob([res], { type: 'application/msword' }) |
| | | if (window.navigator.msSaveOrOpenBlob) { |
| | | // 兼容 IE & EDGE |
| | | navigator.msSaveBlob(blob, fileName) |
| | | } else { |
| | | var link = document.createElement('a') |
| | | // 兼容不同浏览器的URL对象 |
| | | const url = window.URL || window.webkitURL || window.moxURL |
| | | // 创建下载链接 |
| | | link.href = url.createObjectURL(blob) |
| | | // 命名下载名称 |
| | | link.download = fileName |
| | | // 点击触发下载 |
| | | link.click() |
| | | // 下载完成进行释放 |
| | | url.revokeObjectURL(link.href) |
| | | } |
| | | }, |
| | | // 下载无人机报告 |
| | | exUAVReport(obj) { |
| | | exUAVReport (obj) { |
| | | this.$request({ |
| | | url: '', |
| | | method: 'get', |
| | |
| | | this.UAVReport.time1 = time[1] |
| | | this.UAVReport.time2 = time[2] |
| | | } |
| | | if (this.cityChoose === 'gx') { |
| | | this.UAVReport.city = '高新区' |
| | | } else { |
| | | this.UAVReport.city = '浑南区' |
| | | } |
| | | // if (this.cityChoose === 'yc') { |
| | | // this.UAVReport.city = '盐城市' |
| | | // } else if (this.cityChoose === 'gx') { |
| | | // this.UAVReport.city = '高新区' |
| | | // } else { |
| | | // this.UAVReport.city = '浑南区' |
| | | // } |
| | | this.UAVReport.city = this.cityForm.org |
| | | exportUAVImage('/UAVReport.docx', this.UAVReport, `${obj.name}.docx`) |
| | | }).catch(err => { |
| | | console.log(err) |
| | | }) |
| | | }, |
| | | // 上传按钮 |
| | | upImgBtn() { |
| | | upImgBtn () { |
| | | this.openBox = true |
| | | this.isDisplay = false |
| | | }, |
| | | // 添加或删除一个时间控件 |
| | | addDate(name) { |
| | | addDate (name) { |
| | | if (name === 'add') { // 加 |
| | | if (this.dateTime2 === 'none') { // 调出dateTime2 |
| | | this.dateTime2 = 'block' |
| | |
| | | } |
| | | }, |
| | | // value2改变判断是否有value3和value4 |
| | | value2Change(e) { |
| | | value2Change (e) { |
| | | var time2 = [] |
| | | var time3 = [] |
| | | var time4 = [] |
| | |
| | | } |
| | | }, |
| | | // value3改变时判断是否在value2区间内,前提:value2存在 |
| | | value3Change(e) { |
| | | value3Change (e) { |
| | | if (this.value3 !== null) { |
| | | if (this.value2.length) { |
| | | var time2 = [] |
| | |
| | | } |
| | | }, |
| | | // value4改变时判断是否在value2和value3区间内 |
| | | value4Change(e) { |
| | | value4Change (e) { |
| | | if (this.value4 !== null) { |
| | | if (this.value2.length && this.value3.length) { |
| | | var time2 = [] |
| | |
| | | } |
| | | }, |
| | | // 时间处理函数(日期带0) |
| | | newTime(timeArr, name) { |
| | | newTime (timeArr, name) { |
| | | var arr = [] |
| | | if (name === 'submit') { |
| | | timeArr.map(v => { |
| | |
| | | } |
| | | }, |
| | | // 时间处理函数,日期是单个 |
| | | OneDayNew(time) { |
| | | OneDayNew (time) { |
| | | var date = new Date(time) |
| | | var y = date.getFullYear() |
| | | var m = date.getMonth() + 1 |
| | |
| | | return y + '-' + m + '-' + d |
| | | }, |
| | | // 无人机所有图片转base64 |
| | | async UAVAllImageToBase64() { |
| | | async UAVAllImageToBase64 () { |
| | | if (this.fileListPlan1.length > 0) { |
| | | for (let i = 0; i < this.fileListPlan1.length; i++) { |
| | | var p = this.getBase64(this.fileListPlan1[i].raw) |
| | |
| | | } |
| | | }, |
| | | // 图片转base64函数 |
| | | getBase64(file) { |
| | | getBase64 (file) { |
| | | // console.log(file) |
| | | return new Promise(function(resolve, reject) { |
| | | return new Promise(function (resolve, reject) { |
| | | var reader = new FileReader() |
| | | let imgResult = '' |
| | | reader.readAsDataURL(file) |
| | | reader.onload = function() { |
| | | reader.onload = function () { |
| | | imgResult = reader.result |
| | | } |
| | | reader.onerror = function(error) { |
| | | reader.onerror = function (error) { |
| | | reject(error) |
| | | } |
| | | reader.onloadend = function() { |
| | | reader.onloadend = function () { |
| | | resolve(imgResult) |
| | | } |
| | | }) |
| | | }, |
| | | // 无人机图片上传 |
| | | handleChangePlan1(file, fileList) { |
| | | handleChangePlan1 (file, fileList) { |
| | | // console.log(file, fileList) |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | |
| | | } |
| | | this.fileListPlan1 = fileList |
| | | }, |
| | | handleRemovePlan1(file, fileList) { |
| | | handleRemovePlan1 (file, fileList) { |
| | | this.fileListPlan1 = fileList |
| | | }, |
| | | handleChangePlan2(file, fileList) { |
| | | handleChangePlan2 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan2 = fileList |
| | | }, |
| | | handleRemovePlan2(file, fileList) { |
| | | handleRemovePlan2 (file, fileList) { |
| | | this.fileListPlan2 = fileList |
| | | }, |
| | | handleChangePlan3(file, fileList) { |
| | | handleChangePlan3 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan3 = fileList |
| | | }, |
| | | handleRemovePlan3(file, fileList) { |
| | | handleRemovePlan3 (file, fileList) { |
| | | this.fileListPlan3 = fileList |
| | | }, |
| | | handleChangePlan4(file, fileList) { |
| | | handleChangePlan4 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan4 = fileList |
| | | }, |
| | | handleRemovePlan4(file, fileList) { |
| | | handleRemovePlan4 (file, fileList) { |
| | | this.fileListPlan4 = fileList |
| | | }, |
| | | handleChangePlan5(file, fileList) { |
| | | handleChangePlan5 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan5 = fileList |
| | | }, |
| | | handleRemovePlan5(file, fileList) { |
| | | handleRemovePlan5 (file, fileList) { |
| | | this.fileListPlan5 = fileList |
| | | }, |
| | | handleChangePlan6(file, fileList) { |
| | | handleChangePlan6 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan6 = fileList |
| | | }, |
| | | handleRemovePlan6(file, fileList) { |
| | | handleRemovePlan6 (file, fileList) { |
| | | this.fileListPlan6 = fileList |
| | | }, |
| | | handleChangePlan7(file, fileList) { |
| | | handleChangePlan7 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan7 = fileList |
| | | }, |
| | | handleRemovePlan7(file, fileList) { |
| | | handleRemovePlan7 (file, fileList) { |
| | | this.fileListPlan7 = fileList |
| | | }, |
| | | handleChangePlan8(file, fileList) { |
| | | handleChangePlan8 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan8 = fileList |
| | | }, |
| | | handleRemovePlan8(file, fileList) { |
| | | handleRemovePlan8 (file, fileList) { |
| | | this.fileListPlan8 = fileList |
| | | }, |
| | | handleChangePlan9(file, fileList) { |
| | | handleChangePlan9 (file, fileList) { |
| | | if (file.raw.type !== 'image/jpeg' && file.raw.type !== 'image/png') { |
| | | this.$refs.uploadPlan1.handleRemove(file) |
| | | this.$message.warning(`上传文件格式不符合`) |
| | |
| | | } |
| | | this.fileListPlan9 = fileList |
| | | }, |
| | | handleRemovePlan9(file, fileList) { |
| | | handleRemovePlan9 (file, fileList) { |
| | | this.fileListPlan9 = fileList |
| | | }, |
| | | // 限制一天 |
| | | handleExceed(files, fileList) { |
| | | handleExceed (files, fileList) { |
| | | this.$message.warning(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`) |
| | | }, |
| | | // 走航车上传文件到upload |
| | | handleChange1(file, fileList) { |
| | | // console.log(file, '123') |
| | | handleChange1 (file, fileList) { |
| | | this.fileList1 = fileList |
| | | this.fileLists[0] = fileList |
| | | }, |
| | | handleRemove1(file, fileList) { |
| | | handleRemove1 (file, fileList) { |
| | | this.fileList1 = fileList |
| | | this.fileLists[0] = fileList |
| | | }, |
| | | handleChange2(file, fileList) { |
| | | handleChange2 (file, fileList) { |
| | | this.fileList2 = fileList |
| | | this.fileLists[1] = fileList |
| | | }, |
| | | handleRemove2(file, fileList) { |
| | | handleRemove2 (file, fileList) { |
| | | this.fileList2 = fileList |
| | | this.fileLists[1] = fileList |
| | | }, |
| | | handleChange3(file, fileList) { |
| | | handleChange3 (file, fileList) { |
| | | this.fileList3 = fileList |
| | | this.fileLists[2] = fileList |
| | | }, |
| | | handleRemove3(file, fileList) { |
| | | handleRemove3 (file, fileList) { |
| | | this.fileList3 = fileList |
| | | this.fileLists[2] = fileList |
| | | }, |
| | | handleChange4(file, fileList) { |
| | | handleChange4 (file, fileList) { |
| | | this.fileList4 = fileList |
| | | this.fileLists[3] = fileList |
| | | }, |
| | | handleRemove4(file, fileList) { |
| | | handleRemove4 (file, fileList) { |
| | | this.fileList4 = fileList |
| | | this.fileLists[3] = fileList |
| | | }, |
| | | handleChange5(file, fileList) { |
| | | handleChange5 (file, fileList) { |
| | | this.fileList5 = fileList |
| | | this.fileLists[4] = fileList |
| | | }, |
| | | handleRemove5(file, fileList) { |
| | | handleRemove5 (file, fileList) { |
| | | this.fileList5 = fileList |
| | | this.fileLists[4] = fileList |
| | | }, |
| | | handleChange6(file, fileList) { |
| | | handleChange6 (file, fileList) { |
| | | this.fileList6 = fileList |
| | | this.fileLists[5] = fileList |
| | | }, |
| | | handleRemove6(file, fileList) { |
| | | handleRemove6 (file, fileList) { |
| | | this.fileList6 = fileList |
| | | this.fileLists[5] = fileList |
| | | }, |
| | | handleChange7(file, fileList) { |
| | | handleChange7 (file, fileList) { |
| | | this.fileList7 = fileList |
| | | this.fileLists[6] = fileList |
| | | }, |
| | | handleRemove7(file, fileList) { |
| | | handleRemove7 (file, fileList) { |
| | | this.fileList7 = fileList |
| | | this.fileLists[6] = fileList |
| | | }, |
| | | handleChange8(file, fileList) { |
| | | handleChange8 (file, fileList) { |
| | | this.fileList8 = fileList |
| | | this.fileLists[7] = fileList |
| | | }, |
| | | handleRemove8(file, fileList) { |
| | | handleRemove8 (file, fileList) { |
| | | this.fileList8 = fileList |
| | | this.fileLists[7] = fileList |
| | | }, |
| | | handleChange9(file, fileList) { |
| | | handleChange9 (file, fileList) { |
| | | this.fileList9 = fileList |
| | | this.fileLists[8] = fileList |
| | | }, |
| | | handleRemove9(file, fileList) { |
| | | handleRemove9 (file, fileList) { |
| | | this.fileList9 = fileList |
| | | this.fileLists[8] = fileList |
| | | } |
| | |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | <style scoped > |
| | | .dailyreport{ |
| | | width: 100%; |
| | | height: 100%; |