using System;
using System.Collections.Generic;
using System.Text;
namespace Shared.Phone.UserCenter.Device
{
///
/// 设备通用信息界面
///
public class DeviceGeneralInformationForm : EditorCommonForm
{
#region ■ 变量声明___________________________
#endregion
#region ■ 初始化_____________________________
///
/// 画面显示(底层会固定调用此方法,借以完成画面创建)
///
/// 设备MAC地址
public void ShowForm(string i_deviceMac)
{
//设置头部信息
base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uGeneralInformation));
//初始化中部信息
this.InitMiddleFrame(i_deviceMac);
}
///
/// 初始化中部信息
///
/// 设备MAC地址
private void InitMiddleFrame(string i_deviceMac)
{
//清空bodyFrame
this.ClearBodyFrame();
var listDevice = Common.LocalDevice.Current.GetDevicesByMac(i_deviceMac);
var oTADevice = Common.LocalDevice.Current.GetOTADevice(i_deviceMac);
if (listDevice.Count == 0)
{
//针对单纯只有一个200端点的设备
listDevice.Add(oTADevice);
}
var listView = new VerticalListControl(12);
listView.BackgroundColor = UserCenterColor.Current.White;
listView.Height = bodyFrameLayout.Height;
bodyFrameLayout.AddChidren(listView);
//设备名称
var myInfoType = Common.LocalDevice.Current.GetMyDeviceEnumInfo(listDevice);
var rowName = new FrameRowControl(listView.rowSpace / 2);
rowName.UseClickStatu = false;
listView.AddChidren(rowName);
rowName.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uDeviceName), 400);
if (Common.LocalDevice.Current.IsMiniLight(listDevice[0]) == true)
{
//mini夜灯
rowName.AddMostRightView(Language.StringByID(R.MyInternationalizationString.uMiniNightLight), 600);
}
else
{
rowName.AddMostRightView(Language.StringByID(myInfoType.ConcreteTextId), 600);
}
rowName.AddBottomLine();
//设备型号
string strModel = listDevice[0].DriveCode > 0 ? Language.StringByID(R.MyInternationalizationString.uVirtualDriveDevice) : listDevice[0].ModelIdentifier;
if (strModel == string.Empty)
{
//无法识别
strModel = Language.StringByID(R.MyInternationalizationString.uUnDistinguish);
}
var rowType = new FrameRowControl(listView.rowSpace / 2);
rowType.UseClickStatu = false;
listView.AddChidren(rowType);
rowType.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uModelIdentifier), 400);
rowType.AddMostRightView(strModel, 600);
rowType.AddBottomLine();
//镜像ID
var otaDevice = Common.LocalDevice.Current.GetOTADevice(listDevice[0].DeviceAddr);
if (otaDevice != null)
{
var rowImage = new FrameRowControl(listView.rowSpace / 2);
rowImage.UseClickStatu = false;
listView.AddChidren(rowImage);
rowImage.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uImageId), 400);
rowImage.AddMostRightView(otaDevice.ImgTypeId.ToString(), 400);
rowImage.AddBottomLine();
}
if (oTADevice != null)
{
//固件版本
var rowVersion = new FrameRowControl(listView.rowSpace / 2);
rowVersion.UseClickStatu = false;
listView.AddChidren(rowVersion);
rowVersion.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uFirmwareVersion), 400);
rowVersion.AddMostRightView(Common.LocalDevice.Current.AppendVersion(oTADevice.ImgVersion), 600);
rowVersion.AddBottomLine();
//硬件版本
var rowHard = new FrameRowControl(listView.rowSpace / 2);
rowHard.UseClickStatu = false;
listView.AddChidren(rowHard);
rowHard.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uHardwareVersion), 400);
rowHard.AddMostRightView(oTADevice.HwVersion.ToString(), 600);
rowHard.AddBottomLine();
}
//序列号
var rowSerial = new FrameRowControl(listView.rowSpace / 2);
rowSerial.UseClickStatu = false;
listView.AddChidren(rowSerial);
rowSerial.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uSerialNumber), 400);
rowSerial.AddMostRightView(listDevice[0].SerialNumber != string.Empty ? listDevice[0].SerialNumber : listDevice[0].DeviceAddr, 600);
rowSerial.AddBottomLine();
//MAC
var rowMac = new FrameRowControl(listView.rowSpace / 2);
rowMac.UseClickStatu = false;
listView.AddChidren(rowMac);
rowMac.AddLeftCaption("MAC", 300);
rowMac.AddMostRightView(listDevice[0].DeviceAddr, 600);
rowMac.AddBottomLine();
//制造商
string strProtuct = listDevice[0].DriveCode > 0 ? "HDL" : listDevice[0].ManufacturerName;
var rowProtuct = new FrameRowControl(listView.rowSpace / 2);
rowProtuct.UseClickStatu = false;
listView.AddChidren(rowProtuct);
rowProtuct.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uManufacturerName), 400);
rowProtuct.AddMostRightView(strProtuct, 600);
listView.AdjustRealHeight(Application.GetRealHeight(23));
}
#endregion
}
}