You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ds8-solution-pro/ds-wms-service/DS.WMS.Test/ContainerManagementTest.cs

324 lines
14 KiB
C#

4 months ago
using System.Reflection;
using DS.Module.Core;
using DS.Module.Core.Extensions;
using DS.Module.SqlSugar;
using DS.WMS.ContainerManagement.Info.Entity;
using DS.WMS.Core.Check.Entity;
using DS.WMS.Core.Code.Entity;
using DS.WMS.Core.Info.Entity;
using DS.WMS.Core.Op.Entity;
using DS.WMS.Core.Op.Entity.BookingSlot;
using DS.WMS.Core.Sys.Entity;
using DS.WMS.Core.TaskPlat.Entity;
using Mapster;
using Masuit.Tools.Strings;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Owin.BuilderProperties;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using Org.BouncyCastle.Ocsp;
using SqlSugar;
using SqlSugar.IOC;
using Xunit;
namespace Ds.WMS.Test;
public class ContainerManagementTest
{
private readonly IServiceProvider _serviceProvider;
private readonly SqlSugarScope db;
private readonly ISaasDbService saasService;
public ContainerManagementTest(IServiceProvider serviceProvider)
{
_serviceProvider = serviceProvider;
db = (SqlSugarScope)_serviceProvider.GetRequiredService<ISqlSugarClient>();
saasService = _serviceProvider.GetRequiredService<ISaasDbService>();
}
2 months ago
//[Fact]
//public void ContainerManagementTest1()
//{
// Type[] types = Assembly
// .LoadFrom("DS.WMS.Core.dll")//如果 .dll报错可以换成 xxx.exe 有些生成的是exe
// .GetTypes().Where(it => it.FullName.Contains("DS.WMS.Core.Op.Entity."))
// //.GetTypes().Where(it => it.FullName.Contains("DS.WMS.Core.Code.Entity.") || it.FullName.Contains("DS.WMS.Core.Info.Entity.") || it.FullName.Contains("DS.WMS.Core.Flow.Entity.")
// //|| it.FullName.Contains("DS.WMS.Core.Check.Entity.") || it.FullName.Contains("DS.WMS.Core.Map.Entity."))//命名空间过滤,当然你也可以写其他条件过滤
// .ToArray();
// //Type[] types = Assembly
// // .LoadFrom("DS.WMS.Core.dll")//如果 .dll报错可以换成 xxx.exe 有些生成的是exe
// // .GetTypes().Where(it => it.FullName.Contains("DS.WMS.Core.Code.Entity."))//命名空间过滤,当然你也可以写其他条件过滤
// // .ToArray();
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
// // var temp = tenantDb.CodeFirst.GetDifferenceTables(types); || it.FullName.Contains("DS.WMS.Core.Op.Entity.")
// // var diffString= tenantDb.CodeFirst.GetDifferenceTables(types).ToDiffString();
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
// //types = types.Where(it => it.Name != "BusinessFeeStatus").ToArray();
// //types = types.Where(it => it.Name != "BusinessOrderContact").ToArray();
4 months ago
2 months ago
// tenantDb.CodeFirst.InitTables(types);
// // //初始化数库
// // tenantDb.DbMaintenance.CreateDatabase();
// //
// // tenantDb.CodeFirst.InitTables(typeof(CodeCountry));
// Assert.True(true);
//}
4 months ago
/// <summary>
/// 主库初始化单表
/// </summary>
//[Fact]
//public void MasterInitTableTest()
//{
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
// db.CodeFirst.InitTables(typeof(SysPrintTemplate));
// //tenantDb.CodeFirst.InitTables(typeof(CheckBillAutoDetail));
// //db.CodeFirst.InitTables(typeof(OpBusinessTruckCtn));
// Assert.True(true);
//}
/// <summary>
/// 初始化单表
/// </summary>
2 months ago
//[Fact]
//public void InitTableTest()
//{
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
4 months ago
2 months ago
// tenantDb.CodeFirst.InitTables(typeof(CM_CurrentState));
// //tenantDb.CodeFirst.InitTables(typeof(CM_BaseInfo));
// tenantDb.CodeFirst.InitTables(typeof(CM_State_Change));
4 months ago
2 months ago
// //tenantDb.CodeFirst.InitTables(typeof(CM_RentIn));
// //tenantDb.CodeFirst.InitTables(typeof(CM_RentIn_Detail));
// //tenantDb.CodeFirst.InitTables(typeof(CM_RentOut));
// //tenantDb.CodeFirst.InitTables(typeof(CM_RentOut_Detail));
// //tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay));
// //tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay_Detail));
4 months ago
2 months ago
// //db.CodeFirst.InitTables(typeof(OpBusinessTruckCtn));
// Assert.True(true);
//}
4 months ago
4 months ago
/// <summary>
/// 初始化单表 多表
/// 注意 海运出口 SeaExport 得手动数据库更新
/// </summary>
[Fact]
public void InitAllSaasTableTestByDdlucky()
{
var tenantList = db.Queryable<DS.Module.SqlSugar.SysTenantLink>().ToList();
var ass = Assembly.Load("DS.WMS.Core");
//var types = ass.GetTypes().Where(it => it.FullName?.Contains("DS.WMS.Core.TaskPlat.Entity") == true).ToArray();
foreach (var item in tenantList)
{
var tenantDb = saasService.GetBizDbScopeById(item.TenantId).CopyNew();
StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci"; //较高版本支持
2 months ago
//tenantDb.CodeFirst.InitTables(types); //指定表空间下的实体
//tenantDb.CodeFirst.InitTables(typeof(OpLetterYard));//指定更新特定实体
4 months ago
2 months ago
//tenantDb.CodeFirst.InitTables(typeof(CM_CurrentState));
//tenantDb.CodeFirst.InitTables(typeof(CM_BaseInfo));
2 months ago
//tenantDb.CodeFirst.InitTables(typeof(CM_State_Change));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentIn));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentIn_Detail));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentOut));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentOut_Detail));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay_Detail));
//tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay_In));
//tenantDb.CodeFirst.InitTables(typeof(CM_BuyCtn));
2 months ago
//tenantDb.CodeFirst.InitTables(typeof(CM_BuyCtn_Detail));
//tenantDb.CodeFirst.InitTables(typeof(CM_SellCtn));
2 months ago
//tenantDb.CodeFirst.InitTables(typeof(CM_SellCtn_Detail));
//tenantDb.CodeFirst.InitTables(typeof(CM_CtnScrap));
//tenantDb.CodeFirst.InitTables(typeof(CM_CtnScrap_Detail));
3 months ago
//tenantDb.CodeFirst.InitTables(typeof(CM_CustFeeDui));
//tenantDb.CodeFirst.InitTables(typeof(CM_CustFeeDui_Detail));
//tenantDb.CodeFirst.InitTables(typeof(CM_CustFeeDui_Calendar));
4 months ago
2 months ago
//tenantDb.CodeFirst.InitTables(typeof(CM_State_Change_Templat));
//tenantDb.CodeFirst.InitTables(typeof(CM_State_Change_TemplatDetail));
//tenantDb.CodeFirst.InitTables(typeof(CM_State_Change_TemplatImport));
tenantDb.CodeFirst.InitTables(typeof(CM_State_Change_Temp));
4 months ago
}
Assert.True(true);
}
[Fact]
public void InitSaasTableTestByDdlucky()
{
var tenantList = db.Queryable<DS.Module.SqlSugar.SysTenantLink>().ToList();
var ass = Assembly.Load("DS.WMS.Core");
//var types = ass.GetTypes().Where(it => it.FullName?.Contains("DS.WMS.Core.ContainerManagement.Entity") == true).ToArray();
4 months ago
foreach (var item in tenantList)
{
var tenantDb = saasService.GetBizDbScopeById(item.TenantId).CopyNew();
StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci"; //较高版本支持
//tenantDb.CodeFirst.InitTables(types); //指定表空间下的实体
//tenantDb.CodeFirst.InitTables(typeof(OpLetterYard));//指定更新特定实体
tenantDb.CodeFirst.InitTables(typeof(CM_CurrentState));
tenantDb.CodeFirst.InitTables(typeof(CM_BaseInfo));
tenantDb.CodeFirst.InitTables(typeof(CM_State_Change));
tenantDb.CodeFirst.InitTables(typeof(CM_RentIn));
tenantDb.CodeFirst.InitTables(typeof(CM_RentIn_Detail));
tenantDb.CodeFirst.InitTables(typeof(CM_RentOut));
tenantDb.CodeFirst.InitTables(typeof(CM_RentOut_Detail));
tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay));
tenantDb.CodeFirst.InitTables(typeof(CM_RentOneWay_Detail));
tenantDb.CodeFirst.InitTables(typeof(CM_CustFeeDui));
tenantDb.CodeFirst.InitTables(typeof(CM_CustFeeDui_Detail));
tenantDb.CodeFirst.InitTables(typeof(CM_CustFeeDui_Calendar));
}
Assert.True(true);
}
2 months ago
//[Fact]
//public void SaasCheckTest()
//{
// Type[] types = Assembly
// .LoadFrom("DS.WMS.Core.dll")//如果 .dll报错可以换成 xxx.exe 有些生成的是exe
// .GetTypes().Where(it => it.FullName.Contains("DS.WMS.Core.Code.Entity"))//命名空间过滤,当然你也可以写其他条件过滤
// .ToArray();
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
// //tenantDb.CodeFirst.InitTables(types);
// Assert.True(true);
//}
//[Fact]
//public void SaasFeeTest()
//{
// Type[] types = Assembly
// .LoadFrom("DS.WMS.Core.dll")//如果 .dll报错可以换成 xxx.exe 有些生成的是exe
// .GetTypes().Where(it => it.FullName.Contains("DS.WMS.Core.Fee.Entity"))//命名空间过滤,当然你也可以写其他条件过滤
// .ToArray();
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
// //tenantDb.CodeFirst.InitTables(types);
// Assert.True(true);
//}
//[Fact]
4 months ago
2 months ago
//public void ClientBatchEdit()
//{
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
4 months ago
2 months ago
// var info = tenantDb.Queryable<InfoClient>().Filter(null, true).Where(x => x.Id == 1772138307266940928).First();
4 months ago
2 months ago
// var temp = new ClientTemp
// {
// Address = "4",
// Name = "4",
// };
// var dic = temp.GetPropertiesArray();
4 months ago
2 months ago
// info = temp.Adapt(info);
// tenantDb.Updateable(info).UpdateColumns(dic).ExecuteCommand();
4 months ago
2 months ago
// Assert.True(true);
//}
//[Fact]
4 months ago
2 months ago
//public void CopyColumnTest()
//{
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
4 months ago
2 months ago
// var columns = "noBill,enName,copyNoBill";
4 months ago
2 months ago
// var list = columns.Split(",");
// var list1 = new List<string>();
// foreach (var item in list)
// {
// list1.Add(item.ToUpperCamelCase());
// }
// Console.WriteLine(list1[0]);
// Assert.True(true);
//}
4 months ago
2 months ago
//public class ClientTemp
//{
// /// <summary>
// /// Desc:客户中文名称或描述信息
// /// </summary>
// public string Description { get; set; }
// /// <summary>
// /// Desc:客户英文简称
// /// </summary>
// public string Name { get; set; }
// /// <summary>
// /// Desc:客户英文全称
// /// </summary>
// public string EnFullName { get; set; }
// /// <summary>
// /// Desc:通讯地址
// /// </summary>
// public string Address { get; set; }
//}
4 months ago
/// <summary>
/// 初始化单表
/// </summary>
2 months ago
//[Fact]
//public void InitTableTestJHQ()
//{
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
// //tenantDb.CodeFirst.InitTables(typeof(SpaceBookingOrder));
// //tenantDb.CodeFirst.InitTables(typeof(SpaceBookingOrderCtn));
// //tenantDb.CodeFirst.InitTables(typeof(SpaceBookingOrderShipSchedule));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotBase));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotCtn));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotStock));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotAllocation));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotAllocationCtn));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotDemand));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotDemandCtn));
// //tenantDb.CodeFirst.InitTables(typeof(BookingSlotCompare));
// //tenantDb.CodeFirst.InitTables(typeof(BookingContractNoManage));
// //tenantDb.CodeFirst.InitTables(typeof(BookingLabel));
// //tenantDb.CodeFirst.InitTables(typeof(BookingLabelAllocation));
// //tenantDb.CodeFirst.InitTables(typeof(InfoClient));
// //tenantDb.CodeFirst.InitTables(typeof(CodeThirdParty));
// //tenantDb.CodeFirst.InitTables(typeof(CheckBillAutoDetail));
// //db.CodeFirst.InitTables(typeof(OpBusinessTruckCtn));
// Assert.True(true);
//}
///// <summary>
///// 初始化单表
///// </summary>
//[Fact]
//public void InitTableTestZXF()
//{
// var tenantDb = saasService.GetBizDbScopeById("1750335377144680448");
// StaticConfig.CodeFirst_MySqlCollate = "utf8mb4_0900_ai_ci";//较高版本支持
4 months ago
2 months ago
// var ass = Assembly.Load("DS.WMS.Core");
// var types = ass.GetTypes().Where(it => it.FullName?.Contains("DS.WMS.Core.TaskPlat.Entity") == true).ToArray();
// //tenantDb.CodeFirst.InitTables(types);
4 months ago
2 months ago
// //tenantDb.CodeFirst.InitTables(typeof(TaskFlowLog));
// //tenantDb.CodeFirst.InitTables(typeof(TaskFlowLogDetail));
// Assert.True(true);
//}
4 months ago
}