private void Btn삭제_Click(object sender, EventArgs e) { 공급자재리스트 공급자재리스트 = DB.공급자재리스트.Search공급자재리스트(dgv자재.CurrentRow.Cells[0].Value.ToString() ).FirstOrDefault(); DB.공급자재리스트.Delete(공급자재리스트); 자재 orderList = DB.자재.Get자재(dgv자재.CurrentRow.Cells[0].Value.ToString()).First(); DB.자재.Delete(orderList); MessageBox.Show("삭제"); 조회(); txb자재번호.Text = null; txb자재이름.Text = null; txb품목군.Text = null; txb안전재고량.Text = null; txb재고량.Text = null; txb리드타임.Text = null; cbb검사여부.Text = null; txb단위.Text = null; txb관리단위.Text = null; txb구매단가.Text = null; txb공급업체.Text = null; }
private void Btn변경_Click(object sender, EventArgs e) { string 공급업체번호 = DB.일반거래처.Get공급업체번호From이름(txb공급업체.Text).Select(x => x.거래처코드번호).First(); if (DB.공급자재리스트.Search공급자재리스트(dgv자재.CurrentRow.Cells[0].Value.ToString()).Count == 0) { 공급자재리스트 공급자재리스트 = new 공급자재리스트(); 공급자재리스트.자재번호 = txb자재번호.Text; 공급자재리스트.공급업체번호 = DB.일반거래처.Get공급업체번호From이름(txb공급업체.Text).Select(x => x.거래처코드번호).First(); DB.공급자재리스트.Update(공급자재리스트); } 자재 productInfo = new 자재(); productInfo.자재번호 = txb자재번호.Text; productInfo.자재명 = txb자재이름.Text; productInfo.품목군 = txb품목군.Text; if (cbb검사여부.Text == "1.예") { productInfo.검사여부 = true; } else { productInfo.검사여부 = false; } productInfo.리드타임 = int.Parse(txb리드타임.Text); productInfo.재고량 = int.Parse(txb재고량.Text); productInfo.안전재고량 = int.Parse(txb안전재고량.Text); productInfo.단위 = txb단위.Text; productInfo.관리단위 = txb관리단위.Text; productInfo.구매단가 = int.Parse(txb구매단가.Text); productInfo.품목군 = txb품목군.Text; DB.자재.Update(productInfo); MessageBox.Show("변경"); 조회(); }
private void Btn등록_Click(object sender, EventArgs e) { if (DB.일반거래처.Get공급업체번호From이름(txb공급업체.Text).Count == 0) { MessageBox.Show($"{txb공급업체.Text}라는 공급업체가 등록되지 않았습니다"); return; } 자재 productInfo = new 자재(); 공급자재리스트 공급자재리스트 = new 공급자재리스트(); productInfo.자재번호 = txb자재번호.Text; productInfo.자재명 = txb자재이름.Text; productInfo.품목군 = txb품목군.Text; if (cbb검사여부.Text == "1.예") { productInfo.검사여부 = true; } else { productInfo.검사여부 = false; } productInfo.리드타임 = int.Parse(txb리드타임.Text); productInfo.재고량 = int.Parse(txb재고량.Text); productInfo.안전재고량 = int.Parse(txb안전재고량.Text); productInfo.단위 = txb단위.Text; productInfo.관리단위 = txb관리단위.Text; productInfo.구매단가 = int.Parse(txb구매단가.Text); productInfo.품목군 = txb품목군.Text; DB.자재.Insert(productInfo); MessageBox.Show("등록"); 공급자재리스트.자재번호 = txb자재번호.Text; 공급자재리스트.공급업체번호 = DB.일반거래처.Get공급업체번호From이름(txb공급업체.Text).Select(x => x.거래처코드번호).First(); DB.공급자재리스트.Insert(공급자재리스트); }
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 == 0) { if (dgv.Rows[nowRow].Cells[nowColum].Value == null) { MessageBox.Show("데이터를 입력하세요"); return; } else { if (DB.자재.Get자재(dgv.CurrentRow.Cells[0].Value.ToString()).Count == 0) { MessageBox.Show("등록되지 않은 자재입니다"); } else { if (DB.발주리스트.Search발주리스트(dgv입고등록.CurrentRow.Cells[1].Value.ToString(), dgv.CurrentRow.Cells[0].Value.ToString()).Count == 0) { MessageBox.Show("발주한 자재가 아닙니다"); return; } } } } if (nowColum == 1) { if (dgv.Rows[nowRow].Cells[nowColum].Value == null) { MessageBox.Show("데이터를 입력하세요"); return; } } //입고등록리스트 2번째 칸이 되었을 때 if (nowColum == 2) { if (dgv.Rows[nowRow].Cells[nowColum].Value == null) { MessageBox.Show("데이터를 입력하세요"); return; } else //값이 다 들어갔을 때 { string 자재번호 = dgv.CurrentRow.Cells[0].Value.ToString(); 반품처리서 반품처리서 = new 반품처리서(); if (DB.입고등록리스트.Search입고등록리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), 자재번호).Count == 0) { 입고등록리스트 입고등록리스트 = new 입고등록리스트(); 입고등록리스트.입고등록번호 = dgv입고등록.CurrentRow.Cells[0].Value.ToString(); 입고등록리스트.자재번호 = dgv.CurrentRow.Cells[0].Value.ToString(); 입고등록리스트.양품수량 = int.Parse(dgv.CurrentRow.Cells[1].Value.ToString()); 입고등록리스트.불량수량 = int.Parse(dgv.CurrentRow.Cells[2].Value.ToString()); DB.입고등록리스트.Insert(입고등록리스트); 자재 자재 = DB.자재.Get자재(입고등록리스트.자재번호).FirstOrDefault(); 자재.재고량 += (int)입고등록리스트.양품수량; DB.자재.Update(자재); //발주리스트에 양품수량인 갯수를 뺴줌으로 인해 발주량이 몇개가 와야하는지 알 수 있음 if (입고등록리스트.불량수량 > 0) { if (DB.반품처리서.Search반품처리서From입고등록번호(입고등록리스트.입고등록번호).Count == 0) { 반품처리서.반품처리서번호 = (DB.반품처리서.GetCount() + 1).ToString(); 반품처리서.입고검사서번호 = 입고등록리스트.입고등록번호; 반품처리서.공급업체번호 = DB.입고등록.Is입고등록(입고등록리스트.입고등록번호).Select(x => x.공급업체번호).FirstOrDefault(); 반품처리서.반품처리날짜 = DateTime.Today.Date; DB.반품처리서.Insert(반품처리서); } 반품처리리스트 반품처리리스트 = new 반품처리리스트(); 반품처리리스트.반품처리번호 = DB.반품처리서.Search반품처리서From입고등록번호(입고등록리스트.입고등록번호).Select(x => x.반품처리서번호).FirstOrDefault(); 반품처리리스트.자재번호 = 입고등록리스트.자재번호; 반품처리리스트.수량 = (int)입고등록리스트.불량수량; DB.반품처리리스트.Insert(반품처리리스트); } } else //수량 수정시 { var list = DB.입고등록리스트.Search입고등록리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), DB.자재.Get자재번호(dgv.CurrentRow.Cells[0].Value.ToString()).Select(x => x.자재번호).FirstOrDefault()).FirstOrDefault(); 입고등록리스트 입고등록리스트 = new 입고등록리스트(); 입고등록리스트.입고등록번호 = dgv입고등록.CurrentRow.Cells[0].Value.ToString(); 입고등록리스트.자재번호 = dgv.CurrentRow.Cells[0].Value.ToString(); //양품수량 수정 if (list.양품수량 != int.Parse(dgv입고등록리스트.CurrentRow.Cells[1].Value.ToString())) { //수량이 변하면 기존의 양품수량을 빼준다음 변경된 수량을 다시 더해주면서 업데이트 var 자재 = DB.자재.Get자재(dgv.CurrentRow.Cells[0].Value.ToString()).FirstOrDefault(); 자재.재고량 -= (int)list.양품수량; 자재.재고량 += int.Parse(dgv입고등록리스트.CurrentRow.Cells[1].Value.ToString()); DB.자재.Update(자재); //기존의 입고등록리스트 업데이트 입고등록리스트.양품수량 = int.Parse(dgv입고등록리스트.CurrentRow.Cells[1].Value.ToString()); 입고등록리스트.불량수량 = int.Parse(dgv입고등록리스트.CurrentRow.Cells[2].Value.ToString()); DB.입고등록리스트.Update(입고등록리스트); } //불량수량 수정 if (list.불량수량 != int.Parse(dgv입고등록리스트.CurrentRow.Cells[2].Value.ToString())) { 입고등록리스트.불량수량 = int.Parse(dgv입고등록리스트.CurrentRow.Cells[2].Value.ToString()); 입고등록리스트.양품수량 = int.Parse(dgv입고등록리스트.CurrentRow.Cells[1].Value.ToString()); //불량수량에 대한 불량상세정보 지우기 if (DB.불량상세정보.Search불량상세정보(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), dgv.CurrentRow.Cells[0].Value.ToString()).Count != 0) { 불량상세정보 불량상세정보 = new 불량상세정보(); var list1 = DB.불량상세정보.Search불량상세정보(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), DB.자재.Get자재번호(dgv.CurrentRow.Cells[0].Value.ToString()).Select(x => x.자재번호).FirstOrDefault()); 불량상세정보.입고등록번호 = dgv입고등록.CurrentRow.Cells[0].Value.ToString(); 불량상세정보.자재번호 = dgv.CurrentRow.Cells[0].Value.ToString(); for (int j = 0; j < list1.Count; j++) { 불량상세정보.불량코드번호 = list1[j].불량코드번호; 불량상세정보.불량수량 = list1[j].불량수량; DB.불량상세정보.Delete(불량상세정보); } } //불량수량이 0으로 변경된 경우 if (int.Parse(dgv입고등록리스트.CurrentRow.Cells[2].Value.ToString()) == 0) { var Delete반품처리리스트 = DB.반품처리리스트.Search반품처리리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), dgv입고등록리스트.CurrentRow.Cells[0].Value.ToString()).FirstOrDefault(); DB.반품처리리스트.Delete(Delete반품처리리스트); //반품서에 반품자재가 하나였는데 불량이 없어지면 반품서도 삭제, 그게 아니면 살려두기 if (DB.반품처리리스트.Search반품처리리스트(Delete반품처리리스트.반품처리번호).Count == 0) { 반품처리서 Delete반품처리서 = DB.반품처리서.Search반품처리서(Delete반품처리리스트.반품처리번호).FirstOrDefault(); DB.반품처리서.Delete(Delete반품처리서); } } else { if (DB.반품처리서.Search반품처리서From입고등록번호(dgv입고등록.CurrentRow.Cells[0].Value.ToString()).Count == 0) { 반품처리서.공급업체번호 = dgv입고등록.CurrentRow.Cells[2].Value.ToString(); 반품처리서.반품처리서번호 = (DB.반품처리서.GetCount() + 1).ToString(); 반품처리서.입고검사서번호 = dgv입고등록.CurrentRow.Cells[0].Value.ToString(); 반품처리서.반품처리날짜 = DateTime.Today.Date; DB.반품처리서.Insert(반품처리서); } if (DB.반품처리리스트.Search반품처리리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), dgv입고등록리스트.CurrentRow.Cells[0].Value.ToString()).Count != 0) { string 반품처리번호 = DB.반품처리리스트.Search반품처리리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), dgv입고등록리스트.CurrentRow.Cells[0].Value.ToString()).Select(x => x.반품처리번호).FirstOrDefault(); var Updata반품처리서 = DB.반품처리서.Search반품처리서(반품처리번호).FirstOrDefault(); Updata반품처리서.반품처리날짜 = DateTime.Today.Date; DB.반품처리서.Update(Updata반품처리서); var Updata반품처리리스트 = DB.반품처리리스트.Search반품처리리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), dgv입고등록리스트.CurrentRow.Cells[0].Value.ToString()).FirstOrDefault(); Updata반품처리리스트.수량 = (int)입고등록리스트.불량수량; DB.반품처리리스트.Update(Updata반품처리리스트); } if (DB.반품처리리스트.Search반품처리리스트(dgv입고등록.CurrentRow.Cells[0].Value.ToString(), dgv입고등록리스트.CurrentRow.Cells[0].Value.ToString()).Count == 0) { 반품처리리스트 반품처리리스트 = new 반품처리리스트(); 반품처리리스트.반품처리번호 = DB.반품처리서.Search반품처리서From입고등록번호(dgv입고등록.CurrentRow.Cells[0].Value.ToString()).Select(x => x.반품처리서번호).FirstOrDefault(); 반품처리리스트.자재번호 = dgv.CurrentRow.Cells[0].Value.ToString(); 반품처리리스트.수량 = int.Parse(dgv입고등록리스트.CurrentRow.Cells[2].Value.ToString()); DB.반품처리리스트.Insert(반품처리리스트); } } DB.입고등록리스트.Update(입고등록리스트); } dgv불량상세정보.Rows.Clear(); dgv불량상세정보.Rows.Add(); } } } }