/* * 系统设置 */ using System; using System.Web; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using MySystem.BsModels; using Library; using LitJson; using MySystemLib; namespace MySystem.Areas.Admin.Controllers { [Area("Admin")] [Route("Admin/[controller]/[action]")] public class SystemSetController : BaseController { public SystemSetController(IHttpContextAccessor accessor, ILogger logger, IOptions setting) : base(accessor, logger, setting) { OtherMySqlConn.connstr = ConfigurationManager.AppSettings["BsSqlConnStr"].ToString(); } #region 系统设置列表 /// /// 根据条件查询系统设置列表 /// /// public IActionResult Index(SystemSet data, string right) { ViewBag.RightInfo = RightInfo; ViewBag.right = right; string Condition = ""; Condition += "WebUrl:\"" + data.WebUrl + "\","; Condition += "WebName:\"" + data.WebName + "\","; if (!string.IsNullOrEmpty(Condition)) { Condition = Condition.TrimEnd(','); Condition = ", where: {" + Condition + "}"; } ViewBag.Condition = Condition; return View(); } #endregion #region 根据条件查询系统设置列表 /// /// 系统设置列表 /// /// public JsonResult IndexData(SystemSet data, int page = 1, int limit = 30) { Dictionary Fields = new Dictionary(); Fields.Add("WebUrl", "2"); //网站地址 Fields.Add("WebName", "2"); //网站名称 Dictionary obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).IndexData("SystemSet", Fields, "Id desc", "False", page, limit); //List> diclist = obj["data"] as List>; //foreach (Dictionary dic in diclist) //{ //} return Json(obj); } #endregion #region 增加系统设置 /// /// 增加或修改系统设置信息 /// /// public IActionResult Add() { ViewBag.right = _accessor.HttpContext.Request.Query["right"]; return View(); } #endregion #region 增加系统设置 /// /// 增加或修改系统设置信息 /// /// [HttpPost] public string Add(SystemSet data) { Dictionary Fields = new Dictionary(); Fields.Add("WebUrl", data.WebUrl); //网站地址 Fields.Add("WebName", data.WebName); //网站名称 Fields.Add("IndexKeyword", data.IndexKeyword); //首页关键词 Fields.Add("IndexDescription", data.IndexDescription); //首页简介 Fields.Add("UploadExt", data.UploadExt); //允许上传类型 Fields.Add("UploadMaxSize", data.UploadMaxSize); //允许最大上传 Fields.Add("UploadAutoZoom", data.UploadAutoZoom); //自动缩略图 Fields.Add("UploadAutoZoomWidth", data.UploadAutoZoomWidth); //自动缩略图宽 Fields.Add("UploadAutoZoomHeight", data.UploadAutoZoomHeight); //自动缩略图高 Fields.Add("UploadAutoWater", data.UploadAutoWater); //自动水印 Fields.Add("UploadWaterPosition", data.UploadWaterPosition); //水印位置 Fields.Add("UploadWaterPath", data.UploadWaterPath); //水印图片 Fields.Add("RightInfo", data.RightInfo); //版权信息 Fields.Add("Address", data.Address); //企业地址 Fields.Add("Phone", data.Phone); //联系电话 Fields.Add("WebStatCode", data.WebStatCode); //网站统计代码 Fields.Add("Logo", data.Logo); //Logo图片 int Id = new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Add("SystemSet", Fields, 0); AddSysLog(data.Id.ToString(), "SystemSet", "add"); bsdb.SaveChanges(); return "success"; } #endregion #region 修改系统设置 /// /// 增加或修改系统设置信息 /// /// public IActionResult Edit(int Id = 0) { ViewBag.right = _accessor.HttpContext.Request.Query["right"]; SystemSet editData = bsdb.SystemSet.FirstOrDefault() ?? new SystemSet(); ViewBag.data = editData; return View(); } #endregion #region 修改系统设置 /// /// 增加或修改系统设置信息 /// /// [HttpPost] public string Edit(SystemSet data) { Dictionary Fields = new Dictionary(); Fields.Add("WebUrl", data.WebUrl); //网站地址 Fields.Add("WebName", data.WebName); //网站名称 Fields.Add("IndexKeyword", data.IndexKeyword); //首页关键词 Fields.Add("IndexDescription", data.IndexDescription); //首页简介 Fields.Add("UploadExt", data.UploadExt); //允许上传类型 Fields.Add("UploadMaxSize", data.UploadMaxSize); //允许最大上传 Fields.Add("UploadAutoZoom", data.UploadAutoZoom); //自动缩略图 Fields.Add("UploadAutoZoomWidth", data.UploadAutoZoomWidth); //自动缩略图宽 Fields.Add("UploadAutoZoomHeight", data.UploadAutoZoomHeight); //自动缩略图高 Fields.Add("UploadAutoZoomQuality", data.UploadAutoZoomQuality); //自动缩略图质量 Fields.Add("UploadAutoWater", data.UploadAutoWater); //自动水印 Fields.Add("UploadWaterPosition", data.UploadWaterPosition); //水印位置 Fields.Add("UploadWaterPath", data.UploadWaterPath); //水印图片 Fields.Add("RightInfo", data.RightInfo); //版权信息 Fields.Add("Address", data.Address); //企业地址 Fields.Add("Phone", data.Phone); //联系电话 Fields.Add("WebStatCode", data.WebStatCode); //网站统计代码 Fields.Add("Logo", data.Logo); //Logo图片 Fields.Add("StartAdPhoto", data.StartAdPhoto); //App启动图片 Fields.Add("UploadOss", data.UploadOss); SystemSet check = bsdb.SystemSet.FirstOrDefault(); if (check == null) { new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Add("SystemSet", Fields, 0); } else { new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Edit("SystemSet", Fields, data.Id); } AddSysLog(data.Id.ToString(), "SystemSet", "update"); bsdb.SaveChanges(); return "success"; } public IActionResult AppStart() { ViewBag.right = _accessor.HttpContext.Request.Query["right"]; return View(); } [HttpPost] public string AppStart(SystemSet data) { Dictionary Fields = new Dictionary(); Fields.Add("StartAdPhoto", data.StartAdPhoto); //App启动图片 SystemSet check = bsdb.SystemSet.FirstOrDefault(); if (check == null) { new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Add("SystemSet", Fields, 0); } else { new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Edit("SystemSet", Fields, data.Id); } AddSysLog(data.Id.ToString(), "SystemSet", "AppStart"); FileUpdateInfo fileUpdateInfo = bsdb.FileUpdateInfo.FirstOrDefault(m => m.FileName == data.StartAdPhoto); if (fileUpdateInfo == null) { string Path = data.StartAdPhoto.Substring(0, data.StartAdPhoto.LastIndexOf("/") + 1); if (Path.Contains("static")) { Path = Path.Substring(Path.IndexOf("static")); } string FileName = data.StartAdPhoto.Substring(data.StartAdPhoto.LastIndexOf("/") + 1); bsdb.FileUpdateInfo.Add(new FileUpdateInfo() { CreateDate = DateTime.Now, UpdateDate = DateTime.Now, FileName = FileName, Path = Path, VersionNum = 1, }); } bsdb.SaveChanges(); return "success"; } public JsonResult UploadPhoto([FromForm] IFormCollection rf) { IFormFile imgFile = rf.Files[0]; SystemSet set = bsdb.SystemSet.FirstOrDefault() ?? new SystemSet(); string path = MySystemLib.SystemPublicFuction.GetPicPath(imgFile, "skin/app/default/static/images/", function.ReadInstance("/WebRootPath.txt"), "startadphoto" + DateTime.Now.ToString("yyMMddHHmm")); return Json(new AppResultJson() { Status = "1", Info = "", Data = path.Replace("wwwroot/", "") }); } #endregion #region 删除系统设置信息 /// /// 删除系统设置信息 /// /// public string Delete(string Id) { string[] idlist = Id.Split(new char[] { ',' }); AddSysLog(Id, "SystemSet", "del"); foreach (string subid in idlist) { int id = int.Parse(subid); new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Delete("SystemSet", id); } bsdb.SaveChanges(); return "success"; } #endregion #region 开启 /// /// 开启 /// /// public string Open(string Id) { string[] idlist = Id.Split(new char[] { ',' }); AddSysLog(Id, "SystemSet", "open"); foreach (string subid in idlist) { int id = int.Parse(subid); Dictionary Fields = new Dictionary(); Fields.Add("Status", 1); new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Edit("SystemSet", Fields, id); } bsdb.SaveChanges(); return "success"; } #endregion #region 关闭 /// /// 关闭 /// /// public string Close(string Id) { string[] idlist = Id.Split(new char[] { ',' }); AddSysLog(Id, "SystemSet", "close"); foreach (string subid in idlist) { int id = int.Parse(subid); Dictionary Fields = new Dictionary(); Fields.Add("Status", 0); new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Edit("SystemSet", Fields, id); } bsdb.SaveChanges(); return "success"; } #endregion #region 排序 /// /// 排序 /// /// public string Sort(int Id, int Sort) { new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).Sort("SystemSet", Sort, Id); AddSysLog(Id.ToString(), "SystemSet", "sort"); return "success"; } #endregion #region 导入数据 /// /// 导入数据 /// /// public string Import(string ExcelData) { ExcelData = HttpUtility.UrlDecode(ExcelData); JsonData list = JsonMapper.ToObject(ExcelData); for (int i = 1; i < list.Count; i++) { JsonData dr = list[i]; bsdb.SystemSet.Add(new SystemSet() { CreateDate = DateTime.Now, UpdateDate = DateTime.Now, }); bsdb.SaveChanges(); } AddSysLog("0", "SystemSet", "Import"); return "success"; } #endregion #region 导出Excel /// /// 导出Excel /// /// public JsonResult ExportExcel(SystemSet data) { Dictionary Fields = new Dictionary(); Fields.Add("WebUrl", "2"); //网站地址 Fields.Add("WebName", "2"); //网站名称 Dictionary obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.BsTables).IndexData("SystemSet", Fields, "Id desc", "False", 1, 20000, "", "", false); List> diclist = obj["data"] as List>; Dictionary result = new Dictionary(); result.Add("Status", "1"); result.Add("Info", "Excel报表-" + DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss") + ".xlsx"); result.Add("Obj", diclist); Dictionary ReturnFields = new Dictionary(); result.Add("Fields", ReturnFields); AddSysLog("0", "SystemSet", "ExportExcel"); return Json(result); } #endregion } }