This commit is contained in:
sjl
2024-11-07 15:13:53 +08:00
parent 1ec486a42d
commit 0ca2baa44a
4 changed files with 50 additions and 23 deletions

View File

@@ -94,7 +94,7 @@
<el-col :span="8">
<el-form-item label="IP地址" prop="ip">
<!-- <el-input v-model='formContent.ip'/> -->
<abc v-model:value="formContent.ip"/>
<IPAddress v-model:value="formContent.ip"/>
</el-form-item>
</el-col>
<el-col :span="8">
@@ -150,7 +150,7 @@
</template>
<script setup lang='ts'>
import abc from '@/components/IpAddress/index.vue'
import IPAddress from '@/components/IpAddress/index.vue'
import { dialogBig } from '@/utils/elementBind'
import { type Device } from '@/api/device/interface'
import { ElMessage, type FormItemRule } from 'element-plus'
@@ -159,7 +159,7 @@
import { useDictStore } from '@/stores/modules/dict'
import { CirclePlus, Delete } from '@element-plus/icons-vue'
// 使用 dayjs 库格式化
import dayjs from 'dayjs';
import dayjs from 'dayjs';
const dictStore = useDictStore()
// 定义弹出组件元信息
const dialogFormRef = ref()
@@ -228,18 +228,24 @@
devType: [{ required: true, message: '设备类型必选!', trigger: 'change' }],
pattern: [{ required: true, message: '设备模式必填!', trigger: 'blur' }],
name: [{ required: true, message: '设备名称必填!', trigger: 'blur' }],
devChns: [{ required: true, message: '设备通道数必填!', trigger: 'blur' }],
devVolt: [{ required: true, message: '额定电压必填!', trigger: 'blur' }],
devCurr: [{ required: true, message: '额定电流必填!', trigger: 'blur' }],
devChns: [{ required: true, message: '设备通道数必填!', trigger: 'blur' },
// 指定正则,此处是数字正则
{ pattern: /^[1-9]\d*$/, message: '设备通道数为大于1的整数', trigger: 'blur' }],
devVolt: [{ required: true, message: '额定电压必填!', trigger: 'blur' },
{ pattern: /^\d+(\.\d+)?$/, message: '额定电压格式错误', trigger: 'blur' }],
devCurr: [{ required: true, message: '额定电流必填!', trigger: 'blur' },
{ pattern: /^\d+(\.\d+)?$/, message: '额定电流格式错误', trigger: 'blur' }],
createDate: [{ required: true, message: '生产日期必填!', trigger: 'blur' }],
createId: [{ required: true, message: '出厂编号必填!', trigger: 'blur' }],
hardwareVersion: [{ required: true, message: '固件版本必填!', trigger: 'blur' }],
softwareVersion: [{ required: true, message: '软件版本必填!', trigger: 'blur' }],
ip:[{ required: true, message: 'IP地址必填', trigger: 'blur' } ,
],
port:[{ required: true, message: '端口号必填!', trigger: 'blur' }],
{ pattern: /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/, message: 'IP地址格式错误', trigger: 'blur' }],
port:[{ required: true, message: '端口号必填!', trigger: 'blur' },
{ pattern: /^\d+$/, message: '端口号格式错误', trigger: 'blur' }],
manufacturer: [{ required: true, message: '生产厂家必选!', trigger: 'change' }],
encryption: [{ required: true, message: '是否加密必选!', trigger: 'change' }],
protocol: [{ required: true, message: '通讯协议必选!', trigger: 'change' }],
})
// 关闭弹窗
@@ -257,7 +263,11 @@
dialogFormRef.value?.validate(async (valid: boolean) => {
if (valid) {
formContent.value.createDate = dayjs(formContent.value.createDate).format('YYYY-MM-DD');
formContent.value.arrivedDate = dayjs(formContent.value.arrivedDate).format('YYYY-MM-DD');
if (formContent.value.arrivedDate)
{
formContent.value.arrivedDate = dayjs(formContent.value.arrivedDate).format('YYYY-MM-DD');
}
console.log('1111'+formContent.value.arrivedDate)
if (formContent.value.id) {
const result = await updatePqDev(formContent.value);
if(result.code != 'A0000'){

View File

@@ -42,6 +42,7 @@ import deviceDataList from '@/api/device/deviceData'
import { useDictStore } from '@/stores/modules/dict'
import { getPqDevList, deletePqDev, exportPqDev, importPqDev } from '@/api/device/device.ts'
import { reactive, ref } from 'vue'
import { ElMessageBox } from 'element-plus'
const dictStore = useDictStore()
// ProTable 实例
@@ -134,18 +135,33 @@ const openDialog = (titleType: string, row: Partial<Device.ResPqDev> = {}) => {
}
// 批量删除字典类型
// 批量删除设备
const batchDelete = async (id: string[]) => {
await useHandleData(deletePqDev, id, '删除所选设备')
proTable.value?.clearSelection()
proTable.value?.getTableList()
}
// 删除字典类型
// 删除设备
const handleDelete = async (params: Device.ResPqDev) => {
await useHandleData(deletePqDev, [params.id], `删除【${params.name}】设备`)
proTable.value?.getTableList()
}
// 导出设备
const downloadFile = async () => {
ElMessageBox.confirm('确认导出被检设备?', '温馨提示', { type: 'warning' }).then(() =>
useDownload(exportPqDev, '被检设备导出数据', proTable.value?.searchParam, false,'.xls'),
)
}
//导入设备
const importFile = () => {
ElMessageBox.confirm('确认批量导入被检设备?', '温馨提示', { type: 'warning' }).then(() =>
)
}
</script>