Esempio n. 1
0
 /// <summary>
 /// 입력된 금액이 CLEAR되면 처리
 /// </summary>
 /// <param name="e"></param>
 void input_KeyEvent(WSWD.WmallPos.FX.Shared.OPOSKeyEventArgs e)
 {
     if (e.Key.OPOSKey == WSWD.WmallPos.FX.Shared.OPOSMapKeys.KEY_CLEAR)
     {
         ValidateCurrentInput();
     }
     else
     {
         InputText    input = (InputText)this.FocusedControl;
         SaleGridCell cell  = (SaleGridCell)input.Parent;
         if (cell.ColumnIndex == 8)
         {
             ValidateCurrentInput();
         }
     }
 }
Esempio n. 2
0
        /// <summary>
        /// 반납상품교환권 등록화면
        /// <param name="giftButton">해당행의 교환권번호버튼</param>
        /// </summary>
        void ShowDetailExchGiftList(WSWD.WmallPos.POS.FX.Win.UserControls.Button giftButton)
        {
            // TODO
            // 1. Check amount, remain 회수금액 > 0
            // 2. Check 미회수입력
            SaleGridCell cell        = giftButton.Parent as SaleGridCell;
            SaleGridRow  row         = cell.Row;
            string       noRtnReason = row.Cells[8].Controls[0].Text;

            if (!string.IsNullOrEmpty(noRtnReason))
            {
                ShowMessageBox(WSWD.WmallPos.FX.Shared.MessageDialogType.Warning, string.Empty,
                               ERR_MSG_NORTN_RSN_ENTER_INVALID);
                return;
            }

            if (string.IsNullOrEmpty(giftButton.Text))
            {
                return;
            }

            string exchGiftNo = giftButton.Text;

            Int64 cashAmt = TypeHelper.ToInt64(row.Cells[5].Controls[0].Text.Replace(",", ""));
            //Int64 giftAmt = TypeHelper.ToInt64(row.Cells[6].Controls[0].Text.Replace(",", ""));
            Int64 retAmt = TypeHelper.ToInt64(row.Cells[4].Controls[0].Text.Replace(",", ""));

            // SHOW POUPP
            using (var pop = ChildManager.ShowPopup(string.Empty, "WSWD.WmallPos.POS.SL.dll",
                                                    "WSWD.WmallPos.POS.SL.VC.POS_SL_P007", m_rtnPrsGiftList, giftButton.Text, retAmt - cashAmt))
            {
                var res = pop.ShowDialog(this);
                if (res == DialogResult.OK)
                {
                    // Update back to row data from P007 pop
                    var retList = (List <RtnPrsGiftData>)pop.ReturnResult["GIFT_LIST"];
                    m_rtnPrsGiftList[giftButton.Text] = retList;

                    // update total input gift amt;
                    PQ11RespData data = (PQ11RespData)row.ItemData;
                    data.RtnGiftAmt = (long)pop.ReturnResult["GIFT_TOTAL"];
                    row.Cells[6].Controls[0].Text = data.RtnGiftAmt.ToString();
                    data.RtnPrsnList = new List <RtnPrsGiftData>();
                    data.RtnPrsnList.AddRange(retList);
                }
            }
        }
Esempio n. 3
0
        /// <summary>
        /// Process ENTER, CLEAR: next previous (clear)
        /// ENTER KEy for GiftNo; process PG01
        /// ENTER key for Amt: proces Korean won amount
        /// CLEAR key for GiftNo: Reset input current row
        ///
        /// </summary>
        /// <param name="e"></param>
        void POS_SL_P007_KeyEvent(WSWD.WmallPos.FX.Shared.OPOSKeyEventArgs e)
        {
            if (this.FocusedControl != null)
            {
                InputText    it   = (InputText)this.FocusedControl;
                SaleGridCell cell = (SaleGridCell)it.Parent;

                // 교환권번호컬럼
                if (cell.ColumnIndex == 1)
                {
                    // GiftNo, clear, reset input, invalid
                    if (it.Text.Length > 0 && e.Key.OPOSKey == WSWD.WmallPos.FX.Shared.OPOSMapKeys.KEY_BKS)
                    {
                        //2015.08.26 정광호 수정
                        ResetInputs(true);
                        //ResetInputs();
                        return;
                    }

                    if (it.Text.Length > 0 && e.Key.OPOSKey == WSWD.WmallPos.FX.Shared.OPOSMapKeys.KEY_CLEAR)
                    {
                        it.Text     = string.Empty;
                        e.IsHandled = true;
                        //2015.08.26 정광호 수정
                        ResetInputs(true);
                        //ResetInputs();
                        return;
                    }

                    if (it.Text.Length > 0 && e.Key.OPOSKey == WSWD.WmallPos.FX.Shared.OPOSMapKeys.KEY_ENTER)
                    {
                        ValidateGiftNo(false, it.Text);
                        e.IsHandled = true;
                        return;
                    }

                    if (!e.IsControlKey)
                    {
                        StatusMessage = MSG_INPUT;
                    }
                }

                if (e.Key.OPOSKey == WSWD.WmallPos.FX.Shared.OPOSMapKeys.KEY_CLEAR)
                {
                    SaleGridRow row  = (SaleGridRow)cell.Parent;
                    var         itNo = (InputText)row.Cells[1].Controls[0];

                    if (it.Text.Length > 0 && !it.ReadOnly && itNo.Text.Length == 0)
                    {
                        e.IsHandled = true;
                        it.Text     = string.Empty;
                        UpdateTotalGiftAmt();
                        return;
                    }

                    e.IsHandled = true;
                    this.PreviousControl();
                }
                else if (e.Key.OPOSKey == WSWD.WmallPos.FX.Shared.OPOSMapKeys.KEY_ENTER)
                {
                    // validate number enterred
                    if (cell.ColumnIndex == 3 && !it.ReadOnly)
                    {
                        var val = TypeHelper.ToInt64(it.Text.Replace(",", ""));
                        val     = ValidateMoney(val);
                        it.Text = val.ToString();
                    }

                    // update total git amount
                    UpdateTotalGiftAmt();
                    e.IsHandled = true;
                    this.NextControl();
                }
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 행만들기
        /// </summary>
        /// <param name="row"></param>
        void ItemsGrid_BuildRowCells(SaleGridCell cell)
        {
            Label lbl = null;

            switch (cell.ColumnIndex)
            {
            case SLExtensions.CELL_INDEX_NO:
                #region ITEM NO

                lbl           = new Label();
                lbl.Left      = 0;
                lbl.Top       = 0;
                lbl.AutoSize  = false;
                lbl.TextAlign = ContentAlignment.MiddleCenter;
                lbl.Height    = cell.Height;
                lbl.Width     = cell.Width;
                cell.Controls.Add(lbl);

                #endregion
                break;

            case SLExtensions.CELL_INDEX_ITEM:
                #region 상품코드 & 명

                // ITEMCODE
                lbl           = new Label();
                lbl.Left      = 0;
                lbl.Top       = 0;
                lbl.AutoSize  = false;
                lbl.TextAlign = ContentAlignment.MiddleLeft;
                lbl.Height    = cell.Height / 2;
                lbl.ForeColor = Color.FromArgb(110, 56, 180);
                lbl.Width     = cell.Width;
                cell.Controls.Add(lbl);

                // ITEMNAME
                int h = lbl.Height;
                lbl           = new Label();
                lbl.Left      = 0;
                lbl.Top       = cell.Height - h;
                lbl.AutoSize  = false;
                lbl.Height    = cell.Height / 2;
                lbl.Width     = cell.Width;
                lbl.ForeColor = Color.FromArgb(110, 56, 180);
                cell.Controls.Add(lbl);

                #endregion
                break;

            case SLExtensions.CELL_INDEX_QTY:
                #region 수량

                lbl = new Label()
                {
                    Left      = 0,
                    Top       = 0,
                    Width     = cell.Width,
                    Height    = cell.Height,
                    AutoSize  = false,
                    TextAlign = ContentAlignment.MiddleRight
                };

                cell.Controls.Add(lbl);
                #endregion
                break;

            case SLExtensions.CELL_INDEX_PRICE:
                #region 단가

                lbl = new Label()
                {
                    Left      = 0,
                    Top       = 0,
                    Width     = cell.Width,
                    Height    = cell.Height,
                    AutoSize  = false,
                    TextAlign = ContentAlignment.MiddleRight
                };
                cell.Controls.Add(lbl);

                #endregion

                break;

            case SLExtensions.CELL_INDEX_DISCP:
                #region % columns

                lbl = new Label()
                {
                    Left      = 0,
                    Top       = 0,
                    Width     = cell.Width,
                    Height    = cell.Height,
                    AutoSize  = false,
                    TextAlign = ContentAlignment.MiddleRight
                };
                cell.Controls.Add(lbl);

                #endregion
                break;

            case SLExtensions.CELL_INDEX_DISCA:
                #region Discount - 할인

                lbl = new Label()
                {
                    Left      = 0,
                    Top       = 0,
                    Width     = cell.Width,
                    Height    = cell.Height,
                    AutoSize  = false,
                    TextAlign = ContentAlignment.MiddleRight
                };
                cell.Controls.Add(lbl);

                #endregion

                break;

            case SLExtensions.CELL_INDEX_AMT:
                #region 금액 - Amount

                lbl = new Label()
                {
                    Left      = 0,
                    Top       = 0,
                    Width     = cell.Width,
                    Height    = cell.Height,
                    AutoSize  = false,
                    TextAlign = ContentAlignment.MiddleRight
                };
                cell.Controls.Add(lbl);

                #endregion

                break;

            default:
                break;
            }
        }
Esempio n. 5
0
        /// <summary>
        /// 현재입력중인 데이타를 확인한다
        /// </summary>
        void ValidateCurrentInput()
        {
            if (this.FocusedControl == null)
            {
                return;
            }

            InputText input = (InputText)this.FocusedControl;

            if ((input.Tag == null ? false : (bool)input.Tag))
            {
                return;
            }

            SaleGridCell cell = (SaleGridCell)input.Parent;

            Int64 val = 0;

            if (cell.ColumnIndex != 8 &
                input.DataType == WSWD.WmallPos.POS.FX.Shared.InputTextDataType.Numeric)
            {
                val        = TypeHelper.ToInt64(input.Text);
                val        = ValidateMoney(val);
                input.Text = val.ToString();
            }

            PQ11RespData data = (PQ11RespData)cell.Row.ItemData;

            if (data == null)
            {
                return;
            }

            // todo
            // 1.aappl value to data item;

            switch (cell.ColumnIndex)
            {
            case 5:
                // if cash column; it ExchGiftNo empty, only accept cash
                if (string.IsNullOrEmpty(data.ExchGiftNo))
                {
                    data.RtnCashAmt     = val;
                    data.RtnGiftCashAmt = 0;
                }
                else
                {
                    // if not, accept cash stands for gift
                    data.RtnGiftCashAmt = val;
                    data.RtnCashAmt     = 0;
                }
                break;

            case 6:
                data.RtnGiftAmt = val;
                break;

            case 7:
                // 현물금액
                data.RtnPresentAmt = val;
                break;

            default:
                //if (!"1".Equals(input.Text) && !string.IsNullOrEmpty(input.Text))
                //{
                //    input.Text = "2";
                //}

                if (!string.IsNullOrEmpty(input.Text))
                {
                    if (!m_nonRtnReasons.ContainsKey(input.Text))
                    {
                        input.Text = string.Empty;
                    }
                }

                data.RtnCantRsn = input.Text;
                break;
            }
        }