프로젝트

일반

사용자정보

개정판 2bde63d4

ID2bde63d487d8f6f5f79f1baef18bf958d3db8b2a
상위 a23d0a0c
하위 133ac6ba

유성호이(가) 약 2년 전에 추가함

issue #000
삼성유저는 프로젝트 선택 없이 바로 리스트 화면으로 전환
삼성유저는 backstage 버튼 보이지 않도록 수정

Change-Id: I381519eaf2c6416e13724947b511392004b32b47

차이점 보기:

ID2.Manager/ID2.Manager.Data/Models/UserInfo.cs
27 27
        public string Company_UID { get; set; }
28 28
        [DataMember]
29 29
        public DateTime Registered { get; set; }
30

  
31
        public UserInfo DeepCopy(UserInfo data)
32
        {
33
            return new UserInfo()
34
            {
35
                UID = data.UID,
36
                ID = data.ID,
37
                Name = data.Name,
38
                Password = data.Password,
39
                Role = data.Role,
40
                RefProjectID = data.RefProjectID,
41
                Company_UID = data.Company_UID,
42
                Registered = data.Registered
43
            };
44
        }
30 45
    }
31 46
}
ID2.Manager/ID2.Manager/Main.cs
43 43
        {
44 44
            InitializeComponent();
45 45

  
46
            this.Initialize();
47

  
48 46
            //RadControlSpyForm radControlSpyForm = new RadControlSpyForm();
49 47
            //radControlSpyForm.Show();
50 48

  
......
84 82
            this.radRibbonBarBackstageViewID2Manager.BackstageViewClosed += RadRibbonBarBackstageViewID2Manager_BackstageViewClosed;
85 83

  
86 84
            this.InitColumnGroupsViewDefinition(this.radGridViewDocuments);
85

  
86
            this.Initialize();
87 87
        }
88 88

  
89 89
        #region Init, Load
90 90
        private void Initialize()
91 91
        {
92 92
            IEnumerable<UserInfo> allUserList = new UserController().GetAllUserInfo();
93
            allUserList.ToList().ForEach(x => informations.UserList.Add(x));
93
            allUserList.ToList().ForEach(x => informations.UserList.Add(x.DeepCopy(x)));
94 94

  
95 95
            this.radLabelElementUser.Text = $"{informations.ActiveUser.ID} {informations.ActiveUser.Name}";
96
            
97
            if ((new string[] { "Admin", "Manager" }).Contains(informations.ActiveUser.Role))
98
            {
99
                this.backstageViewPageOpenProject.Controls[0].Visible = true;
100
                this.backstageTabItemOpenProject.Visibility = ElementVisibility.Visible;
101
                this.backstageButtonItemUserRegistration.Visibility = ElementVisibility.Visible;
102
            }
103
            else
104
            {
105
                this.backstageViewPageOpenProject.Controls[0].Visible = false;
106
                this.backstageTabItemOpenProject.Visibility = ElementVisibility.Collapsed;
107
                this.backstageButtonItemUserRegistration.Visibility = ElementVisibility.Collapsed;
108
            }
96 109
        }
97 110

  
98 111
        protected override void OnLoad(EventArgs e)
99 112
        {
100
            this.radRibbonBarBackstageViewID2Manager.ShowPopup(this.GetBackstageLocation(), this.ID2ManagerRadRibbonBar.RibbonBarElement);
113
            if (informations.ActiveUser != null && !string.IsNullOrEmpty(informations.ActiveUser.RefProjectID))
114
            {
115
                informations.ActiveProject = new ProjectController().GetProjectInfo(informations.ActiveUser.RefProjectID);
116
                informations.ProjectList = new ProjectController().GetAllProjectList().ToList();
117

  
118
                this.LoadProject();
119
            }
120
            else
121
            {
122
                this.radRibbonBarBackstageViewID2Manager.ShowPopup(this.GetBackstageLocation(), this.ID2ManagerRadRibbonBar.RibbonBarElement);
123
            }
101 124

  
102 125
            base.OnLoad(e);
103 126
        }
......
237 260
                informations.ActiveProject = prjArgs.ProjectInfo;
238 261
                informations.ProjectList = prjArgs.ProjectList;
239 262

  
240
                //Project List
241
                if (this.radDropDownListProject.Items.Count > 0)
242
                    this.radDropDownListProject.Items.Clear();
243
                informations.ProjectList.Where(x => x.GroupID.Equals(informations.ActiveProject.ProjectID)).ToList()
244
                                        .ForEach(x =>
245
                                        {
246
                                            this.radDropDownListProject.Items.Add(new RadListDataItem(x.Name, x.ProjectID));
247
                                        });
248
                var allProject = new RadListDataItem("== 전체 ==", string.Empty);
249
                this.radDropDownListProject.Items.Insert(0, allProject);
250
                allProject.Selected = true;
251

  
252
                //문서번호 조회조건
253
                this.radTextBoxDocumentNo.Text = string.Empty;
254

  
255
                //담당자 List
256
                if (this.radDropDownListPersonInCharge.Items.Count > 0)
257
                    this.radDropDownListPersonInCharge.Items.Clear();
258
                informations.UserList.ForEach(x =>
259
                {
260
                    if (!x.Role.Equals("Admin"))
261
                        this.radDropDownListPersonInCharge.Items.Add(new RadListDataItem(x.Name, x.ID));
262
                });
263
                var allUser = new RadListDataItem("== 전체 ==", string.Empty);
264
                this.radDropDownListPersonInCharge.Items.Insert(0, allUser);
265
                allUser.Selected = true;
266

  
267
                this.GetDocList();
268
                this.DocumentListBinding();
263
                this.radRibbonBarBackstageViewID2Manager.Tag = null;
264

  
265
                this.LoadProject();
269 266
            }
270 267
        }
271 268

  
269
        private void LoadProject()
270
        {
271
            //Project List
272
            if (this.radDropDownListProject.Items.Count > 0)
273
                this.radDropDownListProject.Items.Clear();
274
            informations.ProjectList.Where(x => x.GroupID.Equals(informations.ActiveProject.ProjectID)).ToList()
275
                                    .ForEach(x =>
276
                                    {
277
                                        this.radDropDownListProject.Items.Add(new RadListDataItem(x.Name, x.ProjectID));
278
                                    });
279
            var allProject = new RadListDataItem("== 전체 ==", string.Empty);
280
            this.radDropDownListProject.Items.Insert(0, allProject);
281
            allProject.Selected = true;
282

  
283
            //문서번호 조회조건
284
            this.radTextBoxDocumentNo.Text = string.Empty;
285

  
286
            //담당자 List
287
            if (this.radDropDownListPersonInCharge.Items.Count > 0)
288
                this.radDropDownListPersonInCharge.Items.Clear();
289
            informations.UserList.ForEach(x =>
290
            {
291
                if (!x.Role.Equals("Admin"))
292
                    this.radDropDownListPersonInCharge.Items.Add(new RadListDataItem(x.Name, x.ID));
293
            });
294
            var allUser = new RadListDataItem("== 전체 ==", string.Empty);
295
            this.radDropDownListPersonInCharge.Items.Insert(0, allUser);
296
            allUser.Selected = true;
297

  
298
            this.GetDocList();
299
            this.DocumentListBinding();
300
        }
301

  
272 302
        #region Document List 조회
273 303
        public void GetDocList()
274 304
        {

내보내기 Unified diff

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