public ActionResult ConfirmFile(string FileType, string ArticleKey, string CacheFileNames) { List <string> noErrorImg = new List <string>(); int status = 1; string msg = ""; string article_cachefile_root = Path.Combine(OctOcean.Utils.OctOceanGlobal.Config.FileRoot_Cache_Image, ArticleKey); //判断目标路径是否存在 string article_sysfile_root = Path.Combine(OctOcean.Utils.OctOceanGlobal.Config.FileRoot_Web_Image, ArticleKey); if (!Directory.Exists(article_sysfile_root)) { Directory.CreateDirectory(article_sysfile_root); } ; string[] farr = CacheFileNames.Split(new char[] { ':' }, StringSplitOptions.RemoveEmptyEntries); OctOcean.DataService.Pri_ArticleImage_Dal imgdal = new DataService.Pri_ArticleImage_Dal(); foreach (string fn in farr) { try { string fullname = Path.Combine(article_cachefile_root, fn); if (System.IO.File.Exists(fullname)) { System.IO.File.Copy(fullname, Path.Combine(article_sysfile_root, fn), true); //插入到图片表里面 imgdal.InsertPri_ArticleImage(new Entity.Pri_ArticleImage_Entity() { ArticleKey = ArticleKey, Height = 0, Width = 0, ImgName = fn, ImgKey = Path.GetFileNameWithoutExtension(fn), Src = $"{OctOceanGlobal.Config.UrlRoot_Web_Image}/{ArticleKey}/{fn}", UpdateTime = DateTime.Now }); noErrorImg.Add(fn); } } catch (Exception ex) { status = 4; msg += $"文件复制错误,文件名:{fn},异常信息:{ex.Message};\n"; } } return(Json(new { status = status, msg = msg })); }
//public IActionResult Index() //{ // string con = _iconfiguration.GetConnectionString("defaultConnStr"); // return View(); //} /// <summary> /// 定时自动保存文章到Draft和Temp中去 /// </summary> /// <param name="ArticleKey"></param> /// <param name="ArticleTitle"></param> /// <param name="ArticleCategory"></param> /// <param name="ContentText"></param> /// <param name="ArticleTag"></param> /// <param name="ArticleDesc"></param> /// <param name="AidStyle"></param> /// <returns></returns> public object Save(string ArticleKey, string ArticleTitle, string ArticleCategory, string ContentText, string ArticleTag, string ArticleDesc, string AidStyle) { int _status = 0; string _msg = string.Empty; int savecount = 0; //只用判断标题、样式、和内容 if (ContentText != null) { var _cont = ContentText.Replace("<p>", "").Replace("<br>", "").Replace("</p>", "").Replace("</br>", ""); //去掉自带的样式 if (string.IsNullOrWhiteSpace(_cont)) { ContentText = ""; } } if (string.IsNullOrWhiteSpace(ArticleTitle) && string.IsNullOrWhiteSpace(ContentText) && string.IsNullOrWhiteSpace(ArticleDesc) && string.IsNullOrWhiteSpace(AidStyle)) { _status = 3; _msg = "未提交数据"; } else { ContentText = new DataService.Pri_ArticleImage_Dal().ReplaceImagesPlaceholder(ContentText, ArticleKey); //将数据存入到Temp中去 OctOcean.DataService.Pri_ArticleDraft_Temp_Dal tempdal = new DataService.Pri_ArticleDraft_Temp_Dal(); try { int oi = tempdal.InsertPri_ArticleDraft_Temp(new Entity.Pri_ArticleDraft_Temp_Entity() { ArticleKey = ArticleKey, ArticleTag = ArticleTag ?? "", ArticleDesc = ArticleDesc ?? "", AidStyle = AidStyle ?? "", ArticleCategory = ArticleCategory ?? "", ArticleTitle = ArticleTitle ?? "", ContentText = ContentText ?? "", UpdateTime = DateTime.Now }); //如果有改动的话,就进行同步修改,注意:仍然要保存旧的删除的状态 if (oi > 0) { //查询一下之前旧的状态,是否删除 //删除的状态只能在执行删除或者还原的时候进行改变,此处仍然取旧的状态 var olddraft = draftdal.GetPri_ArticleDraft(ArticleKey); //只有有旧的记录才更新 if (olddraft != null) { //必须在Draft中有这条记录修改才能生效,也就是说,只有点了保存按钮,产生了数据,才能够和temp数据进行关联,这样的话可以减少草稿内容(比如测试、或者打开页面没有做任何事情)的产生。 draftdal.UpdatePri_ArticleDraft(new Entity.Pri_ArticleDraft_Entity() { ArticleKey = ArticleKey, ArticleTag = ArticleTag ?? "", ArticleDesc = ArticleDesc ?? "", AidStyle = AidStyle ?? "", ArticleCategory = ArticleCategory ?? "", ArticleTitle = ArticleTitle ?? "", ContentText = ContentText ?? "", DelStatus = olddraft == null ? (byte)0 : olddraft.DelStatus, UpdateTime = DateTime.Now }); } } //查询历史总次数 savecount = tempdal.GetSaveTempCountByArticleKey(ArticleKey); _status = 1; } catch (Exception ex) { _status = 4; _msg = ex.Message; } } return(new { status = _status, msg = _msg, ak = ArticleKey, sc = savecount }); }