Compare commits

...

3 Commits

8 changed files with 42 additions and 424 deletions

View File

@ -74,9 +74,9 @@ export const keyProblemSearchMapStatusOptions = [
]; ];
export const keyProblemMapStatusOptions = [ export const keyProblemMapStatusOptions = [
{ label: '待接收', value: '待接收' }, { label: '待接收', value: '待接收' },
{ label: '待填报', value: '待填报' }, { label: '待处理', value: '待处理' },
{ label: '市级审核', value: '市级审核' }, { label: '待验收', value: '待验收' },
{ label: '县级审核', value: '县级审核' }, { label: '待复核', value: '待复核' },
{ label: '已归档', value: '已归档' }, { label: '已归档', value: '已归档' },
]; ];
export const auditMapStatusOptions = [ export const auditMapStatusOptions = [

View File

@ -182,7 +182,7 @@
}); });
columns.data = res.items; columns.data = res.items;
total.value = res.total; total.value = res.total;
}); })
} }
function getRecordByColumn(dataIndex, record) { function getRecordByColumn(dataIndex, record) {

View File

@ -182,7 +182,7 @@
}); });
columns.data = res.items; columns.data = res.items;
total.value = res.total; total.value = res.total;
}); })
} }
function getRecordByColumn(dataIndex, record) { function getRecordByColumn(dataIndex, record) {

View File

@ -10,36 +10,8 @@
:options="props.yearOptions" :options="props.yearOptions"
/> />
</div> </div>
<div class="screen-item" style="margin-right:17px;margin-bottom:15px;">
<div class="screen-item-label">图斑来源</div>
<a-select
allowClear
style="width:130px;"
v-model:value="params.tubanlaiyuan"
:options="keyIssusesIPatchSourceOptions"
/>
</div>
<div class="screen-item" style="margin-bottom:15px;">
<div class="screen-item-label">批次</div>
<a-select
allowClear
style="width:103px;"
v-model:value="params.picihao"
:options="props.batchOptions"
/>
</div>
<div class="screen-item" style="margin-right:13px;">
<div class="screen-item-label">举证</div>
<a-select
allowClear
style="width:130px;"
v-model:value="params.is_build_name"
:options="markTypeOptions"
/>
</div>
<div class="screen-item" style="margin-right:10px;"> <div class="screen-item" style="margin-right:10px;">
<!-- <div class="screen-item-label">图斑号</div> --> <a-input style="width:265px;" allowClear v-model:value="params.geomid" class="item-input" placeholder="请输入图斑编号" @press-enter="query"/>
<a-input style="width:270px;" allowClear v-model:value="params.geomid" class="item-input" placeholder="请输入图斑编号" @press-enter="query"/>
</div> </div>
<div class="screen-item" style="display: flex; justify-content: end;margin-bottom: 0px;"> <div class="screen-item" style="display: flex; justify-content: end;margin-bottom: 0px;">
<a-button type="primary" class="item-button" :icon="h(SearchOutlined)" @click="query"></a-button> <a-button type="primary" class="item-button" :icon="h(SearchOutlined)" @click="query"></a-button>
@ -47,29 +19,6 @@
</div> </div>
<div class="sift-div"> <div class="sift-div">
<div class="layout-div"> <div class="layout-div">
<img style="cursor: pointer;width:20px;height: 18px" src="@/assets/images/tiankongdi/back.png" class="img-box" @click="emits('changeShowParent')"/>
<div class="interval-div"></div>
<div class="sift-item" @click="dataListSort('area')">
<div class="sift-label">总面积</div>
<div class="sift-icon">
<div :style="`${showSortMark('area',1)? 'color: #086DEC;': ''}`">&#9650</div>
<div :style="`${showSortMark('area',2)? 'color: #086DEC;': ''}`">&#9660</div>
</div>
</div>
<div class="sift-item" @click="dataListSort('gengdi_area')">
<div class="sift-label">耕地面积</div>
<div class="sift-icon">
<div :style="`${showSortMark('gengdi_area',1)? 'color: #086DEC;': ''}`">&#9650</div>
<div :style="`${showSortMark('gengdi_area',2)? 'color: #086DEC;': ''}`">&#9660</div>
</div>
</div>
<div class="sift-item" @click="dataListSort('yongjiujibennongtian_area')">
<div class="sift-label">永农面积</div>
<div class="sift-icon">
<div :style="`${showSortMark('yongjiujibennongtian_area',1)? 'color: #086DEC;': ''}`">&#9650</div>
<div :style="`${showSortMark('yongjiujibennongtian_area',2)? 'color: #086DEC;': ''}`">&#9660</div>
</div>
</div>
<div class="sift-item" @click="dataListSort('CreateDate')"> <div class="sift-item" @click="dataListSort('CreateDate')">
<div class="sift-label">下发时间</div> <div class="sift-label">下发时间</div>
<div class="sift-icon"> <div class="sift-icon">
@ -109,9 +58,9 @@
<div class="data-list-title-div"> <div class="data-list-title-div">
<img src="/positioning.png" class="map-mark" @click="locationFun(item)"/> <img src="/positioning.png" class="map-mark" @click="locationFun(item)"/>
<div class="label-div"> <div class="label-div">
<div class="item-label">{{item.countyname}}</div> <div class="item-label"></div>
<div class="item-sub-label"> <div class="item-sub-label">
<div style="margin-right:12px;max-width: 100px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">{{item.streetname}}</div> <div style="margin-right:12px;max-width: 100px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;"></div>
<span>{{item.case_no}}</span> <span>{{item.case_no}}</span>
<span class="item-mark" v-if="item.is_build_name">{{item.is_build_name}}</span> <span class="item-mark" v-if="item.is_build_name">{{item.is_build_name}}</span>
</div> </div>
@ -123,22 +72,6 @@
</div> </div>
<div class="data-list-info-div"> <div class="data-list-info-div">
<div class="info-layout-div"> <div class="info-layout-div">
<div class="info-item">
<div class="info-label">总面积</div>
<div class="info-data" :title="dataProcessing(item.area)">{{dataProcessing(item.area)}}</div>
</div>
<div class="info-item">
<div class="info-label">农用地</div>
<div class="info-data" :title="dataProcessing(item.nongyongdi_area)">{{dataProcessing(item.nongyongdi_area)}}</div>
</div>
<div class="info-item">
<div class="info-label">耕地</div>
<div class="info-data" :title="dataProcessing(item.gengdi_area)">{{dataProcessing(item.gengdi_area)}}</div>
</div>
<div class="info-item" style="width:127px;">
<div class="info-label">永农面积</div>
<div class="info-data" :title="dataProcessing(item.yongjiujibennongtian_area)">{{dataProcessing(item.yongjiujibennongtian_area)}}</div>
</div>
</div> </div>
<div class="info-layout-div"> <div class="info-layout-div">
<!-- <div> <!-- <div>
@ -258,8 +191,8 @@
const params = ref({ const params = ref({
page: 1, page: 1,
limit: 10, limit: 10,
level: props.level, // level: props.level,
areaid: props.areaId, // areaid: props.areaId,
geomid: null, geomid: null,
year: props.year, year: props.year,
picihao: props.batch, picihao: props.batch,

View File

@ -2,7 +2,7 @@
<div class="curb-spot-city"> <div class="curb-spot-city">
<div class="show-list"> <div class="show-list">
<a-spin :spinning="spinning"> <a-spin :spinning="spinning">
<AuditProgress <!-- <AuditProgress
v-if="showParent" v-if="showParent"
:year="year" :year="year"
:batch="batch" :batch="batch"
@ -15,7 +15,7 @@
@openLoading="openLoading" @openLoading="openLoading"
@closeLoading="closeLoading" @closeLoading="closeLoading"
@getCountList="getCountList" @getCountList="getCountList"
/> /> -->
<MapList <MapList
@changeTask="changeTask" @changeTask="changeTask"
@changeShowParent="changeShowParent" @changeShowParent="changeShowParent"
@ -28,7 +28,6 @@
:batchOptions="batchOptions" :batchOptions="batchOptions"
@openLoading="openLoading" @openLoading="openLoading"
@closeLoading="closeLoading" @closeLoading="closeLoading"
v-else
/> />
</a-spin> </a-spin>
</div> </div>
@ -112,7 +111,7 @@
dataList.value = data; dataList.value = data;
} }
onMounted(() => { onMounted(() => {
getCountList(); // getCountList();
// TODO // TODO
batchOptions.value = []; batchOptions.value = [];
}); });

View File

@ -1,16 +1,5 @@
<template> <template>
<div class="map-list-content"> <div class="map-list-content">
<!-- <div class="top-radio-button-div">
<a-radio-group
v-model:value="props.infoScreenData.landType"
@change="(e) => emits('mapListScreenChange',e.target.value,'landType')"
button-style="solid"
style="width:100%">
<a-radio-button :value="0" class="radio-item">农用地</a-radio-button>
<a-radio-button :value="1" class="radio-item">建设用地</a-radio-button>
<a-radio-button :value="2" class="radio-item">推堆土</a-radio-button>
</a-radio-group>
</div> -->
<div class="screen-div"> <div class="screen-div">
<div class="screen-item" style="margin-right:20px;margin-bottom:12px;"> <div class="screen-item" style="margin-right:20px;margin-bottom:12px;">
<div class="screen-item-label">年份</div> <div class="screen-item-label">年份</div>
@ -22,58 +11,16 @@
@change="(value) => emits('mapListScreenChange',value,'year')" @change="(value) => emits('mapListScreenChange',value,'year')"
/> />
</div> </div>
<div class="screen-item" style="margin-right:17px;margin-bottom:12px;">
<div class="screen-item-label" style="margin-right: 11px;">图斑来源</div>
<a-select
allowClear
style="width:120px;"
v-model:value="props.infoScreenData.patchSource"
:options="redLinePatchSourceOptions"
@change="(value) => emits('mapListScreenChange',value,'patchSource')"
/>
</div>
<div class="screen-item" style="margin-bottom:12px;">
<div class="screen-item-label">批次</div>
<a-select
allowClear
style="width: 118px"
:options="batchOptions"
v-model:value="props.infoScreenData.batch"
@change="(value) => emits('mapListScreenChange',value,'batch')"
/>
</div>
<!-- <div class="screen-item" style="margin-right:15px;margin-bottom:12px;">
<div class="screen-item-label">标注</div>
<a-select
allowClear
style="width:130px;"
v-model:value="props.infoScreenData.markType"
:options="markTypeOptions"
@change="(value) => emits('mapListScreenChange',value,'markType')"
/>
</div> -->
<div class="screen-item" style="margin-bottom:12px;"> <div class="screen-item" style="margin-bottom:12px;">
<div class="screen-item-label" style="margin-right: 10px;">下发时间</div> <div class="screen-item-label" style="margin-right: 10px;">下发时间</div>
<a-range-picker <a-range-picker
:format="'YYYY-MM-DD'" :format="'YYYY-MM-DD'"
allowClear allowClear
style="width: 306px;" style="width: 304px;"
class="item-time-select" class="item-time-select"
@change="(value) => emits('mapListScreenChange',value,'time')" @change="(value) => emits('mapListScreenChange',value,'time')"
/> />
</div> </div>
<div class="screen-item" style="margin-left: 13px;">
<div class="screen-item-label">乡镇</div>
<a-select
allowClear
style="width:120px;"
v-model:value="props.infoScreenData.streetId"
:options="streetsAreaOptions"
@change="(value) => emits('mapListScreenChange',value,'streetId')"
/>
</div>
<div class="screen-item" style="margin-right: 14px;"> <div class="screen-item" style="margin-right: 14px;">
<a-input <a-input
allowClear allowClear
@ -96,22 +43,7 @@
</div> </div>
<div class="sift-div"> <div class="sift-div">
<div class="layout-div"> <div class="layout-div">
<!-- <RollbackOutlined class="back-button" @click="emits('closeShowInfo', false)"/> -->
<!-- <div class="interval-div"></div> -->
<div class="sift-item" @click="dataListSort('area')">
<div class="sift-label">总面积</div>
<div class="sift-icon">
<div :style="`${showSortMark('area',1)? 'color: #086DEC;': ''}`">&#9650</div>
<div :style="`${showSortMark('area',2)? 'color: #086DEC;': ''}`">&#9660</div>
</div>
</div>
<div class="sift-item" @click="dataListSort('gengdi_area')">
<div class="sift-label">耕地面积</div>
<div class="sift-icon">
<div :style="`${showSortMark('gengdi_area',1)? 'color: #086DEC;': ''}`">&#9650</div>
<div :style="`${showSortMark('gengdi_area',2)? 'color: #086DEC;': ''}`">&#9660</div>
</div>
</div>
<div class="sift-item" @click="dataListSort('synchronoustime')"> <div class="sift-item" @click="dataListSort('synchronoustime')">
<div class="sift-label">下发时间</div> <div class="sift-label">下发时间</div>
<div class="sift-icon"> <div class="sift-icon">
@ -133,16 +65,6 @@
:options="keyProblemSearchMapStatusOptions"></a-checkbox-group> :options="keyProblemSearchMapStatusOptions"></a-checkbox-group>
</div> </div>
</div> </div>
<!-- <div style="display:flex;">
<div>是否超期</div>
<div>
<a-checkbox-group
v-model:value="props.infoScreenData.isOverdue"
@change="(value) => emits('mapListScreenChange',value,'isOverdue')"
style="width: 100%"
:options="isOverdueOptions"></a-checkbox-group>
</div>
</div> -->
<div style="display:flex;align-items: center;margin-top: 4px;"> <div style="display:flex;align-items: center;margin-top: 4px;">
<div>图斑面积</div> <div>图斑面积</div>
<div style="display:flex;"> <div style="display:flex;">
@ -187,9 +109,9 @@
<div class="data-list-title-div"> <div class="data-list-title-div">
<img src="/positioning.png" class="map-mark" style="cursor:pointer;" @click="locationFun(item)"/> <img src="/positioning.png" class="map-mark" style="cursor:pointer;" @click="locationFun(item)"/>
<div class="label-div"> <div class="label-div">
<div class="item-label">{{item.countyname}}</div> <div class="item-label"></div>
<div class="item-sub-label"> <div class="item-sub-label">
<div style="margin-right:12px;max-width: 100px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;">{{item.streetname}}</div> <div style="margin-right:12px;max-width: 100px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;"></div>
<span>{{item.caseno}}</span> <span>{{item.caseno}}</span>
</div> </div>
</div> </div>
@ -201,25 +123,8 @@
</div> </div>
<div class="data-list-info-div"> <div class="data-list-info-div">
<div class="info-layout-div"> <div class="info-layout-div">
<div class="info-item" style="width: 130px;">
<div class="info-label">总面积</div>
<div class="info-data" :title="dataProcessing(item.area)">{{dataProcessing(item.area)}}</div>
</div>
<div class="info-item">
<div class="info-label">农用地</div>
<div class="info-data" :title="dataProcessing(item.nongyongdiarea)">{{dataProcessing(item.nongyongdiarea)}}</div>
</div>
<div class="info-item">
<div class="info-label">耕地</div>
<div class="info-data" :title="dataProcessing(item.gengdiarea)">{{dataProcessing(item.gengdiarea)}}</div>
</div>
<div class="info-item" style="width: 120px;">
<div class="info-label">永农面积</div>
<div class="info-data" :title="dataProcessing(item.yongjiujibennongtianarea)">{{dataProcessing(item.yongjiujibennongtianarea)}}</div>
</div>
</div> </div>
<div class="info-layout-div"> <div class="info-layout-div">
<!-- <span class="info-time">{{item.createdate}}</span> -->
<div> <div>
<img src="@/assets/images/tiankongdi/collect-active.png" class="img-box" @click="collectItem(item)" v-if="item.fid"/> <img src="@/assets/images/tiankongdi/collect-active.png" class="img-box" @click="collectItem(item)" v-if="item.fid"/>
<img src="@/assets/images/tiankongdi/collect.png" class="img-box" @click="collectItem(item)" v-else/> <img src="@/assets/images/tiankongdi/collect.png" class="img-box" @click="collectItem(item)" v-else/>

View File

@ -19,27 +19,6 @@
@change="changeStatus" @change="changeStatus"
/> />
</template> </template>
<template #tubanmianji>
<div class="scope-box">
<a-input v-model:value="areaParams.tubanArea1" placeholder="请输入" />
-
<a-input v-model:value="areaParams.tubanArea2" placeholder="请输入" />
</div>
</template>
<template #gengdimianji>
<div class="scope-box">
<a-input v-model:value="areaParams.gengdiArea1" placeholder="请输入" />
-
<a-input v-model:value="areaParams.gengdiArea2" placeholder="请输入" />
</div>
</template>
<template #jibennongtianmianji>
<div class="scope-box">
<a-input v-model:value="areaParams.jibenArea1" placeholder="请输入" />
-
<a-input v-model:value="areaParams.jibenArea2" placeholder="请输入" />
</div>
</template>
</BasicForm> </BasicForm>
</div> </div>
<div class="table-box"> <div class="table-box">

View File

@ -11,84 +11,43 @@ import {
export const columns: BasicColumn[] = [ export const columns: BasicColumn[] = [
{ {
title: '图斑来源', title: '缺陷编号',
dataIndex: 'tubanlaiyuan', dataIndex: 'case_no',
}, },
{ {
title: '区县', title: '线路名称',
dataIndex: 'countyname', dataIndex: 'case_name',
width: 100,
}, },
{ {
title: '乡镇', title: '杆号',
dataIndex: 'streetname', dataIndex: 'typeid',
}, },
{ {
title: '社区/村', title: '缺陷位置',
dataIndex: 'communityname', dataIndex: 'address',
}, },
{ {
title: '图斑编号', title: '缺陷类别',
dataIndex: 'caseno',
width: 200,
},
{
title: '图斑类型',
dataIndex: 'typename', dataIndex: 'typename',
}, },
{ {
title: '图斑面积', title: '缺陷等级',
dataIndex: 'area', dataIndex: 'case_status_name',
width: 110,
}, },
{ {
title: '农用地面积', title: '缺陷描述',
dataIndex: 'nongyongdiarea',
width: 110,
},
{
title: '耕地面积',
dataIndex: 'gengdiarea',
width: 110,
},
{
title: '永农面积',
dataIndex: 'yongjiujibennongtianarea',
width: 110,
},
{
title: '当前状态',
dataIndex: 'handlestatusname',
width: 80,
},
{
title: '判定结果',
dataIndex: 'isillegal',
width: 80,
}, },
{ {
title: '下发时间', title: '下发时间',
dataIndex: 'identificationtime', dataIndex: 'synchronoustime',
}, },
{ {
title: '项目名称', title: '当前状态',
dataIndex: 'xiangmumc', dataIndex: 'handle_status_name',
}, },
{ {
title: '项目主体', title: '处理说明',
dataIndex: 'xiangmuzhuti', dataIndex: 'pandingyujushuoming',
},
{
title: '实际用途',
dataIndex: 'actualuseto',
},
// {
// title: '违法类型',
// dataIndex: 'weifaleixing',
// },
{
title: '整改措施',
dataIndex: 'measurename',
}, },
]; ];
@ -96,116 +55,21 @@ export const searchFormSchema: FormSchema[] = [
{ {
field: 'year', field: 'year',
component: 'Select', component: 'Select',
colProps: { span: 4 }, colProps: { span: 5 },
label: '年份', label: '年份',
componentProps: { componentProps: {
options: yearOptions, options: yearOptions,
}, },
}, },
{ {
field: 'tubanlaiyuan', field: 'case_name',
label: '图斑来源', component: 'Input',
component: 'ApiSelect', colProps: { span: 5 },
colProps: { span: 4 }, label: '线路名称',
componentProps: ({ formModel }) => {
return {
api: getLoad,
params: { code: 'redlinetbly' },
// 接口参数
resultField: 'result',
labelField: 'itemName',
valueField: 'itemValue',
mode: 'multiple',
maxTagCount: 1
};
},
},
{
field: 'picihao',
label: '批次',
component: 'Select',
colProps: { span: 4 },
componentProps: { componentProps: {
options: [], options: yearOptions,
}, },
}, },
{
field: 'typename',
label: '图斑类型',
component: 'ApiSelect',
colProps: { span: 4 },
componentProps: ({ formModel }) => {
return {
api: getLoad,
params: { code: 'redlinetblx' },
// 接口参数
resultField: 'result',
labelField: 'itemName',
valueField: 'itemValue',
};
},
},
{
field: 'isBuildName',
label: '标注类型',
component: 'Select',
colProps: { span: 4 },
componentProps: {
options: markTypeOptions,
},
},
{
field: 'countyid',
label: '区县',
component: 'ApiSelect',
colProps: { span: 4 },
componentProps: ({ tableAction, formModel }) => {
return {
api: getChildrenTree,
params: { parentId: 371300 },
// 接口参数
resultField: 'result',
labelField: 'name',
valueField: 'id',
onChange: () => {
formModel.streetid = '';
},
};
},
},
{
field: 'streetid',
label: '乡镇',
component: 'ApiSelect',
colProps: { span: 4 },
componentProps: ({ formModel }) => {
return {
api: formModel.countyid && getChildrenTree,
params: { parentId: formModel.countyid },
// 接口参数
resultField: 'result',
labelField: 'name',
valueField: 'id',
};
},
},
// {
// field: 'communityid',
// label: '村',
// component: 'ApiSelect',
// colProps: { span: 4 },
// componentProps: ({ formModel }) => {
// return {
// api: formModel.countyid && formModel.streetid && getChildrenTree,
// params: { parentId: formModel.streetid },
// // 接口参数
// resultField: 'result',
// labelField: 'name',
// valueField: 'id',
// };
// },
// },
{ {
field: 'nowStatus', field: 'nowStatus',
label: '当前状态', label: '当前状态',
@ -213,71 +77,9 @@ export const searchFormSchema: FormSchema[] = [
componentProps: { componentProps: {
options: keyProblemMapStatusOptions, options: keyProblemMapStatusOptions,
}, },
colProps: { span: 4 }, colProps: { span: 5 },
slot: 'dangqianzhuangtai', slot: 'dangqianzhuangtai',
}, },
{
field: 'isIllegal',
label: '判定结果',
component: 'Select',
colProps: { span: 4 },
componentProps: {
options: mapTypeOptions,
},
},
// {
// field: 'weifaleixing',
// label: '违法类型',
// component: 'Select',
// colProps: { span: 4 },
// componentProps: {
// options: [
// { label: '非农化违法用地', value: '0' },
// { label: '非粮化违法用地', value: '1' },
// ],
// },
// },
{
field: 'measureName',
label: '整改措施',
component: 'ApiSelect',
colProps: { span: 4 },
componentProps: ({ formModel }) => {
return {
api: getLoad,
params: { code: 'redlinezgcs' },
// 接口参数
resultField: 'result',
labelField: 'itemName',
valueField: 'itemValue',
};
},
},
// 增加图斑面积、耕地面积、永农面积的筛选项;
{
field: 'tubanmianji',
label: '图斑面积',
colProps: { span: 4 },
slot: 'tubanmianji',
},
{
field: 'gengdimianji',
label: '耕地面积',
colProps: { span: 4 },
slot: 'gengdimianji',
},
{
field: 'jibennongtianmianji',
label: '永农面积',
colProps: { span: 4 },
slot: 'jibennongtianmianji',
},
{
field: 'originalcaseno',
label: '标识号',
component: 'Input',
colProps: { span: 4 },
},
{ {
field: '[startTime, endTime]', field: '[startTime, endTime]',
label: '下发时间', label: '下发时间',
@ -292,6 +94,6 @@ export const searchFormSchema: FormSchema[] = [
field: 'caseNo', field: 'caseNo',
label: '图斑编号', label: '图斑编号',
component: 'Input', component: 'Input',
colProps: { span: 6 }, colProps: { span: 8 },
}, },
]; ];