public async Task <object> Deletes(string[] values)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                if (values != null && values.Length > 0)
                {
                    if (await sysAdminService.DeleteAsync(values))
                    {
                        json.message = "删除成功!";
                        json.success = true;
                    }
                    else
                    {
                        json.message = "删除失败!";
                    }
                }
                else
                {
                    json.message = "删除失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
        public object Locks(string[] values, bool IsLock)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                if (values != null && values.Length > 0)
                {
                    var locked = IsLock ? 0 : 1;
                    if (sysAdminService.ExecuteSql("UPDATE SYSADMINS SET IsCanLogin = "******" WHERE GUID IN ('" + string.Join("','", values) + "')") > 0)
                    {
                        json.message = IsLock?"锁定成功!":"解锁成功!";
                        json.success = true;
                    }
                    else
                    {
                        json.message = IsLock? "锁定失败!":"解锁失败!";
                    }
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
        public async Task <object> PutAsync(SysPendingTrials entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                entity.Auditor   = AdminUser.User.Account;
                entity.AuditDate = DateTime.Now;

                if (await sysPendingTrialService.UpdateAsync(entity))
                {
                    json.message = "操作成功!";
                    json.success = true;
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
        public async Task <object> PutAsync(SysSchedules entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                //检测Cron表达式是否正确
                if (!schedulerService.IsValidateCron(entity.Cron))
                {
                    json.message = "Cron表达式不正确";
                    return(json);
                }

                bool IsSave = string.IsNullOrEmpty(entity.GUID);

                if (IsSave)
                {
                    if (await sysScheduleService.IsAnyAsync(p => p.JobName == entity.JobName || p.JobService == entity.JobService))
                    {
                        json.message = "任务已存在";
                        return(json);
                    }

                    // Add 初始参数
                    entity.CreateUser = AdminUser.User.Account;
                    entity.CreateDate = DateTime.Now;
                    entity.GUID       = Guid.NewGuid().ToString();
                }

                // Add、Update 默认参数
                entity.UpdateUser = AdminUser.User.Account;
                entity.UpdateDate = DateTime.Now;
                entity.Status     = 1;
                //添加任务计划
                var dateOffset = await schedulerService.AddJobAsync(entity.JobName, entity.JobGroup, entity.JobService, entity.Cron, Unitls.DateTimeToDateTimeOffset(entity.StarRunTime), Unitls.DateTimeToDateTimeOffset(entity.EndRunTime));

                entity.NextRunTime = dateOffset.DateTime.AddHours(8);

                if (await sysScheduleService.SaveOrUpdateAsync(entity, IsSave))
                {
                    json.message = "操作成功!";
                    json.success = true;
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
Пример #5
0
        public object Deletes(string[] values)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                if (values != null && values.Length > 0)
                {
                    List <SysModules> ChildModules = new List <SysModules>();

                    //查询出所有模块及其子模块
                    var Modules = sysModuleService.Sql(@"SELECT * FROM `sysmodules` WHERE GUID IN (
                                                         SELECT DISTINCT CASE _id WHEN 0 THEN p0.GUID WHEN 1 THEN p1.GUID WHEN 2 THEN p2.GUID END as GUID
                                                         FROM `sysmodules` p0
                                                         LEFT JOIN `sysmodules` p1 ON p1.Parent_GUID = p0.GUID
                                                         LEFT JOIN `sysmodules` p2 ON p2.Parent_GUID = p1.GUID
                                                         CROSS JOIN( SELECT 0 as _id UNION ALL SELECT 1 UNION ALL SELECT 2 ) p
                                                         WHERE p0.GUID IN ('" + string.Join("','", values) + "')) ORDER BY Levels,DisplayOrder ASC");

                    var db = sysModuleService.GetDb();

                    try
                    {
                        db.Ado.BeginTran();
                        db.Deleteable(Modules).ExecuteCommand();
                        var moduleguids = Modules.Select(m => m.GUID).ToArray();
                        db.Deleteable <SysPermissions>(p => moduleguids.Contains(p.Module_GUID)).ExecuteCommand();
                        db.Ado.CommitTran();
                        json.message = "删除成功!";
                        json.success = true;
                    }
                    catch (Exception ex)
                    {
                        db.Ado.RollbackTran();
                        json.message = "删除失败!";
                        throw ex;
                    }
                }
                else
                {
                    json.message = "删除失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
Пример #6
0
        public async Task <object> PutAsync(SysPermissions entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                bool IsSave = string.IsNullOrEmpty(entity.GUID);

                if (IsSave)
                {
                    // 权限动作不能重复
                    if (await sysPermissionService.IsAnyAsync(p => p.PermissionValue.ToLower() == entity.PermissionValue.ToLower() && p.Module_GUID == entity.Module_GUID))
                    {
                        json.message = "权限值不能重复";
                        return(json);
                    }

                    // Add 初始参数
                    entity.CreateUser = AdminUser.User.Account;
                    entity.CreateDate = DateTime.Now;
                    entity.GUID       = Guid.NewGuid().ToString();
                }

                // Add、Update 默认参数
                entity.UpdateUser = AdminUser.User.Account;
                entity.UpdateDate = DateTime.Now;

                //保存权限
                if (await sysPermissionService.SaveOrUpdateAsync(entity, IsSave))
                {
                    json.message = "操作成功!";
                    json.success = true;
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
Пример #7
0
        public async Task <object> PutAsync(SysRoles entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                bool IsSave = string.IsNullOrEmpty(entity.GUID);

                if (IsSave)
                {
                    if (await sysRoleServcie.IsAnyAsync(p => p.RoleName == entity.RoleName))
                    {
                        json.message = "角色名称已存在";
                        return(json);
                    }

                    // Add 初始参数
                    entity.CreateUser = AdminUser.User.Account;
                    entity.CreateDate = DateTime.Now;
                    entity.GUID       = Guid.NewGuid().ToString();
                }

                // Add、Update 默认参数
                entity.UpdateUser = AdminUser.User.Account;
                entity.UpdateDate = DateTime.Now;

                //保存模块
                if (await sysRoleServcie.SaveOrUpdateAsync(entity, IsSave))
                {
                    json.message = "操作成功!";
                    json.success = true;
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
        public object Allocation(string guid, string[] values)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                var db = sysAdminService.GetDb();

                try
                {
                    db.Ado.BeginTran();
                    db.Deleteable <SysRoleAssignments>(p => p.Admin_GUID == guid).ExecuteCommand();
                    if (values != null && values.Length > 0)
                    {
                        var datas = new List <SysRoleAssignments>();
                        foreach (var value in values)
                        {
                            datas.Add(new SysRoleAssignments()
                            {
                                GUID = Guid.NewGuid().ToString(), Admin_GUID = guid, Role_GUID = value
                            });
                        }

                        db.Insertable(datas).ExecuteCommand();
                    }
                    db.Ado.CommitTran();
                    json.message = "分配成功!";
                    json.success = true;
                }
                catch (Exception ex)
                {
                    db.Ado.RollbackTran();
                    json.message = "分配失败!";
                    throw ex;
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(Json(json));
        }
Пример #9
0
        public IActionResult ValidateAccount(LoginData entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            if (ModelState.IsValid)
            {
                var Admins = sysAdminService.ValidateLogin(entity.account, entity.password);
                if (Admins != null)
                {
                    if (Admins.User.IsCanLogin)
                    {
                        json.success   = true;
                        json.returnUrl = "/systemmanage/home";

                        // Add Session Authentication
                        HttpContext.Session.Set("AdminsAuthentication", Common.ProtobufHelper.ProtobufHelper.Serialize(Admins));

                        //Add Cookie Authentication
                        HttpContext.Response.Cookies.Append("CookiesAuthentication", new Common.CryptHelper.AESCrypt().Encrypt("{\"account\":\"" + entity.account +
                                                                                                                               "\",\"password\":\"" + entity.password + "\"}"), new CookieOptions()
                        {
                            Expires = DateTime.Now + TimeSpan.FromDays(3)
                        });
                    }
                    else
                    {
                        json.message = "账号已锁定,禁止登录";
                    }
                }
                else
                {
                    json.message = "验证失败:账号和密码不正确!";
                }
            }
            else
            {
                json.message = "验证失败";
            }

            return(Json(json));
        }
        public async Task <object> PauseAsync(string GUID, string JobName, string JobGroup)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                var res = await schedulerService.PauseJobAsync(JobName, JobGroup);

                if (res.scuess)
                {
                    if (sysScheduleService.ExecuteSql("UPDATE SysSchedules SET STATUS = 2 WHERE GUID ='" + GUID + "'") > 0)
                    {
                        json.message = "操作成功";
                        json.success = true;
                    }
                    else
                    {
                        json.message = "操作失败";
                    }
                }
                else
                {
                    if (res.IsAnyJob)
                    {
                        json.message = "操作失败";
                    }
                    else
                    {
                        json.message = "操作失败,任务进程已丢失,请重新保存或发布任务";
                    }
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
        public async Task <object> Deletes(string[] values)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                if (values != null && values.Length > 0)
                {
                    if (await schedulerService.DeletesJobAsync(await sysScheduleService.GetAllAsync(p => values.Contains(p.GUID))))
                    {
                        if (await sysScheduleService.DeleteAsync(values))
                        {
                            json.message = "删除成功!";
                            json.success = true;
                        }
                        else
                        {
                            json.message = "删除失败!";
                        }
                    }
                    else
                    {
                        json.message = "删除失败!";
                    }
                }
                else
                {
                    json.message = "删除失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
Пример #12
0
        public ActionResult GetTree()
        {
            var model = new List <Module>();

            var administrator = _administratorContract.Administrators.FirstOrDefault(m => m.Id == AuthorityHelper.OperatorId);
            //var permissions = administrator.Roles.SelectMany(m => m.Permissions).Select(c => c.ModuleId).ToList();
            var        permissions  = administrator.Roles.SelectMany(m => m.ARolePermissionRelations.Select(s => s.Permission)).Select(c => c.ModuleId).ToList();
            List <int> listModuleId = permissions.Distinct().ToList();

            //var rigtree = _moduleContract.Modules.Where(c => listModuleId.Contains(c.Id) && c.ParentId == null && !c.IsDeleted && c.IsEnabled).ToList();
            var li = GetNode(listModuleId);


            ResJson json = new ResJson()
            {
                msg     = "测试",
                obj     = li,
                success = true,
                type    = "json"
            };

            return(Json(json));
        }
Пример #13
0
        public ActionResult GetTree()
        {
            int     depid = Convert.ToInt32(Request["rid"]);
            var     model = new List <Module>();
            ResJson json  = new ResJson()
            {
            };

            var dep = _roleContract.Roles.Where(c => c.Id == depid).FirstOrDefault();

            if (dep.IsNotNull() && dep.ARolePermissionRelations.IsNotNullThis())
            {
                var rolepers = dep.ARolePermissionRelations.ToList();
                json = new ResJson()
                {
                    msg     = "测试",
                    obj     = GetNode(rolepers),
                    success = true,
                    type    = "json"
                };
            }
            return(Json(json));
        }
Пример #14
0
        public async Task <object> PutAsync(SysSystem entity)
        {
            if (ModelState.IsValid)
            {
                var json = new ResJson()
                {
                    success = false
                };

                try
                {
                    entity.Date = DateTime.Now;

                    if (await sysSystemService.UpdateAsync(entity))
                    {
                        json.message = "操作成功!";
                        json.success = true;
                    }
                    else
                    {
                        json.message = "操作失败!";
                    }
                }
                catch (Exception ex)
                {
                    json.message = "网络超时.";
                    throw ex;
                }

                return(json);
            }
            else
            {
                return(BadRequest());
            }
        }
        public async Task <object> PutAsync(SysAdmins entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                bool IsSave = string.IsNullOrEmpty(entity.GUID);

                if (IsSave)
                {
                    if (await sysAdminService.IsAnyAsync(p => p.Account == entity.Account || p.Mobile == entity.Mobile))
                    {
                        json.message = "账号或手机号码已存在";
                        return(json);
                    }

                    // Add 初始参数
                    entity.CreateUser        = AdminUser.User.Account;
                    entity.CreateDate        = DateTime.Now;
                    entity.GUID              = Guid.NewGuid().ToString();
                    entity.IsCanLogin        = true;
                    entity.Password          = new Common.CryptHelper.AESCrypt().Encrypt(entity.Mobile);
                    entity.SecondaryPassword = new Common.CryptHelper.AESCrypt().Encrypt("123456");
                }

                // Add、Update 默认参数
                if (string.IsNullOrEmpty(entity.UserName))
                {
                    entity.UserName = "******";
                }
                if (string.IsNullOrEmpty(entity.EN_Name))
                {
                    entity.EN_Name = Common.ToolHelper.ConvertHzToPz.Convert(entity.UserName);
                }
                if (string.IsNullOrEmpty(entity.EN_Nme_Simple))
                {
                    entity.EN_Nme_Simple = Common.ToolHelper.ConvertHzToPz.ConvertFirst(entity.UserName);
                }

                entity.UpdateUser = AdminUser.User.Account;
                entity.UpdateDate = DateTime.Now;
                entity.IsSuper    = false;

                //保存模块
                if (await sysAdminService.SaveOrUpdateAsync(entity, IsSave))
                {
                    json.message = "操作成功!";
                    json.success = true;
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }
Пример #16
0
        public async Task <object> PutAsync(SysModules entity)
        {
            var json = new ResJson()
            {
                success = false
            };

            try
            {
                bool IsSave = string.IsNullOrEmpty(entity.GUID);

                //初始化子模块
                List <SysModules> ChildModules = new List <SysModules>();

                if (IsSave)
                {
                    // 模块别名(权限标示名称)不能重复
                    if (await sysModuleService.IsAnyAsync(p => p.Alias == entity.Alias))
                    {
                        json.message = "模块别名不能重复";
                        return(json);
                    }

                    // Add 初始参数
                    entity.CreateUser = AdminUser.User.Account;
                    entity.CreateDate = DateTime.Now;
                    entity.GUID       = Guid.NewGuid().ToString();
                }

                // Add、Update 默认参数
                entity.UpdateUser = AdminUser.User.Account;
                entity.UpdateDate = DateTime.Now;

                //设置模块级别
                if (entity.Parent_GUID.Equals("00000000-0000-0000-0000-000000000000"))
                {
                    entity.Levels = 0;
                }
                else
                {
                    var ParentModule = await sysModuleService.GetAsync(p => p.GUID == entity.Parent_GUID);

                    entity.Levels = ParentModule.Levels + 1;
                }

                //批量修改下级模块(模块级别、显示状态)
                if (!IsSave)
                {
                    ChildModules.Add(entity);

                    var OldModules = await sysModuleService.GetAsync(p => p.GUID == entity.GUID);

                    //是否改变
                    if (OldModules.Levels != entity.Levels || OldModules.IsDisplay != entity.IsDisplay)
                    {
                        //递归修改子模块
                        sysModuleService.RecursiveChildModulesLevels(entity.GUID, entity.Levels, entity.IsDisplay, await sysModuleService.GetAllAsync(p => p.GUID != ""), ChildModules);
                    }
                }

                //保存模块
                if (IsSave ? await sysModuleService.SaveAsync(entity) : await sysModuleService.UpdateAsync(ChildModules))
                {
                    json.message = "操作成功!";
                    json.success = true;
                }
                else
                {
                    json.message = "操作失败!";
                }
            }
            catch (Exception ex)
            {
                json.message = "网络超时.";
                throw ex;
            }

            return(json);
        }