using Attribute; using Model; using Model.Base; using Repository; using Service; using Microsoft.AspNetCore.Mvc; using Vo.Admin; using Common; namespace Services { /// /// APP页面模板Service业务层处理 /// [AppService(ServiceType = typeof(IAppProjectPageService), ServiceLifetime = LifeTime.Transient)] public class AppProjectPageService : BaseService, IAppProjectPageService { /// /// APP页面模板-列表 /// /// 参数请求体 /// 分页参数 /// 列表 public PagedInfo getAppProjectPageList([FromQuery] PagerInfo page, [FromQuery] AppProjectPage param) { //拼装查询条件 var predicate = Expressionable.Create(); predicate = predicate.AndIF(param.versionId > 0, m => m.versionId == param.versionId); predicate = predicate.AndIF(param.appId > 0, m => m.appId == param.appId); var response = Queryable() .Where(predicate.ToExpression()) .OrderByDescending(m => m.id) .ToPage(page); return response; } /// /// 获取目录下所有文件 /// /// 目录路径 public void getPageList(string directoryPath, int appId, int versionId) { var files = FileHelper.GetSystemFiles(directoryPath); foreach (var file in files) { var exists = GetFirst(m => m.moduleFile == file && m.appId == appId && m.versionId == versionId); if (exists == null) { Add(new AppProjectPage { moduleFile = file, appId = appId, versionId = versionId, createTime = DateTime.Now, updateTime = DateTime.Now }); } } } } }