using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading.Tasks; using System.Web.Mvc; using CommonHelper; using GasolineBlend.Entity; using Pissa.Service.DbService; using Quartz.Util; using SqlSugar; namespace GasolineBlend.Controllers { public class SysController : BaseController { private SysService _countryService = new SysService(); private SysHotWordService _hotWordService = new SysHotWordService(); /// /// 获取国家信息 /// /// [HttpPost] public ActionResult GetCountry() { var res = _countryService.GetListAsync(null, a => a.Sort, OrderByType.Asc, false).Result; return SuccessNoShow(data:res); } /// /// 获取主要国家信息 /// /// [HttpPost] public ActionResult GetCountryMain() { List listNameCH = new List(); string[] strNameCh = {"中国", "美国", "日本", "韩国", "德国","法国","意大利", "瑞典", "芬兰", "挪威", "英国", "瑞士", "俄罗斯", "印度", "巴西" }; listNameCH = strNameCh.ToList(); var res = _countryService.GetListAsync(a=>listNameCH.Contains(a.NameCh), a => a.Sort, OrderByType.Asc, false).Result; return SuccessNoShow(data: res); } /// /// 获取字典信息 /// /// /// [HttpPost] public ActionResult GetDictItems(string dictCode) { var res = _countryService.GetDictItems(dictCode); return SuccessNoShow(data: res); } /// /// 获取ipc /// /// 年份 /// 父编码 /// [HttpPost] public ActionResult GetIpcClass(int year=2021, string parentCode = "") { var res = _countryService.GetIpcClass(year,parentCode); return SuccessNoShow(data: res); } /// /// 获取cpc /// /// 父编码 /// [HttpPost] public ActionResult GetCpcClass(string parentCode = "") { var res = _countryService.GetCpcClass(parentCode); return SuccessNoShow(data: res); } /// /// 获取产业分类 /// /// [HttpPost] public ActionResult GetStraindustryTree() { var res = _countryService.GetStraindustryTree(); return SuccessNoShow(data: res); } /// /// 获取国民经济行业分类 /// /// [HttpPost] public ActionResult GetEcoindustryTree() { var res = _countryService.GetEcoindustryTree(); return SuccessNoShow(data: res); } /// /// 获取轮播图 /// /// 是否展示 /// [HttpPost] public ActionResult GetCarouselImg(bool? isDisplay = null) { var res = _countryService.Context.Queryable() .WhereIF(isDisplay != null, a => a.IsDisplay == isDisplay) .OrderBy(a => a.Sort) .ToList(); return SuccessNoShow(data: res); } /// /// 上传轮播图 /// /// /// /// /// [HttpPost] public ActionResult AddCarouselImg(string imgName, int sort = 0, bool isDisplay = true) { //LogHelper.Error("文件名Test:"+imgName); if (HttpContext.Request.Files.Count == 0) return Error("上传文件的数量是0"); var file = Request.Files[0]; if (file == null) return Error("请上传图像文件"); if (imgName.IsNullOrWhiteSpace()) imgName = file.FileName; if (!Directory.Exists(Server.MapPath("/CarouselImg"))) Directory.CreateDirectory(Server.MapPath("/CarouselImg")); string filePath = $"/CarouselImg/{Guid.NewGuid()}{Path.GetExtension(file.FileName)}"; string absolutePath = Server.MapPath(filePath); file.SaveAs(absolutePath); var model = new SysCarouselImg() { Name = imgName, Sort = sort, IsDisplay = isDisplay, CreateUserId = OperatorProvider.Instance?.Current?.UserId??"0", Url = filePath }; var res = _countryService.Context.Insertable(model).ExecuteReturnIdentity(); return Success(data: res); } /// /// 修改 /// /// /// /// /// /// [HttpPost] public ActionResult UpdateCarouselImg(int id,string imgName, int? sort = null, bool? isDisplay = null) { var res = _countryService.Context.Updateable() .SetColumns(a => new SysCarouselImg() { UpdateTime = DateTime.Now}) .SetColumnsIF(!string.IsNullOrWhiteSpace(imgName),a=>a.Name==imgName) .SetColumnsIF(sort!=null,a=>a.Sort==(int)sort) .SetColumnsIF(isDisplay != null,a=>a.IsDisplay == (bool)isDisplay) .Where(a => a.Id == id) .ExecuteCommand(); return Success(); } /// /// 删除 /// /// /// [HttpPost] public ActionResult DeleteCarouselImg(int id) { var img = _countryService.Context.Queryable() .Where(a => a.Id == id) .First(); if (img == null) return Error("找不到该图片"); var res = _countryService.Context.Deleteable() .Where(a => a.Id == id) .ExecuteCommand(); System.IO.File.Delete(Server.MapPath(img.Url)); return res > 0 ? Success() : Error(); } /// /// 洛迦诺分类 /// /// [HttpPost] public ActionResult GetLoccn() { var res = _countryService.GetLoccn(); return SuccessNoShow(data: res); } #region SysHotwords [HttpPost] public async Task AddHotWord(SysHotWord model) { model.CreateUserId = OperatorProvider.Instance?.Current?.UserId; var res = await _hotWordService.AddAsync(model); return Success(); } [HttpPost] public async Task DelHotWord(int id) { var res = await _hotWordService.DeleteAsync(a=>a.Id == id); return Success(); } [HttpPost] public async Task UpdateHotWord(SysHotWord model) { model.CreateUserId = OperatorProvider.Instance?.Current?.UserId; var res = await _hotWordService.UpdateAsync(model); return Success(); } [HttpPost] public async Task GetHotWordList() { var res = await _hotWordService.GetListAsync(null, a => a.Sort, OrderByType.Asc); return SuccessNoShow(data:res); } #endregion } }