public static void SendExecutiveEmail(string notificationMessage, int productionUnitId, int functionalAreaId, string formDescription, int formPeriod, string periodicityCode, DateTime formDate) { string userEmail = null; string logText = null; string baseParams = Properties.Settings.Default.NotificationParams; string notificationServiceTypeName = Properties.Settings.Default.NotificationTypeName; string subject = Properties.Settings.Default.NotificationSubject; string messageBody = null; try { // get all users of passed Production Unit // send an email to each user IQueryable <UserProductionUnit> usersList = CxUserProductionUnit.GetListByProductionUnit(productionUnitId); foreach (UserProductionUnit currentUser in usersList.ToList()) { User user = CxUser.GetUserById(currentUser.UserID); // if user is Manager send an email if ((bool)user.IsExecutive && !user.IsLockedOut) { userEmail = user.Email; messageBody = string.Format(notificationMessage, formDescription, GetPeriodMessage(formPeriod, periodicityCode, formDate)); logText = string.Format("sending an email to executive {0} with form : {1} and message {2}", userEmail, formDescription, messageBody); LOGGER.Write(LOGGER.LOGGEREventID.INFORMATION, cMODULE_NAME, new string[] { cBASE_NAME, logText }); NotificationService.Send(baseParams, notificationServiceTypeName, userEmail, subject, messageBody); } } } catch (Exception exp) { LOGGER.Write(LOGGER.LOGGEREventID.EXCEPTION, cMODULE_NAME, new string[] { cBASE_NAME, exp.Message }); } }
public CxUserModel(CxUser dbUser) { this.Id = dbUser.Id; this.Name = dbUser.Name; this.Email = dbUser.Email; this.IdentityId = dbUser.IdentityId; this.CanCreateMeetings = dbUser.CanCreateMeetings; }
private void BindEntities(int pageNumber) { string userName = UserNameSearchInput.Text == "" ? null : UserNameSearchInput.Text; string firstName = FisrtNameSearchInput.Text == "" ? null : FisrtNameSearchInput.Text; IQueryable <User> users = CxUser.GetUsers(pageNumber, userName, firstName, null); List <User> listEntities = users.ToList(); GridView1.DataSource = listEntities.Take(10); GridView1.DataBind(); //int pageSize = PageRecordsInput.Text == "" ? GridView1.PageSize : int.Parse(PageRecordsInput.Text); int pageSize = GridView1.PageSize; if (listEntities.Count == 0) { ShowInfo(MessagePanel, Resources.Resource.mNoRecordsFound); ListPanel.Visible = false; PagingPanel.Visible = false; } else { if (listEntities.Count > pageSize) { SetPages(ddlPaging, pageNumber + 1); PagingPanel.Visible = true; ddlPaging.SelectedIndex = pageNumber - 1; } else { PagingPanel.Visible = false; } DetailPanel.Visible = false; BackPanel.Visible = false; ConfirmButtonPanel.Visible = false; ListPanel.Visible = true; } }
public ActionResult AddUser(CxUser model) { #region 访问权限 var user1 = (Maticsoft.Model.User_Info)ViewBag.curentUser; var curentUser = _iuserService.getUserByID(user1.Id); var ManagePermission = curentUser.UserGroup.ManagePermission; List <string> managePermissionstr = new List <string>(ManagePermission.Split(',')); var managePermission = managePermissionstr.Select(x => Convert.ToInt32(x)).ToList(); if (!managePermission.Contains((int)SortEnum.sortClass.userManage)) { return(new RedirectResult("/Home/deny")); //return Json(new { state = "Error", mes = "发生错误" }); } #endregion #region 安全校验 var unitiM = new UntilMethod(); var serverToken = TempData["addToken"].ToString(); var ClientToken = Request["addToken"] == null ? "" : Request["addToken"].ToString(); if (unitiM.DecryptDES(ClientToken, "jack") != serverToken) { TempData["addToken"] = serverToken; return(new RedirectResult("/Home/deny")); } #endregion #region 解密 model.UserName = unitiM.DecryptDES(model.UserName, "jack"); model.UserPassword = unitiM.DecryptDES(model.UserPassword, "jack"); #endregion var length = int.Parse(UntilMethod.getAppSettingValue("passWordLength").ToString()); #region 密码强度校验 var regex = new Regex(@"(?=.*[0-9])(?=.*[a-zA-Z])(?=([\x21-\x7e]+)[^a-zA-Z0-9]).{" + length + ",15}", RegexOptions.Multiline | RegexOptions.IgnorePatternWhitespace); if (!regex.IsMatch(model.UserPassword)) { return(Json(new { state = "Error", mes = "密码格式不符,请输入" + length + "-15位,并含有数字字母和特殊字符" })); } #endregion try { if (model.UserID > 0)//更新 { var user = _iuserService.getUserByID(model.UserID); user.UserPassword = UntilMethod.Md5Encrypt(model.UserPassword); user.RealName = model.RealName; user.UserGroupID = model.UserGroupID; user.passWordTime = DateTime.Now; user.Effective = model.Effective; _iuserService.UpdateUser(user); AddOpLog("用户修改,修改账户:" + user.UserName.ToString() + " 角色:" + user.UserGroup.GroupName); } else//新增 { #region 用户名重复校验 var CheckUser = getUser(model.UserName); if (CheckUser != null) { return(Json(new { state = "Error", mes = "用户名已存在" })); } #endregion #region 获取密码过期时常 var overdueTimeLenth = -int.Parse(UntilMethod.getAppSettingValue("overdueHoru").ToString()); #endregion model.isAdmin = true; model.UserPassword = UntilMethod.Md5Encrypt(model.UserPassword); //model.passWordTime = DateTime.Now; model.passWordTime = DateTime.Now.AddDays(overdueTimeLenth); _iuserService.AddUser(model); var addUserGroup = _iuserGroupService.GetByID(model.UserGroupID); AddOpLog("用户新增,新增账户:" + model.UserName.ToString() + " 角色:" + addUserGroup.GroupName); } return(Json(new { state = "OK", mes = "" })); } catch (Exception ex) { return(Json(new { state = "Error", mes = "发生错误" })); } }
public void DeleteUser(CxUser entity) { _IrepositoryUser.Delete(entity); }
public void AddUser(CxUser entity) { _IrepositoryUser.Insert(entity); }
public void UpdateUser(CxUser entiy) { _IrepositoryUser.Update(entiy); }