public PreClient GetPreClientBD(PreClientViewModel pPreClient) { try { using (BDRAEntities db = new BDRAEntities()) { var PreClientBD = new PreClient(); if ((pPreClient.email != null && pPreClient.email != "") && (pPreClient.cellPhone != null && pPreClient.cellPhone != "")) { PreClientBD = db.PreClient.Where(p => p.preCli_email == pPreClient.email && p.preCli_cellPhone == pPreClient.cellPhone).FirstOrDefault(); if (PreClientBD == null) { if (pPreClient.cellPhone != null && pPreClient.cellPhone != "") { PreClientBD = db.PreClient.Where(p => p.preCli_cellPhone == pPreClient.cellPhone).FirstOrDefault(); } else if (pPreClient.email != null && pPreClient.email != "") { PreClientBD = db.PreClient.Where(p => p.preCli_email == pPreClient.email).FirstOrDefault(); } } } //Se deben validar los casos excluyentes si viene el celular y no el coreo y viceversa else if (pPreClient.cellPhone != null && pPreClient.cellPhone != "") { PreClientBD = db.PreClient.Where(p => p.preCli_cellPhone == pPreClient.cellPhone).FirstOrDefault(); } else if (pPreClient.email != null && pPreClient.email != "") { PreClientBD = db.PreClient.Where(p => p.preCli_email == pPreClient.email).FirstOrDefault(); } if (PreClientBD != null) { return(PreClientBD); } else { return(null); } } } catch (Exception ex) { return(null); } }
public PreRequest GetTheLastPreRequestByPreClient(PreClient pPreClient) { try { using (BDRAEntities db = new BDRAEntities()) { var lastRequest = db.PreRequest.Where(p => p.preCli_id == pPreClient.preCli_id) .OrderByDescending(p => p.preReq_registrationDate) .FirstOrDefault(); return(lastRequest); } } catch (Exception) { return(null); } }
public bool CreatePreClientInBD(PreClient pPreClient) { try { PreClient oPreClientBd = new PreClient(); using (BDRAEntities db = new BDRAEntities()) { db.PreClient.Add(pPreClient); db.SaveChanges(); return(true); } } catch (Exception ex) { return(false); } }
public IHttpActionResult AddNewPreRequest(PreRequestViewModel pPreRequest) { try { this.objPreClientController = new PreClientController(); ResponseViewModel rta = new ResponseViewModel(); using (BDRAEntities db = new BDRAEntities()) { /* * Validamos si el PreCliente de la solicitud ya existe en la base de datos. */ PreClient PreClientBD = new PreClient(); PreClientBD = objPreClientController.GetPreClientBD(pPreRequest.preClient); if (PreClientBD == null) { PreClientBD = objPreClientController.SetDataToPreClient(pPreRequest.preClient, pPreRequest.user); var preClientCreated = objPreClientController.CreatePreClientInBD(PreClientBD); if (preClientCreated) { PreClientBD = objPreClientController.GetPreClientBD(pPreRequest.preClient); } } PreRequest oPreRequest = new PreRequest(); oPreRequest.preReq_registrationDate = DateTime.Now; oPreRequest.preCli_id = PreClientBD.preCli_id; oPreRequest.preReq_state = true; oPreRequest.usu_document = pPreRequest.user.id; if (pPreRequest.vehicleModel.id != null && pPreRequest.vehicleModel.id != 0) { oPreRequest.vehMdl_id = pPreRequest.vehicleModel.id; } else { var vechicleModel = VehicleModelController.SetDataToVehicleModel(pPreRequest.vehicleModel); var vehicleModelDB = VehicleModelController.CreateVehicleModelInDB(vechicleModel); oPreRequest.vehMdl_id = vehicleModelDB.id; } if (pPreRequest.stateRequest != null) { oPreRequest.sta_id = pPreRequest.stateRequest.id; } if (pPreRequest.firstCanal != null) { oPreRequest.firstCanal_id = pPreRequest.firstCanal.id; } if (pPreRequest.secondCanal != null) { oPreRequest.secondCanal_id = pPreRequest.secondCanal.id; } db.PreRequest.Add(oPreRequest); db.SaveChanges(); var lastRequest = GetTheLastPreRequestByPreClient(PreClientBD); if (pPreRequest.lsObservation[0].observation != "") { PreRequest_Observation observation = this.SetDataToObservation(lastRequest.preReq_id, pPreRequest.lsObservation[0].observation, pPreRequest.user.id); this.InsertObservationInDB(observation); } rta.response = true; rta.message = "Se ha creado la pre solicitud: " + lastRequest.preReq_id + " de cliente de persona natural"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public PreClient SetDataToPreClient(PreClientViewModel pPreClient, UserViewModel pUser) { try { PreClient oPreClient = new PreClient(); if (pPreClient.idPreClient != null) { oPreClient.preCli_id = (int)pPreClient.idPreClient; } if (pPreClient.id != null && pPreClient.id != "") { oPreClient.preCli_document = pPreClient.id; } else { oPreClient.preCli_document = null; } if (pPreClient.kindOfDocument != null) { oPreClient.kod_id = pPreClient.kindOfDocument.id; } else { oPreClient.kod_id = null; } if (pPreClient.name != null && pPreClient.name != "") { oPreClient.preCli_name = pPreClient.name; } else { oPreClient.preCli_name = null; } if (pPreClient.lastName != null && pPreClient.lastName != "") { oPreClient.preCli_lastName = pPreClient.lastName; } else { oPreClient.preCli_lastName = null; } if (pPreClient.phone != null && pPreClient.phone != "") { oPreClient.preCli_phone = pPreClient.phone; } else { oPreClient.preCli_phone = null; } if (pPreClient.cellPhone != null && pPreClient.cellPhone != "") { oPreClient.preCli_cellPhone = pPreClient.cellPhone; } else { oPreClient.preCli_cellPhone = null; } if (pPreClient.email != null && pPreClient.email != "") { oPreClient.preCli_email = pPreClient.email; } else { oPreClient.preCli_email = null; } if (pPreClient.city != null) { oPreClient.cty_id = pPreClient.city.id; } oPreClient.preCli_registrationDate = DateTime.Now; oPreClient.usu_document = pUser.id; oPreClient.preCli_state = true; return(oPreClient); } catch (Exception ex) { return(null); } }