public async Task <IActionResult> Edit(int id, [Bind("id,jobNumber,name,sex,password,idNumber,phone,address,State,birthday")] OperatorEntity operatorEntity) { if (id != operatorEntity.id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(operatorEntity); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!OperatorEntityExists(operatorEntity.id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(operatorEntity)); }
public ActionResult AddInfo(OperatorEntity operatorEntity) { _context.OperatorEntity.Add(operatorEntity); _context.SaveChanges(); return(RedirectToAction(nameof(Index))); }
public static Entity Hang(Entity a, Entity b) { var res = new OperatorEntity("powf", Const.PRIOR_POW); res.Children.Add(a); res.Children.Add(b); return(res); }
public async Task <IActionResult> Create([Bind("id,jobNumber,name,sex,password,idNumber,phone,address,State,birthday")] OperatorEntity operatorEntity) { if (ModelState.IsValid) { _context.Add(operatorEntity); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(operatorEntity)); }
// Start is called before the first frame update void Start() { WheelSteering = GameObject.Find("steeringwheel").GetComponent <OperatorEntity>(); Breaker = GameObject.Find("breaker").GetComponent <OperatorEntity>(); GasPedal = GameObject.Find("gaspedal").GetComponent <OperatorEntity>(); fixWheelSteering = WheelSteering.transform.position - this.transform.position; fixBreaker = Breaker.transform.position - this.transform.position; fixGasPedal = GasPedal.transform.position - this.transform.position; m_Camera = this.GetComponent <Camera>(); m_OrthographicSize = m_Camera.orthographicSize; }
public void GetSendAppMessage(List <SendAppMessageModel> sendAppMessageModels) { foreach (var item in sendAppMessageModels) { CustomerInfoEntity customerInfoEntity = _customerInfoDal.GetCustomerByExpression(x => x.Cid == item.Cid); CorporationEntity corporationEntity = _corporationDal.GetContactInfoByExpression(x => x.CorpId == customerInfoEntity.CorpID); OperatorEntity operatorEntity = base.Context.Set <OperatorEntity>().Where(n => n.Oid.ToUpper() == corporationEntity.ResponsibleOid).FirstOrDefault(); item.Email = operatorEntity?.Email; item.SendContent = corporationEntity.CorpName + " 公司已生成订单 " + item.OrderId + ",请差旅顾问及时处理!"; } }
public OperatorModel GetOperatorByOid(string oid) { if (string.IsNullOrEmpty(oid)) { return(null); } OperatorEntity operatorEntity = _operatorDal.Query <OperatorEntity>(n => n.Oid.ToUpper() == oid.ToUpper()).FirstOrDefault(); if (operatorEntity == null) { return(null); } return(Mapper.Map <OperatorEntity, OperatorModel>(operatorEntity)); }
/// <summary> /// Linear multi hanging /// (1 + (1 + (1 + 1))) /// </summary> /// <param name="children"></param> /// <param name="opName"></param> /// <param name="opPrior"></param> /// <returns></returns> internal static Entity MultiHangLinear(List <Entity> children, string opName, int opPrior) { if (children.Count == 0) { throw new TreeException("At least 1 child required"); } if (children.Count == 1) { return(children[0]); } Entity res = new OperatorEntity(opName, opPrior); res.Children.Add(children[0]); res.Children.Add(MultiHangLinear(children.GetRange(1, children.Count - 1), opName, opPrior)); return(res); }
public int InsertOperatorEntity(OperatorEntity oe) { try { string sqlstr = $"insert into dbo.Operator(Ope_Account,Ope_Name,Ope_Password,Ope_IfUse,Ope_RevisionTime,Ope_Cmst_ID,Ope_Rol_ID,Ope_IfSysAccount)values('{oe.Account}','{oe.OperatorName}','{oe.Password}','{oe.IfUse}','{oe.UpdateTime}',{oe.CmstID},{oe.RoleID},'{oe.IfSysAccount}')"; int ret = SqlDataHelper.ExecuteNonQuery(SqlDataHelper.GetConnection(), CommandType.Text, sqlstr); if (ret > 0) { return(1); } return(-1); } catch (Exception ex) { throw ex; } }
public void SetGame() { Car1 = GameObject.Find("car1").GetComponent <CarEntity>(); Car2 = GameObject.Find("car2").GetComponent <CarEntity>(); m_WheelSteering = GameObject.Find("steeringwheel").GetComponent <OperatorEntity>(); m_Breaker = GameObject.Find("breaker").GetComponent <OperatorEntity>(); m_GasPedal = GameObject.Find("gaspedal").GetComponent <OperatorEntity>(); m_Camera = GameObject.Find("Main Camera").GetComponent <TracingCameraEntity>(); m_Camera.targetObject = Car1; //找到hierarchy中的車子放入List & 鏡頭功能並鎖定車一 m_Cars.Add(Car1); m_Cars.Add(Car2); m_SelectCar = m_Cars[0]; }
public void Delete(int deleteDataID) { var deleteInfoDataID = deleteDataID; OperatorEntity operatorEntity = _context.OperatorEntity.Find(deleteInfoDataID); _context.OperatorEntity.Remove(operatorEntity); _context.SaveChanges(); //return RedirectToAction(nameof(Index)); //var cookie = Request["key"]; //var deleteData = ViewData["deleteData"]; //int a = 2; //int b = 3; //_context.OperatorEntity.Remove(operatorEntity); // _context.SaveChanges(); }
/// <summary> /// 获得权限范围用户ID /// </summary> /// <param name="operators">当前登陆用户信息</param> /// <param name="isWrite">可写入</param> /// <returns></returns> public string GetDataAuthorUserId(OperatorEntity operators, bool isWrite = false) { string authorSql = this.GetDataAuthor(operators, isWrite); if (string.IsNullOrEmpty(authorSql)) { return(""); } List <UserEntity> userList = this.BaseRepository().FindList <UserEntity>(authorSql).ToList(); StringBuilder user = new StringBuilder(""); foreach (UserEntity item in userList) { user.Append(item.Id); user.Append(","); } return(user.ToString()); }
/// <summary> /// 获得权限范围用户ID /// </summary> /// <param name="operators">当前登陆用户信息</param> /// <param name="isWrite">可写入</param> /// <returns></returns> public string GetDataAuthorUserId(OperatorEntity operators, bool isWrite = false) { string res = string.Empty; IDbTransaction tran = null; Logger(this.GetType(), "GetDataAuthorUserId-获得权限范围用户ID", () => { using (var conn = this.BaseRepository().GetBaseConnection()) { tran = conn.BeginTransaction(); string authorSql = authorizeService.GetDataAuthor(operators, isWrite); if (string.IsNullOrEmpty(authorSql)) { res = ""; } List <UserEntity> userList = this.BaseRepository().FindList <UserEntity>(conn, authorSql, tran).ToList(); StringBuilder user = new StringBuilder(""); foreach (UserEntity item in userList) { user.Append(item.Id); user.Append(","); } res = user.ToString(); tran.Commit(); } }, e => { Trace.WriteLine(e.Message); }); return(res); }
/// <summary> /// 获得可读数据权限范围SQL /// </summary> /// <param name="operators">当前登陆用户信息</param> /// <param name="isWrite">可写入</param> /// <returns></returns> public string GetDataAuthor(OperatorEntity operators, bool isWrite = false) { throw new NotImplementedException(); }
/// <summary> /// 审批结果通知 /// </summary> /// <param name="sendAppMessageModel"></param> private void GetAuditResultMessage(SendAppMessageModel sendAppMessageModel) { if (sendAppMessageModel.OrderType == OrderSourceTypeEnum.AduitOrder) { CorpAduitOrderEntity corpAduitOrderEntity = _corpAduitOrderDal.Find <CorpAduitOrderEntity>(sendAppMessageModel.OrderId); if (corpAduitOrderEntity == null) { return; } List <CorpAduitOrderDetailEntity> corpAduitOrderDetailEntities = _corpAduitOrderDetailDal.Query <CorpAduitOrderDetailEntity>( n => n.AduitOrderId == sendAppMessageModel.OrderId, true).ToList(); if (corpAduitOrderDetailEntities == null || corpAduitOrderDetailEntities.Count == 0) { return; } string orderType = corpAduitOrderDetailEntities[0].OrderType.ValueToDescription <OrderSourceTypeEnum>(); string orderId = corpAduitOrderDetailEntities[0].OrderId.ToString(); if (sendAppMessageModel.SendType == SendAppMessageTypeEnum.AuditResultNotice) { if (corpAduitOrderEntity.Status == (int)CorpAduitOrderStatusEnum.J) { sendAppMessageModel.SendContent = string.Format("您的{0}{1}{2}被审批人驳回,请您确认", orderType, (orderType.Contains("申请") ? "" : "订单"), orderId); } else if (corpAduitOrderEntity.Status == (int)CorpAduitOrderStatusEnum.F) { sendAppMessageModel.SendContent = string.Format("您的{0}{1}{2}已完成审批,准备为您{3}", orderType, (orderType.Contains("申请") ? "" : "订单"), orderId, (orderType.Contains("退票") ? "退票" : "出票")); if (!orderType.Contains("退票") && orderType.Contains("机票") && sendAppMessageModel.SendAppMessageType == SendAppMessageTypeEnum.SendRunPrintFltTicketEmail) { FltOrderEntity fltOrderEntity = base.Context.Set <FltOrderEntity>().Find(Convert.ToInt32(orderId)); if (fltOrderEntity != null) { string oid = string.IsNullOrEmpty(fltOrderEntity.CreateOid) ? "sys" : fltOrderEntity.CreateOid.ToUpper(); OperatorEntity operatorEntity = base.Context.Set <OperatorEntity>().Where(n => n.Oid.ToUpper() == oid).FirstOrDefault(); sendAppMessageModel.IsRunOutTicket = true; sendAppMessageModel.Email = operatorEntity?.Email; string isServer = AppSettingsHelper.GetAppSettings(AppSettingsEnum.IsServer); string url = string.Format( "http://192.168.1.117/orderprocess/Flt_order.asp?orderid={0}", orderId); if (isServer == "T") { url = string.Format("http://192.168.1.188/orderprocess/Flt_order.asp?orderid={0}", orderId); } sendAppMessageModel.SendContent = string.Format("订单<a href='{0}'>{1}</a>已审核,请出票", url, orderId); sendAppMessageModel.EmailTitle = string.Format("订单{0}已审核,请出票", orderId); } } } else if (corpAduitOrderEntity.Status > (int)CorpAduitOrderStatusEnum.N) { sendAppMessageModel.SendContent = string.Format("您的{0}{1}{2}已通过审批,待下级为您继续审批", orderType, (orderType.Contains("申请") ? "" : "订单"), orderId); } } else if (sendAppMessageModel.SendType == SendAppMessageTypeEnum.AuditOrderDeleteNotice) { sendAppMessageModel.SendContent = string.Format("您的{0}{1}{2}由于已经取消,所以审批自动过期", orderType, (orderType.Contains("申请") ? "" : "订单"), orderId); } } }
private void SaveData() { //保存任务 NowTask.TaskName = tbxTaskName.Text; NowTask.Description = tbxTaskDes.Text; if (rbtShareUser.Checked) { NowTask.OperRule = "1"; } else if (rbtEveryUser.Checked) { NowTask.OperRule = "2"; } NowTask.SaveUpdateTask(); //保存任务处理者 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllOperator(this.UserInfo, NowTask.TaskId); foreach (ListViewItem lt in lvExOper.Items) { var oper = new OperatorEntity { OperatorId = lt.SubItems[1].Text, WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, Description = lt.Text }; switch (lt.SubItems[2].Text) { case "包含": oper.InorExclude = 1; break; case "排除": oper.InorExclude = 0; break; } oper.OperType = Convert.ToInt16(lt.SubItems[3].Text); oper.Relation = Convert.ToInt16(lt.SubItems[4].Text); oper.OperContent = lt.SubItems[5].Text; oper.OperDisplay = lt.SubItems[6].Text; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertOperator(this.UserInfo, oper); } //保存任务变量 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllTaskVar(this.UserInfo, NowTask.TaskId); foreach (ListViewItem lt in lvExVar.Items) { var isSysVar = SystemVarData.IsSystemVar(lt.Text); if (isSysVar) { continue; //跳过系统变量 } var tmpTaskVar = new TaskVarEntity { VarName = lt.Text, WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, TaskVarId = lt.SubItems[1].Text, VarType = lt.SubItems[2].Text, VarModule = lt.SubItems[3].Text, DataBaseName = lt.SubItems[4].Text, TableName = lt.SubItems[5].Text, TableField = lt.SubItems[6].Text, InitValue = lt.SubItems[7].Text, AccessType = lt.SubItems[8].Text, SortField = lt.SubItems[9].Text }; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertTaskVar(this.UserInfo, tmpTaskVar); } //保存任务命令 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllCommands(this.UserInfo, NowTask.TaskId); foreach (ListViewItem lt in lvExCommand.Items) { var taskCommand = new WorkTaskCommandsEntity { WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, CommandName = lt.Text, CommandId = lt.SubItems[1].Text, Description = lt.SubItems[2].Text }; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertWorkTaskCommands(this.UserInfo, taskCommand); } //保存关联表单 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllControls(this.UserInfo, NowTask.TaskId); RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskUserCtrls(this.UserInfo, UserControlId, NowTask.WorkFlowId, NowTask.TaskId); MessageBoxHelper.ShowSuccessMsg("保存成功!"); }
private void SaveData() { //保存任务 NowTask.TaskName = tbxTaskName.Text; NowTask.Description = tbxTaskDes.Text; if (rbtShareUser.Checked) { NowTask.OperRule = "1"; } else if (rbtEveryUser.Checked) { NowTask.OperRule = "2"; } NowTask.SaveUpdateTask(); RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllOperator(this.UserInfo, NowTask.TaskId); //保存处理者 foreach (ListViewItem lt in lvExOper.Items) { var oper = new OperatorEntity { OperatorId = lt.SubItems[1].Text, WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, Description = lt.Text, OperType = Convert.ToInt16(lt.SubItems[3].Text), Relation = Convert.ToInt16(lt.SubItems[4].Text), OperContent = lt.SubItems[5].Text, OperDisplay = lt.SubItems[6].Text }; switch (lt.SubItems[2].Text) { case "包含": oper.InorExclude = 1; break; case "排除": oper.InorExclude = 0; break; } RDIFrameworkService.Instance.WorkFlowTemplateService.InsertOperator(this.UserInfo, oper); } //保存任务命令 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllCommands(this.UserInfo, NowTask.TaskId); foreach (ListViewItem lt in lvExCommand.Items) { var taskCommand = new WorkTaskCommandsEntity { WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, CommandName = lt.Text, CommandId = lt.SubItems[1].Text, Description = lt.SubItems[2].Text }; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertWorkTaskCommands(this.UserInfo, taskCommand); } //保存关联表单 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllControls(this.UserInfo, NowTask.TaskId); RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskUserCtrls(this.UserInfo, UserControlId, NowTask.WorkFlowId, NowTask.TaskId); //保存事件 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkFlowEvent(this.UserInfo, NowTask.TaskId); var ev = new WorkFlowEventEntity { Guid = BusinessLogic.NewGuid(), WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId }; var us = ""; ev.RmMsg = cbxRmMessage.Checked ? 1 : 0; ev.RmEmail = cbxRmMail.Checked ? 1 : 0; ev.RmSms = cbxRmSms.Checked ? 1 : 0; us = ""; if (lbxRmMsgToUsers.Items.Count > 0) { for (var i = 0; i < lbxRmMsgToUsers.Items.Count - 1; i++) { us = us + lbxRmMsgToUsers.Items[i].ToString() + ","; } us = us + lbxRmMsgToUsers.Items[lbxRmMsgToUsers.Items.Count - 1]; } ev.RmToUsers = us; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertWorkFlowEvent(this.UserInfo, ev); }
/// <summary> /// 获得可读数据权限范围SQL /// </summary> /// <param name="operators">当前登陆用户信息</param> /// <param name="isWrite">可写入</param> /// <returns></returns> public string GetDataAuthor(OperatorEntity operators, bool isWrite = false) { //如果是系统管理员直接给所有数据权限 if (operators.IsSystem) { return(""); } string userId = operators.UserId; StringBuilder whereSb = new StringBuilder(" SELECT Id FROM Base_User WHERE 1=1 "); string strAuthorData = ""; if (isWrite) { strAuthorData = @" SELECT * FROM Base_AuthorizeData WHERE IsRead = 0 AND ObjectId IN ( SELECT ObjectId FROM Base_UserRelation WHERE Id = @Id)"; } else { strAuthorData = @" SELECT * FROM Base_AuthorizeData WHERE ObjectId IN ( SELECT ObjectId FROM Base_UserRelation WHERE Id = @Id)"; } DbParameter[] parameter = { DbParameters.CreateDbParameter(DbParameters.CreateDbParmCharacter() + "Id", userId, DbType.String) }; whereSb.Append(string.Format("AND( Id ='{0}'", userId)); IEnumerable <AuthorizeDataEntity> listAuthorizeData = this.BaseRepository().FindList <AuthorizeDataEntity>(strAuthorData, parameter); foreach (AuthorizeDataEntity item in listAuthorizeData) { switch (item.AuthorizeType) { case 0: //0代表最大权限 return(""); case 2: //本人及下属 whereSb.Append(" OR ManagerId ='{0}'"); break; case 3: //所在部门 whereSb.Append(@" OR DepartmentId = (SELECT DepartmentId FROM Base_User WHERE Id ='{0}')"); break; case 4: //所在公司 whereSb.Append(@" OR OrganizeId = (SELECT OrganizeId FROM Base_User WHERE Id ='{0}' )"); break; //case 5: // whereSb.Append(string.Format(@" OR DepartmentId = '{1}' OR OrganizeId = '{1}'", userId, item.ResourceId)); // break; } } whereSb.Append(")"); return(whereSb.ToString()); }
/// <summary> /// Parses the function interpreting "Math.Sqr" as sqr /// TODO /// </summary> /// <param name="linq"></param> /// <returns></returns> private static Entity InnerParse(Expression linq) { var unary = linq as UnaryExpression; var binary = linq as BinaryExpression; switch (linq.NodeType) { case ExpressionType.Lambda: return(InnerParse((linq as LambdaExpression).Body)); case ExpressionType.Constant: return(new NumberEntity(new Number((linq as ConstantExpression).Value))); case ExpressionType.Parameter: return(new VariableEntity((linq as ParameterExpression).Name)); case ExpressionType.Negate: return(-1 * InnerParse(unary.Operand)); case ExpressionType.UnaryPlus: return(1 * InnerParse(unary.Operand)); case ExpressionType.Add: return(InnerParse(binary.Left) + InnerParse(binary.Right)); case ExpressionType.Subtract: return(InnerParse(binary.Left) - InnerParse(binary.Right)); case ExpressionType.Multiply: return(InnerParse(binary.Left) * InnerParse(binary.Right)); case ExpressionType.Divide: return(InnerParse(binary.Left) / InnerParse(binary.Right)); case ExpressionType.Power: return(MathS.Pow(InnerParse(binary.Left), InnerParse(binary.Right))); case ExpressionType.Call: var method = linq as MethodCallExpression; var children = method.Arguments.Select(InnerParse).ToList(); var methodInfo = method.Method; var name = methodInfo.Name.ToLower() + "f"; if (name == "powf") // The only operator that acts as function { var op = new OperatorEntity(name, Const.PRIOR_POW) { Children = children }; return(op); } else if (SynonymFunctions.SynFunctions.ContainsKey(name)) { return(SynonymFunctions.SynFunctions[name](children)); } else { var func = new FunctionEntity(name) { Children = children }; return(func); } default: throw new ParseException("Parse error"); } }
/// <summary> /// Inverts operator and returns a set /// x^2 = a /// => x = sqrt(a) /// x = -sqrt(a) /// </summary> /// <param name="func"></param> /// <param name="value"></param> /// <param name="x"></param> /// <returns></returns> public static Set InvertOperatorEntity(OperatorEntity func, Entity value, Entity x) { Entity a, un; int arg; if (func.Children[0].FindSubtree(x) != null) { a = func.Children[1]; un = func.Children[0]; arg = 0; } else { a = func.Children[0]; un = func.Children[1]; arg = 1; } var n = Utils.FindNextIndex(func + value, "n"); switch (func.Name) { case "sumf": // x + a = value => x = value - a return(FindInvertExpression(un, value - a, x)); case "minusf": if (arg == 0) { // x - a = value => x = value + a return(FindInvertExpression(un, value + a, x)); } else { // a - x = value => x = a - value return(FindInvertExpression(un, a - value, x)); } case "mulf": // x * a = value => x = value / a return(FindInvertExpression(un, value / a, x)); case "divf": if (arg == 0) { // x / a = value => x = a * value return(FindInvertExpression(un, value * a, x)); } else { // a / x = value => x = a / value return(FindInvertExpression(un, a / value, x)); } case "powf": if (arg == 0) { // x ^ a = value => x = value ^ (1/a) if (a.entType == Entity.EntType.NUMBER && a.GetValue().IsInteger()) { var res = new Set(); foreach (var root in Number.GetAllRoots(1, a.GetValue().AsIntegerNumber()).FiniteSet()) { res.AddRange(FindInvertExpression(un, root * MathS.Pow(value, 1 / a), x)); } return(res); } else { return(FindInvertExpression(un, MathS.Pow(value, 1 / a), x)); } } else { // a ^ x = value => x = log(a, value) return(FindInvertExpression(un, MathS.Log(a, value) + 2 * MathS.i * n * MathS.pi, x)); } default: throw new SysException("Unknown operator"); } }
public ActionResult CheckLogin(string username, string password, string verifycode, int autologin) { ActionResult res = null; Logger(this.GetType(), "登录验证-CheckLogin", () => { #region 验证码验证 string code = Md5Helper.Md5(verifycode.ToLower()); string sessionCode = SessionHelper.GetSession <string>("session_verifycode"); if (string.IsNullOrEmpty(sessionCode) || code != sessionCode) { res = Error("验证码错误,请重新输入"); } #endregion #region 账户验证 else { JsonObjectStatus status; UserEntity user = _userBll.CheckLogin(username, password, out status); if (status != JsonObjectStatus.Success || user == null) { res = Error(status.GetEnumDescription()); } else { string objId = _permissionBll.GetObjectString(user.UserId); OperatorEntity operators = new OperatorEntity { UserId = user.UserId, Code = user.EnCode, Account = user.Account, UserName = user.RealName ?? user.NickName, Password = user.Password, Secretkey = user.Secretkey, CompanyId = user.OrganizeId, DepartmentId = user.DepartmentId, IPAddress = NetHelper.Ip, IPAddressName = NetHelper.GetAddressByIP(NetHelper.Ip), ObjectId = objId, LoginTime = DateTime.Now, Token = DESEncryptHelper.Encrypt(CommonHelper.GetGuid(), user.Secretkey) }; //写入当前用户数据权限 AuthorizeDataModel dataAuthorize = new AuthorizeDataModel { ReadAutorize = _authorizeBll.GetDataAuthor(operators), ReadAutorizeUserId = _authorizeBll.GetDataAuthorUserId(operators), WriteAutorize = _authorizeBll.GetDataAuthor(operators, true), WriteAutorizeUserId = _authorizeBll.GetDataAuthorUserId(operators, true) }; operators.DataAuthorize = dataAuthorize; //判断是否系统管理员 operators.IsSystem = user.Account == "System"; //写入登录信息 OperatorProvider.Provider.AddCurrent(operators); res = Success("登录成功", user, "/Home/AdminDefault"); } } #endregion }, e => { res = Error("系统异常:" + e.Message); }, () => { SessionHelper.RemoveSession("session_verifycode"); }); return(res); }
public IActionResult Test(OperatorEntity operatorEntity) { Console.WriteLine("提交测试"); return(Content("hello")); }
private void SaveData() { //保存任务 NowTask.TaskName = tbxTaskName.Text; NowTask.Description = tbxTaskDes.Text; NowTask.IsJumpSelf = cbxJumpSelf.Checked; if (rbtShareUser.Checked) { NowTask.OperRule = "1"; } else if (rbtEveryUser.Checked) { NowTask.OperRule = "2"; } NowTask.SaveUpdateTask(); RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllOperator(this.UserInfo, NowTask.TaskId); //保存处理者 foreach (ListViewItem lt in lvExOper.Items) { var oper = new OperatorEntity { OperatorId = lt.SubItems[1].Text, WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, Description = lt.Text, OperType = Convert.ToInt16(lt.SubItems[3].Text), Relation = Convert.ToInt16(lt.SubItems[4].Text), OperContent = lt.SubItems[5].Text, OperDisplay = lt.SubItems[6].Text }; switch (lt.SubItems[2].Text) { case "包含": oper.InorExclude = 1; break; case "排除": oper.InorExclude = 0; break; } RDIFrameworkService.Instance.WorkFlowTemplateService.InsertOperator(this.UserInfo, oper); } //保存任务变量 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllTaskVar(this.UserInfo, NowTask.TaskId); foreach (ListViewItem lt in lvExVar.Items) { var isSysVar = SystemVarData.IsSystemVar(lt.Text); if (isSysVar) { continue; //跳过系统变量 } var tmpTaskVar = new TaskVarEntity { VarName = lt.Text, WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, TaskVarId = lt.SubItems[1].Text, VarType = lt.SubItems[2].Text, VarModule = lt.SubItems[3].Text, DataBaseName = lt.SubItems[4].Text, TableName = lt.SubItems[5].Text, TableField = lt.SubItems[6].Text, InitValue = lt.SubItems[7].Text, AccessType = lt.SubItems[8].Text, SortField = lt.SubItems[9].Text }; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertTaskVar(this.UserInfo, tmpTaskVar); } //保存任务命令 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllCommands(this.UserInfo, NowTask.TaskId); foreach (ListViewItem lt in lvExCommand.Items) { var taskCommand = new WorkTaskCommandsEntity { WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, CommandName = lt.Text, CommandId = lt.SubItems[1].Text, Description = lt.SubItems[2].Text }; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertWorkTaskCommands(this.UserInfo, taskCommand); } //保存关联表单 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllControls(this.UserInfo, NowTask.TaskId); RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskUserCtrls(this.UserInfo, UserControlId, NowTask.WorkFlowId, NowTask.TaskId); //保存控制权限 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkTaskAllPower(this.UserInfo, NowTask.WorkFlowId, NowTask.TaskId); if (cbxReturn.Checked) { RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskPower(this.UserInfo, WorkConst.WorkTask_Return, NowTask.WorkFlowId, NowTask.TaskId); } if (cbxReturnry.Checked)//任意退回 { RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskPower(this.UserInfo, WorkConst.WorkTask_Returnry, NowTask.WorkFlowId, NowTask.TaskId); } if (cbxAssign.Checked) { RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskPower(this.UserInfo, WorkConst.WorkTask_Assign, NowTask.WorkFlowId, NowTask.TaskId); } if (cbxDyAssignNext.Checked) { RDIFrameworkService.Instance.WorkFlowTemplateService.SetWorkTaskPower(this.UserInfo, WorkConst.WorkTask_DyAssignNext, NowTask.WorkFlowId, NowTask.TaskId); } //保存超时配置 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkOutTime(this.UserInfo, NowTask.TaskId); var ot = new WorkOutTimeEntity { Guid = BusinessLogic.NewGuid(), WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, Days = Convert.ToInt16(tbxDay1.Value), Days1 = Convert.ToInt16(tbxDay2.Value), Days2 = Convert.ToInt16(tbxDay3.Value), Hours = Convert.ToInt16(tbxHour1.Value), Hours1 = Convert.ToInt16(tbxHour2.Value), Hours2 = Convert.ToInt16(tbxHour3.Value), Minutes = Convert.ToInt16(tbxMinute1.Value), Minutes1 = Convert.ToInt16(tbxMinute2.Value), Minutes2 = Convert.ToInt16(tbxMinute3.Value), OverTime = chkEnableTimeOut.Checked ? 1 : 0 }; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertWorkOutTime(this.UserInfo, ot); //保存事件 RDIFrameworkService.Instance.WorkFlowTemplateService.DeleteWorkFlowEvent(this.UserInfo, NowTask.TaskId); var ev = new WorkFlowEventEntity { Guid = BusinessLogic.NewGuid(), WorkFlowId = NowTask.WorkFlowId, WorkTaskId = NowTask.TaskId, OtMsg = cbxOtMessage.Checked ? 1 : 0, OtSms = cbxOtSms.Checked ? 1 : 0, OtEmail = cbxOtMail.Checked ? 1 : 0 }; var us = ""; if (lbxOtMsgToUsers.Items.Count > 0) { for (var i = 0; i < lbxOtMsgToUsers.Items.Count - 1; i++) { us = us + lbxOtMsgToUsers.Items[i].ToString() + ","; } us = us + lbxOtMsgToUsers.Items[lbxOtMsgToUsers.Items.Count - 1]; } ev.OtToUsers = us; ev.RmMsg = cbxRmMessage.Checked ? 1 : 0; ev.RmEmail = cbxRmMail.Checked ? 1 : 0; ev.RmSms = cbxRmSms.Checked ? 1 : 0; us = ""; if (lbxRmMsgToUsers.Items.Count > 0) { for (var i = 0; i < lbxRmMsgToUsers.Items.Count - 1; i++) { us = us + lbxRmMsgToUsers.Items[i].ToString() + ","; } us = us + lbxRmMsgToUsers.Items[lbxRmMsgToUsers.Items.Count - 1]; } ev.RmToUsers = us; RDIFrameworkService.Instance.WorkFlowTemplateService.InsertWorkFlowEvent(this.UserInfo, ev); }
/// <summary> /// 创建账套 /// </summary> /// <param name="oe"></param> /// <returns></returns> public FeedbackInfomation SaveOrganization(OrganizationEntity oe) { FeedbackInfomation fi = new FeedbackInfomation(); try { using (TransactionScope scope = new TransactionScope()) { //判断账套编号和名称是否重复 if (CheckCmstID(oe.CmstID)) { fi.ErrorStatus = STATUS_ADAPTER.SAVE_FAILED; fi.Result = oe; fi.FeedbackMessage = "账套编号重复"; return(fi); } if (CheckCmstName(oe.CmstName)) { fi.ErrorStatus = STATUS_ADAPTER.SAVE_FAILED; fi.Result = oe; fi.FeedbackMessage = "账套名称重复"; return(fi); } //保存账套信息 MyOrganizationDAL.InsertOrganization(oe); //保存默认角色信息和角色操作 RoleEntity re = new RoleEntity(); re.CmstID = oe.CmstID; re.CsyID = 1; re.RoleName = "超级管理员"; re.IfUse = true; re = MyOrganizationDAL.InsertRoleEtity(re); re.Ros = MyOrganizationDAL.SelectAllOperationList(); foreach (var ro in re.Ros) { MyOrganizationDAL.InsertRoleOperate(re.RoleID, ro.OperationID, re.CmstID); } //保存账套主管信息(系统默认账号) OperatorEntity ope = new OperatorEntity(); ope.Account = oe.CmstSysAccount; string str = Encrypt.Encrypt_MD5("000000"); ope.Password = str; ope.OperatorName = "系统管理员"; ope.IfSysAccount = true; ope.RoleID = re.RoleID; ope.CmstID = oe.CmstID; ope.IfUse = true; ope.UpdateTime = DateTime.Now; if (MyOrganizationDAL.CheckedOperatorAccountRepeate(ope.Account, ope.OperatorID)) { fi.ErrorStatus = STATUS_ADAPTER.SAVE_FAILED; fi.Result = oe; fi.FeedbackMessage = "账套主管重复"; return(fi); } MyOrganizationDAL.InsertOperatorEntity(ope); scope.Complete(); } fi.Result = ""; fi.ErrorStatus = STATUS_ADAPTER.SAVE_SUCCESS; fi.FeedbackMessage = ""; return(fi); } catch (Exception ex) { fi.Result = ""; fi.ErrorStatus = STATUS_ADAPTER.SAVE_FAILED; fi.FeedbackMessage = ex.Message.ToString(); return(fi); } }
public ActionResult CheckLogin(string username, string password, string verifycode, int autologin) { ActionResult res = null; LogEntity logEntity = new LogEntity { CategoryId = (int)CategoryType.Login, OperateTypeId = ((int)OperationType.Login).ToString(), OperateType = OperationType.Login.GetEnumDescription(), OperateAccount = username, OperateUserId = username, OperateTime = DateTime.Now, IPAddress = NetHelper.Ip, IPAddressName = "",//NetHelper.GetAddressByIP(NetHelper.Ip), Browser = NetHelper.Browser, Module = ConfigHelper.GetValue("SoftName") }; Logger(this.GetType(), "登录验证-CheckLogin", () => { #region 验证码验证 string code = Md5Helper.Md5(verifycode.ToLower()); string sessionCode = SessionHelper.GetSession <string>("session_verifycode"); if (string.IsNullOrEmpty(sessionCode) || code != sessionCode) { res = Error("验证码错误,请重新输入"); } #endregion #region 账户验证 else { Tuple <UserEntity, JsonObjectStatus> tuple = userBll.CheckLogin(username, password); JsonObjectStatus status = tuple.Item2; UserEntity user = tuple.Item1; if (status != JsonObjectStatus.Success || user == null) { res = Error(status.GetEnumDescription()); } else { string objId = permissionBll.GetObjectString(user.Id); OperatorEntity operators = new OperatorEntity { UserId = user.Id, Code = user.EnCode, Account = user.Account, UserName = user.RealName ?? user.NickName, Password = user.Password, Secretkey = user.Secretkey, CompanyId = user.OrganizeId, DepartmentId = user.DepartmentId, IPAddress = NetHelper.Ip, IPAddressName = "",//NetHelper.GetAddressByIP(NetHelper.Ip), ObjectId = objId, LoginTime = DateTime.Now, Token = DESEncryptHelper.Encrypt(CommonHelper.GetGuid(), user.Secretkey) }; //写入当前用户数据权限 string ReadAutorize = authorizeBLL.GetDataAuthor(operators); string ReadAutorizeUserId = authorizeBLL.GetDataAuthorUserId(operators); string WriteAutorize = authorizeBLL.GetDataAuthor(operators, true); string WriteAutorizeUserId = authorizeBLL.GetDataAuthorUserId(operators, true); AuthorizeDataModel dataAuthorize = new AuthorizeDataModel { ReadAutorize = ReadAutorize, ReadAutorizeUserId = ReadAutorizeUserId, WriteAutorize = WriteAutorize, WriteAutorizeUserId = WriteAutorizeUserId }; operators.DataAuthorize = dataAuthorize; //判断是否系统管理员 operators.IsSystem = user.Account == "System"; //写入登录信息 OperatorProvider.Provider.AddCurrent(operators); //写入日志 logEntity.ExecuteResult = 1; logEntity.ExecuteResultJson = "登录成功"; logBll.WriteLog(logEntity); res = Success("登录成功", user, "/Home/AdminDefault"); } } #endregion }, e => { CookieHelper.DelCookie("__autologin");//清除自动登录 logEntity.ExecuteResult = -1; logEntity.ExecuteResultJson = e.Message; logBll.WriteLog(logEntity); res = Error("系统异常:" + e.Message); }, () => { SessionHelper.RemoveSession("session_verifycode"); }); return(res); }
/// <summary> /// 获得权限范围用户ID /// </summary> /// <param name="operators">当前登陆用户信息</param> /// <param name="isWrite">可写入</param> /// <returns></returns> public string GetDataAuthorUserId(OperatorEntity operators, bool isWrite = false) { return(authorizeService.GetDataAuthorUserId(operators, isWrite)); }
/// <summary> /// 获得可读数据权限范围SQL /// </summary> /// <param name="operators">当前登陆用户信息</param> /// <param name="isWrite">可写入</param> /// <returns></returns> public string GetDataAuthor(OperatorEntity operators, bool isWrite = false) { string res = string.Empty; IDbTransaction tran = null; Logger(this.GetType(), "GetMemberList-获取成员列表", () => { using (var conn = this.BaseRepository().GetBaseConnection()) { tran = conn.BeginTransaction(); //如果是系统管理员直接给所有数据权限 if (operators.IsSystem) { res = ""; } string userId = operators.UserId; StringBuilder whereSb = new StringBuilder(" SELECT Id FROM Base_User WHERE 1=1 "); string strAuthorData = ""; if (isWrite) { strAuthorData = @" SELECT * FROM Base_AuthorizeData WHERE IsRead = 0 AND ObjectId IN ( SELECT ObjectId FROM Base_UserRelation WHERE UserId = @Id)"; } else { strAuthorData = @" SELECT * FROM Base_AuthorizeData WHERE ObjectId IN ( SELECT ObjectId FROM Base_UserRelation WHERE UserId = @Id)"; } whereSb.Append(string.Format("AND ( Id ='{0}'", userId)); IEnumerable <AuthorizeDataEntity> listAuthorizeData = this.BaseRepository().FindList <AuthorizeDataEntity>(conn, strAuthorData, new { Id = userId }, tran); foreach (AuthorizeDataEntity item in listAuthorizeData) { switch (item.AuthorizeType) { case 0: //0代表最大权限 break; case -2: //本人及下属 whereSb.Append(" OR ManagerId ='{0}'"); break; case -3: //所在部门 whereSb.Append(@" OR DepartmentId = (SELECT DepartmentId FROM Base_User WHERE Id ='{0}')"); break; case -4: //所在公司 whereSb.Append(@" OR OrganizeId = (SELECT OrganizeId FROM Base_User WHERE Id ='{0}' )"); break; case -5: whereSb.Append(string.Format(@" OR DepartmentId = '{1}' OR OrganizeId = '{1}'", userId, item.ResourceId)); break; } } whereSb.Append(")"); res = whereSb.ToString(); tran.Commit(); } }, e => { Trace.WriteLine(e.Message); }); return(res); }