调拨单上批次对应的药在库存里绑定药的都要列出来
This commit is contained in:
parent
7fb942977a
commit
0ae94e65ef
|
@ -308,7 +308,7 @@ namespace DM_Weight.ViewModels
|
|||
//.Includes(cl => cl.channelStocks, dr => dr.DrugInfo, d => d.DrugManuNos)
|
||||
.Where(cl => cl.DrugId == invoices[i].DrugId && cl.MachineId == (ConfigurationManager.AppSettings["machineId"] ?? "DM1")).ToList();
|
||||
ChannelList channelLst = channelL.Count > 0 ? channelL[0] : null;
|
||||
if (channelLst == null || channelLst.Id is null)
|
||||
if (channelL.Count <= 0)
|
||||
{
|
||||
//药品未绑定库位,需要先绑药
|
||||
//AlertMsg alertMsg = new AlertMsg
|
||||
|
@ -343,18 +343,45 @@ namespace DM_Weight.ViewModels
|
|||
_eventAggregator.GetEvent<SnackbarEvent>().Publish(alertMsg);
|
||||
continue;
|
||||
}
|
||||
ChannelStock stock = new ChannelStock();
|
||||
//没有库存写入一条数据
|
||||
stock.MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1";
|
||||
stock.DrawerNo = channelLst.DrawerNo;
|
||||
stock.BoardType = channelLst.BoardType;
|
||||
stock.DrawerType = channelLst.DrawerType;
|
||||
stock.ColNo = channelLst.ColNo;
|
||||
stock.DrugId = channelLst.DrugId;
|
||||
stock.ManuNo = invoicesManuNo[j].DrugManuNo;
|
||||
stock.EffDate = manuNoList[0].EffDate;
|
||||
stock.Chnguid = channelLst.Id;
|
||||
stockList.Add(stock);
|
||||
//没有根据药品绑定库位写入数据
|
||||
for (int k = 0; k < channelL.Count; k++)
|
||||
{
|
||||
|
||||
ChannelStock stock = new ChannelStock();
|
||||
stock.MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1";
|
||||
stock.DrawerNo = channelL[k].DrawerNo;
|
||||
stock.BoardType = channelL[k].BoardType;
|
||||
stock.DrawerType = channelL[k].DrawerType;
|
||||
stock.ColNo = channelL[k].ColNo;
|
||||
stock.DrugId = channelL[k].DrugId;
|
||||
stock.ManuNo = invoicesManuNo[j].DrugManuNo;
|
||||
stock.EffDate = manuNoList[0].EffDate;
|
||||
stock.Chnguid = channelL[k].Id;
|
||||
stockList.Add(stock);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//药品有库存,则除了将对应药品批次数据列出来外,还要将当前已绑定的药品下添加上该批次
|
||||
for (int k = 0; k < channelL.Count; k++)
|
||||
{
|
||||
//有库存且批次抽屉库位与将要插入的批次抽屉库位一致则跳过
|
||||
if(stockList.Where(t=>t.ManuNo== invoicesManuNo[j].DrugManuNo&&t.ColNo== channelL[k].ColNo&&t.DrawerNo== channelL[k].DrawerNo).FirstOrDefault()!=null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
ChannelStock stock = new ChannelStock();
|
||||
stock.MachineId = ConfigurationManager.AppSettings["machineId"] ?? "DM1";
|
||||
stock.DrawerNo = channelL[k].DrawerNo;
|
||||
stock.BoardType = channelL[k].BoardType;
|
||||
stock.DrawerType = channelL[k].DrawerType;
|
||||
stock.ColNo = channelL[k].ColNo;
|
||||
stock.DrugId = channelL[k].DrugId;
|
||||
stock.ManuNo = invoicesManuNo[j].DrugManuNo;
|
||||
stock.EffDate = manuNoList[0].EffDate;
|
||||
stock.Chnguid = channelL[k].Id;
|
||||
stockList.Add(stock);
|
||||
}
|
||||
}
|
||||
//stock.AddQuantity = invoicesManuNo[j].quantity;
|
||||
//stockList.ForEach(s => s.AddQuantity = invoicesManuNo[j].quantity);
|
||||
|
@ -635,22 +662,22 @@ namespace DM_Weight.ViewModels
|
|||
{
|
||||
//if (singleChannels[i].BoardType == 5)
|
||||
//{
|
||||
List<ChannelStock> channelStockEffDate = SqlSugarHelper.Db.Queryable<ChannelStock>()
|
||||
.Where(cs => cs.MachineId == singleChannels[i].MachineId)
|
||||
.Where(cs => cs.DrawerNo == singleChannels[i].DrawerNo)
|
||||
.Where(cs => cs.ColNo == singleChannels[i].ColNo)
|
||||
.Where(cs=>cs.Quantity>0)
|
||||
.OrderBy(cs => cs.EffDate).ToList();
|
||||
int totalQuantity = channelStockEffDate.Sum(it => it.Quantity);
|
||||
List<ChannelStock> channelStockEffDate = SqlSugarHelper.Db.Queryable<ChannelStock>()
|
||||
.Where(cs => cs.MachineId == singleChannels[i].MachineId)
|
||||
.Where(cs => cs.DrawerNo == singleChannels[i].DrawerNo)
|
||||
.Where(cs => cs.ColNo == singleChannels[i].ColNo)
|
||||
.Where(cs => cs.Quantity > 0)
|
||||
.OrderBy(cs => cs.EffDate).ToList();
|
||||
int totalQuantity = channelStockEffDate.Sum(it => it.Quantity);
|
||||
|
||||
//将库位多批次的总库存数更新标签
|
||||
_portUtil.WriteQuantity(channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo, totalQuantity);
|
||||
Thread.Sleep(200);
|
||||
_portUtil.WriteChannelInfo(6, channelStockEffDate[0].EffDate == null ? "" : channelStockEffDate[0].EffDate, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
|
||||
Thread.Sleep(200);
|
||||
_portUtil.WriteChannelInfo(5, channelStockEffDate[0].ManuNo, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
|
||||
Thread.Sleep(200);
|
||||
_portUtil.ShowContent(channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
|
||||
//将库位多批次的总库存数更新标签
|
||||
_portUtil.WriteQuantity(channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo, totalQuantity);
|
||||
Thread.Sleep(200);
|
||||
_portUtil.WriteChannelInfo(6, channelStockEffDate[0].EffDate == null ? "" : channelStockEffDate[0].EffDate, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
|
||||
Thread.Sleep(200);
|
||||
_portUtil.WriteChannelInfo(5, channelStockEffDate[0].ManuNo, channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
|
||||
Thread.Sleep(200);
|
||||
_portUtil.ShowContent(channelStockEffDate[0].DrawerNo, channelStockEffDate[0].ColNo);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue