mirror of
https://github.com/rickbarrette/redmine_qbo.git
synced 2025-11-09 01:14:23 -05:00
Added removal for deleted entery while syncing
Added Invoices & Estimates to QBO#Index
This commit is contained in:
@@ -19,9 +19,8 @@ class QboController < ApplicationController
|
|||||||
@qbo_customer_count = QboCustomer.count
|
@qbo_customer_count = QboCustomer.count
|
||||||
@qbo_item_count = QboItem.count
|
@qbo_item_count = QboItem.count
|
||||||
@qbo_employee_count = QboEmployee.count
|
@qbo_employee_count = QboEmployee.count
|
||||||
@selected_customer
|
@qbo_invoice_count = QboInvoice.count
|
||||||
@selected_item
|
@qbo_estimate_count = QboEstimate.count
|
||||||
@selected_employee
|
|
||||||
end
|
end
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -24,12 +24,24 @@ class QboCustomer < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.update_all
|
def self.update_all
|
||||||
|
|
||||||
|
service = get_base.service
|
||||||
|
|
||||||
# Update the customer table
|
# Update the customer table
|
||||||
get_base.service.all.each { |customer|
|
service.all.each { |customer|
|
||||||
qbo_customer = QboCustomer.find_or_create_by(id: customer.id)
|
qbo_customer = QboCustomer.find_or_create_by(id: customer.id)
|
||||||
qbo_customer.id = customer.id
|
qbo_customer.id = customer.id
|
||||||
qbo_customer.name = customer.display_name
|
qbo_customer.name = customer.display_name
|
||||||
qbo_customer.save!
|
qbo_customer.save!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#remove deleted customers
|
||||||
|
all.each { |customer|
|
||||||
|
begin
|
||||||
|
service.fetch_by_id(customer.id)
|
||||||
|
rescue
|
||||||
|
delete_all(id: customer.id)
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -19,12 +19,23 @@ class QboEmployee < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.update_all
|
def self.update_all
|
||||||
|
service = get_base.service
|
||||||
|
|
||||||
# Update the item table
|
# Update the item table
|
||||||
get_base.service.all.each { |employee|
|
service.all.each { |employee|
|
||||||
qbo_employee = QboEmployee.find_or_create_by(id: employee.id)
|
qbo_employee = QboEmployee.find_or_create_by(id: employee.id)
|
||||||
qbo_employee.name = employee.display_name
|
qbo_employee.name = employee.display_name
|
||||||
qbo_employee.id = employee.id
|
qbo_employee.id = employee.id
|
||||||
qbo_employee.save!
|
qbo_employee.save!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#remove deleted employees
|
||||||
|
all.each { |employee|
|
||||||
|
begin
|
||||||
|
service.fetch_by_id(employee.id)
|
||||||
|
rescue
|
||||||
|
delete_all(id: employee.id)
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -19,13 +19,24 @@ class QboEstimate < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.update_all
|
def self.update_all
|
||||||
|
service = get_base.service
|
||||||
|
|
||||||
# Update the item table
|
# Update the item table
|
||||||
get_base.service.all.each { |estimate|
|
service.all.each { |estimate|
|
||||||
qbo_estimate = QboEstimate.find_or_create_by(id: estimate.id)
|
qbo_estimate = QboEstimate.find_or_create_by(id: estimate.id)
|
||||||
qbo_estimate.doc_number = estimate.doc_number
|
qbo_estimate.doc_number = estimate.doc_number
|
||||||
qbo_estimate.id = estimate.id
|
qbo_estimate.id = estimate.id
|
||||||
qbo_estimate.save!
|
qbo_estimate.save!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#remove deleted estimates
|
||||||
|
all.each { |estimate|
|
||||||
|
begin
|
||||||
|
service.fetch_by_id(estimate.id)
|
||||||
|
rescue
|
||||||
|
delete_all(id: estimate.id)
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.update(id)
|
def self.update(id)
|
||||||
|
|||||||
@@ -19,13 +19,25 @@ class QboInvoice < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.update_all
|
def self.update_all
|
||||||
|
service = get_base.service
|
||||||
|
|
||||||
|
|
||||||
# Update the item table
|
# Update the item table
|
||||||
get_base.service.all.each { |invoice|
|
service.all.each { |invoice|
|
||||||
qbo_invoice = find_or_create_by(id: invoice.id)
|
qbo_invoice = find_or_create_by(id: invoice.id)
|
||||||
qbo_invoice.doc_number = invoice.doc_number
|
qbo_invoice.doc_number = invoice.doc_number
|
||||||
qbo_invoice.id = invoice.id
|
qbo_invoice.id = invoice.id
|
||||||
qbo_invoice.save!
|
qbo_invoice.save!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#remove deleted invoices
|
||||||
|
all.each { |invoice|
|
||||||
|
begin
|
||||||
|
service.fetch_by_id(invoice.id)
|
||||||
|
rescue
|
||||||
|
delete_all(id: invoice.id)
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.update(id)
|
def self.update(id)
|
||||||
|
|||||||
@@ -19,12 +19,23 @@ class QboItem < ActiveRecord::Base
|
|||||||
end
|
end
|
||||||
|
|
||||||
def self.update_all
|
def self.update_all
|
||||||
|
service = get_base.service
|
||||||
|
|
||||||
# Update the item table
|
# Update the item table
|
||||||
get_base.service.find_by(:type, "Service").each { |item|
|
service.find_by(:type, "Service").each { |item|
|
||||||
qbo_item = QboItem.find_or_create_by(id: item.id)
|
qbo_item = QboItem.find_or_create_by(id: item.id)
|
||||||
qbo_item.name = item.name
|
qbo_item.name = item.name
|
||||||
qbo_item.id = item.id
|
qbo_item.id = item.id
|
||||||
qbo_item.save!
|
qbo_item.save!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#remove deleted items
|
||||||
|
all.each { |item|
|
||||||
|
begin
|
||||||
|
service.fetch_by_id(item.id)
|
||||||
|
rescue
|
||||||
|
delete_all(id: item.id)
|
||||||
|
end
|
||||||
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -34,8 +34,21 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
|
|||||||
<br/>
|
<br/>
|
||||||
<%= f.select :qbo_employee_id, QboEmployee.all.pluck(:name, :id), :selected => @selected_employee, include_blank: true %>
|
<%= f.select :qbo_employee_id, QboEmployee.all.pluck(:name, :id), :selected => @selected_employee, include_blank: true %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
|
||||||
|
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<%= f.label "Invoice Count: "+@qbo_invoice_count.to_s %>
|
||||||
|
<br/>
|
||||||
|
<%=f.select :qbo_invoice_id, QboInvoice.all.pluck(:doc_number, :id).sort! {|x, y| y <=> x}, :selected => @selected_invoice, include_blank: true%>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<%= f.label "Estimate Count: "+@qbo_estimate_count.to_s %>
|
||||||
|
<br/>
|
||||||
|
<%=f.select :qbo_estimate_id, QboEstimate.all.pluck(:doc_number, :id).sort! {|x, y| y <=> x}, :selected => @selected_estimate, include_blank: true%>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<% end %>
|
||||||
<br/>
|
<br/>
|
||||||
<br/>
|
<br/>
|
||||||
<%= link_to "Sync", qbo_sync_path %>
|
<%= link_to "Sync", qbo_sync_path %>
|
||||||
|
|||||||
Reference in New Issue
Block a user