Beispiel #1
0
        /// <summary>
        /// 备份数据库
        /// </summary>
        public static ActionResultVM BackupDataBase()
        {
            var vm = new ActionResultVM();

            try
            {
                var listMsg = new List <object>();

                var kp = "Work:BackupDataBase:SQLServer:";

                //执行命令
                using var db   = new ContextBase();
                using var conn = db.Database.GetDbConnection();
                conn.Open();
                var connCmd = conn.CreateCommand();
                connCmd.CommandText = GlobalTo.GetValue(kp + "cmd");
                int en = connCmd.ExecuteNonQuery();

                listMsg.Add(en);

                vm.Set(ARTag.success);
                vm.data = listMsg;
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
Beispiel #2
0
        public ActionResultVM GetToken(string AppId, string AppKey)
        {
            var vm = new ActionResultVM();

            try
            {
                if (string.IsNullOrWhiteSpace(AppId) || string.IsNullOrWhiteSpace(AppKey))
                {
                    vm.Set(ARTag.lack);
                    vm.msg = "参数缺失";
                }
                else
                {
                    if (!(CacheTo.Get(AppKey) is ActionResultVM cvm))
                    {
                        vm = SQLiteBase.GetToken(AppId, AppKey);

                        if (vm.code == 200)
                        {
                            //Token缓存
                            CacheTo.Set(AppKey, vm, GlobalTo.GetValue <int>("Safe:TokenCache"), false);
                        }
                    }
                    else
                    {
                        vm = cvm;
                    }
                }
Beispiel #3
0
        /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="ToMail">送达邮件地址</param>
        /// <param name="Title">标题</param>
        /// <param name="Content">内容</param>
        /// <returns></returns>
        public static ActionResultVM Send(string ToMail, string Title, string Content)
        {
            var vm = new ActionResultVM();

            try
            {
                var message = new MimeMessage();
                message.From.Add(new MailboxAddress(GlobalTo.GetValue("MailKit:FromAddress")));
                message.To.Add(new MailboxAddress(ToMail));
                message.Subject = Title;
                message.Body    = new BodyBuilder()
                {
                    HtmlBody = Content
                }.ToMessageBody();

                using (var client = new SmtpClient())
                {
                    client.ServerCertificateValidationCallback = (s, c, h, e) => true;
                    client.Connect(GlobalTo.GetValue("MailKit:Host"), GlobalTo.GetValue <int>("MailKit:Port"), true);
                    client.Authenticate(GlobalTo.GetValue("MailKit:Auth:UserName"), GlobalTo.GetValue("MailKit:Auth:Password"));
                    client.Send(message);
                    client.Disconnect(true);

                    vm.Set(ARTag.success);
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
Beispiel #4
0
        /// <summary>
        /// 批量新增
        /// </summary>
        /// <returns></returns>
        private ActionResultVM BulkInsert()
        {
            var vm = new ActionResultVM();

            var list = new List <SysLog>();

            for (int i = 0; i < 50_000; i++)
            {
                var mo = new SysLog()
                {
                    LogId          = Guid.NewGuid().ToString(),
                    LogAction      = "/",
                    LogBrowserName = "Chrome",
                    LogCity        = "重庆",
                    LogContent     = "测试信息",
                    LogCreateTime  = vm.startTime,
                    LogGroup       = 1,
                    LogIp          = "0.0.0.0",
                    LogSystemName  = "Win10",
                    LogUrl         = Request.Path,
                    SuName         = "netnr",
                    SuNickname     = "netnr",
                    LogRemark      = "无"
                };
                list.Add(mo);
            }

            db.SysLog.BulkInsert(list);

            db.BulkSaveChanges();

            vm.Set(ARTag.success);

            return(vm);
        }
Beispiel #5
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);
        }
        public ActionResultVM WriteDel(int id)
        {
            var vm = new ActionResultVM();

            int uid = new Func.UserAuthAid(HttpContext).Get().UserId;

            using (var db = new ContextBase())
            {
                var mo1 = db.UserWriting.Where(x => x.Uid == uid && x.UwId == id).FirstOrDefault();
                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);
        }
Beispiel #7
0
        public ActionResultVM DelCatalog(string code, string id)
        {
            var vm = new ActionResultVM();

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

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

            if (ds?.Uid != uinfo.UserId)
            {
                vm.Set(ARTag.unauthorized);
                return(vm);
            }

            var listdsd    = db.DocSetDetail.Where(x => x.DsCode == code && string.IsNullOrEmpty(x.DsdContentMd)).ToList();
            var removelist = Core.TreeTo.FindToTree(listdsd, "DsdPid", "DsdId", new List <string> {
                id
            });

            removelist.Add(listdsd.Where(x => x.DsdId == id).FirstOrDefault());
            db.DocSetDetail.RemoveRange(removelist);

            int num = db.SaveChanges();

            vm.Set(num > 0);

            return(vm);
        }
Beispiel #8
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);
        }
Beispiel #9
0
        /// <summary>
        /// 保存为JSON文件
        /// </summary>
        /// <param name="CoverJson">写入JSON文件,默认 false</param>
        /// <returns></returns>
        public ActionResultVM SaveAsJson(bool CoverJson = false)
        {
            var vm = new ActionResultVM();

            var dicKey = new Dictionary <string, object>
            {
                { "SysButton", Tsb.ToList() },
                { "SysDictionary", Tsd.ToList() },
                { "SysMenu", Tsm.ToList() },
                { "SysRole", Tsr.ToList() },
                { "SysTableConfig", Tstc.ToList() },
                { "SysUser", Tsu.ToList() },

                { "TempExample", Tte.ToList() },
                { "TempInvoiceDetail", Ttid.ToList() },
                { "TempInvoiceMain", Ttim.ToList() }
            };

            vm.Data = dicKey;

            if (CoverJson)
            {
                Core.FileTo.WriteText(vm.ToJson(), JsonPath, JsonName, false);
            }

            vm.Set(ARTag.success);

            return(vm);
        }
Beispiel #10
0
        public ActionResultVM UserInfo()
        {
            var vm = new ActionResultVM();

            try
            {
                var uinfo = new Application.UserAuthService(HttpContext).Get();
                if (uinfo.UserId != 0)
                {
                    vm.Data = uinfo;

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

            return(vm);
        }
Beispiel #11
0
        public ActionResultVM RepairTableConfig(string names)
        {
            var vm = new ActionResultVM();

            var listName = names.Split(',');

            if (string.IsNullOrWhiteSpace(names) || listName.Length == 0)
            {
                vm.code = 1;
                vm.msg  = "表名不能为空";
            }
            else
            {
                using (var db = new ContextBase())
                {
                    var dbname      = db.Database.GetDbConnection().Database;
                    var sqltemplate = QueryScripts(db.TDB.ToString(), "config");

                    var listTc = db.SysTableConfig.ToList();

                    foreach (var name in listName)
                    {
                        var sql = sqltemplate.Replace("@DataBaseName", dbname).Replace("@TableName", name);

                        if (!string.IsNullOrWhiteSpace(sql))
                        {
                            var dt = new DataTable();

                            using (var dbsql = new ContextBase())
                            {
                                using (var conn = dbsql.Database.GetDbConnection())
                                {
                                    conn.Open();
                                    var cmd = conn.CreateCommand();
                                    cmd.CommandText = sql;
                                    dt.Load(cmd.ExecuteReader());
                                }
                            }

                            foreach (DataRow dr in dt.Rows)
                            {
                                var tcmo = listTc.Where(x => x.TableName == dr["TableName"].ToString() && x.ColField == dr["ColField"].ToString()).FirstOrDefault();
                                tcmo.FormMaxlength = Convert.ToInt32(dr["FormMaxlength"]);
                                if (string.IsNullOrWhiteSpace(tcmo.ColRelation))
                                {
                                    tcmo.ColRelation = "Equal,Contains";
                                }
                            }
                        }
                    }

                    db.SysTableConfig.UpdateRange(listTc);
                    db.SaveChanges();

                    vm.Set(ARTag.success);
                }
            }

            return(vm);
        }
Beispiel #12
0
        public ActionResultVM LsitReplySave(UserReply mo, UserMessage um)
        {
            var vm = new ActionResultVM();

            var now = DateTime.Now;

            if (HttpContext.User.Identity.IsAuthenticated)
            {
                mo.Uid = new Func.UserAuthAid(HttpContext).Get().UserId;
            }
            else
            {
                mo.Uid = 0;
            }

            //回复消息
            um.UmId         = Core.UniqueTo.LongId().ToString();
            um.UmTriggerUid = mo.Uid;
            um.UmType       = Func.EnumAid.MessageType.UserWriting.ToString();
            um.UmTargetId   = mo.UrTargetId;
            um.UmAction     = 2;
            um.UmStatus     = 1;
            um.UmContent    = mo.UrContent;
            um.UmCreateTime = now;


            using (var db = new ContextBase())
            {
                //回复内容
                mo.UrCreateTime = now;
                mo.UrStatus     = 1;
                mo.UrTargetPid  = 0;
                mo.UrTargetType = Func.EnumAid.ReplyType.UserWriting.ToString();

                db.UserReply.Add(mo);

                //回填文章最新回复记录
                var mow = db.UserWriting.FirstOrDefault(x => x.UwId.ToString() == mo.UrTargetId);
                if (mow != null)
                {
                    mow.UwReplyNum += 1;
                    mow.UwLastUid   = mo.Uid;

                    um.UmTargetIndex = mow.UwReplyNum;

                    db.UserWriting.Update(mow);
                }

                if (um.Uid != um.UmTriggerUid)
                {
                    db.UserMessage.Add(um);
                }

                int num = db.SaveChanges();

                vm.Set(num > 0);
            }

            return(vm);
        }
Beispiel #13
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);
        }
Beispiel #14
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);
        }
Beispiel #15
0
        /// <summary>
        /// 获取Token
        /// </summary>
        /// <param name="AppId">分配的应用ID</param>
        /// <param name="AppKey">分配的应用密钥</param>
        /// <returns></returns>
        public static ActionResultVM GetToken(string AppId, string AppKey)
        {
            var vm = new ActionResultVM();

            try
            {
                using var db = new SQLiteConnection(SQLiteConn);
                db.CreateTable <SysKey>();
                var sk = db.Table <SysKey>().FirstOrDefault(x => x.SkAppId == AppId && x.SkAppKey == AppKey);
                if (sk != null)
                {
                    sk.SkToken           = Core.CalcTo.MD5(Core.UniqueTo.LongId().ToString());
                    sk.SkTokenExpireTime = DateTime.Now.AddMinutes(GlobalTo.GetValue <int>("Safe:TokenExpired"));

                    int num = db.Update(sk);
                    vm.data = sk;
                    vm.Set(num > 0);
                }
                else
                {
                    vm.Set(ARTag.unauthorized);
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
Beispiel #16
0
        public ActionResultVM SaveConfigTable(string rows, string tablename)
        {
            var vm = new ActionResultVM();

            JArray ja = JArray.Parse(rows);

            var listRow = db.SysTableConfig.Where(x => x.TableName == tablename).ToList();

            int order = 0;

            foreach (JToken jt in ja)
            {
                string id = jt["Id"].ToString();

                var mo = listRow.Where(x => x.Id == id).FirstOrDefault();

                mo.ColTitle  = jt["ColTitle"].ToStringOrEmpty();
                mo.ColAlign  = string.IsNullOrWhiteSpace(jt["ColAlign"].ToStringOrEmpty()) ? 1 : Convert.ToInt32(jt["ColAlign"].ToStringOrEmpty());
                mo.ColWidth  = string.IsNullOrWhiteSpace(jt["ColWidth"].ToStringOrEmpty()) ? 0 : Convert.ToInt32(jt["ColWidth"].ToStringOrEmpty());
                mo.ColHide   = string.IsNullOrWhiteSpace(jt["ColHide"].ToStringOrEmpty()) ? 0 : Convert.ToInt32(jt["ColHide"].ToStringOrEmpty());
                mo.ColFrozen = string.IsNullOrWhiteSpace(jt["ColFrozen"].ToStringOrEmpty()) ? 0 : Convert.ToInt32(jt["ColFrozen"].ToStringOrEmpty());
                mo.ColExport = string.IsNullOrWhiteSpace(jt["ColExport"].ToStringOrEmpty()) ? 0 : Convert.ToInt32(jt["ColExport"].ToStringOrEmpty());
                mo.ColOrder  = order++;
            }

            db.SysTableConfig.UpdateRange(listRow);
            int num = db.SaveChanges();

            vm.Set(num > 0);

            return(vm);
        }
Beispiel #17
0
        public ActionResultVM ListUserConn(int a)
        {
            var vm = new ActionResultVM();

            int wid = Convert.ToInt32(RouteData.Values["id"]?.ToString());

            var uinfo = new Func.UserAuthAid(HttpContext).Get();

            using (var db = new ContextBase())
            {
                var uw = db.UserWriting.Find(wid);

                var uc = db.UserConnection.Where(x => x.Uid == uinfo.UserId && x.UconnTargetId == wid.ToString() && x.UconnAction == a).FirstOrDefault();
                if (uc == null)
                {
                    uc = new UserConnection()
                    {
                        UconnId         = Core.UniqueTo.LongId().ToString(),
                        UconnAction     = a,
                        UconnCreateTime = DateTime.Now,
                        UconnTargetId   = wid.ToString(),
                        UconnTargetType = Func.EnumAid.ConnectionType.UserWriting.ToString(),
                        Uid             = uinfo.UserId
                    };
                    db.UserConnection.Add(uc);
                    if (a == 1)
                    {
                        uw.UwLaud += 1;
                    }
                    if (a == 2)
                    {
                        uw.UwMark += 1;
                    }
                    db.UserWriting.Update(uw);

                    vm.data = "1";
                }
                else
                {
                    db.UserConnection.Remove(uc);
                    if (a == 1)
                    {
                        uw.UwLaud -= 1;
                    }
                    if (a == 2)
                    {
                        uw.UwMark -= 1;
                    }
                    db.UserWriting.Update(uw);

                    vm.data = "0";
                }

                int num = db.SaveChanges();

                vm.Set(num > 0);
            }

            return(vm);
        }
Beispiel #18
0
        public ActionResultVM SaveConfigForm(string rows, string tablename)
        {
            var vm = new ActionResultVM();

            JArray ja = JArray.Parse(rows);

            var listRow = db.SysTableConfig.Where(x => x.TableName == tablename).ToList();

            int order = 0;

            foreach (JToken jt in ja)
            {
                string field = jt["field"].ToStringOrEmpty();
                var    mo    = listRow.Where(x => x.ColField == field).FirstOrDefault();

                mo.ColTitle  = jt["title"].ToStringOrEmpty();
                mo.FormSpan  = string.IsNullOrWhiteSpace(jt["span"].ToStringOrEmpty()) ? 1 : Convert.ToInt32(jt["span"].ToStringOrEmpty());
                mo.FormArea  = string.IsNullOrWhiteSpace(jt["area"].ToStringOrEmpty()) ? 0 : Convert.ToInt32(jt["area"].ToStringOrEmpty());
                mo.FormOrder = order++;
            }

            db.SysTableConfig.UpdateRange(listRow);
            int num = db.SaveChanges();

            vm.Set(num > 0);

            return(vm);
        }
Beispiel #19
0
        public ActionResultVM QueryNoteOne(int id)
        {
            var vm = new ActionResultVM();

            var uinfo = new Func.UserAuthAid(HttpContext).Get();

            using (var db = new 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);
        }
Beispiel #20
0
        public ActionResultVM ExecTask()
        {
            var vm = new ActionResultVM();

            Enum.TryParse(typeof(TaskItem), RouteData.Values["id"]?.ToString(), true, out object ti);

            switch (ti as TaskItem?)
            {
            default:
                vm.Set(ARTag.invalid);
                break;

            case TaskItem.ResetDataBase:
            {
                vm = new Application.DataMirrorService().AddForJson();
            }
            break;

            case TaskItem.ClearTemp:
            {
                vm = Application.TaskService.ClearTemp();
            }
            break;
            }

            return(vm);
        }
Beispiel #21
0
        /// <summary>
        /// 保存单据
        /// </summary>
        /// <param name="moMain"></param>
        /// <param name="rows"></param>
        /// <returns></returns>
        public ActionResultVM SaveInvoiceForm(TempInvoiceMain moMain, string rows)
        {
            var vm = new ActionResultVM();

            //明细反序列化为对象
            var listDetail = rows.ToEntitys <TempInvoiceDetail>();

            //新增,补齐主表信息
            var isadd = string.IsNullOrWhiteSpace(moMain.TimId);

            if (isadd)
            {
                moMain.TimId         = Guid.NewGuid().ToString();
                moMain.TimCreateTime = DateTime.Now;

                moMain.TimOwnerId   = Guid.Empty.ToString();
                moMain.TimOwnerName = "系统登录人员";
            }


            if (isadd)
            {
                db.TempInvoiceMain.Add(moMain);
            }
            else
            {
                db.TempInvoiceMain.Update(moMain);

                //更新时,删除原有明细
                var currDetail = db.TempInvoiceDetail.Where(x => x.TimId == moMain.TimId).ToList();
                if (currDetail.Count > 0)
                {
                    db.TempInvoiceDetail.RemoveRange(currDetail);
                }
            }

            //添加明细
            if (listDetail.Count > 0)
            {
                //初始值
                foreach (var item in listDetail)
                {
                    item.TidId = Guid.NewGuid().ToString();
                    item.TimId = moMain.TimId;
                }

                db.TempInvoiceDetail.AddRange(listDetail);
            }

            int num = db.SaveChanges();

            vm.Set(num > 0);

            if (isadd)
            {
                vm.data = moMain.TimId;
            }

            return(vm);
        }
Beispiel #22
0
        public ActionResultVM Index()
        {
            var vm = new ActionResultVM();


            return(vm);
        }
Beispiel #23
0
        public IActionResult Register(Domain.UserInfo mo, string RegisterCode)
        {
            var vm = new ActionResultVM();

            if (string.IsNullOrWhiteSpace(RegisterCode) || HttpContext.Session.GetString("RegisterCode") != RegisterCode)
            {
                vm.Msg = "验证码错误或已过期";
            }
            else if (!(mo.UserName?.Length >= 5 && mo.UserPwd?.Length >= 5))
            {
                vm.Msg = "账号、密码长度至少 5 位数";
            }
            else
            {
                mo.UserPwd        = Core.CalcTo.MD5(mo.UserPwd);
                mo.UserCreateTime = DateTime.Now;

                //邮箱注册
                if (Fast.ParsingTo.IsMail(mo.UserName))
                {
                    mo.UserMail = mo.UserName;
                }
                vm = RegisterUser(mo);
            }

            ViewData["UserName"] = mo.UserName;

            return(View(vm));
        }
Beispiel #24
0
        /// <summary>
        /// 验证Token
        /// </summary>
        /// <param name="token"></param>
        /// <returns></returns>
        public static ActionResultVM ValidToken(string token)
        {
            var vm = new ActionResultVM();

            try
            {
                if (string.IsNullOrWhiteSpace(token))
                {
                    vm.Set(ARTag.unauthorized);
                }
                else
                {
                    using var db = new SQLiteConnection(SQLiteConn);
                    db.CreateTable <SysKey>();
                    var sk = db.Table <SysKey>().FirstOrDefault(x => x.SkToken == token);

                    vm.Set(sk?.SkTokenExpireTime > DateTime.Now);
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
        /// <summary>
        /// WebHook
        /// </summary>
        /// <returns></returns>
        public ActionResultVM WebHook()
        {
            var vm = new ActionResultVM();

            try
            {
                if (Request.Method == "POST")
                {
                    using var ms = new MemoryStream();
                    Request.Body.CopyTo(ms);
                    string postStr = System.Text.Encoding.UTF8.GetString(ms.ToArray());

                    //new WebHookService(postStr);

                    vm.data = postStr;
                    vm.Set(ARTag.success);
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
                ConsoleTo.Log(ex);
            }

            return(vm);
        }
Beispiel #26
0
        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="path">路径,传ID时需传 isid=true</param>
        /// <param name="isid">是ID</param>
        public static ActionResultVM QueryFile(string path, bool isid = false)
        {
            var vm = new ActionResultVM();

            try
            {
                using var db = new SQLiteConnection(SQLiteConn);
                FileRecord fr = null;

                if (isid)
                {
                    fr = db.Table <FileRecord>().FirstOrDefault(x => x.FrId == path);
                }
                else
                {
                    fr = db.Table <FileRecord>().FirstOrDefault(x => x.FrPath == path);
                }
                if (fr == null)
                {
                    vm.Set(ARTag.lack);
                }
                else
                {
                    vm.Set(ARTag.success);
                    vm.data = fr;
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
Beispiel #27
0
        public ActionResultVM CreateApp(string password)
        {
            var vm = new ActionResultVM();

            try
            {
                if (GlobalTo.GetValue <bool>("Safe:IsDev"))
                {
                    if (!string.IsNullOrWhiteSpace(password) && password == GlobalTo.GetValue("Safe:CreateAppPassword"))
                    {
                        vm = SQLiteBase.CreateApp();
                    }
                    else
                    {
                        vm.Set(ARTag.unauthorized);
                        vm.msg = "密码错误";
                    }
                }
                else
                {
                    vm.Set(ARTag.refuse);
                }
            }
            catch (Exception ex)
            {
                vm.Set(ex);
                ConsoleTo.Log(ex);
            }

            return(vm);
        }
Beispiel #28
0
        /// <summary>
        /// 创建App
        /// </summary>
        /// <returns></returns>
        public static ActionResultVM CreateApp(string skName = null, string skRemark = null)
        {
            var vm = new ActionResultVM();

            try
            {
                using var db = new SQLiteConnection(SQLiteConn);
                db.CreateTable <SysKey>();

                var mo = new SysKey()
                {
                    SkAppId           = Core.UniqueTo.LongId().ToString(),
                    SkAppKey          = Core.UniqueTo.LongId().ToString() + Core.UniqueTo.LongId().ToString(),
                    SkCreateTime      = DateTime.Now,
                    SkName            = skName == null ? "默认": skName,
                    SkToken           = Core.CalcTo.MD5(Core.UniqueTo.LongId().ToString()),
                    SkTokenExpireTime = DateTime.Now.AddMinutes(GlobalTo.GetValue <int>("Safe:TokenExpired")),
                    SkRemark          = skRemark == null ? "系统自动生成": skRemark
                };

                int num = db.Insert(mo);

                vm.Set(num > 0);
                vm.data = mo;
            }
            catch (Exception ex)
            {
                vm.Set(ex);
            }

            return(vm);
        }
        public ActionResultVM SaveSysMenu(SysMenu mo, string savetype)
        {
            var vm = new ActionResultVM();

            if (string.IsNullOrWhiteSpace(mo.SmPid))
            {
                mo.SmPid = Guid.Empty.ToString();
            }
            using (var db = new ContextBase())
            {
                if (savetype == "add")
                {
                    mo.SmId = Guid.NewGuid().ToString();
                    db.SysMenu.Add(mo);
                }
                else
                {
                    db.SysMenu.Update(mo);
                }
                int num = db.SaveChanges();

                vm.Set(num > 0);
            }

            //清理缓存
            Core.CacheTo.Remove(Func.Common.GlobalCacheKey.SysMenu);

            return(vm);
        }
Beispiel #30
0
        public ActionResultVM SaveSysButton(SysButton mo, string savetype)
        {
            var vm = new ActionResultVM();

            if (string.IsNullOrWhiteSpace(mo.SbPid))
            {
                mo.SbPid = Guid.Empty.ToString();
            }
            if (mo.SbBtnHide == null)
            {
                mo.SbBtnHide = -1;
            }

            if (savetype == "add")
            {
                mo.SbId = Guid.NewGuid().ToString();
                db.SysButton.Add(mo);
            }
            else
            {
                db.SysButton.Update(mo);
            }

            int num = db.SaveChanges();

            vm.Set(num > 0);

            //清理缓存
            Core.CacheTo.Remove(Application.CommonService.GlobalCacheKey.SysButton);

            return(vm);
        }