public RentAndReturnForm()
        {
            InitializeComponent();
            sd = SharingData.GetInstance();

            itemData = new itemVO();
            rentData = new rentVO();
        }
Beispiel #2
0
        } // Constructor

        // Login 폼이 로드되었을 경우
        private void LoginForm_Load(object sender, EventArgs e)
        {
            // 해당 폼이 로드됬을 경우는
            // 1. 프로그램이 처음 시작되었을 때
            // 2. 뒤로가기로 돌아왔을때

            // 2번의 경우에서 계속해서 텍스트파일에 데이터를 쓰게되므로
            // SharingData 쪽 체크값을 이용해 프로그램이 구동될 동안은 한번만 쓰도록 설정
            if (!sd.LoginWriteCheck)
            {
                // Account Text File Read
                var lines = File.ReadAllLines("Account.txt", Encoding.Default);
                foreach (var cellValues in lines)
                {
                    var cellArray = cellValues.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

                    AccountVO accountData = new AccountVO(cellArray[0], cellArray[1], cellArray[2], cellArray[3]);
                    sd.AccountList.Add(accountData);
                } // foreach

                // Item Text File Read
                lines = File.ReadAllLines("Item.txt", Encoding.Default);
                foreach (var cellValues in lines)
                {
                    var cellArray = cellValues.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

                    itemVO itemData = new itemVO(cellArray[0], cellArray[1], cellArray[2]);
                    sd.ItemList.Add(itemData);
                } // foreach

                // Rent Text File Read
                lines = File.ReadAllLines("Rent.txt", Encoding.Default);
                foreach (var cellValues in lines)
                {
                    var cellArray = cellValues.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

                    rentVO rentData = new rentVO(cellArray[0], cellArray[1], cellArray[2], cellArray[3]);
                    sd.RentList.Add(rentData);
                } // foreach
                sd.LoginWriteCheck = true;
            }
        } // M.LoginForm_Load
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            // 숫자만 입력할 수 있도록
            int keyCode = (int)e.KeyChar;

            if ((keyCode < 48 || keyCode > 57) && keyCode != 8 && !keyCode.Equals(46))
            {
                e.Handled = true;
            }

            // 엔터키가 입력되면
            if (e.KeyChar.Equals((char)Keys.Enter))
            {
                sd.InputNumData = txtBox_inputNum.Text;

                // 해당 물품 갯수 차감
                var calc = int.Parse(sd.ItemList[rarf.Index].ItemNum) - int.Parse(sd.InputNumData);
                if (calc < 0)
                {
                    MessageBox.Show("대여하려는 물품의 갯수가 수량보다 많습니다");
                    return;
                }
                sd.ItemList[rarf.Index].ItemNum = calc.ToString();

                // 대여자 쪽 정보 추가
                rentVO rentData = new rentVO(sd.ItemList[rarf.Index].ItemNo, DateTime.Now.ToShortDateString(), sd.CurrentId, sd.InputNumData);
                sd.RentList.Add(rentData);

                // RentAndReturnForm 쪽의 GridView 2개를 Refresh
                rarf.rentGridViewRefresh();
                rarf.itemGridViewRefresh();

                // Closed Event 발생
                this.OnFormClosed(null);
            }

            // ESC 입력되면 창 종료
            if (e.KeyChar.Equals((char)Keys.Escape))
            {
                this.OnFormClosed(null);
            }
        }