mirror of
https://github.com/rickbarrette/redmine_qbo_vehicles.git
synced 2026-02-13 09:34:00 -05:00
Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| f649d4e902 | |||
| 2db17f3675 | |||
| d37933fe82 | |||
| 3efc545f0a | |||
| adcc116841 | |||
| 8bb98d2408 | |||
| 88b0ffcd6b |
42
README.md
42
README.md
@@ -1,53 +1,55 @@
|
|||||||
# Redmine QuickBooks Online Vehicles
|
# Redmine QuickBooks Online Vehicles
|
||||||
|
|
||||||
A redmine plugin to compliment the Redmine QuickBooks Online Vehicles plug in.
|
A Redmine plugin to complement the [Redmine QuickBooks Online](https://github.com/rickbarrette/redmine_qbo) plugin.
|
||||||
|
|
||||||
The goal of this project is to allow add vehicle tracking for customer vehicles.
|
The goal of this project is to enable vehicle tracking for customer vehicles within Redmine.
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
* **Redmine:** 6.1+
|
||||||
|
* **Parent Plugin:** [Redmine QuickBooks Online](https://github.com/rickbarrette/redmine_qbo)
|
||||||
|
|
||||||
## Compatibility
|
## Compatibility
|
||||||
|
|
||||||
| Redmine QBO Plugin Version | Redmine Version |
|
| Plugin Version | Redmine Version | Ruby Version |
|
||||||
| :--- | :--- |
|
| :--- | :--- | :--- |
|
||||||
| Version 2026.1.2+ | Redmine 6.1 |
|
| 2026.1.2+ | Redmine 6.1 | 3.2+ |
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
Adds vehicles that are owned by customers that can be attached to issues.
|
* **Asset Tracking:** Adds vehicles owned by customers to the system.
|
||||||
|
* **Issue Association:** Allows these vehicles to be attached directly to Redmine issues for better service tracking.
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
1. **Clone the plugin:**
|
1. **Clone the plugin:**
|
||||||
Clone this repo into your plugin folder and checkout a tagged version.
|
Navigate to your Redmine plugins directory and clone the repository.
|
||||||
```bash
|
```bash
|
||||||
cd path/to/redmine/plugins
|
cd path/to/redmine/plugins
|
||||||
git clone git@github.com:rickbarrette/redmine_qbo_vehicles.git
|
git clone git@github.com:rickbarrette/redmine_qbo_vehicles.git
|
||||||
cd redmine_qbo_vehicles
|
cd redmine_qbo_vehicles
|
||||||
git checkout <tag>
|
git checkout <tag>
|
||||||
```
|
```
|
||||||
|
*(Note: Replace `<tag>` with the specific release version you wish to use, or omit the last line to use the main branch.)*
|
||||||
|
|
||||||
2. **Install dependencies:** *Crucial for Redmine 6 / Rails 7 compatibility.*
|
2. **Install dependencies:**
|
||||||
|
*Crucial for Redmine 6 / Rails 7 compatibility.*
|
||||||
Bash
|
```bash
|
||||||
|
|
||||||
```
|
|
||||||
bundle install
|
bundle install
|
||||||
```
|
```
|
||||||
|
|
||||||
3. **Migrate your database:**
|
3. **Migrate your database:**
|
||||||
|
```bash
|
||||||
Bash
|
|
||||||
|
|
||||||
```
|
|
||||||
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
|
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
|
||||||
```
|
```
|
||||||
|
|
||||||
4. **Restart Redmine:** You must restart your Redmine server instance for the plugin and hooks to load.
|
4. **Restart Redmine:**
|
||||||
|
You must restart your Redmine server instance (e.g., Puma, Passenger, Unicorn) for the plugin and hooks to load correctly.
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
Simply add vehicles to customers via Customer Profile
|
1. **Add a Vehicle:** Navigate to a Customer Profile. You will see a new option to add vehicles to that customer.
|
||||||
|
2. **Link to Issue:** Once a vehicle is added to a customer, it can be selected and attached to an Issue relevant to that customer.
|
||||||
Once a customer is attached to the customer, they can be attached to an issue.
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|||||||
@@ -72,6 +72,16 @@ class Vehicle < ActiveRecord::Base
|
|||||||
self.name = to_s
|
self.name = to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# reurns all invoices for this vehicle
|
||||||
|
def invoices
|
||||||
|
self.issues.flat_map(&:invoices).uniq.compact
|
||||||
|
end
|
||||||
|
|
||||||
|
# returns all estimates for this vehicle
|
||||||
|
def estimates
|
||||||
|
self.issues.flat_map(&:estimate).uniq.compact
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
# init method to pull JSON details from NHTSA
|
# init method to pull JSON details from NHTSA
|
||||||
|
|||||||
@@ -10,9 +10,5 @@
|
|||||||
|
|
||||||
<div class="vehicle_notes attribute">
|
<div class="vehicle_notes attribute">
|
||||||
<div class="label"><span><%=t(:field_notes)%></span>:</div>
|
<div class="label"><span><%=t(:field_notes)%></span>:</div>
|
||||||
<div class="value">
|
<pre class="value" id="note-display" style="text-align: left; white-space: pre-wrap; font-family: inherit; "><%=notes%></pre>
|
||||||
<pre id="note-display" style="text-align: left; white-space: pre-wrap; font-family: inherit; ">
|
|
||||||
<%=notes%>
|
|
||||||
</pre>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
<% vehicles.each do |vehicle| %>
|
<% vehicles.each do |vehicle| %>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div>
|
<div>
|
||||||
|
<%= check_box_tag "vehicle_ids[]", vehicle.id, false, onchange: "updateLink()", data: { url: vehicle_path(vehicle).html_safe, text: vehicle.to_s }, class: "appointment" %>
|
||||||
<b><%= link_to "##{vehicle.id}", vehicle_path(vehicle) %> </b>
|
<b><%= link_to "##{vehicle.id}", vehicle_path(vehicle) %> </b>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,18 @@
|
|||||||
|
|
||||||
<%= render partial: 'vehicles/details', locals: {vehicle: @vehicle} %>
|
<%= render partial: 'vehicles/details', locals: {vehicle: @vehicle} %>
|
||||||
|
|
||||||
|
<div class="splitcontent">
|
||||||
|
<div class="splitcontentleft">
|
||||||
|
<h4><%=t(:estimates)%>:</h4>
|
||||||
|
<%= render partial: 'estimates/list', locals: {estimates: @vehicle.estimates} %>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="splitcontentleft">
|
||||||
|
<h4><%=t(:label_invoices)%>:</h4>
|
||||||
|
<%= render partial: 'invoices/list', locals: {invoices: @vehicle.invoices} %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<h3><%=@issues.open.count%> <%=t(:label_open_issues)%></h3>
|
<h3><%=@issues.open.count%> <%=t(:label_open_issues)%></h3>
|
||||||
|
|
||||||
<%= render partial: 'issues/list_simple', locals: {issues: @issues.open} %>
|
<%= render partial: 'issues/list_simple', locals: {issues: @issues.open} %>
|
||||||
|
|||||||
2
init.rb
2
init.rb
@@ -14,7 +14,7 @@ Redmine::Plugin.register :redmine_qbo_vehicles do
|
|||||||
name 'Redmine QBO Vehicles plugin'
|
name 'Redmine QBO Vehicles plugin'
|
||||||
author 'Rick Barrette'
|
author 'Rick Barrette'
|
||||||
description 'This is a plugin for Redmine to intergrate with the redmine_qbo plugin to provide vehicle data tracking'
|
description 'This is a plugin for Redmine to intergrate with the redmine_qbo plugin to provide vehicle data tracking'
|
||||||
version '2026.1.6'
|
version '2026.1.7'
|
||||||
url 'https://github.com/rickbarrette/redmine_qbo_vehicles'
|
url 'https://github.com/rickbarrette/redmine_qbo_vehicles'
|
||||||
author_url 'https://barrettefabrication.com'
|
author_url 'https://barrettefabrication.com'
|
||||||
requires_redmine version_or_higher: '6.1.0'
|
requires_redmine version_or_higher: '6.1.0'
|
||||||
|
|||||||
Reference in New Issue
Block a user