public HttpResponseMessage UpSertDOctor(HttpRequestMessage request, tbDoctor doc) { tbDoctor UpdatedEntity = new tbDoctor(); IPhoto iPhoto = new AzurePhotoUpload(); if (doc.ID > 0) { tbSpecialty specialty = specialityRepo.GetWithoutTracking().Where(s => s.ID == doc.SpecialityID).FirstOrDefault(); if (specialty != null) { doc.SpecialityID = doc.SpecialityID; doc.Specialty = specialty.Specialty; } tbDoctor doctor = doctorRepo.GetWithoutTracking().Where(d => d.ID == doc.ID).FirstOrDefault(); if (doc.Image == null) { doc.Photo = doctor.Photo; } else { doc.Photo = iPhoto.uploadPhoto(doc.Image); doc.Image = null; } UpdatedEntity = doctorRepo.UpdatewithObj(doc); } else { var result = (from t in dbContext.tbDoctors where t.Phone == doc.Phone select t).Any(); if (result == false) { tbSpecialty specialty = specialityRepo.Get().Where(s => s.ID == doc.SpecialityID).FirstOrDefault(); if (specialty != null) { doc.SpecialityID = doc.SpecialityID; doc.Specialty = specialty.Specialty; } doc.IsDeleted = false; doc.Accesstime = MyExtension.getLocalTime(DateTime.UtcNow); if (doc.Image != null) { doc.Photo = iPhoto.uploadPhoto(doc.Image); doc.Image = null; } UpdatedEntity = doctorRepo.AddWithGetObj(doc); } else { UpdatedEntity.SystemStatus = "E002"; // } } return(request.CreateResponse <tbDoctor>(HttpStatusCode.OK, UpdatedEntity)); }
public HttpResponseMessage UpsertDoctor(HttpRequestMessage request, DoctorSpecialityViewModel dsvm) { string result = null; tbDoctor UpdateEntity = null; if (dsvm.doctor.Image != null) { result = iPhoto.uploadPhoto(dsvm.doctor.Image); } else { result = null; } if (dsvm.doctor.ID > 0) { if (dsvm.doctor.Image == null) { tbDoctor doc = dbContext.tbDoctors.Where(a => a.IsDeleted != true && a.ID == dsvm.doctor.ID).FirstOrDefault(); dsvm.doctor.Photo = doc.Photo; } else { dsvm.doctor.Photo = result; } dsvm.doctor.Image = null; dsvm.doctor.SpecialityID = dsvm.specialty.ID; dsvm.doctor.Specialty = dsvm.specialty.Specialty; UpdateEntity = doctorRepo.UpdatewithObj(dsvm.doctor); } else { dsvm.doctor.Photo = result; dsvm.doctor.Image = null; dsvm.doctor.SpecialityID = dsvm.specialty.ID; dsvm.doctor.Specialty = dsvm.specialty.Specialty; dsvm.doctor.IsDeleted = false; dsvm.doctor.Accesstime = MyExtension.getLocalTime(DateTime.UtcNow); UpdateEntity = doctorRepo.AddWithGetObj(dsvm.doctor); } tbDoctorHospital dh = doctorhospitalRepo.Get().Where(a => a.DoctorID == UpdateEntity.ID).FirstOrDefault(); if (dh != null) { dh.DoctorID = UpdateEntity.ID; dh.HospitalID = dsvm.hospitalid; dh.HospitalName = dsvm.hospitalname; dh.DoctorName = UpdateEntity.Name; doctorhospitalRepo.UpdatewithObj(dh); } else { dh = new tbDoctorHospital(); dh.DoctorID = UpdateEntity.ID; dh.HospitalID = dsvm.hospitalid; dh.HospitalName = dsvm.hospitalname; dh.DoctorName = UpdateEntity.Name; dh.Accesstime = MyExtension.getLocalTime(DateTime.UtcNow); dh.IsDeleted = false; doctorhospitalRepo.AddWithGetObj(dh); } dsvm.doctor = UpdateEntity; return(request.CreateResponse <DoctorSpecialityViewModel>(HttpStatusCode.OK, dsvm)); }