프로젝트

일반

사용자정보

개정판 04a7385a

ID04a7385a29a827348c462f2568ea98cbbf559a01
상위 c460df05
하위 119b58c6

김동진이(가) 6년 이상 전에 추가함

#595 Team Consolidate Web Service Add

차이점 보기:

KCOM/Views/MainMenu.xaml.cs
4478 4478
            ConsolidationMethod();
4479 4479
        }
4480 4480

  
4481
        public void TeamConsolidationMethod()
4482
        {
4483
            ChangeCommentReact();
4484
            if (this.gridViewMarkup.SelectedItems.Count == 0)
4485
            {
4486
                this.ParentOfType<MainWindow>().DialogMessage_Alert("Please select at least one user", "Alert");
4487
            }
4488
            else
4489
            {
4490
                foreach (MarkupInfoItem item in this.gridViewMarkup.SelectedItems)
4491
                {
4492
                    if (!this.userData.DEPARTMENT.Equals(item.Depatment))
4493
                    {
4494
                        this.ParentOfType<MainWindow>().DialogMessage_Alert("Please select at your department", "Alert");
4495
                        return;
4496
                    }                    
4497
                }
4498
                ViewerDataModel.Instance.IsConsolidate = true;
4499
                this.ParentOfType<MainWindow>().dzTopMenu._SaveEvent(null, null);
4500
                List<KCOMDataModel.DataModel.MARKUP_DATA> instanceDataSet = new List<KCOMDataModel.DataModel.MARKUP_DATA>();
4501

  
4502
                string project_no = App.ViewInfo.ProjectNO;
4503
                string doc_id = _DocInfo.ID;
4504
                string user_id = App.ViewInfo.UserID;
4505
                List<MarkupInfoItem> markupInfoItems = new List<MarkupInfoItem>();
4506
                foreach (MarkupInfoItem item in this.gridViewMarkup.SelectedItems)
4507
                {                    
4508
                    markupInfoItems.Add(item);
4509
                }
4510
                this.BaseClient.TeamConsolidate(project_no, user_id, doc_id, markupInfoItems);
4511

  
4512
                this.BaseClient.GetMarkupInfoItemsAsync(App.ViewInfo.ProjectNO, _DocInfo.ID);
4513
            }
4514
        }
4481 4515
        public void ConsolidationMethod()
4482 4516
        {
4483 4517
            ChangeCommentReact();
......
4521 4555

  
4522 4556
        private void btnTeamConsolidate_Click(object sender, RoutedEventArgs e)
4523 4557
        {
4524

  
4558
            TeamConsolidationMethod();
4525 4559
        }
4526 4560

  
4527 4561
        private void btnTeamConsolidate_Loaded(object sender, RoutedEventArgs e)
KCOM_API/ServiceDeepView.svc.cs
1508 1508
        }
1509 1509

  
1510 1510
        [OperationContract]
1511
        public bool TeamConsolidate(string project_no, string _user_id, string _doc_id, List<MarkupInfoItem> markupInfoItems)
1512
        {
1513
            try
1514
            {
1515
                List<KCOMDataModel.DataModel.MARKUP_DATA> instanceDataSet = new List<KCOMDataModel.DataModel.MARKUP_DATA>();
1516
                using (CIEntities Entity = new CIEntities(ConnectStringBuilder.ProjectCIConnectString(project_no).ToString()))
1517
                {
1518
                    var markupInfo = Entity.MARKUP_INFO.Where(entity => entity.DOCINFO_ID == _doc_id).OrderByDescending(i => i.CONSOLIDATE).OrderByDescending(j => j.CREATE_TIME).FirstOrDefault();
1519
                    if (markupInfo.PART_CONSOLIDATE == 1)
1520
                    {
1521
                        markupInfo.AVOID_CONSOLIDATE = 1;
1522
                    }
1523

  
1524
                    foreach (MarkupInfoItem item in markupInfoItems)
1525
                    {
1526
                        Entity.MARKUP_DATA.Where(data => data.MARKUPINFO_VERSION_ID == item.MarkupVersionID).ToList().ForEach(d =>
1527
                        {
1528
                            instanceDataSet.Add(d);
1529
                        });
1530
                    }
1531

  
1532
                    KCOMDataModel.DataModel.MARKUP_INFO info = new KCOMDataModel.DataModel.MARKUP_INFO();
1533
                    info.ID = shortGuid();
1534
                    info.PART_CONSOLIDATE = 1;
1535
                    info.CREATE_TIME = DateTime.Now;
1536
                    info.DOCINFO_ID = _doc_id;
1537
                    info.UPDATE_TIME = DateTime.Now;
1538
                    info.USER_ID = _user_id;
1539
                    info.AVOID_CONSOLIDATE = 0;
1540

  
1541
                    Entity.MARKUP_INFO.AddObject(info);
1542
                    Entity.SaveChanges();
1543

  
1544

  
1545
                    KCOMDataModel.DataModel.MARKUP_INFO_VERSION info2 = new KCOMDataModel.DataModel.MARKUP_INFO_VERSION
1546
                    {
1547
                        ID = shortGuid(),
1548
                        CREATE_DATE = DateTime.Now,
1549
                        MARKUP_INFO = info,
1550
                    };
1551
                    Entity.SaveChanges();
1552

  
1553
                    foreach (var item in instanceDataSet)
1554
                    {
1555
                        Entity.MARKUP_DATA.AddObject(new KCOMDataModel.DataModel.MARKUP_DATA
1556
                        {
1557
                            ID = shortGuid(),
1558
                            DATA = item.DATA,
1559
                            DATA_TYPE = item.DATA_TYPE,
1560
                            PAGENUMBER = item.PAGENUMBER,
1561
                            MARKUP_INFO_VERSION = info2
1562
                        });
1563
                    }
1564
                    Entity.SaveChanges();
1565

  
1566

  
1567
                }
1568
            }
1569
            catch (Exception)
1570
            {
1571
                return false;
1572
            }
1573
            return true;
1574
        }
1575

  
1576
        [OperationContract]
1511 1577
        [ServiceKnownType(typeof(MEMBER))]
1512 1578
        public MEMBER GetMember(string project_no, string user_id)
1513 1579
        {
......
1779 1845
            }
1780 1846
            return markupinfo;
1781 1847
        }
1848

  
1849
        [OperationContract]
1850
        public bool AddMessage(string project_no, TALK value)
1851
        {
1852
            try
1853
            {
1854
                using (CIEntities entity = new CIEntities(ConnectStringBuilder.ProjectCIConnectString(project_no).ToString()))
1855
                {                    
1856
                    entity.TALK.AddObject(value);
1857
                    entity.SaveChanges();
1858
                }
1859
            }
1860
            catch (Exception)
1861
            {
1862
                return false;
1863
            }
1864
            return true;
1865
        }
1866

  
1867
        [OperationContract]
1868
        public List<TALK> GetMessage(string project_no, string doc_id)
1869
        {
1870
            List<TALK> result = new List<TALK>();
1871
            try
1872
            {
1873
                using (CIEntities entity = new CIEntities(ConnectStringBuilder.ProjectCIConnectString(project_no).ToString()))
1874
                {
1875
                    result = entity.TALK.Where(data => data.DOCUMENT_ID == doc_id).ToList();                        
1876
                }
1877
            }
1878
            catch (Exception)
1879
            {
1880
                return result;
1881
            }
1882
            return result;
1883
        }
1782 1884
    }
1783 1885
}

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)