⚡ 优化种子数据
This commit is contained in:
parent
df99da04fb
commit
9be0036b4e
@ -5,7 +5,6 @@ using Infrastructure.Extensions;
|
|||||||
using Infrastructure.Model;
|
using Infrastructure.Model;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using Microsoft.Extensions.Options;
|
using Microsoft.Extensions.Options;
|
||||||
using MiniExcelLibs;
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using ZR.Admin.WebApi.Extensions;
|
using ZR.Admin.WebApi.Extensions;
|
||||||
using ZR.Admin.WebApi.Filters;
|
using ZR.Admin.WebApi.Filters;
|
||||||
@ -179,85 +178,30 @@ namespace ZR.Admin.WebApi.Controllers
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// 初始化种子数据
|
/// 初始化种子数据
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="clean">是否清空数据</param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
[ApiExplorerSettings(IgnoreApi = true)]
|
|
||||||
[ActionPermissionFilter(Permission = "common")]
|
[ActionPermissionFilter(Permission = "common")]
|
||||||
[Log(BusinessType = BusinessType.INSERT, Title = "初始化数据")]
|
[Log(BusinessType = BusinessType.INSERT, Title = "初始化数据")]
|
||||||
public IActionResult InitSeedData()
|
public IActionResult InitSeedData(bool clean = false)
|
||||||
{
|
{
|
||||||
if (!WebHostEnvironment.IsDevelopment())
|
if (!WebHostEnvironment.IsDevelopment())
|
||||||
{
|
{
|
||||||
return ToResponse(ResultCode.FAIL, "导入数据失败");
|
return ToResponse(ResultCode.CUSTOM_ERROR, "导入数据失败");
|
||||||
}
|
}
|
||||||
var path = Path.Combine(WebHostEnvironment.WebRootPath, "data.xlsx");
|
var path = Path.Combine(WebHostEnvironment.WebRootPath, "data.xlsx");
|
||||||
//var sheetNames = MiniExcel.GetSheetNames(path);
|
//var sheetNames = MiniExcel.GetSheetNames(path);
|
||||||
SeedDataService seedDataService = new();
|
SeedDataService seedDataService = new();
|
||||||
|
var result = seedDataService.InitSeedData(path, clean);
|
||||||
var sysUser = MiniExcel.Query<SysUser>(path, sheetName: "user").ToList();
|
|
||||||
var result1 = seedDataService.InitUserData(sysUser);
|
|
||||||
|
|
||||||
var sysPost = MiniExcel.Query<SysPost>(path, sheetName: "post").ToList();
|
|
||||||
var result2 = seedDataService.InitPostData(sysPost);
|
|
||||||
|
|
||||||
var sysRole = MiniExcel.Query<SysRole>(path, sheetName: "role").ToList();
|
|
||||||
var result3 = seedDataService.InitRoleData(sysRole);
|
|
||||||
|
|
||||||
var sysUserRole = MiniExcel.Query<SysUserRole>(path, sheetName: "user_role").ToList();
|
|
||||||
var result4 = seedDataService.InitUserRoleData(sysUserRole);
|
|
||||||
|
|
||||||
var sysMenu = MiniExcel.Query<SysMenu>(path, sheetName: "menu").ToList();
|
|
||||||
var result5 = seedDataService.InitMenuData(sysMenu);
|
|
||||||
|
|
||||||
var sysConfig = MiniExcel.Query<SysConfig>(path, sheetName: "config").ToList();
|
|
||||||
var result6 = seedDataService.InitConfigData(sysConfig);
|
|
||||||
|
|
||||||
var sysRoleMenu = MiniExcel.Query<SysRoleMenu>(path, sheetName: "role_menu").ToList();
|
|
||||||
var result7 = seedDataService.InitRoleMenuData(sysRoleMenu);
|
|
||||||
|
|
||||||
var sysDict = MiniExcel.Query<SysDictType>(path, sheetName: "dict_type").ToList();
|
|
||||||
var result8 = seedDataService.InitDictType(sysDict);
|
|
||||||
|
|
||||||
var sysDictData = MiniExcel.Query<SysDictData>(path, sheetName: "dict_data").ToList();
|
|
||||||
var result9 = seedDataService.InitDictData(sysDictData);
|
|
||||||
|
|
||||||
var sysDept = MiniExcel.Query<SysDept>(path, sheetName: "dept").ToList();
|
|
||||||
var result10 = seedDataService.InitDeptData(sysDept);
|
|
||||||
|
|
||||||
var sysArticleCategory = MiniExcel.Query<ArticleCategory>(path, sheetName: "article_category").ToList();
|
|
||||||
var result11 = seedDataService.InitArticleCategoryData(sysArticleCategory);
|
|
||||||
|
|
||||||
var sysTask = MiniExcel.Query<SysTasks>(path, sheetName: "task").ToList();
|
|
||||||
var result12 = seedDataService.InitTaskData(sysTask);
|
|
||||||
|
|
||||||
Console.ForegroundColor = ConsoleColor.Red;
|
Console.ForegroundColor = ConsoleColor.Red;
|
||||||
Console.WriteLine(result1.Item1);
|
foreach (var item in result)
|
||||||
Console.WriteLine(result2.Item1);
|
{
|
||||||
Console.WriteLine(result3.Item1);
|
Console.WriteLine(item);
|
||||||
Console.WriteLine(result4.Item1);
|
}
|
||||||
Console.WriteLine(result5.Item1);
|
Console.ForegroundColor = ConsoleColor.White;
|
||||||
Console.WriteLine(result6.Item1);
|
|
||||||
Console.WriteLine(result7.Item1);
|
|
||||||
Console.WriteLine(result8.Item1);
|
|
||||||
Console.WriteLine(result9.Item1);
|
|
||||||
Console.WriteLine(result10.Item1);
|
|
||||||
Console.WriteLine(result11.Item1);
|
|
||||||
Console.WriteLine(result12.Item1);
|
|
||||||
|
|
||||||
return SUCCESS(new
|
return SUCCESS(new
|
||||||
{
|
{
|
||||||
result1 = result1.Item1,
|
result
|
||||||
result2 = result2.Item1,
|
|
||||||
result3 = result3.Item1,
|
|
||||||
result4 = result4.Item1,
|
|
||||||
result5 = result5.Item1,
|
|
||||||
result6 = result6.Item1,
|
|
||||||
result7 = result7.Item1,
|
|
||||||
result8 = result8.Item1,
|
|
||||||
result9 = result9.Item1,
|
|
||||||
result10 = result10.Item1,
|
|
||||||
result11 = result11.Item1,
|
|
||||||
result12 = result12.Item1
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,11 +1,16 @@
|
|||||||
using Infrastructure.Extensions;
|
using Infrastructure.Extensions;
|
||||||
|
using MiniExcelLibs;
|
||||||
using SqlSugar.IOC;
|
using SqlSugar.IOC;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
using ZR.Common;
|
using ZR.Common;
|
||||||
using ZR.Model.System;
|
using ZR.Model.System;
|
||||||
|
|
||||||
namespace ZR.Service.System
|
namespace ZR.Service.System
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 种子数据处理
|
||||||
|
/// </summary>
|
||||||
public class SeedDataService
|
public class SeedDataService
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -218,5 +223,74 @@ namespace ZR.Service.System
|
|||||||
string msg = $"[任务数据] 插入{x.InsertList.Count} 错误数据{x.ErrorList.Count} 总共{x.TotalList.Count}";
|
string msg = $"[任务数据] 插入{x.InsertList.Count} 错误数据{x.ErrorList.Count} 总共{x.TotalList.Count}";
|
||||||
return (msg, x.ErrorList, x.IgnoreList);
|
return (msg, x.ErrorList, x.IgnoreList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 初始化种子数据
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="path"></param>
|
||||||
|
/// <param name="clean"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public List<string> InitSeedData(string path, bool clean)
|
||||||
|
{
|
||||||
|
List<string> result = new();
|
||||||
|
|
||||||
|
var db = DbScoped.SugarScope;
|
||||||
|
if (clean)
|
||||||
|
{
|
||||||
|
db.DbMaintenance.TruncateTable<SysRoleDept>();
|
||||||
|
db.DbMaintenance.TruncateTable<SysRoleMenu>();
|
||||||
|
db.DbMaintenance.TruncateTable<SysMenu>();
|
||||||
|
db.DbMaintenance.TruncateTable<SysRole>();
|
||||||
|
db.DbMaintenance.TruncateTable<SysUser>();
|
||||||
|
db.DbMaintenance.TruncateTable<SysDept>();
|
||||||
|
db.DbMaintenance.TruncateTable<SysPost>();
|
||||||
|
}
|
||||||
|
|
||||||
|
var sysUser = MiniExcel.Query<SysUser>(path, sheetName: "user").ToList();
|
||||||
|
var result1 = InitUserData(sysUser);
|
||||||
|
result.Add(result1.Item1);
|
||||||
|
|
||||||
|
var sysPost = MiniExcel.Query<SysPost>(path, sheetName: "post").ToList();
|
||||||
|
var result2 = InitPostData(sysPost);
|
||||||
|
result.Add(result2.Item1);
|
||||||
|
|
||||||
|
var sysRole = MiniExcel.Query<SysRole>(path, sheetName: "role").ToList();
|
||||||
|
var result3 = InitRoleData(sysRole);
|
||||||
|
result.Add(result3.Item1);
|
||||||
|
|
||||||
|
var sysUserRole = MiniExcel.Query<SysUserRole>(path, sheetName: "user_role").ToList();
|
||||||
|
var result4 = InitUserRoleData(sysUserRole);
|
||||||
|
result.Add(result4.Item1);
|
||||||
|
|
||||||
|
var sysMenu = MiniExcel.Query<SysMenu>(path, sheetName: "menu").ToList();
|
||||||
|
var result5 = InitMenuData(sysMenu);
|
||||||
|
result.Add(result5.Item1);
|
||||||
|
|
||||||
|
var sysConfig = MiniExcel.Query<SysConfig>(path, sheetName: "config").ToList();
|
||||||
|
var result6 = InitConfigData(sysConfig);
|
||||||
|
result.Add(result6.Item1);
|
||||||
|
|
||||||
|
var sysRoleMenu = MiniExcel.Query<SysRoleMenu>(path, sheetName: "role_menu").ToList();
|
||||||
|
var result7 = InitRoleMenuData(sysRoleMenu);
|
||||||
|
result.Add(result7.Item1);
|
||||||
|
|
||||||
|
var sysDict = MiniExcel.Query<SysDictType>(path, sheetName: "dict_type").ToList();
|
||||||
|
var result8 = InitDictType(sysDict);
|
||||||
|
result.Add(result8.Item1);
|
||||||
|
|
||||||
|
var sysDictData = MiniExcel.Query<SysDictData>(path, sheetName: "dict_data").ToList();
|
||||||
|
var result9 = InitDictData(sysDictData);
|
||||||
|
result.Add(result9.Item1);
|
||||||
|
|
||||||
|
var sysDept = MiniExcel.Query<SysDept>(path, sheetName: "dept").ToList();
|
||||||
|
var result10 = InitDeptData(sysDept);
|
||||||
|
result.Add(result10.Item1);
|
||||||
|
|
||||||
|
var sysArticleCategory = MiniExcel.Query<ArticleCategory>(path, sheetName: "article_category").ToList();
|
||||||
|
var result11 = InitArticleCategoryData(sysArticleCategory);
|
||||||
|
result.Add(result11.Item1);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user