吉安感知网项目-前端
shuishen
2026-02-03 03dee8a7d70884ddd1ce9bf94f67143ffa02d549
Merge branch 'master' of http://139.196.74.78:10010/r/jagzwxm/ja_web
9 files modified
1 files deleted
4 files added
1236 ■■■■ changed files
applications/drone-command/src/views/permissionManage/permissionDept/index.vue 8 ●●●● patch | view | raw | blame | history
applications/task-work-order/src/styles/common/cockpit.scss 25 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/appConfiguration/Process/index.vue 538 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/appConfiguration/inventory/index.vue 56 ●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/appConfiguration/process/DeployDialog.vue 143 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/appConfiguration/process/FlowConfigDialog.vue 139 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/appConfiguration/process/IframeFlowDialog.vue 60 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/appConfiguration/process/index.vue 257 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue 1 ●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/orderDataManage/evaluate/index.vue 1 ●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/orderDataManage/supplyAdd/FormDiaLog.vue 5 ●●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/orderManage/inspectionRequest/ViewDiaLog.vue 1 ●●●● patch | view | raw | blame | history
applications/task-work-order/src/views/orderView/orderManage/orderManage/index.vue 1 ●●●● patch | view | raw | blame | history
uniapps/work-wx/src/subPackages/deviceRegistration/add.vue 1 ●●●● patch | view | raw | blame | history
applications/drone-command/src/views/permissionManage/permissionDept/index.vue
@@ -69,7 +69,7 @@
                            <el-link @click="handleEdit(row)">编辑</el-link>
                            <el-link @click="handleAddChild(row)">新增子项</el-link>
                            <el-link type="danger" @click="handleDelete(row)">删除</el-link>
                            <el-link type="danger" @click="handleShare(row)">共享</el-link>
                            <el-link type="danger" @click="handleShare(row)" v-if="hasSharing">共享</el-link>
                        </template>
                    </el-table-column>
                </el-table>
@@ -103,7 +103,13 @@
import ShareDiaLog from './ShareDiaLog.vue'
import { saveOperationLog } from '@ztzf/apis'
import { useRoute } from 'vue-router'
import { useStore } from 'vuex'
const store = useStore()
const permission = computed(() => store.state.user.permission)
const ancestors = computed(() => store.state.user.userInfo?.detail?.ancestors)
// 市级部门并且有权限才能看到共享按钮
const hasSharing = computed(() => permission.value.department_share && ancestors.value.split(',')?.length === 2)
const initSearchParams = () => ({
    deptName: '',
    fullName: '',
applications/task-work-order/src/styles/common/cockpit.scss
@@ -556,13 +556,6 @@
        }
      }
    }
    .el-upload {
      button {
        background: #4C34FF;
        border: none;
      }
    }
  }
  .el-dialog__footer {
@@ -1195,22 +1188,6 @@
}
.gd-dialog-form {
  // 最后一排不需要设置 margin-bottom
  // border: 1px solid red;
  // 倒数第二个也设置为0
  // .el-col:nth-last-child(2) {
  //   margin-bottom: 0;
  // }
  // .el-col:nth-last-child(1) {
  //   margin-bottom: 0;
  // }
  // .el-form-item:nth-last-child(2) {
  //   margin-bottom: 0;
  // }
  //  .el-form-item:nth-last-child(1) {
  //   margin-bottom: 0;
  // }
  .el-input,
  .el-input-number {
    min-width: 200px;
@@ -1228,4 +1205,4 @@
      }
    }
  }
}
}
applications/task-work-order/src/views/orderView/appConfiguration/Process/index.vue
File was deleted
applications/task-work-order/src/views/orderView/appConfiguration/inventory/index.vue
@@ -1,33 +1,6 @@
<template>
    <basic-container>
        <el-form ref="queryParamsRef" :model="searchParams" class="gd-search-form">
            <el-form-item label="事项名称" prop="matterName">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.matterName"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
            <el-form-item label="实施清单名称" prop="implementName">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.implementName"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
                        <el-form-item label="目录编码" prop="catalogCode">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.catalogCode"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
            <el-form-item label="所属区划" prop="areaCode">
                <el-tree-select
                    class="gd-select gray"
@@ -45,6 +18,35 @@
                    :render-after-expand="false"
                />
            </el-form-item>
             <el-form-item label="实施清单名称" prop="implementName">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.implementName"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
            <el-form-item label="事项名称" prop="matterName">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.matterName"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
                        <el-form-item label="目录编码" prop="catalogCode">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.catalogCode"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
            <el-form-item class="gd-search-actions">
                <el-button :icon="RefreshRight" @click="resetForm"></el-button>
applications/task-work-order/src/views/orderView/appConfiguration/process/DeployDialog.vue
New file
@@ -0,0 +1,143 @@
<template>
    <el-dialog class="gd-dialog" v-model="visible" title="流程部署" append-to-body width="20%" @closed="visible = false">
        <avue-form ref="form" :option="optionDeploy" v-model="form" @submit="handleSubmit" />
        <template #footer>
            <span class="dialog-footer">
                <el-button @click="visible = false">取 消</el-button>
                <el-button type="primary" @click="handleDoDeploy" :loading="deployLoading">确 定</el-button>
            </span>
        </template>
    </el-dialog>
</template>
<script>
import { deployModel } from '@/api/flow/flow'
import { flowCategory } from '@/utils/flow'
import { ElMessage } from 'element-plus'
export default {
    data() {
        return {
            visible: false,
            form: {},
            selectionId: '',
            deployLoading: false,
            optionDeploy: {
                menuBtn: false,
                column: [
                    {
                        label: '流程类型',
                        type: 'select',
                        dicUrl: '/blade-system/dict/dictionary?code=flow',
                        props: {
                            label: 'dictValue',
                            value: 'dictKey',
                        },
                        dataType: 'number',
                        slot: true,
                        prop: 'categoryValue',
                        search: true,
                        span: 24,
                        rules: [
                            {
                                required: true,
                                message: '请选择流程类型',
                                trigger: 'blur',
                            },
                        ],
                    },
                    {
                        label: '流程模式',
                        prop: 'flowMode',
                        type: 'radio',
                        dicData: [
                            {
                                label: '通用流程',
                                value: 1,
                            },
                            {
                                label: '定制流程',
                                value: 2,
                            },
                        ],
                        value: 1,
                        span: 24,
                        rules: [
                            {
                                required: true,
                                message: '请选择流程模式',
                                trigger: 'blur',
                            },
                        ],
                    },
                    {
                        label: '所属租户',
                        prop: 'tenantId',
                        type: 'tree',
                        multiple: true,
                        dicUrl: '/blade-system/tenant/select',
                        props: {
                            label: 'tenantName',
                            value: 'tenantId',
                        },
                        display: false,
                        span: 24,
                        rules: [
                            {
                                required: true,
                                message: '请选择所属租户',
                                trigger: 'blur',
                            },
                        ],
                    },
                ],
            },
        }
    },
    watch: {
        'form.flowMode'() {
            this.$refs.form.option.column.filter(item => {
                if (item.prop === 'tenantId') {
                    item.display = this.form.flowMode === 2
                }
            })
        },
    },
    methods: {
        // 打开弹框
        open(row) {
            this.visible = true
            this.selectionId = row.id
        },
        // 表单提交处理
        handleSubmit(form, done) {
            this.deployLoading = true
            deployModel({
                modelId: this.selectionId,
                category: flowCategory(form.categoryValue),
                tenantIds: form.tenantId ? form.tenantId.join(',') : '',
            }).then(res => {
                const data = res.data
                if (data.success) {
                    ElMessage.success(data.msg)
                    done()
                    this.$refs.form.resetForm()
                    this.visible = false
                    this.deployLoading = false
                    this.$emit('success')
                } else {
                    done()
                    this.deployLoading = false
                    ElMessage.warning(data.msg)
                }
            })
        },
        // 触发表单提交
        handleDoDeploy() {
            this.$refs.form.submit()
        },
    },
}
</script>
<style scoped lang="scss"></style>
applications/task-work-order/src/views/orderView/appConfiguration/process/FlowConfigDialog.vue
New file
@@ -0,0 +1,139 @@
<template>
    <el-dialog
        class=" nf-dialog"
        v-model="visible"
        title="流程配置"
        append-to-body
        destroy-on-close
        :close-on-press-escape="false"
        :fullscreen="true"
        :before-close="handleNutflowClose"
        @closed="visible = false"
    >
        <nf-design-base
            v-if="nutflowOption.step === 1"
            class="animated fadeIn"
            style="height: calc(100vh - 108px)"
            ref="nfDesignRef"
            :options="nutflowOption.step1"
        ></nf-design-base>
        <nf-design-base
            v-if="nutflowOption.step === 2"
            class="animated fadeIn"
            style="height: calc(100vh - 108px)"
            ref="nfDesignViewRef"
            :options="nutflowOption.step2"
        ></nf-design-base>
        <template #footer>
            <span class="avue-dialog__footer">
                <el-button @click="handleNutflowClose(() => {}, true)">取 消</el-button>
                <el-button v-if="nutflowOption.step === 1" type="success" @click="handleStep(1)">下 一 步</el-button>
                <el-button v-if="nutflowOption.step === 2" type="success" @click="handleStep(-1)">上 一 步</el-button>
                <el-button v-if="nutflowOption.step === 2" type="primary" @click="handleSubmitModel">确 定</el-button>
            </span>
        </template>
    </el-dialog>
</template>
<script>
import { submitModel, detail } from '@/api/flow/flow'
import { ElMessageBox, ElMessage } from 'element-plus'
export default {
    data() {
        return {
            visible: false,
            nutflowOption: {
                process: {},
                step: 1,
                step1: {
                    toolbar: ['open', 'create', 'fit', 'zoom-in', 'zoom-out', 'undo', 'redo', 'import', 'preview'],
                },
                step2: {
                    mode: 'view',
                    simulation: true,
                    minimap: true,
                },
            },
        }
    },
    methods: {
        // 打开弹框
        open(row) {
            this.visible = true
            if (row) {
                detail({ id: row.id }).then(res => {
                    const data = res.data.data
                    const { modelEditorXml } = data
                    this.nutflowOption.step1.xml = modelEditorXml
                    this.nutflowOption.process = data
                })
            }
        },
        // 提交流程模型
        handleSubmitModel() {
            const registry = this.$refs['nfDesignViewRef'].getElementRegistry().getAll()
            const { businessObject } = registry[0]
            const { id, name, documentation } = businessObject
            const description = documentation && documentation.length > 0 ? documentation[0].text : null
            const params = {
                ...this.nutflowOption.process,
                modelKey: id,
                name,
                description,
                modelEditorXml: this.nutflowOption.process.xml,
            }
            submitModel(params).then(() => {
                ElMessage.success('操作成功')
                this.handleNutflowClose()
                this.$emit('success')
            })
        },
        // 步骤切换
        handleStep(step) {
            if (step === 1) {
                // 下一步
                this.$refs['nfDesignRef'].getData('xml').then(data => {
                    this.nutflowOption.step1.xml = data
                    this.nutflowOption.step2.xml = data
                    this.nutflowOption.process.xml = data
                    this.nutflowOption.step = 2
                })
            } else {
                this.nutflowOption.step = 1
            }
        },
        // 关闭弹框处理
        handleNutflowClose(done, flag) {
            const initOption = {
                process: {},
                step: 1,
                step1: {
                    toolbar: ['open', 'create', 'fit', 'zoom-in', 'zoom-out', 'undo', 'redo', 'import', 'preview'],
                },
                step2: {
                    mode: 'view',
                    simulation: true,
                    minimap: true,
                },
            }
            if (done || flag) {
                ElMessageBox.confirm('确定要关闭吗?关闭未保存的修改都会丢失。', '警告', {
                    type: 'warning',
                })
                    .then(() => {
                        this.nutflowOption = initOption
                        if (typeof done === 'function') done()
                        this.visible = false
                    })
                    .catch(() => {})
            } else {
                this.nutflowOption = initOption
                this.visible = false
            }
        },
    },
}
</script>
<style scoped lang="scss"></style>
applications/task-work-order/src/views/orderView/appConfiguration/process/IframeFlowDialog.vue
New file
@@ -0,0 +1,60 @@
<template>
    <el-dialog
        class="gd-dialog"
        v-model="visible"
        title="流程配置"
        append-to-body
        :fullscreen="true"
        @closed="visible = false"
    >
        <iframe
            :src="flowUrl"
            width="100%"
            height="700"
            title="流程设计器"
            frameBorder="no"
            border="0"
            marginWidth="0"
            marginHeight="0"
            scrolling="no"
            allowTransparency="yes"
        ></iframe>
        <template #footer>
            <span class="dialog-footer">
                <el-button @click="visible = false">取 消</el-button>
                <el-button type="primary" @click="handleRefresh">确 定</el-button>
            </span>
        </template>
    </el-dialog>
</template>
<script>
export default {
    inject: ['website'],
    data() {
        return {
            visible: false,
            flowUrl: '',
        }
    },
    methods: {
        // 打开弹框 - 创建模式
        openCreate() {
            this.flowUrl = `${this.website.design.designUrl}/index.html`
            this.visible = true
        },
        // 打开弹框 - 编辑模式
        openEdit(row) {
            this.flowUrl = `${this.website.design.designUrl}/index.html#/editor/${row.id}`
            this.visible = true
        },
        // 确定并刷新
        handleRefresh() {
            this.visible = false
            this.$emit('success')
        },
    },
}
</script>
<style scoped lang="scss"></style>
applications/task-work-order/src/views/orderView/appConfiguration/process/index.vue
New file
@@ -0,0 +1,257 @@
<template>
    <basic-container>
        <el-form ref="queryParamsRef" :model="searchParams" class="gd-search-form">
            <el-form-item label="模型标识" prop="modelKey">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.modelKey"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
            <el-form-item label="模型名称" prop="name">
                <el-input
                    class="gd-input gray"
                    v-model="searchParams.name"
                    placeholder="请输入"
                    clearable
                    @clear="handleSearch"
                />
            </el-form-item>
            <el-form-item class="gd-search-actions">
                <el-button :icon="RefreshRight" @click="resetForm"></el-button>
                <el-button class="search-btn" :icon="Search" @click="handleSearch"></el-button>
            </el-form-item>
        </el-form>
        <div class="gd-table-toolbar">
            <el-button :icon="Plus" color="#4C34FF" type="primary" v-if="permission.flow_model_create" @click="handleCreate">
                创建
            </el-button>
            <el-button
                :icon="Delete"
                v-if="permission.flow_model_delete"
                @click="handleBatchDelete"
            >
                删除
            </el-button>
        </div>
        <div class="gd-table-container" v-loading="loading">
            <div class="gd-table-content gd-table-content-bg">
                <el-table class="gd-table" :data="list" @selection-change="selectionChange">
                    <el-table-column type="selection" width="55" />
                    <el-table-column label="序号" width="80">
                        <template v-slot="{ $index }">
                            {{ $index + 1 }}
                        </template>
                    </el-table-column>
                    <el-table-column prop="id" show-overflow-tooltip label="模型主键" />
                    <el-table-column prop="modelKey" show-overflow-tooltip label="模型标识" />
                    <el-table-column prop="name" show-overflow-tooltip label="模型名称" />
                    <el-table-column prop="version" show-overflow-tooltip label="流程版本">
                        <template v-slot="{ row }">
                            <el-tag>v{{ row.version }}</el-tag>
                        </template>
                    </el-table-column>
                    <el-table-column prop="created" show-overflow-tooltip label="创建时间" />
                    <el-table-column prop="lastUpdated" show-overflow-tooltip label="更新时间" />
                    <el-table-column label="操作" class-name="operation-btns" width="200">
                        <template v-slot="{ row }">
                            <el-link type="primary" v-if="permission.flow_model_update" @click="handleUpdate(row)">配置</el-link>
                            <el-link type="primary" v-if="permission.flow_model_deploy" @click="handleDeploy(row)">部署</el-link>
                            <el-link type="primary" v-if="permission.flow_model_delete" @click="handleDelete(row)">删除</el-link>
                        </template>
                    </el-table-column>
                </el-table>
            </div>
            <div class="gd-pagination-parent">
                <el-pagination
                    popper-class="gd-select-popper"
                    v-model:current-page="searchParams.current"
                    v-model:page-size="searchParams.size"
                    layout="total, prev, pager, next, sizes"
                    :total="total"
                    @change="getList"
                />
            </div>
        </div>
        <!-- 流程配置弹框 - designMode -->
        <FlowConfigDialog
            v-if="flowConfigDialogVisible && website.design.designMode"
            v-model="flowConfigDialogVisible"
            ref="flowConfigDialogRef"
            @success="getList"
        />
        <!-- 流程配置弹框 - iframe模式 -->
        <IframeFlowDialog
            v-if="iframeFlowDialogVisible && !website.design.designMode"
            v-model="iframeFlowDialogVisible"
            ref="iframeFlowDialogRef"
            @success="getList"
        />
        <!-- 流程部署弹框 -->
        <DeployDialog v-if="deployDialogVisible" v-model="deployDialogVisible" ref="deployDialogRef" />
    </basic-container>
</template>
<script setup>
import { Search, RefreshRight, Plus, Delete } from '@element-plus/icons-vue'
import { onMounted, ref, computed, nextTick, getCurrentInstance } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import { useStore } from 'vuex'
import { modelList, removeModel } from '@/api/flow/flow'
import FlowConfigDialog from './FlowConfigDialog.vue'
import IframeFlowDialog from './IframeFlowDialog.vue'
import DeployDialog from './DeployDialog.vue'
const store = useStore()
const { proxy } = getCurrentInstance()
const website = proxy.website
// 权限
const permission = computed(() => store.getters.permission)
// 初始化查询参数
const initSearchParams = () => ({
    modelKey: '', // 模型标识
    name: '', // 模型名称
    current: 1, // 当前页
    size: 10, // 每页大小
})
const searchParams = ref(initSearchParams())
const total = ref(0)
const loading = ref(true)
const list = ref([])
const queryParamsRef = ref(null)
const selectionList = ref([])
// 弹框控制
const flowConfigDialogRef = ref(null)
const iframeFlowDialogRef = ref(null)
const deployDialogRef = ref(null)
const flowConfigDialogVisible = ref(false)
const iframeFlowDialogVisible = ref(false)
const deployDialogVisible = ref(false)
// 计算选中的ids
const ids = computed(() => selectionList.value.map(item => item.id).join(','))
// 获取列表数据
async function getList() {
    loading.value = true
    try {
        const res = await modelList(searchParams.value.current, searchParams.value.size, {
            modelKey: searchParams.value.modelKey,
            name: searchParams.value.name,
        })
        list.value = res?.data?.data?.records ?? []
        total.value = res?.data?.data?.total ?? 0
    } finally {
        loading.value = false
    }
}
// 查询
function handleSearch() {
    searchParams.value.current = 1
    getList()
}
// 重置查询
function resetForm() {
    queryParamsRef.value?.resetFields()
    searchParams.value = initSearchParams()
    getList()
}
// 选择变化
function selectionChange(list) {
    selectionList.value = list
}
// 创建流程
function handleCreate() {
    if (website.design.designMode) {
        flowConfigDialogVisible.value = true
        nextTick(() => {
            flowConfigDialogRef.value?.open()
        })
    } else {
        iframeFlowDialogVisible.value = true
        nextTick(() => {
            iframeFlowDialogRef.value?.openCreate()
        })
    }
}
// 配置流程
function handleUpdate(row) {
    if (website.design.designMode) {
        flowConfigDialogVisible.value = true
        nextTick(() => {
            flowConfigDialogRef.value?.open(row)
        })
    } else {
        iframeFlowDialogVisible.value = true
        nextTick(() => {
            iframeFlowDialogRef.value?.openEdit(row)
        })
    }
}
// 部署流程
function handleDeploy(row) {
    deployDialogVisible.value = true
    nextTick(() => {
        deployDialogRef.value?.open(row)
    })
}
// 单行删除
async function handleDelete(row) {
    await ElMessageBox.confirm('确定将选择数据删除?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning',
        customClass: 'gd-confirm-custom',
        confirmButtonClass: 'gd-confirm-button',
        cancelButtonClass: 'gd-confirm-cancel-button',
    })
    await removeModel(row.id)
    ElMessage.success('操作成功!')
    getList()
}
// 批量删除
async function handleBatchDelete() {
    if (selectionList.value.length === 0) {
        ElMessage.warning('请选择至少一条数据')
        return
    }
    await ElMessageBox.confirm('确定将选择数据删除?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning',
        customClass: 'gd-confirm-custom',
        confirmButtonClass: 'gd-confirm-button',
        cancelButtonClass: 'gd-confirm-cancel-button',
    })
    await removeModel(ids.value)
    ElMessage.success('操作成功!')
    getList()
}
onMounted(() => {
    getList()
})
</script>
<style scoped lang="scss"></style>
applications/task-work-order/src/views/orderView/orderDataManage/appInnovation/index.vue
@@ -19,6 +19,7 @@
                    placeholder="请选择"
                    clearable
                    @change="handleSearch"
                    :disabled="permission.yycx_shtg"
                >
                    <el-option
                        v-for="item in dictObj.appInnovationStatus"
applications/task-work-order/src/views/orderView/orderDataManage/evaluate/index.vue
@@ -19,6 +19,7 @@
                    placeholder="请选择"
                    clearable
                    @change="handleSearch"
                    :disabled="permission.sjyy_shtg"
                >
                    <el-option v-for="item in isResolvedOptions" :key="item.value" :label="item.label" :value="item.value" />
                </el-select>
applications/task-work-order/src/views/orderView/orderDataManage/supplyAdd/FormDiaLog.vue
@@ -67,7 +67,7 @@
            :model="formData"
            :rules="rules"
            :disabled="dialogReadonly"
            label-width="190px"
            :label-width="pxToRem(190)"
        >
            <el-row>
                <el-col :span="12">
@@ -245,6 +245,7 @@
    gdSupplyDemandDetailApi,
    gdSupplyDemandSubmitApi,
} from '@/views/orderView/orderDataManage/supplyAdd/supplyAddApi'
import { pxToRem } from '@/utils/rem'
// 初始化表单数据
const initForm = () => ({
@@ -407,4 +408,4 @@
        width: 120px !important;
    }
}
</style>
</style>
applications/task-work-order/src/views/orderView/orderManage/inspectionRequest/ViewDiaLog.vue
@@ -123,7 +123,6 @@
                            <el-form-item label="任务执行时间" prop="executeTime">
                                <el-date-picker
                                    class="gd-date-picker"
                                    popper-class="gd-date-picker-popper"
                                    v-model="formData.executeTime"
                                    type="datetime"
                                    placeholder="请选择"
applications/task-work-order/src/views/orderView/orderManage/orderManage/index.vue
@@ -149,7 +149,6 @@
const activeName = ref('all')
const permission = computed(() => store.state.user.permission)
console.log(permission.value, 'permission')
// 初始化查询参数
const initSearchParams = () => ({
uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
@@ -303,7 +303,6 @@
            value-key="code"
            label-key="name"
            children-key="children"
            :auto-close="true"
            @confirm="onRegionConfirm"
            @close="isShowRegion = false"
        ></u-cascader>