吉安感知网项目-前端
shuishen
2026-01-27 affb54c33083cb09cd0ef9da137b446cafdfd0fb
feat:用户管理、部门管理调整
3 files modified
116 ■■■■■ changed files
applications/drone-command/src/views/permissionManage/permissionDept/FormDiaLog.vue 20 ●●●●● patch | view | raw | blame | history
applications/drone-command/src/views/permissionManage/permissionDept/index.vue 12 ●●●●● patch | view | raw | blame | history
applications/drone-command/src/views/permissionManage/permissionUser/FormDiaLog.vue 84 ●●●●● patch | view | raw | blame | history
applications/drone-command/src/views/permissionManage/permissionDept/FormDiaLog.vue
@@ -28,10 +28,6 @@
                    <div class="val">{{ formData.areaName || '-' }}</div>
                </el-col>
                <el-col :span="12">
                    <div class="label">部署模式</div>
                    <div class="val">{{ deploymentModeLabel(formData.deploymentMode) }}</div>
                </el-col>
                <el-col :span="12">
                    <div class="label">排序</div>
                    <div class="val">{{ formData.sort }}</div>
                </el-col>
@@ -98,14 +94,6 @@
                        />
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="部署模式" prop="deploymentMode">
                        <el-radio-group v-model="formData.deploymentMode" class="command-radio-group">
                            <el-radio :label="0">统一部署</el-radio>
                            <el-radio :label="1">独立部署</el-radio>
                        </el-radio-group>
                    </el-form-item>
                </el-col>
                <el-col :span="24">
                    <el-form-item label="备注" prop="remark">
                        <el-input class="command-input" v-model="formData.remark" type="textarea" :rows="3" placeholder="请输入" clearable />
@@ -141,7 +129,6 @@
    deptNature: null,
    areaCode: [],
    areaName: '',
    deploymentMode: 0,
    sort: 0,
    remark: '',
})
@@ -207,14 +194,7 @@
    deptCategory: fieldRules(true),
    deptNature: fieldRules(true),
    areaCode: fieldRules(true),
    deploymentMode: fieldRules(true),
    sort: fieldRules(true),
}
function deploymentModeLabel(value) {
    if (value === 1) return '独立部署'
    if (value === 0) return '统一部署'
    return value ?? '-'
}
function normalizeAreaCode(value) {
applications/drone-command/src/views/permissionManage/permissionDept/index.vue
@@ -62,11 +62,7 @@
                    <el-table-column prop="sort" show-overflow-tooltip width="80" label="排序" />
                    <el-table-column prop="bingId" show-overflow-tooltip width="100" label="组织id" />
                    <el-table-column prop="areaName" show-overflow-tooltip width="180" label="行政区划" />
                    <el-table-column prop="deploymentMode" show-overflow-tooltip width="120" label="部署模式">
                        <template v-slot="{ row }">
                            {{ deploymentModeLabel(row.deploymentMode) }}
                        </template>
                    </el-table-column>
                    <el-table-column label="操作" class-name="operation-btns" width="220">
                        <template v-slot="{ row }">
                            <el-link @click="handleView(row)">查看</el-link>
@@ -128,12 +124,6 @@
provide('dictObj', dictObj)
provide('deptTree', deptTree)
function deploymentModeLabel(value) {
    if (value === 1) return '独立部署'
    if (value === 0) return '统一部署'
    return value ?? '-'
}
async function getList() {
    loading.value = true
applications/drone-command/src/views/permissionManage/permissionUser/FormDiaLog.vue
@@ -43,22 +43,6 @@
                    <div class="label">账号状态</div>
                    <div class="val">{{ formData.statusName }}</div>
                </el-col>
                <el-col :span="12">
                    <div class="label">到期时间</div>
                    <div class="val">{{ formData.expireTime }}</div>
                </el-col>
                <el-col :span="12">
                    <div class="label">次数限制</div>
                    <div class="val">{{ formData.maxLoginNum }}</div>
                </el-col>
                <el-col :span="12">
                    <div class="label">飞行开始时间</div>
                    <div class="val">{{ formData.flightStartTime }}</div>
                </el-col>
                <el-col :span="12">
                    <div class="label">飞行结束时间</div>
                    <div class="val">{{ formData.flightEndTime }}</div>
                </el-col>
            </el-row>
        </div>
@@ -178,55 +162,6 @@
                    </el-form-item>
                </el-col>
            </el-row>
            <div class="detail-title">登录限制</div>
            <el-row :gutter="16">
                <el-col :span="12">
                    <el-form-item label="到期时间" prop="expireTime">
                        <el-date-picker
                            class="command-date-picker"
                            popper-class="command-date-picker-popper"
                            v-model="formData.expireTime"
                            type="datetime"
                            placeholder="请选择"
                            format="YYYY-MM-DD HH:mm:ss"
                            value-format="YYYY-MM-DD HH:mm:ss"
                            clearable
                        />
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="次数限制" prop="maxLoginNum">
                        <el-input class="command-input" v-model="formData.maxLoginNum" placeholder="请输入" clearable />
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="飞行开始时间" prop="flightStartTime">
                        <el-time-picker
                            class="command-date-picker"
                            popper-class="command-date-picker-popper"
                            v-model="formData.flightStartTime"
                            placeholder="请选择"
                            format="HH:mm"
                            value-format="HH:mm"
                            clearable
                        />
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="飞行结束时间" prop="flightEndTime">
                        <el-time-picker
                            class="command-date-picker"
                            popper-class="command-date-picker-popper"
                            v-model="formData.flightEndTime"
                            placeholder="请选择"
                            format="HH:mm"
                            value-format="HH:mm"
                            clearable
                        />
                    </el-form-item>
                </el-col>
            </el-row>
        </el-form>
        <template #footer>
@@ -260,10 +195,6 @@
    code: '',
    roleId: '',
    deptId: '',
    expireTime: '',
    maxLoginNum: '',
    flightStartTime: '',
    flightEndTime: '',
})
const treeProps = {
@@ -340,24 +271,9 @@
    visible.value = false
}
function validateFlightTime() {
    if (formData.value.flightStartTime && formData.value.flightEndTime) {
        const [startHours, startMinutes] = formData.value.flightStartTime.split(':').map(Number)
        const [endHours, endMinutes] = formData.value.flightEndTime.split(':').map(Number)
        const startTotalMinutes = startHours * 60 + startMinutes
        const endTotalMinutes = endHours * 60 + endMinutes
        if (endTotalMinutes < startTotalMinutes) {
            ElMessage.error('飞行结束时间不能小于飞行开始时间')
            return false
        }
    }
    return true
}
async function handleSubmit() {
    const isValid = await formRef.value?.validate().catch(() => false)
    if (!isValid) return
    if (!validateFlightTime()) return
    submitting.value = true
    try {
        const submitData = { ...formData.value }