a. 팩스전송 완료. b. 마크목록 폼 작성중 1. 엑셀반출 기능 추가중 사용 작업중 2. 마크편집 폼 수정 중 (마크 반출 test프로젝트 진행완료, 본 프로젝트에 적용중. / 저장기능활성화 작업완료) 2-1. 기존의 칸채우기에서 예상되지 못한 버그가 발생하여 칸채우기 숨김. 2-2. 008태크 재배치 => TextBox에 적용완료. 변경사항 메모장으로 넘기는 작업 진행해야함. 2-3. 현재 TODO : 저장기능 TODOLIST 1. 팩스로 전송될 엑셀파일 밑작업마무리 (입력될 파라미터만 적용하면 실사용가능) 2. 알라딘API로 ISBN조회 프로젝트 새로 작업할 것 => 작업중 알라딘 API횟수제한으로 인해 작업 중단. 내일 계속 진행예정
132 lines
5.2 KiB
C#
132 lines
5.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Diagnostics;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
|
|
namespace ISBN_Check_test
|
|
{
|
|
public partial class Form1 : Form
|
|
{
|
|
public Form1()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
private void Form1_Load(object sender, EventArgs e)
|
|
{
|
|
string[] com_list = { "제목+저자", "제목", "저자", "출판사" };
|
|
comboBox1.Items.AddRange(com_list);
|
|
}
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
Stopwatch stopwatch = new Stopwatch();
|
|
stopwatch.Start();
|
|
|
|
string temp = string.Empty;
|
|
string type = string.Empty;
|
|
string query = string.Empty;
|
|
// 도서명 / 저자 / 출판사 / isbn / 정가
|
|
// 발행일 / 도서분류 / 재고
|
|
string[] param = { "title", "author", "publisher", "isbn13", "priceStandard",
|
|
"pubDate", "categoryName", "stockStatus" };
|
|
Aladin_API api = new Aladin_API();
|
|
for (int a = 0; a < dataGridView1.Rows.Count - 1; a++)
|
|
{
|
|
// int a = 1;
|
|
query = dataGridView1.Rows[a].Cells["book_name"].Value.ToString();
|
|
insert_API(api.Find(query, type, param), a);
|
|
}
|
|
stopwatch.Stop();
|
|
|
|
TimeSpan ts = stopwatch.Elapsed;
|
|
string elapsedTime = String.Format("{0:00}:{1:00}:{2:00}.{3:00}",
|
|
ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds / 10);
|
|
label1.Text = elapsedTime;
|
|
}
|
|
void insert_API(string data, int row)
|
|
{
|
|
if (row > 0) { dataGridView1.Rows[row - 1].Selected = false; }
|
|
dataGridView1.Rows[row].Selected = true;
|
|
|
|
dataGridView1.Rows[row].Cells["Column1"].Value = data;
|
|
|
|
bool[] chk = { false, false, false }; // 도서명 저자 출판사 체크.
|
|
string book_name = dataGridView1.Rows[row].Cells["book_name"].Value.ToString();
|
|
string author = dataGridView1.Rows[row].Cells["author"].Value.ToString();
|
|
string book_comp = dataGridView1.Rows[row].Cells["book_comp"].Value.ToString();
|
|
string[] insert = data.Split('|');
|
|
|
|
string newstring = string.Empty;
|
|
|
|
if (data == "") { return; }
|
|
|
|
// pubDate형 보기편하게 DateTime형으로 재정리
|
|
newstring = String.Format("{0:yyyy/MM/dd HH:mm}",
|
|
DateTime.Parse(insert[5].Remove(insert[5].IndexOf(" G"))));
|
|
|
|
// 도서 분류 필요한 데이터로 재정리
|
|
int top = insert[6].IndexOf('>');
|
|
int mid = insert[6].IndexOf('>', top + 1);
|
|
int bot = insert[6].IndexOf('>', mid + 1);
|
|
if (bot < 0) { insert[6] = insert[6].Substring(top + 1); }
|
|
else { insert[6] = insert[6].Substring(top + 1, bot - top - 1); }
|
|
|
|
if (insert.Length > 10)
|
|
{
|
|
dataGridView1.Rows[row].DefaultCellStyle.BackColor = Color.LightGray;
|
|
return;
|
|
}
|
|
if (insert[0] == book_name) { chk[0] = true; }
|
|
if (insert[1].Contains(author) == true) { chk[1] = true; }
|
|
if (insert[2] == book_comp) { chk[2] = true; }
|
|
|
|
if (chk[0] == true && chk[1] == true && chk[2] == true)
|
|
{
|
|
dataGridView1.Rows[row].Cells["isbn"].Value = insert[3];
|
|
dataGridView1.Rows[row].Cells["price"].Value = insert[4];
|
|
dataGridView1.Rows[row].Cells["pubDate"].Value = newstring;
|
|
dataGridView1.Rows[row].Cells["category"].Value = insert[6];
|
|
dataGridView1.Rows[row].Cells["sold_out"].Value = insert[7];
|
|
dataGridView1.Rows[row].DefaultCellStyle.BackColor = Color.Yellow;
|
|
}
|
|
}
|
|
private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
|
|
{
|
|
Skill_Grid sg = new Skill_Grid();
|
|
|
|
if ((e.Shift && e.KeyCode == Keys.Insert) || (e.Control && e.KeyCode == Keys.V)) {
|
|
sg.Excel_to_DataGridView(sender, e);
|
|
}
|
|
else if (e.KeyCode == Keys.Delete) {
|
|
sg.DataGrid_to_Delete(sender, e);
|
|
}
|
|
}
|
|
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
|
|
{
|
|
Skill_Grid sg = new Skill_Grid();
|
|
|
|
sg.Print_Grid_Num(sender, e);
|
|
}
|
|
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
if(dataGridView1.Rows[e.RowIndex].Cells["Column1"].Value == null)
|
|
{
|
|
dataGridView1.Rows[e.RowIndex].Cells["Column1"].Value = "";
|
|
}
|
|
richTextBox1.Text = dataGridView1.Rows[e.RowIndex].Cells["Column1"].Value.ToString();
|
|
}
|
|
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
if(dataGridView1.Rows[e.RowIndex].Cells["Column1"].Value.ToString() == "") { return; }
|
|
Form2 f2 = new Form2(this);
|
|
f2.row = e.RowIndex;
|
|
f2.Show();
|
|
}
|
|
}
|
|
}
|