public IHttpActionResult Delete(ContractViewModel pContract) { try { var rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { Contract oContractDB = db.Contract.Where(ct => ct.cntr_id == pContract.id).FirstOrDefault(); oContractDB.cntr_state = false; oContractDB.cntr_deleteDate = DateTime.Now; db.SaveChanges(); var contract_id = (int)pContract.id; this.deleteVehicleModelsToContract(contract_id); this.deleteVehiclesToContract(contract_id); rta.response = true; rta.message = "Se ha eliminado el contrato " + oContractDB.cntr_code + " de la base de datos"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(UserLoginViewModel pUser) { //TODO: Agregar usuario que hizo la acción try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oUserDB = db.Users.Where(us => us.usr_id == pUser.idUser).FirstOrDefault(); if (oUserDB != null) { //oUserDB.cli_document = ""; //oUserDB.cli_state = false; //oUserDB.cli_deleteDate = DateTime.Now; db.Users.Remove(oUserDB); db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado el usuario: " + oUserDB.usr_name + " de la base de datos"; return(Ok(rta)); } else { rta.response = false; rta.message = "No se encontró el usuario por lo tanto no se puede eliminar"; return(BadRequest(rta.message)); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(MovementViewModel pMovement) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var rta = new ResponseApiViewModel(); var oMovementDB = db.Movement.Where(mv => mv.m_id == pMovement.id).FirstOrDefault(); oMovementDB.m_state = false; oMovementDB.m_deleteDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado el movimiento: " + pMovement.name; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(UserLoginViewModel pUser) { //TODO: Agregar usuario que hizo la acción ResponseApiViewModel rta = new ResponseApiViewModel(); try { Users UserToInsert = UserLoginViewModel.PrepareUserToInsertDB(pUser); bool UserWasInserted = UserLoginViewModel.InsertIntoDB(UserToInsert); if (UserWasInserted) { rta.response = true; rta.message = "El usuario " + pUser.user + " fue insertado correctamente en la base de datos."; return(Ok(rta)); } else { rta.response = false; rta.message = "Ha ocurrido un error intentado insertar el usuario: " + pUser.user; return(BadRequest(rta.message)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult ValidateRoutineAndFrequency(int vehicleModel_id, int frequency_id) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var rta = new ResponseApiViewModel(); var oMaintenanceRoutine = db.maintenanceRoutine.Where(mr => mr.mr_state == true && mr.vm_id == vehicleModel_id && mr.fq_id == frequency_id).FirstOrDefault(); if (oMaintenanceRoutine != null) { rta.response = false; rta.message = "Ya existe una rutina para la línea seleccionada con ese kilometraje"; } else { rta.response = true; rta.message = ""; } return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(DealerViewModel pDealer) { //TODO: Agregar usuario que hizo la acción try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oDealerDB = db.Dealer.Where(dlr => dlr.deal_id == pDealer.id).FirstOrDefault(); if (oDealerDB != null) { oDealerDB.deal_document = ""; oDealerDB.deal_state = false; oDealerDB.deal_deleteDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado el concesionario: " + oDealerDB.deal_name + " de la base de datos"; return(Ok(rta)); } else { rta.response = false; rta.message = "No se encontró el concesionario: " + pDealer.document + " " + pDealer.name + " por lo tanto no se puede eliminar"; return(BadRequest(rta.message)); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(DealerViewModel pDealer) { //TODO: Agregar usuario que hizo la acción ResponseApiViewModel rta = new ResponseApiViewModel(); try { Dealer dealerToInsert = DealerViewModel.PrepareDealerToInsertDB(pDealer); bool dealerWasInserted = DealerViewModel.InsertIntoDB(dealerToInsert); if (dealerWasInserted) { rta.response = true; rta.message = "El concesionario " + pDealer.document + " fue insertado correctamente en la base de datos."; return(Ok(rta)); } else { rta.response = false; rta.message = "Ha ocurrido un error intentado insertar el dealente: " + pDealer.document; return(BadRequest(rta.message)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(ClientViewModel pClient) { //TODO: Agregar usuario que hizo la acción try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oClientDB = db.Client.Where(cl => cl.cli_id == pClient.id).FirstOrDefault(); if (oClientDB != null) { oClientDB.cli_document = ""; oClientDB.cli_state = false; oClientDB.cli_deleteDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado el cliente: " + oClientDB.cli_name + " de la base de datos"; return(Ok(rta)); } else { rta.response = false; rta.message = "No se encontró el cliente: " + pClient.document + " " + pClient.name + " por lo tanto no se puede eliminar"; return(BadRequest(rta.message)); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult ValidatePaymentVsConsumedQuota(int pClient_id, double paymentValue) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var financialInformation = db.FinancialInformationByClient.Where(fi => fi.ficl_state == true && fi.cli_id == pClient_id).FirstOrDefault(); var rta = new ResponseApiViewModel(); decimal consumedQuotaRounded = Convert.ToDecimal(string.Format("{0:F2}", financialInformation.ficl_consumedQuota)); decimal paymentRounded = Convert.ToDecimal(string.Format("{0:F2}", paymentValue)); if (paymentRounded > consumedQuotaRounded) { rta.response = false; rta.message = "El pago no puede superar el valor del cupo consumido"; } else { rta.response = true; rta.message = "El pago que va a generar es válido"; } return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(ClientViewModel pClient) { //TODO: Agregar usuario que hizo la acción ResponseApiViewModel rta = new ResponseApiViewModel(); try { Client ClientToInsert = ClientViewModel.PrepareCLientToInsertDB(pClient); bool ClientWasInserted = ClientViewModel.InsertIntoDB(ClientToInsert); if (ClientWasInserted) { rta.response = true; rta.message = "El cliente " + pClient.document + " fue insertado correctamente en la base de datos."; return(Ok(rta)); } else { rta.response = false; rta.message = "Ha ocurrido un error intentado insertar el cliente: " + pClient.document; return(BadRequest(rta.message)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(VehicleViewModel pVehicle) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var rta = new ResponseApiViewModel(); var oVehicleToDelete = db.Vehicle.Where(vh => vh.veh_id == pVehicle.id).FirstOrDefault(); oVehicleToDelete.veh_licensePlate = ""; oVehicleToDelete.veh_chasisCode = ""; oVehicleToDelete.veh_state = false; oVehicleToDelete.veh_deleteDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado el vehículo: " + oVehicleToDelete.veh_licensePlate + " de la base de datos"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public ResponseApiViewModel SetPricesByContract(PricesByContractViewModel pricesByContract) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { ResponseApiViewModel rta = new ResponseApiViewModel(); string transactionType = ""; int contract_id = (int)pricesByContract.contract.id; var lsOldPrices = db.PricesByContract.Where(pbc => pbc.cntr_id == pricesByContract.contract.id).ToList(); IEnumerable <MaintenanceItemViewModel> lsNewItems = from lsItems in pricesByContract.lsMaintenanceItems where !lsOldPrices.Any(itm => itm.mi_id == lsItems.id) select lsItems; if (lsOldPrices.Count > 0) { foreach (var oldPrice in lsOldPrices) { var newPrice = pricesByContract.lsMaintenanceItems.Find(it => it.id == oldPrice.mi_id); if (oldPrice.mi_referencePrice != newPrice.referencePrice) { transactionType = "UPDATE"; PricesByContract priceByContract = db.PricesByContract.Where(pbc => pbc.pbc_id == oldPrice.pbc_id).FirstOrDefault(); this.setDataPricesByContract(contract_id, (int)oldPrice.mi_id, (float)newPrice.referencePrice, transactionType, ref priceByContract); db.SaveChanges(); } foreach (var item in lsNewItems) { PricesByContract priceByContract = new PricesByContract(); this.setDataPricesByContract((int)pricesByContract.contract.id, (int)item.id, (float)item.referencePrice, "INSERT", ref priceByContract); db.PricesByContract.Add(priceByContract); db.SaveChanges(); } } } else { transactionType = "INSERT"; foreach (var item in pricesByContract.lsMaintenanceItems) { PricesByContract priceByContract = new PricesByContract(); this.setDataPricesByContract(contract_id, (int)item.id, (float)item.referencePrice, transactionType, ref priceByContract); db.PricesByContract.Add(priceByContract); db.SaveChanges(); } } rta.response = true; rta.message = "Se han asignado los precios del contrato: " + pricesByContract.contract.code; return(rta); } } catch (Exception ex) { return(null); } }
public IHttpActionResult Update(BranchViewModel pBranch) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oBranchDB = db.branch.Where(bra => bra.bra_id == pBranch.id).FirstOrDefault(); oBranchDB.bra_name = pBranch.name; oBranchDB.bra_phone = pBranch.phone; oBranchDB.bra_cellphone = pBranch.cellphone; oBranchDB.bra_adress = pBranch.address; oBranchDB.cty_id = (pBranch.city != null) ? pBranch.city.id : null; if (pBranch.Client_id != 0) { oBranchDB.cli_id = pBranch.Client_id; } if (pBranch.Dealer_id != 0) { oBranchDB.deal_id = pBranch.Dealer_id; } db.SaveChanges(); rta.response = true; rta.message = "Se ha actualizado la sucursal: " + oBranchDB.bra_name; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(ClientViewModel pClient) { //TODO: Agregar usuario que hizo la acción try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oClientDB = db.Client.Where(cl => cl.cli_id == pClient.id || cl.cli_document == pClient.document) .FirstOrDefault(); if (oClientDB != null) { if (pClient.document.Trim() == "") { throw new Exception("El documento del cliente no es válido"); } long numberOfDocument; bool documentIsValid = long.TryParse(pClient.document, out numberOfDocument); if (!documentIsValid) { throw new Exception("El documento del cliente no es válido, intente ingresarlo sin dígito de verificación, sin puntos ni comas."); } if (pClient.name.Trim() == "") { throw new Exception("El nombre del cliente es obligatorio, no se puede insertar a la base de datos sin esta información"); } oClientDB.cli_document = pClient.document; oClientDB.cli_name = pClient.name.ToUpper(); oClientDB.cli_phone = pClient.phone; oClientDB.cli_cellphone = pClient.cellphone; oClientDB.cli_adress = pClient.address.ToUpper(); oClientDB.cli_website = (pClient.website != null) ? pClient.website.ToUpper() : null; oClientDB.cty_id = (pClient.city != null) ? pClient.city.id : null; oClientDB.cli_updateDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "Se ha actualizado el cliente: " + pClient.document + " - " + pClient.name; return(Ok(rta)); } else { rta.response = false; rta.message = "No se encontró el cliente: " + pClient.document + " - " + pClient.name + " en la base de datos, por favor rectifique los datos"; return(BadRequest(rta.message)); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(DealerViewModel pDealer) { //TODO: Agregar usuario que hizo la acción try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oDealerDB = db.Dealer.Where(dlr => dlr.deal_id == pDealer.id || dlr.deal_document == pDealer.document) .FirstOrDefault(); if (oDealerDB != null) { if (pDealer.document.Trim() == "") { throw new Exception("El documento del concesionario no es válido"); } long numberOfDocument; bool documentIsValid = long.TryParse(pDealer.document, out numberOfDocument); if (!documentIsValid) { throw new Exception("El documento del concesionario no es válido, intente ingresarlo sin dígito de verificación, sin puntos ni comas."); } if (pDealer.name.Trim() == "") { throw new Exception("El nombre del concesionario es obligatorio, no se puede insertar a la base de datos sin esta información"); } oDealerDB.deal_document = pDealer.document; oDealerDB.deal_name = pDealer.name.ToUpper(); oDealerDB.deal_updateDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "Se ha actualizado el concesionario: " + pDealer.document + " - " + pDealer.name; return(Ok(rta)); } else { rta.response = false; rta.message = "No se encontró el concesionario: " + pDealer.document + " - " + pDealer.name + " en la base de datos, por favor rectifique los datos"; return(BadRequest(rta.message)); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(UserLoginViewModel pUser) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oUserDB = db.Users.Where(us => us.usr_id == pUser.idUser || us.usr_name == pUser.user) .FirstOrDefault(); if (oUserDB != null) { if (pUser.user.Trim() == "") { throw new Exception("El name del usuario no es válido"); } if (pUser.password.Trim() == "") { throw new Exception("El password del usuario no es válido"); } if (pUser.group == 0) { throw new Exception("El usuario debe pertenecer a un grupo"); } oUserDB.usr_name = pUser.user; oUserDB.usr_password = pUser.password; oUserDB.grp_id = pUser.group; db.SaveChanges(); rta.response = true; rta.message = "Se ha actualizado el usuario: " + pUser.user; return(Ok(rta)); } else { rta.response = false; rta.message = "No se encontró el usuario: " + pUser.user + " en la base de datos, por favor rectifique los datos"; return(BadRequest(rta.message)); } } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(ContactViewModel pContact) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oContactDB = db.Contact.Where(cnt => cnt.cnt_id == pContact.id).FirstOrDefault(); oContactDB.cnt_name = pContact.name; oContactDB.cnt_lastName = pContact.lastname; oContactDB.cnt_phone = pContact.phone; oContactDB.cnt_cellPhone = pContact.cellphone; oContactDB.cnt_email = pContact.email; oContactDB.cnt_adress = pContact.address; if (pContact.jobTitle != null) { var jobId = ContactViewModel.validateJobTitleId(pContact.jobTitle.description); if (jobId != 0) { oContactDB.jtcl_id = jobId; } } oContactDB.cty_id = (pContact.city != null) ? pContact.city.id : null; oContactDB.bra_id = (pContact.branch != null) ? pContact.branch.id : null; if (pContact.Client_id != 0) { oContactDB.cli_id = pContact.Client_id; } if (pContact.Dealer_id != 0) { oContactDB.deal_id = pContact.Dealer_id; } db.SaveChanges(); rta.response = true; rta.message = "Se ha actualizado el contacto: " + oContactDB.cnt_name + " " + oContactDB.cnt_lastName; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(ContactViewModel pContact) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oContactDB = db.Contact.Where(cnt => cnt.cnt_id == pContact.id).FirstOrDefault(); db.Contact.Remove(oContactDB); db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado el contacto: " + oContactDB.cnt_name + " " + oContactDB.cnt_lastName; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(ContractViewModel pContract) { try { var transactionType = "UPDATE"; var rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { Contract oContractDB = db.Contract.Where(ct => ct.cntr_id == pContract.id).FirstOrDefault(); this.setDataToContract(pContract, ref oContractDB, transactionType); db.SaveChanges(); var contract_id = (int)pContract.id; this.deleteVehicleModelsToContract(contract_id); this.deleteVehiclesToContract(contract_id); this.setVehicleModelsToContract(contract_id, pContract.lsVehicleModels); this.setVehicleToContract(contract_id, pContract.lsVehicles); PricesByContractViewModel pricesByContract = new PricesByContractViewModel(); pContract.id = contract_id; pricesByContract.contract = pContract; pricesByContract.lsMaintenanceItems = pContract.lsMaintenanceItems; var response = this.MaintenanceItemController.SetPricesByContract(pricesByContract); if (response.response) { rta.response = true; rta.message = "Se ha actualizado el contrato " + oContractDB.cntr_code; } return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(ContactViewModel pContact) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { Contact oContactDB = ContactViewModel.setDataContact(pContact); db.Contact.Add(oContactDB); db.SaveChanges(); rta.response = true; rta.message = "Contacto insertado correctamente a la bd y es asociado al cliente: [" + pContact.Client_id + "] ó al concesionario: [" + pContact.Dealer_id + "]"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(BranchViewModel pBranch) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { branch oBranchDB = BranchViewModel.setDataBranch(pBranch); db.branch.Add(oBranchDB); db.SaveChanges(); rta.response = true; rta.message = "Sucursal insertada correctamente a la bd y es asociada al cliente: [" + pBranch.Client_id + "] ó al concesionario: [" + pBranch.Dealer_id + "]"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(MaintenanceRoutineViewModel pRoutine) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oRoutineDb = db.maintenanceRoutine.Where(mr => mr.mr_id == pRoutine.id).FirstOrDefault(); oRoutineDb.mr_state = false; oRoutineDb.mr_deleteDate = DateTime.Now; db.SaveChanges(); var rta = new ResponseApiViewModel(); rta.response = true; rta.message = "Se ha eliminado de la base de datos la rutina: " + pRoutine.name; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(BranchViewModel pBranch) { try { ResponseApiViewModel rta = new ResponseApiViewModel(); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var oBranchDB = db.branch.Where(bra => bra.bra_id == pBranch.id).FirstOrDefault(); db.branch.Remove(oBranchDB); db.SaveChanges(); rta.response = true; rta.message = "Se ha eliminado la sucursal " + oBranchDB.bra_name; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(VehicleViewModel pVehicle) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var rta = new ResponseApiViewModel(); var oVehicleDB = db.Vehicle.Where(vh => vh.veh_id == pVehicle.id).FirstOrDefault(); if (pVehicle.licensePlate.Trim() == "") { throw new Exception("El campo placa no puede ser vacío"); } var oOtherVehicle = db.Vehicle.Where(vh => vh.veh_licensePlate == pVehicle.licensePlate && vh.veh_id != pVehicle.id).FirstOrDefault(); if (oOtherVehicle != null) { throw new Exception("La placa con la cual intenta actualizar el vehículo, ya se encuentra almacenada en la base de datos"); } oVehicleDB.veh_licensePlate = pVehicle.licensePlate; oVehicleDB.veh_chasisCode = pVehicle.chasisCode; oVehicleDB.vm_id = (pVehicle.vehicleModel != null) ? pVehicle.vehicleModel.id : null; oVehicleDB.veh_year = pVehicle.year; oVehicleDB.veh_mileage = pVehicle.mileage; oVehicleDB.vs_id = (pVehicle.vehicleState != null) ? pVehicle.vehicleState.id : null; oVehicleDB.veh_updateDate = DateTime.Now; db.SaveChanges(); rta.response = true; rta.message = "El vehículo: " + pVehicle.licensePlate + " ha sido actualizado correctamente en la base de datos"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(VehicleViewModel pVehicle) { try { var rta = new ResponseApiViewModel(); Vehicle oVehicleDB = VehicleViewModel.setDataToVehicle(pVehicle); rta.response = VehicleViewModel.InsertIntoDB(oVehicleDB); if (rta.response) { rta.message = "El vehículo con placas: " + pVehicle.licensePlate + " fue almacenado correctamente en la base de datos"; return(Ok(rta)); } else { return(BadRequest("Ocurrió un error al intertar almacenar el vehículo en la base de datos")); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Update(MovementViewModel pMovement) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var transactionType = "UPDATE"; var rta = new ResponseApiViewModel(); var oMovementDB = db.Movement.Where(mv => mv.m_id == pMovement.id).FirstOrDefault(); this.setDataMovement(pMovement, transactionType, ref oMovementDB); db.SaveChanges(); rta.response = true; rta.message = "Se ha actualizado el movimiento: " + pMovement.name; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(ContractViewModel pContract) { try { var transactionType = "INSERT"; var rta = new ResponseApiViewModel(); Contract oContractDB = new Contract(); this.setDataToContract(pContract, ref oContractDB, transactionType); using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { db.Contract.Add(oContractDB); db.SaveChanges(); var contract_id = db.Contract.Where(ctr => oContractDB.cntr_code == ctr.cntr_code).FirstOrDefault().cntr_id; this.setVehicleModelsToContract(contract_id, pContract.lsVehicleModels); this.setVehicleToContract(contract_id, pContract.lsVehicles); PricesByContractViewModel pricesByContract = new PricesByContractViewModel(); pContract.id = contract_id; pricesByContract.contract = pContract; pricesByContract.lsMaintenanceItems = pContract.lsMaintenanceItems; var response = this.MaintenanceItemController.SetPricesByContract(pricesByContract); if (response.response) { rta.response = true; rta.message = "Se ha insertado de manera correcta el contrato " + oContractDB.cntr_code; } return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Delete(MaintenanceItemViewModel pItem) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { ResponseApiViewModel rta = new ResponseApiViewModel(); var oItemDB = db.MaintenanceItem.Where(it => it.mi_id == pItem.id).FirstOrDefault(); oItemDB.mi_state = false; oItemDB.mi_deleteDate = DateTime.Now; db.SaveChanges(); MaintenanceItemViewModel.DeleteMaintenanceItemOfVehicleTypesAndModels((int)pItem.id); rta.response = true; rta.message = "Se ha eliminado el artículo de mantenimiento: " + pItem.name + " de la base de datos"; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult Insert(MovementViewModel pMovement) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var transactionType = "INSERT"; var rta = new ResponseApiViewModel(); var oMovementDB = new Movement(); this.setDataMovement(pMovement, transactionType, ref oMovementDB); db.Movement.Add(oMovementDB); db.SaveChanges(); rta.response = true; rta.message = "Se ha insertado el movimiento: " + pMovement.name; return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public IHttpActionResult ProcessTransaction(TransactionViewModel transaction) { try { using (DB_FleetServiceEntities db = new DB_FleetServiceEntities()) { var rta = new ResponseApiViewModel(); var consecutive = 0; decimal valueWithoutDscount = Convert.ToDecimal(string.Format("{0:F2}", transaction.valueWithoutDiscount)); decimal discountValue = Convert.ToDecimal(string.Format("{0:F2}", transaction.discountValue)); decimal taxesValue = Convert.ToDecimal(string.Format("{0:F2}", transaction.taxesValue)); decimal valueWithDiscountWithoutTaxes = Convert.ToDecimal(string.Format("{0:F2}", transaction.valueWithDiscountWithoutTaxes)); decimal valueTRX = Convert.ToDecimal(string.Format("{0:F2}", transaction.value)); consecutive = db.STRPRC_PROCESS_TRANSACTION_V2( transaction.client.id, transaction.movement.id, valueWithoutDscount, discountValue, valueWithDiscountWithoutTaxes, taxesValue, valueTRX, (transaction.transactionState != null) ? transaction.transactionState.id : null, transaction.usu_id ); if (consecutive > 0) { var trx_tmp = db.transactions.Where(trx => trx.cli_id == transaction.client.id && trx.m_id == transaction.movement.id) .OrderByDescending(trx => trx.trx_registrationDate).FirstOrDefault(); if (trx_tmp != null) { var trx_id = trx_tmp.trx_id; transaction.id = trx_id; rta.response = true; rta.message = "Se ha procesado la: " + transaction.movement.name.ToLower() + " correctamente"; if (transaction.headerDetails != null) { transactionDetail trxDetail = new transactionDetail(); trxDetail.trx_id = trx_id; trxDetail.trx_relation_id = (transaction.headerDetails.relatedTransaction != null) ? transaction.headerDetails.relatedTransaction.id : null; if (transaction.headerDetails.vehicle != null) { VehicleController vehController = new VehicleController(); vehController.Update(transaction.headerDetails.vehicle); } trxDetail.veh_id = (transaction.headerDetails.vehicle != null) ? transaction.headerDetails.vehicle.id : null; trxDetail.deal_id = (transaction.headerDetails.dealer != null) ? transaction.headerDetails.dealer.id : null; trxDetail.bra_id = (transaction.headerDetails.branch != null) ? transaction.headerDetails.branch.id : null; trxDetail.mr_id = (transaction.headerDetails.maintenanceRoutine != null) ? transaction.headerDetails.maintenanceRoutine.id : null; trxDetail.cntr_id = (transaction.headerDetails.contract != null) ? transaction.headerDetails.contract.id : null; if (transaction.movement.id == (int)EnumMovement.APROBACION_ORDEN_DE_TRABAJO) { var trxRelated = db.transactions.Where(tr => tr.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelated.trxst_id = (int)EnumTransactionState.APROBADA; var trxRelatedDetail = db.transactionDetail.Where(trx => trx.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelatedDetail.usu_approbation = transaction.usu_id; trxRelatedDetail.trx_approbationDate = DateTime.Now; } if (transaction.movement.id == (int)EnumMovement.CANCELACION_ORDEN_DE_TRABAJO) { var trxRelated = db.transactions.Where(tr => tr.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelated.trxst_id = (int)EnumTransactionState.RECHAZADA; var trxRelatedDetail = db.transactionDetail.Where(trx => trx.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelatedDetail.usu_reject = transaction.usu_id; trxRelatedDetail.trx_rejectDate = DateTime.Now; } if (transaction.movement.id == (int)EnumMovement.FINALIZACION_ORDEN_DE_TRABAJO) { var trxRelated = db.transactions.Where(tr => tr.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelated.trxst_id = (int)EnumTransactionState.FINALIZADA; var trxRelatedDetail = db.transactionDetail.Where(trx => trx.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelatedDetail.usu_ending = transaction.usu_id; trxRelatedDetail.trx_endingDate = DateTime.Now; } if (transaction.movement.id == (int)EnumMovement.ANULACION_ORDEN_DE_TRABAJO) { var trxRelated = db.transactions.Where(tr => tr.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelated.trxst_id = (int)EnumTransactionState.ANULADA; var trxRelatedDetail = db.transactionDetail.Where(trx => trx.trx_id == trxDetail.trx_relation_id).FirstOrDefault(); trxRelatedDetail.usu_anulation = transaction.usu_id; trxRelatedDetail.trx_anulationDate = DateTime.Now; } db.transactionDetail.Add(trxDetail); db.SaveChanges(); } if (transaction.lsItems != null) { if (transaction.lsItems.Count > 0) { foreach (var item in transaction.lsItems) { var taxValue = (item.taxesValue != null) ? item.taxesValue : 0; transactionItems oItemDB = new transactionItems(); oItemDB.trx_id = trx_id; oItemDB.mi_id = item.id; oItemDB.mi_amount = item.amount; oItemDB.mi_referencePrice = item.referencePrice; oItemDB.mi_valueWithoutDiscount = item.valueWithoutDiscount; oItemDB.mi_discountValue = item.discountValue; oItemDB.mi_valueWithDiscountWithoutTaxes = item.valueWithDiscountWithoutTaxes; oItemDB.mi_totalPrice = item.valueWithDiscountWithoutTaxes + taxValue; oItemDB.mi_taxesValue = taxValue; db.transactionItems.Add(oItemDB); db.SaveChanges(); } } } if (transaction.lsObservations != null) { if (transaction.lsObservations.Count > 0) { foreach (var observation in transaction.lsObservations) { observationsByTransaction observationDb = new observationsByTransaction(); observationDb.trx_id = trx_id; observationDb.obstrx_description = observation.description; observationDb.usr_id = transaction.usu_id; observationDb.obstrx_registrationDate = DateTime.Now; db.observationsByTransaction.Add(observationDb); db.SaveChanges(); } } } } } return(Ok(rta)); } } catch (Exception ex) { return(BadRequest(ex.Message)); } }