public override T Convert <T, U>(U entity)
        {
            DoctorSpeciality doctorspecility = entity as DoctorSpeciality;

            if (doctorspecility == null)
            {
                return(default(T));
            }

            BO.DoctorSpeciality doctorspecilityBO = new BO.DoctorSpeciality();

            doctorspecilityBO.IsDeleted = doctorspecility.IsDeleted;
            if (doctorspecilityBO.UpdateByUserID.HasValue)
            {
                doctorspecilityBO.UpdateByUserID = doctorspecility.UpdateByUserID.Value;
            }

            BO.Doctor boDoctor = new BO.Doctor();
            using (DoctorRepository sr = new DoctorRepository(_context))
            {
                boDoctor = sr.Convert <BO.Doctor, Doctor>(doctorspecility.Doctor);
                doctorspecilityBO.Doctor = boDoctor;
            }

            BO.Specialty boSpecliality = new BO.Specialty();
            using (SpecialityRepository sr = new SpecialityRepository(_context))
            {
                boSpecliality = sr.Convert <BO.Specialty, Specialty>(doctorspecility.Specialty);
                doctorspecilityBO.Specialty = boSpecliality;
            }

            return((T)(object)doctorspecilityBO);
        }
        public override T ObjectConvert <T, U>(U entity)
        {
            DoctorSpeciality doctorspecility = entity as DoctorSpeciality;

            if (doctorspecility == null)
            {
                return(default(T));
            }

            BO.DoctorSpeciality doctorspecilityBO = new BO.DoctorSpeciality();
            doctorspecilityBO.ID        = doctorspecility.id;
            doctorspecilityBO.IsDeleted = doctorspecility.IsDeleted;
            if (doctorspecilityBO.UpdateByUserID.HasValue)
            {
                doctorspecilityBO.UpdateByUserID = doctorspecility.UpdateByUserID.Value;
            }

            if (doctorspecility.Specialty != null && (doctorspecility.Specialty.IsDeleted.HasValue == false || (doctorspecility.Specialty.IsDeleted.HasValue == true && doctorspecility.Specialty.IsDeleted.Value == false)))
            {
                BO.Specialty boSpecliality = new BO.Specialty();
                using (SpecialityRepository sr = new SpecialityRepository(_context))
                {
                    boSpecliality = sr.Convert <BO.Specialty, Specialty>(doctorspecility.Specialty);
                    doctorspecilityBO.Specialty = boSpecliality;
                }
            }

            return((T)(object)doctorspecilityBO);
        }
        public override List <MIDAS.GBX.BusinessObjects.BusinessValidation> Validate <T>(T entity)
        {
            BO.Specialty specialty = (BO.Specialty)(object) entity;
            var          result    = specialty.Validate(specialty);

            return(result);
        }
        public override T Convert <T, U>(U entity)
        {
            Specialty specialty = entity as Specialty;

            if (specialty == null)
            {
                return(default(T));
            }

            BO.Specialty specialtyBO = new BO.Specialty();

            specialtyBO.ID                  = specialty.id;
            specialtyBO.Name                = specialty.Name;
            specialtyBO.SpecialityCode      = specialty.SpecialityCode;
            specialtyBO.MandatoryProcCode   = specialty.MandatoryProcCode;
            specialtyBO.SchedulingAvailable = specialty.SchedulingAvailable;
            if (specialty.IsUnitApply.HasValue)
            {
                specialtyBO.IsDeleted = specialty.IsUnitApply.Value;
            }
            if (specialty.IsDeleted.HasValue)
            {
                specialtyBO.IsDeleted = specialty.IsDeleted.Value;
            }
            if (specialty.UpdateByUserID.HasValue)
            {
                specialtyBO.UpdateByUserID = specialty.UpdateByUserID.Value;
            }

            specialtyBO.ColorCode = specialty.ColorCode;

            return((T)(object)specialtyBO);
        }
 public override object Get(int id)
 {
     BO.Specialty acc_ = Convert <BO.Specialty, Specialty>(_context.Specialties.Where(p => p.id == id && p.IsDeleted == false).FirstOrDefault <Specialty>());
     if (acc_ == null)
     {
         return(new BO.ErrorObject {
             ErrorMessage = "No record found for this Specialty.", errorObject = "", ErrorLevel = ErrorLevel.Error
         });
     }
     return((object)acc_);
 }
        public override object Delete <T>(T entity)
        {
            BO.Specialty specialtyBO = entity as BO.Specialty;

            Specialty speclityDB = new Specialty();

            speclityDB.id = specialtyBO.ID;
            _dbSet.Remove(_context.Specialties.Single <Specialty>(p => p.id == specialtyBO.ID));
            _context.SaveChanges();

            var res = (BO.GbObject)(object) entity;

            return(specialtyBO);
        }
        public override T Convert <T, U>(U entity)
        {
            SpecialtyDetail specialtydetail = entity as SpecialtyDetail;

            if (specialtydetail == null)
            {
                return(default(T));
            }

            BO.SpecialtyDetails specialtyDetailBO = new BO.SpecialtyDetails();

            specialtyDetailBO.ID = specialtydetail.id;
            if (specialtydetail.ReevalDays.HasValue)
            {
                specialtyDetailBO.ReevalDays = specialtydetail.ReevalDays.Value;
            }
            if (specialtydetail.ReevalVisitCount.HasValue)
            {
                specialtyDetailBO.ReevalVisitCount = specialtydetail.ReevalVisitCount.Value;
            }
            if (specialtydetail.InitialDays.HasValue)
            {
                specialtyDetailBO.InitialDays = specialtydetail.InitialDays.Value;
            }
            if (specialtydetail.InitialVisitCount.HasValue)
            {
                specialtyDetailBO.InitialVisitCount = specialtydetail.InitialVisitCount.Value;
            }
            if (specialtydetail.MaxReval.HasValue)
            {
                specialtyDetailBO.MaxReval = specialtydetail.MaxReval.Value;
            }
            if (specialtydetail.IsInitialEvaluation.HasValue)
            {
                specialtyDetailBO.IsInitialEvaluation = specialtydetail.IsInitialEvaluation.Value;
            }
            if (specialtydetail.Include1500.HasValue)
            {
                specialtyDetailBO.Include1500 = specialtydetail.Include1500.Value;
            }
            if (specialtydetail.AllowMultipleVisit.HasValue)
            {
                specialtyDetailBO.AllowMultipleVisit = specialtydetail.AllowMultipleVisit.Value;
            }
            if (specialtydetail.IsDeleted.HasValue)
            {
                specialtyDetailBO.IsDeleted = specialtydetail.IsDeleted.Value;
            }
            if (specialtydetail.UpdateByUserID.HasValue)
            {
                specialtyDetailBO.UpdateByUserID = specialtydetail.UpdateByUserID.Value;
            }

            BO.Specialty boSpecialty = new BO.Specialty();
            //using (SpecialityRepository sr = new SpecialityRepository(_context))
            //{
            //    boSpecialty = sr.Convert<BO.Specialty, Specialty>(specialtydetail.Specialty);
            //    specialtyDetailBO.Specialty = boSpecialty;
            //}
            return((T)(object)specialtyDetailBO);
        }
        public override object Save <T>(T entity)
        {
            BO.SpecialtyDetails specialtyDetailBO = (BO.SpecialtyDetails)(object) entity;

            SpecialtyDetail speclityDetailDB = new SpecialtyDetail();

            if (specialtyDetailBO.Specialty == null)
            {
                return(new BO.ErrorObject {
                    ErrorMessage = "Specialty object can't be null", errorObject = "", ErrorLevel = ErrorLevel.Error
                });
            }
            BO.Specialty specilityBO = specialtyDetailBO.Specialty;

            #region Specialty
            speclityDetailDB.id                  = specialtyDetailBO.ID;
            speclityDetailDB.ReevalDays          = specialtyDetailBO.ReevalDays;
            speclityDetailDB.ReevalVisitCount    = specialtyDetailBO.ReevalVisitCount;
            speclityDetailDB.InitialDays         = specialtyDetailBO.InitialDays;
            speclityDetailDB.InitialVisitCount   = specialtyDetailBO.InitialVisitCount;
            speclityDetailDB.MaxReval            = specialtyDetailBO.MaxReval;
            speclityDetailDB.IsInitialEvaluation = specialtyDetailBO.IsInitialEvaluation;
            speclityDetailDB.Include1500         = specialtyDetailBO.Include1500;
            speclityDetailDB.AllowMultipleVisit  = specialtyDetailBO.AllowMultipleVisit;
            speclityDetailDB.IsDeleted           = specialtyDetailBO.IsDeleted;
            #endregion

            #region Specialty
            if (specilityBO.ID > 0)
            {
                //Specialty speclity = _context.Specialties.Where(p => p.id == specilityBO.ID).FirstOrDefault<Specialty>();
                //if (speclity != null)
                //{
                //    speclityDetailDB.Specialty = speclity;
                //    _context.Entry(speclity).State = System.Data.Entity.EntityState.Modified;
                //}
                //else
                //    return new BO.ErrorObject { errorObject = "", ErrorMessage = "Please pass valid Speclity details.", ErrorLevel = ErrorLevel.Error };
            }
            #endregion


            if (speclityDetailDB.id > 0)
            {
                //Find Specialty By ID
                SpecialtyDetail specialtydetail = _context.SpecialtyDetails.Where(p => p.id == speclityDetailDB.id).FirstOrDefault <SpecialtyDetail>();

                if (specialtydetail != null)
                {
                    #region Specialty
                    speclityDetailDB.ReevalDays          = specialtyDetailBO.ReevalDays != null ? specialtyDetailBO.ReevalDays : specialtydetail.ReevalDays;
                    speclityDetailDB.ReevalVisitCount    = specialtyDetailBO.ReevalVisitCount != null ? specialtyDetailBO.ReevalVisitCount : specialtydetail.ReevalVisitCount;
                    speclityDetailDB.InitialDays         = specialtyDetailBO.InitialDays != null ? specialtyDetailBO.InitialDays : specialtydetail.InitialDays;
                    speclityDetailDB.InitialVisitCount   = specialtyDetailBO.InitialVisitCount != null ? specialtyDetailBO.InitialVisitCount : specialtydetail.InitialVisitCount;
                    speclityDetailDB.MaxReval            = specialtyDetailBO.MaxReval != null ? specialtyDetailBO.MaxReval : specialtydetail.MaxReval;
                    speclityDetailDB.IsInitialEvaluation = specialtyDetailBO.IsDeleted != null ? specialtyDetailBO.IsDeleted : specialtydetail.IsDeleted;
                    speclityDetailDB.Include1500         = specialtyDetailBO.IsDeleted != null ? specialtyDetailBO.IsDeleted : specialtydetail.IsDeleted;
                    speclityDetailDB.AllowMultipleVisit  = specialtyDetailBO.IsDeleted != null ? specialtyDetailBO.IsDeleted : specialtydetail.IsDeleted;
                    speclityDetailDB.IsDeleted           = specialtyDetailBO.IsDeleted != null ? specialtyDetailBO.IsDeleted : specialtydetail.IsDeleted;
                    specialtydetail.IsDeleted            = specialtyDetailBO.IsDeleted != null ? specialtyDetailBO.IsDeleted : specialtydetail.IsDeleted;
                    specialtydetail.UpdateDate           = DateTime.UtcNow;
                    specialtydetail.UpdateByUserID       = specialtyDetailBO.UpdateByUserID;
                    #endregion

                    _context.Entry(specialtydetail).State = System.Data.Entity.EntityState.Modified;
                }
            }
            else
            {
                speclityDetailDB.CreateDate     = DateTime.UtcNow;
                speclityDetailDB.CreateByUserID = specialtyDetailBO.CreateByUserID;

                _dbSet.Add(speclityDetailDB);
            }
            _context.SaveChanges();

            var res = Convert <BO.SpecialtyDetails, SpecialtyDetail>(speclityDetailDB);
            return((object)res);
        }
示例#9
0
        public override T Convert <T, U>(U entity)
        {
            if (entity is PatientVisitUnscheduled)
            {
                PatientVisitUnscheduled PatientVisitUnscheduledDB = entity as PatientVisitUnscheduled;

                if (PatientVisitUnscheduledDB == null)
                {
                    return(default(T));
                }

                BO.PatientVisitUnscheduled PatientVisitUnscheduledBO = new BO.PatientVisitUnscheduled();
                PatientVisitUnscheduledBO.ID                  = PatientVisitUnscheduledDB.Id;
                PatientVisitUnscheduledBO.CaseId              = PatientVisitUnscheduledDB.CaseId;
                PatientVisitUnscheduledBO.PatientId           = PatientVisitUnscheduledDB.PatientId;
                PatientVisitUnscheduledBO.EventStart          = PatientVisitUnscheduledDB.EventStart;
                PatientVisitUnscheduledBO.MedicalProviderName = PatientVisitUnscheduledDB.MedicalProviderName;
                PatientVisitUnscheduledBO.DoctorName          = PatientVisitUnscheduledDB.DoctorName;
                PatientVisitUnscheduledBO.Notes               = PatientVisitUnscheduledDB.Notes;
                PatientVisitUnscheduledBO.SpecialtyId         = PatientVisitUnscheduledDB.SpecialtyId;
                PatientVisitUnscheduledBO.RoomTestId          = PatientVisitUnscheduledDB.RoomTestId;
                PatientVisitUnscheduledBO.ReferralId          = PatientVisitUnscheduledDB.ReferralId;
                PatientVisitUnscheduledBO.Status              = "Completed";

                PatientVisitUnscheduledBO.IsDeleted      = PatientVisitUnscheduledDB.IsDeleted;
                PatientVisitUnscheduledBO.CreateByUserID = PatientVisitUnscheduledDB.CreateByUserID;
                PatientVisitUnscheduledBO.UpdateByUserID = PatientVisitUnscheduledDB.UpdateByUserID;

                if (PatientVisitUnscheduledDB.Patient != null)
                {
                    BO.Patient PatientBO = new BO.Patient();
                    using (PatientRepository patientRepo = new PatientRepository(_context))
                    {
                        PatientBO = patientRepo.Convert <BO.Patient, Patient>(PatientVisitUnscheduledDB.Patient);
                        PatientVisitUnscheduledBO.Patient = PatientBO;
                    }
                }

                if (PatientVisitUnscheduledDB.Specialty != null)
                {
                    BO.Specialty SpecialtyBO = new BO.Specialty();
                    using (SpecialityRepository specialtyRepo = new SpecialityRepository(_context))
                    {
                        SpecialtyBO = specialtyRepo.Convert <BO.Specialty, Specialty>(PatientVisitUnscheduledDB.Specialty);
                        PatientVisitUnscheduledBO.Specialty = SpecialtyBO;
                    }
                }

                if (PatientVisitUnscheduledDB.RoomTest != null)
                {
                    BO.RoomTest RoomTestBO = new BO.RoomTest();
                    using (RoomTestRepository roomTestRepo = new RoomTestRepository(_context))
                    {
                        RoomTestBO = roomTestRepo.Convert <BO.RoomTest, RoomTest>(PatientVisitUnscheduledDB.RoomTest);
                        PatientVisitUnscheduledBO.RoomTest = RoomTestBO;
                    }
                }

                if (PatientVisitUnscheduledDB.Case != null)
                {
                    BO.Case CaseBO = new BO.Case();
                    using (CaseRepository caseRepo = new CaseRepository(_context))
                    {
                        CaseBO = caseRepo.Convert <BO.Case, Case>(PatientVisitUnscheduledDB.Case);
                        PatientVisitUnscheduledBO.Case = CaseBO;

                        if (PatientVisitUnscheduledDB.Case.PatientAccidentInfoes != null && PatientVisitUnscheduledDB.Case.PatientAccidentInfoes.Count > 0)
                        {
                            List <BO.PatientAccidentInfo> PatientAccidentInfoBOList = new List <BO.PatientAccidentInfo>();
                            using (PatientAccidentInfoRepository patientAccidentInfoRepo = new PatientAccidentInfoRepository(_context))
                            {
                                foreach (PatientAccidentInfo eachPatientInsuranceInfo in PatientVisitUnscheduledDB.Case.PatientAccidentInfoes)
                                {
                                    if (eachPatientInsuranceInfo.IsDeleted.HasValue == false || (eachPatientInsuranceInfo.IsDeleted.HasValue == true && eachPatientInsuranceInfo.IsDeleted.Value == false))
                                    {
                                        PatientAccidentInfoBOList.Add(patientAccidentInfoRepo.Convert <BO.PatientAccidentInfo, PatientAccidentInfo>(eachPatientInsuranceInfo));
                                    }
                                }

                                PatientVisitUnscheduledBO.Case.PatientAccidentInfoes = PatientAccidentInfoBOList;
                            }
                        }
                    }
                }

                return((T)(object)PatientVisitUnscheduledBO);
            }

            return(default(T));
        }
        public override T Convert <T, U>(U entity)
        {
            CompanySpecialtyDetail companyspecialtydetail = entity as CompanySpecialtyDetail;

            if (companyspecialtydetail == null)
            {
                return(default(T));
            }

            BO.CompanySpecialtyDetails companyspecialtyDetailBO = new BO.CompanySpecialtyDetails();

            companyspecialtyDetailBO.ID          = companyspecialtydetail.id;
            companyspecialtyDetailBO.SpecialtyId = companyspecialtydetail.SpecialtyId;
            companyspecialtyDetailBO.CompanyID   = companyspecialtydetail.CompanyID;
            if (companyspecialtydetail.ReevalDays.HasValue)
            {
                companyspecialtyDetailBO.ReevalDays = companyspecialtydetail.ReevalDays.Value;
            }
            if (companyspecialtydetail.ReevalVisitCount.HasValue)
            {
                companyspecialtyDetailBO.ReevalVisitCount = companyspecialtydetail.ReevalVisitCount.Value;
            }
            if (companyspecialtydetail.InitialDays.HasValue)
            {
                companyspecialtyDetailBO.InitialDays = companyspecialtydetail.InitialDays.Value;
            }
            if (companyspecialtydetail.InitialVisitCount.HasValue)
            {
                companyspecialtyDetailBO.InitialVisitCount = companyspecialtydetail.InitialVisitCount.Value;
            }
            if (companyspecialtydetail.MaxReval.HasValue)
            {
                companyspecialtyDetailBO.MaxReval = companyspecialtydetail.MaxReval.Value;
            }
            if (companyspecialtydetail.IsInitialEvaluation.HasValue)
            {
                companyspecialtyDetailBO.IsInitialEvaluation = companyspecialtydetail.IsInitialEvaluation.Value;
            }
            if (companyspecialtydetail.Include1500.HasValue)
            {
                companyspecialtyDetailBO.Include1500 = companyspecialtydetail.Include1500.Value;
            }
            if (companyspecialtydetail.AssociatedSpecialty.HasValue)
            {
                companyspecialtyDetailBO.AssociatedSpecialty = companyspecialtydetail.AssociatedSpecialty.Value;
            }
            if (companyspecialtydetail.AllowMultipleVisit.HasValue)
            {
                companyspecialtyDetailBO.AllowMultipleVisit = companyspecialtydetail.AllowMultipleVisit.Value;
            }
            companyspecialtyDetailBO.InitialCode = companyspecialtydetail.InitialCode;
            companyspecialtyDetailBO.ReEvalCode  = companyspecialtydetail.ReEvalCode;
            //companyspecialtyDetailBO.MandatoryProcCode = companyspecialtydetail.MandatoryProcCode;
            if (companyspecialtydetail.IsDeleted.HasValue)
            {
                companyspecialtyDetailBO.IsDeleted = companyspecialtydetail.IsDeleted.Value;
            }
            if (companyspecialtydetail.UpdateByUserID.HasValue)
            {
                companyspecialtyDetailBO.UpdateByUserID = companyspecialtydetail.UpdateByUserID.Value;
            }

            if (companyspecialtydetail.Specialty != null)
            {
                BO.Specialty boSpecialty = new BO.Specialty();
                using (SpecialityRepository sr = new SpecialityRepository(_context))
                {
                    boSpecialty = sr.Convert <BO.Specialty, Specialty>(companyspecialtydetail.Specialty);
                    companyspecialtyDetailBO.Specialty = boSpecialty;
                }
            }
            if (companyspecialtydetail.Company != null)
            {
                BO.Company boCompany = new BO.Company();
                using (CompanyRepository cmp = new CompanyRepository(_context))
                {
                    boCompany = cmp.Convert <BO.Company, Company>(companyspecialtydetail.Company);
                    companyspecialtyDetailBO.Company = boCompany;
                }
            }
            return((T)(object)companyspecialtyDetailBO);
        }
        public override object Save <T>(T entity)
        {
            BO.CompanySpecialtyDetails companyspecialtyDetailBO = (BO.CompanySpecialtyDetails)(object) entity;

            CompanySpecialtyDetail companyspeclityDetailDB = new CompanySpecialtyDetail();

            if (companyspecialtyDetailBO.Specialty == null)
            {
                return(new BO.ErrorObject {
                    ErrorMessage = "Specialty object can't be null", errorObject = "", ErrorLevel = ErrorLevel.Error
                });
            }
            if (companyspecialtyDetailBO.Company == null)
            {
                return(new BO.ErrorObject {
                    ErrorMessage = "Company object can't be null", errorObject = "", ErrorLevel = ErrorLevel.Error
                });
            }

            BO.Company   companyBO   = companyspecialtyDetailBO.Company;
            BO.Specialty specilityBO = companyspecialtyDetailBO.Specialty;

            #region Specialty
            companyspeclityDetailDB.id                  = companyspecialtyDetailBO.ID;
            companyspeclityDetailDB.SpecialtyId         = companyspecialtyDetailBO.SpecialtyId;
            companyspeclityDetailDB.CompanyID           = companyspecialtyDetailBO.CompanyID;
            companyspeclityDetailDB.ReevalDays          = companyspecialtyDetailBO.ReevalDays;
            companyspeclityDetailDB.ReevalVisitCount    = companyspecialtyDetailBO.ReevalVisitCount;
            companyspeclityDetailDB.InitialDays         = companyspecialtyDetailBO.InitialDays;
            companyspeclityDetailDB.InitialVisitCount   = companyspecialtyDetailBO.InitialVisitCount;
            companyspeclityDetailDB.MaxReval            = companyspecialtyDetailBO.MaxReval;
            companyspeclityDetailDB.IsInitialEvaluation = companyspecialtyDetailBO.IsInitialEvaluation;
            companyspeclityDetailDB.Include1500         = companyspecialtyDetailBO.Include1500;
            companyspeclityDetailDB.AssociatedSpecialty = companyspecialtyDetailBO.AssociatedSpecialty;
            companyspeclityDetailDB.AllowMultipleVisit  = companyspecialtyDetailBO.AllowMultipleVisit;
            companyspeclityDetailDB.InitialCode         = companyspecialtyDetailBO.InitialCode;
            companyspeclityDetailDB.ReEvalCode          = companyspecialtyDetailBO.ReEvalCode;
            //companyspeclityDetailDB.MandatoryProcCode = companyspecialtyDetailBO.MandatoryProcCode;
            companyspeclityDetailDB.IsDeleted = companyspecialtyDetailBO.IsDeleted;
            #endregion

            #region Specialty
            if (specilityBO.ID > 0)
            {
                Specialty speclity = _context.Specialties.Where(p => p.id == specilityBO.ID).FirstOrDefault <Specialty>();
                if (speclity != null)
                {
                    companyspeclityDetailDB.Specialty = speclity;
                }
                else
                {
                    return new BO.ErrorObject {
                               errorObject = "", ErrorMessage = "Please pass valid Speclity details.", ErrorLevel = ErrorLevel.Error
                    }
                };
            }
            #endregion

            #region Company
            if (companyBO.ID > 0)
            {
                Company company = _context.Companies.Where(p => p.id == companyBO.ID).FirstOrDefault <Company>();
                if (company != null)
                {
                    companyspeclityDetailDB.Company = company;
                }
                else
                {
                    return new BO.ErrorObject {
                               errorObject = "", ErrorMessage = "Please pass valid Company details.", ErrorLevel = ErrorLevel.Error
                    }
                };
            }
            #endregion


            if (companyspeclityDetailDB.id > 0)
            {
                //Find Specialty By ID
                CompanySpecialtyDetail companyspecialtydetail = _context.CompanySpecialtyDetails.Where(p => p.id == companyspeclityDetailDB.id).FirstOrDefault <CompanySpecialtyDetail>();

                if (companyspecialtydetail != null)
                {
                    #region Specialty
                    companyspecialtydetail.SpecialtyId = companyspecialtyDetailBO.Specialty.ID != null ? companyspecialtyDetailBO.Specialty.ID : companyspecialtydetail.Specialty.id;

                    companyspecialtydetail.CompanyID           = companyspecialtyDetailBO.CompanyID != null ? companyspecialtyDetailBO.CompanyID : companyspecialtydetail.CompanyID;
                    companyspecialtydetail.ReevalDays          = companyspecialtyDetailBO.ReevalDays != null ? companyspecialtyDetailBO.ReevalDays : companyspecialtydetail.ReevalDays;
                    companyspecialtydetail.ReevalVisitCount    = companyspecialtyDetailBO.ReevalVisitCount != null ? companyspecialtyDetailBO.ReevalVisitCount : companyspecialtydetail.ReevalVisitCount;
                    companyspecialtydetail.InitialDays         = companyspecialtyDetailBO.InitialDays != null ? companyspecialtyDetailBO.InitialDays : companyspecialtydetail.InitialDays;
                    companyspecialtydetail.InitialVisitCount   = companyspecialtyDetailBO.InitialVisitCount != null ? companyspecialtyDetailBO.InitialVisitCount : companyspecialtydetail.InitialVisitCount;
                    companyspecialtydetail.MaxReval            = companyspecialtyDetailBO.MaxReval != null ? companyspecialtyDetailBO.MaxReval : companyspecialtydetail.MaxReval;
                    companyspecialtydetail.IsInitialEvaluation = companyspecialtyDetailBO.IsInitialEvaluation != null ? companyspecialtyDetailBO.IsInitialEvaluation : companyspecialtydetail.IsInitialEvaluation;
                    companyspecialtydetail.Include1500         = companyspecialtyDetailBO.Include1500 != null ? companyspecialtyDetailBO.Include1500 : companyspecialtydetail.Include1500;
                    companyspecialtydetail.AssociatedSpecialty = companyspecialtyDetailBO.AssociatedSpecialty != null ? companyspecialtyDetailBO.AssociatedSpecialty : companyspecialtydetail.AssociatedSpecialty;
                    companyspecialtydetail.AllowMultipleVisit  = companyspecialtyDetailBO.AllowMultipleVisit != null ? companyspecialtyDetailBO.AllowMultipleVisit : companyspecialtydetail.AllowMultipleVisit;
                    companyspecialtydetail.InitialCode         = companyspecialtyDetailBO.InitialCode != null ? companyspecialtyDetailBO.InitialCode : companyspecialtydetail.InitialCode;
                    companyspecialtydetail.ReEvalCode          = companyspecialtyDetailBO.ReEvalCode != null ? companyspecialtyDetailBO.ReEvalCode : companyspecialtydetail.ReEvalCode;
                    //companyspecialtydetail.MandatoryProcCode = companyspecialtyDetailBO.MandatoryProcCode != null ? companyspecialtyDetailBO.MandatoryProcCode : companyspecialtydetail.MandatoryProcCode;
                    companyspecialtydetail.IsDeleted      = companyspecialtyDetailBO.IsDeleted != null ? companyspecialtyDetailBO.IsDeleted : companyspecialtydetail.IsDeleted;
                    companyspecialtydetail.UpdateDate     = DateTime.UtcNow;
                    companyspecialtydetail.UpdateByUserID = companyspecialtyDetailBO.UpdateByUserID;
                    #endregion

                    _context.Entry(companyspecialtydetail).State = System.Data.Entity.EntityState.Modified;
                }
            }
            else
            {
                companyspeclityDetailDB.CreateDate     = DateTime.UtcNow;
                companyspeclityDetailDB.CreateByUserID = companyspecialtyDetailBO.CreateByUserID;

                _dbSet.Add(companyspeclityDetailDB);
            }
            _context.SaveChanges();

            var res = Convert <BO.CompanySpecialtyDetails, CompanySpecialtyDetail>(companyspeclityDetailDB);
            return((object)res);
        }
        public override object Save <T>(T entity)
        {
            BO.Specialty specialtyBO = (BO.Specialty)(object) entity;

            Specialty speclityDB = new Specialty();

            #region Specialty
            speclityDB.id             = specialtyBO.ID;
            speclityDB.Name           = specialtyBO.Name;
            speclityDB.SpecialityCode = specialtyBO.SpecialityCode;
            speclityDB.IsUnitApply    = specialtyBO.IsUnitApply;
            speclityDB.IsDeleted      = specialtyBO.IsDeleted.HasValue ? specialtyBO.IsDeleted.Value : false;
            speclityDB.ColorCode      = specialtyBO.ColorCode;
            #endregion


            if (speclityDB.id > 0)
            {
                //Find Specialty By ID
                Specialty specialty = _context.Specialties.Where(p => p.id == speclityDB.id).FirstOrDefault <Specialty>();

                if (specialty != null)
                {
                    #region Specialty
                    specialty.id             = specialtyBO.ID;
                    specialty.Name           = specialtyBO.Name != null ? specialtyBO.Name : specialty.Name;
                    specialty.IsUnitApply    = specialtyBO.IsUnitApply != null ? specialtyBO.IsUnitApply : specialty.IsUnitApply;
                    specialty.SpecialityCode = specialtyBO.SpecialityCode != null ? specialtyBO.SpecialityCode : specialty.SpecialityCode;
                    specialty.IsDeleted      = specialtyBO.IsDeleted != null ? specialtyBO.IsDeleted : specialty.IsDeleted;
                    specialty.UpdateByUserID = specialtyBO.UpdateByUserID;
                    specialty.ColorCode      = specialtyBO.ColorCode != null ? specialtyBO.ColorCode : specialty.ColorCode;
                    #endregion

                    _context.Entry(specialty).State = System.Data.Entity.EntityState.Modified;
                }
                else
                {
                    return(new BO.ErrorObject {
                        ErrorMessage = "No record found for this Specialty.", errorObject = "", ErrorLevel = ErrorLevel.Error
                    });
                }
            }
            else
            {
                speclityDB.CreateByUserID = specialtyBO.CreateByUserID;

                _dbSet.Add(speclityDB);
            }
            _context.SaveChanges();

            BO.Log log = new BO.Log();

            using (LogRepository lg = new LogRepository(_context))
            {
                log.requestId   = "3";
                log.responseId  = "3";
                log.machinename = Utility.MachineName();
                //log.ipaddress = Utility.GetIpaddress().ToString();
                log.ipaddress  = "190.2.12.104";
                log.country    = "YY";
                log.userId     = 2;
                log.requestUrl = "www.ost.in";
                log.IsDeleted  = false;

                lg.Save(log);
            }



            var res = Convert <BO.Specialty, Specialty>(speclityDB);
            return((object)res);
        }