private bool UpdateSP_EMS_PART_CLS_UPDATE(BaseDataAccess _da, EmsPartCls _item) { try { bool isRtnValue = true; #region + 파라메터 변수 선언 및 값 할당 DataTable dtRtnValue = null; var strProcedureName = "PK_EMS_EBSE005.SP_EMS_PART_CLS_UPDATE"; Dictionary <string, object> dicInputParam = new Dictionary <string, object>(); string[] arrOutputParam = { "P_RESULT" }; var strCenterCD = this.BaseClass.CenterCD; // 센터코드 var strPbsID = _item.PART_CLS_ID; var strPbsNm = _item.PART_CLS_NM; var strPartClsNote = _item.PART_CLS_NOTE; var strUseYN = _item.USE_YN_CHECKED == true ? "Y" : "N"; // 사용여부 var iSortSeq = _item.SORT_SEQ; // 정렬순서 var strUserID = this.BaseClass.UserID; // 사용자 ID #endregion #region + Input 파라메터 dicInputParam.Add("P_CNTR_CD", strCenterCD); // 센터코드 dicInputParam.Add("P_PART_CLS_ID", strPbsID); // 분류코드 dicInputParam.Add("P_PART_CLS_NM", strPbsNm); // 분류코드명 dicInputParam.Add("P_PART_CLS_NOTE", strPartClsNote); dicInputParam.Add("P_USER_ID", strUserID); // 사용자 ID dicInputParam.Add("P_SORT_SEQ", iSortSeq); // 정렬순서 dicInputParam.Add("P_USE_YN", strUseYN); // 사용여부 #endregion #region + 데이터 조회 dtRtnValue = _da.GetSpDataTable(strProcedureName, dicInputParam, arrOutputParam); #endregion if (dtRtnValue != null) { if (dtRtnValue.Rows.Count > 0) { if (dtRtnValue.Rows[0]["CODE"].ToString().Equals("100") == false) { var strMessage = dtRtnValue.Rows[0]["MSG"].ToString(); this.BaseClass.MsgError(strMessage, BaseEnumClass.CodeMessage.MESSAGE); isRtnValue = false; } } else { // ERR_SAVE - 저장 중 오류가 발생했습니다. this.BaseClass.MsgError("ERR_SAVE"); isRtnValue = false; } } return(isRtnValue); } catch { throw; } }
public E1005(List <string> _liMenuNavigation) { try { InitializeComponent(); // 즐겨찾기 변경 여부를 가져오기 위한 이벤트 선언 (Delegate) this.NavigationBar.UserControlCallEvent += NavigationBar_UserControlCallEvent; // 네비게이션 메뉴 바인딩 this.NavigationBar.ItemsSource = _liMenuNavigation; this.NavigationBar.MenuID = MethodBase.GetCurrentMethod().DeclaringType.Name; // 클래스 (파일명) // 화면 전체권한 여부 g_IsAuthAllYN = this.BaseClass.RoleCode.Trim().Equals("A") == true ? true : false; // "부품 분류명" string strPartNm = this.BaseClass.GetResourceValue("PART_SPR_NM"); this.InitControl(); this.InitEvent(); this.GetSP_EMS_PART_CLS_SEL(); // 신규 작성시에만 ID 편집 가능 this.treeListView.ShowingEditor += (s, e) => { EmsPartCls item = this.treeListControl.SelectedItem as EmsPartCls; e.Cancel = this.treeListControl.CurrentColumn.FieldName == "PART_CLS_ID" && item.IsNew == false; }; } catch (Exception err) { this.BaseClass.Error(err); } }
/// <summary> /// (행추가) ContextMenu 이벤트 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MenuItemRowAdd_PreviewMouseLeftButtonUp(object sender, MouseButtonEventArgs e) { try { string strSelectedMenuID = (this.treeListControl.SelectedItem as EmsPartCls).PART_CLS_ID; // 메뉴 ID string strSelectedTreeID = (this.treeListControl.SelectedItem as EmsPartCls).TREE_ID; // 트리 ID var iSelectedMenuLevel = (this.treeListControl.SelectedItem as EmsPartCls).PART_CLS_LV; // 메뉴 레벨 var strSelectedNewRowYN = (this.treeListControl.SelectedItem as EmsPartCls).IsNew; // 신규 여부 // 신규 추가된 Row의 경우 하위 Row를 추가하지 않기 때문에 // isNew가 true인 경우 구문을 리턴한다. if (strSelectedNewRowYN == true) { return; } var liFilterData = this.EmsPartClsList.Where(p => p.PARENT_PART_CLS_ID.Equals(strSelectedTreeID) == true).ToList(); int i = 0; foreach (var item in this.EmsPartClsList) { if (item.PART_CLS_ID.Equals(strSelectedMenuID) == true) { break; } i++; } string strTreeIDFirst = string.Empty; string strTreeID = string.Empty; int iTreeIDSecond = 0; int iSortSeq = 0; if (liFilterData.Count > 0) { strTreeID = liFilterData.OrderByDescending(p => p.TREE_ID).FirstOrDefault().TREE_ID; iSortSeq = liFilterData.OrderByDescending(p => p.SORT_SEQ).FirstOrDefault().SORT_SEQ + 1; strTreeIDFirst = strTreeID.Substring(0, strTreeID.Length - 2); iTreeIDSecond = Convert.ToInt32(strTreeID.Substring(strTreeID.Length - 2, 2)) + 1; strTreeID = $"{strTreeIDFirst}{iTreeIDSecond.ToString("D2")}"; } else { iSortSeq = 1; strTreeID = $"{strSelectedTreeID}01"; } var newItem = new EmsPartCls { PART_CLS_ID = string.Empty // 설비 ID , PART_CLS_NM = string.Empty // 설비명 , PART_CLS_LV = iSelectedMenuLevel + 1 // 메뉴 레벨 , TREE_ID = strTreeID // 트리 ID , PARENT_PART_CLS_ID = strSelectedTreeID // 상위 메뉴 ID , USE_YN = "Y" // 사용 여부 , SORT_SEQ = iSortSeq // 정렬 순서 , IsSelected = true , IsNew = true , IsUpdate = false }; this.EmsPartClsList.Add(newItem); this.treeListControl.Focus(); this.treeListControl.CurrentColumn = this.treeListControl.Columns.First(); this.treeListControl.View.FocusedRowHandle = this.EmsPartClsList.Count - 1; this.EmsPartClsList[this.EmsPartClsList.Count - 1].BackgroundBrush = new SolidColorBrush(Colors.GhostWhite); this.EmsPartClsList[this.EmsPartClsList.Count - 1].BaseBackgroundBrush = new SolidColorBrush(Colors.GhostWhite); //#region 추가된 트리의 상위 메뉴 ID로 포커스를 이동하기 위한 구문 //int j = 0; //for (j = 0; j < this.treeListControl.VisibleRowCount; j++) //{ // var rowData = this.treeListControl.GetRow(j); // var strMenuID = ((SMART.WCS.UI.EMS.DataMembers.E1003.EqpClsTreeItem)rowData).EQP_CLS_ID; // if (strSelectedMenuID.Equals(strMenuID) == true) { break; } //} //this.BaseClass.SetTreeListControlRowAddFocus(this.treeListControl, j); //#endregion this.treeListView.ExpandAllNodes(); } catch (Exception err) { this.BaseClass.Error(err); } }