Пример #1
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtID.Text.Length < 1)
                {
                    MessageBox.Show("삭제할 품목을 다시 선택해주세요");
                    return;
                }
                else
                {
                    if (MessageBox.Show($"정말로 ID : {txtID.Text}을 삭제하시겠습니까?", "삭제확인", MessageBoxButtons.OKCancel)
                        == DialogResult.OK)
                    {
                        ItemDB db      = new ItemDB();
                        int    uitemID = Convert.ToInt32(txtID.Text);
                        db.DeleteItem(uitemID);
                        MessageBox.Show($"{txtID.Text}가 냉장고에서 삭제되었습니다.");
                        db.Dispose();
                        DataLoad();
                        txtClear();
                    }
                    else
                    {
                        MessageBox.Show("삭제를 취소하셨습니다.");
                        return;
                    }
                }
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }


            //ItemDB db = new ItemDB();
            //int uitemID = Convert.ToInt32(txtItemName.Tag);
        }
Пример #2
0
        private void btnInsert_Click(object sender, EventArgs e)
        {
            if (rbRef1.Checked)
            {
                it.stoPlace = rbRef1.Text;
                rbCheck     = true;
            }
            else if (rbRef2.Checked)
            {
                it.stoPlace = rbRef2.Text;
                rbCheck     = true;
            }
            else
            {
                rbCheck = false;
            }

            StringBuilder sb = new StringBuilder();

            //sb.AppendLine("학번은 10자리로 입력하세요.");
            if (cbRefName.Text.Length < 1)
            {
                sb.AppendLine("냉장고를 선택하세요");
            }
            if (txtItmeType.Text.Length < 1)
            {
                sb.AppendLine("품목종류를 선택하세요");
            }
            if (txtItemName.Text.Length < 1)
            {
                sb.AppendLine("품목명을 선택하세요");
            }
            if (rbCheck == false)
            {
                sb.AppendLine("저장장소를 고르세요");
            }
            if (txtNum.Text.Length < 1)
            {
                sb.AppendLine("갯수를 작성하세요");
            }
            else if (int.TryParse(txtNum.Text, out int num) == false)
            {
                sb.AppendLine("갯수칸에는 숫자만 입력하세요");
            }

            if (sb.Length > 0)
            {
                MessageBox.Show(sb.ToString());
                return;
            }
            else
            {
                // itemID, refID, amount, count, leftCount, stoPlace, dDay
                try
                {
                    it.itemID     = Convert.ToInt32(cbItemName.Tag);
                    it.refID      = Convert.ToInt32(cbRefName.Tag);
                    it.amount     = int.Parse(txtAmount.Text);
                    it.leftCount  = int.Parse(txtNum.Text);
                    it.leftCount  = int.Parse(txtNum.Text);
                    it.dDay       = dtpDday.Value.Date;
                    it.leftAmount = it.amount * it.leftCount;
                    it.itemUnit   = cbAmountType.Text;
                    ItemDB idb = new ItemDB();
                    idb.InsertItem(it);
                    idb.Dispose();
                    MessageBox.Show($"{txtItemName.Text} {txtAmount.Text}{cbAmountType.Text} " +
                                    $"{txtNum.Text}개를 {cbRefName.Text}에 넣었습니다");
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.Message);
                }
            }
        }
Пример #3
0
        private void btnUpdate_Click(object sender, EventArgs e)
        {
            if (rbRef1.Checked)
            {
                it.stoPlace = "냉장";
                bChecked    = true;
            }
            else if (rbRef2.Checked)
            {
                it.stoPlace = "냉동";
                bChecked    = true;
            }
            else
            {
                bChecked = false;
            }

            StringBuilder sb = new StringBuilder();

            if (txtID.Text.Length < 1)
            {
                sb.AppendLine("품목을 더블클릭하여 선택하세요");
            }
            if (cbRefName.Text.Length < 1)
            {
                sb.AppendLine("냉장고를 선택하세요");
            }
            if (txtItmeType.Text.Length < 1)
            {
                sb.AppendLine("품목종류를 선택하세요");
            }
            if (txtItemName.Text.Length < 1)
            {
                sb.AppendLine("품목명을 선택하세요");
            }
            if (bChecked == false)
            {
                sb.AppendLine("저장장소를 고르세요");
            }
            if (txtNum.Text.Length < 1)
            {
                sb.AppendLine("갯수를 작성하세요");
            }
            else if (int.TryParse(txtNum.Text, out int num) == false)
            {
                sb.AppendLine("갯수칸에는 숫자만 입력하세요");
            }

            if (sb.Length > 0)
            {
                MessageBox.Show(sb.ToString());
                return;
            }
            else
            {
                try
                {
                    //refItemID, itemID, refID, amount, count, leftCount, stoPlace, dDay
                    ItemDB db = new ItemDB();
                    it.refItemID  = Convert.ToInt32(txtID.Text);
                    it.itemID     = Convert.ToInt32(cbItemName.Tag);
                    it.refID      = Convert.ToInt32(cbRefName.Tag);
                    it.amount     = int.Parse(txtAmount.Text);
                    it.leftCount  = int.Parse(txtNum.Text);
                    it.leftAmount = it.amount * it.leftCount;
                    it.itemUnit   = cbAmountType.Text;
                    it.dDay       = dtpDate.Value.Date;
                    db.UpdateItems(it);
                    MessageBox.Show($"{txtID.Text}를 수정하였습니다");
                    db.Dispose();
                    DataLoad();
                    txtClear();
                }
                catch (Exception err)
                {
                    MessageBox.Show(err.Message);
                }
            }
        }
Пример #4
0
        private void btnWaste_Click(object sender, EventArgs e)
        {
            ItemDB db = new ItemDB();

            if (txtName.Text.Length < 1 || cbItemType.Text.Length < 1)
            {
                MessageBox.Show("소비할 품목을 선택하세요");
                return;
            }
            else if (rbCount.Checked == false && rbAmount.Checked == false)
            {
                MessageBox.Show("소비할 방법을 선택하여 갯수 또는 용량을 입력하세요");
                return;
            }
            //leftct = 현재갯수, leftat = 현재용량, gat = 개당갯수
            else if (rbCount.Checked)                     //갯수로 소비
            {
                int ct = Convert.ToInt32(numCount.Value); //소비할 갯수
                if (numCount.Value < 1)
                {
                    MessageBox.Show("0보다 큰수를 선택해주세요");
                    return;
                }
                else
                {
                    string del     = "";
                    int    rItemID = Convert.ToInt32(txtName.Tag);
                    it.refItemID = rItemID; //아이템 아이디
                    if (ct > leftct)
                    {
                        MessageBox.Show("현재 갯수보다 더 적은 갯수를 소비해주세요");
                        return;
                    }
                    else if (ct == leftct)
                    {
                        items.DeleteItem(rItemID);
                        db.Dispose();
                        del = " 남은 갯수를 전부 소비하였습니다";
                    }
                    else if (leftat % gat == 0)              //남은용량이 개당용량으로 나눈 나머지가 0일때
                    {
                        it.leftAmount = leftat - (ct * gat); //용량은 소비전용량 - (소비할 갯수*개당용량)
                        it.leftCount  = leftct - ct;         //갯수는 현재 갯수 - 소비할 갯수
                        items.WasteItem(it);
                        db.Dispose();
                    }
                    else // 남은용량이 개당용량으로 나눈 나머지가 0이 아닐떄
                    {
                        it.leftAmount = ((ct - 1) * gat) + (leftat % gat); // ((소비갯수-1)*개당용량) + 소비전용량%개당용량
                        it.leftCount  = leftct - ct; //갯수는 현재 갯수 - 소비할 갯수
                        items.WasteItem(it);
                        db.Dispose();
                    }
                    MessageBox.Show($"{txtName.Text} {ct}개를 {refName}에서 꺼냈습니다{del}.");
                    cbItemType.Text = "";
                    txtName.Text    = "";
                    rbCount.Checked = false;
                    DataLoad();
                }
            }
            else if (rbAmount.Checked)
            {
                int at = int.Parse(txtAmount.Text); //소비할 용량
                if (txtAmount.Text.Length < 1)
                {
                    MessageBox.Show("소비할 용량을 적어주세요");
                    return;
                }
                else
                {
                    string del     = "";
                    int    rItemID = Convert.ToInt32(txtName.Tag);
                    it.refItemID = rItemID; //아이템 아이디
                    int sbhat = leftat - at;
                    if (at > leftat)
                    {
                        MessageBox.Show("남은 용량보다 적은 용량을 적어주세요");
                        return;
                    }
                    else if (at == leftat)
                    {
                        items.DeleteItem(rItemID);
                        db.Dispose();
                        del = "남은 용량을 전부 소비하였습니다";
                    }
                    else if (sbhat % gat == 0)               //남은용량이 개당용량으로 나눈 나머지가 0일때
                    {
                        it.leftCount  = (leftat - at) / gat; // 남은 갯수 = (소비전용량- 소비할 용량)/개당용량
                        it.leftAmount = leftat - at;         //남은용량 = 소비전용량 - 소비할 용량
                        items.WasteItem(it);
                        db.Dispose();
                    }
                    else// 남은용량이 개당용량으로 나눈 나머지가 0이 아닐떄
                    {
                        it.leftCount  = ((leftat - at) / gat) + 1; // 남은 갯수 = ((소비전용량- 소비할 용량)/개당용량)+1
                        it.leftAmount = leftat - at; //남은용량 = 소비전용량 - 소비할 용량
                        items.WasteItem(it);
                        db.Dispose();
                    }
                    MessageBox.Show($"{txtName.Text} {at}{lblUnit.Text}를 {refName}에서 꺼냈습니다{del}.");
                    cbItemType.Text  = "";
                    txtName.Text     = "";
                    rbAmount.Checked = false;
                    DataLoad();
                }
            }
        }