feat(usermachine): 添加生产线信息关联功能

This commit is contained in:
zxy 2026-05-19 16:06:06 +08:00
parent 83d18ec270
commit b39f2aba0b
7 changed files with 37 additions and 6 deletions

View File

@ -49,4 +49,10 @@ public class UserMachineDetailRespVO {
@ExcelProperty("机台id")
private Integer machineId;
private Integer lineId;
private String proLineCd;
private String proLineName;
}

View File

@ -28,4 +28,6 @@ public class UserMachineDetailSaveReqVO {
@Schema(description = "机台id", example = "9668")
private Integer machineId;
private Integer lineId;
}

View File

@ -51,4 +51,8 @@ public class UserMachineDetailDO extends BaseDO {
*/
private Integer machineId;
private Integer lineId;
private String proLineCd;
private String proLineName;
}

View File

@ -3,8 +3,10 @@ package com.ningxia.yunxi.chemmes.module.biz.service.usermachine;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.usermachine.vo.UserMachineDetailSaveReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.proline.ProLineDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.usermachine.UserMachineDetailDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.usermachine.UserMachineDetailMapper;
import com.ningxia.yunxi.chemmes.module.biz.service.proline.ProLineService;
import com.ningxia.yunxi.chemmes.module.system.dal.dataobject.user.AdminUserDO;
import com.ningxia.yunxi.chemmes.module.system.service.user.AdminUserService;
import org.springframework.stereotype.Service;
@ -31,6 +33,9 @@ public class UserMachineDetailServiceImpl implements UserMachineDetailService {
@Resource
private AdminUserService userService;
@Resource
private ProLineService proLineService;
@Override
public void saveMachineDetails(Integer userMachId, List<UserMachineDetailSaveReqVO> machineList) {
@ -46,6 +51,13 @@ public class UserMachineDetailServiceImpl implements UserMachineDetailService {
detailEntity.setMachineId(form.getMachineId());
detailEntity.setMachineName(form.getMachineName());
detailEntity.setEnabledStatus(0);
// 根据机台ID查询机台信息
ProLineDO machineEntity = proLineService.getProLine(form.getLineId());
if (machineEntity != null) {
detailEntity.setLineId(form.getLineId());
detailEntity.setProLineCd(machineEntity.getProLineCd());
detailEntity.setProLineName(machineEntity.getProLineName());
}
return detailEntity;
})
.collect(Collectors.toList());

View File

@ -7,8 +7,6 @@ export {}
declare global {
const DICT_TYPE: typeof import('@/utils/dict')['DICT_TYPE']
const EffectScope: typeof import('vue')['EffectScope']
const ElMessage: typeof import('element-plus/es')['ElMessage']
const ElMessageBox: typeof import('element-plus/es')['ElMessageBox']
const computed: typeof import('vue')['computed']
const createApp: typeof import('vue')['createApp']
const customRef: typeof import('vue')['customRef']

View File

@ -104,6 +104,7 @@ const formData = ref({
userName: undefined,
userNo: undefined,
classGroup: '',
lineId: undefined,
})
const formRules = reactive({
userNo: [{ required: true, message: '请选择人员', trigger: 'change' }],
@ -128,7 +129,11 @@ const open = async (type: string, id?: number) => {
try {
const data = await UserMachineApi.getUserMachine(id)
formData.value = data
machineList.value = data.machineList || []
// lineId
machineList.value = (data.machineList || []).map(item => ({
...item,
lineId: item.lineId || item.belgLineId,
}))
} finally {
formLoading.value = false
}
@ -172,6 +177,7 @@ const confirmMachine = (machines: any[]) => {
machineName: item.machineName,
creator: item.creator,
createTime: item.createTime,
lineId: item.belgLineId || item.lineId, //
})
}
})
@ -203,6 +209,7 @@ const submitForm = async () => {
machineId: m.machineId,
machineCd: m.machineCd,
machineName: m.machineName,
lineId: m.lineId,
})),
} as unknown as UserMachineApi.UserMachineVO
if (formType.value === 'create') {

View File

@ -81,7 +81,7 @@
</el-table-column>
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="创建人" align="center" prop="creator" />
<el-table-column label="创建时间" align="center" prop="createTime" :formatter="dateFormatter" width="180px"
<el-table-column label="创建时间" align="center" prop="createTime" :formatter="dateFormatter2" width="180px"
/>
<el-table-column label="操作" align="center">
<template #default="scope">
@ -120,8 +120,10 @@
<el-table-column label="序号" align="center" type="index" width="60px" />
<el-table-column label="机台编码" align="center" prop="machineCd" />
<el-table-column label="机台名称" align="center" prop="machineName" />
<el-table-column label="生产编码" align="center" prop="proLineCd" />
<el-table-column label="生产线名称" align="center" prop="proLineName" />
<el-table-column label="创建人" align="center" prop="creator" />
<el-table-column label="创建时间" align="center" prop="createTime" :formatter="dateFormatter" />
<el-table-column label="创建时间" align="center" prop="createTime" :formatter="dateFormatter2" />
</el-table>
</ContentWrap>
@ -131,7 +133,7 @@
<script setup lang="ts">
import { getIntDictOptions, getStrDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import { dateFormatter2 } from '@/utils/formatTime'
import * as UserMachineApi from '@/api/biz/usermachine'
import UserMachineForm from './UserMachineForm.vue'