|
|
|
@ -1079,8 +1079,7 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
using var scope = _host.Services.CreateScope();
|
|
|
|
using var scope = _host.Services.CreateScope();
|
|
|
|
using var dbContext = scope.ServiceProvider.GetRequiredService<DefaultDbContext>();
|
|
|
|
using var dbContext = scope.ServiceProvider.GetRequiredService<DefaultDbContext>();
|
|
|
|
var wcsCmd = dbContext.WcsCmd
|
|
|
|
var wcsCmd = dbContext.WcsCmd
|
|
|
|
.Where(t => t.cmdStatus == 6)
|
|
|
|
.Where(t => t.cmdStatus == 6||t.cmdStatus==3)
|
|
|
|
.Where(t => t.nextPointId == 21)
|
|
|
|
|
|
|
|
.FirstOrDefault();
|
|
|
|
.FirstOrDefault();
|
|
|
|
if (wcsCmd == null)
|
|
|
|
if (wcsCmd == null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
@ -1088,9 +1087,27 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
dbContext.WcsCmd.Where(t => t.objid == wcsCmd.objid).Update(t => new WcsCmd { cmdStatus = 7 });
|
|
|
|
WcsTask? wcsTask = dbContext.WcsTask.FirstOrDefault(t => t.objid == wcsCmd.taskId&&t.nextPointId==10);
|
|
|
|
|
|
|
|
if(wcsTask == null)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
MessageBox.Show("未查询到当前有背负式Agv由装配区到捡料区任务");
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (wcsCmd.cmdStatus == 3)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
wcsCmd.cmdStatus = 4;
|
|
|
|
|
|
|
|
wcsTask.taskStatus = 4;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else if(wcsCmd.cmdStatus == 6)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
wcsCmd.cmdStatus = 7;
|
|
|
|
|
|
|
|
wcsTask.taskStatus = 7;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
dbContext.Update(wcsCmd);
|
|
|
|
|
|
|
|
dbContext.Update(wcsTask);
|
|
|
|
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
dbContext.WcsCmdLog.Where(t => t.objid == wcsCmd.objid).Update(t => new WcsCmdLog { cmdStatus = 7 });
|
|
|
|
dbContext.WcsCmdLog.Where(t => t.objid == wcsCmd.objid).Update(t => new WcsCmdLog { cmdStatus = 7 });
|
|
|
|
dbContext.WcsTask.Where(t => t.objid == wcsCmd.taskId).Update(t => new WcsTask { taskStatus = 7 });
|
|
|
|
|
|
|
|
dbContext.WcsTaskLog.Where(t => t.objid == wcsCmd.taskId).Update(t => new WcsTaskLog { taskStatus = 7 });
|
|
|
|
dbContext.WcsTaskLog.Where(t => t.objid == wcsCmd.taskId).Update(t => new WcsTaskLog { taskStatus = 7 });
|
|
|
|
MessageBox.Show("背负式Agv任务确认完成成功");
|
|
|
|
MessageBox.Show("背负式Agv任务确认完成成功");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -1399,7 +1416,19 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
txtInScan.Text = string.Empty;
|
|
|
|
txtInScan.Text = string.Empty;
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//20240708142603RB014
|
|
|
|
if(container == null)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
MessageBox.Show("未查询到该容器!");
|
|
|
|
|
|
|
|
txtInBox.Text = string.Empty;
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if(material == null)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
MessageBox.Show("未查询到该条码内容!");
|
|
|
|
|
|
|
|
txtInBarCode.Text = string.Empty;
|
|
|
|
|
|
|
|
txtInScan.Text = string.Empty;
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
}
|
|
|
|
var newRawStock = new WmsRawStock()
|
|
|
|
var newRawStock = new WmsRawStock()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
materialId = material.materialId,
|
|
|
|
materialId = material.materialId,
|
|
|
|
@ -1420,7 +1449,7 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
warehouseId = 512,
|
|
|
|
warehouseId = 512,
|
|
|
|
createBy = "扫描入库",
|
|
|
|
createBy = "扫描入库",
|
|
|
|
createDate = System.DateTime.Now,
|
|
|
|
createDate = System.DateTime.Now,
|
|
|
|
safeFlag = "1",
|
|
|
|
safeFlag = material.safeFlag
|
|
|
|
};
|
|
|
|
};
|
|
|
|
dbContext.WmsRawStock.Add(newRawStock);
|
|
|
|
dbContext.WmsRawStock.Add(newRawStock);
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
@ -1640,7 +1669,7 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
MessageBox.Show("库存已经被清空!");
|
|
|
|
MessageBox.Show("库存已经被清空!");
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
int outScan = Convert.ToInt32(this.txtOutScan.Text);
|
|
|
|
decimal outScan = Convert.ToDecimal(this.txtOutScan.Text);
|
|
|
|
if (outScan != 1 && outScan > wmsRawStock.totalAmount - wmsRawStock.frozenAmount)
|
|
|
|
if (outScan != 1 && outScan > wmsRawStock.totalAmount - wmsRawStock.frozenAmount)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
MessageBox.Show("出库数量不能大于库存数量!");
|
|
|
|
MessageBox.Show("出库数量不能大于库存数量!");
|
|
|
|
@ -1654,77 +1683,89 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
WmsRawOutstock? wmsRawOutstock = dbContext.WmsRawOutstock.FirstOrDefault(t => t.materialId == wcsTask.materialId && t.realOutstockAmount < t.outstockAmount);
|
|
|
|
var mesBaseBarcodeInfo = dbContext.MesBaseBarcodeInfo.FirstOrDefault(t => t.barcodeInfo == txtOutBarCode.Text);
|
|
|
|
if (wmsRawOutstock != null)
|
|
|
|
if (mesBaseBarcodeInfo != null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
wmsRawOutstock.realOutstockAmount += outScan;
|
|
|
|
WmsRawOutstock? wmsRawOutstock = dbContext.WmsRawOutstock
|
|
|
|
if (wmsRawOutstock.outstockAmount == wmsRawOutstock.realOutstockAmount)
|
|
|
|
.Where(t => t.materialId == mesBaseBarcodeInfo.materialId && t.realOutstockAmount < t.outstockAmount&&t.saleOrderId == (mesBaseBarcodeInfo.saleOrderId==null?0:mesBaseBarcodeInfo.saleOrderId)).FirstOrDefault();
|
|
|
|
|
|
|
|
if (wmsRawOutstock != null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
wmsRawOutstock.executeStatus = "2";
|
|
|
|
wmsRawOutstock.realOutstockAmount += outScan;
|
|
|
|
}
|
|
|
|
if (wmsRawOutstock.outstockAmount == wmsRawOutstock.realOutstockAmount)
|
|
|
|
else if (wmsRawOutstock.realOutstockAmount > wmsRawOutstock.outstockAmount)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
wmsRawOutstock.executeStatus = "2";
|
|
|
|
MessageBox.Show("出库数量不能大于申请单数量,当前出库数量为:" + (wmsRawOutstock.realOutstockAmount - outScan) + ",申请单数量为:" + wmsRawOutstock.outstockAmount + "!");
|
|
|
|
}
|
|
|
|
return;
|
|
|
|
else if (wmsRawOutstock.realOutstockAmount > wmsRawOutstock.outstockAmount)
|
|
|
|
}
|
|
|
|
{
|
|
|
|
wmsRawStock.totalAmount -= outScan;
|
|
|
|
MessageBox.Show("出库数量不能大于申请单数量,当前出库数量为:" + (wmsRawOutstock.realOutstockAmount - outScan) + ",申请单数量为:" + wmsRawOutstock.outstockAmount + "!");
|
|
|
|
if (wmsRawStock.totalAmount <= 0)
|
|
|
|
return;
|
|
|
|
{
|
|
|
|
}
|
|
|
|
dbContext.Remove(wmsRawStock);
|
|
|
|
wmsRawStock.totalAmount -= outScan;
|
|
|
|
dbContext.Update(wmsRawOutstock);
|
|
|
|
if (wmsRawStock.totalAmount <= 0)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
dbContext.Remove(wmsRawStock);
|
|
|
|
|
|
|
|
dbContext.Update(wmsRawOutstock);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
dbContext.Update(wmsRawStock);
|
|
|
|
|
|
|
|
dbContext.Update(wmsRawOutstock);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (mesBaseBarcodeInfo != null)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
WmsRawOutstockDetail wmsProductOutstockDetail = new WmsRawOutstockDetail()
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
rawOutstockDetailId = Global.SnowId.NextId(),
|
|
|
|
|
|
|
|
rawOutstockId = wmsRawOutstock.rawOutstockId,
|
|
|
|
|
|
|
|
materialId = mesBaseBarcodeInfo.materialId,
|
|
|
|
|
|
|
|
createDate = DateTime.Now,
|
|
|
|
|
|
|
|
createBy = "WCS",
|
|
|
|
|
|
|
|
taskCode = wcsTask.objid.ToString(),
|
|
|
|
|
|
|
|
executeStatus = "2",
|
|
|
|
|
|
|
|
locationCode = wcsTask.currPointNo,
|
|
|
|
|
|
|
|
outstockAmount = outScan,
|
|
|
|
|
|
|
|
planAmount = outScan,
|
|
|
|
|
|
|
|
warehouseId = 512,
|
|
|
|
|
|
|
|
materialBarcode = mesBaseBarcodeInfo.barcodeInfo,
|
|
|
|
|
|
|
|
instockBatch = mesBaseBarcodeInfo.batchCode,
|
|
|
|
|
|
|
|
stackAmount = outScan,
|
|
|
|
|
|
|
|
outstockPerson = "WCS",
|
|
|
|
|
|
|
|
outstockTime = DateTime.Now,
|
|
|
|
|
|
|
|
outstockWay = "2",
|
|
|
|
|
|
|
|
materialProductionDate = mesBaseBarcodeInfo.productionDate
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
dbContext.WmsRawOutstockDetail.Add(wmsProductOutstockDetail);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
dbContext.Update(wmsRawStock);
|
|
|
|
MessageBox.Show("该条码的销售订单不正确");
|
|
|
|
dbContext.Update(wmsRawOutstock);
|
|
|
|
txtOutScan.Text = string.Empty;
|
|
|
|
|
|
|
|
txtOutBarCode.Text = string.Empty;
|
|
|
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
//wmsRawStock.totalAmount -= outScan;
|
|
|
|
|
|
|
|
//if (wmsRawStock.totalAmount == 0)
|
|
|
|
|
|
|
|
//{
|
|
|
|
|
|
|
|
// dbContext.WmsRawStock.Remove(wmsRawStock);
|
|
|
|
|
|
|
|
// dbContext.SaveChanges();
|
|
|
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
//else
|
|
|
|
|
|
|
|
//{
|
|
|
|
|
|
|
|
// dbContext.WmsRawStock.Update(wmsRawStock);
|
|
|
|
|
|
|
|
// dbContext.SaveChanges();
|
|
|
|
|
|
|
|
//}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
var mesBaseBarcodeInfo = dbContext.MesBaseBarcodeInfo.FirstOrDefault(t => t.barcodeInfo == txtOutBarCode.Text);
|
|
|
|
|
|
|
|
if (mesBaseBarcodeInfo != null)
|
|
|
|
MessageBox.Show("出库成功!");
|
|
|
|
{
|
|
|
|
txtOutScan.Text = string.Empty;
|
|
|
|
WmsRawOutstockDetail wmsProductOutstockDetail = new WmsRawOutstockDetail()
|
|
|
|
txtOutBarCode.Text = string.Empty;
|
|
|
|
{
|
|
|
|
txtOutBarCode.Focus();
|
|
|
|
rawOutstockDetailId = Global.SnowId.NextId(),
|
|
|
|
|
|
|
|
rawOutstockId = wmsRawOutstock.rawOutstockId,
|
|
|
|
|
|
|
|
materialId = mesBaseBarcodeInfo.materialId,
|
|
|
|
|
|
|
|
createDate = DateTime.Now,
|
|
|
|
|
|
|
|
createBy = "WCS",
|
|
|
|
|
|
|
|
taskCode = wcsTask.objid.ToString(),
|
|
|
|
|
|
|
|
executeStatus = "2",
|
|
|
|
|
|
|
|
locationCode = wcsTask.currPointNo,
|
|
|
|
|
|
|
|
outstockAmount = outScan,
|
|
|
|
|
|
|
|
planAmount = outScan,
|
|
|
|
|
|
|
|
warehouseId = 512,
|
|
|
|
|
|
|
|
materialBarcode = mesBaseBarcodeInfo.barcodeInfo,
|
|
|
|
|
|
|
|
instockBatch = mesBaseBarcodeInfo.batchCode,
|
|
|
|
|
|
|
|
stackAmount = outScan,
|
|
|
|
|
|
|
|
outstockPerson = "WCS",
|
|
|
|
|
|
|
|
outstockTime = DateTime.Now,
|
|
|
|
|
|
|
|
outstockWay = "2",
|
|
|
|
|
|
|
|
materialProductionDate = mesBaseBarcodeInfo.productionDate
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
dbContext.WmsRawOutstockDetail.Add(wmsProductOutstockDetail);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
wmsRawStock.totalAmount -= outScan;
|
|
|
|
MessageBox.Show("未查询到该条码信息!");
|
|
|
|
if (wmsRawStock.totalAmount == 0)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
dbContext.WmsRawStock.Remove(wmsRawStock);
|
|
|
|
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
dbContext.WmsRawStock.Update(wmsRawStock);
|
|
|
|
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
MessageBox.Show("出库成功!");
|
|
|
|
|
|
|
|
txtOutScan.Text = string.Empty;
|
|
|
|
|
|
|
|
txtOutBarCode.Text = string.Empty;
|
|
|
|
|
|
|
|
txtOutBarCode.Focus();
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
@ -2500,7 +2541,7 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
{
|
|
|
|
{
|
|
|
|
objid = Global.SnowId.NextId(),
|
|
|
|
objid = Global.SnowId.NextId(),
|
|
|
|
taskType = 56,
|
|
|
|
taskType = 56,
|
|
|
|
containerNo = "00000000",
|
|
|
|
containerNo = null,
|
|
|
|
currPointId = baseEquip.objid,
|
|
|
|
currPointId = baseEquip.objid,
|
|
|
|
currPointNo = baseEquip.equipNo,
|
|
|
|
currPointNo = baseEquip.equipNo,
|
|
|
|
nextPointId = agvEquip.objid,
|
|
|
|
nextPointId = agvEquip.objid,
|
|
|
|
@ -2578,7 +2619,7 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
{
|
|
|
|
{
|
|
|
|
objid = Global.SnowId.NextId(),
|
|
|
|
objid = Global.SnowId.NextId(),
|
|
|
|
taskType = 56,
|
|
|
|
taskType = 56,
|
|
|
|
containerNo = "0",
|
|
|
|
containerNo = null,
|
|
|
|
currPointId = startEquip.objid,
|
|
|
|
currPointId = startEquip.objid,
|
|
|
|
currPointNo = startEquip.equipNo,
|
|
|
|
currPointNo = startEquip.equipNo,
|
|
|
|
nextPointId = agvEquip.objid,
|
|
|
|
nextPointId = agvEquip.objid,
|
|
|
|
@ -2691,7 +2732,7 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
using var scope = _host.Services.CreateScope();
|
|
|
|
using var scope = _host.Services.CreateScope();
|
|
|
|
using var dbContext = scope.ServiceProvider.GetRequiredService<DefaultDbContext>();
|
|
|
|
using var dbContext = scope.ServiceProvider.GetRequiredService<DefaultDbContext>();
|
|
|
|
BaseEquip baseEquip = dbContext.BaseEquip.First(t => t.objid == 1);
|
|
|
|
BaseEquip baseEquip = dbContext.BaseEquip.First(t => t.objid == 1);
|
|
|
|
baseEquip.containerNo = "0";
|
|
|
|
baseEquip.containerNo = null;
|
|
|
|
dbContext.Update(baseEquip);
|
|
|
|
dbContext.Update(baseEquip);
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
dbContext.SaveChanges();
|
|
|
|
MessageBox.Show("确认入库成功!");
|
|
|
|
MessageBox.Show("确认入库成功!");
|
|
|
|
@ -2858,5 +2899,11 @@ namespace Khd.Core.Wpf.Form
|
|
|
|
InventoryTaskForm inventoryTaskForm = new InventoryTaskForm(this._host);
|
|
|
|
InventoryTaskForm inventoryTaskForm = new InventoryTaskForm(this._host);
|
|
|
|
inventoryTaskForm.ShowDialog();
|
|
|
|
inventoryTaskForm.ShowDialog();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void SelectOutBtn_Click(object sender, RoutedEventArgs e)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|