Merge branch 'refs/heads/feature/v8.0/8.0.3' into test
9 files modified
1 files added
| New file |
| | |
| | | <svg width="135" height="52" viewBox="0 0 135 52" fill="none" xmlns="http://www.w3.org/2000/svg"> |
| | | <g id="Group 1321316178"> |
| | | <g id="Rectangle 34624972" filter="url(#filter0_d_2725_2773)"> |
| | | <rect x="5" width="125" height="39" rx="4" fill="#FF9011"/> |
| | | </g> |
| | | <path id="关闭" d="M76.16 21.406H71.442C72.506 23.044 74.256 24.206 76.664 24.724C76.258 25.102 75.74 25.872 75.488 26.362C73.164 25.718 71.526 24.486 70.35 22.694C69.538 24.108 67.886 25.452 64.68 26.432C64.456 26.054 63.896 25.326 63.448 24.934C66.85 23.954 68.264 22.68 68.796 21.406H63.868V19.754H69.132V19.614V17.85H64.792V16.198H67.116C66.85 15.554 66.346 14.728 65.87 14.112L67.27 13.412C67.886 14.112 68.474 15.064 68.74 15.722L67.886 16.198H71.26C71.778 15.372 72.324 14.238 72.66 13.384L74.48 13.986C74.046 14.742 73.556 15.526 73.108 16.198H75.432V17.85H71.092V19.642V19.754H76.16V21.406ZM81.298 15.54L79.898 16.464C79.604 15.834 78.82 14.896 78.176 14.224L79.478 13.398C80.15 14.014 80.948 14.91 81.298 15.54ZM77.966 26.432V16.73H79.632V26.432H77.966ZM87.892 19.516H86.296V23.478C86.296 24.318 86.128 24.738 85.54 25.004C84.98 25.256 84.154 25.298 83.034 25.298C82.964 24.822 82.726 24.136 82.502 23.688C83.216 23.716 84.014 23.716 84.252 23.716C84.49 23.702 84.574 23.646 84.574 23.436V20.748C83.58 22.022 82.292 23.1 80.864 23.912C80.626 23.562 80.08 22.96 79.73 22.68C81.242 21.91 82.628 20.748 83.552 19.516H80.36V17.934H84.574V16.128H86.296V17.934H87.892V19.516ZM90.104 14.028V24.654C90.104 25.452 89.95 25.844 89.446 26.11C88.956 26.362 88.242 26.404 87.22 26.39C87.164 25.97 86.94 25.298 86.73 24.892C87.304 24.92 87.99 24.92 88.186 24.92C88.396 24.906 88.466 24.836 88.466 24.626V15.568H81.844V14.028H90.104Z" fill="white"/> |
| | | <g id="Frame"> |
| | | <path id="Vector" d="M54.4599 25.1179C54.2915 25.1179 54.1232 25.0537 53.9946 24.9251L44.0678 14.9981C43.8107 14.7413 43.8107 14.3244 44.0678 14.0676C44.3249 13.8105 44.7413 13.8105 44.9983 14.0676L54.9252 23.9946C55.1822 24.2514 55.1822 24.6683 54.9252 24.9251C54.7967 25.0537 54.6283 25.1179 54.4599 25.1179Z" fill="white"/> |
| | | <path id="Vector_2" d="M44.5331 25.1179C44.3647 25.1179 44.1963 25.0537 44.0678 24.9251C43.8107 24.6683 43.8107 24.2514 44.0678 23.9946L53.9946 14.0676C54.2517 13.8105 54.6681 13.8105 54.9252 14.0676C55.1822 14.3244 55.1822 14.7413 54.9252 14.9981L44.9983 24.9251C44.8698 25.0537 44.7014 25.1179 44.5331 25.1179Z" fill="white"/> |
| | | </g> |
| | | </g> |
| | | <defs> |
| | | <filter id="filter0_d_2725_2773" x="1" y="0" width="133" height="47" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"> |
| | | <feFlood flood-opacity="0" result="BackgroundImageFix"/> |
| | | <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/> |
| | | <feOffset dy="4"/> |
| | | <feGaussianBlur stdDeviation="2"/> |
| | | <feComposite in2="hardAlpha" operator="out"/> |
| | | <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/> |
| | | <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_2725_2773"/> |
| | | <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_2725_2773" result="shape"/> |
| | | </filter> |
| | | </defs> |
| | | </svg> |
| | |
| | | .ztzf-layer-search { |
| | | color: #fff !important; |
| | | background-color: transparent !important; |
| | | |
| | | .el-select__wrapper { |
| | | background-color: transparent !important; |
| | | } |
| | | |
| | | .el-select__popper.el-popper { |
| | | background-color: transparent !important; |
| | | } |
| | | |
| | | .el-popper.is-light { |
| | | background-color: transparent !important; |
| | | } |
| | | .el-select__placeholder { |
| | | &.is-transparent { |
| | | color: rgba(255,255,255,0.37) !important; |
| | | } |
| | | |
| | | &.el-select__selected-item { |
| | | color: #ffffff; |
| | | } |
| | | } |
| | | |
| | | .el-select__placeholder { |
| | | &.is-transparent { |
| | | color: rgba(255,255,255,0.37) !important; |
| | | } |
| | | |
| | | &.is-disabled { |
| | | color: rgba(255,255,255,0.37) !important; |
| | | } |
| | | } |
| | | |
| | | .el-select__selected-item { |
| | | color: #ffffff !important; |
| | | |
| | | &.is-disabled { |
| | | color: rgba(255,255,255,0.37) !important; |
| | | z-index: 99; |
| | | } |
| | | } |
| | | } |
| | | .ztzf-select-popper.el-select__popper { |
| | | border:#2D2D2D !important; |
| | |
| | | class="videoItem" |
| | | ref="videoRefs" |
| | | controls |
| | | autoplay |
| | | |
| | | :src="dialogDetailList.link" |
| | | ></video> |
| | | <!-- 地图 --> |
| | |
| | | class="videoBox" |
| | | ref="videoRefs" |
| | | controls |
| | | autoplay |
| | | |
| | | :src="currentVideoUrl" |
| | | ></video> |
| | | </div> |
| | |
| | | ref="fullscreenVideo" |
| | | class="fullscreen-video" |
| | | :src="currentVideoUrl" |
| | | :style="{ width: pxToRem(1600), height: '80vh' }" |
| | | :style="{ width: pxToRem(1567), height: '80vh' }" |
| | | controls |
| | | autoplay |
| | | |
| | | ></video> |
| | | </div> |
| | | </el-dialog> |
| | |
| | | <div class="title">{{ layerParams.fileType === 1 ? '识别区' : '禁飞区' }}总数量</div> |
| | | |
| | | <div class="num"> |
| | | <span>{{ formData.total_count }}</span> 个 |
| | | <span class="totalQuantity">{{ formData.total_count }}</span> 个 |
| | | </div> |
| | | </div> |
| | | <div class="itemData"> |
| | | <div class="title">{{ layerParams.fileType === 1 ? '识别区' : '禁飞区' }}总面积</div> |
| | | <div class="num"> |
| | | <span class="areaStyle">{{ formData.total_area }}</span> m² |
| | | <span class="areaStyle">{{ formData.total_area.toFixed(2) }}</span> m² |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script setup> |
| | | const emit = defineEmits(['refreshMethod']); |
| | | const emit = defineEmits(['refreshMethod','callParentMethod']); |
| | | import EventBus from '@/utils/eventBus'; |
| | | import { ElMessage } from 'element-plus'; |
| | | import dayjs from 'dayjs'; |
| | |
| | | }; |
| | | const cancelHandel = () => { |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | }; |
| | | const submitHandle = () => { |
| | | if (!formData.value.name) { |
| | |
| | | EventBus.emit('gettreeDataApi'); |
| | | emit('refreshMethod'); |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | }); |
| | | } else { |
| | | //文件夹编辑 |
| | |
| | | ElMessage.success('编辑成功'); |
| | | EventBus.emit('gettreeDataApi'); |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | }); |
| | | } |
| | | }; |
| | |
| | | font-size: 14px; |
| | | color: #ffffff; |
| | | } |
| | | .areaStyle { |
| | | .totalQuantity { |
| | | font-family: Source Han Sans CN, Source Han Sans CN; |
| | | font-weight: bold; |
| | | font-size: 20px; |
| | | color: #FFFFFF; |
| | | font-weight: bold; |
| | | font-size: 20px; |
| | | } |
| | | .areaStyle { |
| | | font-family: Source Han Sans CN, Source Han Sans CN; |
| | | font-weight: bold; |
| | | font-size: 20px; |
| | | color: #FFFFFF; |
| | | |
| | | } |
| | | } |
| | | .itemData { |
| | |
| | | <div |
| | | class="tableListBox" |
| | | v-loading="loading" |
| | | element-loading-background="rgba(0, 0, 0, 0.5)" |
| | | element-loading-background="rgba(0, 0, 0, 0.2)" |
| | | element-loading-text="加载中..." |
| | | > |
| | | <el-tree |
| | |
| | | ); |
| | | }; |
| | | const selectAll = () => { |
| | | layerParams.value.currentLocationFolderId = null; |
| | | layerParams.value.isSingleLocating = false |
| | | if (treeRef.value) { |
| | | const allFenceKeys = getAllFenceKeys(); |
| | | const allFenceNodes = treeData.value.flatMap(folder => folder.children); |
| | | |
| | | if (checkedKeys.value.length === allFenceKeys.length) { |
| | | // 取消全选 |
| | | treeRef.value.setCheckedKeys([]); |
| | | checkedKeys.value = []; |
| | | checkedNodes.value = []; |
| | | coverData.value = []; |
| | | emit('update:coverData', coverData.value); |
| | | } else { |
| | | // 全选 |
| | | treeRef.value.setCheckedKeys(allFenceKeys); |
| | | checkedKeys.value = allFenceKeys; |
| | | checkedNodes.value = allFenceNodes; |
| | | coverData.value = allFenceNodes; |
| | | emit('update:coverData', coverData.value); |
| | | |
| | | } |
| | | emit('update:coverData', coverData.value); |
| | | |
| | | } |
| | | }; |
| | | // 定位按钮事件 |
| | |
| | | left: 0; |
| | | height: calc(100% - 32px); |
| | | z-index: 99; |
| | | width: 382px; |
| | | width: 332px; |
| | | overflow: hidden; |
| | | background: rgba(0,0,0,0.51); |
| | | backdrop-filter: blur(4px); |
| | |
| | | margin-top: 10px; |
| | | padding-right: 12px; |
| | | .inputName { |
| | | width: 184px; |
| | | width: 140px; |
| | | height: 32px; |
| | | } |
| | | .searchAndReset { |
| | |
| | | justify-content: right; |
| | | align-items: center; |
| | | margin-right: 10px; |
| | | .reset, |
| | | .search { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | width: 46px; |
| | | height: 32px; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .reset { |
| | | margin-left: 12px; |
| | | background: #0d2b38; |
| | | border-radius: 4px 4px 4px 4px; |
| | | border: 1px solid #84cbd3; |
| | | font-weight: 400; |
| | | font-size: 14px; |
| | | color: #ffffff; |
| | | } |
| | | |
| | | .search { |
| | | background: #1e2d51; |
| | | border-radius: 4px 4px 4px 4px; |
| | | border: 1px solid #c5d6ff; |
| | | font-weight: 400; |
| | | font-size: 14px; |
| | | color: #ffffff; |
| | | } |
| | | } |
| | | } |
| | | .btnGroups { |
| | |
| | | flex-grow: 1; |
| | | padding-right: 12px; |
| | | :deep(.el-tree-node__content) { |
| | | height: 35px !important; |
| | | line-height: 35px !important; |
| | | height: 45px !important; |
| | | line-height: 45px !important; |
| | | padding-left: 0 !important; |
| | | border-bottom: 1px dotted rgba(255,255,255,0.1); |
| | | } |
| | | |
| | | .isTheTerritory { |
| | |
| | | <template> |
| | | <div class="rightContainer"> |
| | | <div class="rightContainer" > |
| | | <div class="contenttitle">{{ layerParams.fenceType === 1 ? '识别区' : '禁飞区' }}信息</div> |
| | | <div class="centerBox"> |
| | | <div class="itemRow"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="btnGroups"> |
| | | <img src="/src/assets/images/layerManagement/savebtn.svg" alt="" @click="submitHandle" /> |
| | | <img src="/src/assets/images/layerManagement/cancelbtn.svg" @click="cancelHandel" alt="" /> |
| | | <img v-if="!layerParams.editingIsProhibited" src="/src/assets/images/layerManagement/savebtn.svg" alt="" @click="submitHandle" /> |
| | | <img v-if="layerParams.editingIsProhibited" src="/src/assets/images/layerManagement/closeBtn.svg" @click="cancelHandel" alt="" /> |
| | | <img v-else src="/src/assets/images/layerManagement/cancelbtn.svg" @click="cancelHandel" alt="" /> |
| | | |
| | | </div> |
| | | </div> |
| | | </template> |
| | |
| | | import dayjs from 'dayjs'; |
| | | import { deitFenceApi, addFenceApi } from '@/api/layer/index'; |
| | | import EventBus from '@/utils/eventBus'; |
| | | const emit = defineEmits(['callParentMethod']); |
| | | const emit = defineEmits(['callParentMethod','update:loading']); |
| | | const layerParams = inject('layerParams'); |
| | | const options = ref([]); |
| | | const timeValue = ref(''); |
| | |
| | | geo_data: '', |
| | | |
| | | }); |
| | | const loading = ref(false); |
| | | const detailData = ref(null); |
| | | const fenceArea = ref(0); |
| | | detailData.value = layerParams.value.editDetailData; |
| | |
| | | layerParams.value.editingIsProhibited = false; |
| | | }; |
| | | const cancelHandel = () => { |
| | | loading.value = false |
| | | emit('update:loading', false); |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | EventBus.emit('gettreeDataApi'); |
| | | }; |
| | | const submitHandle = () => { |
| | | if(layerParams.value.crossSurface){ |
| | | return ElMessage.warning('测区不支持交叉面') |
| | | } |
| | | if (!formData.value.folder_id) { |
| | | ElMessage.error('请选择文件夹'); |
| | | return; |
| | |
| | | ElMessage.error('请绘制区域'); |
| | | return; |
| | | } |
| | | loading.value = true |
| | | emit('update:loading', true); |
| | | const params = { |
| | | folder_id: formData.value.folder_id, |
| | | name: formData.value.name, |
| | |
| | | } |
| | | if (layerParams.value.decideWhetherToAddOrEdit === 1) { |
| | | //围栏新增 |
| | | addFenceApi(params).then(res => { |
| | | ElMessage.success('新增成功'); |
| | | EventBus.emit('gettreeDataApi'); |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | }); |
| | | addFenceApi(params) |
| | | .then(res => { |
| | | if(res.data.code ===0 ){ |
| | | ElMessage.success('新增成功'); |
| | | EventBus.emit('gettreeDataApi'); |
| | | loading.value = false; |
| | | emit('update:loading', false); |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | } |
| | | }) |
| | | .catch(err => { |
| | | ElMessage.error('新增失败,请重试'); |
| | | }) |
| | | .finally(() => { |
| | | loading.value = false; |
| | | emit('update:loading', false); |
| | | }); |
| | | } else if (layerParams.value.decideWhetherToAddOrEdit === 2) { |
| | | //围栏编辑 |
| | | deitFenceApi(params).then(res => { |
| | | ElMessage.success('编辑成功'); |
| | | EventBus.emit('gettreeDataApi'); |
| | | |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | }); |
| | | } |
| | | deitFenceApi(params) |
| | | .then(res => { |
| | | if(res.data.code === 0){ |
| | | ElMessage.success('编辑成功'); |
| | | EventBus.emit('gettreeDataApi'); |
| | | clearAllData(); |
| | | emit('callParentMethod'); |
| | | loading.value = false; |
| | | emit('update:loading', false); |
| | | } |
| | | }) |
| | | .catch(err => { |
| | | ElMessage.error('编辑失败,请重试'); |
| | | }) |
| | | .finally(() => { |
| | | loading.value = false; |
| | | emit('update:loading', false); |
| | | }); |
| | | } |
| | | }; |
| | | onMounted(() => { |
| | | // 获取判断状态(默认设为 1) |
| | |
| | | backdrop-filter: blur(4px); |
| | | border-radius: 8px 8px 8px 8px; |
| | | padding: 16px 12px; |
| | | |
| | | :deep(.el-select__wrapper.is-disabled .el-select__selected-item){ |
| | | color: rgba(255,255,255,0.37) !important; |
| | | } |
| | | :deep(.el-textarea__inner) { |
| | | background: transparent !important; |
| | | color: #ffffff !important; |
| | | color: #ffffff; |
| | | } |
| | | :deep(.el-textarea.is-disabled .el-textarea__inner){ |
| | | color: var(--el-disabled-text-color) !important; |
| | | |
| | | } |
| | | .contenttitle { |
| | | font-family: Source Han Sans CN, Source Han Sans CN; |
| | | font-weight: bold; |
| | |
| | | height: 39px; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | } |
| | | } |
| | | </style> |
| | |
| | | </el-tabs> |
| | | </div> |
| | | <!-- 地图 --> |
| | | <div class="mapContainer"> |
| | | <div class="tool-tip" v-if="layerParams.addNest">点击地图生成测绘区域</div> |
| | | <div class="mapContainer" v-loading="isPageLoading" |
| | | element-loading-background="rgba(0, 0, 0, 0.5)" |
| | | element-loading-text="加载中..."> |
| | | <div class="tool-tip warning" v-show="isShowWaringTip"> |
| | | <span class="icon"> |
| | | <el-icon><WarningFilled /></el-icon> |
| | | </span> |
| | | <span>测区不支持交叉面</span> |
| | | </div> |
| | | <div class="tool-tip" v-if="!isShowWaringTip && layerParams.addNest"> |
| | | {{ showToolTipText }} |
| | | </div> |
| | | <div id="layMap" class="ztzf-cesium"></div> |
| | | <leftList |
| | | v-if=" |
| | |
| | | <rightEdit |
| | | v-if="layerParams.addNest || layerParams.editNest" |
| | | @callParentMethod="parentMethod" |
| | | @update:loading="handleLoadingChange" |
| | | ></rightEdit> |
| | | <folderFile |
| | | @refreshMethod="refreshMethod" |
| | | :activeName="activeName" |
| | | @callParentMethod="parentMethod" |
| | | v-if="layerParams.addFolder || layerParams.editFolder" |
| | | ></folderFile> |
| | | </div> |
| | |
| | | const store = useStore(); |
| | | const userInfo = computed(() => store.getters.userInfo); |
| | | const areaCode = userInfo.value?.detail?.areaCode || ''; |
| | | const showToolTipText = ref('点击地图生成测绘区域') |
| | | // 红色警告交叉面提示窗 |
| | | const isShowWaringTip = ref(false); |
| | | const activeName = ref('自定义识别区'); |
| | |
| | | isDetailShow: false, |
| | | isSingleLocating:false , //是否是单个定位 |
| | | currentLocationFolderId:null, |
| | | crossSurface:false,//是否交叉面 |
| | | }); |
| | | const resetCheck = ref(false); |
| | | const handleClick = tab => { |
| | |
| | | // 编辑文件夹 |
| | | const handleFolder = val => { |
| | | parentMethod() |
| | | selectDataList.value = val.children; |
| | | if (selectDataList.value?.length > 0) { |
| | | loadDataToMap(selectDataList.value); |
| | | } else { |
| | | viewer.entities.removeAll(); |
| | | } |
| | | layerParams.value.editFolderData = val; |
| | | }; |
| | | // 新增开启绘制 |
| | |
| | | layerParams.value.editingIsProhibited = true; |
| | | } |
| | | } |
| | | }else { |
| | | |
| | | |
| | | } |
| | | |
| | | }; |
| | |
| | | }; |
| | | // 编辑/绘制 |
| | | const loadPlanarRoute = async (positions = null, save = false) => { |
| | | isShowWaringTip.value = false; |
| | | if (positions) { |
| | | curPolygonPosition = positions.map(item => { |
| | | let cartographic = Cesium.Cartographic.fromCartesian(item); |
| | |
| | | }); |
| | | } |
| | | let polygon = curPolygonPosition.map(item => [item?.lng, item?.lat]); |
| | | if(polygon.length ===0){ |
| | | isShowWaringTip.value = false |
| | | } |
| | | if(polygon.length > 0 && !isShowWaringTip.value){ |
| | | showToolTipText.value = '测绘区域已绘制完成' |
| | | }else { |
| | | showToolTipText.value = '点击地图生成测绘区域' |
| | | } |
| | | |
| | | if(polygon.length > 0){ |
| | | polygon.push([curPolygonPosition[0]?.lng, curPolygonPosition[0]?.lat]) |
| | | } |
| | |
| | | }; |
| | | drawPolygonExample.subscribe('getShowWaringTip', data => { |
| | | isShowWaringTip.value = data; |
| | | layerParams.value.crossSurface = data |
| | | }); |
| | | const throttleLoadPlanarRoute = throttle(loadPlanarRoute, 200); |
| | | drawPolygonExample.subscribe('getPolygonPositions', data => { |
| | |
| | | } else { |
| | | cesium.removeEventListener('contextmenu', preventDefault); |
| | | } |
| | | }; |
| | | // 添加loading |
| | | const isPageLoading = ref(false); |
| | | const handleLoadingChange = (status) => { |
| | | isPageLoading.value = status; |
| | | }; |
| | | provide('layerParams', layerParams); |
| | | onMounted(() => { |
| | |
| | | position: relative; |
| | | width: 100%; |
| | | height: 80vh; |
| | | .warning { |
| | | position: absolute; |
| | | top: 234px; |
| | | color: #fff; |
| | | background: rgba(140, 0, 0, 0.4) !important; |
| | | |
| | | .icon { |
| | | display: flex; |
| | | align-items: center; |
| | | color: #ff1f1f; |
| | | } |
| | | } |
| | | #layMap { |
| | | width: 100%; |
| | | height: 100%; |
| | |
| | | </el-table-column> |
| | | <el-table-column label="操作" align="center" v-if="props.title === '图斑编辑'"> |
| | | <template #default="scope"> |
| | | <span class="operationspan" @click="handleDelete(scope.row)">删除</span> |
| | | <span |
| | | <!-- <span class="operationspan" @click="handleDelete(scope.row)">删除</span> --> |
| | | <el-button icon="el-icon-delete" link @click="handleDelete(scope.row)"></el-button> |
| | | <!-- <span |
| | | class="operationspan" |
| | | v-if="scope.row.is_exception == 2" |
| | | @click.stop="handleSelectionChange(scope.row)" |
| | | > |
| | | {{ isEditing && selectionIds === scope.row.id ? '取消编辑' : '编辑' }} |
| | | </span> |
| | | </span> --> |
| | | <template v-if="scope.row.is_exception == 2"> |
| | | <el-button |
| | | v-if="!isEditing || selectionIds !== scope.row.id" |
| | | icon="el-icon-edit" |
| | | link |
| | | @click.stop="handleSelectionChange(scope.row)" |
| | | /> |
| | | <el-button |
| | | v-else |
| | | icon="el-icon-circle-close" |
| | | link |
| | | @click.stop="handleSelectionChange(scope.row)" |
| | | |
| | | /> |
| | | </template> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | height: 100%; |
| | | width: 100%; |
| | | } |
| | | .el-button { |
| | | padding: 0; |
| | | color: #fff; |
| | | width: 17px; |
| | | } |
| | | </style> |
| | |
| | | <el-col :span="4"> |
| | | <el-form-item label="选择状态:"> |
| | | <el-select |
| | | :disabled="activeTab !== 'all'" |
| | | v-model="filters.status" |
| | | placeholder="请选择状态" |
| | | class="filter-item" |
| | |
| | | { label: '处理中', name: 'inProgress', value: 3, count: 0 }, |
| | | { label: '已完成', name: 'completed', value: 4, count: 0 }, |
| | | // { label: "已完结", name: "closed", value: 5, count: 0 }, |
| | | { label: '我发起的工单', name: 'myTickets', value: null, count: 0 }, |
| | | { label: '我的工单', name: 'myTickets', value: null, count: 0 }, |
| | | ], |
| | | filters: { |
| | | keyword: '', |