|
|
|
@ -835,16 +835,57 @@ public class BaseServices<TEntity, TEntityDto, TInsertDto, TEditDto> : IBaseServ |
|
|
|
|
|
|
|
|
|
return ServiceResult<ExcelData>.OprateSuccess("导入成功!"); |
|
|
|
|
} |
|
|
|
|
public async virtual Task<ServiceResult<string>> DownloadExcel() |
|
|
|
|
public virtual async Task<ServiceResult<string>> DownloadExcel(string menuName) |
|
|
|
|
{ |
|
|
|
|
var physicsPath = $"{Environment.CurrentDirectory}{Path.DirectorySeparatorChar}wwwroot"; |
|
|
|
|
var path = $"{$"{Path.DirectorySeparatorChar}files{Path.DirectorySeparatorChar}ExcelTemplate{Path.DirectorySeparatorChar}"}"; |
|
|
|
|
if (!Directory.Exists(physicsPath + path)) |
|
|
|
|
Directory.CreateDirectory(physicsPath + path); |
|
|
|
|
|
|
|
|
|
var tableNmae = string.Empty; |
|
|
|
|
Type entityType = typeof(TEntity); |
|
|
|
|
var fileName = entityType.GetEntityTableName() + ".xlsx"; |
|
|
|
|
var result = ServiceResult<string>.OprateSuccess(fileName, physicsPath + path + fileName); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var sql = $@"SELECT Row_Number ()
|
|
|
|
|
OVER (ORDER BY CONVERT (INT, rowNum), CONVERT (INT, colNum)) |
|
|
|
|
sortNum, |
|
|
|
|
field, |
|
|
|
|
[dbo].[FLangKeyToValue] (mkey, 1, label) |
|
|
|
|
label, |
|
|
|
|
dbo.FS_GetdataSourceBySet |
|
|
|
|
(dataSource, APIDataSourceType, Ghrs_PageSettingEdit.APIDataSourceID) |
|
|
|
|
dataSource, |
|
|
|
|
required, |
|
|
|
|
dataType, |
|
|
|
|
CONVERT (NVARCHAR (1000), '') |
|
|
|
|
commentText -- StaffWith |
|
|
|
|
, |
|
|
|
|
elementType |
|
|
|
|
+ CASE WHEN multipleSelect = 'true' THEN '_multiple' ELSE '' END |
|
|
|
|
elementType -- 增加多选判断 |
|
|
|
|
FROM Ghrs_PageSettingEdit |
|
|
|
|
WHERE IsEnable = 1 |
|
|
|
|
AND elementType NOT IN ('FnKey', 'PageGroup') |
|
|
|
|
AND pageNo = '{menuName}' |
|
|
|
|
--and editable = 'true' |
|
|
|
|
AND defaultHidden ! = 'true' |
|
|
|
|
AND elementType ! = 'FileUpload' |
|
|
|
|
AND dataType ! = ''";
|
|
|
|
|
|
|
|
|
|
var columns = await Db.Ado.SqlQueryAsync<QueryExportColumn>(sql); |
|
|
|
|
|
|
|
|
|
var dt = await Db.Ado.GetDataTableAsync("SELECT * FROM " + entityType.GetEntityTableName() + " WHERE IsEnable=1"); |
|
|
|
|
|
|
|
|
|
//columns = columns.WhereIF(param.exportSet.ExFields.Any(), x => param.exportSet.ExFields.Contains(x.field)).ToList(); |
|
|
|
|
|
|
|
|
|
await ReportHelper.ImportTemplate(Db, columns, dt, menuName); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//var physicsPath = $"{Environment.CurrentDirectory}{Path.DirectorySeparatorChar}wwwroot"; |
|
|
|
|
//var path = $"{$"{Path.DirectorySeparatorChar}files{Path.DirectorySeparatorChar}ExcelTemplate{Path.DirectorySeparatorChar}"}"; |
|
|
|
|
//if (!Directory.Exists(physicsPath + path)) |
|
|
|
|
// Directory.CreateDirectory(physicsPath + path); |
|
|
|
|
|
|
|
|
|
//Type entityType = typeof(TEntity); |
|
|
|
|
//var fileName = entityType.GetEntityTableName() + ".xlsx"; |
|
|
|
|
//var result = ServiceResult<string>.OprateSuccess(fileName, physicsPath + path + fileName); |
|
|
|
|
var result = ServiceResult<string>.OprateSuccess(null, null); |
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|