diff --git a/docs/v1.0.2.1/migration.sql b/docs/v1.0.2.1/migration.sql
index 08c7628..4c3207d 100644
--- a/docs/v1.0.2.1/migration.sql
+++ b/docs/v1.0.2.1/migration.sql
@@ -2,5 +2,5 @@
-- 新增光交箱机架类型支持
-- SQL Server 语法
-ALTER TABLE odf_racks ADD rack_type INT NOT NULL DEFAULT 0;
+ALTER TABLE odf_racks ADD RackType INT NOT NULL DEFAULT 0;
-- rack_type: 机架类型,0=ODF机架, 1=光交箱
diff --git a/odf-uniapp/pages.json b/odf-uniapp/pages.json
index c1c1fc4..362f0b0 100644
--- a/odf-uniapp/pages.json
+++ b/odf-uniapp/pages.json
@@ -58,6 +58,13 @@
"navigationBarTitleText": ""
}
},
+ {
+ "path": "pages/optical-box-detail/index",
+ "style": {
+ "navigationStyle": "custom",
+ "navigationBarTitleText": ""
+ }
+ },
{
"path": "pages/search/index",
"style": {
diff --git a/odf-uniapp/pages/optical-box-detail/index.vue b/odf-uniapp/pages/optical-box-detail/index.vue
new file mode 100644
index 0000000..47e4764
--- /dev/null
+++ b/odf-uniapp/pages/optical-box-detail/index.vue
@@ -0,0 +1,214 @@
+
+
+
+
+
+
+
+ {{ rackName }}详情
+
+
+
+
+
+
+ {{ roomName }}
+ 类型:光交箱
+
+
+
+
+
+
+ 已连接
+
+
+
+ 已断开
+
+
+
+
+
+ loading...
+
+
+
+
+
+ {{ frame.name }}
+
+
+
+
+
+
+ {{ getRowLetter(rowIdx) }}
+
+
+
+ {{ port.tips }}
+
+ {{ port.name }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ rowIdx + 1 }}
+
+
+
+ {{ port.tips }}
+
+ {{ port.name }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/odf-uniapp/pages/rack/index.vue b/odf-uniapp/pages/rack/index.vue
index bc59ad9..6151bc4 100644
--- a/odf-uniapp/pages/rack/index.vue
+++ b/odf-uniapp/pages/rack/index.vue
@@ -89,12 +89,21 @@ function goSearch() {
}
function goDetail(item) {
- uni.navigateTo({
- url: '/pages/rack-detail/index?rackId=' + item.id
- + '&rackName=' + encodeURIComponent(item.rackName)
- + '&roomName=' + encodeURIComponent(roomName.value)
- + '&rackType=' + (item.rackType || 0)
- })
+ if (item.rackType === 1) {
+ // 光交箱跳转到专用页面
+ uni.navigateTo({
+ url: '/pages/optical-box-detail/index?rackId=' + item.id
+ + '&rackName=' + encodeURIComponent(item.rackName)
+ + '&roomName=' + encodeURIComponent(roomName.value)
+ })
+ } else {
+ uni.navigateTo({
+ url: '/pages/rack-detail/index?rackId=' + item.id
+ + '&rackName=' + encodeURIComponent(item.rackName)
+ + '&roomName=' + encodeURIComponent(roomName.value)
+ + '&rackType=' + (item.rackType || 0)
+ })
+ }
}
onLoad((options) => {
diff --git a/odf-uniapp/services/machine.js b/odf-uniapp/services/machine.js
index 488d377..305538c 100644
--- a/odf-uniapp/services/machine.js
+++ b/odf-uniapp/services/machine.js
@@ -6,5 +6,6 @@ export const getRoomList = (pageNum, pageSize, deptId) =>
export const getRackList = (pageNum, pageSize, roomId) =>
get('/business/OdfRacks/list', { pageNum, pageSize, roomId })
export const getRackDetail = (RackId) => get('/business/OdfPorts/mlist', { RackId })
+export const getOpticalBoxDetail = (RackId) => get('/business/OdfPorts/mlist/optical', { RackId })
export const getPortDetail = (id) => get(`/business/OdfPorts/${id}`)
export const savePort = (data) => post('/business/OdfPorts/save', data)
diff --git a/server/ZR.Admin.WebApi/Controllers/Business/OdfPortsController.cs b/server/ZR.Admin.WebApi/Controllers/Business/OdfPortsController.cs
index 4cd1635..2f45f12 100644
--- a/server/ZR.Admin.WebApi/Controllers/Business/OdfPortsController.cs
+++ b/server/ZR.Admin.WebApi/Controllers/Business/OdfPortsController.cs
@@ -167,6 +167,76 @@ namespace ZR.Admin.WebApi.Controllers.Business
return SUCCESS(list);
}
+ ///
+ /// 查询光交箱端口列表(左右分开)
+ ///
+ [HttpGet("mlist/optical")]
+ [ActionPermissionFilter(Permission = "odfports:list")]
+ public async Task GetOpticalBoxPorts([FromQuery] OdfPortsMQueryDto parm)
+ {
+ var frames = await _OdfFramesService.AsQueryable().Where(it => it.RackId == parm.RackId)
+ .Select(it => new { it.Id, it.PortsName }).ToListAsync();
+
+ var result = new List();
+
+ foreach (var frame in frames)
+ {
+ var allPorts = await _OdfPortsService.AsQueryable().Where(it => it.FrameId == frame.Id)
+ .Select(it => new OdfPortsMDtoc()
+ {
+ Id = it.Id,
+ Name = it.Name,
+ Status = it.Status,
+ PortNumber = it.PortNumber,
+ RowNumber = it.RowNumber,
+ Tips = it.Remarks,
+ OpticalAttenuation = it.OpticalAttenuation,
+ EquipmentModel = it.EquipmentModel,
+ BusinessType = it.BusinessType,
+ }).ToListAsync();
+
+ // 通过PortSide区分左右,但OdfPortsMDtoc没有PortSide,需要重新查
+ var allPortsWithSide = await _OdfPortsService.AsQueryable().Where(it => it.FrameId == frame.Id)
+ .Select(it => new { it.Id, it.Name, it.Status, it.PortNumber, it.RowNumber, it.Remarks, it.OpticalAttenuation, it.EquipmentModel, it.BusinessType, it.PortSide })
+ .ToListAsync();
+
+ var leftPorts = allPortsWithSide.Where(it => it.PortSide == 0).ToList();
+ var rightPorts = allPortsWithSide.Where(it => it.PortSide == 1).ToList();
+
+ var dto = new OdfOpticalBoxFrameDto
+ {
+ Id = frame.Id,
+ Name = frame.PortsName
+ };
+
+ // 左侧按行分组
+ leftPorts.GroupBy(it => it.RowNumber).OrderBy(g => g.Key).ToList().ForEach(g =>
+ {
+ var li = g.OrderBy(it => it.PortNumber).Select(it =>
+ {
+ var tips = it.Status == 0 ? it.OpticalAttenuation ?? "" : "";
+ return new OdfPortsMDto { Id = it.Id, Name = it.Name, Status = it.Status, Tips = tips };
+ }).ToList();
+ dto.LeftPortsList.Add(new OdfPortsMDtot() { RowList = li, Name = g.Key.ToString() });
+ });
+
+ // 右侧按行分组
+ rightPorts.GroupBy(it => it.RowNumber).OrderBy(g => g.Key).ToList().ForEach(g =>
+ {
+ var li = g.OrderBy(it => it.PortNumber).Select(it =>
+ {
+ var tips = it.Status == 0 ? it.OpticalAttenuation ?? "" : "";
+ return new OdfPortsMDto { Id = it.Id, Name = it.Name, Status = it.Status, Tips = tips };
+ }).ToList();
+ dto.RightPortsList.Add(new OdfPortsMDtot() { RowList = li, Name = g.Key.ToString() });
+ });
+
+ result.Add(dto);
+ }
+
+ return SUCCESS(result);
+ }
+
///
diff --git a/server/ZR.Admin.WebApi/Controllers/Business/OdfRacksController.cs b/server/ZR.Admin.WebApi/Controllers/Business/OdfRacksController.cs
index 5898eef..5b5d69e 100644
--- a/server/ZR.Admin.WebApi/Controllers/Business/OdfRacksController.cs
+++ b/server/ZR.Admin.WebApi/Controllers/Business/OdfRacksController.cs
@@ -122,20 +122,23 @@ namespace ZR.Admin.WebApi.Controllers.Business
if (parm.FramesCount > 0)
{
-
//添加机框
List framesList = new List();
var rack = response;
+
+ // 光交箱固定每侧12个端口
+ var portsCount = modal.RackType == 1 ? 12 : parm.PortsCount;
+
for (int i = 0; i < parm.FramesCount; i++)
{
var t = await _OdfFramesService.InsertReturnEntityAsync(new OdfFrames()
{
CreatedAt = DateTime.Now,
UpdateAt = DateTime.Now,
- PortsCol = parm.PortsCount,
- PortsCount = parm.PortsCount,
+ PortsCol = portsCount,
+ PortsCount = portsCount,
DeptId = rack.DeptId,
- PortsRow = parm.PortsCount,
+ PortsRow = portsCount,
PortsName = $"{(i + 1)}框",
RackId = rack.Id,
SequenceNumber = i + 1
@@ -145,22 +148,48 @@ namespace ZR.Admin.WebApi.Controllers.Business
//添加机框结束
if (parm.RowCount > 0)
{
- //添加行
- if (parm.PortsCount > 0)
+ int index = 0;
+ foreach (var frame in framesList)
{
- int index = 0;
- //添加端口
- foreach (var frame in framesList)
+ var ra = rack;
+ if (ra == null) continue;
+
+ List ports = new List();
+
+ if (modal.RackType == 1)
{
- var ra = rack;
- if (ra == null)
- {
- continue;
- }
- List ports = new List();
+ // 光交箱:每行生成24个端口(左12+右12)
for (int row = 0; row < parm.RowCount; row++)
{
- for (int port = 0; port < parm.PortsCount; port++)
+ string rowLetter = ((char)(65 + row)).ToString(); // A, B, C...
+ // 左侧光交箱端子 PortSide=0
+ for (int port = 0; port < 12; port++)
+ {
+ ports.Add(new OdfPorts()
+ {
+ CreatedAt = DateTime.Now,
+ DeptId = rooms.DeptId ?? 0,
+ DeptName = rooms.DeptName,
+ RackId = frame.RackId,
+ RackName = ra.RackName,
+ RoomId = roomId,
+ RoomName = roomName,
+ FrameId = frame.Id,
+ FrameName = frame.PortsName,
+ Name = $"{rowLetter}-{(port + 1)}",
+ RowNumber = row + 1,
+ PortNumber = port + 1,
+ PortSide = 0,
+ OpticalAttenuation = "",
+ HistoryRemarks = "",
+ Remarks = "",
+ OpticalCableOffRemarks = "",
+ Status = parm.DefaultStatus,
+ UpdatedAt = DateTime.Now,
+ });
+ }
+ // 右侧ODF端子 PortSide=1
+ for (int port = 0; port < 12; port++)
{
ports.Add(new OdfPorts()
{
@@ -176,9 +205,9 @@ namespace ZR.Admin.WebApi.Controllers.Business
Name = $"{(row + 1)}-{(port + 1)}",
RowNumber = row + 1,
PortNumber = port + 1,
+ PortSide = 1,
OpticalAttenuation = "",
HistoryRemarks = "",
-
Remarks = "",
OpticalCableOffRemarks = "",
Status = parm.DefaultStatus,
@@ -186,16 +215,53 @@ namespace ZR.Admin.WebApi.Controllers.Business
});
}
}
- await _OdfPortsService.AsInsertable(ports).ExecuteReturnEntityAsync(true);
- //如果超过100个机框,则休眠一下,防止服务器死机
- index++;
- if (index > 100)
+ }
+ else
+ {
+ // ODF机架:保持原有逻辑
+ if (portsCount > 0)
{
- Thread.Sleep(50);
- index = 0;
+ for (int row = 0; row < parm.RowCount; row++)
+ {
+ for (int port = 0; port < portsCount; port++)
+ {
+ ports.Add(new OdfPorts()
+ {
+ CreatedAt = DateTime.Now,
+ DeptId = rooms.DeptId ?? 0,
+ DeptName = rooms.DeptName,
+ RackId = frame.RackId,
+ RackName = ra.RackName,
+ RoomId = roomId,
+ RoomName = roomName,
+ FrameId = frame.Id,
+ FrameName = frame.PortsName,
+ Name = $"{(row + 1)}-{(port + 1)}",
+ RowNumber = row + 1,
+ PortNumber = port + 1,
+ PortSide = 0,
+ OpticalAttenuation = "",
+ HistoryRemarks = "",
+ Remarks = "",
+ OpticalCableOffRemarks = "",
+ Status = parm.DefaultStatus,
+ UpdatedAt = DateTime.Now,
+ });
+ }
+ }
}
}
+ if (ports.Count > 0)
+ {
+ await _OdfPortsService.AsInsertable(ports).ExecuteReturnEntityAsync(true);
+ }
+ index++;
+ if (index > 100)
+ {
+ Thread.Sleep(50);
+ index = 0;
+ }
}
}
}
diff --git a/server/ZR.Admin.WebApi/Controllers/Business/OdfRoomsController.cs b/server/ZR.Admin.WebApi/Controllers/Business/OdfRoomsController.cs
index edcab35..8664bd5 100644
--- a/server/ZR.Admin.WebApi/Controllers/Business/OdfRoomsController.cs
+++ b/server/ZR.Admin.WebApi/Controllers/Business/OdfRoomsController.cs
@@ -289,21 +289,20 @@ namespace ZR.Admin.WebApi.Controllers.Business
CreatedAt = DateTime.Now,
FrameCount = parm.FramesCount,
DeptId = response.DeptId ?? 0,
- RackName = $"odf-{(i + 1)}",
+ RackName = parm.RackType == 1 ? $"光交箱-{(i + 1)}" : $"odf-{(i + 1)}",
RoomId = roomId,
SequenceNumber = i + 1,
UpdatedAt = DateTime.Now,
- }); // 直接插入机架
+ RackType = parm.RackType,
+ });
racksList.Add(t);
-
}
- //机架添加完成
- //return Insertable(model).ExecuteReturnEntity();
+ // 光交箱固定每侧12个端口
+ var portsCount = parm.RackType == 1 ? 12 : parm.PortsCount;
+
if (parm.FramesCount > 0)
{
-
- //添加机框
List framesList = new List();
foreach (var rack in racksList)
@@ -314,10 +313,10 @@ namespace ZR.Admin.WebApi.Controllers.Business
{
CreatedAt = DateTime.Now,
UpdateAt = DateTime.Now,
- PortsCol = parm.PortsCount,
- PortsCount = parm.PortsCount,
+ PortsCol = portsCount,
+ PortsCount = portsCount,
DeptId = rack.DeptId,
- PortsRow = parm.PortsCount,
+ PortsRow = portsCount,
PortsName = $"{(i + 1)}框",
RackId = rack.Id,
SequenceNumber = i + 1
@@ -326,25 +325,50 @@ namespace ZR.Admin.WebApi.Controllers.Business
}
}
- //添加机框结束
if (parm.RowCount > 0)
{
- //添加行
- if (parm.PortsCount > 0)
+ int index = 0;
+ foreach (var frame in framesList)
{
- int index = 0;
- //添加端口
- foreach (var frame in framesList)
+ var ra = racksList.Find(it => it.Id == frame.RackId);
+ if (ra == null) continue;
+
+ List ports = new List();
+
+ if (parm.RackType == 1)
{
- var ra = racksList.Find(it => it.Id == frame.RackId);
- if (ra == null)
- {
- continue;
- }
- List ports = new List();
+ // 光交箱:每行生成24个端口(左12+右12)
for (int row = 0; row < parm.RowCount; row++)
{
- for (int port = 0; port < parm.PortsCount; port++)
+ string rowLetter = ((char)(65 + row)).ToString();
+ // 左侧光交箱端子
+ for (int port = 0; port < 12; port++)
+ {
+ ports.Add(new OdfPorts()
+ {
+ CreatedAt = DateTime.Now,
+ DeptId = frame.DeptId ?? 0,
+ DeptName = modal.DeptName,
+ RackId = frame.RackId,
+ RackName = ra.RackName,
+ RoomId = roomId,
+ RoomName = roomName,
+ FrameId = frame.Id,
+ FrameName = frame.PortsName,
+ Name = $"{rowLetter}-{(port + 1)}",
+ RowNumber = row + 1,
+ PortNumber = port + 1,
+ PortSide = 0,
+ OpticalAttenuation = "",
+ HistoryRemarks = "",
+ OpticalCableOffRemarks = "",
+ Remarks = "",
+ Status = parm.DefaultStatus,
+ UpdatedAt = DateTime.Now,
+ });
+ }
+ // 右侧ODF端子
+ for (int port = 0; port < 12; port++)
{
ports.Add(new OdfPorts()
{
@@ -360,6 +384,7 @@ namespace ZR.Admin.WebApi.Controllers.Business
Name = $"{(row + 1)}-{(port + 1)}",
RowNumber = row + 1,
PortNumber = port + 1,
+ PortSide = 1,
OpticalAttenuation = "",
HistoryRemarks = "",
OpticalCableOffRemarks = "",
@@ -369,20 +394,56 @@ namespace ZR.Admin.WebApi.Controllers.Business
});
}
}
- await _OdfPortsService.AsInsertable(ports).ExecuteReturnEntityAsync(true);
- //如果超过100个机框,则休眠一下,防止服务器死机
- index++;
- if (index > 100)
+ }
+ else
+ {
+ // ODF机架:保持原有逻辑
+ if (portsCount > 0)
{
- Thread.Sleep(50);
- index = 0;
+ for (int row = 0; row < parm.RowCount; row++)
+ {
+ for (int port = 0; port < portsCount; port++)
+ {
+ ports.Add(new OdfPorts()
+ {
+ CreatedAt = DateTime.Now,
+ DeptId = frame.DeptId ?? 0,
+ DeptName = modal.DeptName,
+ RackId = frame.RackId,
+ RackName = ra.RackName,
+ RoomId = roomId,
+ RoomName = roomName,
+ FrameId = frame.Id,
+ FrameName = frame.PortsName,
+ Name = $"{(row + 1)}-{(port + 1)}",
+ RowNumber = row + 1,
+ PortNumber = port + 1,
+ PortSide = 0,
+ OpticalAttenuation = "",
+ HistoryRemarks = "",
+ OpticalCableOffRemarks = "",
+ Remarks = "",
+ Status = parm.DefaultStatus,
+ UpdatedAt = DateTime.Now,
+ });
+ }
+ }
}
}
+ if (ports.Count > 0)
+ {
+ await _OdfPortsService.AsInsertable(ports).ExecuteReturnEntityAsync(true);
+ }
+ index++;
+ if (index > 100)
+ {
+ Thread.Sleep(50);
+ index = 0;
+ }
}
}
}
-
}
diff --git a/server/ZR.Model/Business/Dto/OdfPortsDto.cs b/server/ZR.Model/Business/Dto/OdfPortsDto.cs
index ecfbfe8..8b9e9b5 100644
--- a/server/ZR.Model/Business/Dto/OdfPortsDto.cs
+++ b/server/ZR.Model/Business/Dto/OdfPortsDto.cs
@@ -756,4 +756,21 @@ namespace ZR.Model.Business.Dto
[ExcelColumnName("修改时间")]
public DateTime? UpdatedAt { get; set; }
}
+
+ ///
+ /// 光交箱机架详情DTO - 每个框包含左右两侧端口
+ ///
+ public class OdfOpticalBoxFrameDto
+ {
+ public int Id { get; set; }
+ public string Name { get; set; }
+ ///
+ /// 左侧光交箱端子(PortSide=0)
+ ///
+ public List LeftPortsList { get; set; } = new List();
+ ///
+ /// 右侧ODF端子(PortSide=1)
+ ///
+ public List RightPortsList { get; set; } = new List();
+ }
}
\ No newline at end of file
diff --git a/server/ZR.Model/Business/Dto/OdfRacksDto.cs b/server/ZR.Model/Business/Dto/OdfRacksDto.cs
index fe84316..31955d5 100644
--- a/server/ZR.Model/Business/Dto/OdfRacksDto.cs
+++ b/server/ZR.Model/Business/Dto/OdfRacksDto.cs
@@ -67,13 +67,12 @@ namespace ZR.Model.Business.Dto
///
public int RowCount { get; set; }
///
- /// 端口数量
+ /// 端口数量(ODF机架用,光交箱固定12)
///
public int PortsCount { get; set; }
///
- ///
+ /// 默认连接状态
///
-
public int DefaultStatus { get; set; }
}
}
\ No newline at end of file
diff --git a/server/ZR.Model/Business/Dto/OdfRoomsDto.cs b/server/ZR.Model/Business/Dto/OdfRoomsDto.cs
index ced1191..57b8362 100644
--- a/server/ZR.Model/Business/Dto/OdfRoomsDto.cs
+++ b/server/ZR.Model/Business/Dto/OdfRoomsDto.cs
@@ -172,15 +172,16 @@ namespace ZR.Model.Business.Dto
///
public int RowCount { get; set; }
///
- /// 端口数量
+ /// 端口数量(ODF机架用,光交箱固定12)
///
public int PortsCount { get; set; }
///
- ///
+ /// 默认连接状态
///
-
public int DefaultStatus { get; set; }
-
-
+ ///
+ /// 机架类型:0=ODF机架, 1=光交箱
+ ///
+ public int RackType { get; set; }
}
}
\ No newline at end of file
diff --git a/server/ZR.Model/Business/OdfPorts.cs b/server/ZR.Model/Business/OdfPorts.cs
index 063d2bb..0ad85bd 100644
--- a/server/ZR.Model/Business/OdfPorts.cs
+++ b/server/ZR.Model/Business/OdfPorts.cs
@@ -112,5 +112,10 @@ namespace ZR.Model.Business
///
public string BusinessType { get; set; }
+ ///
+ /// 端口侧:0=左侧(光交箱端子/默认), 1=右侧(ODF端子)
+ ///
+ public int PortSide { get; set; }
+
}
}
\ No newline at end of file
diff --git a/server/ZR.Vue/src/components/business/OdfRackExpertForm.vue b/server/ZR.Vue/src/components/business/OdfRackExpertForm.vue
index 785a8c1..bd6c5e6 100644
--- a/server/ZR.Vue/src/components/business/OdfRackExpertForm.vue
+++ b/server/ZR.Vue/src/components/business/OdfRackExpertForm.vue
@@ -23,6 +23,15 @@
+
+
+
+
+
+
+
+
+
@@ -42,12 +51,18 @@
每个机框中有多少行
-
+
每个机框中每行端口数量
+
+
+
+ 光交箱每行左右各12个端口,共24个
+
+
@@ -134,6 +149,7 @@ const form = ref({
sequenceNumber: null,
rackName: null,
frameCount: 9, // 默认固定9框
+ rackType: 0, // 0=ODF机架, 1=光交箱
createdAt: null,
updatedAt: null,
framesCount: 9,
@@ -146,7 +162,16 @@ const form = ref({
const rules = {
roomId: [{ required: true, message: '机房不能为空', trigger: 'change', type: 'number' }],
sequenceNumber: [{ required: true, message: '序号不能为空', trigger: 'blur', type: 'number' }],
- rackName: [{ required: true, message: 'ODF名称不能为空', trigger: 'blur' }]
+ rackName: [{ required: true, message: 'ODF名称不能为空', trigger: 'blur' }],
+ rackType: [{ required: true, message: '机架类型不能为空', trigger: 'change', type: 'number' }]
+}
+
+// 机架类型切换
+function handleRackTypeChange(val) {
+ if (val === 1) {
+ // 光交箱固定端口数12
+ form.value.portsCount = 12
+ }
}
// 字典选项
@@ -171,6 +196,7 @@ function resetForm() {
sequenceNumber: null,
rackName: null,
frameCount: 9, // 默认固定9框
+ rackType: 0,
createdAt: null,
updatedAt: null,
framesCount: 9,
diff --git a/server/ZR.Vue/src/components/business/OdfRoomExpertForm.vue b/server/ZR.Vue/src/components/business/OdfRoomExpertForm.vue
index 80e1be1..9ca9fa1 100644
--- a/server/ZR.Vue/src/components/business/OdfRoomExpertForm.vue
+++ b/server/ZR.Vue/src/components/business/OdfRoomExpertForm.vue
@@ -49,6 +49,14 @@
高级信息
+
+
+
+
+
+
+
+
@@ -67,12 +75,18 @@
每个机框中有多少行
-
+
每个机框中每行端口数量
+
+
+
+ 光交箱每行左右各12个端口,共24个
+
+
@@ -178,7 +192,8 @@ const form = ref({
rowCount: 6,
portsCount: 12,
defaultStatus: 0,
- orderby: 0
+ orderby: 0,
+ rackType: 0
})
// 表单验证规则
@@ -186,6 +201,13 @@ const rules = {
roomName: [{ required: true, message: '机房名称不能为空', trigger: 'blur' }]
}
+// 机架类型切换
+function handleRackTypeChange(val) {
+ if (val === 1) {
+ form.value.portsCount = 12
+ }
+}
+
// 获取部门树数据
function getDeptTreeData() {
treeselect().then((response) => {
@@ -209,7 +231,8 @@ function resetForm() {
framesCount: 9,
rowCount: 6,
portsCount: 12,
- defaultStatus: 0
+ defaultStatus: 0,
+ rackType: 0
}
nextTick(() => {
proxy.resetForm('formRef')