using Microsoft.AspNetCore.Mvc; using Snowflake.Core; using SqlSugar; using System.Diagnostics; using WebApplication1.Models; namespace WebApplication1.Controllers { public class HomeController : Controller { private readonly ILogger _logger; public HomeController(ILogger logger) { _logger = logger; } public IActionResult Index() { //for (int i = 0; i < 5; i++) //{ // var id= IdFactory.NewId(); //} //AutoGenerateLocation(); //FJ1NorthAutoGenerateLocation(); //FJSouthAutoGenerateLocation(); return View(); } public IActionResult Privacy() { return View(); } [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] public IActionResult Error() { return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); } public void AutoGenerateLocation() { SqlSugarScope Db = new SqlSugarScope(new SqlSugar.ConnectionConfig() { ConnectionString = "Data Source=10.30.44.50;User ID=bz;Password=Aa123456@;Initial Catalog=WMS_ZT_01HJ",//连接符字串 DbType = DbType.SqlServer,//数据库类型 IsAutoCloseConnection = true //不设成true要手动close }, db => { db.Aop.OnLogExecuting = (sql, pars) => { Console.WriteLine(sql);//输出sql,查看执行sql 性能无影响 //获取原生SQL推荐 5.1.4.63 性能OK //UtilMethods.GetNativeSql(sql,pars) //获取无参数化SQL 对性能有影响,特别大的SQL参数多的,调试使用 //UtilMethods.GetSqlString(DbType.SqlServer,sql,pars) }; }); var dbBaseWarecellLists = Db.Queryable().ToList(); var shelfcode = ""; var list = new List(); var codes = new List(); for (int row = 1; row <= 12; row++) //行 { shelfcode = "L"; //1 2 是R, 3 4 是 L if (row == 1 || row == 2 || row == 5 || row == 6 || row == 9 || row == 10) { shelfcode = "R"; } // 23 深度1 , 1 4 5 8 9 12深度2 int depth = 1; if(row==1 || row == 4 || row == 5 || row == 8 || row == 9 || row == 12) { depth = 2; } int tunnel = 1; if (row > 4 && row <= 8) { tunnel = 2; } else if (row > 8) { tunnel = 3; } //12行 48列9层 for (int layer = 1; layer <= 9; layer++) //层 { for (int col = 0; col <=49; col++) //列 { var code = row.ToString().PadLeft(2, '0') + "-" + col.ToString().PadLeft(2, '0') + "-" + layer.ToString().PadLeft(2, '0') + "-" + tunnel + shelfcode + "-" + depth.ToString().PadLeft(2, '0'); codes.Add(code); var name = row.ToString() + "行" + col.ToString() + "列" + layer.ToString() + "层" + tunnel + shelfcode + "货架" + depth + "深度"; list.Add(new BaseWarecell { Id = IdFactory.NewId(), WarehouseId = 1668442390064664576, WareAreaId = 1669154208777113600, IsStop = 0, Code =code , Name =name , StateNum = 1, TypeNum = 1, Size = 1, Shelf= tunnel.ToString() + shelfcode, WarehouseCode = "hjhouse", Row = row, Col = col, Layer = layer, Depth = depth, Tunnel = tunnel, SCRel = "SRM"+tunnel.ToString().PadLeft(2, '0'), ContGrpId = 0, ContGrpBarCode ="" , Memo = "", AddWho = "admin", AddTime = DateTime.Now, EditWho = "admin", EditTime = DateTime.Now, }); } } } Db.Insertable(list).ExecuteCommand(); } public void FJ1NorthAutoGenerateLocation() { SqlSugarScope Db = new SqlSugarScope(new SqlSugar.ConnectionConfig() { ConnectionString = "Data Source=10.30.44.50;User ID=bz;Password=Aa123456@;Initial Catalog=WMS_ZT_01FJ",//连接符字串 DbType = DbType.SqlServer,//数据库类型 IsAutoCloseConnection = true //不设成true要手动close }, db => { db.Aop.OnLogExecuting = (sql, pars) => { Console.WriteLine(sql);//输出sql,查看执行sql 性能无影响 //获取原生SQL推荐 5.1.4.63 性能OK //UtilMethods.GetNativeSql(sql,pars) //获取无参数化SQL 对性能有影响,特别大的SQL参数多的,调试使用 //UtilMethods.GetSqlString(DbType.SqlServer,sql,pars) }; }); BaseWarehouse BaseWarearea = new BaseWarehouse() { Id = IdFactory.NewId(), IsStop = 0, Code = "fj1northhouse", Name = "分拣库1北", AddTime = DateTime.Now , AddWho = "admin", EditTime = DateTime.Now, EditWho = "admin", TypeNum = 1 }; var baseWareareaEntity = Db.Insertable(BaseWarearea).ExecuteReturnEntity(); var dbBaseWarecellLists = Db.Queryable().ToList(); var shelfcode = ""; var list = new List(); var codes = new List(); for (int row = 1; row <= 2; row++) //行 { //shelfcode = "L"; ////1 2 是R, 3 4 是 L //if (row == 1 || row == 2 || row == 5 || row == 6 || row == 9 || row == 10) //{ // shelfcode = "R"; //} //// 23 深度1 , 1 4 5 8 9 12深度2 //int depth = 1; //if (row == 1 || row == 4 || row == 5 || row == 8 || row == 9 || row == 12) //{ // depth = 2; //} int tunnel = 1; //12行 48列9层 for (int layer = 1; layer <= 10; layer++) //层 { for (int col = 1; col <= 10; col++) //列 { var code = row.ToString().PadLeft(2, '0') + "-" + col.ToString().PadLeft(2, '0') + "-" + layer.ToString().PadLeft(2, '0') + "-" + tunnel ; codes.Add(code); var name = row.ToString() + "行" + col.ToString() + "列" + layer.ToString() + "层" ; list.Add(new BaseWarecell { Id = IdFactory.NewId(), WarehouseId = baseWareareaEntity.Id, WareAreaId = 1669154208777113600, IsStop = 0, Code = code, Name = name, StateNum = 1, TypeNum = 1, Size = 1, Shelf = tunnel.ToString() + shelfcode, WarehouseCode = "fj1northhouse", Row = row, Col = col, Layer = layer, Depth = 1, Tunnel = tunnel, SCRel = "SRM" + tunnel.ToString().PadLeft(2, '0'), ContGrpId = 0, ContGrpBarCode = "", Memo = "", AddWho = "admin", AddTime = DateTime.Now, EditWho = "admin", EditTime = DateTime.Now, }); } } } Db.Insertable(list).ExecuteCommand(); } public void FJSouthAutoGenerateLocation() { SqlSugarScope Db = new SqlSugarScope(new SqlSugar.ConnectionConfig() { ConnectionString = "Data Source=10.30.44.50;User ID=bz;Password=Aa123456@;Initial Catalog=WMS_ZT_01FJ",//连接符字串 DbType = DbType.SqlServer,//数据库类型 IsAutoCloseConnection = true //不设成true要手动close }, db => { db.Aop.OnLogExecuting = (sql, pars) => { Console.WriteLine(sql);//输出sql,查看执行sql 性能无影响 //获取原生SQL推荐 5.1.4.63 性能OK //UtilMethods.GetNativeSql(sql,pars) //获取无参数化SQL 对性能有影响,特别大的SQL参数多的,调试使用 //UtilMethods.GetSqlString(DbType.SqlServer,sql,pars) }; }); BaseWarehouse BaseWarearea= new BaseWarehouse() { Id= IdFactory.NewId(),IsStop=0,Code= "fj1southhouse", Name="分拣库1南",AddTime=DateTime.Now ,AddWho="admin",EditTime=DateTime.Now,EditWho="admin",TypeNum=1 }; var baseWareareaEntity = Db.Insertable(BaseWarearea).ExecuteReturnEntity(); var dbBaseWarecellLists = Db.Queryable().ToList(); var shelfcode = ""; var list = new List(); var codes = new List(); for (int row = 1; row <= 2; row++) //行 { //shelfcode = "L"; ////1 2 是R, 3 4 是 L //if (row == 1 || row == 2 || row == 5 || row == 6 || row == 9 || row == 10) //{ // shelfcode = "R"; //} //// 23 深度1 , 1 4 5 8 9 12深度2 //int depth = 1; //if (row == 1 || row == 4 || row == 5 || row == 8 || row == 9 || row == 12) //{ // depth = 2; //} int tunnel = 1; //12行 48列9层 for (int layer = 1; layer <= 10; layer++) //层 { for (int col = 11; col <= 20; col++) //列 { var code = row.ToString().PadLeft(2, '0') + "-" + col.ToString().PadLeft(2, '0') + "-" + layer.ToString().PadLeft(2, '0') + "-" + tunnel ; codes.Add(code); var name = row.ToString() + "行" + col.ToString() + "列" + layer.ToString() + "层" ; list.Add(new BaseWarecell { Id = IdFactory.NewId(), WarehouseId = baseWareareaEntity.Id, WareAreaId = 1669154208777113600, IsStop = 0, Code = code, Name = name, StateNum = 1, TypeNum = 1, Size = 1, Shelf = tunnel.ToString() + shelfcode, WarehouseCode = "fj1southhouse", Row = row, Col = col, Layer = layer, Depth = 1, Tunnel = tunnel, SCRel = "SRM" + tunnel.ToString().PadLeft(2, '0'), ContGrpId = 0, ContGrpBarCode = "", Memo = "", AddWho = "admin", AddTime = DateTime.Now, EditWho = "admin", EditTime = DateTime.Now, }); } } } Db.Insertable(list).ExecuteCommand(); } } public static class IdFactory { private static readonly object locker = new object(); private static IdWorker _idworker; public static IdWorker GetInstance() { if (_idworker == null) { lock (locker) { if (_idworker == null) { _idworker = new IdWorker(1, 1); } } } return _idworker; } public static long NewId() { return GetInstance().NextId(); } } [SugarTable("Base_WareCell")] public partial class BaseWarecell { /// /// Id /// [SugarColumn(IsPrimaryKey = true, ColumnDataType = "bigint", IsNullable = false)] public long Id { get; set; } /// /// WarehouseId /// [SugarColumn(ColumnDataType = "bigint", IsNullable = false)] public long WarehouseId { get; set; } /// /// WarehouseCode /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string WarehouseCode { get; set; } /// /// WareAreaId /// [SugarColumn(ColumnDataType = "bigint", IsNullable = false)] public long WareAreaId { get; set; } /// /// IsStop /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int IsStop { get; set; } /// /// Code /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string Code { get; set; } /// /// Name /// [SugarColumn(ColumnDataType = "nvarchar", Length = 100, IsNullable = false)] public string Name { get; set; } /// /// StateNum /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int StateNum { get; set; } /// /// TypeNum /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int TypeNum { get; set; } /// /// Size /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int Size { get; set; } /// /// Row /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int Row { get; set; } /// /// Col /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int Col { get; set; } /// /// Layer /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int Layer { get; set; } /// /// Depth /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int Depth { get; set; } /// /// Tunnel /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int Tunnel { get; set; } /// /// SCRel /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string SCRel { get; set; } /// /// ContGrpId /// [SugarColumn(ColumnDataType = "bigint", IsNullable = true)] public long? ContGrpId { get; set; } /// /// ContGrpBarCode /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = true)] public string ContGrpBarCode { get; set; } /// /// Memo /// [SugarColumn(ColumnDataType = "nvarchar", Length = 500, IsNullable = false)] public string Memo { get; set; } /// /// AddWho /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string AddWho { get; set; } /// /// AddTime /// [SugarColumn(ColumnDataType = "datetime", IsNullable = false)] public DateTime AddTime { get; set; } /// /// EditWho /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string EditWho { get; set; } /// /// EditTime /// [SugarColumn(ColumnDataType = "datetime", IsNullable = false)] public DateTime EditTime { get; set; } /// /// Shelf /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = true)] public string Shelf { get; set; } } [SugarTable("Base_Warehouse")] public class BaseWarehouse { /// /// Id /// [SugarColumn(IsPrimaryKey = true, ColumnDataType = "bigint", IsNullable = false)] public long Id { get; set; } /// /// IsStop /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int IsStop { get; set; } /// /// Code /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string Code { get; set; } /// /// Name /// [SugarColumn(ColumnDataType = "nvarchar", Length = 100, IsNullable = false)] public string Name { get; set; } /// /// TypeNum /// [SugarColumn(ColumnDataType = "int", IsNullable = false)] public int TypeNum { get; set; } /// /// ConfigId /// [SugarColumn(ColumnDataType = "bigint", IsNullable = false)] public long ConfigId { get; set; } /// /// Memo /// [SugarColumn(ColumnDataType = "nvarchar", Length = 500, IsNullable = false)] public string Memo { get; set; } /// /// AddWho /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string AddWho { get; set; } /// /// AddTime /// [SugarColumn(ColumnDataType = "datetime", IsNullable = false)] public DateTime AddTime { get; set; } /// /// EditWho /// [SugarColumn(ColumnDataType = "nvarchar", Length = 50, IsNullable = false)] public string EditWho { get; set; } /// /// EditTime /// [SugarColumn(ColumnDataType = "datetime", IsNullable = false)] public DateTime EditTime { get; set; } } }