개정판 1ae525e9
issue #0000
worker class 추가
Change-Id: I980cd738dac37afa54b56b34a11ba1f79cf7aeba
ID2.Manager/ID2.Manager/ID2.Manager.csproj | ||
---|---|---|
77 | 77 |
</ItemGroup> |
78 | 78 |
<ItemGroup> |
79 | 79 |
<Compile Include="Classes\BaseWorker.cs" /> |
80 |
<Compile Include="Classes\DocumentsWorker.cs" /> |
|
80 | 81 |
<Compile Include="Classes\ID2Helper.cs" /> |
81 | 82 |
<Compile Include="Classes\LinqExtension.cs" /> |
82 | 83 |
<Compile Include="Classes\MarkusUriCreate.cs" /> |
ID2.Manager/ID2.Manager/Main.cs | ||
---|---|---|
17 | 17 |
using ID2.Manager.Data.Models; |
18 | 18 |
using ID2.Manager.Forms; |
19 | 19 |
using ID2.Manager.Controller.Controllers; |
20 |
using static ID2.Manager.Data.Models.Documents; |
|
21 | 20 |
|
22 | 21 |
using Telerik.WinControls; |
23 | 22 |
using Telerik.WinControls.UI; |
... | ... | |
1342 | 1341 |
List<Documents> setDocuments = new List<Documents>(); |
1343 | 1342 |
List<Documents> delDocuments = new List<Documents>(); |
1344 | 1343 |
|
1345 |
var worker = new DocumentsWorker(this.documents, this.orgDocuments, setDocuments, delDocuments, this.radGridViewDocuments); |
|
1344 |
var worker = new SetDocumentsWorker(this.documents, this.orgDocuments, setDocuments, delDocuments, this.radGridViewDocuments);
|
|
1346 | 1345 |
worker.OnWorkCompletedHandler += () => |
1347 | 1346 |
{ |
1348 | 1347 |
bool result = new DocumentController().SetDocumentData(setDocuments, delDocuments, informations.ActiveUser.ID); |
... | ... | |
1580 | 1579 |
} |
1581 | 1580 |
#endregion |
1582 | 1581 |
|
1583 |
class DocumentsWorker : BaseWorker |
|
1584 |
{ |
|
1585 |
public delegate void OnWorkCompleted(); |
|
1586 |
public OnWorkCompleted OnWorkCompletedHandler; |
|
1587 |
|
|
1588 |
List<Documents> docList { get; set; } |
|
1589 |
List<Documents> orgList { get; set; } |
|
1590 |
List<Documents> setList { get; set; } |
|
1591 |
List<Documents> delList { get; set; } |
|
1592 |
|
|
1593 |
public DocumentsWorker(List<Documents> docList, List<Documents> orgDocList, List<Documents> setDocList, List<Documents> delDocList, Control parent = null) : base(parent) |
|
1594 |
{ |
|
1595 |
this.docList = docList; |
|
1596 |
this.orgList = orgDocList; |
|
1597 |
this.setList = setDocList; |
|
1598 |
this.delList = delDocList; |
|
1599 |
} |
|
1600 |
protected override void DoWork(BackgroundWorker worker) |
|
1601 |
{ |
|
1602 |
//수정리스트 |
|
1603 |
this.docList.Where(x => !this.orgList.Any(y => y.Equals(x))) |
|
1604 |
.ToList().ForEach(x => this.setList.Add(x)); |
|
1605 |
//삭제리스트 |
|
1606 |
this.delList.AddRange(this.orgList.Except(this.docList, new DocumentsKeyComparer())); |
|
1607 |
} |
|
1608 |
|
|
1609 |
protected override void WorkCompleted() |
|
1610 |
{ |
|
1611 |
if (this.OnWorkCompletedHandler != null) this.OnWorkCompletedHandler(); |
|
1612 |
} |
|
1613 |
} |
|
1614 |
|
|
1615 | 1582 |
private void txtFullSearch_TextChanged(object sender, EventArgs e) |
1616 | 1583 |
{ |
1617 | 1584 |
if(string.IsNullOrWhiteSpace(txtFullSearch.Text)) |
내보내기 Unified diff