Exemple #1
0
        public List <CommContracts.MaterialInStore> getAllMaterialInStore(int StoreID, CommContracts.
                                                                          InStoreEnum inStoreEnum,
                                                                          DateTime StartInStoreTime,
                                                                          DateTime EndInStoreTime,
                                                                          string InStoreNo = "")
        {
            List <CommContracts.MaterialInStore> list = new List <CommContracts.MaterialInStore>();

            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                var query = from a in ctx.MaterialInStores
                            where a.ToStoreID == StoreID &&
                            a.InStoreEnum == (DAL.InStoreEnum)inStoreEnum &&
                            a.OperateTime > StartInStoreTime &&
                            a.OperateTime < EndInStoreTime &&
                            a.NO.StartsWith(InStoreNo)
                            orderby a.OperateTime descending
                            select a;

                foreach (DAL.MaterialInStore ass in query)
                {
                    var config = new MapperConfiguration(cfg =>
                    {
                        cfg.CreateMap <DAL.MaterialInStore, CommContracts.MaterialInStore>();
                    });
                    var mapper = config.CreateMapper();

                    CommContracts.MaterialInStore temp = mapper.Map <CommContracts.MaterialInStore>(ass);
                    list.Add(temp);
                }
            }
            return(list);
        }
        private bool MySaveMaterialInStore(bool bIsRecheck = false)
        {
            var vm = this.DataContext as HISGUIMedicineVM;

            CommContracts.MaterialInStore materialInStore = new CommContracts.MaterialInStore();
            if (vm.CurrentUser != null)
            {
                materialInStore.OperateUserID = vm.CurrentUser.ID;
            }
            if (vm.CurrentStoreRoom != null)
            {
                materialInStore.ToStoreID = vm.CurrentStoreRoom.ID;
            }
            if ((CommContracts.Supplier) this.SupplierEdit.SelectedItem != null)
            {
                materialInStore.FromSupplierID = ((CommContracts.Supplier) this.SupplierEdit.SelectedItem).ID;
            }
            materialInStore.MaterialInStoreDetails = GetDetails();

            bool?result = vm?.SaveMaterialInStock(materialInStore, bIsRecheck);

            if (result.HasValue)
            {
                if (result.Value)
                {
                    return(true);
                }
            }

            return(false);
        }
Exemple #3
0
        private void AddNewStockBtn_Click(object sender, RoutedEventArgs e)
        {
            var vm = this.DataContext as HISGUIMedicineVM;

            if (vm.IsMedicineOrMaterial)
            {
                var currentInStore = new CommContracts.MedicineInStore();
                vm.CurrentMedicineInStore = currentInStore;
                vm.IsInitViewEdit         = true;
                vm?.ShowMedicineInStoreDetail();
            }
            else
            {
                var currentInStore = new CommContracts.MaterialInStore();
                vm.CurrentMaterialInStore = currentInStore;
                vm.IsInitViewEdit         = true;
                vm?.ShowMaterialInStoreDetail();
            }
        }
Exemple #4
0
        public bool SaveMaterialInStock(CommContracts.MaterialInStore MaterialInStore)
        {
            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                var config = new MapperConfiguration(cfg =>
                {
                    cfg.CreateMap <CommContracts.MaterialInStore, DAL.MaterialInStore>().ForMember(x => x.MaterialInStoreDetails, opt => opt.Ignore())
                    .ForMember(x => x.FromSupplier, opt => opt.Ignore());
                });
                var mapper = config.CreateMapper();

                DAL.MaterialInStore temp = new DAL.MaterialInStore();
                temp = mapper.Map <DAL.MaterialInStore>(MaterialInStore);

                var configDetail = new MapperConfiguration(ctr =>
                {
                    ctr.CreateMap <CommContracts.MaterialInStoreDetail, DAL.MaterialInStoreDetail>().ForMember(x => x.MaterialInStore, opt => opt.Ignore());
                });
                var mapperDetail = configDetail.CreateMapper();

                List <CommContracts.MaterialInStoreDetail> list1 = MaterialInStore.MaterialInStoreDetails;
                List <DAL.MaterialInStoreDetail>           res   = mapperDetail.Map <List <DAL.MaterialInStoreDetail> >(list1);

                temp.MaterialInStoreDetails = res;
                ctx.MaterialInStores.Add(temp);
                try
                {
                    ctx.SaveChanges();
                }
#pragma warning disable CS0168 // 声明了变量“ex”,但从未使用过
                catch (Exception ex)
#pragma warning restore CS0168 // 声明了变量“ex”,但从未使用过
                {
                    return(false);
                }
            }
            return(true);
        }
Exemple #5
0
        public CommContracts.MaterialInStore GetMaterialInStore(int Id)
        {
            CommContracts.MaterialInStore assay = new CommContracts.MaterialInStore();
            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                var query = from t in ctx.MaterialInStores
                            where t.ID == Id
                            select t;
                var config = new MapperConfiguration(cfg =>
                {
                    cfg.CreateMap <DAL.MaterialInStore, CommContracts.MaterialInStore>();
                });
                var mapper = config.CreateMapper();


                foreach (var tem in query)
                {
                    assay = mapper.Map <CommContracts.MaterialInStore>(tem);
                    break;
                }
            }
            return(assay);
        }
Exemple #6
0
        public bool RecheckMaterialInStock(CommContracts.MaterialInStore MaterialInStore)
        {
            using (DAL.HisContext db = new DAL.HisContext())
            {
                var tem = new DAL.MaterialInStore
                {
                    ID                = MaterialInStore.ID,
                    ReCheckUserID     = MaterialInStore.ReCheckUserID,
                    ReCheckStatusEnum = (DAL.ReCheckStatusEnum)MaterialInStore.ReCheckStatusEnum
                };
                //将实体附加到对象管理器中
                db.MaterialInStores.Attach(tem);

                //获取到user的状态实体,可以修改其状态
                var setEntry = ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.GetObjectStateEntry(tem);
                //只修改实体的ReCheckUserID属性和ReCheckStatusEnum属性
                setEntry.SetModifiedProperty("ReCheckUserID");
                setEntry.SetModifiedProperty("ReCheckStatusEnum");

                db.SaveChanges();
            }

            return(true);
        }
Exemple #7
0
 // 保存物资入库单
 public bool SaveMaterialInStock(CommContracts.MaterialInStore materialInStore, bool bIsAutoCheck = false)
 {
     CommClient.MaterialInStore myd = new CommClient.MaterialInStore();
     return(myd.SaveMaterialInStock(materialInStore));
 }
Exemple #8
0
        public bool ReCheckMaterialInStore(CommContracts.MaterialInStore MaterialInStore)
        {
            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                if (MaterialInStore.ReCheckStatusEnum == CommContracts.ReCheckStatusEnum.已审核)
                {
                    return(false);
                }

                if (MaterialInStore.MaterialInStoreDetails == null)
                {
                    return(false);
                }

                foreach (var tempDetail in MaterialInStore.MaterialInStoreDetails)
                {
                    if (tempDetail == null)
                    {
                        continue;
                    }

                    var query = from s in ctx.StoreRoomMaterialNums
                                where s.Batch == tempDetail.Batch &&
                                s.MaterialItemID == tempDetail.MaterialID &&
                                s.StoreRoomID == MaterialInStore.ToStoreID &&
                                s.StorePrice == tempDetail.StorePrice &&
                                s.SupplierID == MaterialInStore.FromSupplierID &&
                                s.ExpirationDate == tempDetail.ExpirationDate
                                select s;


                    if (query.Count() == 0)
                    {
                        DAL.StoreRoomMaterialNum storeRoomMaterialNum = new DAL.StoreRoomMaterialNum();
                        storeRoomMaterialNum.Batch          = tempDetail.Batch;
                        storeRoomMaterialNum.SupplierID     = MaterialInStore.FromSupplierID;
                        storeRoomMaterialNum.MaterialItemID = tempDetail.MaterialID;
                        storeRoomMaterialNum.StoreRoomID    = MaterialInStore.ToStoreID;
                        storeRoomMaterialNum.Num            = tempDetail.Num;
                        storeRoomMaterialNum.StorePrice     = tempDetail.StorePrice;
                        storeRoomMaterialNum.ExpirationDate = tempDetail.ExpirationDate;
                        ctx.StoreRoomMaterialNums.Add(storeRoomMaterialNum);
                    }
                    else
                    {
                        var temp = query.First();
                        temp.Num += tempDetail.Num;
                    }
                }

                try
                {
                    ctx.SaveChanges();
                }
#pragma warning disable CS0168 // 声明了变量“ex”,但从未使用过
                catch (Exception ex)
#pragma warning restore CS0168 // 声明了变量“ex”,但从未使用过
                {
                    return(false);
                }
            }
            return(true);
        }