// // GET: /StatisticsManage/Department/ public override ActionResult Index() { string organizeId = Common.GetString("organizeid"); string startDT = Common.GetString("startdt"); // Request["StartDT"]; string endDT = Common.GetString("enddt"); // Request["EndDT"]; UserApp userApp = new UserApp(); organizeId = string.IsNullOrEmpty(organizeId) ? NFine.Code.OperatorProvider.Provider.GetCurrent().CompanyId : organizeId;//获取到当前的组织结构id //todo 找出该组织的下级 OrganizeApp organizeApp = new OrganizeApp(); var organizeData = organizeApp.GetList(organizeId); List <string> listOrganizeId = organizeData.Select(x => x.F_Id).ToList();// new List<string>() { organizeId }; //var userData = userApp.GetList(listOrganizeId); ViewBag.OrganizeList = organizeData.Select(x => x.F_FullName).ToJson(); //todo 找出每个员工的完成情况 放入内存中 执行逻辑操作 TaskApp taskApp = new TaskApp(); //var taskData = taskApp.GetList(userData.Select(x => x.F_Id).ToList()); List <Report> listReports = new List <Report>(); ItemsDetailApp itemsDetailApp = new ItemsDetailApp(); var itemsData = itemsDetailApp.GetItemList(schedule); foreach (var item in itemsData) { Report report = new Report(); report.name = item.F_ItemName; List <int> listCount = new List <int>(); foreach (var organizeItem in organizeData) { //todo 获取组织下的所有员工 //获取组织下的组织 var data = organizeApp.GetAllList(organizeItem.F_Id); List <string> listOrganizeNext = new List <string>(); foreach (var organizeItemNext in data) { listOrganizeNext.Add(organizeItemNext); } //获取下级下的所有员工 var userData = userApp.GetList(listOrganizeNext); //获取下级下的所有员工的任务 var taskData = taskApp.GetList(userData.Select(x => x.F_Id).ToList()); if (!string.IsNullOrEmpty(startDT)) { var time = Utils.ObjectToDateTime(startDT); taskData = taskData.Where(d => d.F_CreatorTime > time).ToList(); } if (!string.IsNullOrEmpty(endDT)) { var time = Utils.ObjectToDateTime(endDT); taskData = taskData.Where(d => d.F_CreatorTime <= time).ToList(); } listCount.Add(taskData.Count(d => d.F_Status == item.F_Id)); } report.data = listCount; listReports.Add(report); } ViewBag.Series = listReports.ToJson(); return(View()); }
public UserController(UserApp userApp, UserLogOnApp userLogOnApp, OrganizeApp organizeApp, RoleApp roleApp, DutyApp dutyApp) { this.userApp = userApp; this.userLogOnApp = userLogOnApp; this.organizeApp = organizeApp; this.roleApp = roleApp; this.dutyApp = dutyApp; }
public ClientsDataController(ItemsDetailApp itemsDetailApp, ItemsApp itemsApp, OrganizeApp organizeApp, RoleApp roleApp, DutyApp dutyApp, RoleAuthorizeApp roleAuthorizeApp) { this.itemsDetailApp = itemsDetailApp; this.itemsApp = itemsApp; this.organizeApp = organizeApp; this.roleApp = roleApp; this.dutyApp = dutyApp; this.roleAuthorizeApp = roleAuthorizeApp; }
public ActionResult Default() { var organizeId = NFine.Code.OperatorProvider.Provider.GetCurrent().CompanyId;//获取到当前的组织结构id UserApp userApp = new UserApp(); TaskApp taskApp = new TaskApp(); OrganizeApp organizeApp = new OrganizeApp(); var organizeData = organizeApp.GetAllList(organizeId); List <string> listOrganizeNext = new List <string>(); foreach (var item in organizeData) { listOrganizeNext.Add(item); } var userData = userApp.GetList(listOrganizeNext); var taskData = taskApp.GetList(userData.Select(x => x.F_Id).ToList()); DateTime dt = DateTime.Now; //当前时间 //当天待处理任务 ViewBag.DayTaskDoing = taskData.Count(d => d.F_Status == Doing && d.F_CreatorTime > dt.AddDays(-1) && d.F_CreatorTime <= dt); //本周待处理任务 DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一 DateTime endWeek = startWeek.AddDays(6); //本周周日 ViewBag.WeekTaskDoing = taskData.Count(d => d.F_Status == Doing && d.F_CreatorTime > startWeek && d.F_CreatorTime <= endWeek); //本周已处理任务 ViewBag.WeekTaskDone = taskData.Count(d => d.F_Status == Done && d.F_CreatorTime > startWeek && d.F_CreatorTime <= endWeek); //本月待处理任务 DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初 DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末 //本月任务 var tempTask = taskData.Where(d => d.F_CreatorTime > startMonth && d.F_CreatorTime <= endMonth).ToList(); //本月待处理 ViewBag.MonthTaskDoing = tempTask.Count(d => d.F_Status == Doing); //本月已处理任务 ViewBag.MonthTaskDone = tempTask.Count(d => d.F_Status == Done); //本月未完成 ViewBag.MonthTaskNone = tempTask.Count(d => d.F_Status != Done && d.F_Status != Doing); //最近6个月的完成情况 List <int> listLineChartData = new List <int>(); List <string> listLineChartName = new List <string>(); for (int i = 6; i > 0; i--) { startMonth = dt.AddMonths(-i).AddDays(1 - dt.Day); //当月月初 endMonth = startMonth.AddMonths(1).AddDays(-1); //当月月末 var tempCount = taskData.Count(d => d.F_Status == Done && d.F_CreatorTime > startMonth && d.F_CreatorTime <= endMonth); listLineChartData.Add(tempCount); listLineChartName.Add(dt.AddMonths(-i).Year + "年" + dt.AddMonths(-i).Month + "月"); } ViewBag.LineChartData = listLineChartData.ToJson(); ViewBag.LineChartName = listLineChartName.ToJson(); return(View()); }
public ActionResult GetInfo() { var keyValue = OperatorProvider.Provider.GetCurrent().UserId; var data = _userApp.GetForm(keyValue); if (data != null && data.F_OrganizeId != null) { var organize = new OrganizeApp().GetForm(data.F_OrganizeId); data.F_OrganizeId = organize == null ? "无" : organize.F_FullName; } else { if (data != null) { data.F_OrganizeId = "无"; } } if (data != null && data.F_DepartmentId != null) { var department = new OrganizeApp().GetForm(data.F_DepartmentId); data.F_DepartmentId = department == null ? "无" : department.F_FullName; } else { if (data != null) { data.F_DepartmentId = "无"; } } if (data != null && data.F_RoleId != null) { var role = new RoleApp().GetForm(data.F_RoleId); data.F_RoleId = role == null ? "无" : role.F_FullName; } else { if (data != null) { data.F_RoleId = "无"; } } if (data != null && data.F_DutyId != null) { var duty = new DutyApp().GetForm(data.F_DutyId); data.F_DutyId = duty == null ? "无" : duty.F_FullName; } else { if (data != null) { data.F_DutyId = "无"; } } return(Content(data.ToJson())); }
public ActionResult XFExcel(string starttime) { OrganizeApp organizeApp = new OrganizeApp(); DataTable dt = new DataTable(); dt.Columns.Add("部门"); dt.Columns.Add("姓名"); DateTime now = DateTime.Now; if (!string.IsNullOrEmpty(starttime)) { now = starttime.ToDate(); } now = new DateTime(now.Year, now.Month, 1); for (int i = 1; i <= now.AddMonths(1).AddDays(-1).Day; i++) { dt.Columns.Add(i + "日"); } foreach (var item in userApp.GetList(new Pagination() { page = 1, rows = 1000, sord = "asc", sidx = "F_DepartmentId asc,F_CreatorTime desc" }, "")) { DataRow dr = dt.NewRow(); dr["部门"] = organizeApp.GetForm(item.F_DepartmentId).F_FullName; dr["姓名"] = item.F_RealName; for (int i = 1; i <= now.AddMonths(1).AddDays(-1).Day; i++) { string times = ""; if (!string.IsNullOrEmpty(item.F_PosCard)) { foreach (var attr in posApp.GetList(item.F_PosCard.Trim(), new DateTime(now.Year, now.Month, i), new DateTime(now.Year, now.Month, i))) { times += attr.PosTime.ToString("HH:mm:ss") + " \r\n"; } } dr[i + "日"] = times; } dt.Rows.Add(dr); } NPOIExcel npoiexel = new NPOIExcel(); string fileDir = DateTime.Now.ToString("yyyyMMdd"); string fileName = "XF" + Guid.NewGuid().ToString("N") + ".xls"; string destDir = Server.MapPath(@"/XlsTemp") + "\\" + fileDir + "\\"; if (!Directory.Exists(destDir)) { Directory.CreateDirectory(destDir); } npoiexel.ToExcel(dt, now.ToString("yyyy年MM月") + "的消费机数据", "Sheet1", destDir + fileName); return(Content("/XlsTemp/" + fileDir + "/" + fileName)); }
public ActionResult GetMyGridJson() { var companyId = NFine.Code.OperatorProvider.Provider.GetCurrent().CompanyId;//获取到当前的组织结构id OrganizeApp organizeApp = new OrganizeApp(); var organizeData = organizeApp.GetList(); List <string> organizeIds = new List <string>(); organizeIds = GetChildList(organizeIds, organizeData.Where(d => d.F_Id == companyId).ToList()); var userData = new UserApp().GetList(organizeIds); return(Content(userData.ToJson())); }
List <string> GetChildList(List <string> organizeIds, List <OrganizeEntity> organizeEntities) { OrganizeApp organizeApp = new OrganizeApp(); foreach (var item in organizeEntities) { organizeIds.Add(item.F_Id); var tempdata = organizeApp.GetList().Where(d => d.F_ParentId == item.F_Id).ToList(); GetChildList(organizeIds, tempdata); } return(organizeIds); }
public override ActionResult Form() { OrganizeApp oa = new OrganizeApp(); var list = oa.GetList(); string allorgID = ""; foreach (var item in list) { allorgID = allorgID + item.ID + ","; } ViewBag.AllOrgID = allorgID; return(View()); }
/// <summary> /// 获取我的下级员工id集合 /// </summary> /// <returns></returns> public static List <string> GetMyUser() { //根据权限获取我的下级 var companyId = NFine.Code.OperatorProvider.Provider.GetCurrent().CompanyId;//获取到当前的组织结构id OrganizeApp organizeApp = new OrganizeApp(); var organizeData = organizeApp.GetList(); List <string> organizeIds = new List <string>(); organizeIds = GetChildList(organizeIds, organizeData.Where(d => d.F_Id == companyId).ToList()); var expression = ExtLinq.True <UserEntity>(); expression = expression.And(d => organizeIds.Contains(d.F_OrganizeId)); IUserRepository service = new UserRepository(); return(service.FindList(expression).Select(x => x.F_Id).ToList()); }
private object GetOrganizeList() { OrganizeApp organizeApp = new OrganizeApp(); var data = organizeApp.GetList(); Dictionary <string, object> dictionary = new Dictionary <string, object>(); foreach (OrganizeEntity item in data) { var fieldItem = new { encode = item.EnCode, fullname = item.FullName }; dictionary.Add(item.Id, fieldItem); } return(dictionary); }
private object GetOrganizeList() { OrganizeApp organizeApp = new OrganizeApp(); var data = organizeApp.GetList(); Dictionary <string, object> dictionary = new Dictionary <string, object>(); foreach (Sys_Organize item in data) { var fieldItem = new { encode = item.F_EnCode, fullname = item.F_FullName }; dictionary.Add(item.F_Id, fieldItem); } Common.BIBasicList["organize"] = dictionary; return(dictionary); }
//获取维修商 private object GetMaintainList() { List <MaintainEntity> datalist = new List <MaintainEntity>(); MaintainApp maintainApp = new MaintainApp(); OrganizeApp organizeApp = new OrganizeApp(); var maintainlist = maintainApp.GetList(); List <OrganizeEntity> orgList = new List <OrganizeEntity>(); if (OperatorProvider.Provider.GetCurrent().IsSystem) { orgList = organizeApp.GetList(); } else { orgList = organizeApp.GetSelectEntitys(OperatorProvider.Provider.GetCurrent().CompanyId, ""); } datalist = (from c in maintainlist join o in orgList on c.FOrganizeId equals o.FId select c).ToList(); Dictionary <string, object> dictionary = new Dictionary <string, object>(); foreach (MaintainEntity item in datalist) { var fieldItem = new { FId = item.FId, FShortName = item.FShortName, FNumber = item.FNumber, FFullName = item.FFullName, FLinkMan = item.FLinkMan }; dictionary.Add(item.FId, fieldItem); } return(dictionary); }
public ActionResult WriteToExcel(Pagination pagination, string keyword, string starttime) { DataTable dt = new DataTable(); dt.Columns.Add("部门"); dt.Columns.Add("姓名"); dt.Columns.Add("报餐情况"); dt.Columns.Add("上班考勤"); dt.Columns.Add("下班考勤"); dt.Columns.Add("早晨刷卡"); dt.Columns.Add("中餐刷卡"); dt.Columns.Add("晚餐刷卡"); dt.Columns.Add("扣次数"); dt.Columns.Add("预计补助"); DateTime now = DateTime.Now; if (!string.IsNullOrEmpty(starttime)) { now = starttime.ToDate(); } var lists = new List <DataStatisticsForm>(); OrganizeApp organizeApp = new OrganizeApp(); foreach (var item in userApp.GetList(pagination, keyword)) { DataRow dr = dt.NewRow(); dr["部门"] = organizeApp.GetForm(item.F_DepartmentId).F_FullName; dr["姓名"] = item.F_RealName; var baocan = reportApp.GetCurrentTime(item.F_Id, now, 1); dr["报餐情况"] = "未报"; if (baocan != null) { dr["报餐情况"] = "已报"; } var attl = attlApp.GetCurrentTime(item.F_AttCard, now, true); dr["上班考勤"] = "×"; if (attl != null) { dr["上班考勤"] = "√"; } var attl2 = attlApp.GetCurrentTime(item.F_AttCard, now, false); dr["下班考勤"] = "×"; if (attl2 != null) { dr["下班考勤"] = "√"; } var pos = posApp.GetCurrentTime(item.F_PosCard, now, 0); dr["早晨刷卡"] = "×"; if (pos != null) { dr["早晨刷卡"] = "√"; } var pos1 = posApp.GetCurrentTime(item.F_PosCard, now, 1); dr["中餐刷卡"] = "×"; if (pos1 != null) { dr["中餐刷卡"] = "√"; } var pos2 = posApp.GetCurrentTime(item.F_PosCard, now, 2); dr["晚餐刷卡"] = "×"; if (pos2 != null) { dr["晚餐刷卡"] = "√"; } int bu = 0; int kou = 0; PosT(now, item.F_PosCard, item.F_AttCard, item.F_Id, out bu, out kou); dr["预计补助"] = (bu * 15).ToString(); dr["扣次数"] = (kou).ToString(); dt.Rows.Add(dr); } NPOIExcel npoiexel = new NPOIExcel(); string fileDir = DateTime.Now.ToString("yyyyMMdd"); string fileName = "G" + Guid.NewGuid().ToString("N") + ".xls"; string destDir = Server.MapPath(@"/XlsTemp") + "\\" + fileDir + "\\"; if (!Directory.Exists(destDir)) { Directory.CreateDirectory(destDir); } npoiexel.ToExcel(dt, "数据", "Sheet1", destDir + fileName); return(Content("/XlsTemp/" + fileDir + "/" + fileName)); }
public ActionResult CheckLogin(string username, string password, string code) { LogEntity logEntity = new LogEntity(); logEntity.ModuleName = "系统登录"; logEntity.Type = DbLogType.Login.ToString(); try { if (Session["Storm_session_verifycode"].IsEmpty() || Md5.md5(code.ToLower(), 16) != Session["Storm_session_verifycode"].ToString()) { throw new Exception("验证码错误,请重新输入"); } UserEntity userEntity = new UserApp().CheckLogin(username, password); if (userEntity != null) { OperatorModel operatorModel = new OperatorModel(); operatorModel.UserId = userEntity.Id; operatorModel.UserCode = userEntity.Account; operatorModel.UserName = userEntity.RealName; operatorModel.CompanyId = userEntity.OrganizeId; operatorModel.DepartmentId = userEntity.DepartmentId; if (userEntity.DepartmentId != null && !string.IsNullOrEmpty(userEntity.DepartmentId)) { OrganizeEntity organizeEntity = new OrganizeApp().GetForm(userEntity.DepartmentId); if (organizeEntity != null && !string.IsNullOrEmpty(organizeEntity.Id)) { operatorModel.DepartmentName = organizeEntity.FullName; } } operatorModel.RoleId = userEntity.RoleId; operatorModel.LoginIPAddress = Net.Ip; operatorModel.LoginIPAddressName = Net.GetLocation(operatorModel.LoginIPAddress); operatorModel.LoginTime = DateTime.Now; operatorModel.LoginToken = DESEncrypt.Encrypt(Guid.NewGuid().ToString()); if (userEntity.Account == "admin") { operatorModel.IsSystem = true; } else { operatorModel.IsSystem = false; } OperatorProvider.Provider.AddCurrent(operatorModel); logEntity.Account = userEntity.Account; logEntity.NickName = userEntity.RealName; logEntity.Result = true; logEntity.Description = "登录成功"; new LogApp().WriteDbLog(logEntity); } return(Content(new AjaxResult { state = ResultType.success.ToString(), message = "登录成功。" }.ToJson())); } catch (Exception ex) { logEntity.Account = username; logEntity.NickName = username; logEntity.Result = false; logEntity.Description = "登录失败," + ex.Message; new LogApp().WriteDbLog(logEntity); return(Content(new AjaxResult { state = ResultType.error.ToString(), message = ex.Message }.ToJson())); } }
public OrganizeController(OrganizeApp organizeApp) { this.organizeApp = organizeApp; }