Merge branch 'main' of http://123.132.248.154:10000/HC_YFZX/CaiYuanYiTiHua
commit
d2eb481e95
|
|
@ -59,6 +59,12 @@ enum Api {
|
||||||
GetIntersects = "/api/GeoTiffManager/GetIntersects",
|
GetIntersects = "/api/GeoTiffManager/GetIntersects",
|
||||||
// 获取网络环境
|
// 获取网络环境
|
||||||
GetNetWorkEev = "/api/DroneCloudQuery/IsPublic",
|
GetNetWorkEev = "/api/DroneCloudQuery/IsPublic",
|
||||||
|
// 获取其他专题或历史图斑图片
|
||||||
|
rebackzhuantipic = "/api/DroneCaseInfoSingle/rebackzhuantipic",
|
||||||
|
CopyImg = "/api/DroneCaseInfoSingle/CopyImg",
|
||||||
|
// 获取其他专题或历史图斑附件
|
||||||
|
rebackzhuantifujian = "/api/DroneCaseInfoSingle/rebackzhuantifujian",
|
||||||
|
Copyfujian = "/api/DroneCaseInfoSingle/Copyfujian"
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -175,4 +181,28 @@ export function getIntersectTif(params){
|
||||||
|
|
||||||
export function getNetworkType(){
|
export function getNetworkType(){
|
||||||
return defHttp.get({ url: Api.GetNetWorkEev });
|
return defHttp.get({ url: Api.GetNetWorkEev });
|
||||||
|
}
|
||||||
|
export function rebackzhuantipic(params:{ zhuanti, CaseId }){
|
||||||
|
return defHttp.get({
|
||||||
|
url: Api.rebackzhuantipic,
|
||||||
|
params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
export function CopyImg(params:string[]){
|
||||||
|
return defHttp.post({
|
||||||
|
url: Api.CopyImg,
|
||||||
|
data:params,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
export function rebackzhuantifujian(params:{ zhuanti, CaseId }){
|
||||||
|
return defHttp.get({
|
||||||
|
url: Api.rebackzhuantifujian,
|
||||||
|
params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
export function Copyfujian(params:string[]){
|
||||||
|
return defHttp.post({
|
||||||
|
url: Api.Copyfujian,
|
||||||
|
data:params,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -1,27 +1,27 @@
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<UploadDragger
|
<div style="display: flex;">
|
||||||
v-bind="$attrs"
|
<UploadDragger
|
||||||
:list-type="listType"
|
class="upload-file"
|
||||||
:accept="getStringAccept"
|
v-bind="$attrs"
|
||||||
:multiple="multiple"
|
:list-type="listType"
|
||||||
:showUploadList="false"
|
:accept="getStringAccept"
|
||||||
:maxCount="maxNumber"
|
:multiple="multiple"
|
||||||
:before-upload="beforeUpload"
|
:showUploadList="false"
|
||||||
:custom-request="customRequest"
|
:maxCount="maxNumber"
|
||||||
@preview="handlePreview"
|
:before-upload="beforeUpload"
|
||||||
@remove="handleRemove"
|
:custom-request="customRequest"
|
||||||
>
|
@preview="handlePreview"
|
||||||
<!-- <div v-if="fileList && fileList.length < maxNumber">
|
@remove="handleRemove"
|
||||||
<plus-outlined />
|
>
|
||||||
<div style="margin-top: 8px">{{ t('component.upload.upload') }}</div>
|
<p class="ant-upload-drag-icon">
|
||||||
</div> -->
|
<inbox-outlined></inbox-outlined>
|
||||||
<p class="ant-upload-drag-icon">
|
</p>
|
||||||
<inbox-outlined></inbox-outlined>
|
<p class="ant-upload-text">单击或拖动文件到此区域进行上传</p>
|
||||||
</p>
|
<p class="ant-upload-hint"> 支持单次或批量上传。 </p>
|
||||||
<p class="ant-upload-text">单击或拖动文件到此区域进行上传</p>
|
</UploadDragger>
|
||||||
<p class="ant-upload-hint"> 支持单次或批量上传。 </p>
|
<div :class="`copy-other ${$attrs.disabled? 'copy-other-disabled': ''}`" @click="openSelectOther">历史举证</div>
|
||||||
</UploadDragger>
|
</div>
|
||||||
|
|
||||||
<div class="file-item" v-for="(item, index) in fileList" :key="index">
|
<div class="file-item" v-for="(item, index) in fileList" :key="index">
|
||||||
{{ handlerDealFileName(item.name) }}
|
{{ handlerDealFileName(item.name) }}
|
||||||
|
|
@ -38,11 +38,17 @@
|
||||||
<Modal :open="previewOpen" :title="previewTitle" :footer="null" @cancel="handleCancel">
|
<Modal :open="previewOpen" :title="previewTitle" :footer="null" @cancel="handleCancel">
|
||||||
<img alt="" style="width: 100%" :src="previewImage" />
|
<img alt="" style="width: 100%" :src="previewImage" />
|
||||||
</Modal>
|
</Modal>
|
||||||
|
<a-modal v-model:open="openSelectOtherModal" title="历史举证" :footer="null" :destroyOnClose="true">
|
||||||
|
<FileUploadSelectOtherModal
|
||||||
|
:server="props.server"
|
||||||
|
@save="saveOtherFile"
|
||||||
|
/>
|
||||||
|
</a-modal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { ref, toRefs, watch } from 'vue';
|
import { ref, toRefs, watch, useAttrs } from 'vue';
|
||||||
import {
|
import {
|
||||||
PlusOutlined,
|
PlusOutlined,
|
||||||
InboxOutlined,
|
InboxOutlined,
|
||||||
|
|
@ -63,6 +69,7 @@
|
||||||
import { UploadResultStatus } from '@/components/Upload/src/types/typing';
|
import { UploadResultStatus } from '@/components/Upload/src/types/typing';
|
||||||
import { fileUploadApi } from '@/api/sys/upload';
|
import { fileUploadApi } from '@/api/sys/upload';
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
|
import FileUploadSelectOtherModal from './FileUploadSelectOtherModal.vue'
|
||||||
|
|
||||||
defineOptions({ name: 'ImageUpload' });
|
defineOptions({ name: 'ImageUpload' });
|
||||||
|
|
||||||
|
|
@ -70,6 +77,7 @@
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
...uploadContainerProps,
|
...uploadContainerProps,
|
||||||
});
|
});
|
||||||
|
const attrs = useAttrs()
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const { createMessage } = useMessage();
|
const { createMessage } = useMessage();
|
||||||
const { accept, helpText, maxNumber, maxSize } = toRefs(props);
|
const { accept, helpText, maxNumber, maxSize } = toRefs(props);
|
||||||
|
|
@ -87,6 +95,7 @@
|
||||||
const fileList = ref<UploadProps['fileList']>([]);
|
const fileList = ref<UploadProps['fileList']>([]);
|
||||||
const isLtMsg = ref<boolean>(true);
|
const isLtMsg = ref<boolean>(true);
|
||||||
const isActMsg = ref<boolean>(true);
|
const isActMsg = ref<boolean>(true);
|
||||||
|
const openSelectOtherModal = ref(false)
|
||||||
|
|
||||||
watch(
|
watch(
|
||||||
() => props.value,
|
() => props.value,
|
||||||
|
|
@ -288,6 +297,24 @@
|
||||||
});
|
});
|
||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
|
const openSelectOther = () => {
|
||||||
|
if(attrs.disabled) return
|
||||||
|
openSelectOtherModal.value = true
|
||||||
|
}
|
||||||
|
const saveOtherFile = (list:string[]) => {
|
||||||
|
const { server } = props;
|
||||||
|
list.forEach(item => {
|
||||||
|
fileList.value?.push({
|
||||||
|
uid: '-1',
|
||||||
|
name: item,
|
||||||
|
status: 'done',
|
||||||
|
url: server + '/' + item,
|
||||||
|
});
|
||||||
|
})
|
||||||
|
const value = getValue();
|
||||||
|
emit('change', value);
|
||||||
|
openSelectOtherModal.value = false
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="less">
|
<style lang="less">
|
||||||
|
|
@ -319,3 +346,27 @@
|
||||||
color: #999;
|
color: #999;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.upload-file{
|
||||||
|
width: calc(100% - 161px);
|
||||||
|
}
|
||||||
|
.copy-other{
|
||||||
|
width: 161px;
|
||||||
|
// height: 100px;
|
||||||
|
border: 1px dashed #d9d9d9;
|
||||||
|
background-color: rgba(0, 0, 0, 0.02);
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
.copy-other:hover{
|
||||||
|
border-color: #0960bd;
|
||||||
|
}
|
||||||
|
.copy-other-disabled{
|
||||||
|
cursor: no-drop;
|
||||||
|
border-color: #d9d9d9 !important;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,144 @@
|
||||||
|
<template>
|
||||||
|
<a-spin :spinning="loading">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="subject" v-for="subject in fileList">
|
||||||
|
<div class="subject-name">{{ subject.zname }}</div>
|
||||||
|
<div class="show-file-div">
|
||||||
|
<div class="item-file" v-for="(item, index) in subject.val">
|
||||||
|
<a-checkbox
|
||||||
|
style="margin-right: 10px;"
|
||||||
|
:checked="selectFile.some(obj => obj === item.path)"
|
||||||
|
@change="changeSelect(selectFile.some(obj => obj === item.path)? 1: 2,item.path)">
|
||||||
|
</a-checkbox>
|
||||||
|
<Icon icon="material-symbols:attach-file" :size="20" style="cursor: pointer;" @click="hanlderPreViewFile(item.path)"/>
|
||||||
|
{{ item.path }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="button-div">
|
||||||
|
<a-button type="primary" @click="save">保存</a-button>
|
||||||
|
</div>
|
||||||
|
<a-modal
|
||||||
|
v-model:open="previewFileModalVisible"
|
||||||
|
style="width: 100vw"
|
||||||
|
title="文件预览"
|
||||||
|
wrap-class-name="full-modal"
|
||||||
|
>
|
||||||
|
<FilePreview v-if="previewFileModalVisible" :fileUrl="previewFileUrl"></FilePreview>
|
||||||
|
<template #footer>
|
||||||
|
<a-button key="cancel" @click="handleCancelPreviewFile">取消</a-button>
|
||||||
|
<a-button key="confirm" type="primary" @click="handlerDownloadFle">下载</a-button>
|
||||||
|
</template>
|
||||||
|
</a-modal>
|
||||||
|
</a-spin>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { defineProps, onMounted, ref, defineEmits } from "vue"
|
||||||
|
import { rebackzhuantifujian, Copyfujian } from '@/api/tiankongdi/index'
|
||||||
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
import { message } from "ant-design-vue";
|
||||||
|
import { getZhuantiName } from '@/utils/global'
|
||||||
|
import FilePreview from '@/components/Upload/src/components/FilePreview.vue';
|
||||||
|
|
||||||
|
const props = defineProps(['server'])
|
||||||
|
const emits = defineEmits(['save'])
|
||||||
|
const fileList = ref<string[]>([])
|
||||||
|
const selectFile = ref<string[]>([])
|
||||||
|
const loading = ref(false)
|
||||||
|
const previewFileModalVisible = ref(false)
|
||||||
|
const previewFileUrl = ref("")
|
||||||
|
onMounted(() => {
|
||||||
|
loading.value = true
|
||||||
|
let caseid = sessionStorage.getItem('SelectOtherId')
|
||||||
|
rebackzhuantifujian({CaseId:caseid,zhuanti:getZhuantiName()}).then(res => {
|
||||||
|
console.log('res',res)
|
||||||
|
fileList.value = res
|
||||||
|
}).finally(() => {
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
const changeSelect = (type,item) => {
|
||||||
|
switch(type){
|
||||||
|
case 1:
|
||||||
|
selectFile.value = selectFile.value.filter(useItem => useItem !== item);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
selectFile.value.push(item)
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const save = () => {
|
||||||
|
if(selectFile.value.length <= 0){
|
||||||
|
message.warning('至少选择一个文件')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
loading.value = true
|
||||||
|
Copyfujian(selectFile.value).then(res => {
|
||||||
|
console.log(res)
|
||||||
|
emits('save', res)
|
||||||
|
}).finally(() => {
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
const hanlderPreViewFile = (url)=>{
|
||||||
|
previewFileUrl.value = `${props.server}/${url}`;
|
||||||
|
previewFileModalVisible.value = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
const handlerDownloadFle = ()=>{
|
||||||
|
window.open(previewFileUrl.value, 'mozillaTab');
|
||||||
|
}
|
||||||
|
const handleCancelPreviewFile = ()=>{
|
||||||
|
previewFileModalVisible.value = false;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.modal-content{
|
||||||
|
min-height: 500px;
|
||||||
|
padding: 0px 20px;
|
||||||
|
max-height: 678px;
|
||||||
|
overflow: auto;
|
||||||
|
scrollbar-width: none;
|
||||||
|
::-webkit-scrollbar {
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
.subject{
|
||||||
|
margin-bottom: 10px;
|
||||||
|
.subject-name{
|
||||||
|
height: 30px;
|
||||||
|
background-color: #8b8b8b;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 500;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
.show-file-div{
|
||||||
|
width: 100%;
|
||||||
|
.item-file{
|
||||||
|
display: flex;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
.item-file:hover{
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.button-div{
|
||||||
|
display: flex;
|
||||||
|
justify-content: end;
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
|
@ -39,9 +39,16 @@
|
||||||
<div style="margin-top: 8px">{{ t('component.upload.upload') }}</div>
|
<div style="margin-top: 8px">{{ t('component.upload.upload') }}</div>
|
||||||
</div>
|
</div>
|
||||||
</Upload>
|
</Upload>
|
||||||
|
<div v-if="!$attrs.disabled" class="copy-other" @click="openSelectOther">历史举证</div>
|
||||||
<!-- <Modal :open="previewOpen" :title="previewTitle" :footer="null" @cancel="handleCancel">
|
<!-- <Modal :open="previewOpen" :title="previewTitle" :footer="null" @cancel="handleCancel">
|
||||||
<img alt="" style="width: 100%" :src="previewImage" />
|
<img alt="" style="width: 100%" :src="previewImage" />
|
||||||
</Modal> -->
|
</Modal> -->
|
||||||
|
<a-modal v-model:open="openSelectOtherModal" title="历史举证" :footer="null" :destroyOnClose="true">
|
||||||
|
<ImageUploadSelectOtherModal
|
||||||
|
:server="props.server"
|
||||||
|
@save="saveOtherImage"
|
||||||
|
/>
|
||||||
|
</a-modal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -63,6 +70,7 @@
|
||||||
import { fileUploadApi } from '@/api/sys/upload';
|
import { fileUploadApi } from '@/api/sys/upload';
|
||||||
import ImagePreview from '@/components/Upload/src/components/image_preview.vue';
|
import ImagePreview from '@/components/Upload/src/components/image_preview.vue';
|
||||||
import { userFormFileStore } from '@/store/modules/formFileUrl';
|
import { userFormFileStore } from '@/store/modules/formFileUrl';
|
||||||
|
import ImageUploadSelectOtherModal from './ImageUploadSelectOtherModal.vue'
|
||||||
|
|
||||||
const formFileStore = userFormFileStore();
|
const formFileStore = userFormFileStore();
|
||||||
|
|
||||||
|
|
@ -83,6 +91,7 @@
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
...uploadContainerProps,
|
...uploadContainerProps,
|
||||||
});
|
});
|
||||||
|
const openSelectOtherModal = ref(false)
|
||||||
|
|
||||||
|
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
|
|
@ -327,6 +336,23 @@
|
||||||
}, 250);
|
}, 250);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const openSelectOther = () => {
|
||||||
|
openSelectOtherModal.value = true
|
||||||
|
}
|
||||||
|
const saveOtherImage = (list:string[]) => {
|
||||||
|
const { server } = props;
|
||||||
|
list.forEach(item => {
|
||||||
|
fileList.value?.push({
|
||||||
|
uid: '-1',
|
||||||
|
name: item,
|
||||||
|
status: 'done',
|
||||||
|
url: server + '/' + item,
|
||||||
|
});
|
||||||
|
})
|
||||||
|
const value = getValue();
|
||||||
|
emit('change', value);
|
||||||
|
openSelectOtherModal.value = false
|
||||||
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
@ -434,4 +460,19 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.copy-other{
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
border: 1px dashed #d9d9d9;
|
||||||
|
background-color: rgba(0, 0, 0, 0.02);
|
||||||
|
cursor: pointer;
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
.copy-other:hover{
|
||||||
|
border-color: #0960bd;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,130 @@
|
||||||
|
<template>
|
||||||
|
<a-spin :spinning="loading">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="subject" v-for="subject in imageList">
|
||||||
|
<div class="subject-name">{{ subject.zname }}</div>
|
||||||
|
<div class="show-image-div">
|
||||||
|
<div class="image-item" v-for="(item, index) in subject.val">
|
||||||
|
<a-image
|
||||||
|
style="width:100px;height:100px;"
|
||||||
|
:src="`${props.server}/${item.FilePath}`"
|
||||||
|
></a-image>
|
||||||
|
<div class="select-div" @click="changeSelect(selectImage.some(obj => obj === item.FilePath)? 1: 2,item.FilePath)">
|
||||||
|
<Icon v-if="selectImage.some(obj => obj === item.FilePath)" icon="material-symbols-light:check-circle" :size="25" style="color: #18a058;"/>
|
||||||
|
<Icon v-else icon="material-symbols-light:check-circle-outline" :size="25" style="color: #cacdcd;"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="button-div">
|
||||||
|
<a-button type="primary" @click="save">保存</a-button>
|
||||||
|
</div>
|
||||||
|
</a-spin>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { defineProps, onMounted, ref, defineEmits } from "vue"
|
||||||
|
import { rebackzhuantipic, CopyImg } from '@/api/tiankongdi/index'
|
||||||
|
import Icon from '@/components/Icon/Icon.vue';
|
||||||
|
import { message } from "ant-design-vue";
|
||||||
|
import { getZhuantiName } from '@/utils/global'
|
||||||
|
|
||||||
|
const props = defineProps(['caseid','server','zhuanti'])
|
||||||
|
const emits = defineEmits(['save'])
|
||||||
|
const imageList = ref<string[]>([])
|
||||||
|
const selectImage = ref<string[]>([])
|
||||||
|
const loading = ref(false)
|
||||||
|
onMounted(() => {
|
||||||
|
loading.value = true
|
||||||
|
let caseid = sessionStorage.getItem('SelectOtherId')
|
||||||
|
rebackzhuantipic({CaseId:caseid,zhuanti:getZhuantiName()}).then(res => {
|
||||||
|
imageList.value = res
|
||||||
|
}).finally(() => {
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
const changeSelect = (type,item) => {
|
||||||
|
switch(type){
|
||||||
|
case 1:
|
||||||
|
selectImage.value = selectImage.value.filter(useItem => useItem !== item);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
selectImage.value.push(item)
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
const save = () => {
|
||||||
|
if(selectImage.value.length <= 0){
|
||||||
|
message.warning('至少选择一张图片')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
loading.value = true
|
||||||
|
CopyImg(selectImage.value).then(res => {
|
||||||
|
emits('save', res)
|
||||||
|
}).finally(() => {
|
||||||
|
loading.value = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.modal-content{
|
||||||
|
min-height: 500px;
|
||||||
|
padding: 0px 20px;
|
||||||
|
max-height: 678px;
|
||||||
|
overflow: auto;
|
||||||
|
scrollbar-width: none;
|
||||||
|
::-webkit-scrollbar {
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
.subject{
|
||||||
|
margin-bottom: 10px;
|
||||||
|
.subject-name{
|
||||||
|
height: 30px;
|
||||||
|
background-color: #8b8b8b;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 500;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
.show-image-div{
|
||||||
|
width: 100%;
|
||||||
|
// height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
align-content: flex-start;
|
||||||
|
.image-item{
|
||||||
|
position: relative;
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
margin-right: 12px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
.select-div{
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0px;
|
||||||
|
height: 20px;
|
||||||
|
width: 100%;
|
||||||
|
height: 30px;
|
||||||
|
background-color: #00000075;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.button-div{
|
||||||
|
display: flex;
|
||||||
|
justify-content: end;
|
||||||
|
padding: 20px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -230,3 +230,27 @@ export const keyIssusesIIPatchSourceOptions = await asyncGetOptions('zd2tbly');
|
||||||
export const inspectionAuditPatchSourceOptions = await asyncGetOptions('xcsjtbly');
|
export const inspectionAuditPatchSourceOptions = await asyncGetOptions('xcsjtbly');
|
||||||
export const degrainingPatchSourceOptions = await asyncGetOptions('gdflhbly');
|
export const degrainingPatchSourceOptions = await asyncGetOptions('gdflhbly');
|
||||||
export const redLinePatchSourceOptions = await asyncGetOptions('redlinetbly');
|
export const redLinePatchSourceOptions = await asyncGetOptions('redlinetbly');
|
||||||
|
|
||||||
|
export const getZhuantiName = () => {
|
||||||
|
let code = sessionStorage.getItem('SelectOtherZhuantiCode')
|
||||||
|
switch(code){
|
||||||
|
case "0000001":
|
||||||
|
return '违法用地'
|
||||||
|
case "0000002":
|
||||||
|
return '巡察审计'
|
||||||
|
case "0000003":
|
||||||
|
return '非法采矿卫片下发'
|
||||||
|
case "0000004":
|
||||||
|
return '耕地非粮化'
|
||||||
|
case "0000005":
|
||||||
|
return '重点问题Ⅰ类'
|
||||||
|
case "0000006":
|
||||||
|
return '重点问题Ⅱ类'
|
||||||
|
case "0000007":
|
||||||
|
return '生态保护红线监管'
|
||||||
|
case "0000008":
|
||||||
|
return '生态修复'
|
||||||
|
case "100001":
|
||||||
|
return '非法采矿'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1098,6 +1098,9 @@
|
||||||
|
|
||||||
onBeforeMount(() => {
|
onBeforeMount(() => {
|
||||||
getTaskInfo();
|
getTaskInfo();
|
||||||
|
// 表单附件和图片组件 历史举证功能获取专题和ID 在进入审核时将数据放到session
|
||||||
|
sessionStorage.setItem('SelectOtherId',props.processId)
|
||||||
|
sessionStorage.setItem('SelectOtherZhuantiCode',props.auditData.processcode)
|
||||||
});
|
});
|
||||||
|
|
||||||
function onFormContainerMouseOver(event) {}
|
function onFormContainerMouseOver(event) {}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue