// 시설물코드 변경 private void cbFTR_CDEHandler(object sender, EditValueChangedEventArgs e) { // 0.편집화면초기화 ResetLayer(); editWinView.txtFTR_IDN.EditValue = ""; //시설물레이어 초기화 _selectedLayerNm = ""; _selectedLayerNms.Clear(); // 0,상수관로,급수관로 체크되어있으면 다시시표시 foreach (Button btn in FmsUtil.FindVisualChildren <Button>(editWinView)) { try { CheckBox chkbox = btn.Template.FindName("chkLayer", btn) as CheckBox; if (chkbox.IsChecked is true) { ShowShapeLayerFilter(mapView, btn.Tag.ToString(), true, ""); } } catch (Exception) { } } // 1.새로운 레이어 시작 string ftr_cde = e.NewValue.ToString(); this.FTR_CDE = ftr_cde; if (!FmsUtil.IsNull(ftr_cde)) { //선택된 레이어 기록 _selectedLayerNm = GisCmm.GetLayerNm(ftr_cde); _selectedLayerNms.Add(GisCmm.GetLayerNm(ftr_cde)); } else { return; } // 2.선택된 레이어의 시설물 페이지로 초기화 InitPage(ftr_cde, null, null); // 시설물검색 if (_selectedLayerNm.Equals("WTL_PIPE_LM") || _selectedLayerNm.Equals("WTL_SPLY_LS")) { //대용량데이터는 자동검색 제외 SearchLayer(null); } else { SearchLayer(null); } }
//시설물 shape 검색 private void SearchLayer(object obj) { string ftr_idn = editWinView.txtFTR_IDN.Text; //레이어표시 - FTR_IDN 조건 필터링 ShowShapeLayerFilter(mapView, GisCmm.GetLayerNm(FTR_CDE), true, ftr_idn); //조회된 피처 자동선택 SelectFct(FTR_CDE, ftr_idn, layers[_selectedLayerNm]); }
/// <summary> /// 저장작업 /// </summary> /// <param name="obj"></param> private void OnSave(object obj) { // 필수체크 (Tag에 필수체크 표시한 EditBox, ComboBox 대상으로 수행) if (!BizUtil.ValidReq(uC_FLOW_PS)) { return; } if (Messages.ShowYesNoMsgBox("저장하시겠습니까?") != MessageBoxResult.Yes) { return; } try { //1.시설물정보 FctDtl.FTR_CDE = this.FTR_CDE; FctDtl.FTR_IDN = Convert.ToInt32(this.FTR_IDN); //신규위치 및 기존위치 정보만 있을수 있으므로 shape의 관리번호를 기준으로한다. BizUtil.Update2(FctDtl, "saveFlowMtDtl"); //2.위치정보 - 위치편집한 경우만 if (!FmsUtil.IsNull(GisCmm.WKT_POINT)) { GisCmm.SavePoint(FctDtl.FTR_CDE, FctDtl.FTR_IDN.ToString(), "WTL_FLOW_PS"); GisCmm.WKT_POINT = ""; } } catch (Exception e) { Messages.ShowErrMsgBox("저장 처리중 오류가 발생하였습니다." + e.Message); return; } Messages.ShowOkMsgBox(); InitModel(); }