コード例 #1
0
ファイル: DicomSCPHelper.cs プロジェクト: khaha2210/radio
        /// <summary>
        /// Trả về đối tượng chỉ định chi tiết nếu đã có chỉ định hoặc tạo mới thành công.Null nếu tạo mới không thành công
        /// </summary>
        /// <param name="oPhieuCdinh"></param>
        /// <param name="aeTitle"> </param>
        /// <param name="bodyPart"> </param>
        /// <param name="viewpos"> </param>
        /// <param name="studyInstanseUid"> </param>
        /// <param name="seriesInstanceUid"> </param>
        /// <param name="sopInstanceUid"> </param>
        /// <returns></returns>
        public static RisPhieuCdinhCtiet GetPhieuChiDinhChiTiet(RisPhieuCdinh oPhieuCdinh,
                                                                string aeTitle, string bodyPart, string viewpos,
                                                                string studyInstanseUid, string seriesInstanceUid,
                                                                string sopInstanceUid)
        {
            try
            {
                var o = new RisPhieuCdinhCtiet();
                //B1:Lấy về tất cả các chỉ định của phiếu chỉ định
                DataTable dt = SPs.SpGetTestListForInsert2(oPhieuCdinh.MaPhieu, aeTitle).GetDataSet().Tables[0];
                //Nếu có chỉ định thì tìm kiếm để lấy về số phiếu
                if (dt.Rows.Count > 0)
                {
                    //Lọc tìm phiếu chỉ định chi tiết
                    DataRow[] dataRows =
                        dt.Select(string.Format("BodyPart = '{0}' and ViewPos = '{1}'", bodyPart, viewpos));
                    //Nếu tìm thấy thì lấy luôn số phiếu đầu tiên
                    if (dataRows.Length > 0)
                    {
                        var phieuChiDinhChiTiet = new RisPhieuCdinhCtiet(dataRows[0]["ID_PHIEU_CTIET"]);
                        phieuChiDinhChiTiet.BodyPart = bodyPart;
                        phieuChiDinhChiTiet.ViewPos = viewpos;
                        phieuChiDinhChiTiet.Save();
                        return phieuChiDinhChiTiet;
                    }
                }
                //Bổ sung bước kiểm tra SOPID

                RisPhieuCdinhCtietCollection tempChitiets =
                    new RisPhieuCdinhCtietController().FetchByQuery(
                        RisPhieuCdinhCtiet.CreateQuery().WHERE(RisPhieuCdinhCtiet.Columns.StudyInstanceUid,
                                                               Comparison.Equals, studyInstanseUid).AND(
                                                                   RisPhieuCdinhCtiet.Columns.SeriesInstanceUid,
                                                                   Comparison.Equals, seriesInstanceUid).AND(
                                                                       RisPhieuCdinhCtiet.Columns.SopInstanceUid,
                                                                       Comparison.Equals, sopInstanceUid));
                if (tempChitiets.Count > 0)
                {
                    var phieuChiDinhChiTiet = tempChitiets[0];
                    phieuChiDinhChiTiet.BodyPart = bodyPart;
                    phieuChiDinhChiTiet.ViewPos = viewpos;
                    phieuChiDinhChiTiet.Save();
                    return phieuChiDinhChiTiet;
                }


                //Nếu không tìm thấy phiếu nào thì phải tạo phiếu chi tiết mới
                o.IdPhieu = oPhieuCdinh.IdPhieu;
                o.IdDvu = -1;
                int idThietBi =
                    Utility.Int32Dbnull(
                        new Select(DThietBi.IdThietBiColumn).From(DThietBi.Schema).Where(DThietBi.AETitleColumn).
                            IsEqualTo(aeTitle).ExecuteScalar(), -1);

                //Nếu id THiết bị <>-1
                //Lấy mã dịch vụ từ AETitle, bodypart và viewpos
                //Nếu chưa tồn tại bodypart và viewpos trong bảng mã điều khiển thì tự thêm mới.
                if (idThietBi != -1)
                {
                    // Nếu tồn tại thiết bị lấy về obj mã đk Thiết bị
                    DMaDieuKhienThietBiCollection objmdks = new DMaDieuKhienThietBiController().
                        FetchByQuery(DMaDieuKhienThietBi.CreateQuery().
                                         WHERE(DMaDieuKhienThietBi.Columns.IdThietBi, Comparison.Equals, idThietBi).
                                         AND(
                                             DMaDieuKhienThietBi.Columns.BodyPart, Comparison.Equals, bodyPart).AND(
                                                 DMaDieuKhienThietBi.Columns.ViewPos, Comparison.Equals, viewpos));
                    if (objmdks != null)
                    {
                        // Nếu tồn tại bodypart và viewpos thì lấy ra dịch vụ
                        if (objmdks.Count > 0)
                        {
                            o.IdDvu = Utility.Int32Dbnull(objmdks.First().IdDvu, -1);
                        }
                            //Nếu không tồn tại thì insert mã điều khiển mới
                        else
                        {
                            var objmdk = new DMaDieuKhienThietBi();
                            objmdk.IdDvu = -1;
                            objmdk.IdThietBi = idThietBi;
                            objmdk.BodyPart = bodyPart;
                            objmdk.ViewPos = viewpos;
                            objmdk.TrangThai = 1;
                            objmdk.Desc = string.Format("{0}-{1}", bodyPart, viewpos);
                            objmdk.Save();
                        }
                    }
                }
                //Xử lý trường hợp nếu idDvu =-1 gán về loại chưa xác định (loại có trạng thái =0)
                DDichVu objDichVu = null;
                if (o.IdDvu == -1)
                {
                    DDichVuCollection tempdvs =
                        new DDichVuController().FetchByQuery(DDichVu.CreateQuery().WHERE(DDichVu.Columns.TrangThai,
                                                                                         Comparison.Equals, 0));
                    if (tempdvs.Count > 0)
                    {
                        objDichVu = tempdvs[0];
                        o.IdDvu = objDichVu.IdDvu;
                    }
                    else
                    {
                        objDichVu = new DDichVu(o.IdDvu);
                    }
                }
                else
                {
                    objDichVu = new DDichVu(o.IdDvu);
                }

                o.MaDvu = Utility.sDbnull(objDichVu.MaDvu);
                o.Sluong = 1;
                o.DonGia = Utility.DecimaltoDbnull(objDichVu.DonGia, 0);
                o.DaIn = 0;
                o.AutoGen = 1;
                o.IdLoaiDvu = Utility.Int32Dbnull(objDichVu.IdLoaiDvu, -1);
                o.MaLoaiDvu =
                    Utility.sDbnull(
                        new Select(DLoaiDvu.MaLoaiDvuColumn).From(DLoaiDvu.Schema).Where(DLoaiDvu.IdLoaiDvuColumn).
                            IsEqualTo(o.IdLoaiDvu).ExecuteScalar());
                o.TrangThai = 0;
                o.IdKhoaThien = -1;
                o.MaKieuDvu = "";
                o.BodyPart = bodyPart;
                o.ViewPos = viewpos;
                o.Save();

                return o;
            }
            catch (Exception ex)
            {
                return null;
            }
        }
コード例 #2
0
ファイル: DicomSCPHelper.cs プロジェクト: khaha2210/radio
        /// <summary>
        /// Thực hiện thêm mới thông tin không nhập qua phần tiếp đón
        /// </summary>
        /// <param name="TenBenhNhan">Tên bệnh nhân</param>
        /// <param name="GTinh"> </param>
        /// <param name="StudyInstanseUid">StudyInstanseUid</param>
        /// <param name="SERIES_INSTANCE_UID">SERIES_INSTANCE_UID</param>
        /// <param name="SOP_INSTANCE_UID">SOP_INSTANCE_UID</param>
        /// <param name="BodyPart"> </param>
        /// <param name="Position"> </param>
        /// <param name="PathImage">Đường dẫn ảnh</param>
        /// <param name="PathImage_thumb"> </param>
        /// <param name="IdDichVu">ID dịch vụ </param>
        /// <returns></returns>
        public static void ThemBenhNhan(string TenBenhNhan, string GTinh, string StudyInstanseUid,
                                        string SERIES_INSTANCE_UID, string SOP_INSTANCE_UID, string BodyPart,
                                        string Position, string PathImage, string PathImage_thumb,
                                        string sourcePatientId)
        {
            try
            {
                Query _QuerySoPhieu = RisPhieuCdinh.CreateQuery();
                Query _QueryChiTiet = RisPhieuCdinhCtiet.CreateQuery();
                using (var scope = new TransactionScope())
                {
                    using (var sp = new SharedDbConnectionScope())
                    {
                        DateTime sysDateTime = BusinessHelper.GetSysDateTime();
                        var objBenhNhan = new RisBenhNhan();
                        SqlQuery sqlQuery = new Select().From(RisPhieuCdinh.Schema)
                            .Where(RisPhieuCdinh.Columns.StudyInstanseUid).IsEqualTo(StudyInstanseUid);
                        var objPhieuCdinh = new RisPhieuCdinh();

                        if (sqlQuery.GetRecordCount() <= 0)
                        {
                            objBenhNhan = ThemMoiBenhNhan(TenBenhNhan, GTinh);
                            objPhieuCdinh.StudyInstanseUid = StudyInstanseUid;
                            objPhieuCdinh.IdBnhan = objBenhNhan.IdBnhan;
                            objPhieuCdinh.MaPhieu = BusinessHelper.LayMaPhieu();
                            objPhieuCdinh.Pid = objBenhNhan.Pid;
                            objPhieuCdinh.LoaiPhieu = 1;
                            // objPhieuCdinh.IdKhoaThien = -1;
                            //objPhieuCdinh.MaTbi = String.Empty;
                            objPhieuCdinh.NgayDky = sysDateTime;
                            objPhieuCdinh.NgayTao = sysDateTime;
                            objPhieuCdinh.NguoiTao = globalVariables.UserName;
                            objPhieuCdinh.SourcePatientid = sourcePatientId;
                            objPhieuCdinh.IsNew = true;
                            objPhieuCdinh.Save();
                            objPhieuCdinh.IdPhieu =
                                Utility.Int32Dbnull(_QuerySoPhieu.GetMax(RisPhieuCdinh.Columns.IdPhieu));
                        }
                        else
                        {
                            objPhieuCdinh = sqlQuery.ExecuteSingle<RisPhieuCdinh>();
                            new Update(RisBenhNhan.Schema)
                                .Set(RisBenhNhan.Columns.TenBnhan).EqualTo(TenBenhNhan)
                                .Set(RisBenhNhan.Columns.TenBnhanKdau).EqualTo(Utility.UnSignedCharacter(TenBenhNhan))
                                .Set(RisBenhNhan.Columns.Gtinh).EqualTo(GTinh)
                                .Where(RisBenhNhan.Columns.IdBnhan).IsEqualTo(objPhieuCdinh.IdBnhan).Execute();
                        }
                        sqlQuery = new Select().From(RisPhieuCdinhCtiet.Schema)
                            .Where(RisPhieuCdinhCtiet.Columns.IdPhieu).IsEqualTo(objPhieuCdinh.IdPhieu)
                            .And(RisPhieuCdinhCtiet.Columns.SeriesInstanceUid).IsEqualTo(SERIES_INSTANCE_UID)
                            .And(RisPhieuCdinhCtiet.Columns.StudyInstanceUid).IsEqualTo(StudyInstanseUid);
                        //.And(RisPhieuCdinhCtiet.Columns.SopInstanceUid).IsEqualTo(SOP_INSTANCE_UID);
                        var objRisPhieuCdinhCtiet = new RisPhieuCdinhCtiet();
                        if (sqlQuery.GetRecordCount() <= 0)
                        {
                            SqlQuery sqlQueryDV = new Select().From(DDichVu.Schema)
                                .Where(DDichVu.Columns.MaDvu).IsEqualTo(Position)
                                .And(DDichVu.Columns.IdLoaiDvu).In(
                                    new Select(DLoaiDvu.Columns.IdLoaiDvu).From(DLoaiDvu.Schema)
                                        .Where(DLoaiDvu.Columns.MaLoaiDvu).
                                        IsEqualTo(BodyPart));
                            var objDichVu = sqlQueryDV.ExecuteSingle<DDichVu>();
                            if (objDichVu != null)
                            {
                                objRisPhieuCdinhCtiet.IdDvu = Utility.Int32Dbnull(objDichVu.IdDvu, -1);
                                if (objDichVu != null)
                                {
                                    objRisPhieuCdinhCtiet.IdLoaiDvu = objDichVu.IdLoaiDvu;
                                    objRisPhieuCdinhCtiet.GhiChu = Utility.sDbnull(objDichVu.MoTa, "");
                                    SqlQuery sqlQueryVungKS = new Select().From(DVungKsat.Schema)
                                        .Where(DVungKsat.Columns.IdVungKs).IsEqualTo(objDichVu.IdVungKs);
                                    var objDVungKsat = sqlQueryVungKS.ExecuteSingle<DVungKsat>();
                                    if (objDVungKsat != null)
                                    {
                                        objRisPhieuCdinhCtiet.VungKs = Utility.sDbnull(objDVungKsat.TenVungKs, "");
                                        objRisPhieuCdinhCtiet.KetLuan = Utility.sDbnull(objDVungKsat.KetLuan, "");
                                        objRisPhieuCdinhCtiet.DeNghi = Utility.sDbnull(objDVungKsat.DeNghi, "");
                                        objRisPhieuCdinhCtiet.KyThuat = Utility.sDbnull(objDVungKsat.KyThuat, "");
                                        objRisPhieuCdinhCtiet.MoTa = Utility.sDbnull(objDVungKsat.MoTa, "");
                                    }
                                }
                            }
                            objRisPhieuCdinhCtiet.Sluong = 1;
                            objRisPhieuCdinhCtiet.DaIn = 0;
                            objRisPhieuCdinhCtiet.SeriesInstanceUid = SERIES_INSTANCE_UID;
                            objRisPhieuCdinhCtiet.SopInstanceUid = SOP_INSTANCE_UID;
                            objRisPhieuCdinhCtiet.StudyInstanceUid = objPhieuCdinh.StudyInstanseUid;
                            objRisPhieuCdinhCtiet.MaKieuDvu = globalVariables.MaKieuDV;
                            objRisPhieuCdinhCtiet.MaDvu = Position;
                            objRisPhieuCdinhCtiet.MaLoaiDvu = BodyPart;
                            objRisPhieuCdinhCtiet.MaTbi = string.Empty;
                            objRisPhieuCdinhCtiet.IdKhoaThien = -1;
                            objRisPhieuCdinhCtiet.TrangThaiImage = 1;
                            // objRisPhieuCdinhCtiet.MaKieuDvu = globalVariables.;
                            objRisPhieuCdinhCtiet.TrangThai = 0;
                            objRisPhieuCdinhCtiet.IdPhieu = objPhieuCdinh.IdPhieu;
                            objRisPhieuCdinhCtiet.IsNew = true;
                            objRisPhieuCdinhCtiet.Save();
                            objRisPhieuCdinhCtiet.IdPhieuCtiet =
                                Utility.Int32Dbnull(_QueryChiTiet.GetMax(RisPhieuCdinhCtiet.Columns.IdPhieuCtiet), -1);
                        }
                        else
                        {
                            objRisPhieuCdinhCtiet = sqlQuery.ExecuteSingle<RisPhieuCdinhCtiet>();
                        }
                        sqlQuery = new Select().From(RisLuuAnh.Schema)
                            .Where(RisLuuAnh.Columns.IdPhieuCtiet).IsEqualTo(objRisPhieuCdinhCtiet.IdPhieuCtiet)
                            .And(RisLuuAnh.Columns.SeriesInstanceUid).IsEqualTo(objRisPhieuCdinhCtiet.SeriesInstanceUid)
                            .And(RisLuuAnh.Columns.SopInstanceUid).IsEqualTo(SOP_INSTANCE_UID);
                        if (sqlQuery.GetRecordCount() <= 0)
                        {
                            new Update(RisLuuAnh.Schema)
                                .Set(RisLuuAnh.Columns.TrangThai).EqualTo(0)
                                .Where(RisPhieuCdinhCtiet.Columns.IdPhieuCtiet).IsEqualTo(
                                    objRisPhieuCdinhCtiet.IdPhieuCtiet).Execute();
                            var objLuuAnh = new RisLuuAnh();
                            objLuuAnh.DdanAnh = PathImage;
                            objLuuAnh.DdanAnhThumb = PathImage_thumb;
                            objLuuAnh.IdPhieuCtiet = Utility.Int64Dbnull(objRisPhieuCdinhCtiet.IdPhieuCtiet, -1);
                            objLuuAnh.SeriesInstanceUid = objRisPhieuCdinhCtiet.SeriesInstanceUid;
                            objLuuAnh.SopInstanceUid = SOP_INSTANCE_UID;
                            objLuuAnh.NgayTao = sysDateTime;
                            objLuuAnh.TrangThai = 1;
                            string[] strings = SOP_INSTANCE_UID.Split('.');
                            int loz;
                            try
                            {
                                loz = Convert.ToInt32(strings[strings.Length - 1]);
                            }
                            catch (Exception)
                            {
                                loz = 0;
                            }
                            objLuuAnh.Stt = loz;
                            objLuuAnh.IsNew = true;
                            objLuuAnh.Save();
                        }
                        else
                        {
                            new Update(RisLuuAnh.Schema)
                                .Set(RisLuuAnh.Columns.DdanAnh).EqualTo(PathImage)
                                .Set(RisLuuAnh.Columns.NgayTao).EqualTo(sysDateTime)
                                .Where(RisLuuAnh.Columns.IdPhieuCtiet).IsEqualTo(objRisPhieuCdinhCtiet.IdPhieuCtiet)
                                .And(RisLuuAnh.Columns.SeriesInstanceUid).IsEqualTo(
                                    objRisPhieuCdinhCtiet.SeriesInstanceUid)
                                .And(RisLuuAnh.Columns.SopInstanceUid).IsEqualTo(SOP_INSTANCE_UID).Execute();
                        }
                    }
                    //  OrderImage(SERIES_INSTANCE_UID);
                    scope.Complete();
                    return;
                }
            }
            catch (Exception ex)
            {
                return;
            }
        }
コード例 #3
0
       /// <summary>
       /// hàm thực hiện việc thêm mới thôn tin của phiéu điều trị
       /// </summary>
       /// <param name="objPhieuCdinh"></param>
       /// <param name="arrPhieuChiTiet"></param>
       /// <param name="IDPhieu"></param>
       /// <returns></returns>
       public ActionResult InsertPhieuChiDinh(RisPhieuCdinh objPhieuCdinh, RisPhieuCdinhCtiet[] arrPhieuChiTiet, ref int IDPhieu,ref string SoPhieu)
       {
           Query _Query = RisPhieuCdinh.CreateQuery();
           try
           {
               using (var scope = new TransactionScope())
               {
                   using (var sh = new SharedDbConnectionScope())
                   {
                       objPhieuCdinh.MaPhieu = BusinessHelper.LayMaPhieu();
                       objPhieuCdinh.IsNew = true;
                       objPhieuCdinh.Save();
                       objPhieuCdinh.IdPhieu = Utility.Int32Dbnull(_Query.GetMax(RisPhieuCdinh.Columns.IdPhieu), -1);
                       log.Info("Lay thong tin cua so phieu lon nhat co trong db voi id_phieu=" + objPhieuCdinh.IdPhieu);
                       SqlQuery sqlQuery = new Select(SubSonic.Aggregate.Max(RisPhieuCdinh.Columns.IdPhieu)).From(RisPhieuCdinh.Schema)
                           .Where(RisPhieuCdinh.Columns.IdBnhan).IsEqualTo(objPhieuCdinh.IdBnhan)
                           .And(RisPhieuCdinh.Columns.Pid).IsEqualTo(objPhieuCdinh.Pid);
                       int MaxPhieu = Utility.Int32Dbnull(sqlQuery.ExecuteScalar(),-1);
                       log.Info("Bat dau kiem tra so phieu xem co dung cua benh nhan do khong");
                       if (MaxPhieu != objPhieuCdinh.IdPhieu)
                       {
                           VietBaIT.CommonLibrary.ErrorLog.InsertInfolog("Mã phiếu khác nhau, thì thực hiện gán cái vừa lấy được cho cái cũ",
                                                             Assembly.GetExecutingAssembly().GetName().Name,
                                                             Assembly.GetExecutingAssembly().FullName);
                          
                           objPhieuCdinh.IdPhieu = MaxPhieu;
                           log.Info("Thuc hien viec kiem tra xem so phieu da ton tai chua,neu co rui thi lay id =" + objPhieuCdinh.IdPhieu);
                       }
                       sqlQuery = new Select().From(RisPhieuCdinh.Schema)
                           .Where(RisPhieuCdinh.Columns.MaPhieu).IsEqualTo(objPhieuCdinh.MaPhieu)
                           .And(RisPhieuCdinh.Columns.IdPhieu).IsNotEqualTo(objPhieuCdinh.IdPhieu);
                       VietBaIT.CommonLibrary.ErrorLog.InsertInfolog("Kiểm tra xem có trùng mã phiếu không, nếu trùng thì thực hiện cập nhập lại số phiếu khác",
                                                            Assembly.GetExecutingAssembly().GetName().Name,
                                                            Assembly.GetExecutingAssembly().FullName);
                       log.Info("Kiem tra xem so phieu da ton tai chua");
                       if (sqlQuery.GetRecordCount() > 0)
                       {
                        
                           objPhieuCdinh.MaPhieu = BusinessHelper.LayMaPhieu();
                           new Update(RisPhieuCdinh.Schema)
                               .Set(RisPhieuCdinh.Columns.MaPhieu).EqualTo(objPhieuCdinh.MaPhieu)
                               .Where(RisPhieuCdinh.Columns.IdPhieu).IsEqualTo(objPhieuCdinh.IdPhieu).Execute();
                           log.Info("Neu ton tai rui thi cap lai thong tin cua so phieu, voi so phieu moi la=" + objPhieuCdinh.MaPhieu);

                       }
                       log.Info("Bat dau insert thon tin chi tiet");
                       foreach (RisPhieuCdinhCtiet objPhieuCdinhCtiet in arrPhieuChiTiet)
                       {
                           log.Info("Insert thong tin voi IDPhieu=" + objPhieuCdinh.IdPhieu+" va iddich vu="+objPhieuCdinhCtiet.IdDvu);
                           objPhieuCdinhCtiet.IdPhieu = objPhieuCdinh.IdPhieu;
                           objPhieuCdinhCtiet.IsNew = true;
                           objPhieuCdinhCtiet.Save();
                       }
                   }
                   log.Info("Hoan thanh viec them moi so phieu");
                   scope.Complete();
                   IDPhieu = objPhieuCdinh.IdPhieu;
                   SoPhieu = objPhieuCdinh.MaPhieu;
                   return ActionResult.Success;
               }
           }
           catch (Exception exception)
           {
               log.Error("Loi trong qua trinh them moi benh nhan {0}", exception.ToString());
               VietBaIT.CommonLibrary.ErrorLog.InsertErrorlog(exception.ToString(),
                                                              Assembly.GetExecutingAssembly().GetName().Name,
                                                              Assembly.GetExecutingAssembly().FullName);
               return ActionResult.Error;
           }
       }
コード例 #4
0
       /// <summary>
       /// hàm thực hiện xóa thông tin của phiếu
       /// </summary>
       /// <returns></returns>
       public ActionResult XoaChiTietphieu(RisPhieuCdinhCtiet objPhieuCdinhCtiet)
       {
           try
           {
               using (var scope = new TransactionScope())
               {
                   using (var sh = new SharedDbConnectionScope())
                   {

                       RisPhieuCdinhCtiet.Delete(objPhieuCdinhCtiet.IdPhieuCtiet);

                           SqlQuery sqlQuery = new Select().From(RisPhieuCdinhCtiet.Schema)
                               .Where(RisPhieuCdinhCtiet.Columns.IdPhieu).IsEqualTo(objPhieuCdinhCtiet.IdPhieu);
                           if (sqlQuery.GetRecordCount() <= 0)
                           {
                               RisPhieuCdinh.Delete(objPhieuCdinhCtiet.IdPhieu);
                           }
                   }
                   scope.Complete();
                   return ActionResult.Success;
               }
           }
           catch (Exception exception)
           {
               log.Error("Loi trong qua trinh xóa chi tiết phiếu {0}", exception.ToString());
               VietBaIT.CommonLibrary.ErrorLog.InsertErrorlog(exception.ToString(),
                                                              Assembly.GetExecutingAssembly().GetName().Name,
                                                              Assembly.GetExecutingAssembly().FullName);
               return ActionResult.Error;
           }
       }
コード例 #5
0
 /// <summary>
 /// hàm thực hiện việc kết thúc phiếu chỉ định
 /// </summary>
 /// <param name="arrPhieuChiTiet"></param>
 /// <returns></returns>
 public ActionResult KetThucPhieuChiDinh(RisPhieuCdinhCtiet arrPhieuChiTiet)
 {
     Query _Query = RisPhieuCdinh.CreateQuery();
     try
     {
         using (var scope = new TransactionScope())
         {
             using (var sh = new SharedDbConnectionScope())
             {
                 new Update(RisPhieuCdinhCtiet.Schema)
                     .Set(RisPhieuCdinhCtiet.Columns.TrangThai).EqualTo(2)
                     .Set(RisPhieuCdinhCtiet.Columns.KyThuat).EqualTo(arrPhieuChiTiet.KyThuat)
                     .Set(RisPhieuCdinhCtiet.Columns.MoTa).EqualTo(arrPhieuChiTiet.MoTa)
                     .Set(RisPhieuCdinhCtiet.Columns.KetLuan).EqualTo(arrPhieuChiTiet.KetLuan)
                     .Set(RisPhieuCdinhCtiet.Columns.DeNghi).EqualTo(arrPhieuChiTiet.DeNghi)
                     .Set(RisPhieuCdinhCtiet.Columns.NguoiKthuc).EqualTo(globalVariables.UserName)
                     .Set(RisPhieuCdinhCtiet.Columns.NgayKthuc).EqualTo(BusinessHelper.GetSysDateTime())
                     .Where(RisPhieuCdinhCtiet.Columns.IdPhieuCtiet).IsEqualTo(arrPhieuChiTiet.IdPhieuCtiet).
                     Execute();
             }
             scope.Complete();
             //IDPhieu = objPhieuCdinh.IdPhieu;
             return ActionResult.Success;
         }
     }
     catch (Exception exception)
     {
         log.Error("Loi trong qua trinh them moi benh nhan {0}", exception.ToString());
         VietBaIT.CommonLibrary.ErrorLog.InsertErrorlog(exception.ToString(),
                                                        Assembly.GetExecutingAssembly().GetName().Name,
                                                        Assembly.GetExecutingAssembly().FullName);
         return ActionResult.Error;
     }
 }
コード例 #6
0
       /// <summary>
       /// hàm thực hiện việc cập nhập thogn tin của chỉ định
       /// </summary>
       /// <param name="objPhieuCdinh"></param>
       /// <param name="arrPhieuChiTiet"></param>
       /// <returns></returns>
       public ActionResult UpdatePhieuChiDinh(RisPhieuCdinh objPhieuCdinh, RisPhieuCdinhCtiet[] arrPhieuChiTiet)
       {
           Query _Query = RisPhieuCdinh.CreateQuery();
           try
           {
               using (var scope = new TransactionScope())
               {
                   using (var sh = new SharedDbConnectionScope())
                   {
                       new Update(RisPhieuCdinh.Schema)
                           .Set(RisPhieuCdinh.Columns.NguoiSua).EqualTo(globalVariables.UserName)
                           .Set(RisPhieuCdinh.Columns.NgaySua).EqualTo(BusinessHelper.GetSysDateTime())
                           .Set(RisPhieuCdinh.Columns.IdKhoaCd).EqualTo(objPhieuCdinh.IdKhoaCd)
                           .Set(RisPhieuCdinh.Columns.BsCdinh).EqualTo(objPhieuCdinh.BsCdinh)
                           .Where(RisPhieuCdinh.Columns.IdPhieu).IsEqualTo(objPhieuCdinh.IdPhieu).Execute();
                       new Delete().From(RisPhieuCdinhCtiet.Schema)
                           .Where(RisPhieuCdinhCtiet.Columns.IdPhieu).IsEqualTo(objPhieuCdinh.IdPhieu)
                           .AndExpression(RisPhieuCdinhCtiet.Columns.TrangThai).IsEqualTo(0).Or(RisPhieuCdinhCtiet.Columns.TrangThai)
                           .IsNull().CloseExpression()
                           .Execute();
                       foreach (RisPhieuCdinhCtiet objPhieuCdinhCtiet in arrPhieuChiTiet)
                       {

                           if (Utility.Int32Dbnull(objPhieuCdinhCtiet.TrangThai,0) > 0) continue;
                           objPhieuCdinhCtiet.IdPhieu = objPhieuCdinh.IdPhieu;
                           objPhieuCdinhCtiet.IsNew = true;
                           objPhieuCdinhCtiet.Save();

                       }
                   }
                   scope.Complete();
                   //IDPhieu = objPhieuCdinh.IdPhieu;
                   return ActionResult.Success;
               }
           }
           catch (Exception exception)
           {
               log.Error("Loi trong qua trinh them moi benh nhan {0}", exception.ToString());
               VietBaIT.CommonLibrary.ErrorLog.InsertErrorlog(exception.ToString(),
                                                              Assembly.GetExecutingAssembly().GetName().Name,
                                                              Assembly.GetExecutingAssembly().FullName);
               return ActionResult.Error;
           }
       }
コード例 #7
0
	    public void Insert(int IdPhieu,int IdLoaiDvu,int IdDvu,string MaLoaiDvu,string MaDvu,int? Sluong,decimal? DonGia,string DeNghi,string KetLuan,string MoTa,string KyThuat,string VungKs,int? DaIn,string GhiChu,int? IdKhoaThien,string MaTbi,string NguoiThien,DateTime? NgayThien,string NguoiKthuc,DateTime? NgayKthuc,int? TrangThai,int? TrangThaiImage,string StudyInstanceUid,string SeriesInstanceUid,string SopInstanceUid,int? HisIdPhieuCtiet,string MaKieuDvu,string BodyPart,string ViewPos,int AutoGen)
	    {
		    RisPhieuCdinhCtiet item = new RisPhieuCdinhCtiet();
		    
            item.IdPhieu = IdPhieu;
            
            item.IdLoaiDvu = IdLoaiDvu;
            
            item.IdDvu = IdDvu;
            
            item.MaLoaiDvu = MaLoaiDvu;
            
            item.MaDvu = MaDvu;
            
            item.Sluong = Sluong;
            
            item.DonGia = DonGia;
            
            item.DeNghi = DeNghi;
            
            item.KetLuan = KetLuan;
            
            item.MoTa = MoTa;
            
            item.KyThuat = KyThuat;
            
            item.VungKs = VungKs;
            
            item.DaIn = DaIn;
            
            item.GhiChu = GhiChu;
            
            item.IdKhoaThien = IdKhoaThien;
            
            item.MaTbi = MaTbi;
            
            item.NguoiThien = NguoiThien;
            
            item.NgayThien = NgayThien;
            
            item.NguoiKthuc = NguoiKthuc;
            
            item.NgayKthuc = NgayKthuc;
            
            item.TrangThai = TrangThai;
            
            item.TrangThaiImage = TrangThaiImage;
            
            item.StudyInstanceUid = StudyInstanceUid;
            
            item.SeriesInstanceUid = SeriesInstanceUid;
            
            item.SopInstanceUid = SopInstanceUid;
            
            item.HisIdPhieuCtiet = HisIdPhieuCtiet;
            
            item.MaKieuDvu = MaKieuDvu;
            
            item.BodyPart = BodyPart;
            
            item.ViewPos = ViewPos;
            
            item.AutoGen = AutoGen;
            
	    
		    item.Save(UserName);
	    }
コード例 #8
0
ファイル: TIEPDON_BENHNHAN.cs プロジェクト: khaha2210/radio
       public ActionResult InsertPhieuChiDinh(RisPhieuCdinh objPhieuCdinh, RisPhieuCdinhCtiet[] arrPhieuChiTiet,ref int IDPhieu)
       {
           Query _Query = RisPhieuCdinh.CreateQuery();
           try
           {
               using (var scope = new TransactionScope())
               {
                   using (var sh = new SharedDbConnectionScope())
                   {
                       objPhieuCdinh.MaPhieu = BusinessHelper.LayMaPhieu();
                       objPhieuCdinh.IsNew = true;
                       objPhieuCdinh.Save();
                       objPhieuCdinh.IdPhieu = Utility.Int32Dbnull(_Query.GetMax(RisPhieuCdinh.Columns.IdPhieu), -1);
                       SqlQuery sqlQuery = new Select().From(RisPhieuCdinh.Schema)
                           .Where(RisPhieuCdinh.Columns.MaPhieu).IsEqualTo(objPhieuCdinh.MaPhieu)
                           .And(RisPhieuCdinh.Columns.IdPhieu).IsNotEqualTo(objPhieuCdinh.IdPhieu);
                       if(sqlQuery.GetRecordCount()>0)
                       {
                           new Update(RisPhieuCdinh.Schema)
                               .Set(RisPhieuCdinh.Columns.MaPhieu).EqualTo(BusinessHelper.LayMaPhieu())
                               .Where(RisPhieuCdinh.Columns.IdPhieu).IsEqualTo(objPhieuCdinh.IdPhieu).Execute();

                       }
                       foreach (RisPhieuCdinhCtiet objPhieuCdinhCtiet in arrPhieuChiTiet)
                       {
                           objPhieuCdinhCtiet.IdPhieu = objPhieuCdinh.IdPhieu;
                           objPhieuCdinhCtiet.IsNew = true;
                           objPhieuCdinhCtiet.Save();
                       }
                   }
                   scope.Complete();
                   IDPhieu = objPhieuCdinh.IdPhieu;
                   return ActionResult.Success;
               }
           }
           catch (Exception exception)
           {
               log.Error("Loi trong qua trinh them moi benh nhan {0}", exception.ToString());
               VietBaIT.CommonLibrary.ErrorLog.InsertErrorlog(exception.ToString(),
                                                              Assembly.GetExecutingAssembly().GetName().Name,
                                                              Assembly.GetExecutingAssembly().FullName);
               return ActionResult.Error;
           }
       }
コード例 #9
0
ファイル: TIEPDON_BENHNHAN.cs プロジェクト: khaha2210/radio
       public ActionResult XoaThongTinPhieu(RisPhieuCdinhCtiet[] arrPhieuChiTiet)
       {
           try
           {
               using (var scope = new TransactionScope())
               {
                   using (var sh = new SharedDbConnectionScope())
                   {
                       foreach (RisPhieuCdinhCtiet objPhieuCdinhCtiet in arrPhieuChiTiet)
                       {
                           RisPhieuCdinhCtiet.Delete(objPhieuCdinhCtiet.IdPhieuCtiet);
                           SqlQuery sqlQuery = new Select().From(RisPhieuCdinhCtiet.Schema)
                               .Where(RisPhieuCdinhCtiet.Columns.IdPhieu).IsEqualTo(objPhieuCdinhCtiet.IdPhieu);
                           log.Info("Xoa thong tin cua chi tiet ="+objPhieuCdinhCtiet.IdPhieuCtiet+" nguoi xoa la="+globalVariables.UserName);
                           if(sqlQuery.GetRecordCount()<=0)
                           {
                               log.Info("kiem tra phieu bi xoa het thi xoa luon phieu kia di="+objPhieuCdinhCtiet
                                   .IdPhieu);
                               RisPhieuCdinh.Delete(objPhieuCdinhCtiet.IdPhieu);
                           }
                       }
                   }
                   scope.Complete();
                   log.Info("Xoa thong tin thanh cong cua ban ghi="+arrPhieuChiTiet.Count());
                   return ActionResult.Success;
               }
           }
           catch (Exception exception)
           {
               log.Error("Loi trong qua trinh them moi benh nhan {0}", exception.ToString());
               VietBaIT.CommonLibrary.ErrorLog.InsertErrorlog(exception.ToString(),
                                                              Assembly.GetExecutingAssembly().GetName().Name,
                                                              Assembly.GetExecutingAssembly().FullName);

               return ActionResult.Error;

           }
       }