public JsonResult ResetPwd(int id = 0) { PublicUser publicUser = ncBase.CurrentEntities.PublicUser.Where(o => o.UserID == id).FirstOrDefault(); if (publicUser.IsNull()) { return(Json(new { status = 1, msg = "没有找到用户!(用户ID:" + id + ")" })); } string passWordAdorn = ConfigUtility.GetValue("PassWordAdorn"); string passWord = string.Empty; if (string.IsNullOrEmpty(publicUser.Tel)) { passWord = Convert.ToString(publicUser.UserID); } PublicUserModel loginUser = this.GetLoginUser(); passWord = publicUser.Tel; publicUser.Password = StringUtility.ToMd5String(passWordAdorn + passWord); ncBase.CurrentEntities.SaveChanges(); OperatorLog operatorLog = new OperatorLog(); operatorLog.Note = "重置密码,被重置用户ID:" + publicUser.UserID + " 新密码:" + passWord; operatorLog.Type = 1; operatorLog.Uid = loginUser.UserID; operatorLog.AddTime = DateTime.Now; ncBase.CurrentEntities.AddToOperatorLog(operatorLog); ncBase.CurrentEntities.SaveChanges(); return(Json(new { status = 0, msg = "密码重置成功, 新密码:" + passWord })); }
public ApiResponse EditPwd([FromBody] UserReq model) { if (string.IsNullOrEmpty(model.NewPwd) || model.NewPwd.Length < 6) { return(new ApiResponse(Metas.PwdLength_Wrong)); } var credential = Request.GetCredential(); int userId = 0; string userName = ""; if (credential != null) { userId = credential.UserID; userName = credential.Name; } UserBll userBll = new UserBll(); PublicUserModel checkUser = userBll.PublicUserLogin(userName, model.OldPwd, 0); if (checkUser != null && checkUser.UserID > 0) { int row = userBll.UpdateUserPassword(checkUser.UserID, model.NewPwd); if (row > 0) { return(new ApiResponse(Metas.SUCCESS)); } else { return(new ApiResponse(Metas.UNKNOWN_ERROR)); } } else { return(new ApiResponse(Metas.PASSWORD_WRONG)); } }
/// <summary> /// 站点管理页面 GET: /PersonManage/SiteManageView /// </summary> /// <returns></returns> public ActionResult SiteManageView() { PublicUserModel loginUser = this.GetLoginUser();//当前用户 SiteManageBll siteManageBll = new SiteManageBll(); List <SiteManageModel> siteManageList = siteManageBll.GetSiteList(cityId: loginUser.CityID);//所有站点 UserSiteManageBll userSiteManageBll = new UserSiteManageBll(); List <UserSiteManageModel> userSiteManageList = userSiteManageBll.GetUserSiteListByUserId(loginUser.UserID);//用户关联的站点 List <SiteManageViewModel> viewList = (from site in siteManageList join userSite in userSiteManageList on site.SiteID equals userSite.SiteID into viewListTemp from viewItem in viewListTemp.DefaultIfEmpty() select new SiteManageViewModel() { CityID = site.CityID, Logo = site.Logo, SiteID = site.SiteID, SiteName = site.SiteName, Status = site.Status, SiteStatus = viewItem == null?1:viewItem.SiteStatus, SiteUserID = viewItem == null?0:viewItem.SiteUserID, SiteUserName = viewItem == null?"":viewItem.SiteUserName, UserID = viewItem == null?0:viewItem.UserID, YunRefresh = site.YunRefresh, LoginUrl = site.LoginUrl, RegisterUrl = site.RegisterUrl }).ToList(); return(View(viewList)); }
/// <summary> /// 用户注册 /// </summary> /// <param name="entity"></param> /// <returns>UserID大于0:成功 ,小于0:各种失败</returns> public virtual int addPublicUser(PublicUserModel entity) { string passWordAdorn = ConfigUtility.GetValue("PassWordAdorn"); DbCommand cmd = GetStoredProcCommand("P_Api_addPublicUser"); AddOutParameter(cmd, "@UserID", DbType.Int32, 4); AddInParameter(cmd, "@Name", DbType.String, entity.Name); AddInParameter(cmd, "@Password", DbType.String, StringUtility.ToMd5String(passWordAdorn + entity.Password)); AddInParameter(cmd, "@Portrait", DbType.String, entity.Portrait); AddInParameter(cmd, "@Molblie", DbType.String, entity.Molblie); AddInParameter(cmd, "@Tel", DbType.String, entity.Tel); AddInParameter(cmd, "@NickName", DbType.String, entity.NickName); AddInParameter(cmd, "@EnrolnName", DbType.String, entity.EnrolnName); AddInParameter(cmd, "@Sex", DbType.Int32, entity.Sex); AddInParameter(cmd, "@Address", DbType.String, entity.Address); AddInParameter(cmd, "@Email", DbType.String, entity.Email); AddInParameter(cmd, "@QQ", DbType.String, entity.QQ); AddInParameter(cmd, "@IP", DbType.String, entity.IP); AddInParameter(cmd, "@CityID", DbType.Int32, entity.CityID); AddInParameter(cmd, "@CompanyId", DbType.Int32, entity.CompanyId); AddInParameter(cmd, "@StoreId", DbType.Int32, entity.StoreId); AddInParameter(cmd, "@LastLoginIP", DbType.String, entity.LastLoginIP); AddInParameter(cmd, "@VipType", DbType.Int32, entity.VipType); AddInParameter(cmd, "@DistrictId", DbType.Int32, entity.DistrictId); AddInParameter(cmd, "@RegionId", DbType.Int32, entity.RegionId); AddInParameter(cmd, "@Points", DbType.Int32, 100); //初始赠送积分 AddInParameter(cmd, "@Remarks", DbType.String, entity.Remarks); ExecuteNonQuery(cmd); int outUserId = 0; int.TryParse(cmd.Parameters["@UserID"].Value.ToString(), out outUserId); return(outUserId); }
public ActionResult Index() { PublicUserModel loginUser = this.GetLoginUser(); int uid = loginUser.IsNoNull() ? loginUser.UserID : 0; VPublicUser userInfo = ncBase.CurrentEntities.VPublicUser.Where(c => c.UserID == uid).FirstOrDefault(); UserTaskSignStat userSign = userBll.UserSingStat(userInfo.UserID); ViewBag.UserTaskSignStat = userSign; int taskKey = 0; #region 判断时间 int timeOut = 4;//四小时时间 DateTime nowTime = DateTime.Now; if (nowTime.Hour >= 8 && nowTime.Hour < 8 + timeOut) { taskKey = (int)PointsEnum.EveryDay_Sign_8; } else if (nowTime.Hour >= 15 && nowTime.Hour < 15 + timeOut) { taskKey = (int)PointsEnum.EveryDay_Sign_16; } #endregion if (loginUser.Points < 1) { taskKey = 0; } ViewBag.TaskKey = taskKey; ViewBag.Uid = CryptoUtility.TripleDESEncrypt(Convert.ToString(loginUser.UserID)); return(View(userInfo)); }
public ActionResult DoChangeEmail(string validCode) { PublicUserModel user = this.GetLoginUser(); int status = 0; EmailEditValidCode item = ncBase.CurrentEntities.EmailEditValidCode.Where(e => e.Code == validCode && e.Status == 0 && e.UserId == user.UserID).OrderByDescending(e => e.AddTime).FirstOrDefault(); if (item.IsNoNull()) { PublicUser thisUser = ncBase.CurrentEntities.PublicUser.Where(u => u.UserID == user.UserID).FirstOrDefault(); if (thisUser.IsNoNull()) { thisUser.Email = item.NewEmail; item.Status = 1; ncBase.CurrentEntities.SaveChanges(); status = 1; } else { status = -100;//用户不存在 } } else { status = -99;//不是有效的邮箱验证 } ViewBag.status = status; return(View()); }
/// <summary> /// ActionLog 首页 /// </summary> /// <param name="pageIndex"></param> /// <param name="pageSize"></param> /// <param name="keyWord"></param> /// <returns></returns> public ActionResult Index(int pageIndex = 1, int pageSize = 20, string keyWord = "", int userId = 0) { int totalSize = 0; string userName = string.Empty; ActionLogTopStatReq parame = new ActionLogTopStatReq() { keyword = keyWord, pi = pageIndex, ps = pageSize, userId = userId }; if (userId > 0) { PublicUserModel user = userBll.GetUserById(userId); if (user.IsNoNull()) { userName = user.Name; } } List <ControllerActionMapModel> stateList = actionLogBll.ActionLogTopStat(parame, ref totalSize); ViewBag.Count = totalSize; ViewBag.PageIndex = pageIndex; ViewBag.PageSize = pageSize; ViewBag.KeyWord = keyWord; ViewBag.UserId = userId; ViewBag.UserName = userName; ViewBag.PageTotal = (int)Math.Ceiling((double)ViewBag.Count / pageSize); return(View(stateList)); }
public JsonResult DynamicSupportAdd(int dynamicId) { PublicUserModel loginUser = this.GetLoginUser(); int rows = dynamicBll.DynamicSupportAdd(loginUser.UserID, dynamicId); return(Json(new { status = rows })); }
public static PublicUserModel GetLoginUser(HttpContextBase context) { String saveKey = System.Configuration.ConfigurationManager.AppSettings["AuthSaveKey"]; ZJB.Api.BLL.UserBll userBll = new ZJB.Api.BLL.UserBll(); PublicUserModel user = new PublicUserModel(); if (String.IsNullOrEmpty(saveKey)) { saveKey = "WXLoginedUser"; } if (context.Session != null && context.Session[saveKey] != null) { user = (PublicUserModel)context.Session[saveKey]; if (user.Points < 1) { user = userBll.GetUserById(user.UserID); context.Session[saveKey] = user; } return(user); } else if (context.Request.Cookies[saveKey] != null) { int userId = 0; int.TryParse(ZJB.Core.Utilities.CryptoUtility.TripleDESDecrypt(context.Request.Cookies[saveKey].Value), out userId); user = userBll.GetUserById(userId); context.Session[saveKey] = user; return(user); } return(null); }
public ActionResult Index(string menu = "", string url = "") { PublicUserModel loginUser = this.GetLoginUser(); if (loginUser.IsNull()) { return(Redirect("/")); } #region (每天一次)每天访问登陆后的首页就增加一次统计,避免cooike自动登录的 统计不到登陆明细 if (loginUser != null && loginUser.UserID > 0) { userBll.HomeIndexAccessStat(loginUser.UserID, loginUser.Name); } #endregion int companyId = loginUser.IsNoNull()? Convert.ToInt32(loginUser.CompanyId):0; Company company = ncBase.CurrentEntities.Company.Where(c => c.CompanyId == companyId).FirstOrDefault(); if (company != null) { ViewBag.CompanyName = company.Name; } int storeId = loginUser.IsNoNull() ? Convert.ToInt32(loginUser.StoreId) : 0; CompanyStore companyStore = ncBase.CurrentEntities.CompanyStore.Where(c => c.StoreId == storeId).FirstOrDefault(); if (companyStore != null) { ViewBag.CompanyStoreName = companyStore.StoreName; } ViewBag.Url = url; ViewBag.Menu = menu; return(View(loginUser)); }
public JsonResult RefreshPlanState(int siteId = 0) { PublicUserModel loginUser = this.GetLoginUser(); RefreshPlan planItem = new RefreshPlan() { UserId = loginUser.UserID, SiteId = siteId }; int planId = refreshBll.RefreshPlanState(planItem); string msg = string.Empty; switch (planId) { case -1: msg = "不支持云刷新"; break; case -2: msg = "没有绑定账号"; break; default: msg = "操作成功"; break; } return(Json(new { status = planId, msg = msg })); }
/// <summary> /// 根据userId进行登陆 /// </summary> /// <param name="userId"></param> /// <returns></returns> protected virtual bool LoginByUserId(string userId) { //todo 根据userId进行登陆 int _userId = 0; int.TryParse(userId, out _userId); if (_userId < 1) { return(false); } cache.Remove(string.Format(CacheItemConstant.UserModelItem, userId)); var user = _userBll.GetUserById(_userId); PublicUserModel newUser = user; String saveKey = System.Configuration.ConfigurationManager.AppSettings["AuthSaveKey"]; if (String.IsNullOrEmpty(saveKey)) { saveKey = "WXLoginedUser"; } Session[saveKey] = newUser; HttpCookie loginUserCookie = new HttpCookie(saveKey, CryptoUtility.TripleDESEncrypt(newUser.UserID.ToString())); loginUserCookie.Expires = DateTime.Now.AddDays(10); Response.Cookies.Add(loginUserCookie); return(true); }
public JsonResult GetRefreshSetList(int siteId) { PublicUserModel loginUser = this.GetLoginUser(); List <RefreshPlan> refreshList = ncBase.CurrentEntities.RefreshPlan.Where(u => u.UserId == loginUser.UserID && u.SiteId == siteId).ToList(); if (refreshList.IsNoNull()) { var resultList = refreshList.Select(p => new { p.SiteId, p.PlanId, p.BeginHour, p.BeginMinute, p.EndHour, p.EndMinute, p.TradeType, p.BuildType, p.IntervalTime, p.CountPerTime }); return(Json(new { data = resultList, totalSize = resultList.Count() }, JsonRequestBehavior.AllowGet)); } return(Json(new { data = refreshList, totalSize = 0 }, JsonRequestBehavior.AllowGet)); }
public JsonResult RefreshSet(RefreshPlan item) { PublicUserModel loginUser = this.GetLoginUser(); item.UserId = loginUser.UserID; int intervalTime = (int)item.IntervalTime; int beginHour = 0, beginMinute = 0, endHour = 0, endMinute = 0; int.TryParse(item.BeginHour.ToString(), out beginHour); int.TryParse(item.BeginMinute.ToString(), out beginMinute); int.TryParse(item.EndHour.ToString(), out endHour); int.TryParse(item.EndMinute.ToString(), out endMinute); TimeSpan beginTp = new TimeSpan(beginHour, beginMinute, 0); TimeSpan endTp = new TimeSpan(endHour, endMinute, 0); TimeSpan diffTime = endTp - beginTp; List <RefreshDetail> detailList = new List <RefreshDetail>(); if (diffTime.TotalMinutes <= 0) { return(Json(new { status = -1, msg = "结束时间必须大于开始时间" })); } if (intervalTime < 1) { return(Json(new { status = -1, msg = "刷新间隔必须大于1分钟" })); } if (diffTime.TotalMinutes < intervalTime) { return(Json(new { status = -1, msg = "设置的开始和结束间隔时间不能小于刷新间隔时间" })); } if (item.CountPerTime <= 0) { return(Json(new { status = -1, msg = "刷新次数必须大于0" })); } TimeSpan detailTime = beginTp; for (int i = 0; i <= diffTime.TotalMinutes / intervalTime; i++) { detailList.Add(new RefreshDetail() { BuildType = item.BuildType, CountPerTime = item.CountPerTime, Hour = detailTime.Hours, Minute = detailTime.Minutes, TradeType = item.TradeType }); detailTime = detailTime.Add(new TimeSpan(0, intervalTime, 0)); } int result = refreshBll.RefreshDetailAdd(item, detailList); string msg = string.Empty; if (result > 0) { msg = "添加成功"; } if (result == -1) { msg = "计划已达上限,请先删除已有计划"; } return(Json(new { status = result, msg = msg })); }
public JsonResult RefreshSetDelete(string planIds) { PublicUserModel loginUser = this.GetLoginUser(); int result = refreshBll.RefreshSetDelete(loginUser.UserID, planIds); return(Json(new { status = result })); }
public JsonResult GetUserContacts(string type = "list", string letter = "", int lastId = 0, long lastTime = 0, int pageSize = 10, int pageIndex = 1, string keyword = "") { PublicUserModel thisUser = this.GetLoginUser(); string userName = thisUser.Name; int userId = thisUser.UserID; UserBll userBll = new UserBll(); int totalSize = 0; List <PublicUserModel> userModels = userBll.GetUserContacts(keyword, thisUser.CompanyId ?? 0, 0, letter, pageIndex, pageSize, ref totalSize); var resultList = userModels.Select(h => new { h.CityID, h.UserID, Name = h.Name, h.EnrolnName, h.Email, h.Tel, h.CompanyName, h.StoreName, h.Points, h.Portrait }); return(Json(new { data = resultList, totalCount = totalSize }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 通过controller和anction 获取每天访问次数 /// </summary> /// <returns></returns> public ActionResult ActionLogStatEveryDayByFunction(string _controller, string _action, int userId = 0) { string functionName = string.Empty; ControlActionMap item = ncBase.CurrentEntities.ControlActionMap.Where(m => m.Controller == _controller && m.Action == _action).FirstOrDefault(); if (item.IsNoNull()) { functionName = item.FunctionName; } if (string.IsNullOrEmpty(functionName)) { functionName = _controller + "/" + _action; } string userName = string.Empty; if (userId > 0) { PublicUserModel user = userBll.GetUserById(userId); if (user.IsNoNull()) { userName = user.Name; } } ViewBag.FunctionName = functionName; ViewBag.Controller = _controller; ViewBag.Action = _action; ViewBag.UserId = userId; ViewBag.UserName = userName; return(View()); }
public JsonResult UserTaskDraw(int taskId) { PublicUserModel loginUser = this.GetLoginUser(); int result = userTaskBll.UserTaskLogDraw(loginUser.UserID, taskId); string msg = string.Empty; if (result <= 0) { switch (result) { case -1: msg = "任务不存在"; break; case -2: case -3: msg = "已经签到"; break; default: msg = "未知错误"; break; } } else { msg = "领取成功+" + result + "积分"; } return(Json(new { status = result, msg = msg })); }
public ActionResult UserContacts() { PublicUserModel thisUser = this.GetLoginUser(); int companyid = thisUser.CompanyId ?? 0; Company company = ncBase.CurrentEntities.Company.Where(o => o.CompanyId == companyid).FirstOrDefault(); thisUser.CompanyName = company.IsNoNull() ? company.Name : ""; return(View(thisUser)); }
public ActionResult Freeze() { PublicUserModel loginUser = this.GetLoginUser(); //if (loginUser.Points > 0) { // return Redirect("/Home"); // } return(View(loginUser)); }
public ActionResult Index() { PublicUserModel loginUser = this.GetLoginUser(); UserTaskStat stat = userTaskBll.Get_UserTask_Stat(loginUser.UserID); ViewBag.UserName = loginUser.Name; ViewBag.Portrait = loginUser.Portrait; return(View(stat)); }
public JsonResult EditEmail(string email) { if (string.IsNullOrEmpty(email)) { return(Json(new { status = 1, msg = "邮箱不能为空" })); } PublicUser emailUser = ncBase.CurrentEntities.PublicUser.Where(u => u.Email == email).FirstOrDefault(); if (emailUser.IsNoNull()) { return(Json(new { status = 1, msg = "修改失败,该邮箱已被使用" })); } PublicUserModel user = this.GetLoginUser(); int userId = this.GetLoginUser().UserID; //#region 直接修改 //PublicUserModel user = this.GetLoginUser(); //int userId = this.GetLoginUser().UserID; //PublicUser loginUser = ncBase.CurrentEntities.PublicUser.Where(u => u.UserID == userId).FirstOrDefault(); //loginUser.Email = email; //ncBase.CurrentEntities.SaveChanges(); //#endregion #region 发送邮箱进行验证后,在验证页面进行修改 string md5Code = ZJB.Core.Utilities.StringUtility.ToMd5String(userId.ToString() + email + DateTime.Now.ToString()); EmailEditValidCode ValidRecord = ncBase.CurrentEntities.EmailEditValidCode.Where(e => e.UserId == userId).FirstOrDefault(); if (ValidRecord.IsNoNull()) { ValidRecord.NewEmail = email; ValidRecord.Status = 0; ValidRecord.AddTime = DateTime.Now; ValidRecord.Code = md5Code; ncBase.CurrentEntities.SaveChanges(); } else { EmailEditValidCode newValid = new EmailEditValidCode() { AddTime = DateTime.Now, Code = md5Code, NewEmail = email, Status = 0, UserId = userId, }; ncBase.CurrentEntities.EmailEditValidCode.AddObject(newValid); ncBase.CurrentEntities.SaveChanges(); } ZJB.Core.Utilities.EmailSender emailHelper = new EmailSender(); string title = "修改邮箱验证"; string url = "http://" + Request.Url.Host + "/User/DoChangeEmail" + "?validCode=" + md5Code; string updateUrl = "<a target='_blank' href=\"" + url + "\">前往修改</a>"; string content = string.Format(ConfigUtility.GetValue("ChangeEamilConent"), user.Name, updateUrl); SendEmail(title, content, email); #endregion return(Json(new { status = 0, msg = "邮箱验证已发送到您新的邮箱,请查收" })); }
public JsonResult GroupList(GroupListParame parame) { PublicUserModel loginUser = this.GetLoginUser(); int totalSize = 0; parame.UserId = loginUser.UserID; List <GroupModel> groupList = groupBll.GroupList(parame, ref totalSize); return(Json(groupList, JsonRequestBehavior.AllowGet)); }
public JsonResult UserSiteAdd(AddUserSiteReq parames) { PublicUserModel loginUser = this.GetLoginUser(); if (parames.webBasicId > 0) { bool flag = false; try { flag = UserVerifier.CheckSite(parames.webBasicId, parames.loginName, parames.loginPwd); } catch (Exception) { } if (!flag) { return(Json(new { msg = "帐号或密码错误!" })); } #region 添加 UserSiteManageBll userSiteManageBll = new UserSiteManageBll(); UserSiteManageModel userSiteManageModel = new UserSiteManageModel() { SiteID = parames.webBasicId, UserID = loginUser.UserID, SiteStatus = 1, SiteUserName = parames.loginName, SiteUserPwd = parames.loginPwd }; userSiteManageBll.UserSiteManageAdd(userSiteManageModel); #endregion #region 绑定网站帐号任务 DoTask(loginUser.UserID, PointsEnum.First_BindSiteAccount); #endregion if (loginUser.VipType < 1) { PublicUser user = ncBase.CurrentEntities.PublicUser.Where(o => o.UserID == loginUser.UserID).FirstOrDefault(); if (user.IsNoNull()) { VipType vipType = ncBase.CurrentEntities.VipType.Where(o => o.VipTypeID == 2).FirstOrDefault(); user.VipType = vipType.IsNoNull() ? vipType.VipTypeID : 1; user.MaxStock = vipType.IsNoNull() ? Convert.ToInt32(vipType.MaxStock) : 50; user.PublishNum = vipType.IsNoNull() ? Convert.ToInt32(vipType.PublishNum) : 2; ncBase.CurrentEntities.SaveChanges(); } } return(Json(new { msg = "添加成功" })); } else { return(Json(new { msg = "添加失败" })); } }
public ActionResult Detail(int Id) { PublicUserModel loginUser = this.GetLoginUser(); UserGroup groupDetail = ncBase.CurrentEntities.UserGroup.Where(g => g.Id == Id && g.UserId == loginUser.UserID).FirstOrDefault(); if (groupDetail.IsNull()) { Response.Redirect("/Group"); } return(View(groupDetail)); }
public ActionResult Index() { PublicUserModel loginUser = this.GetLoginUser(); Company company = ncBase.CurrentEntities.Company.Where(c => c.CompanyId == loginUser.CompanyId).FirstOrDefault(); if (company != null) { ViewBag.CompanyName = company.Name; } return(View(loginUser)); }
public JsonResult GetRefreshWeb() { PublicUserModel loginUser = this.GetLoginUser(); var result = refreshBll.GetUserRefreshWeb(loginUser.UserID).Select(s => new { s.SiteID, s.Logo, s.State, SiteUserName = string.IsNullOrEmpty(s.SiteUserName) ? "缺少账号" : s.SiteUserName }); return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult PointTop() { PublicUserModel loginUser = this.GetLoginUser(); ObjectResult <P_User_PointsTop_Result> pointTopList = ncBase.CurrentEntities.P_User_PointsTop(100); P_User_PointTopRight_Result userPoint = ncBase.CurrentEntities.P_User_PointTopRight(loginUser.UserID).FirstOrDefault(); if (userPoint.IsNoNull()) { ViewBag.RightPointStat = userPoint; } return(View(pointTopList)); }
public JsonResult ReReleaseLog(int id, int status) { PublicUserModel loginUser = this.GetLoginUser(); PostLog reReleaseLog = ncBase.CurrentEntities.PostLog.Where(o => o.ID == id && o.Status == status && o.UserID == loginUser.UserID).FirstOrDefault(); if (reReleaseLog.IsNoNull()) { reReleaseLog.Status = 0; ncBase.CurrentEntities.SaveChanges(); return(Json(new { code = 1, msg = "成功" })); } return(Json(new { code = 1, msg = "可能系统重发了" })); }
public JsonResult GetVoteResult(string ids) { PublicUserModel loginUser = new PublicUserModel(); loginUser = this.GetLoginUser(); List <int> VoteIds = new List <int>(); if (!string.IsNullOrEmpty(ids)) { foreach (string item in ids.Split(',').ToList()) { int id = 0; int.TryParse(item, out id); VoteIds.Add(id); } } List <VoteSurveyName> voteList = voteBll.GetSurveyNameListByIds(VoteIds); List <VoteOptionName> voteOptionList = new List <VoteOptionName>(); List <VoteSurveySubmitRecord> voteSubmitRecordList = new List <VoteSurveySubmitRecord>(); if (voteList.IsNoNull()) { voteOptionList = voteBll.GetOptionNameListByVoteIds(VoteIds); voteSubmitRecordList = voteBll.GetSubmitRecordListByVoteIds(VoteIds); var resultList = voteList.Select(s => new { s.VoteId, s.SurveyName, s.SurveyType, countdown = GetSyCount(((DateTime)s.EndTime)), VoteNum = s.VoteNum == null?0:s.VoteNum, s.UserId, isGuoqi = s.EndTime > DateTime.Now ? 0 : 1, isSubmit = voteSubmitRecordList.Where(r => r.UserId == loginUser.UserID && r.VoteId == s.VoteId).ToList().Count > 0 ? 1 : 0, ViewData = (s.ViewData == 2 && s.UserId != loginUser.UserID)?-1:s.ViewData, OptionList = voteOptionList.Where(o => o.VoteId == s.VoteId).Select(o => new { o.VoteId, VoteNum = o.VoteNum == null?0:o.VoteNum, o.OptionName, o.OptionId, percent = o.VoteNum > 0 ? Math.Round((Double)((double)o.VoteNum * 100 / (s.VoteNum)), 2, MidpointRounding.AwayFromZero).ToString() : "0", voteThis = voteSubmitRecordList.Where(r => r.UserId == loginUser.UserID && r.VoteId == s.VoteId && r.OptionId == o.OptionId).ToList().Count > 0?1:0 }) }); return(Json(resultList)); } return(Json(VoteIds)); }