diff --git a/unimarc/unimarc/UniMarc.csproj b/unimarc/unimarc/UniMarc.csproj
index 21b9881..c95b49c 100644
--- a/unimarc/unimarc/UniMarc.csproj
+++ b/unimarc/unimarc/UniMarc.csproj
@@ -385,12 +385,6 @@
Check_ISBN_Yes242.cs
-
- Form
-
-
- fMarc_Editor.cs
-
Form
@@ -594,11 +588,11 @@
Marc_Plan_PrintLabel.cs
-
+
Form
-
- fMarc_Editor_Spec.cs
+
+ fMarc_Editor.cs
Form
@@ -1166,9 +1160,6 @@
Check_ISBN_Yes242.cs
-
- fMarc_Editor.cs
-
Help_007.cs
@@ -1268,8 +1259,8 @@
Marc_Plan_PrintLabel.cs
-
- fMarc_Editor_Spec.cs
+
+ fMarc_Editor.cs
Marc_Plan_Sub_MarcEdit.cs
diff --git a/unimarc/unimarc/마크/MarcPlanItem.cs b/unimarc/unimarc/마크/MarcPlanItem.cs
index 72cef39..2f28c5a 100644
--- a/unimarc/unimarc/마크/MarcPlanItem.cs
+++ b/unimarc/unimarc/마크/MarcPlanItem.cs
@@ -35,5 +35,8 @@ namespace UniMarc
public string ListName { get; set; }
public string Date { get; set; }
public string User { get; set; }
+ public string etc1 { get; set; }
+ public string etc2 { get; set; }
+ public int grade { get; set; }
}
}
diff --git a/unimarc/unimarc/마크/Marc_Plan.cs b/unimarc/unimarc/마크/Marc_Plan.cs
index dbad578..f0043d1 100644
--- a/unimarc/unimarc/마크/Marc_Plan.cs
+++ b/unimarc/unimarc/마크/Marc_Plan.cs
@@ -1,4 +1,5 @@
using AR;
+using Org.BouncyCastle.Bcpg.OpenPgp;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@@ -141,7 +142,7 @@ namespace UniMarc
string Area = "`idx`, "
+ "`num`, `r_num`, `class_symbol`, `author_symbol`, `ISBN`, "
+ "`book_name`, `s_book_name1`, `s_book_num1`, `s_book_name2`, `s_book_num2`, "
- + "`author`, `book_comp`, `price`, `midx`, `marc`";
+ + "`author`, `book_comp`, `price`, `midx`, `marc`, `etc1`, `etc2`, `grade`";
string[] Search_col = { "work_list", "date" };
string[] Search_data = { ListName, date };
@@ -174,7 +175,10 @@ namespace UniMarc
item.BookComp = dr["book_comp"].ToString();
item.Price = dr["price"].ToString();
item.Midx = dr["midx"].ToString();
-
+ item.etc1 = dr["etc1"]?.ToString() ?? string.Empty;
+ item.etc2 = dr["etc2"]?.ToString() ?? string.Empty;
+ item.grade = dr["grade"] != DBNull.Value ? Convert.ToInt32(dr["grade"]) : -1;
+
string rawMarc = dr["marc"].ToString();
// Logic for MARC tag processing
@@ -229,6 +233,8 @@ namespace UniMarc
}
#endregion
+
+
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Skill_Grid sg = new Skill_Grid();
@@ -318,14 +324,13 @@ namespace UniMarc
// Sync BindingSource position
bs1.Position = row;
- var currentItem = (MarcPlanItem)bs1.Current;
- string isbn = currentItem.Isbn;
- string marcData = currentItem.Marc;
+ var dr = (MarcPlanItem)bs1.Current;
+ string isbn = dr.Isbn;
+ string marcData = dr.Marc;
- var f = new fMarc_Editor_Spec(isbn, marcData);
- var data = GetBookData(currentItem);
+ var f = new fMarc_Editor(isbn, marcData, SaveTarget.SpecsMarc,dr.etc1, dr.etc2,dr.grade);
+ var data = GetBookData(dr);
f.LoadBook(data.marc, data.p);
-
f.RequestNext += (s, args) =>
{
if (bs1.Position < bs1.Count - 1)
@@ -336,8 +341,8 @@ namespace UniMarc
f.LoadBook(nextData.marc, nextData.p);
// Optional: Ensure visible
- if (dataGridView1.CurrentRow != null)
- dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.CurrentRow.Index;
+ //if (dataGridView1.CurrentRow != null)
+ //dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.CurrentRow.Index;
}
};
@@ -351,8 +356,8 @@ namespace UniMarc
f.LoadBook(prevData.marc, prevData.p);
// Optional: Ensure visible
- if (dataGridView1.CurrentRow != null)
- dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.CurrentRow.Index;
+ //if (dataGridView1.CurrentRow != null)
+ // dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.CurrentRow.Index;
}
};
@@ -1669,9 +1674,9 @@ namespace UniMarc
private void btn_FillBlank_Click(object sender, EventArgs e)
{
- if (List_Book.CurrentRow == null) return;
- int row = List_Book.CurrentRow.Index;
- string ISBN = List_Book.Rows[row].Cells["ISBN13"].Value?.ToString();
+ if (dataGridView1.CurrentRow == null) return;
+ int row = dataGridView1.CurrentRow.Index;
+ string ISBN = dataGridView1.Rows[row].Cells["ISBN"].Value?.ToString();
if (string.IsNullOrEmpty(ISBN))
{
@@ -1682,17 +1687,17 @@ namespace UniMarc
var fb = new Marc_FillBlank();
for (int a = 0; a < bs1.Count; a++)
{
- var item = bs1.List[a] as MarcBookItem;
- if (item != null && item.Status == MarcRecordStatus.None)
+ var item = bs1.List[a] as MarcPlanItem;
+ if (item != null && (string.IsNullOrEmpty(item.Marc) || item.Marc.Length < 10))
{
var fbItem = new FillBlankItem
{
- Idx = item.ListIdx,
- Isbn = item.ISBN13 ?? "",
+ Idx = a.ToString(), // 그리드 순서를 인덱스로 사용
+ Isbn = item.Isbn ?? "",
BookName = item.BookName ?? "",
Author = item.Author ?? "",
Publisher = item.BookComp ?? "",
- Price = item.Pay ?? ""
+ Price = item.Price ?? ""
};
fb.InitFillBlank(fbItem);
}
@@ -1700,29 +1705,32 @@ namespace UniMarc
fb.ISBN = ISBN;
if (fb.ShowDialog() == DialogResult.OK)
{
- String_Text st = new String_Text();
if (fb.FillBlankItems.Any(t => !string.IsNullOrEmpty(t.BookMarc)))
{
foreach (var fbItem in fb.FillBlankItems)
{
if (string.IsNullOrEmpty(fbItem.BookMarc)) continue;
- int targetListIdx = int.Parse(fbItem.Idx);
- foreach (MarcBookItem item in this.dataList)
+ int targetIdx = int.Parse(fbItem.Idx);
+ if (targetIdx >= 0 && targetIdx < bs1.Count)
{
- if (item.ListIdx != null && Convert.ToInt32(item.ListIdx) == targetListIdx)
+ var item = bs1.List[targetIdx] as MarcPlanItem;
+ if (item != null)
{
- item.DbMarc = fbItem.BookMarc;
- item.Status = MarcRecordStatus.NewFetched;
- break;
+ item.Marc = fbItem.BookMarc;
}
}
}
+ bs1.ResetBindings(false);
}
else if (!string.IsNullOrEmpty(fb.SingleMarcResult))
{
- // Update current Editor
- marcEditorControl1.SetMarcString(fb.SingleMarcResult);
+ var item = bs1.Current as MarcPlanItem;
+ if (item != null)
+ {
+ item.Marc = fb.SingleMarcResult;
+ bs1.ResetCurrentItem();
+ }
}
}
}
diff --git a/unimarc/unimarc/마크/Marc_Plan_Sub_SelectList.cs b/unimarc/unimarc/마크/Marc_Plan_Sub_SelectList.cs
index 5a44928..bb47ab3 100644
--- a/unimarc/unimarc/마크/Marc_Plan_Sub_SelectList.cs
+++ b/unimarc/unimarc/마크/Marc_Plan_Sub_SelectList.cs
@@ -260,6 +260,7 @@ namespace UniMarc
MessageBox.Show(ex.ToString());
}
}
+
#region OpenFileSub
///
@@ -270,7 +271,7 @@ namespace UniMarc
{
String_Text st = new String_Text();
- string[] grid = text.Split('');
+ string[] grid = text.Split(' ');
for (int a = 0; a < grid.Length - 1; a++)
{
string[] Search = {
diff --git a/unimarc/unimarc/마크/Search_Infor.Designer.cs b/unimarc/unimarc/마크/Search_Infor.Designer.cs
index 9a6d867..d179a80 100644
--- a/unimarc/unimarc/마크/Search_Infor.Designer.cs
+++ b/unimarc/unimarc/마크/Search_Infor.Designer.cs
@@ -28,7 +28,7 @@
///
private void InitializeComponent()
{
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
this.label1 = new System.Windows.Forms.Label();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.idx = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -102,14 +102,14 @@
//
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
- dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle3.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
- this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle3;
+ dataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ dataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle6.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ dataGridViewCellStyle6.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle6;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.idx,
diff --git a/unimarc/unimarc/마크/Search_Infor.cs b/unimarc/unimarc/마크/Search_Infor.cs
index 5029c95..8db88a4 100644
--- a/unimarc/unimarc/마크/Search_Infor.cs
+++ b/unimarc/unimarc/마크/Search_Infor.cs
@@ -78,7 +78,7 @@ namespace UniMarc
label3.Text = string.Format("검색결과 {0:0,0}건", dataGridView1.Rows.Count.ToString());
}
- #region search_Click_Sub
+
string MakeWHEREQurey(string target, string searchText)
{
@@ -358,7 +358,6 @@ namespace UniMarc
return (res, search);
}
- #endregion
private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
int row = e.RowIndex;
diff --git a/unimarc/unimarc/마크/Search_Infor2.Designer.cs b/unimarc/unimarc/마크/Search_Infor2.Designer.cs
index 6191435..6126be5 100644
--- a/unimarc/unimarc/마크/Search_Infor2.Designer.cs
+++ b/unimarc/unimarc/마크/Search_Infor2.Designer.cs
@@ -29,7 +29,7 @@
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Search_Infor2));
this.label1 = new System.Windows.Forms.Label();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
@@ -118,14 +118,14 @@
//
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
- dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle1.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
- this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+ dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle5.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+ this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.idx,
diff --git a/unimarc/unimarc/마크/Search_Infor2.cs b/unimarc/unimarc/마크/Search_Infor2.cs
index f24d840..c059c8e 100644
--- a/unimarc/unimarc/마크/Search_Infor2.cs
+++ b/unimarc/unimarc/마크/Search_Infor2.cs
@@ -343,9 +343,11 @@ namespace UniMarc
SearchInforItem item = (SearchInforItem)bs1[e.RowIndex];
if (item == null) return;
- var me = new fMarc_Editor_Spec(item.ISBN, item.Marc);
+ var v_grade = 2;
+ int.TryParse(item.grade, out v_grade);
+
+ var me = new fMarc_Editor(item.ISBN, item.Marc, SaveTarget.MasterMarc, item.etc1, item.etc2, v_grade);
me.row = e.RowIndex;
- me.UserName = main.botUserLabel.Text;
// Helper to load data at specific binding source position
Action loadAt = (pos) =>
@@ -390,6 +392,9 @@ namespace UniMarc
{
var currentItem = (SearchInforItem)bs1.Current;
currentItem.book_name = args.BookName;
+
+ //원본마크값을 marc2에 저장한다.
+ if (string.IsNullOrEmpty(currentItem.marc2)) currentItem.marc2 = currentItem.Marc;
currentItem.Marc = args.Marc;
currentItem.ISBN = args.ISBN;
currentItem.author = args.Author;
@@ -428,7 +433,8 @@ namespace UniMarc
}
if (dataList.Any() == false)
{
- UTIL.MsgE("비마크 데이터가 존재하지 않아 기능을 사용할 수 없습니다");
+ // UTIL.MsgE("비마크 데이터가 존재하지 않아 기능을 사용할 수 없습니다");
+ MessageBox.Show("비마크 데이터가 존재하지 않아 기능을 사용할 수 없습니다");
}
else me.OpenFillBlank(dataList, currentBoundItem.ISBN);
};
@@ -443,6 +449,7 @@ namespace UniMarc
if (rowIdx >= 0 && rowIdx < bs1.Count)
{
var mItem = (SearchInforItem)bs1.List[rowIdx];
+ if (string.IsNullOrEmpty(mItem.marc2)) mItem.marc2 = mItem.Marc;
mItem.Marc = fbItem.BookMarc;
}
}
@@ -576,10 +583,10 @@ namespace UniMarc
return;
}
- var me = new fMarc_Editor_Spec(item.ISBN, item.marc2);
-
+ var v_grade = 2;
+ int.TryParse(item.grade, out v_grade);
+ var me = new fMarc_Editor(item.ISBN, item.marc2, SaveTarget.MasterMarc, item.etc1, item.etc2, v_grade);
me.row = row;
- me.UserName = main.botUserLabel.Text;
// Helper to load data at specific binding source position (using marc2 for old data)
Action loadAt = (pos) =>
@@ -624,7 +631,7 @@ namespace UniMarc
{
var currentItem = (SearchInforItem)bs1.Current;
currentItem.book_name = args.BookName;
- currentItem.marc2 = args.Marc;
+ currentItem.Marc = args.Marc; //이전데이터보기에서 저장했다면 실제마크데이터를 업데이트한다.
currentItem.ISBN = args.ISBN;
currentItem.author = args.Author;
currentItem.book_comp = args.Publisher;
@@ -662,7 +669,8 @@ namespace UniMarc
}
if (dataList.Any() == false)
{
- UTIL.MsgE("비마크 데이터가 존재하지 않아 기능을 사용할 수 없습니다");
+ // UTIL.MsgE("비마크 데이터가 존재하지 않아 기능을 사용할 수 없습니다");
+ MessageBox.Show("비마크 데이터가 존재하지 않아 기능을 사용할 수 없습니다");
}
else me.OpenFillBlank(dataList, currentBoundItem.ISBN);
};
diff --git a/unimarc/unimarc/마크/Search_Infor2.resx b/unimarc/unimarc/마크/Search_Infor2.resx
index 8806f2c..1ef9209 100644
--- a/unimarc/unimarc/마크/Search_Infor2.resx
+++ b/unimarc/unimarc/마크/Search_Infor2.resx
@@ -165,6 +165,9 @@
17, 17
+
+ 17, 17
+
171, 17
@@ -172,7 +175,7 @@
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wAAADsABataJCQAAATFJREFUOE9jYBg0oHDW8/9NC57/z5z4+D+6HAyEtz/AKceQO/PZ/1VH3v/HpSi+
+ vgAADr4B6kKxwAAAATFJREFUOE9jYBg0oHDW8/9NC57/z5z4+D+6HAyEtz/AKceQO/PZ/1VH3v/HpSi+
+8H/4IZrWOXAIGPK0/8L933Aqii+5+H/pfv///evvoAhBwcJPU/+T9vyHkNRRPt9sObMWf//e5WewG1A
ZNej/72rP6AoCm29B9bcuu7/f//Ov/9d8g/gNiCw+eH/uvnv4IqCW+7+X7T3//+Odf//Z8z5+d+u7ud/
+4ztuA3wqLr/P3/aGxRFdsW3/6fP+f3fv+vbf53Cd/8tEtbjNsC+9O7/7MmvMRTpp5z/b1L04r9K1qf/
@@ -183,7 +186,7 @@
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wAAADsABataJCQAAALtJREFUOE9jYBgyILz9wX90MaJBfPeD/8EN18gzIL7n4f+l+///96++QLoBEe33
+ vgAADr4B6kKxwAAAALtJREFUOE9jYBgyILz9wX90MaJBfPeD/8EN18gzIL7n4f+l+///96++QLoBEe33
wZozZ/3/71V6gjQDQlvvgTW3rvv/37/z73+X/APEGxDccvf/or3//3es+/8/Y87P/3Z1P//bZ2wn3gAQ
sCu+/T99zu///l3f/usUvvtvkbCeNANAQD/l/H+Tohf/VbI+/TeOXEa6ASBgkHTiv2za1/+6wfPIMwAE
9FMv/9fwnUa+ASCg4jGBMgMGLwAA0BRgmCws/7cAAAAASUVORK5CYII=
@@ -192,7 +195,7 @@
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wAAADsABataJCQAAAKRJREFUOE9jYBh0oHDW8//oYiSB3JnP/id03yPfkIwpT//P2//7f0LXHfIMSeh5
+ vgAADr4B6kKxwAAAAKRJREFUOE9jYBh0oHDW8//oYiSB3JnP/id03yPfkIwpT//P2//7f0LXHfIMSeh5
8n/2vl//O7f+/e9Wepl0QyK7Hv2fsu3X/5Klf/8nTP/73yb3LGmGBDY//N+69j1Ys3HJl//S0df+G0cu
I94Qj6r7/0vmvoNrVnTpIV4zCNiX3v0f2PKMPM0gYJF3579NwRXyNIOAYdZt8jWDgE7aDfI1D00AAKB+
X6Bjq5qXAAAAAElFTkSuQmCC
@@ -201,7 +204,7 @@
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wAAADsABataJCQAAAStJREFUOE9jYBhUoHDW8//oYjAAkmta8Px/5sTHONUw5M589j+h+x5WBSC5VUfe
+ vgAADr4B6kKxwAAAAStJREFUOE9jYBhUoHDW8//oYjAAkmta8Px/5sTHONUw5M589j+h+x5WBSC5VUfe
/w9vf4BVHgwypjz9P2//7/8JXXcwFIHkFu778D+44RqGHBwk9Dz5P3vfr/+dW//+dyu9jKIQJDdty/v/
/tUXcBsQ2fXo/5Rtv/6XLP37P2H63/82uWfhikFyvas//PcqPYHbgMDmh/9b174HazYu+fJfOvraf+PI
ZWANILm6+e/+u+QfwG2AR9X9/yVz38E1K7r0wBWD5PKnvflvn7EdtwH2pXf/B7Y8w9AMk8ue/Pq/RcJ6
diff --git a/unimarc/unimarc/마크/fMarc_Editor.Designer.cs b/unimarc/unimarc/마크/fMarc_Editor.Designer.cs
index 66d1ec4..0945e9d 100644
--- a/unimarc/unimarc/마크/fMarc_Editor.Designer.cs
+++ b/unimarc/unimarc/마크/fMarc_Editor.Designer.cs
@@ -34,14 +34,16 @@ namespace UniMarc
this.etc1 = new System.Windows.Forms.RichTextBox();
this.etc2 = new System.Windows.Forms.RichTextBox();
this.panel6 = new System.Windows.Forms.Panel();
- this.lbl_SaveData = new System.Windows.Forms.Label();
+ this.radD = new System.Windows.Forms.RadioButton();
+ this.radC = new System.Windows.Forms.RadioButton();
+ this.radB = new System.Windows.Forms.RadioButton();
+ this.radA = new System.Windows.Forms.RadioButton();
+ this.label6 = new System.Windows.Forms.Label();
+ this.lbl_SaveData = new System.Windows.Forms.TextBox();
this.btNext = new System.Windows.Forms.Button();
this.btPrev = new System.Windows.Forms.Button();
this.btn_Save = new System.Windows.Forms.Button();
- this.btn_close = new System.Windows.Forms.Button();
- this.cb_grade = new System.Windows.Forms.ComboBox();
this.btn_FillBlank = new System.Windows.Forms.Button();
- this.label6 = new System.Windows.Forms.Label();
this.panel5.SuspendLayout();
this.tableLayoutPanel1.SuspendLayout();
this.panel6.SuspendLayout();
@@ -55,7 +57,7 @@ namespace UniMarc
this.panel5.Location = new System.Drawing.Point(1071, 0);
this.panel5.Name = "panel5";
this.panel5.Size = new System.Drawing.Size(266, 768);
- this.panel5.TabIndex = 328;
+ this.panel5.TabIndex = 327;
//
// tableLayoutPanel1
//
@@ -96,34 +98,94 @@ namespace UniMarc
//
// panel6
//
+ this.panel6.Controls.Add(this.btn_FillBlank);
+ this.panel6.Controls.Add(this.radD);
+ this.panel6.Controls.Add(this.radC);
+ this.panel6.Controls.Add(this.radB);
+ this.panel6.Controls.Add(this.radA);
+ this.panel6.Controls.Add(this.label6);
this.panel6.Controls.Add(this.lbl_SaveData);
this.panel6.Controls.Add(this.btNext);
this.panel6.Controls.Add(this.btPrev);
this.panel6.Controls.Add(this.btn_Save);
- this.panel6.Controls.Add(this.btn_close);
- this.panel6.Controls.Add(this.cb_grade);
- this.panel6.Controls.Add(this.btn_FillBlank);
- this.panel6.Controls.Add(this.label6);
this.panel6.Dock = System.Windows.Forms.DockStyle.Top;
this.panel6.Location = new System.Drawing.Point(0, 0);
this.panel6.Name = "panel6";
this.panel6.Size = new System.Drawing.Size(266, 308);
this.panel6.TabIndex = 1;
//
+ // radD
+ //
+ this.radD.AutoSize = true;
+ this.radD.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ this.radD.Location = new System.Drawing.Point(210, 12);
+ this.radD.Name = "radD";
+ this.radD.Size = new System.Drawing.Size(42, 27);
+ this.radD.TabIndex = 328;
+ this.radD.TabStop = true;
+ this.radD.Text = "D";
+ this.radD.UseVisualStyleBackColor = true;
+ //
+ // radC
+ //
+ this.radC.AutoSize = true;
+ this.radC.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ this.radC.Location = new System.Drawing.Point(163, 12);
+ this.radC.Name = "radC";
+ this.radC.Size = new System.Drawing.Size(41, 27);
+ this.radC.TabIndex = 327;
+ this.radC.TabStop = true;
+ this.radC.Text = "C";
+ this.radC.UseVisualStyleBackColor = true;
+ //
+ // radB
+ //
+ this.radB.AutoSize = true;
+ this.radB.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ this.radB.Location = new System.Drawing.Point(116, 12);
+ this.radB.Name = "radB";
+ this.radB.Size = new System.Drawing.Size(41, 27);
+ this.radB.TabIndex = 326;
+ this.radB.TabStop = true;
+ this.radB.Text = "B";
+ this.radB.UseVisualStyleBackColor = true;
+ //
+ // radA
+ //
+ this.radA.AutoSize = true;
+ this.radA.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ this.radA.Location = new System.Drawing.Point(69, 12);
+ this.radA.Name = "radA";
+ this.radA.Size = new System.Drawing.Size(41, 27);
+ this.radA.TabIndex = 325;
+ this.radA.TabStop = true;
+ this.radA.Text = "A";
+ this.radA.UseVisualStyleBackColor = true;
+ //
+ // label6
+ //
+ this.label6.AutoSize = true;
+ this.label6.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ this.label6.Location = new System.Drawing.Point(28, 22);
+ this.label6.Name = "label6";
+ this.label6.Size = new System.Drawing.Size(31, 12);
+ this.label6.TabIndex = 324;
+ this.label6.Text = "등급";
+ //
// lbl_SaveData
//
- this.lbl_SaveData.AutoSize = true;
this.lbl_SaveData.Font = new System.Drawing.Font("굴림체", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.lbl_SaveData.ForeColor = System.Drawing.Color.PaleTurquoise;
- this.lbl_SaveData.Location = new System.Drawing.Point(45, 109);
+ this.lbl_SaveData.Location = new System.Drawing.Point(9, 45);
+ this.lbl_SaveData.Multiline = true;
this.lbl_SaveData.Name = "lbl_SaveData";
- this.lbl_SaveData.Size = new System.Drawing.Size(64, 19);
+ this.lbl_SaveData.Size = new System.Drawing.Size(245, 127);
this.lbl_SaveData.TabIndex = 319;
this.lbl_SaveData.Text = "[] []";
//
// btNext
//
- this.btNext.Location = new System.Drawing.Point(147, 219);
+ this.btNext.Location = new System.Drawing.Point(147, 269);
this.btNext.Name = "btNext";
this.btNext.Size = new System.Drawing.Size(107, 33);
this.btNext.TabIndex = 230;
@@ -133,7 +195,7 @@ namespace UniMarc
//
// btPrev
//
- this.btPrev.Location = new System.Drawing.Point(98, 258);
+ this.btPrev.Location = new System.Drawing.Point(14, 269);
this.btPrev.Name = "btPrev";
this.btPrev.Size = new System.Drawing.Size(107, 33);
this.btPrev.TabIndex = 229;
@@ -143,58 +205,24 @@ namespace UniMarc
//
// btn_Save
//
- this.btn_Save.Location = new System.Drawing.Point(32, 180);
+ this.btn_Save.Location = new System.Drawing.Point(147, 230);
this.btn_Save.Name = "btn_Save";
- this.btn_Save.Size = new System.Drawing.Size(77, 33);
+ this.btn_Save.Size = new System.Drawing.Size(107, 33);
this.btn_Save.TabIndex = 215;
this.btn_Save.Text = "저장(F9)";
this.btn_Save.UseVisualStyleBackColor = true;
- this.btn_Save.Click += new System.EventHandler(this.btn_Save_Click_1);
- //
- // btn_close
- //
- this.btn_close.Location = new System.Drawing.Point(21, 258);
- this.btn_close.Name = "btn_close";
- this.btn_close.Size = new System.Drawing.Size(77, 33);
- this.btn_close.TabIndex = 215;
- this.btn_close.Text = "닫 기";
- this.btn_close.UseVisualStyleBackColor = true;
- this.btn_close.Click += new System.EventHandler(this.btn_close_Click);
- //
- // cb_grade
- //
- this.cb_grade.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_grade.FormattingEnabled = true;
- this.cb_grade.Items.AddRange(new object[] {
- "A (F9)",
- "B (F10)",
- "C (F11)",
- "D (F12)"});
- this.cb_grade.Location = new System.Drawing.Point(15, 33);
- this.cb_grade.Name = "cb_grade";
- this.cb_grade.Size = new System.Drawing.Size(75, 20);
- this.cb_grade.TabIndex = 222;
+ this.btn_Save.Click += new System.EventHandler(this.btn_Save_Click);
//
// btn_FillBlank
//
- this.btn_FillBlank.Location = new System.Drawing.Point(115, 153);
+ this.btn_FillBlank.Location = new System.Drawing.Point(11, 178);
this.btn_FillBlank.Name = "btn_FillBlank";
- this.btn_FillBlank.Size = new System.Drawing.Size(77, 60);
- this.btn_FillBlank.TabIndex = 228;
+ this.btn_FillBlank.Size = new System.Drawing.Size(243, 46);
+ this.btn_FillBlank.TabIndex = 329;
this.btn_FillBlank.Text = "미소장 마크 코리스\r\n칸채우기";
this.btn_FillBlank.UseVisualStyleBackColor = true;
this.btn_FillBlank.Click += new System.EventHandler(this.btn_FillBlank_Click);
//
- // label6
- //
- this.label6.AutoSize = true;
- this.label6.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.label6.Location = new System.Drawing.Point(12, 15);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(62, 12);
- this.label6.TabIndex = 223;
- this.label6.Text = "마크 등급";
- //
// fMarc_Editor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
@@ -219,13 +247,15 @@ namespace UniMarc
public System.Windows.Forms.RichTextBox etc1;
public System.Windows.Forms.RichTextBox etc2;
private System.Windows.Forms.Panel panel6;
- private System.Windows.Forms.Label lbl_SaveData;
+ private System.Windows.Forms.TextBox lbl_SaveData;
private System.Windows.Forms.Button btNext;
private System.Windows.Forms.Button btPrev;
private System.Windows.Forms.Button btn_Save;
- private System.Windows.Forms.Button btn_close;
- private System.Windows.Forms.ComboBox cb_grade;
- private System.Windows.Forms.Button btn_FillBlank;
+ private System.Windows.Forms.RadioButton radD;
+ private System.Windows.Forms.RadioButton radC;
+ private System.Windows.Forms.RadioButton radB;
+ private System.Windows.Forms.RadioButton radA;
private System.Windows.Forms.Label label6;
+ private System.Windows.Forms.Button btn_FillBlank;
}
}
\ No newline at end of file
diff --git a/unimarc/unimarc/마크/fMarc_Editor.cs b/unimarc/unimarc/마크/fMarc_Editor.cs
index 2eb9f4f..ed2b8fc 100644
--- a/unimarc/unimarc/마크/fMarc_Editor.cs
+++ b/unimarc/unimarc/마크/fMarc_Editor.cs
@@ -8,61 +8,57 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
+using Newtonsoft.Json.Converters;
+using AR;
+using Org.BouncyCastle.Pkcs;
namespace UniMarc
{
+ public enum SaveTarget
+ {
+ SpecsMarc,
+ MasterMarc
+ }
+
public partial class fMarc_Editor : Form
{
string idx;
public int row;
- public string UserName = "";
- Marc_Plan mp;
Helper_DB db = new Helper_DB();
String_Text st = new String_Text();
- Search_Infor si;
Help008Tag tag008 = new Help008Tag();
MarcEditorControl marcEditorControl1;
private MacEditorParameter _param;
- string mCompidx = PUB.user.CompanyIdx;
- public fMarc_Editor(string isbn,string marcstring)
+
+ SaveTarget Target;
+
+ public fMarc_Editor(string isbn, string marcstring, SaveTarget _target,string etc1, string etc2,int grade)
{
InitializeComponent();
db.DBcon();
+ this.etc1.Text = etc1;
+ this.etc2.Text = etc2;
+
+ //update grade radio button
+ if (grade == 0) radA.Checked = true;
+ else if(grade == 1) radB.Checked = true;
+ else if(grade == 2) radC.Checked = true;
+ else if(grade == 3) radD.Checked = true;
+
+ Target = _target;
marcEditorControl1 = new MarcEditorControl();
marcEditorControl1.db = this.db;
marcEditorControl1.Dock = DockStyle.Fill;
this.StartPosition = FormStartPosition.CenterScreen;
this.Controls.Add(marcEditorControl1);
-
- // Add Save Button programmatically (alternatively, could be done in Designer)
- Button btn_Save = new Button();
- btn_Save.Text = "저장(F9)";
- btn_Save.Dock = DockStyle.Bottom;
- btn_Save.Height = 40;
- btn_Save.Click += btn_Save_Click;
- this.Controls.Add(btn_Save);
-
this.KeyPreview = true;
- }
-
- protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
- {
- if (keyData == Keys.F9)
+ this.KeyDown += (s1, e1) =>
{
- btn_Save_Click(this, EventArgs.Empty);
- return true;
- }
- if (keyData == Keys.Escape)
- {
- this.Close();
- return true;
- }
- return base.ProcessCmdKey(ref msg, keyData);
- }
-
- private void btn_Save_Click(object sender, EventArgs e)
- {
-
+ if (e1.KeyCode == Keys.Escape)
+ {
+ this.Close();
+ }
+ };
}
public event EventHandler RequestNext;
@@ -76,7 +72,7 @@ namespace UniMarc
public string Author { get; set; }
public string Publisher { get; set; }
public string Price { get; set; }
- public int Grade { get; set; }
+ public string Grade { get; set; }
public string Etc1 { get; set; }
public string Etc2 { get; set; }
public string SaveDate { get; set; }
@@ -93,33 +89,24 @@ namespace UniMarc
fb.InitFillBlank(item);
}
fb.ISBN = currentIsbn;
-
+
if (fb.ShowDialog() == DialogResult.OK)
{
BulkBooksUpdated?.Invoke(this, new BulkBookUpdatedEventArgs { Updates = fb.FillBlankItems });
}
}
-
+
public class BulkBookUpdatedEventArgs : EventArgs
{
public List Updates { get; set; }
}
-
- public event EventHandler BulkBooksUpdated;
- private void MarcEditorControl_FillBlankClicked(object sender, EventArgs e)
- {
- RequestFillBlankData?.Invoke(this, EventArgs.Empty);
- }
+ public event EventHandler BulkBooksUpdated;
public event EventHandler BookUpdated;
- private void MarcEditorControl_BookSaved(object sender, EventArgs e)
- {
- // Removed - Logic moved to btn_Save_Click
- }
private string mk_BookName(string[] book_name)
{
@@ -138,20 +125,11 @@ namespace UniMarc
return result;
}
- private void MarcEditorControl1_PrevButton(object sender, EventArgs e)
- {
- RequestPrev?.Invoke(this, EventArgs.Empty);
- }
-
- private void MarcEditorControl1_NextButton(object sender, EventArgs e)
- {
-
- }
-
public void LoadBook(string dbMarc, MacEditorParameter p)
{
this._param = p;
- this.Text = $"마크편집({p.ISBN13})-{p.BookName}";
+ this._param.OriginalMarc = dbMarc; // 원본 마크 저장 (MasterMarc 저장 시 필요)
+ this.Text = $"마크편집({p.ISBN13})-{p.BookName} Database:{Target}";
marcEditorControl1.LoadBookData(dbMarc, p.ISBN13);
}
@@ -161,15 +139,14 @@ namespace UniMarc
Application.DoEvents();
}
- private void btn_close_Click(object sender, EventArgs e)
+ private void btn_FillBlank_Click(object sender, EventArgs e)
{
- this.Close();
+ RequestFillBlankData?.Invoke(this, EventArgs.Empty);
}
private void btPrev_Click(object sender, EventArgs e)
{
RequestPrev?.Invoke(this, EventArgs.Empty);
-
}
private void btNext_Click(object sender, EventArgs e)
@@ -177,20 +154,28 @@ namespace UniMarc
RequestNext?.Invoke(this, EventArgs.Empty);
}
- private void btn_Save_Click_1(object sender, EventArgs e)
+ private void btn_Save_Click(object sender, EventArgs e)
{
if (marcEditorControl1.CheckValidation() == false) return;
- // Update Specs_Marc table
string oriMarc = marcEditorControl1.MakeMarcString();
- string etc1 = this.etc1.Text.Trim();
- string etc2 = this.etc2.Text.Trim();
- string tag008 = marcEditorControl1.text008.Text;
- var v_grade = cb_grade.SelectedIndex.ToString();
+ string etc1Value = "";
+ string etc2Value = "";
- // 등록번호 분류기호 저자기호 볼륨 복본
- // 별치 총서명 총서번호 저자 출판사
- // 정가 ISBN
+ // Use TryGet to avoid issues if controls don't exist in all contexts,
+ // but assuming inherited/designer has them for now as per user snippet.
+ try { etc1Value = etc1.Text.Trim(); } catch { }
+ try { etc2Value = etc2.Text.Trim(); } catch { }
+
+ string tag008Value = marcEditorControl1.text008.Text;
+
+ var v_grade = "";
+ if (radA.Checked) v_grade = "0";
+ else if (radB.Checked) v_grade = "1";
+ else if (radC.Checked) v_grade = "2";
+ else if (radD.Checked) v_grade = "3";
+
+ // Extract tags for metadata
string[] Search_Tag = {
"049l", "090a", "090b", "049v", "049c",
"049f", "440a", "440v", "245d", "260b",
@@ -203,51 +188,86 @@ namespace UniMarc
string[] BookNameTag = st.Take_Tag(oriMarc, BookTag);
string BookName = mk_BookName(BookNameTag);
- string Table = "Specs_Marc";
+ string Table = "";
+ string[] Update_Col;
+ string[] Update_data;
string[] Search_Col = { "idx" };
+ string[] Search_data;
- // Current ListIdx (Wait, idx in Marc_Plan corresponds to ListIdx in Parameter?)
- // In Marc_Plan: ListIdx = idx.
- string listIdx = _param.ListIdx;
- string[] Search_data = { listIdx };
+ if (Target == SaveTarget.SpecsMarc)
+ {
+ Table = "Specs_Marc";
+ Search_data = new string[] { _param.ListIdx };
+ Update_Col = new string[] {
+ "marc", "book_name", "etc1", "etc2",
+ "r_num", "class_symbol", "author_symbol", "prefix", "s_book_name1",
+ "s_book_num1", "author", "book_comp", "price", "ISBN", "tag008","grade"
+ };
+ if (v_grade.isEmpty())
+ Array.Resize(ref Update_Col, Update_Col.Length - 1);
- string[] Update_Col = {
- "marc", "book_name", "etc1", "etc2",
- "r_num", "class_symbol", "author_symbol", "prefix", "s_book_name1",
- "s_book_num1", "author", "book_comp", "price", "ISBN", "tag008","grade"
- };
-
- string[] Update_data = {
- oriMarc, BookName, etc1, etc2,
- SearchBookTag[0], SearchBookTag[1], SearchBookTag[2], SearchBookTag[5], SearchBookTag[6],
- SearchBookTag[7], SearchBookTag[8], SearchBookTag[9], SearchBookTag[10], SearchBookTag[11], tag008,v_grade
- };
+ Update_data = new string[] {
+ oriMarc, BookName, etc1Value, etc2Value,
+ SearchBookTag[0], SearchBookTag[1], SearchBookTag[2], SearchBookTag[5], SearchBookTag[6],
+ SearchBookTag[7], SearchBookTag[8], SearchBookTag[9], SearchBookTag[10], SearchBookTag[11], tag008Value, v_grade
+ };
+ if (v_grade.isEmpty())
+ Array.Resize(ref Update_data, Update_data.Length - 1);
+ }
+ else // MasterMarc
+ {
+ Table = "Marc";
+ Search_data = new string[] { _param.MarcIdx };
+ // Using bits of logic from Marc_Plan_Sub_MarcEdit.Save_si
+ string today = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+ Update_Col = new string[] {
+ "marc", "marc_chk", "marc1", "marc_chk2", "date", "user",
+ "비고1", "비고2", "grade"//, "ISBN", "book_name", "author", "book_comp", "price"
+ };
+ if (v_grade.isEmpty())
+ Array.Resize(ref Update_Col, Update_Col.Length - 1);
+ Update_data = new string[] {
+ oriMarc, "1", _param.OriginalMarc, "0", today, PUB.user.UserName,
+ etc1Value, etc2Value, v_grade//, SearchBookTag[11], BookName, SearchBookTag[8], SearchBookTag[9], SearchBookTag[10]
+ };
+ if (v_grade.isEmpty())
+ Array.Resize(ref Update_data, Update_data.Length - 1);
+ }
string cmd = db.More_Update(Table, Update_Col, Update_data, Search_Col, Search_data);
- Helper_DB.ExcuteNonQuery(cmd);
-
- // Notify Parent
- BookUpdated?.Invoke(this, new BookUpdatedEventArgs
+ var rlt = Helper_DB.ExcuteNonQuery(cmd);
+ if(rlt.applyCount == 1)
{
- BookName = BookName,
- Marc = oriMarc,
- ISBN = SearchBookTag[11],
- Author = SearchBookTag[8],
- Publisher = SearchBookTag[9],
- Price = SearchBookTag[10],
- Grade = cb_grade.SelectedIndex,
- Etc1 = etc1,
- Etc2 = etc2,
- SaveDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
- User = UserName
- });
+ // Notify Parent
+ BookUpdated?.Invoke(this, new BookUpdatedEventArgs
+ {
+ BookName = BookName,
+ Marc = oriMarc,
+ ISBN = SearchBookTag[11],
+ Author = SearchBookTag[8],
+ Publisher = SearchBookTag[9],
+ Price = SearchBookTag[10],
+ Grade = v_grade,
+ Etc1 = etc1Value,
+ Etc2 = etc2Value,
+ SaveDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+ User = PUB.user.UserName
+ });
- MessageBox.Show("저장되었습니다!");
+ UTIL.MsgI($"저장되었습니다!\nDatabase = {this.Target}");
+ }
+ else if(rlt.applyCount == 0){
+ UTIL.MsgE($"저장된 자료가 없습니다\nIDX:{Search_data[0]}\n\n개발자 문의 하세요");
+ }
+ else if(rlt.applyCount > 1)
+ {
+ UTIL.MsgE($"복수({rlt.applyCount})의 자료가 업데이트 되었습니다\nIDX:{Search_data[0]}\n\n개발자 문의 하세요");
+ }
}
- private void btn_FillBlank_Click(object sender, EventArgs e)
+ private void btn_close_Click(object sender, EventArgs e)
{
- RequestFillBlankData?.Invoke(this, EventArgs.Empty);
+
}
}
}
diff --git a/unimarc/unimarc/마크/fMarc_Editor_Spec.Designer.cs b/unimarc/unimarc/마크/fMarc_Editor_Spec.Designer.cs
deleted file mode 100644
index d35bb43..0000000
--- a/unimarc/unimarc/마크/fMarc_Editor_Spec.Designer.cs
+++ /dev/null
@@ -1,248 +0,0 @@
-
-namespace UniMarc
-{
- partial class fMarc_Editor_Spec
- {
- ///
- /// Required designer variable.
- ///
- private System.ComponentModel.IContainer components = null;
-
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
- protected override void Dispose(bool disposing)
- {
- if (disposing && (components != null))
- {
- components.Dispose();
- }
- base.Dispose(disposing);
- }
-
- #region Windows Form Designer generated code
-
- ///
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- ///
- private void InitializeComponent()
- {
- this.panel5 = new System.Windows.Forms.Panel();
- this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
- this.etc1 = new System.Windows.Forms.RichTextBox();
- this.etc2 = new System.Windows.Forms.RichTextBox();
- this.panel6 = new System.Windows.Forms.Panel();
- this.radD = new System.Windows.Forms.RadioButton();
- this.radC = new System.Windows.Forms.RadioButton();
- this.radB = new System.Windows.Forms.RadioButton();
- this.radA = new System.Windows.Forms.RadioButton();
- this.label6 = new System.Windows.Forms.Label();
- this.lbl_SaveData = new System.Windows.Forms.TextBox();
- this.btNext = new System.Windows.Forms.Button();
- this.btPrev = new System.Windows.Forms.Button();
- this.btn_Save = new System.Windows.Forms.Button();
- this.panel5.SuspendLayout();
- this.tableLayoutPanel1.SuspendLayout();
- this.panel6.SuspendLayout();
- this.SuspendLayout();
- //
- // panel5
- //
- this.panel5.Controls.Add(this.tableLayoutPanel1);
- this.panel5.Controls.Add(this.panel6);
- this.panel5.Dock = System.Windows.Forms.DockStyle.Right;
- this.panel5.Location = new System.Drawing.Point(1071, 0);
- this.panel5.Name = "panel5";
- this.panel5.Size = new System.Drawing.Size(266, 768);
- this.panel5.TabIndex = 327;
- //
- // tableLayoutPanel1
- //
- this.tableLayoutPanel1.ColumnCount = 1;
- this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.Controls.Add(this.etc1, 0, 0);
- this.tableLayoutPanel1.Controls.Add(this.etc2, 0, 1);
- this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 308);
- this.tableLayoutPanel1.Name = "tableLayoutPanel1";
- this.tableLayoutPanel1.RowCount = 2;
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
- this.tableLayoutPanel1.Size = new System.Drawing.Size(266, 460);
- this.tableLayoutPanel1.TabIndex = 0;
- //
- // etc1
- //
- this.etc1.BackColor = System.Drawing.SystemColors.ScrollBar;
- this.etc1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.etc1.Font = new System.Drawing.Font("굴림체", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.etc1.Location = new System.Drawing.Point(3, 3);
- this.etc1.Name = "etc1";
- this.etc1.Size = new System.Drawing.Size(260, 224);
- this.etc1.TabIndex = 32;
- this.etc1.Text = "Remark1";
- //
- // etc2
- //
- this.etc2.BackColor = System.Drawing.SystemColors.ScrollBar;
- this.etc2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.etc2.Font = new System.Drawing.Font("굴림체", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.etc2.Location = new System.Drawing.Point(3, 233);
- this.etc2.Name = "etc2";
- this.etc2.Size = new System.Drawing.Size(260, 224);
- this.etc2.TabIndex = 32;
- this.etc2.Text = "Remark2";
- //
- // panel6
- //
- this.panel6.Controls.Add(this.radD);
- this.panel6.Controls.Add(this.radC);
- this.panel6.Controls.Add(this.radB);
- this.panel6.Controls.Add(this.radA);
- this.panel6.Controls.Add(this.label6);
- this.panel6.Controls.Add(this.lbl_SaveData);
- this.panel6.Controls.Add(this.btNext);
- this.panel6.Controls.Add(this.btPrev);
- this.panel6.Controls.Add(this.btn_Save);
- this.panel6.Dock = System.Windows.Forms.DockStyle.Top;
- this.panel6.Location = new System.Drawing.Point(0, 0);
- this.panel6.Name = "panel6";
- this.panel6.Size = new System.Drawing.Size(266, 308);
- this.panel6.TabIndex = 1;
- //
- // radD
- //
- this.radD.AutoSize = true;
- this.radD.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.radD.Location = new System.Drawing.Point(210, 12);
- this.radD.Name = "radD";
- this.radD.Size = new System.Drawing.Size(42, 27);
- this.radD.TabIndex = 328;
- this.radD.TabStop = true;
- this.radD.Text = "D";
- this.radD.UseVisualStyleBackColor = true;
- //
- // radC
- //
- this.radC.AutoSize = true;
- this.radC.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.radC.Location = new System.Drawing.Point(163, 12);
- this.radC.Name = "radC";
- this.radC.Size = new System.Drawing.Size(41, 27);
- this.radC.TabIndex = 327;
- this.radC.TabStop = true;
- this.radC.Text = "C";
- this.radC.UseVisualStyleBackColor = true;
- //
- // radB
- //
- this.radB.AutoSize = true;
- this.radB.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.radB.Location = new System.Drawing.Point(116, 12);
- this.radB.Name = "radB";
- this.radB.Size = new System.Drawing.Size(41, 27);
- this.radB.TabIndex = 326;
- this.radB.TabStop = true;
- this.radB.Text = "B";
- this.radB.UseVisualStyleBackColor = true;
- //
- // radA
- //
- this.radA.AutoSize = true;
- this.radA.Font = new System.Drawing.Font("Tahoma", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.radA.Location = new System.Drawing.Point(69, 12);
- this.radA.Name = "radA";
- this.radA.Size = new System.Drawing.Size(41, 27);
- this.radA.TabIndex = 325;
- this.radA.TabStop = true;
- this.radA.Text = "A";
- this.radA.UseVisualStyleBackColor = true;
- //
- // label6
- //
- this.label6.AutoSize = true;
- this.label6.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.label6.Location = new System.Drawing.Point(28, 22);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(31, 12);
- this.label6.TabIndex = 324;
- this.label6.Text = "등급";
- //
- // lbl_SaveData
- //
- this.lbl_SaveData.Font = new System.Drawing.Font("굴림체", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.lbl_SaveData.ForeColor = System.Drawing.Color.PaleTurquoise;
- this.lbl_SaveData.Location = new System.Drawing.Point(9, 45);
- this.lbl_SaveData.Multiline = true;
- this.lbl_SaveData.Name = "lbl_SaveData";
- this.lbl_SaveData.Size = new System.Drawing.Size(245, 179);
- this.lbl_SaveData.TabIndex = 319;
- this.lbl_SaveData.Text = "[] []";
- //
- // btNext
- //
- this.btNext.Location = new System.Drawing.Point(147, 269);
- this.btNext.Name = "btNext";
- this.btNext.Size = new System.Drawing.Size(107, 33);
- this.btNext.TabIndex = 230;
- this.btNext.Text = "다 음(F8)";
- this.btNext.UseVisualStyleBackColor = true;
- this.btNext.Click += new System.EventHandler(this.btNext_Click);
- //
- // btPrev
- //
- this.btPrev.Location = new System.Drawing.Point(14, 269);
- this.btPrev.Name = "btPrev";
- this.btPrev.Size = new System.Drawing.Size(107, 33);
- this.btPrev.TabIndex = 229;
- this.btPrev.Text = "이 전(F7)";
- this.btPrev.UseVisualStyleBackColor = true;
- this.btPrev.Click += new System.EventHandler(this.btPrev_Click);
- //
- // btn_Save
- //
- this.btn_Save.Location = new System.Drawing.Point(147, 230);
- this.btn_Save.Name = "btn_Save";
- this.btn_Save.Size = new System.Drawing.Size(107, 33);
- this.btn_Save.TabIndex = 215;
- this.btn_Save.Text = "저장(F9)";
- this.btn_Save.UseVisualStyleBackColor = true;
- this.btn_Save.Click += new System.EventHandler(this.btn_Save_Click);
- //
- // fMarc_Editor_Spec
- //
- this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
- this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(1337, 768);
- this.Controls.Add(this.panel5);
- this.Name = "fMarc_Editor_Spec";
- this.Text = "마크편집";
- this.Load += new System.EventHandler(this.Marc_Plan_Sub_MarcEdit2_Load);
- this.panel5.ResumeLayout(false);
- this.tableLayoutPanel1.ResumeLayout(false);
- this.panel6.ResumeLayout(false);
- this.panel6.PerformLayout();
- this.ResumeLayout(false);
-
- }
-
- #endregion
-
- private System.Windows.Forms.Panel panel5;
- private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
- public System.Windows.Forms.RichTextBox etc1;
- public System.Windows.Forms.RichTextBox etc2;
- private System.Windows.Forms.Panel panel6;
- private System.Windows.Forms.TextBox lbl_SaveData;
- private System.Windows.Forms.Button btNext;
- private System.Windows.Forms.Button btPrev;
- private System.Windows.Forms.Button btn_Save;
- private System.Windows.Forms.RadioButton radD;
- private System.Windows.Forms.RadioButton radC;
- private System.Windows.Forms.RadioButton radB;
- private System.Windows.Forms.RadioButton radA;
- private System.Windows.Forms.Label label6;
- }
-}
\ No newline at end of file
diff --git a/unimarc/unimarc/마크/fMarc_Editor_Spec.cs b/unimarc/unimarc/마크/fMarc_Editor_Spec.cs
deleted file mode 100644
index 1d35a66..0000000
--- a/unimarc/unimarc/마크/fMarc_Editor_Spec.cs
+++ /dev/null
@@ -1,211 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-using System.Drawing.Drawing2D;
-
-namespace UniMarc
-{
- public partial class fMarc_Editor_Spec : Form
- {
- string idx;
- public int row;
- public string UserName = "";
- Marc_Plan mp;
- Helper_DB db = new Helper_DB();
- String_Text st = new String_Text();
- Search_Infor si;
- Help008Tag tag008 = new Help008Tag();
- MarcEditorControl marcEditorControl1;
- private MacEditorParameter _param;
-
- public fMarc_Editor_Spec(string isbn, string marcstring)
- {
- InitializeComponent();
- db.DBcon();
- marcEditorControl1 = new MarcEditorControl();
- marcEditorControl1.db = this.db;
- marcEditorControl1.Dock = DockStyle.Fill;
- this.StartPosition = FormStartPosition.CenterScreen;
- this.Controls.Add(marcEditorControl1);
- this.KeyPreview = true;
- this.KeyDown += (s1, e1) =>
- {
- if (e1.KeyCode == Keys.Escape)
- {
- this.Close();
- }
- };
- }
-
- public event EventHandler RequestNext;
- public event EventHandler RequestPrev;
-
- public class BookUpdatedEventArgs : EventArgs
- {
- public string BookName { get; set; }
- public string Marc { get; set; }
- public string ISBN { get; set; }
- public string Author { get; set; }
- public string Publisher { get; set; }
- public string Price { get; set; }
- public string Grade { get; set; }
- public string Etc1 { get; set; }
- public string Etc2 { get; set; }
- public string SaveDate { get; set; }
- public string User { get; set; }
- }
-
- public event EventHandler RequestFillBlankData;
-
- public void OpenFillBlank(List gridData, string currentIsbn)
- {
- var fb = new UniMarc.Marc_FillBlank();
- foreach (var item in gridData)
- {
- fb.InitFillBlank(item);
- }
- fb.ISBN = currentIsbn;
-
- if (fb.ShowDialog() == DialogResult.OK)
- {
- BulkBooksUpdated?.Invoke(this, new BulkBookUpdatedEventArgs { Updates = fb.FillBlankItems });
- }
- }
-
- public class BulkBookUpdatedEventArgs : EventArgs
- {
- public List Updates { get; set; }
- }
-
- public event EventHandler BulkBooksUpdated;
-
-
-
- public event EventHandler BookUpdated;
-
-
- private string mk_BookName(string[] book_name)
- {
- string a245 = book_name[0]; // 도서명
- string x245 = book_name[1]; // 대동서명
- string b245 = book_name[2]; // 부서명
-
- string result = a245;
-
- if (x245 != "")
- result += " = " + x245;
-
- if (b245 != "")
- result += " : " + b245;
-
- return result;
- }
-
- public void LoadBook(string dbMarc, MacEditorParameter p)
- {
- this._param = p;
- this.Text = $"마크편집({p.ISBN13})-{p.BookName}";
- marcEditorControl1.LoadBookData(dbMarc, p.ISBN13);
- }
-
- private void Marc_Plan_Sub_MarcEdit2_Load(object sender, EventArgs e)
- {
- this.Show();
- Application.DoEvents();
- }
-
- private void btn_FillBlank_Click(object sender, EventArgs e)
- {
- RequestFillBlankData?.Invoke(this, EventArgs.Empty);
- }
-
- private void btPrev_Click(object sender, EventArgs e)
- {
- RequestPrev?.Invoke(this, EventArgs.Empty);
- }
-
- private void btNext_Click(object sender, EventArgs e)
- {
- RequestNext?.Invoke(this, EventArgs.Empty);
- }
-
- private void btn_Save_Click(object sender, EventArgs e)
- {
- if (marcEditorControl1.CheckValidation() == false) return;
-
- // Update Specs_Marc table
- string oriMarc = marcEditorControl1.MakeMarcString();
- string etc1 = this.etc1.Text.Trim();
- string etc2 = this.etc2.Text.Trim();
- string tag008 = marcEditorControl1.text008.Text;
- var v_grade = cb_grade.SelectedIndex.ToString();
-
- // 등록번호 분류기호 저자기호 볼륨 복본
- // 별치 총서명 총서번호 저자 출판사
- // 정가 ISBN
- string[] Search_Tag = {
- "049l", "090a", "090b", "049v", "049c",
- "049f", "440a", "440v", "245d", "260b",
- "950b", "020a"
- };
- string[] SearchBookTag = st.Take_Tag(oriMarc, Search_Tag);
-
- // 도서명 (본서명 = 대등서명 : 부서명)
- string[] BookTag = { "245a", "245x", "245b" };
- string[] BookNameTag = st.Take_Tag(oriMarc, BookTag);
- string BookName = mk_BookName(BookNameTag);
-
- string Table = "Specs_Marc";
- string[] Search_Col = { "idx" };
-
- // Current ListIdx (Wait, idx in Marc_Plan corresponds to ListIdx in Parameter?)
- // In Marc_Plan: ListIdx = idx.
- string listIdx = _param.ListIdx;
- string[] Search_data = { listIdx };
-
- string[] Update_Col = {
- "marc", "book_name", "etc1", "etc2",
- "r_num", "class_symbol", "author_symbol", "prefix", "s_book_name1",
- "s_book_num1", "author", "book_comp", "price", "ISBN", "tag008","grade"
- };
-
- string[] Update_data = {
- oriMarc, BookName, etc1, etc2,
- SearchBookTag[0], SearchBookTag[1], SearchBookTag[2], SearchBookTag[5], SearchBookTag[6],
- SearchBookTag[7], SearchBookTag[8], SearchBookTag[9], SearchBookTag[10], SearchBookTag[11], tag008,v_grade
- };
-
- string cmd = db.More_Update(Table, Update_Col, Update_data, Search_Col, Search_data);
- Helper_DB.ExcuteNonQuery(cmd);
-
- // Notify Parent
- BookUpdated?.Invoke(this, new BookUpdatedEventArgs
- {
- BookName = BookName,
- Marc = oriMarc,
- ISBN = SearchBookTag[11],
- Author = SearchBookTag[8],
- Publisher = SearchBookTag[9],
- Price = SearchBookTag[10],
- Grade = v_grade,
- Etc1 = etc1,
- Etc2 = etc2,
- SaveDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
- User = UserName
- });
-
- MessageBox.Show("저장되었습니다!");
- }
-
- private void btn_close_Click(object sender, EventArgs e)
- {
-
- }
- }
-}
diff --git a/unimarc/unimarc/마크/fMarc_Editor_Spec.resx b/unimarc/unimarc/마크/fMarc_Editor_Spec.resx
deleted file mode 100644
index 1af7de1..0000000
--- a/unimarc/unimarc/마크/fMarc_Editor_Spec.resx
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/microsoft-resx
-
-
- 2.0
-
-
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
\ No newline at end of file