diff --git a/Tiobon.Core.Api/Controllers/CommonController.cs b/Tiobon.Core.Api/Controllers/CommonController.cs
index eed1cece..8143fe9f 100644
--- a/Tiobon.Core.Api/Controllers/CommonController.cs
+++ b/Tiobon.Core.Api/Controllers/CommonController.cs
@@ -91,19 +91,6 @@ public class CommonController : BaseApiController
}
#endregion
- #region 下载导入模板Excel
- ///
- /// 下载导入模板Excel
- ///
- ///
- ///
- [HttpPost, Route("DownImportTemplate")]
- public async Task> DownImportTemplateAsync([FromBody] QueryExport param)
- {
- return await _commonServices.DownImportTemplateAsync(param);
- }
- #endregion
-
#region Excel导入
///
/// Excel导入
diff --git a/Tiobon.Core.Api/Tiobon.Core.xml b/Tiobon.Core.Api/Tiobon.Core.xml
index de62cc2c..4f53e2fc 100644
--- a/Tiobon.Core.Api/Tiobon.Core.xml
+++ b/Tiobon.Core.Api/Tiobon.Core.xml
@@ -281,13 +281,6 @@
-
-
- 下载导入模板Excel
-
-
-
-
Excel导入
diff --git a/Tiobon.Core.DataAccess/ReportHelper.cs b/Tiobon.Core.DataAccess/ReportHelper.cs
index 97f88b79..f3ff949e 100644
--- a/Tiobon.Core.DataAccess/ReportHelper.cs
+++ b/Tiobon.Core.DataAccess/ReportHelper.cs
@@ -16,6 +16,7 @@ using System.Text;
using System.Threading.Tasks;
using Tiobon.Core.Common;
using Tiobon.Core.Common.Extensions;
+using Tiobon.Core.Common.Helper;
using Tiobon.Core.Model.Models;
namespace Tiobon.Core.DataAccess;
@@ -107,19 +108,24 @@ public static class ReportHelper
#endregion
- public static async Task ImportTemplate(ISqlSugarClient Db, List tableColumn, DataTable dt, string menuName)
+ public static string ImportTemplate(ISqlSugarClient Db, List tableColumn, DataTable dt, string menuName)
{
//生成表格
try
{
-
+ tableColumn.Insert(0, new QueryExportColumn()
+ {
+ field = "SerialNumber",
+ label = "序号"
+ });
//生成文件至文件服务器
var fid = SnowFlakeSingle.Instance.NextId();
- var filepath = $"{$"{Environment.CurrentDirectory}{Path.DirectorySeparatorChar}wwwroot{Path.DirectorySeparatorChar}files{Path.DirectorySeparatorChar}import{Path.DirectorySeparatorChar}{fid}{Path.DirectorySeparatorChar}"}";
+ var filepath = $"{$"{Environment.CurrentDirectory}{Path.DirectorySeparatorChar}wwwroot{Path.DirectorySeparatorChar}files{Path.DirectorySeparatorChar}ExcelTemplate{Path.DirectorySeparatorChar}{menuName}{Path.DirectorySeparatorChar}"}";
if (!Directory.Exists(filepath))
Directory.CreateDirectory(filepath);
- var fname = $"{menuName}.xlsx";
+
+ var fname = $"{menuName}_{DateTimeHelper.ConvertToSecondString1(DateTime.Now)}.xlsx";
var sheetName = "导入数据";
IWorkbook workbook = new XSSFWorkbook();
@@ -243,17 +249,17 @@ public static class ReportHelper
var dataSourceLists = GetDataSourceLists(Db, field, dataSource);
- var fields = new List()
- {
- "InOrOut",
- "ResumeType",
- "ImportanceDegree",
- "YearHumanId",
- "TitleId"
- };
+ //var fields = new List()
+ //{
+ // "InOrOut",
+ // "ResumeType",
+ // "ImportanceDegree",
+ // "YearHumanId",
+ // "TitleId"
+ //};
try
{
- if (dataSourceLists.Any() && fields.Contains(field))
+ if (dataSourceLists.Any())
{
//设置数据源的值
IDataValidationConstraint dvConstraint1 = sheet.GetDataValidationHelper().CreateExplicitListConstraint(dataSourceLists.Where(x => x.name.IsNotEmptyOrNull()).Select(x => x.name).ToArray());
@@ -362,7 +368,7 @@ public static class ReportHelper
}
}
- for (int rowNum = 2; rowNum <= sheet.LastRowNum; rowNum++)
+ for (int rowNum = 1; rowNum <= sheet.LastRowNum; rowNum++)
{
IRow currentRow = sheet.GetRow(rowNum);
diff --git a/Tiobon.Core.IServices/ICommonServices.cs b/Tiobon.Core.IServices/ICommonServices.cs
index d070370e..2f070fcf 100644
--- a/Tiobon.Core.IServices/ICommonServices.cs
+++ b/Tiobon.Core.IServices/ICommonServices.cs
@@ -26,9 +26,7 @@ public interface ICommonServices : IBaseServices>
Task> GetSelectAsync(string type, string keyWords);
- Task> ExportExcelAsync(QueryExport param);
-
- Task> DownImportTemplateAsync(QueryExport param);
+ Task> ExportExcelAsync(QueryExport param);
Task> ImportExcelAsync(IFormFile file, string menuName, int langId, int userId);
diff --git a/Tiobon.Core.Services/BASE/BaseServices.cs b/Tiobon.Core.Services/BASE/BaseServices.cs
index f0206552..2f41b0e6 100644
--- a/Tiobon.Core.Services/BASE/BaseServices.cs
+++ b/Tiobon.Core.Services/BASE/BaseServices.cs
@@ -961,13 +961,8 @@ public class BaseServices : IBaseServ
return ServiceResult.OprateSuccess("导入成功!");
}
- public virtual async Task> DownloadExcel(string menuName)
+ public async Task> QueryExportColumn(string menuName)
{
-
- var tableNmae = string.Empty;
- Type entityType = typeof(TEntity);
-
-
var sql = $@"SELECT Row_Number ()
OVER (ORDER BY CONVERT (INT, rowNum), CONVERT (INT, colNum))
sortNum,
@@ -994,24 +989,22 @@ public class BaseServices : IBaseServ
AND elementType ! = 'FileUpload'
AND dataType ! = ''";
- var columns = await Db.Ado.SqlQueryAsync(sql);
+ return await Db.Ado.SqlQueryAsync(sql);
+ }
+
+ public virtual async Task> DownloadExcel(string menuName)
+ {
+
+ var tableNmae = string.Empty;
+ Type entityType = typeof(TEntity);
+ var columns = await QueryExportColumn(menuName);
var dt = await Db.Ado.GetDataTableAsync("SELECT TOP 1 * FROM " + entityType.GetEntityTableName() + " WHERE IsEnable=1");
var MenuName = await Db.Ado.GetStringAsync($"SELECT MenuName FROM Ghrs_Menu WHERE MenuNo = '{menuName}'");
//columns = columns.WhereIF(param.exportSet.ExFields.Any(), x => param.exportSet.ExFields.Contains(x.field)).ToList();
- var path = 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.OprateSuccess(fileName, physicsPath + path + fileName);
+ var path = ReportHelper.ImportTemplate(Db, columns, dt, menuName);
var result = ServiceResult.OprateSuccess($"{MenuName}_{DateTimeHelper.ConvertToSecondString1(DateTime.Now)}.xlsx", path);
return result;
}
@@ -1427,7 +1420,7 @@ ORDER BY SortNo ASC";
default:
break;
}
-
+
return conditions;
}
public string DealConditions1(string conditions, string name, string value)
diff --git a/Tiobon.Core.Services/CommonServices.cs b/Tiobon.Core.Services/CommonServices.cs
index 047a5c20..a4bd511a 100644
--- a/Tiobon.Core.Services/CommonServices.cs
+++ b/Tiobon.Core.Services/CommonServices.cs
@@ -2336,68 +2336,7 @@ public partial class CommonServices : BaseServices>, ICommon
return new ServiceResult() { Success = true, Message = "查询成功", Data = result, };
}
- #endregion
-
- #region Excel导入模板
- ///
- /// Excel导入模板
- ///
- ///
- ///
- public async Task> DownImportTemplateAsync(QueryExport param)
- {
- var result = new QueryExportReturn();
-
- var tableNmae = string.Empty;
- var menuName = string.Empty;
- string sql = "select QueryProcedure, EditProcedure, IUDProcedure, MenuName from Ghrs_Menu where MenuNo='{0}'";
- sql = string.Format(sql, param.menuName);
- var dt = await Db.Ado.GetDataTableAsync(sql);
- if (dt.Rows.Count > 0)
- {
- string queryProcedure = dt.Rows[0]["QueryProcedure"].ToString();
- menuName = dt.Rows[0]["MenuName"].ToString();
-
- string[] aaa = queryProcedure.Split('/');
- tableNmae = aaa[1];
- }
-
- 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 = 'F_Training_Course'
- --and editable = 'true'
- AND defaultHidden ! = 'true'
- AND elementType ! = 'FileUpload'
- AND dataType ! = ''";
-
- var columns = await Db.Ado.SqlQueryAsync(sql);
- columns = columns.WhereIF(param.exportSet.ExFields.Any(), x => param.exportSet.ExFields.Contains(x.field)).ToList();
-
- dt = await Db.Ado.GetDataTableAsync("SELECT * FROM " + tableNmae + " WHERE IsEnable=1");
- await ReportHelper.ImportTemplate(Db, columns, dt, menuName);
-
-
- return new ServiceResult() { Success = true, Message = "查询成功", Data = result, };
- }
- #endregion
+ #endregion
#region Excel数据导入