Example #1
0
        public List <CommContracts.MedicineCharge> GetAllChargeFromMedicineAdvice(int AdviceID)
        {
            List <CommContracts.MedicineCharge> list = new List <CommContracts.MedicineCharge>();

            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                var query = from a in ctx.MedicineCharges
                            where a.MedicineDoctorAdviceID == AdviceID
                            select a;
                foreach (DAL.MedicineCharge ass in query)
                {
                    var config = new MapperConfiguration(cfg =>
                    {
                        cfg.CreateMap <DAL.MedicineCharge, CommContracts.MedicineCharge>();
                    });
                    var mapper = config.CreateMapper();

                    CommContracts.MedicineCharge temp = mapper.Map <CommContracts.MedicineCharge>(ass);
                    list.Add(temp);
                }
            }
            return(list);
        }
Example #2
0
        public bool SaveMedicineCharge(CommContracts.MedicineCharge medicineCharge)
        {
            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                var config = new MapperConfiguration(cfg =>
                {
                    cfg.CreateMap <CommContracts.MedicineCharge, DAL.MedicineCharge>().ForMember(x => x.MedicineChargeDetails, opt => opt.Ignore());
                });
                var mapper = config.CreateMapper();

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

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

                List <CommContracts.MedicineChargeDetail> list1 = medicineCharge.MedicineChargeDetails;
                List <DAL.MedicineChargeDetail>           res   = mapperDetail.Map <List <DAL.MedicineChargeDetail> >(list1);;

                temp.MedicineChargeDetails = res;
                ctx.MedicineCharges.Add(temp);
                try
                {
                    ctx.SaveChanges();
                }
#pragma warning disable CS0168 // 声明了变量“ex”,但从未使用过
                catch (Exception ex)
#pragma warning restore CS0168 // 声明了变量“ex”,但从未使用过
                {
                    return(false);
                }
            }
            return(true);
        }
Example #3
0
        // 根据用药医嘱收费单更新库存
        public bool SubdMedicineStoreNumByAdvice(CommContracts.MedicineCharge medicineCharge)
        {
            using (DAL.HisContext ctx = new DAL.HisContext())
            {
                if (medicineCharge == null)
                {
                    return(false);
                }

                // 如果已执行,则不能操作
                //if (recipeChargeBill.zhixingstatus == CommContracts.ReCheckStatusEnum.已审核)
                //    return false;

                if (medicineCharge.MedicineChargeDetails == null)
                {
                    return(false);
                }

                foreach (var tempDetail in medicineCharge.MedicineChargeDetails)
                {
                    if (tempDetail == null)
                    {
                        continue;
                    }

                    var query = from s in ctx.StoreRoomMedicineNums
                                where s.ID == tempDetail.StoreRoomMedicineNumID
                                select s;


                    if (query.Count() == 1)
                    {
                        var temp = query.First();
                        if (temp.Num >= tempDetail.AllNum)
                        {
                            temp.Num -= tempDetail.AllNum;
                        }
                        else
                        {
                            return(false);
                        }
                    }
                    else
                    {
                        return(false);
                    }
                }

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