Пример #1
0
        private static ActionResult CapnhatChiphiThuoc(KcbLuotkham objLuotkham)
        {
            using (var Scope = new TransactionScope())
            {
                THUOC_GIATHEO_KHOAKCB = THU_VIEN_CHUNG.Laygiatrithamsohethong("THUOC_GIATHEO_KHOAKCB", "0", true) == "1";
                SqlQuery sqlQuery;
                sqlQuery = new Select().From(KcbDonthuocChitiet.Schema)
                           .Where(KcbDonthuocChitiet.Columns.IdDonthuoc).In(
                    new Select(KcbDonthuoc.Columns.IdDonthuoc).From(KcbDonthuoc.Schema).Where(
                        KcbDonthuoc.Columns.MaLuotkham).
                    IsEqualTo(objLuotkham.MaLuotkham).And(KcbDonthuoc.Columns.IdBenhnhan).
                    IsEqualTo(objLuotkham.IdBenhnhan));
                var objChitietDonthuocCollection =
                    sqlQuery.ExecuteAsCollection <KcbDonthuocChitietCollection>();

                bool ApdunggiathuocDoituong = THU_VIEN_CHUNG.Laygiatrithamsohethong("APDUNG_GIATHUOC_DOITUONG", "0", true) == "1";

                DmucDoituongkcb _DmucDoituongkcb = new Select().From(DmucDoituongkcb.Schema).Where(DmucDoituongkcb.Columns.MaDoituongKcb).IsEqualTo(objLuotkham.MaDoituongKcb).ExecuteSingle <DmucDoituongkcb>();
                if (_DmucDoituongkcb == null)
                {
                    return(ActionResult.Success);
                }
                foreach (KcbDonthuocChitiet objChitietDonthuoc in objChitietDonthuocCollection)
                {
                    if (Utility.Int16Dbnull(objChitietDonthuoc.TrangthaiThanhtoan, 0) == 0)
                    {
                        DmucThuoc _DmucThuoc = DmucThuoc.FetchByID(objChitietDonthuoc.IdThuoc);

                        decimal PtramBHYT = Utility.DecimaltoDbnull(objLuotkham.PtramBhyt);
                        if (ApdunggiathuocDoituong || Utility.Byte2Bool(_DmucDoituongkcb.GiathuocQuanhe.Value)) // globalVariables.gv_GiathuoctheoGiatrongKho)
                        {
                            //Giá theo quan he-->
                            QheDoituongThuoc _item = THU_VIEN_CHUNG.LayQheDoituongThuoc(objLuotkham.MaDoituongKcb,
                                                                                        objChitietDonthuoc.IdThuoc,
                                                                                        objLuotkham.MaKhoaThuchien, CLS_GIATHEO_KHOAKCB);
                            if (_item != null)
                            {
                                objChitietDonthuoc.DonGia    = Utility.DecimaltoDbnull(_item.DonGia);
                                objChitietDonthuoc.PhuThu    = (Utility.isTrue(objLuotkham.DungTuyen.Value) ? Utility.DecimaltoDbnull(_item.PhuthuDungtuyen) : Utility.DecimaltoDbnull(_item.PhuthuTraituyen));
                                objChitietDonthuoc.TuTuc     = 0;
                                objChitietDonthuoc.PtramBhyt = Utility.DecimaltoDbnull(PtramBHYT);
                            }
                            else
                            {
                                _item = THU_VIEN_CHUNG.LayQheDoituongThuoc("DV",
                                                                           objChitietDonthuoc.IdThuoc,
                                                                           objLuotkham.MaKhoaThuchien, THUOC_GIATHEO_KHOAKCB);
                                if (_item != null)
                                {
                                    objChitietDonthuoc.DonGia    = Utility.DecimaltoDbnull(_item.DonGia);
                                    objChitietDonthuoc.PhuThu    = (Utility.isTrue(objLuotkham.DungTuyen.Value) ? Utility.DecimaltoDbnull(_item.PhuthuDungtuyen) : Utility.DecimaltoDbnull(_item.PhuthuTraituyen));
                                    objChitietDonthuoc.TuTuc     = 1;
                                    objChitietDonthuoc.PtramBhyt = 0;
                                }
                            }
                        }
                        else //Giá theo kho-->
                        {
                            TThuockho objTK = TThuockho.FetchByID(objChitietDonthuoc.IdThuockho);
                            if (objTK != null)
                            {
                                objChitietDonthuoc.DonGia = objLuotkham.IdLoaidoituongKcb == 0 ? Utility.DecimaltoDbnull(objTK.GiaBhyt.Value, objChitietDonthuoc.DonGia) : objTK.GiaBan;
                            }
                            if (objLuotkham.IdLoaidoituongKcb == 1)//Đối tượng dịch vụ-->ko cần phải đánh dấu tự túc
                            {
                                objChitietDonthuoc.TuTuc = 0;
                            }
                            if (Utility.Int32Dbnull(objChitietDonthuoc.TuTuc, 0) == 1)
                            {
                                objChitietDonthuoc.BhytChitra  = 0;
                                objChitietDonthuoc.BnhanChitra = Utility.DecimaltoDbnull(objChitietDonthuoc.DonGia, 0);
                                objChitietDonthuoc.PtramBhyt   = 0;
                            }
                            else
                            {
                                objChitietDonthuoc.BhytChitra = Utility.DecimaltoDbnull(objChitietDonthuoc.DonGia) *
                                                                Utility.DecimaltoDbnull(PtramBHYT) / 100;

                                objChitietDonthuoc.BnhanChitra = Utility.DecimaltoDbnull(objChitietDonthuoc.DonGia, 0) -
                                                                 Utility.DecimaltoDbnull(objChitietDonthuoc.BhytChitra, 0);
                                objChitietDonthuoc.PtramBhyt = Utility.DecimaltoDbnull(PtramBHYT);
                            }
                        }
                        if (_DmucThuoc != null && Utility.Int32Dbnull(_DmucThuoc.TuTuc, 0) == 1)
                        {
                            objChitietDonthuoc.TuTuc = 1;       //Ke ca co trong bang quan he
                        }
                        if (objLuotkham.IdLoaidoituongKcb == 1) //Đối tượng dịch vụ-->ko cần phải đánh dấu tự túc
                        {
                            objChitietDonthuoc.TuTuc = 0;
                        }
                        if (Utility.Int32Dbnull(objChitietDonthuoc.TuTuc, 0) == 1)
                        {
                            objChitietDonthuoc.BhytChitra  = 0;
                            objChitietDonthuoc.BnhanChitra = Utility.DecimaltoDbnull(objChitietDonthuoc.DonGia, 0);
                            objChitietDonthuoc.PtramBhyt   = 0;
                        }
                        else
                        {
                            objChitietDonthuoc.BhytChitra = Utility.DecimaltoDbnull(objChitietDonthuoc.DonGia) *
                                                            Utility.DecimaltoDbnull(PtramBHYT) / 100;

                            objChitietDonthuoc.BnhanChitra = Utility.DecimaltoDbnull(objChitietDonthuoc.DonGia, 0) -
                                                             Utility.DecimaltoDbnull(objChitietDonthuoc.BhytChitra, 0);
                            objChitietDonthuoc.PtramBhyt = Utility.DecimaltoDbnull(PtramBHYT);
                        }
                    }
                    else
                    {
                        return(ActionResult.Cancel);
                    }
                }
                objChitietDonthuocCollection.SaveAll();
                Scope.Complete();
                return(ActionResult.Success);
            }
        }
        private void RemoveDetails()
        {
            try
            {
                string  manhacungcap = "";
                string  NgayHethan   = "";
                string  solo         = "";
                int     id_thuoc     = -1;
                decimal dongia       = 0m;
                decimal Giaban       = 0m;
                Int32   soluong      = 0;
                decimal vat          = 0m;
                int     isHetHan     = 0;
                long    IdThuockho   = 0;
                foreach (Janus.Windows.GridEX.GridEXRow gridExRow in grdPhieuXuatChiTiet.GetCheckedRows())
                {
                    NgayHethan   = Utility.sDbnull(gridExRow.Cells["NGAY_HET_HAN"].Value);
                    solo         = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoLo].Value);
                    id_thuoc     = Utility.Int32Dbnull(gridExRow.Cells[TThuockho.Columns.IdThuoc].Value, -1);
                    IdThuockho   = Utility.Int32Dbnull(gridExRow.Cells[TThuockho.Columns.IdThuockho].Value, -1);
                    dongia       = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaNhap].Value, 0);
                    Giaban       = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaBan].Value, 0);
                    soluong      = Utility.Int32Dbnull(gridExRow.Cells["SO_LUONG"].Value, 0);
                    vat          = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.Vat].Value, 0);
                    isHetHan     = Utility.Int32Dbnull(gridExRow.Cells["IsHetHan"].Value, 0);
                    manhacungcap = Utility.sDbnull(gridExRow.Cells[TThuockho.Columns.MaNhacungcap].Value, 0);



                    DataRow[] arrDr = m_dtDataThuocKho.Select(TPhieuNhapxuatthuocChitiet.Columns.IdThuockho + "=" + IdThuockho.ToString());
                    if (arrDr.Length <= 0)
                    {
                        DataRow drv = m_dtDataThuocKho.NewRow();


                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuoc] = id_thuoc;
                        drv["ten_donvitinh"] = Utility.sDbnull(gridExRow.Cells["ten_donvitinh"].Value);
                        drv["IsHetHan"]      = isHetHan;
                        DmucThuoc objLDrug = DmucThuoc.FetchByID(id_thuoc);
                        if (objLDrug != null)
                        {
                            drv[DmucThuoc.Columns.TenThuoc]    = Utility.sDbnull(objLDrug.TenThuoc);
                            drv[DmucThuoc.Columns.HamLuong]    = Utility.sDbnull(objLDrug.HamLuong);
                            drv[DmucThuoc.Columns.HoatChat]    = Utility.sDbnull(objLDrug.HoatChat);
                            drv[DmucThuoc.Columns.NuocSanxuat] = Utility.sDbnull(objLDrug.NuocSanxuat);
                            drv[DmucThuoc.Columns.HangSanxuat] = Utility.sDbnull(objLDrug.HangSanxuat);
                        }
                        drv[TPhieuNhapxuatthuocChitiet.Columns.Vat]          = vat;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaNhap]      = dongia;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.MaNhacungcap] = manhacungcap;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoLo]         = solo;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuockho]   = IdThuockho;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaBan]       = Giaban;

                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoLuong]    = soluong;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.ThanhTien]  = dongia * soluong;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.ChietKhau]  = 0;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.NgayHethan] = NgayHethan;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdPhieu]    = -1;
                        m_dtDataThuocKho.Rows.Add(drv);
                    }
                    else
                    {
                        arrDr[0]["SO_LUONG"]      = Utility.Int32Dbnull(arrDr[0]["SO_LUONG"]) + soluong;
                        arrDr[0]["SO_LUONG_THAT"] = arrDr[0]["SO_LUONG"];
                        m_dtDataThuocKho.AcceptChanges();
                    }
                    gridExRow.Delete();
                    grdPhieuXuatChiTiet.UpdateData();
                    grdPhieuXuatChiTiet.Refresh();
                    m_dtDataPhieuChiTiet.AcceptChanges();
                    m_dtDataThuocKho.AcceptChanges();
                }
                ModifyCommand();
            }
            catch (Exception ex)
            {
                Utility.ShowMsg("Lỗi khi hủy chuyển thuốc:\n" + ex.Message);
            }
        }
Пример #3
0
        private void AddDetailNext(GridEXRow gridExRow)
        {
            try
            {
                string   manhacungcap      = "";
                string   NgayHethan        = "";
                string   solo              = "";
                int      id_thuoc          = -1;
                decimal  GiaNhap           = 0m;
                decimal  Giaban            = 0m;
                decimal  Dongia            = 0m;
                Int32    soluongchuyen     = 0;
                decimal  vat               = 0m;
                int      isHetHan          = 0;
                long     IdThuockho        = 0;
                int      soluongthat       = 0;
                int      tongsoluongchuyen = 0;
                DateTime NgayNhap          = DateTime.Now;
                decimal  GiaBhyt           = 0m;
                tongsoluongchuyen = 0;
                soluongthat       = Utility.Int32Dbnull(gridExRow.Cells["SO_LUONG_THAT"].Value);
                soluongchuyen     = Utility.Int32Dbnull(gridExRow.Cells["SO_LUONG_CHUYEN"].Value, 0);
                if (soluongchuyen > 0)
                {
                    NgayHethan   = Utility.sDbnull(gridExRow.Cells["NGAY_HET_HAN"].Value);
                    solo         = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoLo].Value);
                    id_thuoc     = Utility.Int32Dbnull(gridExRow.Cells[TThuockho.Columns.IdThuoc].Value, -1);
                    Dongia       = Utility.DecimaltoDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.DonGia].Value, 0);
                    GiaNhap      = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaNhap].Value, 0);
                    Giaban       = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaBan].Value, 0);
                    GiaBhyt      = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaBhyt].Value, 0);
                    NgayNhap     = Convert.ToDateTime(gridExRow.Cells[TThuockho.Columns.NgayNhap].Value).Date;
                    vat          = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.Vat].Value, 0);
                    isHetHan     = Utility.Int32Dbnull(gridExRow.Cells["IsHetHan"].Value, 0);
                    manhacungcap = Utility.sDbnull(gridExRow.Cells[TThuockho.Columns.MaNhacungcap].Value, 0);
                    IdThuockho   = Utility.Int32Dbnull(gridExRow.Cells[TThuockho.Columns.IdThuockho].Value, -1);
                    DataRow[] arrDr = m_dtDataPhieuChiTiet.Select(TPhieuNhapxuatthuocChitiet.Columns.IdThuockho + "=" + IdThuockho.ToString());
                    if (arrDr.Length <= 0)
                    {
                        DataRow drv = m_dtDataPhieuChiTiet.NewRow();
                        drv[TPhieuNhapxuatthuocChitiet.Columns.MotaThem] = String.Empty;

                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuoc] = id_thuoc;
                        drv["ten_donvitinh"] = Utility.sDbnull(gridExRow.Cells["ten_donvitinh"].Value);
                        drv["IsHetHan"]      = isHetHan;
                        DmucThuoc objLDrug = DmucThuoc.FetchByID(id_thuoc);
                        if (objLDrug != null)
                        {
                            drv[DmucThuoc.Columns.TenThuoc]    = Utility.sDbnull(objLDrug.TenThuoc);
                            drv[DmucThuoc.Columns.HamLuong]    = Utility.sDbnull(objLDrug.HamLuong);
                            drv[DmucThuoc.Columns.HoatChat]    = Utility.sDbnull(objLDrug.HoatChat);
                            drv[DmucThuoc.Columns.NuocSanxuat] = Utility.sDbnull(objLDrug.NuocSanxuat);
                            drv[DmucThuoc.Columns.HangSanxuat] = Utility.sDbnull(objLDrug.HangSanxuat);
                        }
                        drv[TPhieuNhapxuatthuocChitiet.Columns.NgayNhap]           = NgayNhap;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaBhyt]            = GiaBhyt;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaPhuthuDungtuyen] = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.PhuthuDungtuyen].Value, 0);
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaPhuthuTraituyen] = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.PhuthuTraituyen].Value, 0);

                        drv[TPhieuNhapxuatthuocChitiet.Columns.Vat]          = vat;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.MotaThem]     = txtLydohuy.Text;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaNhap]      = GiaNhap;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.MaNhacungcap] = manhacungcap;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoLo]         = solo;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoDky]        = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoDky].Value);
                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoQdinhthau]  = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoQdinhthau].Value);
                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuockho]   = IdThuockho;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaBan]       = Giaban;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdChuyen]     = IdThuockho;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoLuong]      = soluongchuyen;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.DonGia]       = Dongia;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.ThanhTien]    = Dongia * soluongchuyen;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.ChietKhau]    = 0;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.NgayHethan]   = NgayHethan;
                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdPhieu]      = -1;
                        tongsoluongchuyen = soluongchuyen;
                        m_dtDataPhieuChiTiet.Rows.Add(drv);
                    }
                    else
                    {
                        arrDr[0]["SO_LUONG"] = Utility.Int32Dbnull(arrDr[0]["SO_LUONG"]) + soluongchuyen;
                        arrDr[0][TPhieuNhapxuatthuocChitiet.Columns.ThanhTien] = Dongia * Utility.Int32Dbnull(arrDr[0]["SO_LUONG"], 0);
                        tongsoluongchuyen = Utility.Int32Dbnull(arrDr[0]["SO_LUONG"]);
                        m_dtDataPhieuChiTiet.AcceptChanges();
                    }
                    //Update lại dữ liệu từ kho xuất
                    gridExRow.BeginEdit();
                    gridExRow.Cells["SO_LUONG"].Value        = soluongthat - tongsoluongchuyen;
                    gridExRow.Cells["SO_LUONG_CHUYEN"].Value = 0;
                    gridExRow.IsChecked = false;
                    gridExRow.EndEdit();
                }
                grdKhoXuat.UpdateData();
                m_dtDataThuocKho.AcceptChanges();
            }
            catch (Exception ex)
            {
                Utility.ShowMsg("Lỗi khi chuyển thuốc:\n" + ex.Message);
            }
        }
Пример #4
0
        private void RemoveDetails(GridEXRow gridExRow)
        {
            string  manhacungcap = "";
            string  NgayHethan   = "";
            string  solo         = "";
            int     id_thuoc     = -1;
            decimal Dongia       = 0m;
            decimal Gianhap      = 0m;
            decimal Giaban       = 0m;
            Int32   soluong      = 0;
            decimal vat          = 0m;
            int     isHetHan     = 0;
            long    IdThuockho   = 0;
            string  ten_thuoc    = "";

            try
            {
                DateTime NgayNhap = Convert.ToDateTime(gridExRow.Cells[TThuockho.Columns.NgayNhap].Value).Date;
                decimal  GiaBhyt  = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaBhyt].Value, 0);
                ten_thuoc    = Utility.sDbnull(gridExRow.Cells["TEN_THUOC"].Value);
                NgayHethan   = Utility.sDbnull(gridExRow.Cells["NGAY_HET_HAN"].Value);
                solo         = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoLo].Value);
                id_thuoc     = Utility.Int32Dbnull(gridExRow.Cells[TThuockho.Columns.IdThuoc].Value, -1);
                IdThuockho   = Utility.Int32Dbnull(gridExRow.Cells[TThuockho.Columns.IdThuockho].Value, -1);
                Dongia       = Utility.DecimaltoDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.DonGia].Value, 0);
                Gianhap      = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaNhap].Value, 0);
                Giaban       = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.GiaBan].Value, 0);
                soluong      = Utility.Int32Dbnull(gridExRow.Cells["SO_LUONG"].Value, 0);
                vat          = Utility.DecimaltoDbnull(gridExRow.Cells[TThuockho.Columns.Vat].Value, 0);
                isHetHan     = Utility.Int32Dbnull(gridExRow.Cells["IsHetHan"].Value, 0);
                manhacungcap = Utility.sDbnull(gridExRow.Cells[TThuockho.Columns.MaNhacungcap].Value, 0);
                DataRow[] arrDr = m_dtDataThuocKho.Select(TPhieuNhapxuatthuocChitiet.Columns.IdThuockho + "=" + IdThuockho.ToString());
                if (arrDr.Length <= 0)
                {
                    DataRow drv = m_dtDataThuocKho.NewRow();


                    drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuoc] = id_thuoc;
                    drv["ten_donvitinh"] = Utility.sDbnull(gridExRow.Cells["ten_donvitinh"].Value);
                    drv["IsHetHan"]      = isHetHan;
                    DmucThuoc objLDrug = DmucThuoc.FetchByID(id_thuoc);
                    if (objLDrug != null)
                    {
                        drv[DmucThuoc.Columns.TenThuoc]    = Utility.sDbnull(objLDrug.TenThuoc);
                        drv[DmucThuoc.Columns.HamLuong]    = Utility.sDbnull(objLDrug.HamLuong);
                        drv[DmucThuoc.Columns.HoatChat]    = Utility.sDbnull(objLDrug.HoatChat);
                        drv[DmucThuoc.Columns.NuocSanxuat] = Utility.sDbnull(objLDrug.NuocSanxuat);
                        drv[DmucThuoc.Columns.HangSanxuat] = Utility.sDbnull(objLDrug.HangSanxuat);
                    }
                    drv[TPhieuNhapxuatthuocChitiet.Columns.Vat]          = vat;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.GiaNhap]      = Gianhap;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.MaNhacungcap] = manhacungcap;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.SoLo]         = solo;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.SoDky]        = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoDky].Value);
                    drv[TPhieuNhapxuatthuocChitiet.Columns.SoQdinhthau]  = Utility.sDbnull(gridExRow.Cells[TPhieuNhapxuatthuocChitiet.Columns.SoQdinhthau].Value);
                    drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuockho]   = IdThuockho;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.GiaBan]       = Giaban;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.DonGia]       = Dongia;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.NgayNhap]     = NgayNhap;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.GiaBhyt]      = GiaBhyt;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.SoLuong]      = soluong;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.ThanhTien]    = Dongia * soluong;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.ChietKhau]    = 0;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.NgayHethan]   = NgayHethan;
                    drv[TPhieuNhapxuatthuocChitiet.Columns.IdPhieu]      = -1;
                    m_dtDataThuocKho.Rows.Add(drv);
                }
                else
                {
                    arrDr[0]["SO_LUONG"]      = Utility.Int32Dbnull(arrDr[0]["SO_LUONG"]) + soluong;
                    arrDr[0]["SO_LUONG_THAT"] = arrDr[0]["SO_LUONG"];
                    m_dtDataThuocKho.AcceptChanges();
                }
                gridExRow.Delete();
                grdPhieuXuatChiTiet.UpdateData();
                grdPhieuXuatChiTiet.Refresh();
                m_dtDataPhieuChiTiet.AcceptChanges();
                m_dtDataThuocKho.AcceptChanges();

                ModifyCommand();
            }
            catch (Exception ex)
            {
                Utility.CatchException(string.Format("Lỗi khi thanh lý thanh lý thuốc {0}:\n", ten_thuoc), ex);
            }
        }
Пример #5
0
        private void LAOKHO_INPHIEU_BAOHIEM()
        {
            m_dtReportPhieuThu =
                SPs.BhytLaythongtinInphoi(Utility.Int32Dbnull(-1), Utility.sDbnull(objLuotkham.MaLuotkham, ""),
                                          Utility.Int32Dbnull(objLuotkham.IdBenhnhan, -1), 0).GetDataSet().Tables[0];

            ///load thông tin của việc lấy dữ liệu vào datatable trong phiếu thanh toán)

            if (m_dtReportPhieuThu.Rows.Count <= 0)
            {
                Utility.ShowMsg("Không tìm thấy bản ghi ", "Thông báo");
                return;
            }
            if (m_dtReportPhieuThu.Rows.Count <= 0)
            {
                Utility.ShowMsg("Không tìm thấy thông tin của bản ghi nào");
                return;
            }
            if (!m_dtReportPhieuThu.Columns.Contains("Tyle"))
            {
                m_dtReportPhieuThu.Columns.Add("Tyle", typeof(string));
            }
            if (!m_dtReportPhieuThu.Columns.Contains("BHYT"))
            {
                m_dtReportPhieuThu.Columns.Add("BHYT", typeof(string));
            }
            if (!m_dtReportPhieuThu.Columns.Contains("BNTT"))
            {
                m_dtReportPhieuThu.Columns.Add("BNTT", typeof(string));
            }
            if (!m_dtReportPhieuThu.Columns.Contains("TyLe_BH"))
            {
                m_dtReportPhieuThu.Columns.Add("TyLe_BH", typeof(string));
            }
            if (!m_dtReportPhieuThu.Columns.Contains("Tyle_BN"))
            {
                m_dtReportPhieuThu.Columns.Add("Tyle_BN", typeof(string));
            }
            foreach (DataRow drv in m_dtReportPhieuThu.Rows)
            {
                drv["Tyle"]    = (100 - objLuotkham.PtramBhyt) + " %";
                drv["BHYT"]    = objLuotkham.PtramBhyt + " %";
                drv["BNTT"]    = (100 - objLuotkham.PtramBhyt) + " %";
                drv["TyLe_BH"] = objLuotkham.PtramBhyt + " %";
                drv["Tyle_BN"] = (100 - objLuotkham.PtramBhyt) + " %";
            }
            m_dtReportPhieuThu.AcceptChanges();
            foreach (DataRow drv in m_dtReportPhieuThu.Rows)
            {
                if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "1")
                {
                    int Id_Loai_dvu = Utility.Int32Dbnull(drv["ID_LOAI_DVU"], -1);

                    drv["TEN_LOAI_DVU"] = string.Empty;
                    drv["ID_LOAI_DVU"]  = Id_Loai_dvu;
                    drv["STT"]          = 1;
                }
                if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "2")
                {
                    int          Id_Loai_dvu = Utility.Int32Dbnull(drv["ID_LOAI_DVU"], -1);
                    DmucDichvucl objService  = DmucDichvucl.FetchByID(Id_Loai_dvu);
                    if (objService != null)
                    {
                        drv["TEN_LOAI_DVU"] = Utility.sDbnull(objService.TenDichvu);
                        drv["STT"]          = Utility.sDbnull(objService.SttHthi);
                    }
                }

                if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "3")
                {
                    int       Drug_ID = Utility.Int32Dbnull(drv["ID_DVU"], -1);
                    DmucThuoc objDrug = DmucThuoc.FetchByID(Drug_ID);
                    if (objDrug != null)
                    {
                        if (objDrug.KieuThuocvattu == "THUOC")
                        {
                            drv["ID_LOAI_DVU"]  = 1;
                            drv["STT"]          = 1;
                            drv["TEN_LOAI_DVU"] = "Thuốc ";
                        }
                        else
                        {
                            drv["ID_LOAI_DVU"]  = 2;
                            drv["STT"]          = 2;
                            drv["TEN_LOAI_DVU"] = "Vật tư y tế ";
                        }
                    }
                }
                if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "5")
                {
                    drv["ID_LOAI_DVU"]  = 1;
                    drv["STT"]          = 1;
                    drv["TEN_LOAI_DVU"] = "Chi phí thêm  ";
                }
            }
            m_dtReportPhieuThu.AcceptChanges();
            // KyDong_PrintBaoHiem_DungTuyen(txtTieuDe.Text);
            new INPHIEU_THANHTOAN_NGOAITRU().LAOKHOA_INPHIEU_BAOHIEM_NGOAITRU(m_dtReportPhieuThu, txtTieuDe.Text, dtNgayIn.Value);
        }
Пример #6
0
        private void cmdTaoNhanh_Click(object sender, EventArgs e)
        {
            //Kiểm tra xem đã chọn kho nhận hay chưa
            if (cboKhonhan.Items.Count <= 0 || cboKhonhan.SelectedIndex <= -1 || cboKhonhan.SelectedValue.ToString() == "-1")
            {
                Utility.ShowMsg("Bạn cần chọn kho nhận trước khi thực hiện tính năng tạo phiếu dự trù(bổ sung) cho kho nhận");
                return;
            }
            if (m_dtDataPhieuChiTiet.Rows.Count > 0)
            {
                if (!Utility.AcceptQuestion("Bạn có chắc chắn muốn tạo nhanh phiếu dự trù cho kho " + cboKhonhan.Text + "\nChú ý: Nếu đồng ý tạo nhanh thì toàn bộ chi tiết đang chuyển sang kho " + cboKhonhan.Text + " sẽ được xóa đi.", "Xác nhận", true))
                {
                    return;
                }
            }
            m_dtDataPhieuChiTiet.Clear();
            m_PhieuDuTru = SPs.ThuocLapphieudutru(Utility.Int32Dbnull(cboKhonhan.SelectedValue, -1), KIEU_THUOC_VT).GetDataSet().Tables[0];
            Dictionary <int, string> lstNotExists = new Dictionary <int, string>();

            if (m_PhieuDuTru.Rows.Count <= 0)
            {
                Utility.ShowMsg("Chưa có dữ liệu dự trù. Bạn chỉ có thể sử dụng tính năng tạo nhanh sau khi đã lập dự trù cho Thuốc-Vật tư tiêu hao");
                return;
            }
            foreach (DataRow drDuTru in m_PhieuDuTru.Rows)
            {
                int    ID_THUOC          = Utility.Int32Dbnull(drDuTru[DmucThuoc.Columns.IdThuoc]);
                string TEN_THUOC         = Utility.sDbnull(drDuTru[DmucThuoc.Columns.TenThuoc], "Unknown");
                int    soluongthuocdutru = Utility.Int32Dbnull(drDuTru["SO_LUONG_CHUYEN"]);
                if (soluongthuocdutru > 0)//Chỉ lấy các thuốc có lượng cần chuyển >0
                {
                    int       soluong_chuyen = 0;
                    DataRow[] arrDR          = m_dtDataThuocKho.Select(DmucThuoc.Columns.IdThuoc + "=" + ID_THUOC, "NGAY_HETHAN ASC");
                    if (arrDR.Length > 0)//Nếu có thuốc này từ kho xuất
                    {
                        int TongSoluong = Utility.Int32Dbnull(arrDR.CopyToDataTable().Compute("SUM(SO_LUONG)", "1=1"), 0);
                        if (TongSoluong >= soluongthuocdutru)
                        {
                            foreach (DataRow gridExRow in arrDR)
                            {
                                if (soluongthuocdutru > 0)
                                {
                                    string  NgayHethan = Utility.sDbnull(gridExRow["NGAY_HET_HAN"]);
                                    int     id_thuoc   = Utility.Int32Dbnull(gridExRow[DmucThuoc.Columns.IdThuoc], -1);
                                    decimal dongia     = Utility.DecimaltoDbnull(gridExRow["DON_GIA"], 0);
                                    decimal Giaban     = Utility.DecimaltoDbnull(gridExRow["GIA_BAN"], 0);
                                    Int32   soluong    = Utility.Int32Dbnull(gridExRow["SO_LUONG"], 0);
                                    if (soluong > soluongthuocdutru)
                                    {
                                        soluong_chuyen    = soluongthuocdutru;
                                        soluongthuocdutru = 0;
                                    }
                                    else
                                    {
                                        soluong_chuyen    = soluong;
                                        soluongthuocdutru = soluongthuocdutru - soluong_chuyen;
                                    }
                                    var query = from thuoc in grdPhieuXuatChiTiet.GetDataRows()
                                                let sl = Utility.Int32Dbnull(thuoc.Cells["SO_LUONG"].Value)
                                                         // let slc = Utility.Int32Dbnull(thuoc.Cells["SO_LUONG_CHUYEN"].Value)
                                                         let x                                                                         = Utility.Int32Dbnull(thuoc.Cells["ID_THUOC"].Value)
                                                                                         let y                                         = Utility.DecimaltoDbnull(thuoc.Cells["DON_GIA"].Value)
                                                                                                                 let z                 = Convert.ToDateTime(thuoc.Cells["NGAY_HET_HAN"].Value)
                                                                                                                                 let w = Utility.DecimaltoDbnull(thuoc.Cells["VAT"].Value)
                                                                                                                                         where x == Utility.Int32Dbnull(gridExRow["ID_THUOC"], 0) &&
                                                                                                                                         y == Utility.DecimaltoDbnull(gridExRow["DON_GIA"], 0) &&
                                                                                                                                         z == Convert.ToDateTime(NgayHethan) &&
                                                                                                                                         w == Utility.DecimaltoDbnull(gridExRow["VAT"], 0)
                                                                                                                                         select sl;


                                    decimal vat      = Utility.DecimaltoDbnull(gridExRow["VAT"], 0);
                                    int     isHetHan = Utility.Int32Dbnull(gridExRow["IsHetHan"], 0);
                                    if (query.Count() <= 0)//99% là vào nhánh này
                                    {
                                        DataRow drv = m_dtDataPhieuChiTiet.NewRow();
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.MotaThem] = String.Empty;

                                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdThuoc] = id_thuoc;
                                        drv["ten_donvitinh"] = Utility.sDbnull(gridExRow["ten_donvitinh"]);
                                        drv["IsHetHan"]      = isHetHan;
                                        DmucThuoc objLDrug = DmucThuoc.FetchByID(id_thuoc);
                                        if (objLDrug != null)
                                        {
                                            drv[DmucThuoc.Columns.TenThuoc]    = Utility.sDbnull(objLDrug.TenThuoc);
                                            drv[DmucThuoc.Columns.HamLuong]    = Utility.sDbnull(objLDrug.HamLuong);
                                            drv[DmucThuoc.Columns.HoatChat]    = Utility.sDbnull(objLDrug.HoatChat);
                                            drv[DmucThuoc.Columns.NuocSanxuat] = Utility.sDbnull(objLDrug.NuocSanxuat);
                                            drv[DmucThuoc.Columns.HangSanxuat] = Utility.sDbnull(objLDrug.HangSanxuat);
                                        }
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.Vat]     = vat;
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaNhap] = dongia;
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.GiaBan]  = Giaban;

                                        drv[TPhieuNhapxuatthuocChitiet.Columns.SoLuong]    = soluong_chuyen;
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.ThanhTien]  = dongia * soluong_chuyen;
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.ChietKhau]  = 0;
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.NgayHethan] = NgayHethan;
                                        drv[TPhieuNhapxuatthuocChitiet.Columns.IdPhieu]    = -1;
                                        m_dtDataPhieuChiTiet.Rows.Add(drv);
                                    }
                                    else
                                    {
                                        var dr =
                                            m_dtDataPhieuChiTiet.AsEnumerable().First(
                                                r => ((Int32)r[DmucThuoc.Columns.IdThuoc]).Equals(id_thuoc) && ((decimal)r["DON_GIA"]).Equals(dongia) &&
                                                ((string)r["NGAY_HET_HAN"]).Equals(NgayHethan) && ((decimal)r["VAT"]).Equals(vat));
                                        dr["SO_LUONG"] = Utility.Int32Dbnull(dr["SO_LUONG"]) + soluong_chuyen;
                                        m_dtDataPhieuChiTiet.AcceptChanges();
                                    }
                                }
                            }
                        }
                        else
                        {
                            if (!lstNotExists.ContainsKey(ID_THUOC))
                            {
                                lstNotExists.Add(ID_THUOC, TEN_THUOC + string.Format("-->không đủ(Số lượng có:{0}-số lượng cần chuyển:{1}", TongSoluong.ToString(), soluongthuocdutru.ToString()));
                            }
                        }
                        UpdateWhenChanged();
                        ResetValueInGridEx();
                        ModifyCommand();
                    }
                    else
                    {
                        if (!lstNotExists.ContainsKey(ID_THUOC))
                        {
                            lstNotExists.Add(ID_THUOC, TEN_THUOC + "-->Không có trong kho");
                        }
                    }
                }
            }
            if (lstNotExists.Count > 0)//Cảnh báo
            {
                string msg = string.Join("\n", lstNotExists.Values.ToArray());
                Utility.ShowMsg("Hệ thống không tự động chuyển một số Thuốc(Vật tư) vì lý do sau đây:\n" + msg);
            }
            grdKhoXuat.UpdateData();
            grdPhieuXuatChiTiet.UpdateData();
            ModifyCommand();
        }
Пример #7
0
        /// <summary>
        /// Thực hiện nghiệp vụ Update dữ liệu
        /// </summary>
        private void PerformUpdateAction()
        {
            Utility.SetMsg(lblMsg, "", false);
            //Gọi Business cập nhật dữ liệu
            Int16 v_intUpdateDrugID = Convert.ToInt16(txtID.Text);
            SqlQuery sqlQuery = new Select().From(DmucThuoc.Schema)
                  .Where(DmucThuoc.Columns.MaThuoc).IsEqualTo(txtCode.Text)
                  .And(DmucThuoc.Columns.IdThuoc).IsNotEqualTo(v_intUpdateDrugID);

            //Kiểm tra nếu trùng Mã Drug Code thì bắt nhập mã khác
            //DmucThuocCollection v_arrSameCodeObject = new DmucThuocController().FetchByQuery(m_Query.AddWhere("Drug_Code", txtCode.Text.Trim().ToUpper()).AND("id_thuoc", Comparison.NotEquals, v_intUpdateDrugID));
            if (sqlQuery.GetRecordCount() > 0)
            {
                Utility.SetMsg(lblMsg, "Đã tồn tại thuốc có mã =" + txtCode.Text.Trim() +
                                ".Đề nghị bạn nhập mã khác",true);
                m_Query = DmucThuoc.CreateQuery();
                return;
            }
            //Create Again to ignore Where Clause
            m_Query = DmucThuoc.CreateQuery();
            //Tạo giá trị mới cho đối tượng đang cần Update
            DmucThuoc objThuoc = DmucThuoc.FetchByID(txtID.Text);
            
            objThuoc.MaThuoc = Utility.sDbnull(txtCode.Text);
            objThuoc.MaQD40 = Utility.sDbnull(txtMaQD40.Text);
            objThuoc.MaQDTinh = Utility.sDbnull(txtMaQDTinh.Text);
            objThuoc.SluongVuottran = (int)Utility.DecimaltoDbnull(txtSlVuottran.Text, 0);

            objThuoc.TenThuoc = Utility.GetValue(txtName.Text, false);
            objThuoc.TenBhyt = Utility.GetValue(txtTEN_BHYT.Text, false);
            objThuoc.DonGia = Utility.DecimaltoDbnull( txtDongia.Text,0);
            objThuoc.GiaDv = Utility.DecimaltoDbnull(txtGiaDV.Text, 0);
            objThuoc.GiaBhyt = Utility.DecimaltoDbnull(txtGiaBHYT.Text, 0);
            objThuoc.PhuthuDungtuyen = Utility.DecimaltoDbnull(txtPTDT.Text, 0);
            objThuoc.PhuthuTraituyen = Utility.DecimaltoDbnull(txtPTTT.Text, 0);
            objThuoc.MaThuoc = Utility.GetValue(txtCode.Text, false);
            objThuoc.IdLoaithuoc = Convert.ToInt16(txtLoaithuoc.MyID);
            objThuoc.TinhChat = Convert.ToByte(cboDrugNature.SelectedIndex);
            objThuoc.MaDonvitinh = txtDonvitinh.myCode;
            objThuoc.TuTuc = Utility.Bool2byte(chkTutuc.Checked);
            objThuoc.MotaThem = Utility.GetValue(txtDesc.Text, false);
            objThuoc.HoatChat = Utility.GetValue(txtActice.Text, false);
            objThuoc.NuocSanxuat = txtNuocSX.Text;
            objThuoc.HangSanxuat = txtHangSX.Text;
            objThuoc.HamLuong = txtContent.Text;
            objThuoc.QD31 = Utility.DoTrim(txtQD31.Text);
            objThuoc.SoDangky = txtNumber_Register.Text;
            objThuoc.TrangThai = chkHieuLuc.Checked ? (byte)1 : (byte)0;
            objThuoc.DangBaoche = Utility.DoTrim(txtDangBaoChe.Text);
            objThuoc.NguoiSua = globalVariables.UserName;
            objThuoc.NgaySua = DateTime.Now;
            objThuoc.GioihanKedon = (Int16)Utility.DecimaltoDbnull(txtSoluong.Text, -1);
            objThuoc.DonviBut = (int)Utility.DecimaltoDbnull(txtBut.Text, -1);
            objThuoc.CachSudung = txtCachsudung.myCode;
            objThuoc.SingleService = Utility.Bool2byte(chkSingle.Checked);
            objThuoc.CoChiathuoc = Utility.Bool2byte(chkChiathuoc.Checked);
            objThuoc.MaDvichia = txtDonvichia.myCode;
            objThuoc.SluongChia = (int)Utility.DecimaltoDbnull(txtSoluongchia.Text, 0);
            objThuoc.DongiaChia = Utility.DecimaltoDbnull(txtDongiachia.Text, 0);
            objThuoc.NguonGoc = Utility.sDbnull(txtNguongoc.Text, "");
            objThuoc.NoitruNgoaitru=optAll.Checked?"ALL":(optNoitru.Checked?"NOI":"NGOAI");
            objThuoc.KieuThuocvattu = txtKieuthuocVT.myCode;
            objThuoc.IsNew = false;
            objThuoc.MarkOld();
            dmucThuoc_busrule.Insert(objThuoc, GetQheCamchidinhChungphieuCollection());
            //Update to Datasource to reflect on DataGridView
           

            DataRow dr = Utility.FetchOnebyCondition(m_dtDrugDataSource, "id_thuoc=" + v_intUpdateDrugID.ToString().Trim());
            if (dr != null)
            {
                Utility.FromObjectToDatarow(objThuoc, ref dr);
                dr[DmucThuoc.Columns.TinhChat] = Convert.ToByte(cboDrugNature.SelectedIndex);
                dr["ten_loaithuoc"] = txtLoaithuoc.Text;
                dr["ten_donvitinh"] = txtDonvitinh.Text;
                dr["ten_donvichia"] = txtDonvichia.Text;
                dr["ten_cachsudung"] = txtCachsudung.Text;


                dr[DmucThuoc.Columns.HamLuong] = txtContent.Text;
                dr[DmucThuoc.Columns.SoDangky] = txtNumber_Register.Text;
                dr[DmucThuoc.Columns.NuocSanxuat] = txtNuocSX.Text;
                dr[DmucThuoc.Columns.HangSanxuat] = txtHangSX.Text;
                txtName.UpdateItems(dr);
                m_dtDrugDataSource.AcceptChanges();
            }
            //Return to the InitialStatus
            m_enAction = action.FirstOrFinished;

            //Nhảy đến bản ghi vừa cập nhật trên lưới. Do txtID chưa bị reset nên dùng luôn
            if (grdList != null) Utility.GotoNewRowJanus(grdList, "id_thuoc", txtID.Text.Trim());
            SetControlStatus();
            Utility.SetMsg(lblMsg, "Cập nhật dữ liệu thành công.", false);
            this.Close();
        }
Пример #8
0
        /// <summary>
        /// Điền dữ liệu của đối tượng cần cập nhật vào các Controls trên Form
        /// </summary>
        private void FillDataIntoControlWhenUpdate()
        {
            try
            {
                objThuoc = DmucThuoc.FetchByID(Utility.Int32Dbnull(txtID.Text, -1));
                if (objThuoc == null)
                {
                    Utility.ShowMsg("Lỗi không xác định được đối tượng cần cập nhật. Liên hệ với ViSoft để được giải đáp.");
                    return;
                }

                if (objThuoc != null)
                {
                    Drug_ID = objThuoc.IdThuoc;
                    txtID.Text = Utility.sDbnull(objThuoc.IdThuoc).ToString().Trim();
                    txtActice.Text = Utility.sDbnull(objThuoc.HoatChat).ToString().Trim();
                    txtCode.Text = Utility.sDbnull(objThuoc.MaThuoc);
                    txtMaQD40.Text = Utility.sDbnull(objThuoc.MaQD40);
                    txtMaQDTinh.Text = Utility.sDbnull(objThuoc.MaQDTinh);
                    txtSlVuottran.Text = Utility.DecimaltoDbnull(objThuoc.SluongVuottran, 0).ToString();
                    txtDongia.Text = Utility.sDbnull(objThuoc.DonGia);
                     txtGiaDV.Text = Utility.sDbnull(objThuoc.GiaDv);
                     txtGiaBHYT.Text = Utility.sDbnull(objThuoc.GiaBhyt);
                     txtPTDT.Text = Utility.sDbnull(objThuoc.PhuthuDungtuyen);
                     txtPTTT.Text = Utility.sDbnull(objThuoc.PhuthuTraituyen);
                    txtName._Text = Utility.sDbnull(objThuoc.TenThuoc);
                    txtDesc.Text = Utility.sDbnull(objThuoc.MotaThem);
                    txtLoaithuoc.SetId(Utility.sDbnull(objThuoc.IdLoaithuoc));
                    txtDonvitinh.SetCode(objThuoc.MaDonvitinh);
                    txtKieuthuocVT.SetCode(objThuoc.KieuThuocvattu);
                    cboDrugNature.SelectedIndex = Convert.ToInt32(objThuoc.TinhChat);
                    txtNumber_Register.Text = Utility.sDbnull(objThuoc.SoDangky);
                    txtNuocSX._Text = Utility.sDbnull(objThuoc.NuocSanxuat);
                    txtNguongoc._Text = Utility.sDbnull(objThuoc.NguonGoc);
                    txtHangSX._Text = Utility.sDbnull(objThuoc.HangSanxuat);
                    txtContent.Text = Utility.sDbnull(objThuoc.HamLuong);
                    txtQD31.Text = objThuoc.QD31;
                    chkTutuc.Checked = Utility.Byte2Bool(objThuoc.TuTuc.Value);
                    txtDangBaoChe._Text= Utility.sDbnull(objThuoc.DangBaoche, "");
                    txtTEN_BHYT.Text = Utility.sDbnull(objThuoc.TenBhyt);
                    chkHieuLuc.Checked = Utility.Int32Dbnull(objThuoc.TrangThai, 0) == 1 ? true : false;
                    optAll.Checked = objThuoc.NoitruNgoaitru=="ALL";
                    optNgoai.Checked = objThuoc.NoitruNgoaitru == "NGOAI";
                    optNoitru.Checked = objThuoc.NoitruNgoaitru == "NOI";
                    txtSoluong.Text = Utility.sDbnull(objThuoc.GioihanKedon,"0");
                    txtBut.Text = Utility.sDbnull(objThuoc.DonviBut, "0");
                    txtCachsudung.SetCode(objThuoc.CachSudung);
                    txtSoluongchia.Text = Utility.DecimaltoDbnull(objThuoc.SluongChia, 0).ToString();
                    txtDongiachia.Text = Utility.DecimaltoDbnull(objThuoc.DongiaChia, 0).ToString();
                    txtDonvichia.SetCode(objThuoc.MaDvichia);
                    chkChiathuoc.Checked = Utility.Byte2Bool(objThuoc.CoChiathuoc);
                    chkSingle.Checked = Utility.Byte2Bool(objThuoc.SingleService);
                    LoadQheCamchidinhchung(objThuoc.IdThuoc);
                }
                GetSameCodeDrugList();
                GetObjectList();
                
            }
            catch
            {
            }
        }
Пример #9
0
        void cmdPrint_Click(object sender, EventArgs e)
        {
            try
            {
                Utility.WaitNow(this);
                DataTable dtData = SPs.NoitruTonghopChiphiRavien(objLuotkham.MaLuotkham, (int)objLuotkham.IdBenhnhan, Utility.Bool2byte(!Khoanoitrutonghop), idkhoanoitru).GetDataSet().Tables[0];
                THU_VIEN_CHUNG.CreateXML(dtData, "noitru_tonghopchiphiravien.XML");
                if (dtData.Rows.Count <= 0)
                {
                    Utility.ShowMsg("Không tìm thấy dữ liệu cho báo cáo", "Thông báo", MessageBoxIcon.Warning);
                    return;
                }
                foreach (DataRow drv in dtData.Rows)
                {
                    if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "1" ||//Chi phí KCB
                        drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "0" ||//Phí KCB kèm theo
                        drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "4" ||//Buồng giường
                        drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "8"   //Gói dịch vụ
                        )
                    {
                        drv["ten_loaidichvu"] = string.Empty;
                        drv["STT"]            = 1;
                        drv["id_loaidichvu"]  = -1;
                    }
                    else if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "2")
                    {
                        string ma_loaidichvu = Utility.sDbnull(drv["id_loaidichvu"], -1);
                        //drv["id_loaidichvu"]-->Được xác định trong câu truy vấn

                        DmucChung objService = THU_VIEN_CHUNG.LaydoituongDmucChung("LOAIDICHVUCLS", ma_loaidichvu);
                        if (objService != null)
                        {
                            drv["ten_loaidichvu"] = Utility.sDbnull(objService.Ten);
                            drv["STT"]            = Utility.sDbnull(objService.SttHthi);
                        }
                    }
                    else if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "3")
                    {
                        int       Drug_ID = Utility.Int32Dbnull(drv["id_dichvu"], -1);
                        DmucThuoc objDrug = DmucThuoc.FetchByID(Drug_ID);
                        if (objDrug != null)
                        {
                            if (objDrug.KieuThuocvattu == "THUOC")
                            {
                                drv["id_loaidichvu"]  = 1;
                                drv["STT"]            = 1;
                                drv["ten_loaidichvu"] = "Thuốc và dịch truyền";
                            }
                            else
                            {
                                drv["id_loaidichvu"]  = 2;
                                drv["STT"]            = 2;
                                drv["ten_loaidichvu"] = "Vật tư y tế ";
                            }
                        }
                    }
                    if (drv[KcbThanhtoanChitiet.Columns.IdLoaithanhtoan].ToString() == "5")
                    {
                        drv["id_loaidichvu"]  = 1;
                        drv["STT"]            = 1;
                        drv["ten_loaidichvu"] = "Chi phí thêm  ";
                    }
                }
                THU_VIEN_CHUNG.Sapxepthutuin(ref dtData, true);
                dtData.DefaultView.Sort = "stt_in ,stt_hthi_dichvu,stt_hthi_chitiet,ten_chitietdichvu";
                dtData.AcceptChanges();

                Utility.UpdateLogotoDatatable(ref dtData);
                string StaffName = globalVariables.gv_strTenNhanvien;
                if (string.IsNullOrEmpty(globalVariables.gv_strTenNhanvien))
                {
                    StaffName = globalVariables.UserName;
                }
                string reportCode = Khoanoitrutonghop ? "noitru_tonghopchiphiravien_theokhoa_dichvu" : "noitru_tonghopchiphiravien_dichvu";
                if (THU_VIEN_CHUNG.IsBaoHiem(objLuotkham.IdLoaidoituongKcb))
                {
                    reportCode = Khoanoitrutonghop ? "noitru_tonghopchiphiravien_theokhoa" : "noitru_tonghopchiphiravien";
                }
                string         tieude = "", reportname = "";
                ReportDocument crpt = Utility.GetReport(reportCode, ref tieude, ref reportname);
                if (crpt == null)
                {
                    return;
                }
                frmPrintPreview objForm = new frmPrintPreview(baocaO_TIEUDE1.TIEUDE, crpt, true, dtData.Rows.Count <= 0 ? false : true);
                crpt.SetDataSource(dtData);

                objForm.mv_sReportFileName = Path.GetFileName(reportname);
                objForm.mv_sReportCode     = reportCode;
                Utility.SetParameterValue(crpt, "StaffName", StaffName);
                Utility.SetParameterValue(crpt, "ParentBranchName", globalVariables.ParentBranch_Name);
                Utility.SetParameterValue(crpt, "BranchName", globalVariables.Branch_Name);
                Utility.SetParameterValue(crpt, "Address", globalVariables.Branch_Address);
                Utility.SetParameterValue(crpt, "Phone", globalVariables.Branch_Phone);
                Utility.SetParameterValue(crpt, "sTitleReport", baocaO_TIEUDE1.TIEUDE);
                Utility.SetParameterValue(crpt, "sCurrentDate", Utility.FormatDateTimeWithThanhPho(DateTime.Now));
                Utility.SetParameterValue(crpt, "BottomCondition", THU_VIEN_CHUNG.BottomCondition());
                objForm.crptViewer.ReportSource = crpt;
                objForm.ShowDialog();
            }
            catch (Exception ex)
            {
                Utility.CatchException(ex);
            }
            finally
            {
                Utility.DefaultNow(this);
            }
        }