设备退役
This commit is contained in:
@@ -1,24 +1,153 @@
|
||||
<template>
|
||||
<el-dialog v-model="dialogVisible" :title="title" width="500" :before-close="handleClose">
|
||||
<span>111</span>
|
||||
<template #footer>
|
||||
<div class="dialog-footer">
|
||||
<el-button type="primary">确定</el-button>
|
||||
<el-button @click="handleClose">取消</el-button>
|
||||
</div>
|
||||
<el-dialog draggable title="新增设备退役申请单" v-model="userAdd" width="500px" :before-close="cancel">
|
||||
<el-divider content-position="left" style="font-weight: bolder; font-size: 18px">基本信息</el-divider>
|
||||
<el-form :inline="true" ref="formRef" :model="addData" label-width="auto" class="form-one" :rules="rules">
|
||||
<el-form-item label="区域:">
|
||||
<Area ref="areaRef" v-model="addData.orgNo" />
|
||||
</el-form-item>
|
||||
<el-form-item label="设备编号:" prop="userName">
|
||||
<el-input v-model="addData.userName" clearable placeholder="请输入关键字"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="资产编号:" prop="userName">
|
||||
<el-input v-model="addData.userName" clearable placeholder="请输入关键字"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item class="item" label="报告:" style="margin-top: 10px" prop="fileList">
|
||||
<el-upload
|
||||
v-model:file-list="causeAnalysisData.fileList"
|
||||
ref="upload"
|
||||
v-if="!prop.disabled"
|
||||
action=""
|
||||
:limit="1"
|
||||
:on-exceed="handleExceed"
|
||||
:auto-upload="false"
|
||||
>
|
||||
<template #trigger>
|
||||
<el-button type="primary">上传文件</el-button>
|
||||
</template>
|
||||
</el-upload>
|
||||
|
||||
<el-button type="primary" link @click="download" v-else>
|
||||
{{ prop.List.fileNameYyfx }}
|
||||
</el-button>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="选择审核人:" >
|
||||
|
||||
<el-select v-model="auditUser" clearable placeholder="请选择审核人">
|
||||
<el-option v-for="item in auditList" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
<div style="display: flex; justify-content: center; margin-top: 30px">
|
||||
<el-button type="primary" class="ml20" @click="config">确定</el-button>
|
||||
<el-button type="primary" class="ml20" @click="cancel">取消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { ref, reactive } from 'vue'
|
||||
const dialogVisible = ref(false)
|
||||
const title = ref('')
|
||||
const handleClose = () => {
|
||||
dialogVisible.value = false
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
import { ElMessage, genFileId } from 'element-plus'
|
||||
import Area from '@/components/form/area/index.vue'
|
||||
import { addLoadTypeUser } from '@/api/process-boot/interference'
|
||||
import { onMounted } from 'vue'
|
||||
import { getUserByRoleType } from '@/api/user-boot/user'
|
||||
import { UploadProps, UploadRawFile } from 'element-plus'
|
||||
|
||||
const dictData = useDictData()
|
||||
const userAdd = ref(false)
|
||||
const interferenceType = dictData.getBasicData('Interference_Source')
|
||||
const emit = defineEmits(['onSubmit'])
|
||||
const rules = reactive({
|
||||
loadType: [{ required: true, message: '请选择干扰源类型', trigger: 'change' }],
|
||||
userName: [{ required: true, message: '请输入干扰源用户名称', trigger: 'blur' }],
|
||||
recordTime: [{ required: true, message: '请选择建档时间', trigger: 'change' }]
|
||||
})
|
||||
const addData = ref({
|
||||
orgNo: dictData.state.area[0].id,
|
||||
loadType: '',
|
||||
userName: '',
|
||||
recordTime: ''
|
||||
})
|
||||
const formRef = ref()
|
||||
// 新增
|
||||
const config = () => {
|
||||
formRef.value.validate((valid: any) => {
|
||||
if (valid) {
|
||||
addLoadTypeUser(addData.value).then((res: any) => {
|
||||
ElMessage.success('新增成功!')
|
||||
emit('onSubmit')
|
||||
cancel()
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
const open = (text: string) => {
|
||||
title.value = text
|
||||
dialogVisible.value = true
|
||||
// 重置
|
||||
const cancel = () => {
|
||||
formRef.value.resetFields()
|
||||
userAdd.value = false
|
||||
}
|
||||
const open = () => {
|
||||
userAdd.value = true
|
||||
}
|
||||
|
||||
|
||||
const auditList:any = ref([])
|
||||
const auditUser = ref('')
|
||||
const handleClose = () => {
|
||||
auditUser.value = ''
|
||||
}
|
||||
// 取消
|
||||
|
||||
onMounted(() => {
|
||||
getUserByRoleType(3).then(res => {
|
||||
auditList.value = res.data
|
||||
})
|
||||
})
|
||||
const prop = defineProps({
|
||||
addData: {
|
||||
type: Object,
|
||||
default: () => {}
|
||||
},
|
||||
List: {
|
||||
type: Object,
|
||||
default: () => {}
|
||||
},
|
||||
disabled: {
|
||||
type: Boolean
|
||||
}
|
||||
})
|
||||
const upload = ref()
|
||||
const causeAnalysisData: any = ref({
|
||||
reportProcessContentYyfx: [],
|
||||
userReportProcessContentYyfx: [],
|
||||
eventDescriptionYyfx: '',
|
||||
fileNameYyfx: '', //原因分析报告文件名称
|
||||
filePathYyfx: '', //原因分析报告文件路径
|
||||
powerGridAffectDev: [],
|
||||
userAffectDev: [],
|
||||
fileList: []
|
||||
})
|
||||
// 上传
|
||||
const handleExceed: UploadProps['onExceed'] = files => {
|
||||
upload.value!.clearFiles()
|
||||
const file = files[0] as UploadRawFile
|
||||
file.uid = genFileId()
|
||||
upload.value!.handleStart(file)
|
||||
}
|
||||
// 下载
|
||||
const download = async () => {
|
||||
// window.open(addForm.value.ifile)
|
||||
let response = await fetch(prop.List.filePathYyfx)
|
||||
let blob = await response.blob()
|
||||
let a = document.createElement('a')
|
||||
a.href = window.URL.createObjectURL(blob)
|
||||
a.download = prop.List.fileNameYyfx
|
||||
a.click()
|
||||
a.remove()
|
||||
}
|
||||
|
||||
defineExpose({ open })
|
||||
|
||||
@@ -1,28 +1,6 @@
|
||||
<template>
|
||||
<div>
|
||||
<TableHeader area datePicker ref="TableHeaderRef">
|
||||
<template #select>
|
||||
<el-form-item label="问题来源">
|
||||
<el-select v-model="tableStore.table.params.problemSources" clearable placeholder="请选择问题来源">
|
||||
<el-option
|
||||
v-for="item in problemData"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="填报进度">
|
||||
<el-select v-model="tableStore.table.params.reportProcess" clearable placeholder="请选择填报进度">
|
||||
<el-option
|
||||
v-for="item in fillingProgress"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button icon="el-icon-Plus" type="primary" @click="add">新增</el-button>
|
||||
</template>
|
||||
@@ -175,6 +153,6 @@ onMounted(() => {
|
||||
})
|
||||
// 新增
|
||||
const add = () => {
|
||||
EquipmentRef.value.open('新增资产')
|
||||
EquipmentRef.value.open('新增设备退役申请单')
|
||||
}
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user