프로젝트

일반

사용자정보

개정판 2201f8c4

ID2201f8c44cede670b2f2aefe50fd2ab62616111f
상위 4142eefa
하위 a850d3d9

유성호이(가) 일년 이상 전에 추가함

issue #0000
excel import data 삭제할 수 있도록 수정

Change-Id: Ic48ad1a63dc129ddaf329a7345ccea1e4c6e03d2

차이점 보기:

ID2.Manager/ID2.Manager.Controller/Controllers/ExcelDataController.cs
33 33

  
34 34
            return result;
35 35
        }
36

  
37
        public bool DeleteExcelData(string FileName, string WorksheetName)
38
        {
39
            using (ExcelDataRepository repository = new ExcelDataRepository(this._MSSQLCONNSTR))
40
            {
41
                return repository.DeleteExcelData(FileName, WorksheetName);
42
            }
43
        }
36 44
    }
37 45
}
ID2.Manager/ID2.Manager.Dapper/Repository/ExcelDataRepository.cs
42 42
                throw ex;
43 43
            }
44 44
        }
45

  
46
        public bool DeleteExcelData(string FileName, string WorksheetName)
47
        {
48
            bool isSuccess = false;
49

  
50
            try
51
            {
52
                using (var transaction = base.BeginTransaction())
53
                {
54
                    string query = $@"delete from dbo.ImportExcel where [FILE_NAME] = @FileName and WORKSHEET_NAME = @WorksheetName";
55
                    var dynamicParameters = new DynamicParameters();
56
                    dynamicParameters.Add("@FileName", FileName);
57
                    dynamicParameters.Add("@WorksheetName", WorksheetName);
58

  
59
                    Execute(query, dynamicParameters, transaction);
60

  
61
                    transaction.Commit();
62
                    isSuccess = true;
63
                }
64
            }
65
            catch (Exception ex)
66
            {
67
                throw ex;
68
            }
69

  
70
            return isSuccess;
71
        }
45 72
    }
46 73
}
ID2.Manager/ID2.Manager/Forms/SelectExcelData.cs
14 14
using Telerik.WinControls.Layouts;
15 15
using Telerik.WinControls.UI;
16 16

  
17
using System.Reflection;
18

  
17 19
namespace ID2.Manager.Forms
18 20
{
19 21
    public partial class SelectExcelData : RadForm
......
31 33
        /// </summary>
32 34
        public ExcelDataInfo SelectInfo = null;
33 35

  
36
        LightVisualElement clearElement = new LightVisualElement();
37

  
34 38
        public SelectExcelData()
35 39
        {
36 40
            InitializeComponent();
......
43 47
            drpSelectExcel.ItemDataBinding += DrpSelectExcel_ItemDataBinding;
44 48
            drpSelectExcel.CreatingVisualListItem += new CreatingVisualListItemEventHandler(DrpSelectExcel_CreatingVisualListItem);
45 49
            drpSelectExcel.DropDownSizingMode = SizingMode.UpDownAndRightBottom;
46
            drpSelectExcel.DropDownStyle = Telerik.WinControls.RadDropDownStyle.DropDownList;
50
            drpSelectExcel.DropDownStyle = RadDropDownStyle.DropDownList;
47 51
            drpSelectExcel.DropDownAnimationEnabled = false;
52

  
53
            clearElement.StretchHorizontally = false;
54
            clearElement.Visibility = ElementVisibility.Collapsed;
55
            clearElement.Alignment = ContentAlignment.MiddleRight;
56
            clearElement.Text = "X";
57
            clearElement.Click += ClearElement_Click;
58

  
59
            drpSelectExcel.DropDownListElement.EditableElement.Children.Add(clearElement);
60
            drpSelectExcel.SelectedIndexChanged += DrpSelectExcel_SelectedIndexChanged;
48 61
        }
49 62

  
50 63
        private void BtnCancel_Click(object sender, EventArgs e)
......
81 94
            args.NewItem = new ExcelDataItem();
82 95
        }
83 96

  
97
        private void ClearElement_Click(object sender, EventArgs e)
98
        {
99
            try
100
            {
101
                if (RadMessageBox.Show("Delete Excel data?", Globals.Name, MessageBoxButtons.YesNo, RadMessageIcon.Question) == DialogResult.Yes)
102
                {
103
                    if (drpSelectExcel.SelectedItem != null)
104
                    {
105
                        this.SelectInfo = drpSelectExcel.SelectedItem.DataBoundItem as ExcelDataInfo;
106

  
107
                        bool result = new ExcelDataController().DeleteExcelData(this.SelectInfo.FILE_NAME, this.SelectInfo.WORKSHEET_NAME);
108

  
109
                        if (result)
110
                        {
111
                            RadMessageBox.Show("Delete is complete.", Globals.Name, MessageBoxButtons.OK, RadMessageIcon.Info);
112

  
113
                            var info = new ExcelDataController().GetExcelDataInfo();
114
                            drpSelectExcel.DisplayMember = "FullName";
115
                            drpSelectExcel.ValueMember = "FullName";
116

  
117
                            drpSelectExcel.DataSource = info;
118
                            drpSelectExcel.AutoSizeItems = true;
119
                            drpSelectExcel.SelectedIndex = -1;
120

  
121
                            drpSelectExcel.ShowDropDown();
122
                        }
123
                        else
124
                        {
125
                            RadMessageBox.Show("Failed to delete Excel data.", Globals.Name, MessageBoxButtons.OK, RadMessageIcon.Error);
126
                        }
127
                    }
128
                    else
129
                    {
130
                        RadMessageBox.Show("선택된 Sheet가 없습니다.", Globals.Name, MessageBoxButtons.OK, RadMessageIcon.Info);
131
                    }
132
                }
133
            }
134
            catch (Exception ex)
135
            {
136
                Program.logger.Error($"An exception occurred from {MethodBase.GetCurrentMethod().Name}", ex);
137
                RadMessageBox.Show("Failed to delete Excel data.", Globals.Name, MessageBoxButtons.OK, RadMessageIcon.Error);
138
            }
139
        }
140

  
141
        private void DrpSelectExcel_SelectedIndexChanged(object sender, Telerik.WinControls.UI.Data.PositionChangedEventArgs e)
142
        {
143
            clearElement.Visibility = drpSelectExcel.SelectedIndex == -1 ? ElementVisibility.Collapsed : ElementVisibility.Visible;
144
        }
145

  
84 146
        private void SelectExcelData_Load(object sender, EventArgs e)
85 147
        {
86 148
            var info = new ExcelDataController().GetExcelDataInfo();

내보내기 Unified diff