/// <summary> /// 初始化数据 /// </summary> private void InitData() { int iAreaID, iBuildID, iUnitID; iAreaID = iBuildID = iUnitID = 0; IDAL.IBuilding objDAL = DALFactory.DALFactory.Building(); //小区 cbArea.Items.Add(new Model.ComboBoxItem("请选择小区", 0)); cbBuild.Items.Add(new Model.ComboBoxItem("请选择楼栋", 0)); cbUnit.Items.Add(new Model.ComboBoxItem("请选择单元", 0)); cbArea.SelectedIndex = 0; cbBuild.SelectedIndex = 0; cbUnit.SelectedIndex = 0; if (this._CurrentAction.Equals(EAction.Edit)) { Model.Building objModel = objDAL.GetModel(this._DataType, this._CurrentID); if (objModel != null) { txtName.Text = objModel.BName; txtCode.Text = objModel.Flag.Equals(3) ? FormatRoomCode(objModel.Code) : FormatBuildingCode(objModel.Code); txtContact.Text = objModel.Contact; txtTel.Text = objModel.Tel; txtSerialNo.Text = objModel.BuildingSerialNo; switch (this._DataType) { case 1: iAreaID = objModel.FID; break; case 2: iBuildID = objModel.FID; iAreaID = objModel.FatherInfo.FID; break; case 3: iUnitID = objModel.FID; iBuildID = objModel.FatherInfo.FID; iAreaID = objModel.FatherInfo.FatherInfo.FID; break; } //记录旧数据 this._OldName = objModel.BName; this._OldCode = objModel.Code; this._OldAreaID = iAreaID; this._OldBuildID = iBuildID; this._OldUnitID = iUnitID; } } else { Model.Building objModel = null; switch (this._DataType) { case 1: iAreaID = this._CurrentParentID; break; case 2: iBuildID = this._CurrentParentID; objModel = objDAL.GetModel(this._DataType - 1, iBuildID); if (objModel != null) { iAreaID = objModel.FID; } break; case 3: iUnitID = this._CurrentParentID; objModel = objDAL.GetModel(this._DataType - 1, iUnitID); if (objModel != null) { iBuildID = objModel.FID; iAreaID = objModel.FatherInfo.FID; } break; } } if (iAreaID > 0 || (this._DataType >= 1 && this._DataType <= 3)) { IList <Model.Building> lsAll = objDAL.GetListByWhere(-1, 100000, "1=1"); int iCount = 0; int iSelectIndex = 0; IList <Model.Building> listArea = lsAll.Where(s => s.FID == 0).ToList(); if (!(listArea == null || listArea.Count <= 0)) { foreach (Model.Building model in listArea) { iCount++; if (model.ID.Equals(iAreaID)) { iSelectIndex = iCount; } cbArea.Items.Add(new Model.ComboBoxItem(model.BName, model.ID)); } cbArea.SelectedIndex = iSelectIndex; //新增时如果小区只有一个就自动选择那个小区 if (this._CurrentAction.Equals(EAction.Create) && iSelectIndex == 0 && listArea.Count == 1) { cbArea.SelectedIndex = 1; iAreaID = listArea[0].ID; } } //新增时如果只有一个楼栋 if (this._CurrentAction.Equals(EAction.Create) && iAreaID > 0 && iBuildID == 0) { IList <Model.Building> listBuild = lsAll.Where(s => s.FID == iAreaID).ToList(); if (!(listBuild == null || listBuild.Count <= 0)) { if (listBuild.Count == 1) { iBuildID = listBuild[0].ID; } } } if (iAreaID > 0) { iCount = 0; iSelectIndex = 0; IList <Model.Building> listBuild = lsAll.Where(s => s.FID == iAreaID).ToList(); if (!(listBuild == null || listBuild.Count <= 0)) { foreach (Model.Building model in listBuild) { iCount++; if (model.ID.Equals(iBuildID)) { iSelectIndex = iCount; } cbBuild.Items.Add(new Model.ComboBoxItem(model.BName, model.ID)); } cbBuild.SelectedIndex = iSelectIndex; } //新增时如果只有一个单元 if (this._CurrentAction.Equals(EAction.Create) && iBuildID > 0 && iUnitID == 0) { IList <Model.Building> listUnit = lsAll.Where(s => s.FID == iBuildID).ToList(); if (!(listUnit == null || listUnit.Count <= 0)) { if (listUnit.Count == 1) { iUnitID = listUnit[0].ID; } } } if (iBuildID > 0) { iCount = 0; iSelectIndex = 0; IList <Model.Building> listUnit = lsAll.Where(s => s.FID == iBuildID).ToList(); if (!(listUnit == null || listUnit.Count <= 0)) { foreach (Model.Building model in listUnit) { iCount++; if (model.ID.Equals(iUnitID)) { iSelectIndex = iCount; } cbUnit.Items.Add(new Model.ComboBoxItem(model.BName, model.ID)); } cbUnit.SelectedIndex = iSelectIndex; } } } } }