Files
Unimarc/unimarc/WindowsFormsApp1/납품관리/Book_Lookup.cs
SeungHo Yang 2596ff751a =====* unimarc *=====
------------------------

=====* ISBN 체크 프로그램  *===== ★작업완료★
 a. 현재 마크팀 배포완료. - 추후 수정사항발생시 수정할 것.

------------------------

===== 작업중 =====
목록집계 폼 재 수정작업 완료 - 확인 및 수정 필요.

===== 보류 =====
 b. 마크목록 폼 작성중
  1. 엑셀반출 기능 추가중 사용 작업대기중

 c. 마크 반입 폼 수정중
  1. 불러오기는 되나 저장 기능이 필요함.

===== 완료 =====
1. 주문관리 팩스연동 완료
2. 전송된 팩스 확인 작업개시, 이메일 전송모듈 수정완료.
3. 주문관리에서 주문처와 목록 검색하는 폼 검색 모듈도 재수정 완료함.
4. 데이터베이스 내 이미지URL을 가져오는작업 완료

ISBN 체크 프로그램 => 본프로그램에 이식중.
ㄴ> 코드는 다 옮겼으나 기존 사용하던 방식과 조금 달라서 버그발생 가능성 있음.
ㄴ> 버그 체크 계속 해볼것. 21-04-15
ㄴ> 21_04_20 버그 없음.

2. 마크편집 폼 수정 중 (마크 반출 test프로젝트 진행완료, 본 프로젝트에 적용중. / 저장기능활성화 작업완료)
 2-1. 기존의 칸채우기에서 예상되지 못한 버그가 발생하여 칸채우기 숨김.
 2-2. 008태크 재배치 => TextBox에 적용완료. 변경사항 메모장으로 넘기는 작업 완료.
 2-3. 저장기능 완료. (04.14 체크해볼것 - 완료)

주문관리 작업중 (DataGridView 주문처 엔터키 입력시 검색되게끔 하는 코드작성중) - 21.04.27 완료
2021-04-28 18:48:22 +09:00

229 lines
9.3 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp1.Delivery
{
public partial class Book_Lookup : Form
{
Helper_DB db = new Helper_DB();
Order_input oin;
Purchase pur;
List_Lookup ll;
string compidx;
string list_name;
int idx;
public Book_Lookup(Order_input _oin)
{
InitializeComponent();
oin = _oin;
idx = oin.grididx;
compidx = oin.compidx;
}
public Book_Lookup(Purchase _pur)
{
InitializeComponent();
pur = _pur;
idx = pur.grididx;
compidx = pur.compidx;
}
public Book_Lookup(List_Lookup _ll)
{
InitializeComponent();
ll = _ll;
idx = ll.grididx;
compidx = ll.compidx;
}
private void Book_Lookup_Load(object sender, EventArgs e)
{
db.DBcon();
tb_isbn.Text = isbn();
list_db();
this.Text = "도서 정보 - 『" + tb_book_name.Text + "』";
mk_Grid();
/* Obj_List_Book
* idx 도서명 저자 출판사 isbn
* 정가 수량 입고수 합계금액 비고
* 주문처 주문일자 */
string[] List_book = { compidx, tb_book_name.Text, tb_author.Text, tb_book_comp.Text, tb_isbn.Text,
tb_pay.Text, tb_count.Text, tb_stock.Text, tb_total.Text, tb_etc.Text,
tb_order1.Text, tb_order_date.Text, tb_List_name.Text };
}
private void mk_Grid()
{
string Area = "`order`, `pay`, `count`, `persent`, " + // 0-3
"`order_date`, `import_date`, `chk_date`, `export_date`"; // 4-7
string[] Search_col = { "compidx", "list_name", "book_name", "author", "book_comp" };
string[] Search_data = { compidx, tb_List_name.Text, tb_book_name.Text, tb_author.Text, tb_book_comp.Text };
string db_tmp = db.More_DB_Search("Obj_List_Book", Search_col, Search_data, Area);
string[] db_data = db_tmp.Split('|');
string[] add_grid = { "", "", db_data[0], db_data[1], db_data[2], db_data[3] };
// 처리일자 구분 거래처명 단가 수량 %
if (db_data[4] != "") {
add_grid[0] = db_data[4];
add_grid[1] = "주문";
dataGridView1.Rows.Add(add_grid);
}
if (db_data[5] != "") {
add_grid[0] = db_data[5];
add_grid[1] = "입고";
dataGridView1.Rows.Add(add_grid);
}
if (db_data[6] != "") {
add_grid[0] = db_data[6];
add_grid[1] = "검수";
dataGridView1.Rows.Add(add_grid);
}
if (db_data[7] != "") {
add_grid[0] = db_data[7];
add_grid[1] = "출고";
dataGridView1.Rows.Add(add_grid);
}
}
/// <summary>
/// 폼에 들어갈 데이터를 사전에 준비하여야함.
/// </summary>
/// <param name="book_name"></param>
/// <param name="author"></param>
/// <param name="book_comp"></param>
/// <param name="list_name"></param>
public void Lookup_Load(string book_name, string author, string book_comp, string list_name)
{
this.list_name = list_name;
db.DBcon();
string search = "`book_name`, `author`, `book_comp`, `count`, `pay`, " +
"`total`, `header`, `num`, `order`, `etc`, " +
"`input_count`, `order_date`, `list_name`, `idx`";
string[] data = { compidx, book_name, author, book_comp, list_name };
string[] table = { "compidx", "book_name", "author", "book_comp", "list_name" };
string tmp_db = db.More_DB_Search("Obj_List_Book", table, data, search);
mk_Lookup(tmp_db);
}
public void Lookup_Load_tmp(string idx)
{
db.DBcon();
string search = "`book_name`, `author`, `book_comp`, `count`, `pay`, " +
"`total`, `header`, `num`, `order`, `etc`, " +
"`input_count`, `order_date`, `list_name`, `idx`";
string[] data = { compidx, idx };
string[] table = { "compidx", "idx" };
string tmp_db = db.More_DB_Search("Obj_List_Book", table, data, search);
mk_Lookup(tmp_db);
}
private void mk_Lookup(string values)
{
string[] data = values.Split('|');
tb_book_name.Text = data[0];
tb_author.Text = data[1];
tb_book_comp.Text = data[2];
tb_count.Text = data[3];
tb_pay.Text = data[4];
tb_total.Text = data[5];
tb_num.Text = data[6] + " " + data[7];
tb_order1.Text = data[8];
tb_etc.Text = data[9];
tb_stock.Text = data[10];
if (data[11].Length < 3) { tb_order_date.Text = ""; }
else { tb_order_date.Text = data[11].Substring(0, 10); }
this.list_name = data[12];
lbl_idx.Text = data[13];
}
/// <summary>
/// 목록db에서 불러온 값을 적용시키는 함수
/// </summary>
private void list_db()
{
string[] where_table = { "comp_num", "list_name" };
string[] search_data = { compidx, list_name };
string cmd = db.More_DB_Search("Obj_List", where_table, search_data,
"`clt`, `dly`, `charge`, `date`, `date_res`");
string[] data = cmd.Split('|');
tb_List_name.Text = list_name;
tb_charge.Text = data[2];
tb_date.Text = data[3];
tb_date_res.Text = data[4];
}
/// <summary>
/// 목록도서DB에 저장된 isbn값을 가져오는 함수.
/// </summary>
/// <returns></returns>
private string isbn()
{
string[] where_table = { "compidx", "list_name", "book_name", "author", "book_comp" };
string[] search_data = { compidx,
list_name, tb_book_name.Text, tb_author.Text, tb_book_comp.Text };
string cmd = db.More_DB_Search("Obj_List_Book", where_table, search_data, "`isbn`");
cmd = cmd.Replace("|", "");
return cmd;
}
private void Book_Lookup_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
{
btn_close_Click(null, null);
}
}
private void btn_save_Click(object sender, EventArgs e)
{
/* Obj_List_Book
* idx 도서명 저자 출판사 isbn
* 정가 수량 입고수 합계금액 비고
* 주문처 주문일자 */
string[] Table = { "compidx", "book_name", "author", "book_comp", "isbn",
"pay", "count", "input_count", "total", "etc",
"order", "order_date", "list_name" };
string[] List_book = { compidx, tb_book_name.Text, tb_author.Text, tb_book_comp.Text, tb_isbn.Text,
tb_pay.Text, tb_count.Text, tb_stock.Text, tb_total.Text, tb_etc.Text,
tb_order1.Text, tb_order_date.Text, tb_List_name.Text };
string[] idx_table = { "idx" };
string[] idx_col = { lbl_idx.Text };
db.More_Update("Obj_List_Book", Table, List_book, idx_table, idx_col);
MessageBox.Show("저장되었습니다.");
}
private void btn_close_Click(object sender, EventArgs e)
{
Close();
}
private void btn_stock_Click(object sender, EventArgs e)
{
int stock = Convert.ToInt32(tb_stock.Text);
stock += 1;
tb_stock.Text = stock.ToString();
/* // 저장버튼 클릭시 일괄저장되는걸로 변경 (소스는 혹시 몰라 주석처리)
string[] edit_tbl = { "input_count", "import", "import_date" };
string[] edit_col = { stock.ToString(), "입고", DateTime.Today.ToString("G").Substring(0,10) };
string[] search_tbl = { "compidx", "list_name", "book_name", "author", "book_comp", "isbn" };
string[] search_col = { compidx,
tb_List_name.Text, tb_book_name.Text, tb_author.Text, tb_book_comp.Text, tb_isbn.Text };
db.More_Update("Obj_List_Book", edit_tbl, edit_col, search_tbl, search_col);
MessageBox.Show(tb_book_name.Text + "가 입고처리되었습니다.");
mk_Grid();
*/
}
private void btn_order_ccl_Click(object sender, EventArgs e)
{
// 저장버튼 클릭시 일괄 저장.
tb_order1.Text = "";
tb_order_date.Text = "";
tb_order_idx.Text = "";
}
private void btn_order_Click(object sender, EventArgs e)
{
tb_order_date.Text = DateTime.Now.ToString("G").Substring(0, 10);
}
}
}