Ejemplo n.º 1
0
        /// <summary>
        /// 保存一条回复(管理)
        /// </summary>
        /// <param name="mo"></param>
        /// <returns></returns>
        public ActionResultVM ReplyAdminSave(Domain.UserReply mo)
        {
            var vm = new ActionResultVM();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var oldmo = db.UserReply.FirstOrDefault(x => x.UrId == mo.UrId);

                if (oldmo != null)
                {
                    oldmo.UrAnonymousName = mo.UrAnonymousName;
                    oldmo.UrAnonymousMail = mo.UrAnonymousMail;
                    oldmo.UrAnonymousLink = mo.UrAnonymousLink;

                    oldmo.UrStatus = mo.UrStatus;

                    db.UserReply.Update(oldmo);

                    int num = db.SaveChanges();

                    vm.Set(num > 0);
                }
            }

            return(vm);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 保存一篇文章(管理)
        /// </summary>
        /// <param name="mo"></param>
        /// <returns></returns>
        public ActionResultVM WriteAdminSave(Domain.UserWriting mo)
        {
            var vm = new ActionResultVM();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var oldmo = db.UserWriting.FirstOrDefault(x => x.UwId == mo.UwId);

                if (oldmo != null)
                {
                    oldmo.UwStatus   = mo.UwStatus;
                    oldmo.UwReplyNum = mo.UwReplyNum;
                    oldmo.UwReadNum  = mo.UwReadNum;
                    oldmo.UwLaud     = mo.UwLaud;
                    oldmo.UwMark     = mo.UwMark;
                    oldmo.UwOpen     = mo.UwOpen;

                    db.UserWriting.Update(oldmo);

                    int num = db.SaveChanges();

                    vm.Set(num > 0);
                }
            }

            return(vm);
        }
Ejemplo n.º 3
0
        public ChatController(IHubContext <Application.ChatHubService> hub, Data.ContextBase _db)
        {
            Clients = hub.Clients;
            Groups  = hub.Groups;

            db = _db;
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 用户
        /// </summary>
        /// <param name="q"></param>
        /// <param name="page"></param>
        /// <returns></returns>
        public IActionResult Index(string q, int page = 1)
        {
            string id = RouteData.Values["id"]?.ToString();

            if (string.IsNullOrWhiteSpace(id))
            {
                return(Redirect("/doc"));
            }

            int uid = Convert.ToInt32(id);

            using (var db = new Data.ContextBase())
            {
                var mu = db.UserInfo.Find(uid);
                if (mu == null)
                {
                    return(Content("Account is empty"));
                }
                ViewData["Nickname"] = mu.Nickname;
            }

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            var ps = Application.CommonService.DocQuery(q, uid, uinfo.UserId, page);

            ps.Route      = Request.Path;
            ViewData["q"] = q;
            return(View("_PartialDocList", ps));
        }
Ejemplo n.º 5
0
        public QueryDataOutputVM QueryNoteList(QueryDataInputVM ivm)
        {
            var ovm = new QueryDataOutputVM();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var query = from a in db.Notepad
                            join b in db.UserInfo on a.Uid equals b.UserId
                            orderby a.NoteCreateTime descending
                            where a.Uid == uinfo.UserId
                            select new Domain.Notepad
                {
                    NoteId         = a.NoteId,
                    NoteTitle      = a.NoteTitle,
                    NoteCreateTime = a.NoteCreateTime,
                    NoteUpdateTime = a.NoteUpdateTime,
                    Uid            = a.Uid,

                    Spare3 = b.Nickname
                };

                if (!string.IsNullOrWhiteSpace(ivm.Pe1))
                {
                    query = query.Where(x => x.NoteTitle.Contains(ivm.Pe1));
                }

                Application.CommonService.QueryJoin(query, ivm, ref ovm);
            }
            return(ovm);
        }
Ejemplo n.º 6
0
        public ActionResultVM QueryNoteOne(int id)
        {
            var vm = new ActionResultVM();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var mo = db.Notepad.Find(id);
                if (mo == null)
                {
                    vm.Set(ARTag.invalid);
                }
                else if (mo.Uid == uinfo.UserId)
                {
                    vm.Set(ARTag.success);
                    vm.Data = mo;
                }
                else
                {
                    vm.Set(ARTag.unauthorized);
                }
            }

            return(vm);
        }
Ejemplo n.º 7
0
        public ActionResultVM UpdatePassword(string oldpwd, string newpwd)
        {
            var vm = new ActionResultVM();

            int uid = new Application.UserAuthService(HttpContext).Get().UserId;

            using (var db = new Data.ContextBase())
            {
                var userinfo = db.UserInfo.Find(uid);
                if (userinfo.UserPwd == Core.CalcTo.MD5(oldpwd))
                {
                    userinfo.UserPwd = Core.CalcTo.MD5(newpwd);
                    db.UserInfo.Update(userinfo);
                    var num = db.SaveChanges();

                    vm.Set(num > 0);
                }
                else
                {
                    vm.Set(ARTag.unauthorized);
                }
            };

            return(vm);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 公共注册
        /// </summary>
        /// <param name="mo">个人用户信息</param>
        /// <returns></returns>
        private ActionResultVM RegisterUser(Domain.UserInfo mo)
        {
            var vm = new ActionResultVM();

            using (var db = new Data.ContextBase())
            {
                var isok = true;

                //邮箱注册
                if (!string.IsNullOrWhiteSpace(mo.UserMail))
                {
                    isok = !db.UserInfo.Any(x => x.UserName == mo.UserName || x.UserMail == mo.UserMail);

                    vm.Set(ARTag.exist);
                    vm.Msg = "该邮箱已经注册";
                }
                else
                {
                    isok = !db.UserInfo.Any(x => x.UserName == mo.UserName);

                    vm.Set(ARTag.exist);
                    vm.Msg = "该账号已经注册";
                }

                if (isok)
                {
                    db.UserInfo.Add(mo);
                    int num = db.SaveChanges();
                    vm.Set(num > 0);
                }
            }

            return(vm);
        }
Ejemplo n.º 9
0
        public ActionResultVM WriteDel(int id)
        {
            var vm = new ActionResultVM();

            int uid = new Application.UserAuthService(HttpContext).Get().UserId;

            using (var db = new Data.ContextBase())
            {
                var mo1 = db.UserWriting.FirstOrDefault(x => x.Uid == uid && x.UwId == id);
                if (mo1.UwStatus == -1)
                {
                    vm.Set(ARTag.unauthorized);
                }
                else
                {
                    db.UserWriting.Remove(mo1);
                    var mo2 = db.UserWritingTags.Where(x => x.UwId == id).ToList();
                    db.UserWritingTags.RemoveRange(mo2);
                    var mo3 = db.UserReply.Where(x => x.UrTargetId == id.ToString()).ToList();
                    db.UserReply.RemoveRange(mo3);

                    vm.Set(db.SaveChanges() > 0);
                }
            }

            return(vm);
        }
Ejemplo n.º 10
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, Data.ContextBase db, IMemoryCache memoryCache)
        {
            //缓存
            Core.CacheTo.memoryCache = memoryCache;

            //是开发环境
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            //数据库不存在则创建,创建后返回true
            if (db.Database.EnsureCreated())
            {
                //调用重置数据库(实际开发中,你可能不需要,或只初始化一些表数据)
                new Controllers.DKController(db).ResetDataBaseForJson();
            }

            //配置swagger(生产环境不需要,把该代码移至 是开发环境 条件里面)
            app.UseSwagger().UseSwaggerUI(c =>
            {
                c.DocumentTitle = "RF API";
                c.SwaggerEndpoint("/swagger/v1/swagger.json", c.DocumentTitle);
            });

            //默认起始页index.html
            DefaultFilesOptions options = new DefaultFilesOptions();

            options.DefaultFileNames.Add("index.html");
            app.UseDefaultFiles(options);

            //静态资源允许跨域
            app.UseStaticFiles(new StaticFileOptions()
            {
                OnPrepareResponse = (x) =>
                {
                    x.Context.Response.Headers.Add("Access-Control-Allow-Origin", "*");
                }
            });

            app.UseRouting();

            //授权访问
            app.UseAuthentication();
            app.UseAuthorization();

            //session
            app.UseSession();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute(
                    name: "default",
                    pattern: "{controller=Home}/{action=Index}/{id?}");
            });
        }
Ejemplo n.º 11
0
        public IActionResult Setting()
        {
            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var mo = db.UserInfo.Find(uinfo.UserId);
                return(View(mo));
            };
        }
Ejemplo n.º 12
0
        public ActionResultVM WriteEditSave(Domain.UserWriting mo, int UwId, string TagIds)
        {
            var vm = new ActionResultVM();

            var lisTagId = new List <int>();

            TagIds.Split(',').ToList().ForEach(x => lisTagId.Add(Convert.ToInt32(x)));

            var lisTagName = Application.CommonService.TagsQuery().Where(x => lisTagId.Contains(x.TagId)).ToList();

            int uid = new Application.UserAuthService(HttpContext).Get().UserId;

            using (var db = new Data.ContextBase())
            {
                var oldmo = db.UserWriting.Where(x => x.Uid == uid && x.UwId == UwId).FirstOrDefault();

                if (oldmo.UwStatus == -1)
                {
                    vm.Set(ARTag.unauthorized);
                }
                else if (oldmo != null)
                {
                    oldmo.UwTitle      = mo.UwTitle;
                    oldmo.UwCategory   = mo.UwCategory;
                    oldmo.UwContentMd  = mo.UwContentMd;
                    oldmo.UwContent    = mo.UwContent;
                    oldmo.UwUpdateTime = DateTime.Now;

                    db.UserWriting.Update(oldmo);

                    var wt = db.UserWritingTags.Where(x => x.UwId == UwId).ToList();
                    db.UserWritingTags.RemoveRange(wt);

                    var listwt = new List <Domain.UserWritingTags>();
                    foreach (var tag in lisTagId)
                    {
                        var wtmo = new Domain.UserWritingTags
                        {
                            UwId    = mo.UwId,
                            TagId   = tag,
                            TagName = lisTagName.Where(x => x.TagId == tag).FirstOrDefault().TagName
                        };

                        listwt.Add(wtmo);
                    }
                    db.UserWritingTags.AddRange(listwt);

                    int num = db.SaveChanges();

                    vm.Set(num > 0);
                }
            }

            return(vm);
        }
Ejemplo n.º 13
0
        public ActionResultVM Delete(string id)
        {
            var vm = new ActionResultVM();

            try
            {
                if (string.IsNullOrWhiteSpace(id))
                {
                    vm.Set(ARTag.invalid);
                }
                else
                {
                    var uinfo = new Application.UserAuthService(HttpContext).Get();
                    if (uinfo.UserId != 0)
                    {
                        using var db = new Data.ContextBase();
                        var mo = db.GuffRecord.Find(id);

                        if (mo == null)
                        {
                            vm.Set(ARTag.invalid);
                        }
                        else
                        {
                            if (mo.Uid != uinfo.UserId)
                            {
                                vm.Set(ARTag.unauthorized);
                            }
                            else if (mo.GrStatus == -1)
                            {
                                vm.Set(ARTag.refuse);
                            }
                            else
                            {
                                db.Remove(mo);
                                int num = db.SaveChanges();

                                vm.Set(num > 0);
                            }
                        }
                    }
                    else
                    {
                        vm.Set(ARTag.unauthorized);
                    }
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
                Filters.FilterConfigs.WriteLog(HttpContext, ex);
            }

            return(vm);
        }
Ejemplo n.º 14
0
        /// <summary>
        /// 获取未读用户消息数量
        /// </summary>
        /// <param name="db"></param>
        /// <param name="UserId">接收用户ID</param>
        /// <returns></returns>
        public static int GetUnreadUserMessageCount(Data.ContextBase db, string UserId)
        {
            //库的消息
            int num = db.NChatMessageToUser.Where(x => x.CmuStatus >= 1 && x.CmuStatus <= 3).Count();

            //缓存的消息
            if (UserMessage1.ContainsKey(UserId))
            {
                num += UserMessage1[UserId].Where(x => x.CmuStatus >= 1 && x.CmuStatus <= 3).Count();
            }
            return(num);
        }
Ejemplo n.º 15
0
        public ActionResultVM SaveNote(Domain.Notepad mo)
        {
            var vm = new ActionResultVM();

            if (string.IsNullOrWhiteSpace(mo.NoteTitle) || string.IsNullOrWhiteSpace(mo.NoteContent))
            {
                vm.Set(ARTag.lack);
            }
            else
            {
                var uinfo = new Application.UserAuthService(HttpContext).Get();

                using var db = new Data.ContextBase();
                var now = DateTime.Now;
                if (mo.NoteId == 0)
                {
                    mo.NoteCreateTime = now;
                    mo.NoteUpdateTime = now;
                    mo.Uid            = uinfo.UserId;

                    db.Notepad.Add(mo);

                    int num = db.SaveChanges();
                    vm.Set(num > 0);
                    vm.Data = mo.NoteId;
                }
                else
                {
                    var currmo = db.Notepad.Find(mo.NoteId);
                    if (currmo.Uid == uinfo.UserId)
                    {
                        currmo.NoteTitle      = mo.NoteTitle;
                        currmo.NoteContent    = mo.NoteContent;
                        currmo.NoteUpdateTime = now;

                        db.Notepad.Update(currmo);

                        int num = db.SaveChanges();

                        vm.Set(num > 0);
                    }
                    else
                    {
                        vm.Set(ARTag.unauthorized);
                    }
                }
            }

            return(vm);
        }
Ejemplo n.º 16
0
        /// <summary>
        /// 我的主页
        /// </summary>
        /// <returns></returns>
        public IActionResult Id()
        {
            if (int.TryParse(RouteData.Values["id"]?.ToString(), out int uid))
            {
                using var db = new Data.ContextBase();
                var usermo = db.UserInfo.Find(uid);
                if (usermo != null)
                {
                    return(View("_PartialU", usermo));
                }
            }

            return(Content("Invalid"));
        }
Ejemplo n.º 17
0
        /// <summary>
        /// 我的主页
        /// </summary>
        /// <returns></returns>
        public IActionResult Index()
        {
            var un = RouteData.Values["id"]?.ToString();

            using (var db = new Data.ContextBase())
            {
                var usermo = db.UserInfo.FirstOrDefault(x => x.UserName == un);
                if (usermo != null)
                {
                    return(View("_PartialU", usermo));
                }
            }

            return(Content("Invalid"));
        }
Ejemplo n.º 18
0
        public string WriteList(string sort, string order, int page = 1, int rows = 30, string pe1 = null)
        {
            string result = string.Empty;

            var pag = new PaginationVM
            {
                PageNumber = page,
                PageSize   = rows
            };

            int uid = new Application.UserAuthService(HttpContext).Get().UserId;

            using var db = new Data.ContextBase();
            var query = from a in db.UserWriting
                        where a.Uid == uid
                        select new
            {
                a.UwId,
                a.UwTitle,
                a.UwCreateTime,
                a.UwUpdateTime,
                a.UwReadNum,
                a.UwReplyNum,
                a.UwOpen,
                a.UwStatus,
                a.UwLaud,
                a.UwMark,
                a.UwCategory
            };

            if (!string.IsNullOrWhiteSpace(pe1))
            {
                query = query.Where(x => x.UwTitle.Contains(pe1));
            }

            query = Fast.QueryableTo.OrderBy(query, sort, order);

            pag.Total = query.Count();
            var list = query.Skip((pag.PageNumber - 1) * pag.PageSize).Take(pag.PageSize).ToList();

            result = new
            {
                data  = list,
                total = pag.Total
            }.ToJson();

            return(result);
        }
Ejemplo n.º 19
0
            public override void OnResultExecuted(ResultExecutedContext context)
            {
                var hc = context.HttpContext;

                string controller = context.RouteData.Values["controller"].ToString().ToLower();
                string action     = context.RouteData.Values["action"].ToString().ToLower();
                string url        = hc.Request.Path.ToString() + hc.Request.QueryString.Value;

                try
                {
                    //客户端信息
                    var ct = new Core.ClientTo(hc);

                    //用户信息
                    var userinfo = Func.Common.GetLoginUserInfo(hc);

                    //日志保存
                    var mo = new Domain.SysLog()
                    {
                        LogId          = Guid.NewGuid().ToString(),
                        SuName         = userinfo.UserName,
                        SuNickname     = userinfo.Nickname,
                        LogAction      = controller + "/" + action,
                        LogUrl         = url,
                        LogIp          = ct.IPv4,
                        LogCreateTime  = DateTime.Now,
                        LogBrowserName = ct.BrowserName,
                        LogSystemName  = ct.SystemName,
                        LogGroup       = 1
                    };
                    mo.LogContent = DicDescription[mo.LogAction.ToLower()];

                    using (var db = new Data.ContextBase())
                    {
                        db.SysLog.Add(mo);
                        db.SaveChanges();
                    }
                }
                catch (Exception)
                {
                    //throw new System.Exception("写入操作日志失败");
                }

                base.OnResultExecuted(context);
            }
Ejemplo n.º 20
0
        public IActionResult Setting()
        {
            string code = RouteData.Values["id"]?.ToString();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using var db = new Data.ContextBase();
            var mo = db.DocSet.Find(code);

            if (mo.Uid == uinfo.UserId)
            {
                return(View("_PartialItemForm", mo));
            }
            else
            {
                return(Content("unauthorized"));
            }
        }
Ejemplo n.º 21
0
        /// <summary>
        /// 保存组消息
        /// </summary>
        /// <param name="db"></param>
        /// <param name="second">发送消息已超过分钟数,默认5分钟,0为全部写入</param>
        public static int SaveGroupMessage(Data.ContextBase db, int second = 5)
        {
            //待写入的消息
            var listMessage = new List <Domain.NChatMessageToGroup>();

            foreach (var key in GroupMessage1.Keys)
            {
                var msgs = GroupMessage1[key];

                //全部写入
                if (second <= 0)
                {
                    listMessage.AddRange(msgs);
                    GroupMessage1[key].Clear();
                }
                else
                {
                    //已超过分钟的消息
                    var mt = DateTime.Now.AddSeconds(second);

                    foreach (var m in msgs)
                    {
                        if (m.CmgCreateTime > mt)
                        {
                            listMessage.Add(m);
                            msgs.Remove(m);
                        }
                    }
                }
            }

            int batchRows = GlobalTo.GetValue <int>("NetnrChat:BatchSaveDataBase");
            int num       = 0;

            while (listMessage.Count > 0)
            {
                var listm = listMessage.Take(batchRows);
                db.NChatMessageToGroup.AddRange(listm);
                num += db.SaveChanges();
                listMessage.RemoveRange(0, batchRows);
            }

            return(num);
        }
Ejemplo n.º 22
0
        /// <summary>
        /// 获取未读组消息数量
        /// </summary>
        /// <param name="db"></param>
        /// <param name="UserId">接收用户ID</param>
        /// <returns></returns>
        public static object GetUnreadGroupMessageCount(Data.ContextBase db, string UserId)
        {
            //库里面的消息
            var query1 = from a in db.NChatGroup
                         join b1 in db.NChatMessageGroupPull on a.CgOwnerId equals b1.CuUserId into bg
                         from b in bg.DefaultIfEmpty()
                         where a.CgOwnerId == UserId
                         select new
            {
                a.CgId,
                b.GpUpdateTime
            };

            var query = from a in query1
                        join b1 in db.NChatMessageToGroup on a.CgId equals b1.CmgPullGroupId into bg
                        from b in bg.DefaultIfEmpty()
                        where b.CmgCreateTime > a.GpUpdateTime
                        group a by new { a.CgId, a.GpUpdateTime } into g
                select new
            {
                GroupId    = g.Key.CgId,
                UpdateTime = g.Key.GpUpdateTime,
                Count      = g.Count()
            };

            var list = query.ToList();
            var gk   = new Dictionary <string, int>();

            //缓存的消息
            foreach (var gi in list)
            {
                gk.Add(gi.GroupId, gi.Count);
                if (GroupMessage1.ContainsKey(gi.GroupId))
                {
                    gk[gi.GroupId] += GroupMessage1[gi.GroupId].Where(x => x.CmgCreateTime > gi.UpdateTime).Count();
                }
            }

            return(new
            {
                Count = gk.Values.Sum(),
                Detail = gk
            });
        }
Ejemplo n.º 23
0
        /// <summary>
        /// 查询回复列表
        /// </summary>
        /// <param name="ivm"></param>
        /// <returns></returns>
        public QueryDataOutputVM QueryReplyList(QueryDataInputVM ivm)
        {
            var ovm = new QueryDataOutputVM();

            using (var db = new Data.ContextBase())
            {
                var query = from a in db.UserReply
                            join b1 in db.UserInfo on a.Uid equals b1.UserId into bg
                            from b in bg.DefaultIfEmpty()
                            select new
                {
                    a.UrId,
                    a.Uid,
                    a.UrAnonymousName,
                    a.UrAnonymousLink,
                    a.UrAnonymousMail,
                    a.UrTargetType,
                    a.UrTargetId,
                    a.UrContent,
                    a.UrContentMd,
                    a.UrCreateTime,
                    a.UrStatus,
                    a.UrTargetPid,
                    a.Spare1,
                    a.Spare2,
                    a.Spare3,

                    b.UserId,
                    b.Nickname,
                    b.UserName,
                    b.UserMail
                };

                if (!string.IsNullOrWhiteSpace(ivm.Pe1))
                {
                    query = query.Where(x => x.UrContent.Contains(ivm.Pe1));
                }

                Application.CommonService.QueryJoin(query, ivm, ref ovm);
            }

            return(ovm);
        }
Ejemplo n.º 24
0
        public ActionResultVM UpdateUserSay(Domain.UserInfo mo)
        {
            var vm = new ActionResultVM();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var currmo = db.UserInfo.Find(uinfo.UserId);
                currmo.UserSay = mo.UserSay;
                db.UserInfo.Update(currmo);

                int num = db.SaveChanges();

                vm.Set(num > 0);
            }

            return(vm);
        }
Ejemplo n.º 25
0
        public Startup(IConfiguration configuration, IHostEnvironment env)
        {
            GlobalTo.Configuration   = configuration;
            GlobalTo.HostEnvironment = env;

            #region 第三方登录
            QQConfig.APPID        = GlobalTo.GetValue("OAuthLogin:QQ:APPID");
            QQConfig.APPKey       = GlobalTo.GetValue("OAuthLogin:QQ:APPKey");
            QQConfig.Redirect_Uri = GlobalTo.GetValue("OAuthLogin:QQ:Redirect_Uri");

            WeiboConfig.AppKey       = GlobalTo.GetValue("OAuthLogin:Weibo:AppKey");
            WeiboConfig.AppSecret    = GlobalTo.GetValue("OAuthLogin:Weibo:AppSecret");
            WeiboConfig.Redirect_Uri = GlobalTo.GetValue("OAuthLogin:Weibo:Redirect_Uri");

            GitHubConfig.ClientID        = GlobalTo.GetValue("OAuthLogin:GitHub:ClientID");
            GitHubConfig.ClientSecret    = GlobalTo.GetValue("OAuthLogin:GitHub:ClientSecret");
            GitHubConfig.Redirect_Uri    = GlobalTo.GetValue("OAuthLogin:GitHub:Redirect_Uri");
            GitHubConfig.ApplicationName = GlobalTo.GetValue("OAuthLogin:GitHub:ApplicationName");

            TaoBaoConfig.AppKey       = GlobalTo.GetValue("OAuthLogin:TaoBao:AppKey");
            TaoBaoConfig.AppSecret    = GlobalTo.GetValue("OAuthLogin:TaoBao:AppSecret");
            TaoBaoConfig.Redirect_Uri = GlobalTo.GetValue("OAuthLogin:TaoBao:Redirect_Uri");

            MicroSoftConfig.ClientID     = GlobalTo.GetValue("OAuthLogin:MicroSoft:ClientID");
            MicroSoftConfig.ClientSecret = GlobalTo.GetValue("OAuthLogin:MicroSoft:ClientSecret");
            MicroSoftConfig.Redirect_Uri = GlobalTo.GetValue("OAuthLogin:MicroSoft:Redirect_Uri");

            DingTalkConfig.appId        = GlobalTo.GetValue("OAuthLogin:DingTalk:AppId");
            DingTalkConfig.appSecret    = GlobalTo.GetValue("OAuthLogin:DingTalk:AppSecret");
            DingTalkConfig.Redirect_Uri = GlobalTo.GetValue("OAuthLogin:DingTalk:Redirect_Uri");
            #endregion

            try
            {
                //无创建,有忽略
                using var db = new Data.ContextBase();
                db.Database.EnsureCreated();
            }
            catch (System.Exception)
            {
            }
        }
Ejemplo n.º 26
0
        public IActionResult Del()
        {
            string code = RouteData.Values["id"]?.ToString();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                var mo = db.DocSet.Find(code);
                if (mo.Uid == uinfo.UserId)
                {
                    db.DocSet.Remove(mo);
                    var moDetail = db.DocSetDetail.Where(x => x.DsCode == code).ToList();
                    db.DocSetDetail.RemoveRange(moDetail);
                    db.SaveChanges();

                    return(Redirect("/doc/user/" + uinfo.UserId));
                }
            }
            return(Content("Bad"));
        }
Ejemplo n.º 27
0
        public ActionResultVM HotTag()
        {
            var vm = new ActionResultVM();

            try
            {
                using var db = new Data.ContextBase();
                var listTags  = db.GuffRecord.OrderByDescending(x => x.GrCreateTime).Select(x => x.GrTag).Take(1000).ToList();
                var orderTags = string.Join(",", listTags).Split(',').GroupBy(x => x).OrderByDescending(x => x.Count()).Select(x => x.Key).Take(20).ToList();

                vm.Data = orderTags;
                vm.Set(ARTag.success);
            }
            catch (Exception ex)
            {
                vm.Set(ex);
                Filters.FilterConfigs.WriteLog(HttpContext, ex);
            }

            return(vm);
        }
Ejemplo n.º 28
0
        public ActionResultVM WriteOne(int id)
        {
            var vm = new ActionResultVM();

            int uid = new Application.UserAuthService(HttpContext).Get().UserId;

            using (var db = new Data.ContextBase())
            {
                var mo       = db.UserWriting.FirstOrDefault(x => x.Uid == uid && x.UwId == id);
                var listTags = db.UserWritingTags.Where(x => x.UwId == id).ToList();

                vm.Data = new
                {
                    item = mo,
                    tags = listTags
                };
                vm.Set(ARTag.success);
            }

            return(vm);
        }
Ejemplo n.º 29
0
        public IActionResult RidOAuth()
        {
            if (Enum.TryParse(RouteData.Values["id"]?.ToString().ToLower(), out AccountController.ValidateloginType vtype))
            {
                int uid = new Application.UserAuthService(HttpContext).Get().UserId;
                using var db = new Data.ContextBase();
                var mo = db.UserInfo.Find(uid);

                switch (vtype)
                {
                case AccountController.ValidateloginType.qq:
                    mo.OpenId1 = "";
                    break;

                case AccountController.ValidateloginType.weibo:
                    mo.OpenId2 = "";
                    break;

                case AccountController.ValidateloginType.github:
                    mo.OpenId3 = "";
                    break;

                case AccountController.ValidateloginType.taobao:
                    mo.OpenId4 = "";
                    break;

                case AccountController.ValidateloginType.microsoft:
                    mo.OpenId5 = "";
                    break;

                case AccountController.ValidateloginType.dingtalk:
                    mo.OpenId6 = "";
                    break;
                }

                db.UserInfo.Update(mo);
                db.SaveChanges();
            }
            return(Redirect("/user/setting"));
        }
Ejemplo n.º 30
0
        public ActionResultVM SaveDocSet(Domain.DocSet mo)
        {
            var vm = new ActionResultVM();

            var uinfo = new Application.UserAuthService(HttpContext).Get();

            using (var db = new Data.ContextBase())
            {
                if (string.IsNullOrWhiteSpace(mo.DsCode))
                {
                    mo.DsCode       = Core.UniqueTo.LongId().ToString();
                    mo.Uid          = uinfo.UserId;
                    mo.DsStatus     = 1;
                    mo.DsCreateTime = DateTime.Now;

                    db.DocSet.Add(mo);
                }
                else
                {
                    var currmo = db.DocSet.Find(mo.DsCode);
                    if (currmo.Uid != uinfo.UserId)
                    {
                        vm.Set(ARTag.unauthorized);
                    }

                    currmo.DsName   = mo.DsName;
                    currmo.DsRemark = mo.DsRemark;
                    currmo.DsOpen   = mo.DsOpen;
                    currmo.Spare1   = mo.Spare1;

                    db.DocSet.Update(currmo);
                }
                var num = db.SaveChanges();

                vm.Set(num > 0);
            }

            return(vm);
        }