glj-代码提交

This commit is contained in:
glj 2023-11-14 14:07:00 +08:00
parent 448143b1e1
commit 2065fb080d
21 changed files with 380 additions and 377 deletions

View File

@ -23,8 +23,8 @@
highlight-current-row @row-click="tableClick"> highlight-current-row @row-click="tableClick">
<el-table-column prop="vordmId" label="VoRDM ID" width="124" sortable/> <el-table-column prop="vordmId" label="VoRDM ID" width="124" sortable/>
<el-table-column prop="dictValue" label="Disaster Type" show-overflow-tooltip sortable width="148"></el-table-column> <el-table-column prop="dictValue" label="Disaster Type" show-overflow-tooltip sortable width="148"></el-table-column>
<el-table-column prop="disasterCountry" label="Disaster country" show-overflow-tooltip sortable width="167"></el-table-column> <el-table-column prop="disasterCountry" label="Affected Country" show-overflow-tooltip sortable width="167"></el-table-column>
<el-table-column prop="disasterTime" label="Disaster time" show-overflow-tooltip sortable width="145"></el-table-column> <el-table-column prop="disasterTime" label="Disaster Time" show-overflow-tooltip sortable width="145"></el-table-column>
<slot></slot> <slot></slot>
</el-table> </el-table>
<el-pagination @size-change="onHandleDisasterSizeChange" @current-change="onHandleDisasterCurrentChange" class="mt15" <el-pagination @size-change="onHandleDisasterSizeChange" @current-change="onHandleDisasterCurrentChange" class="mt15"

View File

@ -66,7 +66,7 @@ export const dynamicRoutes = [
name: 'userResponseManagement', name: 'userResponseManagement',
component: () => import('/@/views/responseManagement/userResponse/index.vue'), component: () => import('/@/views/responseManagement/userResponse/index.vue'),
meta: { meta: {
title: 'User response', title: 'User Response',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -82,7 +82,7 @@ export const dynamicRoutes = [
name: 'data-upload-management', name: 'data-upload-management',
component: () => import('/@/views/responseManagement/dataUpload/index.vue'), component: () => import('/@/views/responseManagement/dataUpload/index.vue'),
meta: { meta: {
title: 'Data upload', title: 'Uploaded Resource Review',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -133,7 +133,7 @@ export const dynamicRoutes = [
component: () => import('/@/views/dataService/multimediaData/index.vue'), component: () => import('/@/views/dataService/multimediaData/index.vue'),
redirect: '/dataService/multimediaData', redirect: '/dataService/multimediaData',
meta: { meta: {
title: 'Data service', title: 'Data Service',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -149,7 +149,7 @@ export const dynamicRoutes = [
name: 'multimediaData', name: 'multimediaData',
component: () => import('/@/views/dataService/multimediaData/index.vue'), component: () => import('/@/views/dataService/multimediaData/index.vue'),
meta: { meta: {
title: 'Multimedia data', title: 'Multimedia Data',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -165,7 +165,7 @@ export const dynamicRoutes = [
name: 'remoteSensingData', name: 'remoteSensingData',
component: () => import('/@/views/dataService/remoteSensingData/index.vue'), component: () => import('/@/views/dataService/remoteSensingData/index.vue'),
meta: { meta: {
title: 'Remote sensing data', title: 'Remote Sensing Data',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -181,7 +181,7 @@ export const dynamicRoutes = [
name: 'otherData', name: 'otherData',
component: () => import('/@/views/dataService/otherData/index.vue'), component: () => import('/@/views/dataService/otherData/index.vue'),
meta: { meta: {
title: 'Other data', title: 'Other Data',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -197,7 +197,7 @@ export const dynamicRoutes = [
name: 'visualData', name: 'visualData',
component: () => import('/@/views/dataService/visualData/index.vue'), component: () => import('/@/views/dataService/visualData/index.vue'),
meta: { meta: {
title: 'Visual data', title: 'Visual Data',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -213,7 +213,7 @@ export const dynamicRoutes = [
name: 'pictureInfo', name: 'pictureInfo',
component: () => import('/@/views/dataService/pictureInfo/index.vue'), component: () => import('/@/views/dataService/pictureInfo/index.vue'),
meta: { meta: {
title: 'Picture info', title: 'Picture Info',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -229,7 +229,7 @@ export const dynamicRoutes = [
name: 'disasterPartners', name: 'disasterPartners',
component: () => import('/@/views/dataService/disasterPartners/index.vue'), component: () => import('/@/views/dataService/disasterPartners/index.vue'),
meta: { meta: {
title: 'Disaster website', title: 'Disaster Website',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -248,7 +248,7 @@ export const dynamicRoutes = [
component: () => import('/@/views/systemManagement/administrator/index.vue'), component: () => import('/@/views/systemManagement/administrator/index.vue'),
redirect: '/systemManagement/administrator', redirect: '/systemManagement/administrator',
meta: { meta: {
title: 'System management', title: 'System Management',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,
@ -264,7 +264,7 @@ export const dynamicRoutes = [
name: 'chief-administrator-management', name: 'chief-administrator-management',
component: () => import('/@/views/systemManagement/chiefAdministrator/index.vue'), component: () => import('/@/views/systemManagement/chiefAdministrator/index.vue'),
meta: { meta: {
title: 'Chief administrator', title: 'Chief Administrator',
isLink: '', isLink: '',
isHide: false, isHide: false,
isKeepAlive: true, isKeepAlive: true,

View File

@ -3,8 +3,7 @@
<el-config-provider :locale="en"> <el-config-provider :locale="en">
<el-row :gutter="22"> <el-row :gutter="22">
<el-col :span="10"> <el-col :span="10">
<div class="system-role-padding layout-padding-auto layout-padding-view" style="height: 85vh;"> <div class="system-role-padding layout-padding-auto layout-padding-view" style="height: 85vh">
<disasterTable @childClick="tableClick"> <disasterTable @childClick="tableClick">
<el-table-column prop="Operate" label="Operate" width="85" show-overflow-tooltip> <el-table-column prop="Operate" label="Operate" width="85" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
@ -16,19 +15,26 @@
</div> </div>
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<div class="system-role-padding layout-padding-auto layout-padding-view" style="height: 85vh;"> <div class="system-role-padding layout-padding-auto layout-padding-view" style="height: 85vh">
<div class="system-user-search " <div class="system-user-search" style="display: flex; margin-left: 10px; margin-top: 10px; margin-bottom: -15px">
style="display: flex;margin-left: 10px;margin-top: 10px;margin-bottom:-15px ">
<el-form-item label="Type"> <el-form-item label="Type">
<el-select v-model="state.searchName" placeholder="Please select data type" style="max-width: 200px" <el-select
size="default" clearable @change="getTableData(); state.queryTitle = ''"> v-model="state.searchName"
placeholder="Please select data type"
style="max-width: 200px"
size="default"
clearable
@change="
getTableData();
state.queryTitle = '';
"
>
<el-option value="1" label="News"></el-option> <el-option value="1" label="News"></el-option>
<el-option value="2" label="SocialMedia"></el-option> <el-option value="2" label="SocialMedia"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="Review status"> <el-form-item label="Review Status">
<el-select v-model="state.srarchType" placeholder="Please select data type" style="max-width: 200px" <el-select v-model="state.srarchType" placeholder="Please select data type" style="max-width: 200px" size="default" clearable>
size="default" clearable>
<el-option value="0" label="Awaiting approval"></el-option> <el-option value="0" label="Awaiting approval"></el-option>
<el-option value="1" label="Approved"></el-option> <el-option value="1" label="Approved"></el-option>
<el-option value="2" label="Rejected"></el-option> <el-option value="2" label="Rejected"></el-option>
@ -65,8 +71,12 @@
</el-button> </el-button>
</div> </div>
<el-table :data="state.tableData.data" v-loading="state.tableData.loading" <el-table
@selection-change="handleSelectionChange" style="width: 100%; height: 600px;"> :data="state.tableData.data"
v-loading="state.tableData.loading"
@selection-change="handleSelectionChange"
style="width: 100%; height: 600px"
>
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column type="index" label="ID" width="50" /> <el-table-column type="index" label="ID" width="50" />
<!-- <el-table-column v-if=" state.searchName == '1' " prop="title" label="Title" <!-- <el-table-column v-if=" state.searchName == '1' " prop="title" label="Title"
@ -88,20 +98,26 @@
<el-table-column prop="time" label="Time" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="time" label="Time" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="Operate" label="Operate" show-overflow-tooltip> <el-table-column prop="Operate" label="Operate" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
<el-button size="small" text type="primary" v-if="scope.row.status == 0" <el-button size="small" text type="primary" v-if="scope.row.status == 0" @click="openDialog(scope.row, true)"
@click=" openDialog(scope.row, true)">Awaiting approval</el-button> >Awaiting approval</el-button
<el-button size="small" text type="success" v-if="scope.row.status == 1" >
@click=" openDialog(scope.row, false)">Approved</el-button> <el-button size="small" text type="success" v-if="scope.row.status == 1" @click="openDialog(scope.row, false)">Approved</el-button>
<el-button size="small" text type="danger" v-if="scope.row.status == 2" <el-button size="small" text type="danger" v-if="scope.row.status == 2" @click="openDialog(scope.row, false)">Rejected</el-button>
@click=" openDialog(scope.row, false)">Rejected</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination style="margin-left: 20px;" @size-change="onHandleSizeChange" <el-pagination
@current-change="onHandleCurrentChange" class="mt15" :page-sizes="[10, 20, 30]" style="margin-left: 20px"
v-model:current-page="state.tableData.param.pageNum" background @size-change="onHandleSizeChange"
v-model:page-size="state.tableData.param.pageSize" layout="total, sizes, prev, pager, next" @current-change="onHandleCurrentChange"
:total="state.tableData.total"> class="mt15"
:page-sizes="[10, 20, 30]"
v-model:current-page="state.tableData.param.pageNum"
background
v-model:page-size="state.tableData.param.pageSize"
layout="total, sizes, prev, pager, next"
:total="state.tableData.total"
>
</el-pagination> </el-pagination>
</div> </div>
</el-col> </el-col>
@ -111,12 +127,8 @@
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button @click="state.dialogVisible = false">Cancel</el-button> <el-button @click="state.dialogVisible = false">Cancel</el-button>
<el-button type="primary" @click=" reviews(1)"> <el-button type="primary" @click="reviews(1)"> reserve </el-button>
reserve <el-button type="danger" @click="reviews(2)"> not retain </el-button>
</el-button>
<el-button type="danger" @click=" reviews(2)">
not retain
</el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
@ -127,7 +139,7 @@
</template> </template>
<script setup name="dataMultimediaData"> <script setup name="dataMultimediaData">
import en from 'element-plus/dist/locale/en.mjs' import en from 'element-plus/dist/locale/en.mjs';
import { getList } from '/@/api/disasterInfo/index'; import { getList } from '/@/api/disasterInfo/index';
import { getList as getNewsList, review, remove as removeList } from '/@/api/news/index'; import { getList as getNewsList, review, remove as removeList } from '/@/api/news/index';
import { getDictionary } from '/@/api/system/dictbiz'; import { getDictionary } from '/@/api/system/dictbiz';
@ -135,9 +147,9 @@ import { getDictionary } from '/@/api/system/dictbiz';
import { reactive, onMounted, ref } from 'vue'; import { reactive, onMounted, ref } from 'vue';
import { ElMessage, ElMessageBox } from 'element-plus'; import { ElMessage, ElMessageBox } from 'element-plus';
import boot from "./component/boot.vue"; import boot from './component/boot.vue';
import uploadData from "./component/uploadData.vue"; import uploadData from './component/uploadData.vue';
import disasterTable from "/@/components/table/DisasterTable.vue"; import disasterTable from '/@/components/table/DisasterTable.vue';
// //
const bootRef = ref(); const bootRef = ref();
const uploadDataRef = ref(); const uploadDataRef = ref();
@ -145,7 +157,7 @@ const removeThis = (row) =>{
let ids = state.multipleSelection.map((item) => item.id); let ids = state.multipleSelection.map((item) => item.id);
//ids使 //ids使
if (ids.length == 0) { if (ids.length == 0) {
ElMessage.info("Please select the data to be deleted"); ElMessage.info('Please select the data to be deleted');
return; return;
} }
//使 //使
@ -153,26 +165,29 @@ const removeThis = (row) =>{
confirmButtonText: 'Yes', confirmButtonText: 'Yes',
cancelButtonText: 'No', cancelButtonText: 'No',
type: 'warning', type: 'warning',
}).then(() => { })
.then(() => {
// //
removeList(ids,(state.searchName=='1'?"News":null)).then((res) => { removeList(ids, state.searchName == '1' ? 'News' : null).then((res) => {
ElMessage.success("Delete successfully"); ElMessage.success('Delete successfully');
getTableData(); getTableData();
}); });
}).catch(() => { ElMessage.error("Delete failed");}); })
.catch(() => {
} ElMessage.error('Delete failed');
});
};
const state = reactive({ const state = reactive({
dialogVisible: false, dialogVisible: false,
multipleSelection: [], multipleSelection: [],
searchName: '1', searchName: '1',
disasterId: null, disasterId: null,
queryTitle: "", queryTitle: '',
edit: { edit: {
status: 0, status: 0,
}, },
srarchType: "0", srarchType: '0',
disasterData: { disasterData: {
data: [], data: [],
total: 0, total: 0,
@ -195,14 +210,11 @@ const state = reactive({
}, },
}, },
selectList: [], selectList: [],
selectListId: null,
}); });
const openDialog = async (row, bool) => { const openDialog = async (row, bool) => {
if (bool) { state.selectListId = row.id;
state.selectList = [row]
} else {
state.selectList = state.multipleSelection
}
state.dialogVisible = true; state.dialogVisible = true;
}; };
@ -210,7 +222,7 @@ const reviews = async (status) => {
let ids = state.selectList.map((item) => item.id); let ids = state.selectList.map((item) => item.id);
//ids 使 //ids 使
ids = ids.join(','); ids = ids.join(',');
let res = await review(ids, status, state.searchName == '1' ? true : false); let res = await review(state.selectListId, status, state.searchName == '1' ? true : false);
if (res) { if (res) {
state.dialogVisible = false; state.dialogVisible = false;
ElMessage.success('success'); ElMessage.success('success');
@ -219,56 +231,60 @@ const reviews = async (status) => {
}; };
const handleSelectionChange = (val) => { const handleSelectionChange = (val) => {
state.multipleSelection = val state.multipleSelection = val;
}; };
// //
const tableClick = (i) => { const tableClick = (i) => {
state.disasterId = i.disasterId; state.disasterId = i.disasterId;
getTableData(); getTableData();
} };
// //
const getDisasterData = () => { const getDisasterData = () => {
state.disasterData.loading = true; state.disasterData.loading = true;
let param = { let param = {
"search": state.disasterData.param.search, search: state.disasterData.param.search,
"current": state.disasterData.param.pageNum, current: state.disasterData.param.pageNum,
"size": state.disasterData.param.pageSize, size: state.disasterData.param.pageSize,
"respondStatus": 3, respondStatus: 3,
} };
getList(param).then(res => { getList(param).then((res) => {
state.disasterData.data = res.records; state.disasterData.data = res.records;
state.disasterId = state.disasterData.data[0].disasterId; state.disasterId = state.disasterData.data[0].disasterId;
getTableData() getTableData();
state.disasterData.data.forEach(item => { state.disasterData.data.forEach((item) => {
let date = item.disasterTime.slice(0, 10); let date = item.disasterTime.slice(0, 10);
item.disasterTime = date; item.disasterTime = date;
}) });
state.disasterData.total = res.total; state.disasterData.total = res.total;
state.disasterData.loading = false; state.disasterData.loading = false;
}) });
} };
// //
const getTableData = () => { const getTableData = () => {
state.tableData.loading = true; state.tableData.loading = true;
getNewsList(state.tableData.param.pageNum, state.tableData.param.pageSize, { "disasterId": state.disasterId, "isDeleted": 0, status: state.srarchType, title: state.queryTitle }, state.searchName == '1' ? true : false).then(res => { getNewsList(
state.tableData.param.pageNum,
state.tableData.param.pageSize,
{ disasterId: state.disasterId, isDeleted: 0, status: state.srarchType, title: state.queryTitle },
state.searchName == '1' ? true : false
).then((res) => {
state.tableData.data = res.records; state.tableData.data = res.records;
if (state.searchName == '1') { if (state.searchName == '1') {
state.tableData.data.forEach((item) => {
state.tableData.data.forEach(item => {
let date = item.createTime.slice(0, 10); let date = item.createTime.slice(0, 10);
item.time = date; item.time = date;
}) });
} else { } else {
state.tableData.data.forEach(item => { state.tableData.data.forEach((item) => {
let date = item.time.slice(0, 10); let date = item.time.slice(0, 10);
item.time = date; item.time = date;
}) });
} }
state.tableData.total = res.total; state.tableData.total = res.total;
}) });
setTimeout(() => { setTimeout(() => {
state.tableData.loading = false; state.tableData.loading = false;
}, 500); }, 500);

View File

@ -67,6 +67,10 @@ const options = [
{ {
value: '2', value: '2',
label: 'cartographic product', label: 'cartographic product',
},
{
value: '3',
label: 'AOI',
} }
] ]
const emit = defineEmits(['callback']); const emit = defineEmits(['callback']);

View File

@ -15,6 +15,7 @@
<el-option value="0" label="basic data"></el-option> <el-option value="0" label="basic data"></el-option>
<el-option value="1" label="responded report"></el-option> <el-option value="1" label="responded report"></el-option>
<el-option value="2" label="cartographic product"></el-option> <el-option value="2" label="cartographic product"></el-option>
<el-option value="3" label="AOI"></el-option>
</el-select> </el-select>
<el-button size="default" type="primary" class="ml10" @click="getTableData"> <el-button size="default" type="primary" class="ml10" @click="getTableData">
<el-icon> <el-icon>
@ -38,9 +39,9 @@
<el-table :data="state.tableData.data" v-loading="state.tableData.loading" <el-table :data="state.tableData.data" v-loading="state.tableData.loading"
@selection-change="handleSelectionChange" style="width: 100%"> @selection-change="handleSelectionChange" style="width: 100%">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column prop="uploaderName" label="Uploader name" width="150" <el-table-column prop="uploaderName" label="Uploader Name" width="150"
show-overflow-tooltip></el-table-column> show-overflow-tooltip></el-table-column>
<el-table-column prop="isPublish" label="isPublish" width="110" show-overflow-tooltip> <el-table-column prop="IsPublish" label="IsPublish" width="110" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
<el-tag type="warning" v-if="scope.row.isPublish == 0">NO</el-tag> <el-tag type="warning" v-if="scope.row.isPublish == 0">NO</el-tag>
<el-tag type="success" v-if="scope.row.isPublish == 1">YES</el-tag> <el-tag type="success" v-if="scope.row.isPublish == 1">YES</el-tag>
@ -48,12 +49,12 @@
</el-table-column> </el-table-column>
<el-table-column prop="title" label="Title" show-overflow-tooltip <el-table-column prop="title" label="Title" show-overflow-tooltip
width="150"></el-table-column> width="150"></el-table-column>
<el-table-column prop="size" label="Data size" width="110" show-overflow-tooltip> <el-table-column prop="size" label="Data Size" width="110" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
{{ formatSizeUnits(scope.row.size) }} {{ formatSizeUnits(scope.row.size) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="uploadTime" label="Upload time" show-overflow-tooltip></el-table-column> <el-table-column prop="uploadTime" label="Upload Time" show-overflow-tooltip></el-table-column>
<el-table-column prop="Operate" label="Operate" show-overflow-tooltip> <el-table-column prop="Operate" label="Operate" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
<el-button size="small" text type="primary" @click="del(scope.row)">Delete</el-button> <el-button size="small" text type="primary" @click="del(scope.row)">Delete</el-button>

View File

@ -87,19 +87,19 @@
</el-popover> </el-popover>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="satelliteCode" label="Satellite code" width="170" align="center" show-overflow-tooltip <el-table-column prop="satelliteCode" label="Satellite Code" width="170" align="center" show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="productTime" label="Product time" width="170" align="center" show-overflow-tooltip <el-table-column prop="productTime" label="Product Time" width="170" align="center" show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="productBandsNum" label="Product bands num" width="200" align="center" <el-table-column prop="productBandsNum" label="Product Bands Num" width="200" align="center"
show-overflow-tooltip sortable></el-table-column> show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="productResolution" label="Product resolution(m)" width="220" align="center" <el-table-column prop="productResolution" label="Product Resolution(m)" width="220" align="center"
show-overflow-tooltip sortable></el-table-column> show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="cloudCover" label="Cloud cover(%)" align="center" width="180" show-overflow-tooltip <el-table-column prop="cloudCover" label="Cloud Cover(%)" align="center" width="180" show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="sourceOrganization" label="Source organization" width="200" align="center" <el-table-column prop="sourceOrganization" label="Source Organization" width="200" align="center"
show-overflow-tooltip sortable></el-table-column> show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="downloadUrl" label="Download url" align="center" width="200" show-overflow-tooltip> <el-table-column prop="downloadUrl" label="Download Url" align="center" width="200" show-overflow-tooltip>
</el-table-column> </el-table-column>
<el-table-column prop="Operate" label="Operate" align="center" width="200" show-overflow-tooltip> <el-table-column prop="Operate" label="Operate" align="center" width="200" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">

View File

@ -10,7 +10,7 @@
<el-col :span="12"> <el-col :span="12">
<span>{{ state.data.disasterKeyword }}</span> <span>{{ state.data.disasterKeyword }}</span>
<p style="color: #878787; ">VoRDM ID:{{ state.data.vordmId }}</p> <p style="color: #878787; ">VoRDM ID:{{ state.data.vordmId }}</p>
<p style="color: #aa4434;">Disaster time: {{ state.data.disasterTime }}</p> <p style="color: #aa4434;">Disaster Time: {{ state.data.disasterTime }}</p>
<p style="color: #878787; ">Disaster Country: {{ state.data.disasterCountry }}</p> <p style="color: #878787; ">Disaster Country: {{ state.data.disasterCountry }}</p>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">

View File

@ -37,6 +37,10 @@ const options = [
{ {
value: '2', value: '2',
label: 'cartographic product', label: 'cartographic product',
},
{
value: '3',
label: 'AOI',
} }
] ]
const emit = defineEmits(['callback']); const emit = defineEmits(['callback']);

View File

@ -43,6 +43,10 @@ const options = [
{ {
value: '2', value: '2',
label: 'cartographic product', label: 'cartographic product',
},
{
value: '3',
label: 'AOI',
} }
] ]
const emit = defineEmits(['callback']); const emit = defineEmits(['callback']);

View File

@ -37,6 +37,10 @@ const options = [
{ {
value: '2', value: '2',
label: 'cartographic product', label: 'cartographic product',
},
{
value: '3',
label: 'AOI',
} }
] ]
const emit = defineEmits(['callback']); const emit = defineEmits(['callback']);

View File

@ -43,6 +43,10 @@ const options = [
{ {
value: '2', value: '2',
label: 'cartographic product', label: 'cartographic product',
},
{
value: '3',
label: 'AOI',
} }
] ]
const emit = defineEmits(['callback']); const emit = defineEmits(['callback']);

View File

@ -34,7 +34,7 @@
</el-button> </el-button>
</div> </div>
<el-tabs v-model="activeName" class="demo-tabs" @tab-change="handleClick" type="card"> <el-tabs v-model="activeName" class="demo-tabs" @tab-change="handleClick" type="card">
<el-tab-pane label="Word cloud" name="first"> <el-tab-pane label="Word Cloud" name="first">
<el-table :data="state.tableData.data" v-loading="state.tableData.loading" <el-table :data="state.tableData.data" v-loading="state.tableData.loading"
@selection-change="handleSelectionChange" style="width: 100%"> @selection-change="handleSelectionChange" style="width: 100%">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
@ -55,7 +55,7 @@
:total="state.tableData.total"> :total="state.tableData.total">
</el-pagination> </el-pagination>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="Hotspot area" name="second"> <el-tab-pane label="Hotspot Area" name="second">
<el-tabs v-model="activeNameNew" class="demo-tabs" @tab-change="handleClickNew" type="card"> <el-tabs v-model="activeNameNew" class="demo-tabs" @tab-change="handleClickNew" type="card">
<el-tab-pane label="NEWs" name="firstNew"> <el-tab-pane label="NEWs" name="firstNew">
<el-table :data="state.tableData.data" v-loading="state.tableData.loading" <el-table :data="state.tableData.data" v-loading="state.tableData.loading"
@ -197,9 +197,6 @@ const handleClick = (tab) => {
}; };
const handleClickNew = (tab) => { const handleClickNew = (tab) => {
console.log( tab,"tabtabtab");
console.log( state.source);
if (tab === "secondNew") { if (tab === "secondNew") {
state.source = 1; state.source = 1;
} else { } else {

View File

@ -146,12 +146,12 @@ const options_disastertype = [
// //
const options_datatype = [ const options_datatype = [
{ {
value: 'Word cloud', value: 'Word Cloud',
label: 'Word cloud', label: 'Word Cloud',
}, },
{ {
value: 'Hotspot area', value: 'Hotspot Area',
label: 'Hotspot area', label: 'Hotspot Area',
}, },
]; ];

View File

@ -14,7 +14,7 @@
<!-- 选择灾害时间下拉框 --> <!-- 选择灾害时间下拉框 -->
<el-date-picker v-model="value_disastertime" <el-date-picker v-model="value_disastertime"
type="date" type="date"
placeholder="Select disaster time" placeholder="Select disaster Time"
class="ml10" class="ml10"
size="default" /> size="default" />
<!-- 选择灾害事件下拉框 --> <!-- 选择灾害事件下拉框 -->
@ -162,12 +162,12 @@ const options_datatype = [
label: 'Disaster mapping', label: 'Disaster mapping',
}, },
{ {
value: 'Word cloud', value: 'Word Cloud',
label: 'Word cloud', label: 'Word Cloud',
}, },
{ {
value: 'Hotspot area', value: 'Hotspot Area',
label: 'Hotspot area', label: 'Hotspot Area',
}, },
]; ];

View File

@ -437,6 +437,7 @@ const initAdministratorsChart = (xData,yData) => {
data: xData, data: xData,
boundaryGap: true, boundaryGap: true,
axisTick: { show: false }, axisTick: { show: false },
axisLabel: { fontSize: '11' },
}, },
], ],
yAxis: [ yAxis: [
@ -496,8 +497,6 @@ const initPieChart = (data) => {
z: -1, z: -1,
style: { style: {
image: themeConfig.value.isIsDark, image: themeConfig.value.isIsDark,
width: 230, width: 230,
height: 230, height: 230,
}, },
@ -506,36 +505,6 @@ const initPieChart = (data) => {
}, },
], ],
}, },
// legend: {
// type: 'scroll',
// orient: 'vertical',
// right: '0%',
// left: '65%',
// top: 'center',
// itemWidth: 14,
// itemHeight: 14,
// data: getname,
// textStyle: {
// rich: {
// name: {
// fontSize: 14,
// fontWeight: 400,
// width: 200,
// height: 35,
// padding: [0, 0, 0, 60],
// color: state.charts.color,
// },
// rate: {
// fontSize: 15,
// fontWeight: 500,
// height: 35,
// width: 40,
// padding: [0, 0, 0, 30],
// color: state.charts.color,
// },
// },
// },
// },
series: [ series: [
{ {
type: 'pie', type: 'pie',
@ -664,10 +633,10 @@ const setAdministratorsChart = (data) => {
xData.push(item.name) xData.push(item.name)
yData.push(item.val) yData.push(item.val)
}) })
if (yData) { // if (yData) {
xData.push(''); // xData.push('');
yData.push(0); // yData.push(0);
} // }
initAdministratorsChart(xData,yData); initAdministratorsChart(xData,yData);
} }
/** /**

View File

@ -8,7 +8,7 @@
<el-form> <el-form>
<el-row> <el-row>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="User name"><el-input size="default" style="max-width: 180px" <el-form-item label="User Name"><el-input size="default" style="max-width: 180px"
v-model="state.query.userName" clearable placeholder="Please enter the UserName"> v-model="state.query.userName" clearable placeholder="Please enter the UserName">
</el-input> </el-input>
</el-form-item> </el-form-item>
@ -39,7 +39,7 @@
</div> </div>
<el-table :data="state.tableData.data" style="width: 100%;height: 65vh;" v-loading="state.tableData.loading" <el-table :data="state.tableData.data" style="width: 100%;height: 65vh;" v-loading="state.tableData.loading"
@selection-change="handleSelectionChange"> @selection-change="handleSelectionChange">
<el-table-column prop="userName" label="User name"> </el-table-column> <el-table-column prop="userName" label="User Name"> </el-table-column>
<el-table-column prop="email" label="Email"> </el-table-column> <el-table-column prop="email" label="Email"> </el-table-column>
<el-table-column prop="organization" label="Organization"> </el-table-column> <el-table-column prop="organization" label="Organization"> </el-table-column>
<el-table-column prop="message" label="Message"> </el-table-column> <el-table-column prop="message" label="Message"> </el-table-column>

View File

@ -14,23 +14,23 @@
<el-icon> <el-icon>
<ele-EditPen /> <ele-EditPen />
</el-icon> </el-icon>
Batch operation Batch Operation
</el-button> </el-button>
</div> </div>
<el-table :data="state.tableData.data" v-loading="state.tableData.loading" <el-table :data="state.tableData.data" v-loading="state.tableData.loading"
@selection-change="handleSelectionChange" style="width: 100%"> @selection-change="handleSelectionChange" style="width: 100%">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column type="index" label="ID" width="50" /> <el-table-column type="index" label="ID" width="50" />
<el-table-column prop="uploaderName" label="Uploader name" show-overflow-tooltip></el-table-column> <el-table-column prop="uploaderName" label="Uploader Name" show-overflow-tooltip></el-table-column>
<el-table-column prop="sourceOrganization" label="Organization" show-overflow-tooltip></el-table-column> <el-table-column prop="sourceOrganization" label="Organization" show-overflow-tooltip></el-table-column>
<el-table-column prop="title" label="Professional title" show-overflow-tooltip <el-table-column prop="title" label="Professional Title" show-overflow-tooltip
width="150"></el-table-column> width="150"></el-table-column>
<el-table-column prop="size" label="Data size" show-overflow-tooltip> <el-table-column prop="size" label="Data Size" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
{{ formatSizeUnits(scope.row.size) }} {{ formatSizeUnits(scope.row.size) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="uploadTime" label="Upload time" show-overflow-tooltip></el-table-column> <el-table-column prop="uploadTime" label="Upload Time" show-overflow-tooltip></el-table-column>
<el-table-column prop="Operate" label="Operate" show-overflow-tooltip> <el-table-column prop="Operate" label="Operate" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
<el-button size="small" text type="primary" @click="auditData(scope.row)">Audit</el-button> <el-button size="small" text type="primary" @click="auditData(scope.row)">Audit</el-button>

View File

@ -8,12 +8,12 @@
<el-form> <el-form>
<el-row> <el-row>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="Tool Name"><el-input size="default" style="max-width: 180px" <el-form-item label="Tool Name"><el-input size="default" style="max-width: 180px" placeholder="Tool Name"
v-model="state.query.toolName" clearable> </el-input> v-model="state.query.toolName" clearable> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item label="review status" style="margin-left: 10px;"> <el-form-item label="Review Status" style="margin-left: 10px;">
<el-select size="default" v-model="state.query.checked" clearable <el-select size="default" v-model="state.query.checked" clearable
placeholder="Please select"> placeholder="Please select">
<el-option label="Approved" value="0"></el-option> <el-option label="Approved" value="0"></el-option>
@ -49,7 +49,7 @@
</el-table-column> </el-table-column>
<el-table-column prop="label" label="Label" width="140"> </el-table-column> <el-table-column prop="label" label="Label" width="140"> </el-table-column>
<el-table-column prop="introduction" label="Introduction"> </el-table-column> <el-table-column prop="introduction" label="Introduction"> </el-table-column>
<el-table-column prop="showName" label="Uploader name"></el-table-column> <el-table-column prop="showName" label="Uploader Name"></el-table-column>
<el-table-column prop="reviewTime" label="Review Time"></el-table-column> <el-table-column prop="reviewTime" label="Review Time"></el-table-column>
<el-table-column label="Operate" width="140"> <el-table-column label="Operate" width="140">
<template #default="scope"> <template #default="scope">

View File

@ -13,7 +13,7 @@
v-loading="state.tableData.loading" v-loading="state.tableData.loading"
style="width: 100%"> style="width: 100%">
<el-table-column prop="username" <el-table-column prop="username"
label="User name" label="User Name"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="organization" <el-table-column prop="organization"
@ -30,11 +30,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="disasterKeyword" <el-table-column prop="disasterKeyword"
label="Disaster keyword" label="Disaster Keyword"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="disasterTime" <el-table-column prop="disasterTime"
label="Disaster time" label="Disaster Time"
show-overflow-tooltip show-overflow-tooltip
sortable> sortable>
<template #default="scope"> <template #default="scope">
@ -43,7 +43,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="respondStatus" <el-table-column prop="respondStatus"
label="Response status" label="Response Status"
show-overflow-tooltip show-overflow-tooltip
sortable> sortable>
<template #default="scope"> <template #default="scope">
@ -84,7 +84,7 @@
v-loading="state.tableData.loading" v-loading="state.tableData.loading"
style="width: 100%"> style="width: 100%">
<el-table-column prop="username" <el-table-column prop="username"
label="User name" label="User Name"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="organization" <el-table-column prop="organization"
@ -101,11 +101,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="disasterKeyword" <el-table-column prop="disasterKeyword"
label="Disaster keyword" label="Disaster Keyword"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="disasterTime" <el-table-column prop="disasterTime"
label="Disaster time" label="Disaster Time"
show-overflow-tooltip show-overflow-tooltip
sortable> sortable>
<template #default="scope"> <template #default="scope">
@ -147,7 +147,7 @@
style="width: 100%"> style="width: 100%">
<el-table-column prop="username" <el-table-column prop="username"
label="User name" label="User Name"
show-overflow-tooltip show-overflow-tooltip
sortable sortable
width="150"></el-table-column> width="150"></el-table-column>
@ -171,12 +171,12 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="disasterKeyword" <el-table-column prop="disasterKeyword"
label="Disaster keyword" label="Disaster Keyword"
width="190" width="190"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="disasterTime" <el-table-column prop="disasterTime"
label="Disaster time" label="Disaster Time"
show-overflow-tooltip show-overflow-tooltip
sortable sortable
width="150"> width="150">
@ -196,7 +196,7 @@
width="140" /> width="140" />
<el-table-column width="170" <el-table-column width="170"
prop="respondStatus" prop="respondStatus"
label="Response status" label="Response Status"
show-overflow-tooltip show-overflow-tooltip
sortable> sortable>
<template #default="scope"> <template #default="scope">
@ -249,7 +249,7 @@
v-loading="state.tableData.loading" v-loading="state.tableData.loading"
style="width: 100%"> style="width: 100%">
<el-table-column prop="username" <el-table-column prop="username"
label="User name" label="User Name"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="organization" <el-table-column prop="organization"
@ -266,11 +266,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="disasterKeyword" <el-table-column prop="disasterKeyword"
label="Disaster keyword" label="Disaster Keyword"
show-overflow-tooltip show-overflow-tooltip
sortable></el-table-column> sortable></el-table-column>
<el-table-column prop="disasterTime" <el-table-column prop="disasterTime"
label="Disaster time" label="Disaster Time"
show-overflow-tooltip show-overflow-tooltip
sortable> sortable>
<template #default="scope"> <template #default="scope">
@ -279,7 +279,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="respondedTime" <el-table-column prop="respondedTime"
label="Responded time" label="Responded Time"
show-overflow-tooltip show-overflow-tooltip
sortable> sortable>
<template #default="scope"> <template #default="scope">
@ -402,10 +402,10 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="Disaster country"> <el-form-item label="Affected Country">
<el-input style="width: 200px;" <el-input style="width: 200px;"
v-model="state.edit.disasterCountry" v-model="state.edit.disasterCountry"
placeholder="please Disaster country" placeholder="please Affected Country"
clearable></el-input> clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item label="Theme keywords"> <el-form-item label="Theme keywords">

View File

@ -25,15 +25,15 @@
</div> </div>
<el-table :data="state.tableData.data" v-loading="state.tableData.loading" <el-table :data="state.tableData.data" v-loading="state.tableData.loading"
@selection-change="handleSelectionChange" style="width: 100%"> @selection-change="handleSelectionChange" style="width: 100%">
<el-table-column prop="disasterType" label="Disaster type" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="disasterType" label="Disaster Type" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="disasterCountry" label="Disaster country" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="disasterCountry" label="Affected Country" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="disasterTime" label="Disaster time" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="disasterTime" label="Disaster Time" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="managerName" label="Manager" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="managerName" label="Manager" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="sponsorOrganization" label="Sponsor organization" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="sponsorOrganization" label="Sponsor Organization" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="researchField" label="Research field" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="researchField" label="Research Field" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="occupation" label="Occupation" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="occupation" label="Occupation" show-overflow-tooltip sortable></el-table-column>
<el-table-column prop="applyTime" label="Apply time" show-overflow-tooltip sortable></el-table-column> <el-table-column prop="applyTime" label="Apply Time" show-overflow-tooltip sortable></el-table-column>
<el-table-column v-if="state.status == '1'" prop="reviewTime" label="Review time" show-overflow-tooltip sortable></el-table-column> <el-table-column v-if="state.status == '1'" prop="reviewTime" label="Review Time" show-overflow-tooltip sortable></el-table-column>
<el-table-column v-if="state.status == '0'" prop="Operate" label="Operate" show-overflow-tooltip> <el-table-column v-if="state.status == '0'" prop="Operate" label="Operate" show-overflow-tooltip>
<template #default="scope"> <template #default="scope">
<!-- <el-button link type="primary" size="small" @click="handleClick">Detail</el-button>--> <!-- <el-button link type="primary" size="small" @click="handleClick">Detail</el-button>-->

View File

@ -33,7 +33,7 @@
label="ID" label="ID"
width="50" /> width="50" />
<el-table-column prop="name" <el-table-column prop="name"
label="User name" label="User Name"
show-overflow-tooltip></el-table-column> show-overflow-tooltip></el-table-column>
<el-table-column prop="account" <el-table-column prop="account"
label="Account" label="Account"