Beispiel #1
0
        private void Dgv입고등록_CellEndEdit(object sender, DataGridViewCellEventArgs e)
        {
            DataGridView dgv      = (DataGridView)sender;
            int          nowColum = dgv.CurrentCell.ColumnIndex;
            int          nowRow   = dgv.CurrentCell.RowIndex;
            int          maxRow   = dgv.RowCount;
            int          maxColum = dgv.ColumnCount;

            if (nowColum == maxColum - 3)
            {
                if (dgv.Rows[nowRow].Cells[nowColum].Value == null)
                {
                    MessageBox.Show("데이터를 입력하세요");
                    return;
                }
                else
                {
                    if (DB.발주서.Is발주번호(dgv.Rows[nowRow].Cells[nowColum].Value.ToString()).Count == 0)
                    {
                        MessageBox.Show("발주되지 않은 발주서입니다");
                        dgv.CurrentCell = dgv[1, 0];
                        return;
                    }
                    else
                    {
                        dgv입고등록리스트.Rows.Clear();
                        dgv.CurrentRow.Cells[0].Value = (DB.입고등록.GetCount() + 1).ToString();
                        dgv.CurrentRow.Cells[2].Value = DB.일반거래처.Get공급업체번호From발주서(dgv.Rows[nowRow].Cells[nowColum].Value.ToString());
                        dgv.CurrentRow.Cells[3].Value = DateTime.Today.ToShortDateString();
                        if (DB.입고등록.Is입고등록(dgv.CurrentRow.Cells[0].Value.ToString()).Count == 0)
                        {
                            ClassLibrary.입고등록 입고등록정보 = new ClassLibrary.입고등록();
                            입고등록정보.입고등록번호 = dgv.CurrentRow.Cells[0].Value.ToString();
                            입고등록정보.공급업체번호 = DB.일반거래처.Get공급업체번호From이름(dgv.CurrentRow.Cells[2].Value.ToString()).Select(x => x.거래처코드번호).FirstOrDefault();
                            입고등록정보.발주번호   = dgv.CurrentRow.Cells[1].Value.ToString();
                            입고등록정보.검사일자   = DateTime.Today;
                            if (DialogResult.OK == MessageBox.Show("등록하시겠습니까?", "알림", MessageBoxButtons.OKCancel))
                            {
                                DB.입고등록.Insert(입고등록정보);

                                dgv.CurrentCell = dgv[nowColum, nowRow];
                                dgv.Rows.Add();
                                dgv입고등록리스트.Rows.Add();
                                dgv입고등록리스트.Focus();
                                dgv입고등록리스트.CurrentCell = dgv입고등록리스트[0, 0];
                            }
                        }
                    }
                }
            }
        }
Beispiel #2
0
        private void Dgv입고등록_KeyDown(object sender, KeyEventArgs e)
        {
            DataGridView dgv = (DataGridView)sender;

            if (e.KeyCode == Keys.Delete)
            {
                e.SuppressKeyPress = true;
                if (DB.입고등록.Is입고등록(dgv.CurrentRow.Cells[0].Value.ToString()).Count > 0)
                {
                    ClassLibrary.입고등록 입고등록 = new ClassLibrary.입고등록();
                    입고등록.입고등록번호 = dgv.CurrentRow.Cells[0].Value.ToString();
                    입고등록.발주번호   = dgv.CurrentRow.Cells[1].Value.ToString();
                    입고등록.공급업체번호 = DB.일반거래처.Get공급업체번호From이름(dgv.CurrentRow.Cells[2].Value.ToString()).Select(x => x.거래처코드번호).FirstOrDefault();
                    입고등록.검사일자   = DateTime.Parse(dgv.CurrentRow.Cells[3].Value.ToString());

                    if (DB.입고등록리스트.Search입고등록리스트(dgv.CurrentRow.Cells[0].Value.ToString()).Count > 0)
                    {
                        var list =
                            DB.입고등록리스트.Search입고등록리스트(dgv.CurrentRow.Cells[0].Value.ToString());

                        입고등록리스트 입고등록리스트 = new 입고등록리스트();
                        for (int i = 0; i < list.Count; i++)
                        {
                            if (DB.불량상세정보.Search불량상세정보(dgv.CurrentRow.Cells[0].Value.ToString(),
                                                       list[i].자재번호).Count > 0)
                            {
                                불량상세정보 불량상세정보 = new 불량상세정보();


                                if (DB.반품처리서.Search반품처리서From입고등록번호(dgv.CurrentRow.Cells[0].Value.ToString()).Count > 0)
                                {
                                    var list4 = DB.반품처리서.Search반품처리서From입고등록번호(dgv.CurrentRow.Cells[0].Value.ToString());
                                    for (int j = 0; j < list4.Count; j++)
                                    {
                                        var list5 = DB.반품처리리스트.Search반품처리리스트(list4[j].반품처리서번호);
                                        foreach (var item in list5)
                                        {
                                            DB.반품처리리스트.Delete(item);
                                        }
                                        DB.반품처리서.Delete(list4[j]);
                                    }
                                }

                                var list1 = DB.불량상세정보.Search불량상세정보(dgv.CurrentRow.Cells[0].Value.ToString(),
                                                                   list[i].자재번호);

                                불량상세정보.입고등록번호 = dgv.CurrentRow.Cells[0].Value.ToString();
                                불량상세정보.자재번호   = list[i].자재번호;

                                for (int j = 0; j < list1.Count; j++)
                                {
                                    불량상세정보.불량코드번호 = list1[j].불량코드번호;
                                    불량상세정보.불량수량   = list1[j].불량수량;
                                    DB.불량상세정보.Delete(불량상세정보);
                                }
                            }
                            var list3 = DB.자재.Get자재(list[i].자재번호).FirstOrDefault();
                            list3.재고량 += (int)list[i].양품수량;
                            DB.자재.Update(list3);
                            입고등록리스트.입고등록번호 = list[i].입고등록번호;
                            입고등록리스트.자재번호   = list[i].자재번호;
                            입고등록리스트.양품수량   = list[i].양품수량;


                            입고등록리스트.불량수량 = list[i].불량수량;
                            DB.입고등록리스트.Delete(입고등록리스트);
                        }
                    }
                    DB.입고등록.Delete(입고등록);

                    dgv입고등록.Rows.Clear();
                    dgv입고등록.Rows.Add();

                    var list2 = DB.입고등록.입고등록정보(txb거래처이름.Text, txb발주번호.Text,
                                               FirstDate.Value, LastDate.Value);

                    for (int i = 0; i < list2.Count; i++)
                    {
                        dgv입고등록.Rows[i].Cells[0].Value = list2[i].입고등록번호;
                        dgv입고등록.Rows[i].Cells[1].Value = list2[i].발주번호;
                        dgv입고등록.Rows[i].Cells[2].Value = list2[i].공급업체번호;
                        dgv입고등록.Rows[i].Cells[3].Value = list2[i].검사일자;
                        dgv입고등록.Rows.Add();
                    }
                }
            }
        }