private void deleteRecord() { if (dgSignInDetailList.SelectedItems.Count > 0) { try { if (recordsign) { foreach (var sign in SignInDetailList) { tempList.Add(sign); } recordsign = false; } //Modified by:Sam //Date:2011-08-18 //For: 原本删除的时候先取实体的ID,再根据ID过滤实体,再删除实体 // 增加删除SignInDetailList变量,这里是导致如果删除一条明细,但是传到手机版还是没有改过的原因 //string id = (dgSignInDetailList.SelectedItems[0] as T_HR_EMPLOYEESIGNINDETAIL).SIGNINDETAILID; //tempList.Remove(tempList.Where(x => x.SIGNINDETAILID == id).FirstOrDefault()); tempList.Remove(dgSignInDetailList.SelectedItems[0] as T_HR_EMPLOYEESIGNINDETAIL); SignInDetailList.Remove(dgSignInDetailList.SelectedItems[0] as T_HR_EMPLOYEESIGNINDETAIL); dgSignInDetailList.ItemsSource = tempList; } catch { } } else { Utility.ShowCustomMessage(MessageTypes.Error, Utility.GetResourceStr("EMPLOYEESIGNINRECORD"), Utility.GetResourceStr("请选择一条记录")); } }
/// <summary> /// 根据签卡表主键索引,获取考勤异常记录 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void clientAtt_GetEmployeeSignInDetailBySigninIDCompleted(object sender, GetEmployeeSignInDetailBySigninIDCompletedEventArgs e) { try { if (e.Error == null) { SignInDetailList = e.Result; List <T_HR_EMPLOYEESIGNINDETAIL> listSigns = new List <T_HR_EMPLOYEESIGNINDETAIL>(); if (FormType == FormTypes.Browse || FormType == FormTypes.Audit) { foreach (var ent in SignInDetailList) { //1:漏打卡 2:未发卡 3 因公外出 4机械故障 switch (ent.REASONCATEGORY) { case "1": ent.REASONCATEGORY = "漏打"; break; case "2": ent.REASONCATEGORY = "未发卡"; break; case "3": ent.REASONCATEGORY = "因公外出"; break; case "4": ent.REASONCATEGORY = "机械故障"; break; } listSigns.Add(ent); } } else { listSigns = SignInDetailList.ToList(); } dgSignInDetailList.ItemsSource = listSigns; string strLoginUserId = SMT.SAAS.Main.CurrentContext.Common.CurrentLoginUserInfo.EmployeeID; if (SignInRecord.CHECKSTATE != Convert.ToInt32(CheckStates.UnSubmit).ToString())//SignInRecord.EMPLOYEEID != strLoginUserId || { dgSignInDetailList.IsEnabled = false; txtRemark.IsEnabled = false; } } else { Utility.ShowCustomMessage(MessageTypes.Error, Utility.GetResourceStr("ERROR"), Utility.GetResourceStr(e.Error.Message)); } RefreshUI(RefreshedTypes.AuditInfo); SetToolBar(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } finally { RefreshUI(RefreshedTypes.HideProgressBar); } }