/// <summary> /// 查看已删除的员工档案 /// </summary> /// <returns>返回列表视图</returns> public ActionResult StaffViewDeleted() { IStaffBLL bLL = new StaffBLL(); IOrgBLL orgBLL = new OrgBLL(); IOccupationBLL occupationBLL = new OccupationBLL(); List <Staff> staffList = bLL.GetAllStaffDeleted(); List <Models.Staff> staffListView = new List <Models.Staff>(); if (staffList != null) { foreach (var staff in staffList) { Models.Staff tempStaff = new Models.Staff { Id = staff.Id, StaffFileNumber = staff.StaffFileNumber, StaffName = staff.StaffName, FileState = staff.FileState, IsDel = staff.IsDel }; ThirdOrg thirdOrg = orgBLL.GetThirdOrgById(staff.ThirdOrgId); SecondOrg secondOrg = orgBLL.GetSecondOrgById(thirdOrg.ParentOrgId); FirstOrg firstOrg = orgBLL.GetFirstOrgById(secondOrg.ParentOrgId); tempStaff.FirstOrg = new Models.FirstOrg { Id = firstOrg.Id, OrgLevel = firstOrg.OrgLevel, OrgName = firstOrg.OrgName }; tempStaff.SecondeOrg = new Models.SecondeOrg { Id = secondOrg.Id, OrgName = secondOrg.OrgName, OrgLevel = secondOrg.OrgLevel, ParentOrg = tempStaff.FirstOrg }; tempStaff.ThirdOrg = new Models.ThirdOrg { Id = thirdOrg.Id, ParentOrg = tempStaff.SecondeOrg, OrgLevel = thirdOrg.OrgLevel, OrgName = thirdOrg.OrgName }; OccupationName occupationName = occupationBLL.GetOccupationNameById(staff.OccId); tempStaff.OccupationName = new Models.OccupationName { Id = occupationName.Id, Name = occupationName.Name }; staffListView.Add(tempStaff); } } ViewData["staffListView"] = staffListView; return(View()); }
public ActionResult EditOccupationName(string id) { IOccupationBLL bLL = new OccupationBLL(); OccupationName occupationName = bLL.GetOccupationNameById(Convert.ToInt32(id)); Models.OccupationName occupationNameView = new Models.OccupationName { Id = occupationName.Id, Name = occupationName.Name }; OccupationClass occupationClass = bLL.GetOccupationClassById(occupationName.ClassId); Models.OccupationClass occupationClassView = new Models.OccupationClass { Id = occupationClass.Id, Name = occupationClass.Name }; occupationNameView.OccupationClass = occupationClassView; ViewData["occupationNameView"] = occupationNameView; //装载所有的职位类型,用于职位类型选择的下拉框 List <Models.OccupationClass> occupationClassList = new List <Models.OccupationClass>(); foreach (var oc in bLL.GetAllOccupationClass()) { Models.OccupationClass tempOccupationClass = new Models.OccupationClass { Id = oc.Id, Name = oc.Name }; occupationClassList.Add(tempOccupationClass); } ViewData["occupationClassList"] = occupationClassList; return(View()); }
/// <summary> /// 控制器内部方法,通过id获取薪酬标准的详细信息 /// </summary> /// <param name="id">薪酬标准的id</param> private void GetStandardById(string id) { ISalaryBLL salaryBLL = new SalaryBLL(); ISalaryItemBLL salaryItemBLL = new SalaryItemBLL(); IOccupationBLL occupationBLL = new OccupationBLL(); //通过id查找到薪酬标准 SalaryStandard salaryStandard = salaryBLL.GetSalaryStandardById(Convert.ToInt32(id)); //视图模型薪酬标准 Models.SalaryStandard salaryStandardView = new Models.SalaryStandard { Id = salaryStandard.Id, StandardName = salaryStandard.StandardName, StandardFileNumber = salaryStandard.StandardFileNumber, Registrant = salaryStandard.Registrant, RegistTime = salaryStandard.RegistTime, DesignBy = salaryStandard.DesignBy, Total = salaryStandard.Total, StandardState = salaryStandard.StandardState, CheckDesc = salaryStandard.CheckDesc, CheckBy = salaryStandard.CheckBy }; //通过薪酬标准的id找到所有的项目映射关系 List <StandardMapItem> tempMapList = salaryBLL.GetAllStandardMapItemByStandardId(salaryStandard.Id); //遍历映射关系,并把薪酬项目和薪酬项目的金额装载到视图模型薪酬标准的字典中 foreach (var m in tempMapList) { SalaryItem tempSalaryItem = salaryItemBLL.GetSalaryItemById(m.ItemId); Models.SalaryItem salaryItemView = new Models.SalaryItem { Id = tempSalaryItem.Id, Name = tempSalaryItem.Name }; salaryStandardView.ItemAmout.Add(salaryItemView, m.Amout); } //通过薪酬标准的id找到所有的职位映射关系 List <StandardMapOccupationName> occList = salaryBLL.GetAllStandardMapOccByStandardId(salaryStandard.Id); if (occList != null) { foreach (var o in occList) { OccupationName tempOccName = occupationBLL.GetOccupationNameById(o.OccupationNameId); Models.OccupationName occupationNameView = new Models.OccupationName { Id = tempOccName.Id, Name = tempOccName.Name }; OccupationClass tempOccClass = occupationBLL.GetOccupationClassById(tempOccName.ClassId); occupationNameView.OccupationClass = new Models.OccupationClass { Id = tempOccClass.Id, Name = tempOccClass.Name }; salaryStandardView.OccList.Add(occupationNameView); } } ViewData["salaryStandardView"] = salaryStandardView; //装载所有薪酬项目 List <SalaryItem> salaryList = salaryItemBLL.GetAllSalaryItem(); List <Models.SalaryItem> itemList = new List <Models.SalaryItem>(); foreach (var item in salaryList) { Models.SalaryItem tempItem = new Models.SalaryItem { Id = item.Id, Name = item.Name }; itemList.Add(tempItem); } ViewData["itemList"] = itemList; //装载所有职位类型 List <OccupationClass> occClassList = occupationBLL.GetAllOccupationClass(); List <Models.OccupationClass> occClassListView = new List <Models.OccupationClass>(); if (occClassList != null) { foreach (var oc in occClassList) { Models.OccupationClass tempClass = new Models.OccupationClass() { Id = oc.Id, Name = oc.Name }; occClassListView.Add(tempClass); } } ViewData["occClassListView"] = occClassListView; //装载所有该薪酬标准的职位类型下的所有职位 List <Models.OccupationName> occNameList = new List <Models.OccupationName>(); for (int i = 0; i < salaryStandardView.OccList.Count; i++) { List <OccupationName> tempList = occupationBLL.GetAllOccNameByClassId(salaryStandardView.OccList[i].OccupationClass.Id); foreach (var on in tempList) { Models.OccupationName tempOccupationName = new Models.OccupationName { Id = on.Id, Name = on.Name, OccupationClass = salaryStandardView.OccList[i].OccupationClass }; occNameList.Add(tempOccupationName); } } ViewData["occNameList"] = occNameList; }
/// <summary> /// 薪酬标准详情 /// </summary> /// <param name="id">薪酬标准的id</param> /// <returns>薪酬标准详情页</returns> public ActionResult DetailSalaryStandard(string id) { ISalaryBLL salaryBLL = new SalaryBLL(); ISalaryItemBLL salaryItemBLL = new SalaryItemBLL(); IOccupationBLL occupationBLL = new OccupationBLL(); //通过id查找到薪酬标准 SalaryStandard salaryStandard = salaryBLL.GetSalaryStandardById(Convert.ToInt32(id)); //视图模型薪酬标准 Models.SalaryStandard salaryStandardView = new Models.SalaryStandard { Id = salaryStandard.Id, StandardName = salaryStandard.StandardName, StandardFileNumber = salaryStandard.StandardFileNumber, Registrant = salaryStandard.Registrant, RegistTime = salaryStandard.RegistTime, DesignBy = salaryStandard.DesignBy, Total = salaryStandard.Total, StandardState = salaryStandard.StandardState, CheckDesc = salaryStandard.CheckDesc, CheckBy = salaryStandard.CheckBy }; //通过薪酬标准的id找到所有的项目映射关系 List <StandardMapItem> tempMapList = salaryBLL.GetAllStandardMapItemByStandardId(salaryStandard.Id); //遍历映射关系,并把薪酬项目和薪酬项目的金额装载到视图模型薪酬标准的字典中 foreach (var m in tempMapList) { SalaryItem tempSalaryItem = salaryItemBLL.GetSalaryItemById(m.ItemId); Models.SalaryItem salaryItemView = new Models.SalaryItem { Id = tempSalaryItem.Id, Name = tempSalaryItem.Name }; salaryStandardView.ItemAmout.Add(salaryItemView, m.Amout); } //通过薪酬标准的id找到所有的职位映射关系 List <StandardMapOccupationName> occList = salaryBLL.GetAllStandardMapOccByStandardId(salaryStandard.Id); if (occList != null) { foreach (var o in occList) { OccupationName tempOccName = occupationBLL.GetOccupationNameById(o.OccupationNameId); Models.OccupationName occupationNameView = new Models.OccupationName { Id = tempOccName.Id, Name = tempOccName.Name }; OccupationClass tempOccClass = occupationBLL.GetOccupationClassById(tempOccName.ClassId); occupationNameView.OccupationClass = new Models.OccupationClass { Id = tempOccClass.Id, Name = tempOccClass.Name }; salaryStandardView.OccList.Add(occupationNameView); } } ViewData["salaryStandardView"] = salaryStandardView; return(View()); }
/// <summary> /// 控制器内部方法 /// </summary> /// <param name="id">通过id装载视图模型Staff</param> private void GetStaffById(string id) { IStaffBLL staffBLL = new StaffBLL(); IOrgBLL orgBLL = new OrgBLL(); IOccupationBLL occupationBLL = new OccupationBLL(); ISalaryBLL salaryBLL = new SalaryBLL(); Staff staff = staffBLL.GetStaffById(Convert.ToInt32(id)); Models.Staff staffView = new Models.Staff(); Type type = typeof(Models.Staff); Type modelType = typeof(Staff); var props = type.GetProperties(); foreach (var p in props) { if (modelType.GetProperty(p.Name) != null) { p.SetValue(staffView, modelType.GetProperty(p.Name).GetValue(staff)); } } ThirdOrg thirdOrg = orgBLL.GetThirdOrgById(staff.ThirdOrgId); SecondOrg secondOrg = orgBLL.GetSecondOrgById(thirdOrg.ParentOrgId); FirstOrg firstOrg = orgBLL.GetFirstOrgById(secondOrg.ParentOrgId); OccupationName occupationName = occupationBLL.GetOccupationNameById(staff.OccId); OccupationClass occupationClass = occupationBLL.GetOccupationClassById(occupationName.ClassId); SalaryStandard salaryStandard = salaryBLL.GetSalaryStandardById(staff.StandardId); TechnicalTitle technicalTitle = occupationBLL.GetTechnicalTitleById(staff.TechnicalTitleId); staffView.FirstOrg = new Models.FirstOrg { Id = firstOrg.Id, OrgLevel = firstOrg.OrgLevel, OrgName = firstOrg.OrgName }; staffView.SecondeOrg = new Models.SecondeOrg { Id = secondOrg.Id, OrgName = secondOrg.OrgName, OrgLevel = secondOrg.OrgLevel, ParentOrg = staffView.FirstOrg }; staffView.ThirdOrg = new Models.ThirdOrg { Id = thirdOrg.Id, ParentOrg = staffView.SecondeOrg, OrgLevel = thirdOrg.OrgLevel, OrgName = thirdOrg.OrgName }; staffView.OccupationClass = new Models.OccupationClass { Id = occupationClass.Id, Name = occupationClass.Name }; staffView.OccupationName = new Models.OccupationName { Id = occupationName.Id, Name = occupationName.Name, OccupationClass = staffView.OccupationClass }; staffView.SalaryStandard = new Models.SalaryStandard { Id = salaryStandard.Id, StandardName = salaryStandard.StandardName, Total = salaryStandard.Total }; staffView.TechnicalTitle = new Models.TechnicalTitle { Id = technicalTitle.Id, Name = technicalTitle.Name }; ViewData["staffView"] = staffView; //装载所有职称 List <Models.TechnicalTitle> list = new List <Models.TechnicalTitle>(); List <TechnicalTitle> tempList = occupationBLL.GetAllTechnicalTitle(); foreach (var tt in tempList) { Models.TechnicalTitle tempTechnicalTitle = new Models.TechnicalTitle { Id = tt.Id, Name = tt.Name }; list.Add(tempTechnicalTitle); } ViewData["tTitleList"] = list; //装载该职位的所有薪酬标准 List <SalaryStandard> standardList = salaryBLL.GetAllStandardByOccId(staff.OccId); List <Models.SalaryStandard> standardListView = new List <Models.SalaryStandard>(); foreach (var s in standardList) { Models.SalaryStandard tempStandard = new Models.SalaryStandard { Id = s.Id, StandardName = s.StandardName, Total = s.Total }; standardListView.Add(tempStandard); } ViewData["standardListView"] = standardListView; }
/// <summary> /// 根据条件查询档案 /// </summary> /// <param name="formCollection">查询条件</param> /// <returns>返回符合条件的员工档案列表视图</returns> public ActionResult StaffSearch(FormCollection formCollection) { IStaffBLL staffBLL = new StaffBLL(); IOrgBLL orgBLL = new OrgBLL(); IOccupationBLL occupationBLL = new OccupationBLL(); List <Staff> list = new List <Staff>(); List <Staff> tempList = new List <Staff>(); if (formCollection["ThirdOrgId"] != "0") { list = staffBLL.GetAllStaffByTOrgId(Convert.ToInt32(formCollection["ThirdOrgId"])); tempList = list; if (formCollection["BeginDate"] != "") { var l = from s in list where s.RegistTime > Convert.ToDateTime(formCollection["BeginDate"]) select s; tempList = l.ToList(); if (formCollection["EndDate"] != "") { var l2 = from s in tempList where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } else { if (formCollection["EndDate"] != "") { var l2 = from s in list where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } list = tempList; } else { if (formCollection["SecondOrgId"] != "0") { list = staffBLL.GetAllStaffBySOrgId(Convert.ToInt32(formCollection["SecondOrgId"])); tempList = list; if (formCollection["BeginDate"] != "") { var l = from s in list where s.RegistTime > Convert.ToDateTime(formCollection["BeginDate"]) select s; tempList = l.ToList(); if (formCollection["EndDate"] != "") { var l2 = from s in tempList where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } else { if (formCollection["EndDate"] != "") { var l2 = from s in list where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } list = tempList; } else { if (formCollection["FirstOrgId"] != "0") { list = staffBLL.GetAllStaffByFOrgId(Convert.ToInt32(formCollection["FirstOrgId"])); tempList = list; if (formCollection["BeginDate"] != "") { var l = from s in list where s.RegistTime > Convert.ToDateTime(formCollection["BeginDate"]) select s; tempList = l.ToList(); if (formCollection["EndDate"] != "") { var l2 = from s in tempList where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } else { if (formCollection["EndDate"] != "") { var l2 = from s in list where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } list = tempList; } else { list = staffBLL.GetAllStaffNormal(); tempList = list; if (formCollection["BeginDate"] != "") { var l = from s in list where s.RegistTime > Convert.ToDateTime(formCollection["BeginDate"]) select s; tempList = l.ToList(); if (formCollection["EndDate"] != "") { var l2 = from s in tempList where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } else { if (formCollection["EndDate"] != "") { var l2 = from s in list where s.RegistTime < Convert.ToDateTime(formCollection["EndDate"]) select s; tempList = l2.ToList(); } } list = tempList; } } } if (formCollection["OccNameId"] != "0") { int occNameId = Convert.ToInt32(formCollection["OccNameId"]); var l = from s in list where s.OccId == occNameId select s; list = l.ToList(); } else { if (formCollection["OccClassId"] != "0") { int occClassId = Convert.ToInt32(formCollection["OccClassId"]); List <OccupationName> occNameList = occupationBLL.GetAllOccNameByClassId(occClassId); List <int> ints = new List <int>(); foreach (var oc in occNameList) { ints.Add(oc.Id); } var l = from s in list where ints.Contains(s.OccId) select s; list = l.ToList(); } } List <Models.Staff> staffListView = new List <Models.Staff>(); if (list != null) { foreach (var staff in list) { Models.Staff tempStaff = new Models.Staff { Id = staff.Id, StaffFileNumber = staff.StaffFileNumber, StaffName = staff.StaffName, FileState = staff.FileState, IsDel = staff.IsDel }; ThirdOrg thirdOrg = orgBLL.GetThirdOrgById(staff.ThirdOrgId); SecondOrg secondOrg = orgBLL.GetSecondOrgById(thirdOrg.ParentOrgId); FirstOrg firstOrg = orgBLL.GetFirstOrgById(secondOrg.ParentOrgId); tempStaff.FirstOrg = new Models.FirstOrg { Id = firstOrg.Id, OrgLevel = firstOrg.OrgLevel, OrgName = firstOrg.OrgName }; tempStaff.SecondeOrg = new Models.SecondeOrg { Id = secondOrg.Id, OrgName = secondOrg.OrgName, OrgLevel = secondOrg.OrgLevel, ParentOrg = tempStaff.FirstOrg }; tempStaff.ThirdOrg = new Models.ThirdOrg { Id = thirdOrg.Id, ParentOrg = tempStaff.SecondeOrg, OrgLevel = thirdOrg.OrgLevel, OrgName = thirdOrg.OrgName }; OccupationName occupationName = occupationBLL.GetOccupationNameById(staff.OccId); tempStaff.OccupationName = new Models.OccupationName { Id = occupationName.Id, Name = occupationName.Name }; staffListView.Add(tempStaff); } } ViewData["staffListView"] = staffListView; //装载1级机构 List <FirstOrg> fList = orgBLL.GetAllFirstOrg(); List <Models.FirstOrg> firstOrgList = new List <Models.FirstOrg>(); foreach (var fo in fList) { Models.FirstOrg tempFo = new Models.FirstOrg { Id = fo.Id, OrgName = fo.OrgName, OrgLevel = fo.OrgLevel }; firstOrgList.Add(tempFo); } ViewData["firstOrgList"] = firstOrgList; if (formCollection["FirstOrgId"] != "0") { //装载2级机构 List <SecondOrg> sList = orgBLL.GetSecondOrgByFirstOrgId(Convert.ToInt32(formCollection["FirstOrgId"])); List <Models.SecondeOrg> secondOrgList = new List <Models.SecondeOrg>(); foreach (var so in sList) { Models.SecondeOrg tempSo = new Models.SecondeOrg { Id = so.Id, OrgName = so.OrgName }; secondOrgList.Add(tempSo); } ViewData["secondOrgList"] = secondOrgList; } if (formCollection["SecondOrgId"] != "0") { //装载3级机构 List <ThirdOrg> tList = orgBLL.GetThirdOrgBySecondOrgId(Convert.ToInt32(formCollection["SecondOrgId"])); List <Models.ThirdOrg> thirdOrgList = new List <Models.ThirdOrg>(); foreach (var to in tList) { Models.ThirdOrg tempTo = new Models.ThirdOrg { Id = to.Id, OrgName = to.OrgName }; thirdOrgList.Add(tempTo); } ViewData["thirdOrgList"] = thirdOrgList; } //装载职位类型 List <OccupationClass> ocList = occupationBLL.GetAllOccupationClass(); List <Models.OccupationClass> occClassList = new List <Models.OccupationClass>(); foreach (var oc in ocList) { Models.OccupationClass tempClass = new Models.OccupationClass { Id = oc.Id, Name = oc.Name }; occClassList.Add(tempClass); } ViewData["occClassList"] = occClassList; if (formCollection["OccClassId"] != "0") { //装载职位 List <OccupationName> onList = occupationBLL.GetAllOccNameByClassId(Convert.ToInt32(formCollection["OccClassId"])); List <Models.OccupationName> occNameList2 = new List <Models.OccupationName>(); foreach (var on in onList) { Models.OccupationName tempName = new Models.OccupationName { Id = on.Id, Name = on.Name }; occNameList2.Add(tempName); } ViewData["occNameList"] = occNameList2; } return(View("StaffView")); }
/// <summary> /// 列表展示所有员工档案 /// </summary> /// <returns>返回列表展示视图</returns> public ActionResult StaffView() { IStaffBLL bLL = new StaffBLL(); IOrgBLL orgBLL = new OrgBLL(); IOccupationBLL occupationBLL = new OccupationBLL(); List <Staff> staffList = bLL.GetAllStaffNormal(); List <Models.Staff> staffListView = new List <Models.Staff>(); foreach (var staff in staffList) { Models.Staff tempStaff = new Models.Staff { Id = staff.Id, StaffFileNumber = staff.StaffFileNumber, StaffName = staff.StaffName, FileState = staff.FileState, IsDel = staff.IsDel }; ThirdOrg thirdOrg = orgBLL.GetThirdOrgById(staff.ThirdOrgId); SecondOrg secondOrg = orgBLL.GetSecondOrgById(thirdOrg.ParentOrgId); FirstOrg firstOrg = orgBLL.GetFirstOrgById(secondOrg.ParentOrgId); tempStaff.FirstOrg = new Models.FirstOrg { Id = firstOrg.Id, OrgLevel = firstOrg.OrgLevel, OrgName = firstOrg.OrgName }; tempStaff.SecondeOrg = new Models.SecondeOrg { Id = secondOrg.Id, OrgName = secondOrg.OrgName, OrgLevel = secondOrg.OrgLevel, ParentOrg = tempStaff.FirstOrg }; tempStaff.ThirdOrg = new Models.ThirdOrg { Id = thirdOrg.Id, ParentOrg = tempStaff.SecondeOrg, OrgLevel = thirdOrg.OrgLevel, OrgName = thirdOrg.OrgName }; OccupationName occupationName = occupationBLL.GetOccupationNameById(staff.OccId); tempStaff.OccupationName = new Models.OccupationName { Id = occupationName.Id, Name = occupationName.Name }; staffListView.Add(tempStaff); } ViewData["staffListView"] = staffListView; //装载1级机构 List <FirstOrg> fList = orgBLL.GetAllFirstOrg(); List <Models.FirstOrg> firstOrgList = new List <Models.FirstOrg>(); foreach (var fo in fList) { Models.FirstOrg tempFo = new Models.FirstOrg { Id = fo.Id, OrgName = fo.OrgName, OrgLevel = fo.OrgLevel }; firstOrgList.Add(tempFo); } ViewData["firstOrgList"] = firstOrgList; //装载职位类型 List <OccupationClass> ocList = occupationBLL.GetAllOccupationClass(); List <Models.OccupationClass> occClassList = new List <Models.OccupationClass>(); foreach (var oc in ocList) { Models.OccupationClass tempClass = new Models.OccupationClass { Id = oc.Id, Name = oc.Name }; occClassList.Add(tempClass); } ViewData["occClassList"] = occClassList; return(View()); }