public void Insert(short IdDoituongKcb,short IdDichvu,int? IdChitietdichvu,decimal? TyleGiam,byte KieuGiamgia,string MotaThem,decimal? DonGia,decimal? PhuthuDungtuyen,int? IdLoaidoituongKcb,decimal? PhuthuTraituyen,string MaDoituongKcb,DateTime? NgayTao,string NguoiTao,DateTime? NgaySua,string NguoiSua,string MaKhoaThuchien) { QheDoituongDichvucl item = new QheDoituongDichvucl(); item.IdDoituongKcb = IdDoituongKcb; item.IdDichvu = IdDichvu; item.IdChitietdichvu = IdChitietdichvu; item.TyleGiam = TyleGiam; item.KieuGiamgia = KieuGiamgia; item.MotaThem = MotaThem; item.DonGia = DonGia; item.PhuthuDungtuyen = PhuthuDungtuyen; item.IdLoaidoituongKcb = IdLoaidoituongKcb; item.PhuthuTraituyen = PhuthuTraituyen; item.MaDoituongKcb = MaDoituongKcb; item.NgayTao = NgayTao; item.NguoiTao = NguoiTao; item.NgaySua = NgaySua; item.NguoiSua = NguoiSua; item.MaKhoaThuchien = MaKhoaThuchien; item.Save(UserName); }
private QheDoituongDichvucl CreateObjectTypeService(GridEXRow gridExRow) { QheDoituongDichvucl objectTypeService=new QheDoituongDichvucl(); objectTypeService.DonGia = Utility.DecimaltoDbnull( gridExRow.Cells[QheDoituongDichvucl.Columns.DonGia].Value, 0); objectTypeService.PhuthuDungtuyen = Utility.DecimaltoDbnull( gridExRow.Cells[QheDoituongDichvucl.Columns.PhuthuDungtuyen].Value, 0); objectTypeService.IdChitietdichvu = Utility.Int16Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value); objectTypeService.MotaThem = gridExRow.Cells[QheDoituongDichvucl.Columns.MotaThem].Value.ToString(); objectTypeService.IdDoituongKcb = Utility.Int16Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdDoituongKcb].Value, -1); objectTypeService.TyleGiam = Utility.Int16Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.TyleGiam].Value, -1); objectTypeService.KieuGiamgia = Utility.ByteDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.KieuGiamgia].Value); return objectTypeService; }
private void SaveAll() { try { Utility.SetMsg(lblMsg, "", false); decimal GiaDV = LayGiaDV(); int ServiceDetailId = -1; decimal GiaPhuThu = 0; decimal GiaBHYT = LayGiaBHYT(); string KTH = "ALL"; foreach (Janus.Windows.GridEX.GridEXRow gridExRow in grdQhe.GetRows()) { ServiceDetailId = Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value, -1); SqlQuery q = new Select().From(QheDoituongDichvucl.Schema).Where(QheDoituongDichvucl.Columns.IdChitietdichvu). IsEqualTo(Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value, -1)).And( QheDoituongDichvucl.Columns.MaDoituongKcb).IsEqualTo(Utility.sDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.MaDoituongKcb].Value, "-1")) .And(QheDoituongDichvucl.Columns.MaKhoaThuchien).IsEqualTo(Utility.sDbnull(cboKhoaTH.SelectedValue, "")); //.Or(QheDoituongDichvucl.Columns.MaDoituongKcb).IsEqualTo("BHYT"); GiaPhuThu = Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.PhuthuTraituyen].Value, 0); int ObjectTypeType = Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdLoaidoituongKcb].Value, 0); //if (ObjectTypeType == 0) KTH = "ALL"; else KTH = Utility.sDbnull(cboKhoaTH.SelectedValue, "ALL"); //Nếu có lưu đối tượng BHYT và tồn tại giá DV thì tự động tính phụ thu trái tuyến cho đối tượng BHYT đó if (gridExRow.Cells[QheDoituongDichvucl.Columns.IdLoaidoituongKcb].Value.ToString() == "0" && GiaDV > 0) { GiaBHYT = Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.DonGia].Value, 0); if (PropertyLib._QheGiaCLSProperties.TudongDieuChinhGiaPTTT) GiaPhuThu = GiaDV - GiaBHYT > 0 ? GiaDV - GiaBHYT : 0; } //Nếu đối tượng BHYT có tồn tại thì update lại thông tin trong đó có giá phụ thu trái tuyến if (q.GetRecordCount() > 0) { new Update(QheDoituongDichvucl.Schema) .Set(QheDoituongDichvucl.Columns.NgaySua).EqualTo(globalVariables.SysDate) .Set(QheDoituongDichvucl.Columns.NguoiSua).EqualTo(globalVariables.UserName) .Set(QheDoituongDichvucl.Columns.IdDichvu).EqualTo( GetService_ID(Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value, -1))) .Set(QheDoituongDichvucl.Columns.DonGia).EqualTo( Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.DonGia].Value, 0)) .Set(QheDoituongDichvucl.Columns.PhuthuDungtuyen).EqualTo( Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.PhuthuDungtuyen].Value, 0)) .Set(QheDoituongDichvucl.Columns.PhuthuTraituyen).EqualTo(GiaPhuThu) .Set(QheDoituongDichvucl.Columns.MotaThem).EqualTo( Utility.sDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.MotaThem].Value, "")) .Where(QheDoituongDichvucl.Columns.IdChitietdichvu).IsEqualTo(ServiceDetail_ID) .And(QheDoituongDichvucl.Columns.IdLoaidoituongKcb).IsEqualTo( Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdLoaidoituongKcb].Value, -1)) .And(QheDoituongDichvucl.Columns.MaKhoaThuchien).IsEqualTo(KTH) .Execute(); } else { DmucDoituongkcbCollection objectTypeCollection = new DmucDoituongkcbController().FetchByQuery( DmucDoituongkcb.CreateQuery().AddWhere(DmucDoituongkcb.Columns.MaDoituongKcb, Comparison.Equals, Utility.sDbnull(gridExRow.Cells[DmucDoituongkcb.Columns.MaDoituongKcb].Value, "-1"))); foreach (DmucDoituongkcb lObjectType in objectTypeCollection) { QheDoituongDichvucl _newItems = new QheDoituongDichvucl(); _newItems.IdDoituongKcb = lObjectType.IdDoituongKcb; _newItems.IdDichvu = Utility.Int16Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdDichvu].Value, -1); _newItems.IdChitietdichvu = Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value, -1); _newItems.TyleGiam = 0; _newItems.KieuGiamgia = (byte)0; _newItems.DonGia = Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.DonGia].Value, 0); _newItems.PhuthuDungtuyen = Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.PhuthuDungtuyen].Value, 0); _newItems.PhuthuTraituyen = GiaPhuThu; _newItems.IdLoaidoituongKcb = Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdLoaidoituongKcb].Value, -1); _newItems.MaDoituongKcb = lObjectType.MaDoituongKcb; _newItems.NguoiTao = globalVariables.UserName; _newItems.NgayTao = globalVariables.SysDate; _newItems.MaKhoaThuchien = KTH; _newItems.IsNew = true; _newItems.Save(); gridExRow.BeginEdit(); gridExRow.Cells[QheDoituongDichvucl.Columns.IdQuanhe].Value = _newItems.IdQuanhe; gridExRow.EndEdit(); } } gridExRow.BeginEdit(); gridExRow.Cells[QheDoituongDichvucl.Columns.PhuthuTraituyen].Value = GiaPhuThu; gridExRow.EndEdit(); grdQhe.UpdateData(); //Tự động update giá dịch vụ cho tất cả các khoa là giống nhau và giống giá sửa cuối cùng if (PropertyLib._QheGiaCLSProperties.TudongDieuChinhGiaDichVu) { SqlQuery sqlQuery = new Select().From(DmucDoituongkcb.Schema) .Where(DmucDoituongkcb.Columns.IdLoaidoituongKcb).IsEqualTo(1) .And(DmucDoituongkcb.Columns.MaDoituongKcb).IsEqualTo(Utility.sDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.MaDoituongKcb].Value, "-1")); DmucDoituongkcb objectType = sqlQuery.ExecuteSingle<DmucDoituongkcb>(); if (objectType != null) { new Update(DmucDichvuclsChitiet.Schema) .Set(DmucDichvuclsChitiet.Columns.DonGia) .EqualTo(Utility.DecimaltoDbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.DonGia].Value, 0)) .Where(DmucDichvuclsChitiet.Columns.IdChitietdichvu) .IsEqualTo(Utility.Int32Dbnull(gridExRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value, -1)).Execute(); } } } new Update(DmucDichvuclsChitiet.Schema).Set(DmucDichvuclsChitiet.Columns.DonGia).EqualTo(GiaDV) .Set(DmucDichvuclsChitiet.Columns.GiaBhyt).EqualTo(GiaBHYT) .Where(DmucDichvuclsChitiet.Columns.IdChitietdichvu).IsEqualTo(Utility.Int32Dbnull(grdList.CurrentRow.Cells[QheDoituongDichvucl.Columns.IdChitietdichvu].Value, -1)) .Execute(); //Cập nhật giá BHYT cho các khoa thực hiện if (PropertyLib._QheGiaCLSProperties.TudongDieuChinhGiaBHYT) { if (GiaBHYT >= 0) { QheDoituongDichvuclCollection lstItems = new Select().From(QheDoituongDichvucl.Schema). Where(QheDoituongDichvucl.Columns.IdChitietdichvu). IsEqualTo(ServiceDetailId) .And(QheDoituongDichvucl.MaKhoaThuchienColumn).IsNotEqualTo(KTH).ExecuteAsCollection<QheDoituongDichvuclCollection>(); foreach (QheDoituongDichvucl item in lstItems) { int ObjectTypeType = item.IdLoaidoituongKcb.Value; if (ObjectTypeType == 1) GiaDV = item.DonGia.Value; } GiaPhuThu = 0; foreach (QheDoituongDichvucl item in lstItems) { int ObjectTypeType = item.IdLoaidoituongKcb.Value; if (ObjectTypeType.ToString() == "0" && GiaDV > 0) { GiaPhuThu = GiaDV - GiaBHYT > 0 ? GiaDV - GiaBHYT : 0; Update _update = new Update(QheDoituongDichvucl.Schema).Set(QheDoituongDichvucl.DonGiaColumn).EqualTo(GiaBHYT); if (PropertyLib._QheGiaCLSProperties.TudongDieuChinhGiaPTTT) _update.Set(QheDoituongDichvucl.PhuthuTraituyenColumn).EqualTo(GiaPhuThu); _update.Where(QheDoituongDichvucl.IdLoaidoituongKcbColumn).IsEqualTo(0).And(QheDoituongDichvucl.IdChitietdichvuColumn).IsEqualTo(ServiceDetailId) .And(QheDoituongDichvucl.MaKhoaThuchienColumn).IsNotEqualTo(KTH) .Execute(); } } } } Utility.SetMsg(lblMsg, "Bạn thực hiện cập nhập giá thành công",false); } catch (Exception exception) { Utility.SetMsg(lblMsg, "Lỗi trong quá trình cập nhập thông tin", false); } }
/// <summary> /// HÀM THUWCJHIEENJ KHỞI TẠO CHI TIẾT ĐỐI TƯỢNG CHI TIÊT DỊCH VỤ /// </summary> /// <returns></returns> private QheDoituongDichvucl CreateDmucDoituongkcbDetailService() { var objectTypeService = new QheDoituongDichvucl(); return objectTypeService; }