/// <summary> ///台账 /// </summary> /// <returns></returns> public ActionResult DetailRecord(string keyValue) { var bll = new SelfEvaluateBLL(); var model = bll.GetEntity(keyValue); return(View(model)); }
public object GetSummary([FromBody] JObject json) { try { string res = json.Value <string>("json"); dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); string id = dy.data.id; string userid = dy.userid; string year = dy.data.year; string month = dy.data.month; string deptId = dy.data.deptid; OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, info = "请求失败,请登录!", data = new object() }); } var bll = new SelfEvaluateBLL(); EvaluateGroupSummaryEntity data = new EvaluateGroupSummaryEntity(); if (string.IsNullOrWhiteSpace(id)) { data = bll.GetSummary(year, month, deptId); } else { data = bll.GetSummaryById(id); } return(new { code = 0, info = "获取成功", data = data }); } catch (Exception ex) { return(new { code = -1, info = "获取数据失败:" + ex.Message, data = new object() }); } }
/// <summary> /// 工余安健环 /// </summary> /// <param name="deptid"></param> /// <param name="year"></param> /// <param name="month"></param> /// <param name="type">1 交通,2用电,3防火,4体力操作,5其他</param> /// <returns></returns> public ActionResult GetFiveData(string deptid, string year, string month, int type) { try { var searchDept = new DepartmentBLL().GetList().FirstOrDefault(p => p.DepartmentId == deptid); if (searchDept == null) { searchDept = new DepartmentEntity(); } DataTable dt = new SelfEvaluateBLL().GetFiveData(searchDept.DeptCode, year, month, type); List <HseKeyValue> kv = new List <HseKeyValue>(); if (dt.Rows != null && dt.Rows.Count > 0) { var drEnumerator = dt.Rows.GetEnumerator(); while (drEnumerator.MoveNext()) { DataRow drCurrent = drEnumerator.Current as DataRow; string key = drCurrent["KEY"] == null ? "" : drCurrent["KEY"].ToString(); if (!string.IsNullOrWhiteSpace(key)) { kv.Add(new HseKeyValue(key, drCurrent["COUNT"] == null ? 0 : Convert.ToInt32(drCurrent["COUNT"]))); } } } return(Json(new { Code = 0, Data = kv })); } catch (Exception ex) { return(Json(new { Code = -1, ex.Message })); } }
/// <summary> /// 获取详情 /// </summary> /// <param name="keyValue"></param> /// <returns></returns> public ActionResult getEntity(string keyValue) { var bll = new SelfEvaluateBLL(); var model = bll.GetEntity(keyValue); return(Content(model.ToJson())); }
/// <summary> /// 删除 /// </summary> /// <returns></returns> public ActionResult DelEntity(string keyValue) { var bll = new SelfEvaluateBLL(); bll.RemoveForm(keyValue); return(Success("操作完成")); }
public object SaveSummary() { try { var bll = new SelfEvaluateBLL(); string res = HttpContext.Current.Request["json"]; dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); string userid = dy.userid; OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!", data = new object() }); } EvaluateGroupSummaryEntity entity = JsonConvert.DeserializeObject <EvaluateGroupSummaryEntity>(JsonConvert.SerializeObject(dy.data)); if (string.IsNullOrEmpty(entity.Id)) { entity.Id = Guid.NewGuid().ToString(); } bll.SaveSummary(entity); return(new { code = 0, count = 0, info = "获取成功", data = 0 }); } catch (Exception ex) { return(new { code = -1, count = 0, info = "获取数据失败:" + ex.Message, data = new object() }); } }
/// <summary> /// 新增修改 /// </summary> /// <returns></returns> public ActionResult SaveForm(SelfEvaluateEntity entity) { var userNow = OperatorProvider.Provider.Current(); var bll = new SelfEvaluateBLL(); try { if (string.IsNullOrEmpty(entity.Id)) //新增自我评估 { entity.Id = Guid.NewGuid().ToString(); } entity.CreateUser = userNow.UserName; entity.CreateUserId = userNow.UserId; entity.DeptCode = userNow.DeptCode; entity.DeptId = userNow.DeptId; entity.DeptName = userNow.DeptName; if (string.IsNullOrEmpty(entity.A.Id)) //新增自我评估 { entity.A.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.B.Id)) //新增自我评估 { entity.B.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.C.Id)) //新增自我评估 { entity.C.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.D.Id)) //新增自我评估 { entity.D.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.E.Id)) //新增自我评估 { entity.E.Id = Guid.NewGuid().ToString(); } entity.A.EvaId = entity.Id; entity.B.EvaId = entity.Id; entity.C.EvaId = entity.Id; entity.D.EvaId = entity.Id; entity.E.EvaId = entity.Id; if (entity.IsSubmit == "1") { entity.IsFill = "1"; } bll.SaveForm(entity); return(Success("操作完成")); } catch (Exception ex) { return(Error("操作失败:" + ex.Message)); } }
public object GetSelfEvaluateMonthList([FromBody] JObject json) { try { var bll = new SelfEvaluateBLL(); string res = json.Value <string>("json"); dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); int page = Convert.ToInt32(dy.data.pageNum), rows = Convert.ToInt32(dy.data.pageSize); string keyword = dy.data.keyword; string userid = dy.userid; OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!", data = new object() }); } var list = bll.GetList("", curUser.DeptCode, keyword).ToList(); var nlist = new List <MonthEvaluate>(); var ylist = list.GroupBy(x => x.Year).Select(x => x.FirstOrDefault().Year).OrderByDescending(x => x); //根据年分分组 var userCount = new UserBLL().GetList().Count(p => p.DepartmentCode.StartsWith(curUser.DeptCode) && p.IsPresence == "1"); foreach (string year in ylist) { var mlist = list.Where(x => x.Year == year).GroupBy(x => x.Month).Select(x => x.FirstOrDefault().Month).OrderByDescending(x => x);//查询当年数据根据月份分组 foreach (string month in mlist) { var obj = new MonthEvaluate(); obj.name = year + "年" + month + "月员工HSE自我评估"; obj.count1 = list.Where(x => x.Year == year && x.Month == month && x.IsFill == "1").GroupBy(x => x.CreateUserId).Count(); obj.count2 = ((userCount - obj.count1) < 0 ? 0 : (userCount - obj.count1)); obj.year = year; obj.month = month; var summary = bll.GetSummary(year, month, curUser.DeptId); obj.content = summary == null ? "" : summary.Content; nlist.Add(obj); } } return(new { code = 0, count = 0, info = "获取成功", data = nlist }); } catch (Exception ex) { return(new { code = -1, count = 0, info = "获取数据失败:" + ex.Message, data = new object() }); } }
public object GetSelfEvaluateInfo([FromBody] JObject json) { try { var bll = new SelfEvaluateBLL(); string res = HttpContext.Current.Request["json"]; dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); string userid = dy.userid; OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!", data = new object() }); } var entity = bll.GetEntity(dy.data); return(new { code = 0, count = 0, info = "获取成功", data = entity }); } catch (Exception ex) { return(new { code = -1, count = 0, info = "获取数据失败:" + ex.Message, data = new object() }); } }
/// <summary> /// 获取下钻条形图数据 /// </summary> /// <param name="form"></param> /// <returns></returns> public ActionResult GetChartsData(FormCollection form) { try { var user = OperatorProvider.Provider.Current(); //先找到当前用户所在的电厂 var searchDept = new DepartmentBLL().GetList().Where(p => p.DeptCode.StartsWith(user.OrganizeCode)).OrderBy(x => x.EnCode).ToList();//当前电厂底下的部门数据。分组组装数据用 DataTable dt = new SelfEvaluateBLL().GetChartsData(form["year"], form["month"], user.OrganizeCode); ViewModel model = new ViewModel(); var userList = new UserBLL().GetList().Where(x => x.IsPresence == "1"); model.InitData(searchDept, dt, user.OrganizeId, userList, user.IsSystem); return(Json(new { Code = 0, Data = model })); } catch (Exception ex) { return(Json(new { Code = -1, ex.Message, Data = new ViewModel() })); } }
/// <summary> /// 详情页面 /// </summary> /// <param name="deptid"></param> /// <param name="year">年份</param> /// <param name="month">月份</param> /// <returns></returns> public ActionResult Detail(string deptid, string year, string month) { var searchDept = new DepartmentBLL().GetList().FirstOrDefault(p => p.DepartmentId == deptid); if (searchDept == null) { searchDept = new DepartmentEntity(); } List <string> submituserids = new SelfEvaluateBLL().GetSubmitByDeptCode(searchDept.EnCode, year, month);//该部门下已提交人的人的Id var allUser = new UserBLL().GetList().Where(p => p.IsPresence == "1" && p.DepartmentCode.Contains(searchDept.DeptCode)).ToList(); List <string> submitUserNames = allUser.Where(p => submituserids.Contains(p.UserId) && p.IsPresence == "1").Select(p => p.RealName).ToList(); //已提交的人 List <string> notSubmitUserNames = allUser.Where(p => p.DepartmentCode != null && p.DepartmentCode.StartsWith(searchDept.EnCode) && !submituserids.Contains(p.UserId)).Select(x => x.RealName).ToList(); //未提交的人 EvaluateGroupSummaryEntity groupSummary = new SelfEvaluateBLL().GetSummary(year, month, searchDept.DepartmentId); //该部门的小结 ViewBag.SubmitUser = submitUserNames; //已提交的人数 ViewBag.NotSubmitUser = notSubmitUserNames; //未提交人 ViewBag.GroupSummary = groupSummary; //本单位的填报情况小结 //安全危害 DataTable dangerDT = new SelfEvaluateBLL().GetDangerCount(searchDept.EnCode, year, month); Dictionary <string, int> dangerKV = new Dictionary <string, int>(); if (dangerDT.Rows != null && dangerDT.Rows.Count > 0) { var dangerDrEnumerator = dangerDT.Rows.GetEnumerator(); while (dangerDrEnumerator.MoveNext()) { DataRow dangerCurrent = dangerDrEnumerator.Current as DataRow; string dangerName = dangerCurrent["DANGER"] == null ? "" : dangerCurrent["DANGER"].ToString(); if (!string.IsNullOrWhiteSpace(dangerName)) { dangerKV.Add(dangerName, dangerCurrent["COUNT"] == null ? 0 : Convert.ToInt32(dangerCurrent["COUNT"])); } } } //PPE需求 DataTable ppeDT = new SelfEvaluateBLL().GetPPECount(searchDept.DeptCode, year, month); Dictionary <string, int> ppeKV = new Dictionary <string, int>(); if (ppeDT.Rows != null && ppeDT.Rows.Count > 0) { var ppeDrEnumerator = ppeDT.Rows.GetEnumerator(); while (ppeDrEnumerator.MoveNext()) { DataRow ppeCurrent = ppeDrEnumerator.Current as DataRow; string ppeName = ppeCurrent["USEPPE"] == null ? "" : ppeCurrent["USEPPE"].ToString(); if (!string.IsNullOrWhiteSpace(ppeName)) { ppeKV.Add(ppeName, ppeCurrent["COUNT"] == null ? 0 : Convert.ToInt32(ppeCurrent["COUNT"])); } } } ViewBag.DangerKV = dangerKV; //安全危害 ViewBag.PPEKV = ppeKV; //PPE需求 // HSE培训与授权 DataTable hseDT = new SelfEvaluateBLL().GetHseCount(searchDept.DeptCode, year, month); List <HseEvaluateKv> hseKv = new List <HseEvaluateKv>(); if (hseDT.Rows != null && hseDT.Rows.Count > 0) { #region hse授权 int DGPXrs = 0, QZDZPXrs = 0, CNJDCPXrs = 0, YLRQrs = 0, GLSPXrs = 0, GLZYPXrs = 0, DHZYPXrs = 0, JSJZYPXrs = 0, GKZYPXrs = 0, JJPXrs = 0; //应参加人数 int DGPXwc = 0, QZDZPXwc = 0, CNJDCPXwc = 0, YLRQwc = 0, GLSPXwc = 0, GLZYPXwc = 0, DHZYPXwc = 0, JSJZYPXwc = 0, GKZYPXwc = 0, JJPXwc = 0; //完成的变量 int DGPXmt = 0, QZDZPXmt = 0, CNJDCPXmt = 0, YLRQmt = 0, GLSPXmt = 0, GLZYPXmt = 0, DHZYPXmt = 0, JSJZYPXmt = 0, GKZYPXmt = 0, JJPXmt = 0; //帽贴 int DGPXwwc = 0, QZDZPXwwc = 0, CNJDCPXwwc = 0, YLRQwwc = 0, GLSPXwwc = 0, GLZYPXwwc = 0, DHZYPXwwc = 0, JSJZYPXwwc = 0, GKZYPXwwc = 0, JJPXwwc = 0; //未完成 var hseDrEnumerator = hseDT.Rows.GetEnumerator(); while (hseDrEnumerator.MoveNext()) { DataRow hseCurrent = hseDrEnumerator.Current as DataRow; string nonepx = hseCurrent["NONEPX"] == DBNull.Value ? "0" : hseCurrent["NONEPX"].ToString();//是否无具体培训需求 planning(hseCurrent["DGPX"], ref DGPXwc, ref DGPXmt, ref DGPXwwc, ref DGPXrs, nonepx); planning(hseCurrent["QZDZPX"], ref QZDZPXwc, ref QZDZPXmt, ref QZDZPXwwc, ref QZDZPXrs, nonepx); planning(hseCurrent["CNJDCPX"], ref CNJDCPXwc, ref CNJDCPXmt, ref CNJDCPXwwc, ref CNJDCPXrs, nonepx); planning(hseCurrent["YLRQ"], ref YLRQwc, ref YLRQmt, ref YLRQwwc, ref YLRQrs, nonepx); planning(hseCurrent["GLSPX"], ref GLSPXwc, ref GLSPXmt, ref GLSPXwwc, ref GLSPXrs, nonepx); planning(hseCurrent["GLZYPX"], ref GLZYPXwc, ref GLZYPXmt, ref GLZYPXwwc, ref GLZYPXrs, nonepx); planning(hseCurrent["DHZYPX"], ref DHZYPXwc, ref DHZYPXmt, ref DHZYPXwwc, ref DHZYPXrs, nonepx); planning(hseCurrent["JSJZYPX"], ref JSJZYPXwc, ref JSJZYPXmt, ref JSJZYPXwwc, ref JSJZYPXrs, nonepx); planning(hseCurrent["GKZYPX"], ref GKZYPXwc, ref GKZYPXmt, ref GKZYPXwwc, ref GKZYPXrs, nonepx); planning(hseCurrent["JJPX"], ref JJPXwc, ref JJPXmt, ref JJPXwwc, ref JJPXrs, nonepx); } hseKv.Add(new HseEvaluateKv("电工培训", DGPXwc, DGPXmt, DGPXwwc, DGPXrs)); hseKv.Add(new HseEvaluateKv("起重吊装培训", QZDZPXwc, QZDZPXmt, QZDZPXwwc, QZDZPXrs)); hseKv.Add(new HseEvaluateKv("场内机动车培训", CNJDCPXwc, CNJDCPXmt, CNJDCPXwwc, CNJDCPXrs)); hseKv.Add(new HseEvaluateKv("压力容器", YLRQwc, YLRQmt, YLRQwwc, YLRQrs)); hseKv.Add(new HseEvaluateKv("锅炉水培训", GLSPXwc, GLSPXmt, GLSPXwwc, GLSPXrs)); hseKv.Add(new HseEvaluateKv("锅炉作业培训", GLZYPXwc, GLZYPXmt, GLZYPXwwc, GLZYPXrs)); hseKv.Add(new HseEvaluateKv("电焊作业培训", DHZYPXwc, DHZYPXmt, DHZYPXwwc, DHZYPXrs)); hseKv.Add(new HseEvaluateKv("脚手架作业培训", JSJZYPXwc, JSJZYPXmt, JSJZYPXwwc, JSJZYPXrs)); hseKv.Add(new HseEvaluateKv("高空作业培训", GKZYPXwc, GKZYPXmt, GKZYPXwwc, GKZYPXrs)); hseKv.Add(new HseEvaluateKv("急救培训", JJPXwc, JJPXmt, JJPXwwc, JJPXrs)); #endregion } ViewBag.hseKV = hseKv;//PPE需求 #region 安全参与 DataTable SafetyDT = new SelfEvaluateBLL().GetSafeCount(searchDept.DeptCode, year, month); List <HseEvaluateKv> safeKV = new List <HseEvaluateKv>(); if (SafetyDT.Rows != null && SafetyDT.Rows.Count > 0) { safeKV.Add(new HseEvaluateKv("安全观察卡", SafetyDT.Select(" AQGCK=4").Length, SafetyDT.Select(" AQGCK=3").Length, SafetyDT.Select(" AQGCK=2").Length, SafetyDT.Select(" AQGCK=1").Length, SafetyDT.Select(" AQGCK=0").Length)); safeKV.Add(new HseEvaluateKv("领先指标卡", SafetyDT.Select(" LXZBK=4").Length, SafetyDT.Select(" LXZBK=3").Length, SafetyDT.Select(" LXZBK=2").Length, SafetyDT.Select(" LXZBK=1").Length, SafetyDT.Select(" LXZBK=0").Length)); safeKV.Add(new HseEvaluateKv("安全会议", SafetyDT.Select(" AQHY=4").Length, SafetyDT.Select(" AQHY=3").Length, SafetyDT.Select(" AQHY=2").Length, SafetyDT.Select(" AQHY=1").Length, SafetyDT.Select(" AQHY=0").Length)); safeKV.Add(new HseEvaluateKv("作业安全交底", SafetyDT.Select(" ZYAQJD=4").Length, SafetyDT.Select(" ZYAQJD=3").Length, SafetyDT.Select(" ZYAQJD=2").Length, SafetyDT.Select(" ZYAQJD=1").Length, SafetyDT.Select(" ZYAQJD=0").Length)); safeKV.Add(new HseEvaluateKv("安全检查", SafetyDT.Select(" AQJC=4").Length, SafetyDT.Select(" AQJC=3").Length, SafetyDT.Select(" AQJC=2").Length, SafetyDT.Select(" AQJC=1").Length, SafetyDT.Select(" AQJC=0").Length)); safeKV.Add(new HseEvaluateKv("安全培训", SafetyDT.Select(" AQPX=4").Length, SafetyDT.Select(" AQPX=3").Length, SafetyDT.Select(" AQPX=2").Length, SafetyDT.Select(" AQPX=1").Length, SafetyDT.Select(" AQPX=0").Length)); } #endregion ViewBag.SafetyDT = safeKV;//PPE需求 //其他的统计页面上用ajax请求获取 return(View()); }
/// <summary> /// 获取列表数据 /// </summary> /// <returns></returns> public ActionResult GetTableData(FormCollection form) { try { dynamic queryJson = JsonConvert.DeserializeObject <ExpandoObject>(Request["queryJson"]); var user = OperatorProvider.Provider.Current(); //先找到当前用户所在的电厂 var searchDept = new DepartmentBLL().GetList().Where(p => p.EnCode.StartsWith(user.OrganizeCode)).OrderBy(x => x.EnCode).ToList();//当前电厂底下的部门数据。分组组装数据用 var parentCode = user.OrganizeCode; DataTable dt = new SelfEvaluateBLL().GetChartsData(queryJson.year, queryJson.month, user.DeptCode); var userList = new UserBLL().GetList(); var treeList = new List <TreeGridEntity>(); if (searchDept != null && searchDept.Count > 0) { //组装各个部门的数据 searchDept.ForEach(p => { TreeGird treeGird = new TreeGird() { Id = p.DepartmentId, Name = p.FullName, ParentId = p.ParentId, DeptId = p.DepartmentId, DeptCode = p.DeptCode, Nature = p.Nature }; decimal userCount = userList.Count(x => x.DepartmentCode.StartsWith(p.EnCode) && x.IsPresence == "1"); //总人数 treeGird.AllUserCount = userCount.ToString();; decimal allCount = 0; var drItem = dt.Select(" DEPTCODE LIKE '" + p.EnCode + "%'"); decimal sbumitUserCount = 0; foreach (DataRow dr in drItem) { allCount += dr["COUNT"] == DBNull.Value ? 0 : Convert.ToDecimal(dr["COUNT"]); //已提交总数 sbumitUserCount += dr["USERCOUNT"] == DBNull.Value ? 0 : Convert.ToDecimal(dr["USERCOUNT"]); //已提交总人数 } treeGird.SubmitCount = allCount.ToString(); treeGird.NotSubmitCount = ((userCount - sbumitUserCount) < 0 ? 0 : (userCount - sbumitUserCount)).ToString(); if (userCount < 1) { treeGird.CYD = "0%"; } else { treeGird.CYD = Math.Round(allCount / userCount * 100, 2).ToString() + "%";//百分比 参与度=已提交/应提交*100% } TreeGridEntity treeGridEntity = new TreeGridEntity() { parentId = treeGird.ParentId, entityJson = JsonConvert.SerializeObject(treeGird), expanded = false, hasChildren = true, id = treeGird.Id, text = treeGird.Name, code = treeGird.CYD }; treeList.Add(treeGridEntity); }); } var FristDpetDetail = searchDept.FirstOrDefault(x => x.EnCode == parentCode); if (FristDpetDetail != null && !user.IsSystem) { var FristDpet = treeList.FirstOrDefault(x => x.id == FristDpetDetail.DepartmentId); if (FristDpet != null) { FristDpet.parentId = "0"; } } return(Content(treeList.TreeJson())); } catch (Exception ex) { return(Error("查询失败:" + ex.Message)); } }
/// <summary> /// 获取台账数据 /// </summary> /// <returns></returns> public ActionResult GetDataList(Pagination pagination, string queryJson) { var userNow = OperatorProvider.Provider.Current(); var bll = new SelfEvaluateBLL(); var queryJsonTo = queryJson.ToJObject(); var watch = CommonHelper.TimerStart(); string deptcode = string.Empty; string keyword = string.Empty; string year = string.Empty; string month = string.Empty; if (queryJsonTo["mydata"].IsEmpty()) { if (!queryJsonTo["DeptCode"].IsEmpty()) { deptcode = queryJsonTo["DeptCode"].ToString(); } if (!queryJsonTo["keyword"].IsEmpty()) { keyword = queryJsonTo["keyword"].ToString(); } if (!queryJsonTo["year"].IsEmpty()) { year = queryJsonTo["year"].ToString(); } if (!queryJsonTo["month"].IsEmpty()) { month = queryJsonTo["month"].ToString(); } } var list = bll.GetList("", deptcode, keyword, year, month); if (!queryJsonTo["mydata"].IsEmpty()) { list = list.Where(x => x.CreateUserId == userNow.UserId).OrderByDescending(x => x.CreateDate); } else { list = list.Where(x => x.IsSubmit == "1").OrderByDescending(x => x.CreateDate); } pagination.records = list.Count(); var datalist = (list.Skip(pagination.rows * (pagination.page - 1)).Take(pagination.rows)).ToList(); List <object> userData = new List <object>(); var userbll = new UserBLL(); var deptbll = new DepartmentBLL(); datalist.ForEach(x => { var getuser = userbll.GetEntity(x.CreateUserId); var dept = string.Empty; var go = true; var getDept = deptbll.GetEntity(getuser.DepartmentId); var parDeptId = getDept.ParentId; if (getDept.Nature == "班组" || getDept.Nature == "专业") { dept = getDept.FullName; while (go) { var parDept = deptbll.GetEntity(parDeptId); if (parDept == null) { go = false; break; } if (parDept.Nature == "部门") { if (string.IsNullOrEmpty(dept)) { dept = parDept.FullName; } else { dept = parDept.FullName + "/" + dept; } go = false; break; } else { parDeptId = parDept.ParentId; } } } else { dept = getDept.FullName; } var user = new { id = x.Id, name = getuser.RealName, dept = dept, rolename = getuser.DutyName, time = x.CreateDate, issubmit = x.IsSubmit == "0" ? "1" : string.Empty }; userData.Add(user); }); var JsonData = new { rows = userData, total = pagination.total, page = pagination.page, records = pagination.records, costtime = CommonHelper.TimerEnd(watch) }; return(Content(JsonData.ToJson())); }
public object GetSelfEvaluateList([FromBody] JObject json) { try { var bll = new SelfEvaluateBLL(); string res = json.Value <string>("json"); dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); int page = Convert.ToInt32(dy.data.pageNum), rows = Convert.ToInt32(dy.data.pageSize); string type = dy.data.type; string name = dy.data.name; string userid = dy.userid; string keyword = dy.data.keyword; string year = dy.data.year; string deptcode = dy.data.deptcode; string state = dy.data.state; string month = dy.data.month; OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!", data = new object() }); } var list = new List <SelfEvaluateEntity>(); if (string.IsNullOrEmpty(deptcode)) { list = bll.GetList("", curUser.DeptCode, keyword, year, month).ToList(); deptcode = curUser.DeptCode; } else { list = bll.GetList("", deptcode, keyword, year, month).ToList(); } if (type == "my") { list = list.Where(x => x.CreateUserId == curUser.UserId).ToList(); } else { if (state != "已填报") { var allUser = new UserBLL().GetList().Where(x => x.IsPresence == "1"); List <string> submituserids = list.Where(x => x.IsSubmit == "1").Select(x => x.CreateUserId).ToList(); //该部门下已提交人的人的Id List <string> submitUserNames = allUser.Where(p => submituserids.Contains(p.UserId) && p.IsPresence == "1").Select(p => p.RealName).ToList(); //已提交的人 List <Entity.BaseManage.UserEntity> notSubmitUserNames = allUser.Where(p => p.DepartmentCode != null && p.DepartmentCode.StartsWith(deptcode) && !submituserids.Contains(p.UserId)).ToList(); //未提交的人 if (state == "未填报") { list.Clear(); } var yearNum = Convert.ToInt32(year); var monthNum = Convert.ToInt32(month); var dayTime = new DateTime(yearNum, monthNum, 1); notSubmitUserNames.ForEach(x => { var model = new SelfEvaluateEntity(); model.CreateUser = x.RealName; model.CreateDate = dayTime; model.DeptId = x.DepartmentId; model.DeptCode = x.DepartmentCode; model.IsSubmit = "1"; list.Add(model); }); } list = list.Where(x => x.IsSubmit == "1").ToList(); } if (!string.IsNullOrEmpty(name)) { list = list.Where(x => x.CreateUser.Contains(name)).ToList(); } int count = list.Count(); list = list.Skip((page - 1) * rows).Take(rows).OrderBy(p => p.IsFill).OrderByDescending(x => x.IsSubmit).ThenByDescending(p => p.CreateDate).ToList(); var deptbll = new DepartmentBLL(); var allDept = deptbll.GetList(); list.ForEach(x => { var dept = string.Empty; var go = true; var getDept = allDept.FirstOrDefault(p => p.DepartmentId == x.DeptId); var parDeptId = getDept.ParentId; if (getDept.Nature == "班组" || getDept.Nature == "专业") { dept = getDept.FullName; while (go) { var parDept = deptbll.GetEntity(parDeptId); if (parDept == null) { go = false; break; } if (parDept.Nature == "部门") { if (string.IsNullOrEmpty(dept)) { dept = parDept.FullName; } else { dept = parDept.FullName + "/" + dept; } go = false; } else { parDeptId = parDept.ParentId; } } } else { dept = getDept.FullName; } x.DeptName = dept; }); return(new { code = 0, count = count, info = "获取成功", data = list }); } catch (Exception ex) { return(new { code = -1, count = 0, info = "获取数据失败:" + ex.Message, data = new object() }); } }
public object SaveSelfEvaluate() { try { var bll = new SelfEvaluateBLL(); string res = HttpContext.Current.Request["json"]; dynamic dy = JsonConvert.DeserializeObject <ExpandoObject>(res); string userid = dy.userid; OperatorProvider.AppUserId = userid; //设置当前用户 Operator curUser = OperatorProvider.Provider.Current(); if (null == curUser) { return(new { code = -1, count = 0, info = "请求失败,请登录!", data = new object() }); } string dataJson = JsonConvert.SerializeObject(dy.data); SelfEvaluateEntity entity = JsonConvert.DeserializeObject <SelfEvaluateEntity>(dataJson); if (string.IsNullOrEmpty(entity.Id)) //新增自我评估 { entity.Id = Guid.NewGuid().ToString(); } entity.CreateUser = curUser.UserName; entity.CreateUserId = curUser.UserId; entity.DeptCode = curUser.DeptCode; entity.DeptId = curUser.DeptId; entity.DeptName = curUser.DeptName; if (string.IsNullOrEmpty(entity.A.Id)) //新增自我评估 { entity.A.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.B.Id)) //新增自我评估 { entity.B.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.C.Id)) //新增自我评估 { entity.C.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.D.Id)) //新增自我评估 { entity.D.Id = Guid.NewGuid().ToString(); } if (string.IsNullOrEmpty(entity.E.Id)) //新增自我评估 { entity.E.Id = Guid.NewGuid().ToString(); } entity.A.EvaId = entity.Id; entity.B.EvaId = entity.Id; entity.C.EvaId = entity.Id; entity.D.EvaId = entity.Id; entity.E.EvaId = entity.Id; if (entity.IsSubmit == "1") { entity.IsFill = "1"; } bll.SaveForm(entity); return(new { code = 0, count = 0, info = "获取成功", data = 0 }); } catch (Exception ex) { return(new { code = -1, count = 0, info = "获取数据失败:" + ex.Message, data = new object() }); } }