diff --git a/.env.local b/.env.local index 5bdf058c..9f6a531f 100644 --- a/.env.local +++ b/.env.local @@ -8,8 +8,8 @@ VITE_DEV=true # 线上环境 # VITE_BASE_URL='https://besure.ngsk.tech:7001' # 本地联调 -VITE_BASE_URL='http://localhost:48081' -# VITE_BASE_URL='http://192.168.5.135:48081' +# VITE_BASE_URL='http://192.168.5.107:48081' +VITE_BASE_URL='http://192.168.5.131:48081' # 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持 S3 服务 diff --git a/src/api/erp/mold/index.ts b/src/api/erp/mold/index.ts index 775bd7ae..dc34c093 100644 --- a/src/api/erp/mold/index.ts +++ b/src/api/erp/mold/index.ts @@ -81,6 +81,10 @@ export const MoldBrandApi = { getMoldPage: async (params) => { return await request.get({ url: `/erp/mold-brand/mold/page`, params }) }, + + getMoldPageWithoutPaging: async () => { + return await request.get({ url: `/erp/mold-brand/mold/page` }) + }, // 新增模具 createMold: async (data) => { return await request.post({ url: `/erp/mold-brand/mold/create`, data }) diff --git a/src/api/mes/energydevice/index.ts b/src/api/mes/energydevice/index.ts index 5164e784..2f6932ef 100644 --- a/src/api/mes/energydevice/index.ts +++ b/src/api/mes/energydevice/index.ts @@ -25,6 +25,23 @@ export interface EnergyDeviceVO { operationRulesVOList?: EnergyDeviceOperationRuleVO[] } +export interface EnergyDeviceDataRecordVO { + id: number + name?: string + deviceTypeName?: string + orgId?: number | string + orgName?: string + operationRulesVOMap?: Record + energyConsumption?: string | number + energyAllocationConsumption?: string | number + energyActualConsumption?: string | number + shift?: string + startTime?: string + endTime?: string + earliestDataTime?: string + latestDataTime?: string +} + // 能源设备 API export const EnergyDeviceApi = { // 查询能源设备分页 @@ -41,6 +58,14 @@ export const EnergyDeviceApi = { return await request.get({ url: `/mes/energy-device/getList`, params }) }, + queryDataRecords: async (params: any) => { + return await request.get({ url: `/mes/energy-device/queryDataRecords`, params }) + }, + + exportQueryDataRecords: async (params: any) => { + return await request.download({ url: `/mes/energy-device/record-export-excel`, params }) + }, + // 新增能源设备 createEnergyDevice: async (data: EnergyDeviceVO) => { return await request.post({ url: `/mes/energy-device/create`, data }) diff --git a/src/api/mold/moldRepairItems/index.ts b/src/api/mold/moldRepairItems/index.ts new file mode 100644 index 00000000..527851a6 --- /dev/null +++ b/src/api/mold/moldRepairItems/index.ts @@ -0,0 +1,48 @@ +import request from '@/config/axios' + +export interface MoldRepairItemVO { + id?: number + subjectCode: string + subjectName: string + deviceType: string | number + moldId?: string | number + inspectionMethod?: string + valueType?: string + judgmentCriteria?: string + isEnable: string + deviceName?: string + componentName?: string + creatorName?: string + createTime?: string | number | Date + projectContent?: string +} + +export const MoldRepairItemsApi = { + getRepairItemsPage: async (params: any) => { + return await request.get({ url: `/mes/mold-repair-tems/page`, params }) + }, + + getComponentList: async (deviceId: number) => { + return await request.get({ url: `/mes/mold-repair-tems/getComponentList`, params: { deviceId } }) + }, + + getDeviceOrComponentList: async (params: { deviceId: number; componentId?: number; deviceType: number }) => { + return await request.get({ url: `/mes/mold-repair-tems/getDeviceOrComponentList`, params }) + }, + + createRepairItem: async (data: MoldRepairItemVO) => { + return await request.post({ url: `/mes/mold-repair-tems/create`, data }) + }, + + updateRepairItem: async (data: MoldRepairItemVO) => { + return await request.put({ url: `/mes/mold-repair-tems/update`, data }) + }, + + deleteRepairItems: async (ids: string) => { + return await request.delete({ url: `/mes/mold-repair-tems/delete?ids=` + ids }) + }, + + exportRepairItems: async (params: any) => { + return await request.download({ url: `/mes/mold-repair-tems/export-excel`, params }) + } +} diff --git a/src/api/mold/moldrepair/index.ts b/src/api/mold/moldrepair/index.ts new file mode 100644 index 00000000..018fab09 --- /dev/null +++ b/src/api/mold/moldrepair/index.ts @@ -0,0 +1,56 @@ +import request from '@/config/axios' + +export interface MoldRepairVO { + id: number + repairCode: string + repairName: string + moldId?: number + moldCode?: string + moldName?: string + machineryId?: number + machineryCode?: string + machineryName?: string + machineryBrand: string + machinerySpec: string + machineryTypeId: number + requireDate: Date + finishDate: Date + confirmDate: Date + repairResult: string + acceptedBy: string + confirmBy: string + status: string + remark: string +} + +export type MoldRepairSaveVO = Omit + +export const MoldRepairApi = { + getMoldRepairPage: async (params: any) => { + return await request.get({ url: `/mes/mold-repair/page`, params }) + }, + + getMoldRepair: async (id: number) => { + return await request.get({ url: `/mes/mold-repair/get?id=` + id }) + }, + + createMoldRepair: async (data: MoldRepairSaveVO) => { + return await request.post({ url: `/mes/mold-repair/create`, data }) + }, + + updateMoldRepair: async (data: MoldRepairSaveVO) => { + return await request.put({ url: `/mes/mold-repair/update`, data }) + }, + + deleteMoldRepair: async (ids: string) => { + return await request.delete({ url: `/mes/mold-repair/delete?ids=` + ids }) + }, + + exportMoldRepair: async (params) => { + return await request.download({ url: `/mes/mold-repair/export-excel`, params }) + }, + + getMoldRepairLineListByRepairId: async (repairId) => { + return await request.get({ url: `/mes/mold-repair/mold-repair-line/list-by-repair-id?repairId=` + repairId }) + } +} diff --git a/src/views/iot/device/components/DeviceAttributeForm.vue b/src/views/iot/device/components/DeviceAttributeForm.vue index 2052c026..a79719a6 100644 --- a/src/views/iot/device/components/DeviceAttributeForm.vue +++ b/src/views/iot/device/components/DeviceAttributeForm.vue @@ -45,7 +45,7 @@ - + @@ -105,6 +105,33 @@ const formData = ref({ deviceId: undefined as number | undefined }) +const ratioEnabledTypes = new Set([ + 'uint8', + 'uint16', + 'uint32', + 'uint64', + 'int8', + 'int16', + 'int32', + 'float32', + 'float64' +]) + +const ratioEnabled = computed(() => { + const v = formData.value.dataType + if (!v) return false + return ratioEnabledTypes.has(v) +}) + +watch( + () => formData.value.dataType, + () => { + if (!ratioEnabled.value) { + formData.value.ratio = undefined + } + } +) + const handleAttributeCodeInput = (val: string) => { formData.value.attributeCode = val?.replace(/[\u4e00-\u9fa5]/g, '') } @@ -191,7 +218,7 @@ const buildSubmitData = () => { dataType, address, dataUnit, - ratio, + ratio: ratioEnabled.value ? ratio : undefined, sort: parsedSort, remark, deviceId diff --git a/src/views/iot/deviceParamAnalysis/index.vue b/src/views/iot/deviceParamAnalysis/index.vue index 74226294..e5fada9a 100644 --- a/src/views/iot/deviceParamAnalysis/index.vue +++ b/src/views/iot/deviceParamAnalysis/index.vue @@ -409,8 +409,10 @@ const handleTreeNodeClick = async (data: DeviceTreeNode) => { return } + + const isEmptyOrgNode = typeof data?.id === 'string' && data.id.startsWith('org-') const isEquipmentNode = typeof data?.id === 'string' && data.id.startsWith('equipment-') - if (isEquipmentNode && (data.paramCount ?? 0) <= 0) { + if (isEquipmentNode && (data.paramCount ?? 0) <= 0 || isEmptyOrgNode) { selectedParam.value = data selectedDeviceId.value = undefined selectedModelId.value = undefined diff --git a/src/views/mes/energydevice/EnergyDeviceForm.vue b/src/views/mes/energydevice/EnergyDeviceForm.vue index ea720e55..b1abd534 100644 --- a/src/views/mes/energydevice/EnergyDeviceForm.vue +++ b/src/views/mes/energydevice/EnergyDeviceForm.vue @@ -10,28 +10,33 @@ - -
-
-