예제 #1
0
        public void UpdatePNT(ObservableCollection <DTO_PhieuNhapThuoc> listPNT, DTO_PhieuNhapThuoc phieuNhapThuoc, ObservableCollection <DTO_CTPhieuNhapThuoc> listCTPNT)
        {
            List <double> kq = listCTPNT.Where(c => c.MaPNT == phieuNhapThuoc.MaPNT).Select(c => c.ThanhTien).ToList <double>();

            foreach (var item in kq)
            {
                phieuNhapThuoc.TongTien += item;
            }

            LoadNP_NhanVien(phieuNhapThuoc);

            listPNT.Add(phieuNhapThuoc);
        }
예제 #2
0
 public async Task <string> AddPhieuNhapThuocAsync(DTO_PhieuNhapThuoc phieuNhapThuoc)
 {
     using (var context = new SQLServerDBContext())
     {
         string res = null;
         try
         {
             res = await context.Database.SqlQuery <string>("exec proc_PNhapThuoc_insert @1, @2",
                                                            new SqlParameter[]
             {
                 new SqlParameter("@1", phieuNhapThuoc.NgayNhap),
                 new SqlParameter("@2", phieuNhapThuoc.MaDuocSi)
             }).FirstOrDefaultAsync();
         }
         catch (Exception e)
         {
             Debug.WriteLine("[ERROR] " + e.Message);
         }
         return(res);
     }
 }
예제 #3
0
 public bool LoadNP_NhanVien(DTO_PhieuNhapThuoc phieuNhapThuoc)
 {
     try
     {
         using (var context = new SQLServerDBContext())
         {
             context.PhieuNhapThuoc.Attach(phieuNhapThuoc);
             var entry = context.Entry(phieuNhapThuoc);
             if (!entry.Reference(p => p.NguoiLap).IsLoaded)
             {
                 entry.Reference(p => p.NguoiLap).Load();
             }
             return(true);
         }
     }
     catch (Exception e)
     {
         Debug.WriteLine($"[ERRROR DAL PHIEU NHAP THUOC] {e.Message}");
         return(false);
     }
 }
예제 #4
0
 public bool LoadNP_CTPhieuNhapThuoc(DTO_PhieuNhapThuoc phieuNhapThuoc)
 {
     try
     {
         using (var context = new SQLServerDBContext())
         {
             context.PhieuNhapThuoc.Attach(phieuNhapThuoc);
             var entry = context.Entry(phieuNhapThuoc);
             if (!entry.Collection(p => p.DS_CTPhieuNhapThuoc).IsLoaded)
             {
                 entry.Collection(p => p.DS_CTPhieuNhapThuoc).Load();
             }
             return(true);
         }
     }
     catch (Exception e)
     {
         Debug.WriteLine($"[ERRROR DAL THUOC] {e.Message}");
         return(false);
     }
 }
예제 #5
0
        public async Task AddCTPhieuNhapThuocAsync(ObservableCollection <DTO_Thuoc> listThuoc, DTO_PhieuNhapThuoc phieuNhapThuoc, ObservableCollection <DTO_PhieuNhapThuoc> listPNT, ObservableCollection <DTO_CTPhieuNhapThuoc> listCTPNT)
        {
            string tempID = await BUSManager.PhieuNhapThuocBUS.AddPhieuNhapThuocAsync(phieuNhapThuoc);

            if (tempID == null)
            {
                return;
            }

            phieuNhapThuoc.MaPNT = tempID;

            foreach (DTO_Thuoc item in listThuoc)
            {
                DTO_CTPhieuNhapThuoc cTPhieuNhapThuoc;
                if (!BUSManager.ThuocBUS.IsThuocDaTonTai(item))
                {
                    item.MaThuoc = await BUSManager.ThuocBUS.AddThuocAsync(item);

                    cTPhieuNhapThuoc = new DTO_CTPhieuNhapThuoc(tempID, item.MaThuoc, item.SoLuong, item.DonGia);
                }
                else
                {
                    cTPhieuNhapThuoc = new DTO_CTPhieuNhapThuoc(tempID, item.MaThuoc, item.SoLuong, item.DonGia);
                }
                DALManager.CTPhieuNhapThuocDAL.AddCTPhieuNhapThuoc(cTPhieuNhapThuoc);

                LoadNP_Thuoc(cTPhieuNhapThuoc);
                listCTPNT.Add(cTPhieuNhapThuoc);
            }


            BUSManager.PhieuNhapThuocBUS.UpdatePNT(listPNT, phieuNhapThuoc, listCTPNT);
        }
예제 #6
0
 public async Task <string> AddPhieuNhapThuocAsync(DTO_PhieuNhapThuoc phieuNhapThuoc)
 {
     return(await DALManager.PhieuNhapThuocDAL.AddPhieuNhapThuocAsync(phieuNhapThuoc));
 }
예제 #7
0
 public bool LoadNP_NhanVien(DTO_PhieuNhapThuoc phieuNhapThuoc)
 {
     return(DALManager.PhieuNhapThuocDAL.LoadNP_NhanVien(phieuNhapThuoc));
 }