交接柜加药有该批次则更新;库存列表显示交接柜库存
This commit is contained in:
		
							parent
							
								
									593b55d53f
								
							
						
					
					
						commit
						b58309a583
					
				| 
						 | 
					@ -40,8 +40,10 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
            get => _jiaojie_channelStocks;
 | 
					            get => _jiaojie_channelStocks;
 | 
				
			||||||
            set => SetProperty(ref _jiaojie_channelStocks, value);
 | 
					            set => SetProperty(ref _jiaojie_channelStocks, value);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        //交接柜中无该批次添加实体
 | 
				
			||||||
        public List<ChannelStock> AddJJStock = new List<ChannelStock>();
 | 
					        public List<ChannelStock> AddJJStock = new List<ChannelStock>();
 | 
				
			||||||
 | 
					        //交接柜中有该批次更新实体
 | 
				
			||||||
 | 
					        public List<ChannelStock> UpdateJJStock = new List<ChannelStock>();
 | 
				
			||||||
        /// <summary>
 | 
					        /// <summary>
 | 
				
			||||||
        /// 交接柜的库位信息
 | 
					        /// 交接柜的库位信息
 | 
				
			||||||
        /// </summary>
 | 
					        /// </summary>
 | 
				
			||||||
| 
						 | 
					@ -417,25 +419,25 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
                                                                       .Where(cs => cs.DrawerNo == jiaoStock.DrawerNo && cs.DrugId == jiaoStock.DrugId && cs.ManuNo == csStock.ManuNo && cs.MachineId == "DM5").First();
 | 
					                                                                       .Where(cs => cs.DrawerNo == jiaoStock.DrawerNo && cs.DrugId == jiaoStock.DrugId && cs.ManuNo == csStock.ManuNo && cs.MachineId == "DM5").First();
 | 
				
			||||||
                                        if (jjStockManuNo != null)
 | 
					                                        if (jjStockManuNo != null)
 | 
				
			||||||
                                        {
 | 
					                                        {
 | 
				
			||||||
 | 
					                                            int addNum = csStock.TakeQuantity;
 | 
				
			||||||
                                            //有该批次
 | 
					                                            //有该批次
 | 
				
			||||||
                                            if (jiaoStock.NeedNum > csStock.TakeQuantity)
 | 
					                                            if (jiaoStock.NeedNum > csStock.TakeQuantity)
 | 
				
			||||||
                                            {
 | 
					                                            {
 | 
				
			||||||
                                                //不够取
 | 
					                                                //不够取
 | 
				
			||||||
                                                ChannelStock newStock = new ChannelStock();
 | 
					                                                ChannelStock newStock = new ChannelStock();
 | 
				
			||||||
 | 
					                                                //newStock.Chnguid = jiaoStock.Chnguid;
 | 
				
			||||||
                                                newStock.Chnguid = jiaoStock.Chnguid;
 | 
					                                                //newStock.BaseQuantity = jiaoStock.BaseQuantity;
 | 
				
			||||||
                                                newStock.BaseQuantity = jiaoStock.BaseQuantity;
 | 
					 | 
				
			||||||
                                                newStock.ManuNo = jiaoStock.ManuNo;
 | 
					                                                newStock.ManuNo = jiaoStock.ManuNo;
 | 
				
			||||||
                                                newStock.DrawerNo = jiaoStock.DrawerNo;
 | 
					                                                newStock.DrawerNo = jiaoStock.DrawerNo;
 | 
				
			||||||
                                                newStock.DrugId = jiaoStock.DrugId;
 | 
					                                                newStock.DrugId = jiaoStock.DrugId;
 | 
				
			||||||
                                                newStock.AddToJJNum = csStock.TakeQuantity;
 | 
					                                                newStock.AddToJJNum = addNum;
 | 
				
			||||||
                                                newStock.Id = Guid.NewGuid().ToString();
 | 
					                                                newStock.Id = jjStockManuNo.Id;
 | 
				
			||||||
                                                newStock.MachineId = jiaoStock.MachineId;
 | 
					                                                //newStock.MachineId = jiaoStock.MachineId;
 | 
				
			||||||
                                                newStock.Id = Guid.NewGuid().ToString();
 | 
					                                                //newStock.NeedNum = 0;
 | 
				
			||||||
                                                newStock.NeedNum = 0;
 | 
					                                                //newStock.Quantity = jiaoStock.Quantity + csStock.TakeQuantity;
 | 
				
			||||||
                                                AddJJStock.Add(newStock);
 | 
					                                                UpdateJJStock.Add(newStock);
 | 
				
			||||||
                                                csStock.TakeQuantity = 0;
 | 
					                                                csStock.TakeQuantity = 0;
 | 
				
			||||||
                                                jiaoStock.NeedNum =  jiaoStock.NeedNum- csStock.TakeQuantity;
 | 
					                                                jiaoStock.NeedNum = jiaoStock.NeedNum - csStock.TakeQuantity;
 | 
				
			||||||
                                            }
 | 
					                                            }
 | 
				
			||||||
                                            else
 | 
					                                            else
 | 
				
			||||||
                                            {
 | 
					                                            {
 | 
				
			||||||
| 
						 | 
					@ -447,18 +449,18 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
                                                //csStockList[j].Quantity = csStock.Quantity - jiaoStock.NeedNum;
 | 
					                                                //csStockList[j].Quantity = csStock.Quantity - jiaoStock.NeedNum;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                                                ChannelStock newStock = new ChannelStock();
 | 
					                                                ChannelStock newStock = new ChannelStock();
 | 
				
			||||||
                                                newStock.Chnguid = jiaoStock.Chnguid;
 | 
					                                                //newStock.Chnguid = jiaoStock.Chnguid;
 | 
				
			||||||
                                                newStock.BaseQuantity = jiaoStock.BaseQuantity;
 | 
					                                                //newStock.BaseQuantity = jiaoStock.BaseQuantity;
 | 
				
			||||||
                                                newStock.ManuNo = jiaoStock.ManuNo;
 | 
					                                                newStock.ManuNo = jiaoStock.ManuNo;
 | 
				
			||||||
                                                newStock.DrawerNo = jiaoStock.DrawerNo;
 | 
					                                                newStock.DrawerNo = jiaoStock.DrawerNo;
 | 
				
			||||||
                                                newStock.DrugId = jiaoStock.DrugId;
 | 
					                                                newStock.DrugId = jiaoStock.DrugId;
 | 
				
			||||||
                                                newStock.AddToJJNum = jiaoStock.NeedNum;
 | 
					                                                newStock.AddToJJNum = addNum;
 | 
				
			||||||
                                                newStock.Id = Guid.NewGuid().ToString();
 | 
					                                                newStock.Id = jjStockManuNo.Id;
 | 
				
			||||||
                                                newStock.MachineId = jiaoStock.MachineId;
 | 
					                                                //newStock.MachineId = jiaoStock.MachineId;
 | 
				
			||||||
                                                newStock.Id=Guid.NewGuid().ToString();
 | 
					                                                //newStock.NeedNum = 0;
 | 
				
			||||||
                                                newStock.NeedNum = 0;
 | 
					                                                //newStock.Quantity = jiaoStock.Quantity + csStock.TakeQuantity;
 | 
				
			||||||
                                                AddJJStock.Add(newStock);
 | 
					                                                UpdateJJStock.Add(newStock);
 | 
				
			||||||
                                                csStock.TakeQuantity = csStock.TakeQuantity-jiaoStock.NeedNum;
 | 
					                                                csStock.TakeQuantity = csStock.TakeQuantity - jiaoStock.NeedNum;
 | 
				
			||||||
                                                jiaoStock.NeedNum = 0;
 | 
					                                                jiaoStock.NeedNum = 0;
 | 
				
			||||||
                                                break;
 | 
					                                                break;
 | 
				
			||||||
                                            }
 | 
					                                            }
 | 
				
			||||||
| 
						 | 
					@ -477,7 +479,8 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
                                                newStock.AddToJJNum = csStock.TakeQuantity;
 | 
					                                                newStock.AddToJJNum = csStock.TakeQuantity;
 | 
				
			||||||
                                                newStock.Id = Guid.NewGuid().ToString();
 | 
					                                                newStock.Id = Guid.NewGuid().ToString();
 | 
				
			||||||
                                                newStock.MachineId = jiaoStock.MachineId;
 | 
					                                                newStock.MachineId = jiaoStock.MachineId;
 | 
				
			||||||
                                                newStock.NeedNum= 0;
 | 
					                                                newStock.DrawerType = 1;
 | 
				
			||||||
 | 
					                                                newStock.NeedNum = 0;
 | 
				
			||||||
                                                AddJJStock.Add(newStock);
 | 
					                                                AddJJStock.Add(newStock);
 | 
				
			||||||
                                                jiaoStock.NeedNum = jiaoStock.NeedNum - csStock.TakeQuantity;
 | 
					                                                jiaoStock.NeedNum = jiaoStock.NeedNum - csStock.TakeQuantity;
 | 
				
			||||||
                                                csStockList[j].TakeQuantity = 0;
 | 
					                                                csStockList[j].TakeQuantity = 0;
 | 
				
			||||||
| 
						 | 
					@ -494,7 +497,8 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
                                                newStock.AddToJJNum = jiaoStock.NeedNum;
 | 
					                                                newStock.AddToJJNum = jiaoStock.NeedNum;
 | 
				
			||||||
                                                newStock.NeedNum = 0;
 | 
					                                                newStock.NeedNum = 0;
 | 
				
			||||||
                                                newStock.Id = Guid.NewGuid().ToString();
 | 
					                                                newStock.Id = Guid.NewGuid().ToString();
 | 
				
			||||||
                                                newStock.MachineId=jiaoStock.MachineId;
 | 
					                                                newStock.MachineId = jiaoStock.MachineId;
 | 
				
			||||||
 | 
					                                                newStock.DrawerType = 1;
 | 
				
			||||||
                                                AddJJStock.Add(newStock);
 | 
					                                                AddJJStock.Add(newStock);
 | 
				
			||||||
                                                csStock.TakeQuantity = csStock.TakeQuantity - newStock.AddToJJNum;
 | 
					                                                csStock.TakeQuantity = csStock.TakeQuantity - newStock.AddToJJNum;
 | 
				
			||||||
                                                break;
 | 
					                                                break;
 | 
				
			||||||
| 
						 | 
					@ -507,17 +511,33 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
                                                 .Where(cs => cs.DrawerNo == jiaoStock.DrawerNo)
 | 
					                                                 .Where(cs => cs.DrawerNo == jiaoStock.DrawerNo)
 | 
				
			||||||
                                                 .ExecuteCommand();
 | 
					                                                 .ExecuteCommand();
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                            AddJJStock= AddJJStock.GroupBy(jj => new { jj.DrawerNo, jj.DrugId, jj.ManuNo })
 | 
					 | 
				
			||||||
                            .Select(jj =>
 | 
					 | 
				
			||||||
                            {
 | 
					 | 
				
			||||||
                                var ret = jj.First();
 | 
					 | 
				
			||||||
                                ret.AddToJJNum = jj.Sum(itx => itx.AddToJJNum);
 | 
					 | 
				
			||||||
                                return ret;
 | 
					 | 
				
			||||||
                            }).ToList();
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
                            //保存交接柜数据
 | 
					                            //保存交接柜数据
 | 
				
			||||||
                           SqlSugarHelper.Db.Insertable(AddJJStock).ExecuteCommand();
 | 
					                            if (AddJJStock != null && AddJJStock.Count > 0)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                AddJJStock = AddJJStock.GroupBy(jj => new { jj.DrawerNo, jj.DrugId, jj.ManuNo })
 | 
				
			||||||
 | 
					                                .Select(jj =>
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    var ret = jj.First();
 | 
				
			||||||
 | 
					                                    ret.AddToJJNum = jj.Sum(itx => itx.AddToJJNum);
 | 
				
			||||||
 | 
					                                    return ret;
 | 
				
			||||||
 | 
					                                }).ToList();
 | 
				
			||||||
 | 
					                                SqlSugarHelper.Db.Insertable(AddJJStock).ExecuteCommand();
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					                            if (UpdateJJStock != null && UpdateJJStock.Count > 0)
 | 
				
			||||||
 | 
					                            {
 | 
				
			||||||
 | 
					                                UpdateJJStock = UpdateJJStock.GroupBy(jj => new { jj.DrawerNo, jj.DrugId, jj.ManuNo })
 | 
				
			||||||
 | 
					                                .Select(jj =>
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    var ret = jj.First();
 | 
				
			||||||
 | 
					                                    ret.AddToJJNum = jj.Sum(itx => itx.AddToJJNum);
 | 
				
			||||||
 | 
					                                    return ret;
 | 
				
			||||||
 | 
					                                }).ToList();
 | 
				
			||||||
 | 
					                                for (int i = 0; i < UpdateJJStock.Count; i++)
 | 
				
			||||||
 | 
					                                {
 | 
				
			||||||
 | 
					                                    SqlSugarHelper.Db.Updateable<ChannelStock>().SetColumns(cs => new ChannelStock() { AddToJJNum = UpdateJJStock[i].AddToJJNum }).Where(cs => cs.Id == UpdateJJStock[i].Id).ExecuteCommand();
 | 
				
			||||||
 | 
					                                }
 | 
				
			||||||
 | 
					                            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                            //保存注射剂报表信息
 | 
					                            //保存注射剂报表信息
 | 
				
			||||||
                            for (int j = 0; j < Jiaojie_ChannelStocks.Count; j++)
 | 
					                            for (int j = 0; j < Jiaojie_ChannelStocks.Count; j++)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -198,9 +198,9 @@ namespace DM_Weight.ViewModels
 | 
				
			||||||
            ChannelStocks.Clear();
 | 
					            ChannelStocks.Clear();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            List<DrugInfo> q = SqlSugarHelper.Db.Queryable<DrugInfo>()
 | 
					            List<DrugInfo> q = SqlSugarHelper.Db.Queryable<DrugInfo>()
 | 
				
			||||||
                .Includes<ChannelStock>(di => di.channelStocks.Where(cs => cs.DrawerType == 1).Where(cs => cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1") && cs.DrugId != null).OrderBy(cs => cs.DrawerNo).OrderBy(cs => cs.ColNo).ToList())
 | 
					                .Includes<ChannelStock>(di => di.channelStocks.Where(cs => cs.DrawerType == 1).Where(cs => (cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1") || cs.MachineId == "DM5") && cs.Quantity > 0 && cs.DrugId != null).OrderBy(cs => cs.DrawerNo).OrderBy(cs => cs.ColNo).ToList())
 | 
				
			||||||
                .WhereIF(!String.IsNullOrEmpty(SearchValue), di => di.DrugName == SearchValue)
 | 
					                .WhereIF(!String.IsNullOrEmpty(SearchValue), di => di.DrugName == SearchValue)
 | 
				
			||||||
              .Where(di => di.channelStocks.Any(cs => cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM1") && cs.DrugId != null))
 | 
					              .Where(di => di.channelStocks.Any(cs =>(cs.MachineId.Equals(ConfigurationManager.AppSettings["machineId"] ?? "DM3")||cs.MachineId=="DM5" )&&cs.Quantity>0&& cs.DrugId != null))
 | 
				
			||||||
              .OrderBy(cs => cs.DrugId)
 | 
					              .OrderBy(cs => cs.DrugId)
 | 
				
			||||||
              .ToList();
 | 
					              .ToList();
 | 
				
			||||||
            Drugs = q;
 | 
					            Drugs = q;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue