/// <summary> /// 设置设备信息 /// </summary> /// <param name="devList"></param> public void SetDevInfo(List <DevNode> devList) { Window.SetActive(true); ClearDevList(); int normalDev = 0; int cameraDev = 0; int doorDev = 0; int borderDev = 0; int fireDev = 0; foreach (DevNode dev in devList) { if (dev != null && dev.Info != null) { string typeCode = dev.Info.TypeCode.ToString(); if (TypeCodeHelper.IsCamera(typeCode)) { cameraDev++; cameraDevTemp.Add(dev.gameObject); } else if (TypeCodeHelper.IsDoorAccess(typeCode)) { doorDev++; doorDevTemp.Add(dev.gameObject); } else if (TypeCodeHelper.IsBorderAlarmDev(typeCode)) { borderDev++; borderDevTemp.Add(dev.gameObject); } else if (TypeCodeHelper.IsAlarmDev(typeCode)) { fireDev++; fireDevTemp.Add(dev.gameObject); } else { normalDev++; normalDevTemp.Add(dev.gameObject); } } } SetSelections(normalDev, cameraDev, doorDev, borderDev, fireDev); NormalDevText.text = normalDev.ToString(); CameraDevText.text = cameraDev.ToString(); DoorAccessText.text = doorDev.ToString(); BorderDevText.text = borderDev.ToString(); FireAlarmText.text = fireDev.ToString(); }
private DeviceAlarmFollowUI CreateAlarmFollowUI(DevNode alarmDev, DepNode dep, DeviceAlarm alarmInfo) { try { string depNodeId = dep is RoomController?dep.ParentNode.NodeID.ToString() : dep.NodeID.ToString(); string groupName = string.Format("{0}{1}", AlarmDevUIName, depNodeId); string typeCode = alarmDev.Info.TypeCode.ToString(); GameObject followObj = null; if (TypeCodeHelper.IsLocationDev(typeCode)) { followObj = CreateFollowTarget(ArchorAlarmUI, alarmDev.gameObject, groupName); } else if (TypeCodeHelper.IsCamera(typeCode)) { followObj = CreateFollowTarget(CameraAlarmUI, alarmDev.gameObject, groupName); } else if (TypeCodeHelper.IsDoorAccess(typeCode)) { followObj = CreateFollowTarget(DoorAccessAlarmUI, alarmDev.gameObject, groupName); } else { followObj = CreateFollowTarget(BorderDevUIPrefab, alarmDev.gameObject, groupName); } if (followObj == null) { return(null); } DeviceAlarmFollowUI followUI = followObj.GetComponent <DeviceAlarmFollowUI>(); if (followUI != null) { followUI.InitInfo(alarmInfo); } return(followUI); } catch (Exception ex) { Log.Error("FollowTargetManage.CreateAlarmDevFollowUI", ex.ToString()); return(null); } }
/// <summary> /// 开始拖拽模型,改变场景环境 /// </summary> private void ChangeEnvironmentOnBegin() { if (TypeCodeHelper.IsDoorAccess(ModelName)) { Debug.Log("Add Door Access..."); DepNode currentDep = FactoryDepManager.currentDep; if (currentDep == null) { return; } if (currentDep.Doors != null) { IsEnvironmentChange = true; currentDep.Doors.SetDoorsRenderEnable(true); Rigidbody DoorRig = model.AddMissingComponent <Rigidbody>(); DoorRig.useGravity = false; DoorRig.isKinematic = true; model.AddMissingComponent <ObjectModel_DoorAccess>(); } } }
public void OnEndDrag(PointerEventData eventData) { Reset(); if (TypeCodeHelper.IsDoorAccess(ModelName)) { RecoverEnvironment(); ObjectModel_DoorAccess access = model.GetComponent <ObjectModel_DoorAccess>(); if (!access.IsAccessInDoor || mouseScreenPos == Input.mousePosition || IsClickUGUIorNGUI.Instance.isOverUI) { DestroyImmediate(model); return; } else { access.DoorItem.CloseAllDoor(); List <GameObject> DoorAccess = access.CreateDoorAccess(); AddSave(DoorAccess, access.DoorItem.DoorID, access.DoorItem.ParentID); DestroyImmediate(model); // ShowParkData(); } } }
/// <summary> /// 创建设备漂浮UI /// </summary> private void CreateFollowUI() { if (Info != null && ParentDepNode != null) { string typeCode = Info.TypeCode.ToString(); if (TypeCodeHelper.IsDoorAccess(typeCode)) { return; } if (TypeCodeHelper.IsCamera(typeCode)) { FollowUI = FollowTargetManage.Instance.CreateCameraUI(gameObject, ParentDepNode, this); } else if (TypeCodeHelper.IsStaticDev(typeCode)) { FollowUI = FollowTargetManage.Instance.CreateDevFollowUI(gameObject, ParentDepNode, this); } else if (TypeCodeHelper.IsLocationDev(typeCode)) { FollowUI = FollowTargetManage.Instance.CreateArchorFollowUI(gameObject, ParentDepNode, this); } } }
/// <summary> /// 生成设备信息 /// </summary> /// <returns></returns> private DevInfo GetDevInfo() { DevInfo dev = new DevInfo(); dev.DevID = Guid.NewGuid().ToString(); dev.IP = ""; dev.KKSCode = ""; dev.CreateTime = DateTime.Now; dev.ModifyTime = DateTime.Now; dev.Name = ModelName; dev.ModelName = ModelName; dev.Status = 0; dev.ParentId = GetPID(model); try { dev.TypeCode = TypeCodeHelper.IsDoorAccess(ModelName)?TypeCodeHelper.DoorAccessTypecode:int.Parse(TypeCode); } catch (Exception e) { dev.TypeCode = 0; } dev.UserName = "******"; return(dev); }
/// <summary> /// 刷新单元项列表 /// </summary> public IEnumerator RefleshItems() { SetContentActive(true); List <ObjectAddList_Model> objectAddList_Models = new List <ObjectAddList_Model>(); foreach (ObjectAddList_Model model in childType.modelList) { if (IsCanAdd(model.typeCode)) { objectAddList_Models.Add(model); } } int childcount = content.transform.childCount; //continue; for (int i = 0; i < objectAddList_Models.Count; i++) { string typecode = objectAddList_Models[i].typeCode; Transform tran = null; if (i < childcount) { tran = content.transform.GetChild(i); } else { tran = InstantiateItem().transform; } if (tran) { Image image = tran.GetChild(0).GetChild(0).GetComponent <Image>(); string modelname = objectAddList_Models[i].modelName; SetImage(image, modelname); string typenameT = ObjectListToolbar.Instance.currentType.typeName; if (typenameT == "机柜") { //ObjectListToolbarItem_Cabinet objectListModelItem = tran.gameObject.AddMissingComponent<ObjectListToolbarItem_Cabinet>(); ////ModelConfig modelConfig = ModelSetting.GetModelByModelName(modelname); ////objectListModelItem.SetModelInfo(modelConfig); //objectListModelItem.SetModelName(modelname); //objectListModelItem.SetFocusTipText(modelname); ObjectListModelItem objectListModelItem = tran.gameObject.AddMissingComponent <ObjectListModelItem>(); objectListModelItem.SetFocusTipText(modelname); objectListModelItem.SetModelName(modelname, typecode); } else if (typenameT == "门窗" || typenameT == "装饰") { //ObjectListToolbarItem_Decoration objectListModelItem = tran.gameObject.AddMissingComponent<ObjectListToolbarItem_Decoration>(); //ModelConfig modelConfig = ModelSetting.GetModelByModelName(modelname); //objectListModelItem.SetModelInfo(modelConfig); //string name = GetRealName(modelname); //objectListModelItem.SetFocusTipText(name); if (TypeCodeHelper.IsDoorAccess(modelname)) { ObjectListToolbarItem_DoorAccess doorAccessItem = tran.gameObject.AddMissingComponent <ObjectListToolbarItem_DoorAccess>(); doorAccessItem.SetModelName(modelname, typecode); string name = GetRealName(modelname); doorAccessItem.SetFocusTipText(name); } else { ObjectListModelItem objectListModelItem = tran.gameObject.AddMissingComponent <ObjectListModelItem>(); objectListModelItem.SetModelName(modelname, typecode); string name = GetRealName(modelname); objectListModelItem.SetFocusTipText(name); } } else//设备 { ObjectListModelItem objectListModelItem = tran.gameObject.AddMissingComponent <ObjectListModelItem>(); ////string name = GetRealName(modelname); ////string name = modelname; objectListModelItem.SetFocusTipText(modelname); ////IDevType idevtype = DevTypeManager.Instance.GetDevType(typecode); //IDevType idevtype = InitDataManager.GetDevTypeInfo(typecode); //ModelConfig modelConfig = ModelSetting.GetModelByCode(typecode); objectListModelItem.SetModelName(modelname, typecode); } } yield return(null); } for (int j = childcount - 1; j >= childType.modelList.Length; j--) { if (j >= content.transform.childCount) { continue; } Transform tran = content.transform.GetChild(j); if (tran != null) { DestroyImmediate(tran.gameObject); yield return(null); } } SetContentPos(); }
/// <summary> /// 保存通用设备 /// </summary> private void SaveNormalDev(List <Location.TModel.Location.AreaAndDev.DevInfo> devInfoList, LocationService service) { DevInfoBackupList backUpList = new DevInfoBackupList(); backUpList.DevList = new List <DevInfoBackup>(); foreach (var item in devInfoList) { string typeCodeT = item.TypeCode.ToString(); if (TypeCodeHelper.IsLocationDev(typeCodeT) || TypeCodeHelper.IsCamera(typeCodeT) || TypeCodeHelper.IsDoorAccess(item.ModelName)) { continue; } DevInfoBackup dev = new DevInfoBackup(); dev.DevId = item.DevID; dev.KKSCode = item.KKSCode; dev.ModelName = item.ModelName; dev.Name = item.Name; dev.ParentName = GetAreaPath((int)item.ParentId, service); dev.TypeCode = item.TypeCode.ToString(); DevPos pos = item.Pos; dev.RotationX = pos.RotationX.ToString(); dev.RotationY = pos.RotationY.ToString(); dev.RotationZ = pos.RotationZ.ToString(); dev.XPos = pos.PosX.ToString(); dev.YPos = pos.PosY.ToString(); dev.ZPos = pos.PosZ.ToString(); dev.ScaleX = pos.ScaleX.ToString(); dev.ScaleY = pos.ScaleY.ToString(); dev.ScaleZ = pos.ScaleZ.ToString(); backUpList.DevList.Add(dev); } string initFile = AppDomain.CurrentDomain.BaseDirectory + "Data\\设备信息\\DevInfoBackup.xml"; XmlSerializeHelper.Save(backUpList, initFile, Encoding.UTF8); }
/// <summary> /// 保存通用设备 /// </summary> private void SaveNormalDev(List <Location.TModel.Location.AreaAndDev.DevInfo> devInfoList, LocationService service) { DevInfoBackupList backUpList = new DevInfoBackupList(); backUpList.DevList = new List <DevInfoBackup>(); foreach (var item in devInfoList) { string typeCodeT = item.TypeCode.ToString(); if (TypeCodeHelper.IsLocationDev(typeCodeT) || TypeCodeHelper.IsCamera(typeCodeT) || TypeCodeHelper.IsDoorAccess(item.ModelName) || TypeCodeHelper.IsFireFightDevType(typeCodeT)) { continue; } DevInfoBackup dev = new DevInfoBackup(); dev.DevId = item.DevID; dev.KKSCode = item.KKSCode; dev.Abutment_DevID = item.Abutment_DevID; dev.ModelName = item.ModelName; dev.Name = item.Name; dev.ParentName = GetAreaPath((int)item.ParentId, service); dev.TypeCode = item.TypeCode.ToString(); DevPos pos = item.Pos; dev.RotationX = pos.RotationX.ToString(); dev.RotationY = pos.RotationY.ToString(); dev.RotationZ = pos.RotationZ.ToString(); dev.XPos = pos.PosX.ToString(); dev.YPos = pos.PosY.ToString(); dev.ZPos = pos.PosZ.ToString(); dev.ScaleX = pos.ScaleX.ToString(); dev.ScaleY = pos.ScaleY.ToString(); dev.ScaleZ = pos.ScaleZ.ToString(); backUpList.DevList.Add(dev); } List <DevInfoBackup> deleteDevs = AddDeleteDev(devInfoList); if (devInfoList != null && devInfoList.Count != 0) { backUpList.DevList.AddRange(deleteDevs); } //string dirctory = GetSaveDevDirectory(); //string initFile = dirctory+"DevInfoBackup.xml"; //XmlSerializeHelper.Save(backUpList, initFile, Encoding.UTF8); SaveNormalDevXml("DevInfoBackup.xml", backUpList); }