成品库库位
This commit is contained in:
@ -305,7 +305,7 @@ namespace WCS.WebApi.Controllers
|
||||
{
|
||||
//获取液晶的货架
|
||||
var shelfInfos = DbHelp.db.Queryable<ShelfInfo>()
|
||||
.Where(t => t.ShelfTypeName.Contains("液晶"))
|
||||
.Where(t => t.ShelfTypeName.Contains("液晶") && !t.ShelfCode.Contains("CP"))
|
||||
.ToList();
|
||||
var moduleInfos = new List<ModuleInfo>();
|
||||
|
||||
@ -382,6 +382,100 @@ namespace WCS.WebApi.Controllers
|
||||
}
|
||||
|
||||
|
||||
[Route("generateCPModuleInfo")]
|
||||
[HttpPost(Name = "generateCPModuleInfo")]
|
||||
public async Task<ResponseBase> generateCPModuleInfo(RequestBase request)
|
||||
{
|
||||
try
|
||||
{
|
||||
//获取液晶的货架
|
||||
var shelfInfos = DbHelp.db.Queryable<ShelfInfo>()
|
||||
.Where(t => t.ShelfTypeName.Contains("液晶") && t.ShelfCode.Contains("CP"))
|
||||
.ToList();
|
||||
var moduleInfos = new List<ModuleInfo>();
|
||||
|
||||
int boardId = 1;
|
||||
var lastClientCode = string.Empty;
|
||||
|
||||
foreach (var shelfInfo in shelfInfos)
|
||||
{
|
||||
if (lastClientCode != shelfInfo.ClientIp)
|
||||
{
|
||||
lastClientCode = shelfInfo.ClientIp;
|
||||
boardId = 1;
|
||||
}
|
||||
|
||||
//先拆分shelfCode
|
||||
var input = shelfInfo.ShelfCode.Split("-")[1];
|
||||
List<int> numbers = new List<int>();
|
||||
for (int i = 0; i < input.Length; i += 2)
|
||||
{
|
||||
// 提取两位字符
|
||||
string numberStr = input.Substring(i, 2);
|
||||
// 转换为整数并添加到列表中
|
||||
int number = int.Parse(numberStr);
|
||||
numbers.Add(number);
|
||||
}
|
||||
// 将列表转换为数组(如果需要)
|
||||
int[] shelfNumbers = numbers.ToArray();
|
||||
foreach (var shelfNumber in shelfNumbers)
|
||||
{
|
||||
int floorNumber = 1;
|
||||
int moduleNumber = 0;
|
||||
while (floorNumber <= 4)
|
||||
{
|
||||
moduleNumber++;
|
||||
if (moduleNumber > 7)
|
||||
{
|
||||
moduleNumber = 1;
|
||||
floorNumber++;
|
||||
}
|
||||
if (floorNumber == 5)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var moduleCode = $"CP-{shelfNumber}-L{floorNumber}-{moduleNumber}";
|
||||
var module = new ModuleInfo()
|
||||
{
|
||||
ModuleCode = moduleCode,
|
||||
ShelfTypeId = 3,
|
||||
ShelfId = shelfInfo.Id,
|
||||
ShelfCode = shelfInfo.ShelfCode,
|
||||
BoardId = boardId++,
|
||||
LightCount = 1,
|
||||
CleintIp = shelfInfo.ClientIp,
|
||||
GroupName = shelfInfo.GroupName,
|
||||
R = floorNumber.ToString(),
|
||||
C = moduleNumber.ToString(),
|
||||
IsEnable = true,
|
||||
};
|
||||
moduleInfos.Add(module);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
DbHelp.db.Insertable(moduleInfos).ExecuteCommand();
|
||||
|
||||
return new ResponseBase<object>()
|
||||
{
|
||||
Code = 200,
|
||||
Message = "生成成功!",
|
||||
Data = null
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return new ResponseBase<object>()
|
||||
{
|
||||
Code = 300,
|
||||
Message = "生成失败" + ex.Message,
|
||||
Data = null
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 进入调试模式
|
||||
/// </summary>
|
||||
|
Reference in New Issue
Block a user