private void updateDisplayItem(CBasketItemDisplay bi) { String key = String.Format("{0}-{1}-{2}-{3}", bi.SelectionType, bi.ItemID, bi.ServiceID, bi.IsTray); CItemPriceAccum hbi = (CItemPriceAccum)priceHash[key]; if (hbi == null) { hbi = new CItemPriceAccum(); hbi.Amount = bi.Amount; hbi.Quantity = bi.Quantity; hbi.Discount = bi.Discount; priceHash[key] = hbi; } else { hbi.Amount = hbi.Amount + bi.Amount; hbi.Quantity = hbi.Quantity + bi.Quantity; hbi.Discount = hbi.Discount + bi.Discount; } hbi.DiscountPerUnit = hbi.Discount / hbi.Quantity; hbi.AmountPerUnit = hbi.Amount / hbi.Quantity; }
public void AddPromotionItem(CBasketItemDisplay itm, String arrName) { CTable o = GetDbObject(); ArrayList arr = o.GetChildArray(arrName); if (arr == null) { arr = new ArrayList(); o.AddChildArray(arrName, arr); } itm.ExtFlag = "A"; itm.Seq = seq; itm.DisplayCategory = getDisplayCategory(arrName); ObservableCollection <CBasketItemDisplay> items = getNameMapArray(arrName); CTable t = itm.CreateCTableObject(); t.SetFieldValue("INTERNAL_SEQ", seq.ToString()); arr.Add(t); seq++; items.Add(itm); }
public void DeletePromotionItem(CBasketItemDisplay itm, String arrName) { CTable o = GetDbObject(); ArrayList arr = o.GetChildArray(arrName); int seq = itm.Seq; if (arr == null) { return; } foreach (CTable t in arr) { int q = CUtil.StringToInt(t.GetFieldValue("INTERNAL_SEQ")); if (q == seq) { if (itm.ID.Equals("")) { arr.Remove(t); break; } else { t.SetFieldValue("EXT_FLAG", "D"); itm.ExtFlag = "D"; } } } ObservableCollection <CBasketItemDisplay> items = getNameMapArray(arrName); items.Remove(itm); }
private CTable Convert2CTable(CBasketItemDisplay di) { CTable t = new CTable(""); t.SetFieldValue("ITEM_ID", di.ItemID); t.SetFieldValue("ITEM_CODE", di.ItemCode); t.SetFieldValue("ITEM_NAME_THAI", di.ItemName); t.SetFieldValue("ITEM_CATERGORY_ID", di.ItemCategoryID); t.SetFieldValue("SERVICE_ID", di.ServiceID); t.SetFieldValue("SERVICE_CODE", di.ServiceCode); t.SetFieldValue("SERVICE_NAME", di.ServiceName); t.SetFieldValue("SELECTION_TYPE", di.SelectionType); t.SetFieldValue("QUANTITY", di.Quantity.ToString()); t.SetFieldValue("UNIT_PRICE", CUtil.FormatNumber((di.TotalAmount / di.Quantity).ToString(), "0")); t.SetFieldValue("TOTAL_AMOUNT", di.TotalAmount.ToString()); t.SetFieldValue("DISCOUNT", di.Discount.ToString()); t.SetFieldValue("PROMOTION_CODE", di.PromotionCode); t.SetFieldValue("PROMOTION_NAME", di.PromotionName); t.SetFieldValue("SEQUENCE", di.Sequence.ToString()); return(t); }
private void initItems(String arrName) { CTable o = GetDbObject(); ArrayList arr = o.GetChildArray(arrName); ObservableCollection <CBasketItemDisplay> items = getNameMapArray(arrName); if (arr == null) { return; } items.Clear(); foreach (CTable t in arr) { CBasketItemDisplay v = new CBasketItemDisplay(t); items.Add(v); v.Seq = seq; t.SetFieldValue("INTERNAL_SEQ", seq.ToString()); v.ExtFlag = "I"; seq++; } }