コード例 #1
0
        public CustomJsonResult SaveRoleMenu(string pOperater, string pRoleId, string[] pMenuIds)
        {
            List <SysRoleMenu> roleMenuList = CurrentDb.SysRoleMenu.Where(r => r.RoleId == pRoleId).ToList();

            foreach (var roleMenu in roleMenuList)
            {
                CurrentDb.SysRoleMenu.Remove(roleMenu);
            }


            if (pMenuIds != null)
            {
                foreach (var menuId in pMenuIds)
                {
                    CurrentDb.SysRoleMenu.Add(new SysRoleMenu {
                        Id = GuidUtil.New(), RoleId = pRoleId, MenuId = menuId, Creator = pOperater, CreateTime = DateTime.Now
                    });
                }
            }

            CurrentDb.SaveChanges();


            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功"));
        }
コード例 #2
0
        public CustomJsonResult Edit(string pOperater, RopSysMenuEdit rop)
        {
            var sysMenu = CurrentDb.SysMenu.Where(m => m.Id == rop.MenuId).FirstOrDefault();

            sysMenu.Name        = rop.Name;
            sysMenu.Url         = rop.Url;
            sysMenu.Description = rop.Description;
            sysMenu.Mender      = pOperater;
            sysMenu.MendTime    = DateTime.Now;

            var sysMenuPermission = CurrentDb.SysMenuPermission.Where(r => r.MenuId == rop.MenuId).ToList();

            foreach (var m in sysMenuPermission)
            {
                CurrentDb.SysMenuPermission.Remove(m);
            }


            if (rop.PermissionIds != null)
            {
                foreach (var id in rop.PermissionIds)
                {
                    CurrentDb.SysMenuPermission.Add(new SysMenuPermission {
                        Id = GuidUtil.New(), MenuId = sysMenu.Id, PermissionId = id, Creator = pOperater, CreateTime = DateTime.Now
                    });
                }
            }

            CurrentDb.SaveChanges();

            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功"));
        }
コード例 #3
0
        public CustomJsonResult Add(string operater, RopAdminOrgAdd rop)
        {
            var result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var isExists = CurrentDb.SysOrg.Where(m => m.Name == rop.Name).FirstOrDefault();
                if (isExists != null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "该名称已经存在"));
                }

                var sysOrg = new SysOrg();
                sysOrg.Id          = GuidUtil.New();
                sysOrg.Name        = rop.Name;
                sysOrg.Description = rop.Description;
                sysOrg.PId         = rop.PId;
                sysOrg.BelongSite  = Enumeration.BelongSite.Admin;
                sysOrg.ReferenceId = GuidUtil.Empty();
                sysOrg.Depth       = 0;
                sysOrg.CreateTime  = DateTime.Now;
                sysOrg.Creator     = operater;
                CurrentDb.SysOrg.Add(sysOrg);

                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }

            return(result);
        }
コード例 #4
0
        public CustomJsonResult Add(string pOperater, RopSysMenuAdd rop)
        {
            var sysMenu = new SysMenu();

            sysMenu.Id          = GuidUtil.New();
            sysMenu.Name        = rop.Name;
            sysMenu.Url         = rop.Url;
            sysMenu.Description = rop.Description;
            sysMenu.PId         = rop.PMenuId;
            sysMenu.IsCanDelete = true;
            sysMenu.Creator     = pOperater;
            sysMenu.CreateTime  = DateTime.Now;
            CurrentDb.SysMenu.Add(sysMenu);
            CurrentDb.SaveChanges();

            if (rop.PermissionIds != null)
            {
                foreach (var id in rop.PermissionIds)
                {
                    CurrentDb.SysMenuPermission.Add(new SysMenuPermission {
                        Id = GuidUtil.New(), MenuId = sysMenu.Id, PermissionId = id, Creator = pOperater, CreateTime = DateTime.Now
                    });
                }
            }

            CurrentDb.SaveChanges();

            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "添加成功"));
        }
コード例 #5
0
        /// <summary>
        /// Job调度
        /// </summary>
        /// <param name="scheduler"></param>
        /// <param name="jobInfo"></param>
        public static void ScheduleJob(IScheduler scheduler, BackgroundJob jobInfo)
        {
            if (ValidExpression(jobInfo.CronExpression))
            {
                Type type = GetClassInfo(jobInfo.AssemblyName, jobInfo.ClassName);
                if (type != null)
                {
                    IJobDetail job = new JobDetailImpl(jobInfo.Id, jobInfo.Id + "Group", type);
                    job.JobDataMap.Add("Parameters", jobInfo.JobArgs);
                    job.JobDataMap.Add("JobName", jobInfo.Name);

                    CronTriggerImpl trigger = new CronTriggerImpl();
                    trigger.CronExpressionString = jobInfo.CronExpression;
                    trigger.Name         = jobInfo.Id;
                    trigger.Description  = jobInfo.Description;
                    trigger.StartTimeUtc = DateTime.UtcNow;
                    trigger.Group        = jobInfo.Id + "TriggerGroup";
                    scheduler.ScheduleJob(job, trigger);
                }
                else
                {
                    AdminServiceFactory.BackgroundJob.WriteLog(GuidUtil.New(), jobInfo.Id, jobInfo.Name, DateTime.Now, 0, jobInfo.AssemblyName + jobInfo.ClassName + "无效,无法启动该任务");
                }
            }
            else
            {
                AdminServiceFactory.BackgroundJob.WriteLog(GuidUtil.New(), jobInfo.Id, jobInfo.Name, DateTime.Now, 0, jobInfo.CronExpression + "不是正确的Cron表达式,无法启动该任务");
            }
        }
コード例 #6
0
        public CustomJsonResult EditPromoteUserInfo(RopPromoteUserInfoEdit rop)
        {
            LogUtil.Info("用户:" + this.CurrentUserId + ",提交卡券信息");

            var promoteUser = CurrentDb.PromoteUser.Where(m => m.ClientId == this.CurrentUserId && m.PromoteId == rop.PromoteId).FirstOrDefault();

            if (promoteUser == null)
            {
                promoteUser             = new PromoteUser();
                promoteUser.Id          = GuidUtil.New();
                promoteUser.PromoteId   = rop.PromoteId;
                promoteUser.ClientId    = this.CurrentUserId;
                promoteUser.CtName      = rop.CtName;
                promoteUser.CtPhone     = rop.CtPhone;
                promoteUser.CtIsStudent = rop.CtIsStudent;
                promoteUser.CtSchool    = rop.CtSchool;
                promoteUser.CreateTime  = DateTime.Now;
                promoteUser.Creator     = this.CurrentUserId;
                CurrentDb.PromoteUser.Add(promoteUser);
            }
            else
            {
                promoteUser.CtName      = rop.CtName;
                promoteUser.CtPhone     = rop.CtPhone;
                promoteUser.CtIsStudent = rop.CtIsStudent;
                promoteUser.CtSchool    = rop.CtSchool;
            }

            CurrentDb.SaveChanges();

            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功"));
        }
コード例 #7
0
        public CustomJsonResult LoginByAccount(RopOwnLoginByAccount rop)
        {
            var result = new CustomJsonResult();
            var ret    = new RetOwnLoginByAccount();

            var sysUser = CurrentDb.SysUser.Where(m => m.UserName == rop.UserName).FirstOrDefault();

            if (sysUser == null)
            {
                LoginLog("", "", Enumeration.LoginResult.Failure, rop.LoginWay, rop.Ip, "", "登录失败,账号不存在");
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "登录失败,账号不存在"));
            }

            if (!PassWordHelper.VerifyHashedPassword(sysUser.PasswordHash, rop.Password))
            {
                LoginLog(sysUser.Id, sysUser.Id, Enumeration.LoginResult.Failure, rop.LoginWay, rop.Ip, "", "登录失败,密码不正确");
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "登录失败,密码不正确"));
            }

            if (sysUser.IsDisable)
            {
                LoginLog(sysUser.Id, sysUser.Id, Enumeration.LoginResult.Failure, rop.LoginWay, rop.Ip, "", "登录失败,账号已被禁用");
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "登录失败,账号已被禁用"));
            }

            ret.Token = GuidUtil.New();

            var tokenInfo = new TokenInfo();

            tokenInfo.UserId = sysUser.Id;

            switch (sysUser.BelongSite)
            {
            case Enumeration.BelongSite.Agent:
                var agentUser = CurrentDb.SysAgentUser.Where(m => m.Id == sysUser.Id).FirstOrDefault();
                if (agentUser != null)
                {
                    tokenInfo.AgentId = agentUser.AgentId;
                }
                break;

            case Enumeration.BelongSite.Merch:
                var merchUser = CurrentDb.SysMerchUser.Where(m => m.Id == sysUser.Id).FirstOrDefault();
                if (merchUser != null)
                {
                    tokenInfo.MerchId = merchUser.MerchId;
                }
                break;
            }


            LoginLog(sysUser.Id, sysUser.Id, Enumeration.LoginResult.Success, rop.LoginWay, rop.Ip, "", "登录成功");

            SSOUtil.SetTokenInfo(ret.Token, tokenInfo, new TimeSpan(1, 0, 0));

            result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "登录成功", ret);

            return(result);
        }
コード例 #8
0
        public void Enter(TimerTaskType type, DateTime expireTime, object data)
        {
            var d = new Task4Tim2GlobalData();

            d.Id         = GuidUtil.New();
            d.Type       = type;
            d.ExpireTime = expireTime;
            d.Data       = data;
            RedisManager.Db.HashSetAsync(key, d.Id, Newtonsoft.Json.JsonConvert.SerializeObject(d), StackExchange.Redis.When.Always);
        }
コード例 #9
0
ファイル: UserService.cs プロジェクト: chingment/NewSeftStore
        public CustomJsonResult Add(string operater, string agentId, RopUserAdd rop)
        {
            var result = new CustomJsonResult();

            if (string.IsNullOrEmpty(rop.UserName))
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "用户名不能为空"));
            }

            if (string.IsNullOrEmpty(rop.Password))
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "密码不能为空"));
            }

            var isExistUserName = CurrentDb.SysUser.Where(m => m.UserName == rop.UserName).FirstOrDefault();

            if (isExistUserName != null)
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, string.Format("该用户名({0})已被使用", rop.UserName)));
            }



            using (TransactionScope ts = new TransactionScope())
            {
                var pAgentUser = CurrentDb.SysAgentUser.Where(m => m.Id == operater).FirstOrDefault();

                var agentUser = new SysAgentUser();
                agentUser.Id            = GuidUtil.New();
                agentUser.PId           = pAgentUser.Id;
                agentUser.UserName      = rop.UserName;
                agentUser.FullName      = rop.FullName;
                agentUser.PasswordHash  = PassWordHelper.HashPassword(rop.Password);
                agentUser.Email         = rop.Email;
                agentUser.PhoneNumber   = rop.PhoneNumber;
                agentUser.BelongSite    = Enumeration.BelongSite.Agent;
                agentUser.IsDelete      = false;
                agentUser.IsDisable     = false;
                agentUser.IsMaster      = false;
                agentUser.AgentId       = pAgentUser.AgentId;
                agentUser.Depth         = pAgentUser.Depth + 1;
                agentUser.Creator       = operater;
                agentUser.CreateTime    = DateTime.Now;
                agentUser.RegisterTime  = DateTime.Now;
                agentUser.SecurityStamp = Guid.NewGuid().ToString().Replace("-", "");
                agentUser.YbInsureSign  = YbInsUtil.GetSign(agentUser.Id, agentUser.Id, agentUser.PhoneNumber, agentUser.FullName);
                CurrentDb.SysAgentUser.Add(agentUser);
                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "新建成功");
            }

            return(result);
        }
コード例 #10
0
 public CustomJsonResult AddUserToRole(string pOperater, string pRoleId, string[] pUserIds)
 {
     foreach (string userId in pUserIds)
     {
         CurrentDb.SysUserRole.Add(new SysUserRole {
             Id = GuidUtil.New(), UserId = userId, RoleId = pRoleId, Creator = pOperater, CreateTime = DateTime.Now, IsCanDelete = true
         });
         CurrentDb.SaveChanges();
     }
     return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "添加成功"));
 }
コード例 #11
0
        public CustomJsonResult Edit(string pOperater, RopSysStaffUserEdit rop)
        {
            CustomJsonResult result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var sysStaffUser = CurrentDb.SysStaffUser.Where(m => m.Id == rop.UserId).FirstOrDefault();
                if (!string.IsNullOrEmpty(rop.Password))
                {
                    sysStaffUser.PasswordHash = PassWordHelper.HashPassword(rop.Password);
                }
                sysStaffUser.FullName    = rop.FullName;
                sysStaffUser.Email       = rop.Email;
                sysStaffUser.PhoneNumber = rop.PhoneNumber;
                sysStaffUser.MendTime    = DateTime.Now;
                sysStaffUser.Mender      = pOperater;
                CurrentDb.SaveChanges();


                List <SysUserRole> userRoleList = CurrentDb.SysUserRole.Where(m => m.UserId == rop.UserId).ToList();

                foreach (var userRole in userRoleList)
                {
                    if (!userRole.IsCanDelete)
                    {
                        var role = CurrentDb.SysRole.Where(m => m.Id == userRole.Id).FirstOrDefault();
                        return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, string.Format("不能去掉用户({0})的角色({1})", sysStaffUser.UserName, role.Name)));
                    }

                    CurrentDb.SysUserRole.Remove(userRole);
                }

                if (rop.RoleIds != null)
                {
                    if (rop.RoleIds.Length > 0)
                    {
                        foreach (string roleId in rop.RoleIds)
                        {
                            CurrentDb.SysUserRole.Add(new SysUserRole {
                                Id = GuidUtil.New(), UserId = rop.UserId, RoleId = roleId, Creator = pOperater, CreateTime = DateTime.Now, IsCanDelete = true
                            });
                        }
                    }
                }


                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");

                CurrentDb.SaveChanges();
                ts.Complete();
            }
            return(result);
        }
コード例 #12
0
        public CustomJsonResult Edit(string operater, RopMerchMasterEdit rop)
        {
            CustomJsonResult result = new CustomJsonResult();


            using (TransactionScope ts = new TransactionScope())
            {
                var user = CurrentDb.SysMerchUser.Where(m => m.Id == rop.UserId).FirstOrDefault();

                if (!string.IsNullOrEmpty(rop.Password))
                {
                    user.PasswordHash = PassWordHelper.HashPassword(rop.Password);
                }

                user.FullName    = rop.FullName;
                user.Email       = rop.Email;
                user.PhoneNumber = rop.PhoneNumber;
                user.IsDisable   = rop.IsDisable;
                user.MendTime    = DateTime.Now;
                user.Mender      = operater;


                var sysUserRoles = CurrentDb.SysUserRole.Where(r => r.UserId == rop.UserId).ToList();

                foreach (var sysUserRole in sysUserRoles)
                {
                    CurrentDb.SysUserRole.Remove(sysUserRole);
                }


                if (rop.RoleIds != null)
                {
                    foreach (var roleId in rop.RoleIds)
                    {
                        if (!string.IsNullOrEmpty(roleId))
                        {
                            CurrentDb.SysUserRole.Add(new SysUserRole {
                                Id = GuidUtil.New(), RoleId = roleId, UserId = rop.UserId, Creator = operater, CreateTime = DateTime.Now
                            });
                        }
                    }
                }

                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }


            return(result);
        }
コード例 #13
0
        public CustomJsonResult Edit(string operater, string clientUserId, RopDeliveryAddressEdit rop)
        {
            CustomJsonResult result = new CustomJsonResult();

            var l_userDeliveryAddress = CurrentDb.ClientDeliveryAddress.Where(m => m.Id == rop.Id).FirstOrDefault();

            if (l_userDeliveryAddress == null)
            {
                l_userDeliveryAddress              = new ClientDeliveryAddress();
                l_userDeliveryAddress.Id           = GuidUtil.New();
                l_userDeliveryAddress.ClientUserId = clientUserId;
                l_userDeliveryAddress.Consignee    = rop.Consignee;
                l_userDeliveryAddress.PhoneNumber  = rop.PhoneNumber;
                l_userDeliveryAddress.AreaName     = rop.AreaName;
                l_userDeliveryAddress.AreaCode     = rop.AreaCode;
                l_userDeliveryAddress.Address      = rop.Address;
                l_userDeliveryAddress.IsDefault    = rop.IsDefault;
                l_userDeliveryAddress.CreateTime   = DateTime.Now;
                l_userDeliveryAddress.Creator      = operater;
                CurrentDb.ClientDeliveryAddress.Add(l_userDeliveryAddress);
                CurrentDb.SaveChanges();
            }
            else
            {
                l_userDeliveryAddress.Consignee   = rop.Consignee;
                l_userDeliveryAddress.PhoneNumber = rop.PhoneNumber;
                l_userDeliveryAddress.AreaName    = rop.AreaName;
                l_userDeliveryAddress.Address     = rop.Address;
                l_userDeliveryAddress.IsDefault   = rop.IsDefault;
                l_userDeliveryAddress.MendTime    = DateTime.Now;
                l_userDeliveryAddress.Creator     = operater;
                CurrentDb.SaveChanges();
            }

            if (rop.IsDefault)
            {
                var list = CurrentDb.ClientDeliveryAddress.Where(m => m.ClientUserId == clientUserId).ToList();


                foreach (var item in list)
                {
                    if (item.Id != rop.Id)
                    {
                        item.IsDefault = false;
                        CurrentDb.SaveChanges();
                    }
                }
            }


            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功"));
        }
コード例 #14
0
        public CustomJsonResult LoginByUrlParams(string mId, string tppId)
        {
            var result = new CustomJsonResult();
            var ret    = new RetOwnLoginByUrlParams();


            if (string.IsNullOrEmpty(mId))
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "您好,应用无法访问,造成的原因:商户标识参数为空"));
            }

            if (string.IsNullOrEmpty(tppId))
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "您好,应用无法访问,造成的原因:用户标识参数为空"));
            }

            var agent = CurrentDb.Agent.Where(m => m.Id == mId).FirstOrDefault();

            if (agent == null)
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "您好,应用无法访问,造成的原因:商户信息无法解释"));
            }


            var agentUser = CurrentDb.SysAgentUser.Where(m => m.AgentId == mId && m.TppId == tppId).FirstOrDefault();

            if (agentUser == null)
            {
                agentUser               = new SysAgentUser();
                agentUser.Id            = GuidUtil.New();
                agentUser.UserName      = GuidUtil.New();
                agentUser.PasswordHash  = PassWordHelper.HashPassword("Caskujn");
                agentUser.SecurityStamp = GuidUtil.New();
                agentUser.RegisterTime  = DateTime.Now;
                agentUser.IsDisable     = false;
                agentUser.BelongSite    = Enumeration.BelongSite.Agent;
                agentUser.CreateTime    = DateTime.Now;
                agentUser.Creator       = agentUser.Id;
                agentUser.AgentId       = agent.Id;
                agentUser.TppId         = tppId;
                CurrentDb.SysAgentUser.Add(agentUser);
                CurrentDb.SaveChanges();
            }

            ret.MId = agentUser.AgentId;
            ret.UId = agentUser.Id;

            result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "", ret);

            return(result);
        }
コード例 #15
0
        public void WriteLog(string operater, string backgroundJobId, string jobName, DateTime executionTime, decimal executionDuration, string runLog)
        {
            var backgroundJobLog = new BackgroundJobLog();

            backgroundJobLog.Id = GuidUtil.New();
            backgroundJobLog.BackgroundJobId   = backgroundJobId;
            backgroundJobLog.JobName           = jobName;
            backgroundJobLog.ExecutionTime     = executionTime;
            backgroundJobLog.ExecutionDuration = executionDuration;
            backgroundJobLog.CreateTime        = DateTime.Now;
            backgroundJobLog.RunLog            = runLog;
            CurrentDb.BackgroundJobLog.Add(backgroundJobLog);
            CurrentDb.SaveChanges();
        }
コード例 #16
0
        private void AddOperateHistory(string pOperater, Enumeration.OperateType pOperateType, string pReferenceId, string pContent)
        {
            SysOperateHistory operateHistory = new SysOperateHistory();

            operateHistory.Id          = GuidUtil.New();
            operateHistory.UserId      = pOperater;
            operateHistory.ReferenceId = pReferenceId;
            operateHistory.Ip          = "";
            operateHistory.Type        = pOperateType;
            operateHistory.Content     = pContent;
            operateHistory.CreateTime  = DateTime.Now;
            operateHistory.Creator     = pOperater;
            _db.SysOperateHistory.Add(operateHistory);
            _db.SaveChanges();
        }
コード例 #17
0
        public CustomJsonResult Add(string operater, RopBackgroundJobAdd rop)
        {
            CustomJsonResult result = new CustomJsonResult();

            var isExists = CurrentDb.BackgroundJob.Where(m => m.AssemblyName == rop.AssemblyName && m.ClassName == rop.ClassName).FirstOrDefault();

            if (isExists != null)
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, string.Format("程序集:{0},类名:{1},已存在")));
            }

            var type = QuartzManager.GetClassInfo(rop.AssemblyName, rop.ClassName);

            if (type == null)
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "程序集或类型无效,无法映射"));
            }

            if (!QuartzManager.ValidExpression(rop.CronExpression))
            {
                return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "无效的Cron表达式"));
            }

            var backgroundJob = new BackgroundJob();

            backgroundJob.Id                        = GuidUtil.New();
            backgroundJob.Name                      = rop.Name;
            backgroundJob.AssemblyName              = rop.AssemblyName;
            backgroundJob.ClassName                 = rop.ClassName;
            backgroundJob.CronExpression            = rop.CronExpression;
            backgroundJob.CronExpressionDescription = rop.CronExpressionDescription;
            backgroundJob.Description               = rop.Description;
            backgroundJob.DisplayOrder              = 0;
            backgroundJob.RunCount                  = 0;
            backgroundJob.Status                    = Enumeration.BackgroundJobStatus.Stoped;
            backgroundJob.IsDelete                  = false;
            backgroundJob.Creator                   = operater;
            backgroundJob.CreateTime                = DateTime.Now;


            CurrentDb.BackgroundJob.Add(backgroundJob);
            CurrentDb.SaveChanges();


            result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "操作成功");

            return(result);
        }
コード例 #18
0
        public CustomJsonResult Add(string operater, string merchId, RopStoreAdd rop)
        {
            CustomJsonResult result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var isExistStore = CurrentDb.Store.Where(m => m.MerchId == merchId && m.Name == rop.Name).FirstOrDefault();
                if (isExistStore != null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "名称已存在,请使用其它"));
                }

                var store = new Store();
                store.Id             = GuidUtil.New();
                store.MerchId        = merchId;
                store.Name           = rop.Name;
                store.Address        = rop.Address;
                store.BriefDes       = rop.BriefDes;
                store.IsOpen         = false;
                store.DispalyImgUrls = rop.DispalyImgUrls.ToJsonString();
                store.MainImgUrl     = ImgSet.GetMain(store.DispalyImgUrls);
                store.CreateTime     = DateTime.Now;
                store.Creator        = operater;
                CurrentDb.Store.Add(store);


                //默认 快递商品库存
                var storeSellChannel = new StoreSellChannel();
                storeSellChannel.Id         = GuidUtil.New();
                storeSellChannel.Name       = "快递商品";
                storeSellChannel.MerchId    = merchId;
                storeSellChannel.StoreId    = store.Id;
                storeSellChannel.RefType    = E_StoreSellChannelRefType.Express;
                storeSellChannel.RefId      = GuidUtil.Empty();
                storeSellChannel.CreateTime = DateTime.Now;
                store.Creator = operater;


                CurrentDb.SaveChanges();
                ts.Complete();
                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }

            return(result);
        }
コード例 #19
0
        public void JobWasExecuted(IJobExecutionContext context, JobExecutionException jobException)
        {
            string BackgroundJobId = GuidUtil.New();


            BackgroundJobId = context.JobDetail.Key.Name;

            //string.TryParse(context.JobDetail.Key.Name, out BackgroundJobId);
            DateTime NextFireTimeUtc = TimeZoneInfo.ConvertTimeFromUtc(context.NextFireTimeUtc.Value.DateTime, TimeZoneInfo.Local);
            DateTime FireTimeUtc     = TimeZoneInfo.ConvertTimeFromUtc(context.FireTimeUtc.Value.DateTime, TimeZoneInfo.Local);

            decimal TotalSeconds = decimal.Parse(context.JobRunTime.TotalSeconds.ToString());
            string  JobName      = string.Empty;
            string  LogContent   = string.Empty;

            if (context.MergedJobDataMap != null)
            {
                JobName = context.MergedJobDataMap.GetString("JobName");
                System.Text.StringBuilder log = new System.Text.StringBuilder();
                int i = 0;
                foreach (var item in context.MergedJobDataMap)
                {
                    string key = item.Key;
                    if (key.StartsWith("extend_"))
                    {
                        if (i > 0)
                        {
                            log.Append(",");
                        }
                        log.AppendFormat("{0}:{1}", item.Key, item.Value);
                        i++;
                    }
                }
                if (i > 0)
                {
                    LogContent = string.Concat("[", log.ToString(), "]");
                }
            }
            if (jobException != null)
            {
                LogContent = LogContent + " EX:" + jobException.ToString();
            }

            AdminServiceFactory.BackgroundJob.UpdateInfo(GuidUtil.New(), BackgroundJobId, JobName, FireTimeUtc, NextFireTimeUtc, TotalSeconds, LogContent);
        }
コード例 #20
0
        public CustomJsonResult ShareLog(RopShareLog rop)
        {
            var clientShareLog = new ClientShareLog();

            clientShareLog.Id         = GuidUtil.New();
            clientShareLog.ClientId   = this.CurrentUserId;
            clientShareLog.ShareLink  = rop.ShareLink;
            clientShareLog.RefereerId = rop.RefereerId;
            clientShareLog.PromoteId  = rop.PromoteId;
            clientShareLog.Type       = rop.Type;
            clientShareLog.CreateTime = DateTime.Now;
            clientShareLog.Creator    = this.CurrentUserId;

            CurrentDb.ClientShareLog.Add(clientShareLog);
            CurrentDb.SaveChanges();

            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, ""));
        }
コード例 #21
0
        private void LoginLog(string operater, string userId, Enumeration.LoginResult loginResult, Enumeration.LoginWay loginWay, string ip, string location, string description)
        {
            var userLoginHis = new SysUserLoginHis();

            userLoginHis.Id          = GuidUtil.New();
            userLoginHis.Ip          = ip;
            userLoginHis.UserId      = userId;
            userLoginHis.LoginWay    = loginWay;
            userLoginHis.LoginTime   = DateTime.Now;
            userLoginHis.Location    = location;
            userLoginHis.Result      = loginResult;
            userLoginHis.Description = description;
            userLoginHis.CreateTime  = DateTime.Now;
            userLoginHis.Creator     = operater;

            CurrentDb.SysUserLoginHis.Add(userLoginHis);
            CurrentDb.SaveChanges();
        }
コード例 #22
0
        /// <summary>
        /// Job状态管控
        /// </summary>
        /// <param name="Scheduler"></param>
        public static void JobScheduler(IScheduler scheduler)
        {
            ILog _logger = LogManager.GetLogger(typeof(QuartzManager));

            _logger.InfoFormat("Job状态管控");

            var jobs = AdminServiceFactory.BackgroundJob.GeAllowScheduleJobInfoList();

            _logger.InfoFormat("Job状态管控,有效控数为:" + jobs.Count);

            if (jobs.Count > 0)
            {
                foreach (BackgroundJob job in jobs)
                {
                    string jobId    = job.Id;
                    string jobGroup = string.Format("{0}Group", jobId);

                    _logger.InfoFormat("Job状态管控,任务({0})的状态:{1}", jobId, job.Status.GetCnName());

                    JobKey jobKey = new JobKey(jobId, jobGroup);

                    switch (job.Status)
                    {
                    case Enumeration.BackgroundJobStatus.Stoped:
                        DeleteJob(scheduler, jobKey);
                        break;

                    case Enumeration.BackgroundJobStatus.Starting:
                        ScheduleJob(scheduler, job);
                        AdminServiceFactory.BackgroundJob.SetStatus(GuidUtil.New(), job.Id, Enumeration.BackgroundJobStatus.Runing);
                        break;

                    case Enumeration.BackgroundJobStatus.Runing:
                        ScheduleJob(scheduler, job);
                        break;

                    case Enumeration.BackgroundJobStatus.Stoping:
                        DeleteJob(scheduler, jobKey);
                        AdminServiceFactory.BackgroundJob.SetStatus(GuidUtil.New(), job.Id, Enumeration.BackgroundJobStatus.Stoped);
                        break;
                    }
                }
            }
        }
コード例 #23
0
        public CustomJsonResult Add(string operater, Enumeration.BelongSite belongSite, RopSysMenuAdd rop)
        {
            var result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var isExists = CurrentDb.SysMenu.Where(m => m.Name == rop.Name).FirstOrDefault();
                if (isExists != null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "该名称已经存在"));
                }

                var pSysMenu = CurrentDb.SysMenu.Where(m => m.Id == rop.PId).FirstOrDefault();
                if (pSysMenu == null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "找不到上级节点"));
                }

                var sysMenu = new SysMenu();
                sysMenu.Id          = GuidUtil.New();
                sysMenu.Name        = rop.Name;
                sysMenu.Title       = rop.Title;
                sysMenu.Icon        = rop.Icon;
                sysMenu.Path        = rop.Path;
                sysMenu.Component   = rop.Path;
                sysMenu.Description = rop.Description;
                sysMenu.PId         = rop.PId;
                sysMenu.BelongSite  = belongSite;
                sysMenu.Depth       = pSysMenu.Depth + 1;
                sysMenu.IsNavbar    = rop.IsNavbar;
                sysMenu.IsRouter    = rop.IsRouter;
                sysMenu.IsSidebar   = rop.IsSidebar;
                sysMenu.CreateTime  = DateTime.Now;
                sysMenu.Creator     = operater;
                CurrentDb.SysMenu.Add(sysMenu);

                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }

            return(result);
        }
コード例 #24
0
        public CustomJsonResult Edit(string operater, Enumeration.BelongSite belongSite, RopSysRoleEdit rop)
        {
            CustomJsonResult result = new CustomJsonResult();


            using (TransactionScope ts = new TransactionScope())
            {
                var sysRole = CurrentDb.SysRole.Where(m => m.Id == rop.Id).FirstOrDefault();
                if (sysRole == null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "数据为空"));
                }

                sysRole.Description = rop.Description;
                sysRole.MendTime    = DateTime.Now;
                sysRole.Mender      = operater;

                var roleMenus = CurrentDb.SysRoleMenu.Where(r => r.RoleId == rop.Id).ToList();

                foreach (var roleMenu in roleMenus)
                {
                    CurrentDb.SysRoleMenu.Remove(roleMenu);
                }


                if (rop.MenuIds != null)
                {
                    foreach (var menuId in rop.MenuIds)
                    {
                        CurrentDb.SysRoleMenu.Add(new SysRoleMenu {
                            Id = GuidUtil.New(), RoleId = rop.Id, MenuId = menuId, Creator = operater, CreateTime = DateTime.Now
                        });
                    }
                }

                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }

            return(result);
        }
コード例 #25
0
        public CustomJsonResult AddMachine(string operater, string merchId, RopStoreAddMachine rop)
        {
            CustomJsonResult result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var merchMachine = CurrentDb.MerchMachine.Where(m => m.MerchId == merchId && m.MachineId == rop.MachineId).FirstOrDefault();
                if (merchMachine == null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "找不到商户的机器"));
                }

                if (!string.IsNullOrEmpty(merchMachine.StoreId))
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "已被使用"));
                }

                merchMachine.StoreId  = rop.StoreId;
                merchMachine.Mender   = operater;
                merchMachine.MendTime = DateTime.Now;

                var storeSellChannel = CurrentDb.StoreSellChannel.Where(m => m.MerchId == merchId && m.StoreId == rop.StoreId && m.RefType == E_StoreSellChannelRefType.Machine && m.RefId == rop.MachineId).FirstOrDefault();
                if (storeSellChannel == null)
                {
                    storeSellChannel            = new StoreSellChannel();
                    storeSellChannel.Id         = GuidUtil.New();
                    storeSellChannel.MerchId    = merchId;
                    storeSellChannel.StoreId    = rop.StoreId;
                    storeSellChannel.Name       = merchMachine.Name;
                    storeSellChannel.RefType    = E_StoreSellChannelRefType.Machine;
                    storeSellChannel.RefId      = rop.MachineId;
                    storeSellChannel.Creator    = operater;
                    storeSellChannel.CreateTime = DateTime.Now;
                    CurrentDb.StoreSellChannel.Add(storeSellChannel);
                }

                CurrentDb.SaveChanges();
                ts.Complete();
                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "添加成功");
            }
            return(result);
        }
コード例 #26
0
        public CustomJsonResult AccessLog()
        {
            var    uri             = new Uri(Request.UrlReferrer.AbsoluteUri);
            string promoteId       = HttpUtility.ParseQueryString(uri.Query).Get("promoteId");
            string refereerId      = HttpUtility.ParseQueryString(uri.Query).Get("refereerId");
            var    clientAccessLog = new ClientAccessLog();

            clientAccessLog.Id         = GuidUtil.New();
            clientAccessLog.ClientId   = this.CurrentUserId;
            clientAccessLog.AccessUrl  = Request.UrlReferrer.AbsoluteUri;
            clientAccessLog.RefereerId = refereerId;
            clientAccessLog.PromoteId  = promoteId;
            clientAccessLog.CreateTime = DateTime.Now;
            clientAccessLog.Creator    = this.CurrentUserId;

            CurrentDb.ClientAccessLog.Add(clientAccessLog);
            CurrentDb.SaveChanges();

            return(new CustomJsonResult(ResultType.Success, ResultCode.Success, ""));
        }
コード例 #27
0
        public CustomJsonResult Add(string operater, Enumeration.BelongSite belongSite, RopSysRoleAdd rop)
        {
            var result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var isExists = CurrentDb.SysRole.Where(m => m.Name == rop.Name && m.BelongSite == belongSite).FirstOrDefault();
                if (isExists != null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "该名称已经存在"));
                }

                var sysRole = new SysRole();
                sysRole.Id          = GuidUtil.New();
                sysRole.Name        = rop.Name;
                sysRole.Description = rop.Description;
                sysRole.PId         = GuidUtil.Empty();
                sysRole.BelongSite  = belongSite;
                sysRole.Dept        = 0;
                sysRole.CreateTime  = DateTime.Now;
                sysRole.Creator     = operater;
                CurrentDb.SysRole.Add(sysRole);

                if (rop.MenuIds != null)
                {
                    foreach (var menuId in rop.MenuIds)
                    {
                        CurrentDb.SysRoleMenu.Add(new SysRoleMenu {
                            Id = GuidUtil.New(), RoleId = sysRole.Id, MenuId = menuId, Creator = operater, CreateTime = DateTime.Now
                        });
                    }
                }

                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }

            return(result);
        }
コード例 #28
0
        public OwnApiHttpResponse UpLoadLog()
        {
            LogUtil.Info("进入UpLoadLog");

            var             s       = this;
            HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"]; //获取传统context
            HttpRequestBase request = context.Request;                                       //定义传统request对象

            if (request.Files != null)
            {
                for (int i = 0; i < request.Files.Count; i++)
                {
                    string c = request.Files[i].FileName;

                    LogUtil.Info("file name:" + c);
                }
            }


            if (request.Form.AllKeys != null)
            {
                for (int i = 0; i < request.Form.AllKeys.Length; i++)
                {
                    string key   = request.Form.GetKey(i);
                    string value = request.Form[i];
                    LogUtil.Info("file name:" + key + ":" + value);
                }
            }

            var    file          = request.Files[0];
            string fileExtension = System.IO.Path.GetExtension(file.FileName).ToLower();
            string fileName      = GuidUtil.New();
            string filePath      = HttpContext.Current.Server.MapPath("/") + ("/log-data-app/");
            string path          = filePath + fileName + fileExtension;//获取存储的目标地址

            file.SaveAs(path);

            IResult result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "");

            return(new OwnApiHttpResponse(result));
        }
コード例 #29
0
        public CustomJsonResult Add(string operater, string merchId, RopPrdKindAdd rop)
        {
            var result = new CustomJsonResult();

            using (TransactionScope ts = new TransactionScope())
            {
                var isExists = CurrentDb.PrdKind.Where(m => m.Name == rop.Name).FirstOrDefault();
                if (isExists != null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "该名称已经存在"));
                }

                var pPrdKind = CurrentDb.PrdKind.Where(m => m.Id == rop.PId).FirstOrDefault();
                if (pPrdKind == null)
                {
                    return(new CustomJsonResult(ResultType.Failure, ResultCode.Failure, "找不到上级节点"));
                }

                var productKind = new PrdKind();
                productKind.Id             = GuidUtil.New();
                productKind.PId            = rop.PId;
                productKind.Name           = rop.Name;
                productKind.IconImgUrl     = rop.IconImgUrl;
                productKind.DispalyImgUrls = rop.DispalyImgUrls.ToJsonString();
                productKind.MainImgUrl     = ImgSet.GetMain(productKind.DispalyImgUrls);
                productKind.MerchId        = merchId;
                productKind.Description    = rop.Description;
                productKind.Depth          = pPrdKind.Depth + 1;
                productKind.CreateTime     = DateTime.Now;
                productKind.Creator        = operater;
                CurrentDb.PrdKind.Add(productKind);

                CurrentDb.SaveChanges();
                ts.Complete();

                result = new CustomJsonResult(ResultType.Success, ResultCode.Success, "保存成功");
            }

            return(result);
        }
コード例 #30
0
        public CustomJsonResult Login(RopLogin rop)
        {
            RetLogin ret = new RetLogin();

            var result = AdminServiceFactory.AuthorizeRelay.SignIn(rop.UserName, rop.Password, CommonUtil.GetIP(), Enumeration.LoginType.Website);

            if (result.ResultType == Enumeration.LoginResult.Failure)
            {
                if (result.ResultTip == Enumeration.LoginResultTip.UserNotExist || result.ResultTip == Enumeration.LoginResultTip.UserPasswordIncorrect)
                {
                    return(Json(ResultType.Failure, ret, "用户名或密码不正确"));
                }

                if (result.ResultTip == Enumeration.LoginResultTip.UserDisabled)
                {
                    return(Json(ResultType.Failure, ret, "账户被禁用"));
                }

                if (result.ResultTip == Enumeration.LoginResultTip.UserDeleted)
                {
                    return(Json(ResultType.Failure, ret, "账户被删除"));
                }
            }

            string   key      = GuidUtil.New();
            UserInfo userInfo = new UserInfo();

            userInfo.UserId   = result.User.Id;
            userInfo.UserName = result.User.UserName;

            SSOUtil.SetUserInfo(key, userInfo);

            Response.Cookies.Add(new HttpCookie(OwnRequest.SESSION_NAME, key));


            ret.Url = rop.ReturnUrl;

            return(Json(ResultType.Success, ret, "登录成功"));
        }