using System.Collections.Generic; using System.Linq; using CommonHelper; using CommonHelper.Format; using GasolineBlend.Entity; using Pissa.Service.Extend; using SqlSugar; namespace Pissa.Service.DbService { public class SysService:Repository { /// /// 获取字典信息 /// /// /// public List GetDictItems(string dictCode) { var res = Context.Queryable() .Where(a => a.DictId == SqlFunc.Subqueryable().Where(b => b.DictCode == dictCode) .Select(b => b.Id)) .OrderBy(a=>a.SortOrder) .ToList(); return res; } /// /// 获取ipc /// /// 年份 /// 父编码 /// public List GetIpcClass(int year, string parentCode = "") { var res = Context.Queryable() .Where(a => a.Year == year) .Where(a => a.ParentCode == parentCode) .OrderBy(a => a.Sort1).OrderBy(a => a.Sort2) .ToList(); return res; } /// /// 获取cpc /// /// 父编码 /// public List GetCpcClass( string parentCode = "") { var res = Context.Queryable() .Where(a => a.ParentCode == parentCode) .WhereIF(parentCode.IsNullOrEmpty(), a=>a.Code.Length ==1) .OrderBy(a=>a.Sort1).OrderBy(a => a.Sort2) .ToList(); return res; } /// /// 获取产业分类 /// /// public List GetStraindustryTree() { var data = Context.Queryable().OrderBy(a => a.Code).ToList(); var tree = TreeHelper.GenerateIviewTree(data, a => a.Code, a => a.Code.Contains(".") ? a.Code.Substring(0, a.Code.IndexOf(".")) : null, a => a.Code, a=>a.Name ).ToList(); return tree; } /// /// 获取国民经济行业分类 /// /// public List GetEcoindustryTree() { var data = Context.Queryable().OrderBy(a=>a.Code).ToList(); var tree = TreeHelper.GenerateIviewTree(data, a => a.Code, a =>a.Code.Length>3?a.Code.Substring(0,a.Code.Length-1):(a.Code.Length==3?a.Code.Substring(0,1): null), a => a.Code, a => a.Name).ToList(); return tree; } /// /// 插入搜索记录 /// /// /// public bool AddPatentSearchLog(SysPatentSearchLog model) { var id = Context.Insertable(model).ExecuteReturnIdentity(); return true; } /// /// 获取搜索记录分页 /// /// /// /// /// public Page GetPatentSearchLog(string userId, int pageIndex, int pageSize,string searchType) { if (pageIndex <= 0) pageIndex = 1; if (pageSize <= 0) pageSize = 20; var page = Context.Queryable() .Where(a => a.UserId == userId) .WhereIF(!string.IsNullOrWhiteSpace(searchType),a=>a.SearchType == searchType) .OrderBy(a => a.SearchTime, OrderByType.Desc) .ToPage(pageIndex, pageSize); return page; } /// /// 洛迦诺分类 /// /// public List GetLoccn() { var data = Context.Queryable().OrderBy(a => a.Sort1).OrderBy(a=>a.Sort2).ToList(); var tree = TreeHelper.GenerateIviewTree(data, a => a.Code, a => a.ParentCode, a => a.Code, a => a.Desc).ToList(); return tree; } } }