/// <summary> /// /// </summary> /// <param name="ddSale"></param> /// <param name="noBoru"></param> public void LoadHoldItems(string ddSale, string noBoru) { var db = TranDbHelper.InitInstance(); try { #region 보류상품항목 가져오기 string query = "P003HoldSelectTop".POSSLQuerySQL(); var ds = db.ExecuteQuery(query, new string[] { "@DD_SALE", "@CD_STORE", "@NO_POS", "@NO_BORU" }, new object[] { ddSale, ConfigData.Current.AppConfig.PosInfo.StoreNo, ConfigData.Current.AppConfig.PosInfo.PosNo, noBoru }); if (ds.Tables[0].Rows.Count == 0) { m_view.ReportError(SLP003HoldErrorState.NoBoruNotExists); } else { List <SAT900TItemData> holdList = new List <SAT900TItemData>(); foreach (DataRow dr in ds.Tables[0].Rows) { string vcCont = TypeHelper.ToString(dr["VC_CONT"]); BasketItem bi = (BasketItem)BasketItem.Parse(typeof(BasketItem), vcCont); holdList.Add(new SAT900TItemData() { NoBoru = TypeHelper.ToString(dr["NO_BORU"]), NmItem = bi.NmItem, QtItem = TypeHelper.ToInt32(bi.CntItem), AmItem = TypeHelper.ToInt32(bi.AmSale), SqBoru = TypeHelper.ToInt32(dr["SQ_BORU"]), Basket = bi, VcCont = vcCont }); } m_view.ReportError(SLP003HoldErrorState.NoError); m_view.BindHoldItems(holdList.ToArray()); } #endregion } catch (Exception ex) { LogUtils.Instance.LogException(ex); } finally { db.Dispose(); } }
/// <summary> /// 보류진짜 해제한다 /// </summary> /// <param name="noBoru"></param> /// <returns></returns> public SAT900TItemData[] ReleaseHoldTrxn(string noBoru) { var db = TranDbHelper.InitInstance(); var trans = db.BeginTransaction(); try { #region 보류상품항목 가져오기 string query = "P003HoldSelectTop".POSSLQuerySQL(); var ds = db.ExecuteQuery(query, new string[] { "@DD_SALE", "@CD_STORE", "@NO_POS", "@NO_BORU" }, new object[] { ConfigData.Current.AppConfig.PosInfo.SaleDate, ConfigData.Current.AppConfig.PosInfo.StoreNo, ConfigData.Current.AppConfig.PosInfo.PosNo, noBoru }, trans); List <SAT900TItemData> holdList = new List <SAT900TItemData>(); foreach (DataRow dr in ds.Tables[0].Rows) { string vcCont = TypeHelper.ToString(dr["VC_CONT"]); BasketItem bi = (BasketItem)BasketItem.Parse(typeof(BasketItem), vcCont); holdList.Add(new SAT900TItemData() { NoBoru = TypeHelper.ToString(dr["NO_BORU"]), NmItem = bi.NmItem, QtItem = TypeHelper.ToInt32(bi.CntItem), AmItem = TypeHelper.ToInt32(bi.AmSale), SqBoru = TypeHelper.ToInt32(dr["SQ_BORU"]), Basket = bi, VcCont = vcCont }); } #endregion #region 보류항목해제 상태저장 if (holdList.Count > 0) { query = "P003HoldTrxnRelease".POSSLQuerySQL(); db.ExecuteNonQuery(query, new string[] { "@DD_SALE", "@CD_STORE", "@NO_POS", "@NO_BORU" }, new object[] { ConfigData.Current.AppConfig.PosInfo.SaleDate, ConfigData.Current.AppConfig.PosInfo.StoreNo, ConfigData.Current.AppConfig.PosInfo.PosNo, holdList[0].NoBoru }, trans); } #endregion trans.Commit(); return(holdList.ToArray()); } catch (Exception ex) { if (trans != null) { trans.Rollback(); } LogUtils.Instance.LogException(ex); return(null); } finally { db.Dispose(); trans.Dispose(); } }