Compare commits

..

No commits in common. 'bb096c0c6b2dbad2f03405344dc15fb0d0619a21' and '4de17526dcffadade1015c51153076aef2d9d651' have entirely different histories.

@ -14,11 +14,6 @@ export interface RecipePlanDetailVO {
isEnable?: string | number | boolean
}
export interface CollectLatestTimeResult {
timeAbnormal?: boolean
latestTime?: string | number
}
export const RecipePlanDetailApi = {
getRecipePlanDetailPage: async (params: any) => {
return await request.get({ url: `/iot/recipe-plan-detail/page`, params })
@ -44,8 +39,5 @@ export const RecipePlanDetailApi = {
return await request.post({ url: `/iot/recipe-plan-detail/batch-create?id=` + id })
},
getCollectLatestTime: async (params: { id?: number | string; recipeId?: number | string }) => {
return await request.get({ url: `/iot/recipe-plan-detail/getCollectLatestTime`, params })
}
}

@ -32,11 +32,6 @@
prop="value"
min-width="180"
/>
<el-table-column label="采集时间" align="center" prop="collectionTime" min-width="180">
<template #default="scope">
{{ formatTime(scope.row?.collectionTime) }}
</template>
</el-table-column>
</el-table>
<Pagination
:total="to"
@ -134,11 +129,6 @@
prop="remark"
min-width="180"
/>
<el-table-column label="录入时间" align="center" prop="updateTime" min-width="180">
<template #default="scope">
{{ formatTime(scope.row?.updateTime) }}
</template>
</el-table-column>
<el-table-column align="center" fixed="right" label="操作" width="120">
<template #default="scope">
<el-button link type="primary" @click="openReferDialog(scope.row)"></el-button>
@ -182,7 +172,6 @@
</template>
<script setup lang="ts">
import dayjs from 'dayjs'
import { RecipePointRecordApi } from '@/api/iot/recipepointrecord'
import { RecipeDeviceRecordApi } from '@/api/iot/recipeDeviceRecord'
import { RecipePointVO } from '@/api/iot/recipePoint'
@ -223,24 +212,6 @@ const getUnitLabel = (dataUnit: unknown) => {
return unit?.name ?? id
}
const formatTime = (value: unknown) => {
if (value === undefined || value === null || value === '') return '-'
if (typeof value === 'number') {
if (!Number.isFinite(value)) return '-'
const ms = value < 1e12 ? value * 1000 : value
return dayjs(ms).isValid() ? dayjs(ms).format('YYYY-MM-DD HH:mm:ss') : '-'
}
const raw = String(value).trim()
if (!raw) return '-'
if (/^\d+$/.test(raw)) {
const num = Number(raw)
if (!Number.isFinite(num)) return '-'
const ms = num < 1e12 ? num * 1000 : num
return dayjs(ms).isValid() ? dayjs(ms).format('YYYY-MM-DD HH:mm:ss') : raw
}
return dayjs(raw).isValid() ? dayjs(raw).format('YYYY-MM-DD HH:mm:ss') : raw
}
const queryFormRef = ref()
const queryParams = reactive({
pageNo: 1,

@ -370,31 +370,10 @@ const checkRecipeRecords = async (recipeId: string | number) => {
}
}
const ensureCollectTimeNormalOrConfirmed = async (row: RecipePlanDetailVO) => {
try {
const res = await RecipePlanDetailApi.getCollectLatestTime({
id: row?.id,
recipeId: row?.recipeId
})
const timeAbnormal = !!(res as any)?.timeAbnormal
if (!timeAbnormal) return true
try {
await message.confirm('设备最新数据晚于当前系统时间2分钟确认是否继续读取。')
return true
} catch {
return false
}
} catch {
return true
}
}
const handleRead = async (row: RecipePlanDetailVO) => {
const recipeId = row?.recipeId
const id = row?.id
if (!recipeId) return
const ok = await ensureCollectTimeNormalOrConfirmed(row)
if (!ok) return
handleRowClick(row)
const recipeName = row?.recipeName
const { hasDeviceRecords, hasManualRecords } = await checkRecipeRecords(recipeId)

@ -97,7 +97,7 @@ v-for="dict in getStrDictOptions('mes_goview_type')" :key="dict.value" :label="d
</el-form-item>
<el-form-item label="产线" prop="orgId">
<el-tree-select
v-model="createForm.orgName" :data="organizationTree" :props="lineTreeProps" filterable clearable
v-model="createForm.orgId" :data="organizationTree" :props="lineTreeProps" filterable clearable
class="!w-240px" placeholder="请选择产线" @change="handleOrgChange" />
</el-form-item>
<el-form-item label="设备" v-if="createForm.type === '1'">
@ -229,7 +229,7 @@ const organizationTree = ref<any[]>([])
const lineTreeProps = {
label: 'name',
children: 'children',
value: 'name'
value: 'id'
}
const deviceList = ref<any[]>([])
@ -345,10 +345,6 @@ const openEditDialog = (item: DashboardItem) => {
createForm.type = item.type || ''
createForm.orgId = item.orgId || undefined
createForm.orgName = item.orgName || ''
if (!createForm.orgName && createForm.orgId) {
const org = findOrgNode(organizationTree.value || [], createForm.orgId)
createForm.orgName = org?.name || ''
}
const fromNew = Array.isArray(item.deviceIdsList) && item.deviceIdsList.length
? normalizeDeviceIdsList(item.deviceIdsList)
: []
@ -402,14 +398,11 @@ const submitDialog = async () => {
} else {
createForm.deviceIdsList = []
}
if (!createForm.orgId && createForm.orgName) {
const org = findOrgNodeByName(organizationTree.value || [], createForm.orgName)
createForm.orgId = org?.id ?? undefined
createForm.orgName = org?.name || createForm.orgName
}
if (createForm.orgId) {
const org = findOrgNode(organizationTree.value || [], createForm.orgId)
createForm.orgName = org?.name || createForm.orgName
createForm.orgName = org?.name || ''
} else {
createForm.orgName = ''
}
const route = getRouteByType(createForm.type)
if (route) {
@ -471,27 +464,13 @@ const findOrgNode = (nodes: any[], id: any): any | undefined => {
return undefined
}
const findOrgNodeByName = (nodes: any[], name: any): any | undefined => {
const target = String(name ?? '').trim()
if (!target) return undefined
for (const node of nodes) {
if (String(node.name) === target) return node
const children = Array.isArray(node.children) ? node.children : []
const found = findOrgNodeByName(children, target)
if (found) return found
}
return undefined
}
const handleOrgChange = () => {
if (!createForm.orgName) {
createForm.orgId = undefined
if (!createForm.orgId) {
createForm.orgName = ''
return
}
const org = findOrgNodeByName(organizationTree.value || [], createForm.orgName)
createForm.orgId = org?.id ?? undefined
createForm.orgName = org?.name || createForm.orgName
const org = findOrgNode(organizationTree.value || [], createForm.orgId)
createForm.orgName = org?.name || ''
}
const loadDeviceList = async () => {

Loading…
Cancel
Save