Browse Source

Feb 17 [UPDT] : Updated 'dynamic_accounts_report'

pull/243/head
AjmalCybro 2 years ago
parent
commit
16fe2919cb
  1. 2
      dynamic_accounts_report/__manifest__.py
  2. 8
      dynamic_accounts_report/doc/RELEASE_NOTES.md
  3. 2
      dynamic_accounts_report/models/account_account_custom.py
  4. 1
      dynamic_accounts_report/report/general_ledger.py
  5. 6
      dynamic_accounts_report/static/src/js/ageing.js
  6. 1
      dynamic_accounts_report/static/src/js/daybook.js
  7. 1
      dynamic_accounts_report/static/src/js/partner_ledger.js
  8. 18
      dynamic_accounts_report/static/src/xml/general_ledger_view.xml
  9. 1
      dynamic_accounts_report/wizard/balance_sheet_config.py
  10. 2
      inventory_report_generator/README.rst
  11. 1
      inventory_report_generator/__init__.py
  12. 3
      inventory_report_generator/__manifest__.py
  13. 12
      inventory_report_generator/controllers/main.py
  14. 6
      inventory_report_generator/doc/RELEASE_NOTES.md
  15. 60
      inventory_report_generator/models/inventory_report.py
  16. 3
      inventory_report_generator/report/inventory_pdf_report.py
  17. 37
      inventory_report_generator/report/inventory_pdf_report.xml
  18. 263
      inventory_report_generator/static/description/index.html
  19. 14
      inventory_report_generator/static/src/css/inventory_report.css
  20. 127
      inventory_report_generator/static/src/xml/inventory_report_view.xml

2
dynamic_accounts_report/__manifest__.py

@ -22,7 +22,7 @@
{ {
'name': 'Dynamic Financial Reports V16', 'name': 'Dynamic Financial Reports V16',
'version': '16.0.1.0.1', 'version': '16.0.1.0.2',
'category': 'Accounting', 'category': 'Accounting',
'live_test_url': 'https://www.youtube.com/watch?v=gVQi9q9Rs-E&t=5s', 'live_test_url': 'https://www.youtube.com/watch?v=gVQi9q9Rs-E&t=5s',
'summary': """Dynamic Financial Reports with drill 'summary': """Dynamic Financial Reports with drill

8
dynamic_accounts_report/doc/RELEASE_NOTES.md

@ -5,8 +5,12 @@
#### ADD #### ADD
- Initial commit for Odoo 16 dynamic financial reports - Initial commit for Odoo 16 dynamic financial reports
#### 01.02.2023 #### 01.02.2023
#### Version 16.0.1.0.1 #### Version 16.0.1.0.1
#### UPDT #### UPDT
- css file updated - CSS file updated
#### 07.02.2023
#### Version 16.0.1.0.2
#### UPDT AND BUGFIX
- Report Bug Fix: Correct the currency used in the General Ledger

2
dynamic_accounts_report/models/account_account_custom.py

@ -52,7 +52,6 @@ class AccountAccountCustom(models.Model):
[('type', '=', 'account_type')]): [('type', '=', 'account_type')]):
for rec in record.account_ids: for rec in record.account_ids:
if rec.id == self._origin.id: if rec.id == self._origin.id:
print("function called")
record.write({"account_ids": [(3, rec.id)]}) record.write({"account_ids": [(3, rec.id)]})
if self.account_type.startswith("asset"): if self.account_type.startswith("asset"):
for record1 in self.env[ for record1 in self.env[
@ -64,7 +63,6 @@ class AccountAccountCustom(models.Model):
{"account_ids": [(4, self._origin.id)]}) {"account_ids": [(4, self._origin.id)]})
elif self.account_type.startswith( elif self.account_type.startswith(
"liability") or self.account_type == "equity": "liability") or self.account_type == "equity":
print('function_called...........')
for record1 in self.env[ for record1 in self.env[
'account.financial.report'].search( 'account.financial.report'].search(
[('type', '=', 'account_type')]): [('type', '=', 'account_type')]):

1
dynamic_accounts_report/report/general_ledger.py

@ -6,7 +6,6 @@ class GeneralLedger(models.AbstractModel):
@api.model @api.model
def _get_report_values(self, docids, data=None): def _get_report_values(self, docids, data=None):
if self.env.context.get('trial_pdf_report'): if self.env.context.get('trial_pdf_report'):
if data.get('report_data'): if data.get('report_data'):
data.update({'account_data': data.get('report_data')['report_lines'], data.update({'account_data': data.get('report_data')['report_lines'],

6
dynamic_accounts_report/static/src/js/ageing.js

@ -260,11 +260,9 @@ odoo.define('dynamic_accounts_report.ageing', function (require) {
var account_id = $(event.currentTarget).data('account-id'); var account_id = $(event.currentTarget).data('account-id');
var partner_id = $(event.currentTarget)[0].cells[0].innerText; var partner_id = $(event.currentTarget)[0].cells[0].innerText;
console.log("partner_id",partner_id)
var offset = 0; var offset = 0;
var td = $(event.currentTarget).next('tr').find('td'); var td = $(event.currentTarget).next('tr').find('td');
console.log("td",td.length)
if (td.length == 1) { if (td.length == 1) {
self._rpc({ self._rpc({
@ -274,8 +272,6 @@ odoo.define('dynamic_accounts_report.ageing', function (require) {
[self.wizard_id] [self.wizard_id]
], ],
}).then(function(data) { }).then(function(data) {
console.log(data)
_.each(data['report_lines'][0], function(rep_lines) { _.each(data['report_lines'][0], function(rep_lines) {
_.each(rep_lines['child_lines'], function(child_line) { _.each(rep_lines['child_lines'], function(child_line) {
@ -305,7 +301,6 @@ odoo.define('dynamic_accounts_report.ageing', function (require) {
}, },
view_acc_move: function(event) { view_acc_move: function(event) {
console.log("view_acc_move")
event.preventDefault(); event.preventDefault();
var self = this; var self = this;
var context = {}; var context = {};
@ -344,7 +339,6 @@ odoo.define('dynamic_accounts_report.ageing', function (require) {
apply_filter: function(event) { apply_filter: function(event) {
console.log("filter")
event.preventDefault(); event.preventDefault();
var self = this; var self = this;
self.initial_render = false; self.initial_render = false;

1
dynamic_accounts_report/static/src/js/daybook.js

@ -90,7 +90,6 @@ odoo.define('dynamic_partner_daybook.daybook', function (require) {
method: 'view_report', method: 'view_report',
args: [[this.wizard_id]], args: [[this.wizard_id]],
}).then(function(datas) { }).then(function(datas) {
console.log("data",datas)
_.each(datas['report_lines'], function(rep_lines) { _.each(datas['report_lines'], function(rep_lines) {
rep_lines.debit = self.format_currency(datas['currency'],rep_lines.debit); rep_lines.debit = self.format_currency(datas['currency'],rep_lines.debit);
rep_lines.credit = self.format_currency(datas['currency'],rep_lines.credit); rep_lines.credit = self.format_currency(datas['currency'],rep_lines.credit);

1
dynamic_accounts_report/static/src/js/partner_ledger.js

@ -381,7 +381,6 @@ odoo.define('dynamic_accounts_report.partner_ledger', function (require) {
var account_type_ids_text = []; var account_type_ids_text = [];
var span_res = document.getElementById("type_res") var span_res = document.getElementById("type_res")
var type_list = $(".type").select2('data') var type_list = $(".type").select2('data')
console.log(type_list)
for (var i = 0; i < type_list.length; i++) { for (var i = 0; i < type_list.length; i++) {
if(type_list[i].element[0].selected === true) if(type_list[i].element[0].selected === true)
{account_type_id.push(parseInt(type_list[i].id)) {account_type_id.push(parseInt(type_list[i].id))

18
dynamic_accounts_report/static/src/xml/general_ledger_view.xml

@ -415,7 +415,8 @@
<span>-</span> <span>-</span>
</t> </t>
<t t-else=""> <t t-else="">
<t t-esc="account_line.currency_code"/> <!-- <t t-esc="account_line.currency_code"/>-->
<t t-esc="currency_symbol"/>
<t t-esc="account_line.debit"/> <t t-esc="account_line.debit"/>
<!-- <t t-esc="Math.round(account_line.debit * Math.pow(10, 2)) / Math.pow(10, 2)"/>--> <!-- <t t-esc="Math.round(account_line.debit * Math.pow(10, 2)) / Math.pow(10, 2)"/>-->
</t> </t>
@ -425,7 +426,8 @@
<span>-</span> <span>-</span>
</t> </t>
<t t-else=""> <t t-else="">
<t t-esc="account_line.currency_code"/> <!-- <t t-esc="account_line.currency_code"/>-->
<t t-esc="currency_symbol"/>
<t t-esc="account_line.credit"/> <t t-esc="account_line.credit"/>
<!-- <t t-esc="Math.round(account_line.credit * Math.pow(10, 2)) / Math.pow(10, 2)"/>--> <!-- <t t-esc="Math.round(account_line.credit * Math.pow(10, 2)) / Math.pow(10, 2)"/>-->
</t> </t>
@ -437,7 +439,8 @@
<t t-else=""> <t t-else="">
<t t-set="t_balance" <t t-set="t_balance"
t-value="Math.round((t_balance+account_line.balance)* 100) / 100"/> t-value="Math.round((t_balance+account_line.balance)* 100) / 100"/>
<t t-esc="account_line.currency_code"/> <!-- <t t-esc="account_line.currency_code"/>-->
<t t-esc="currency_symbol"/>
<!-- <t t-esc="account_line.balance"/>--> <!-- <t t-esc="account_line.balance"/>-->
<t t-esc="t_balance" <t t-esc="t_balance"
t-options='{"widget": "float", "precision": 2}'/> t-options='{"widget": "float", "precision": 2}'/>
@ -453,7 +456,8 @@
<t t-else=""> <t t-else="">
<t t-esc="account_line.debit"/> <t t-esc="account_line.debit"/>
<!-- <t t-esc="Math.round(account_line.debit * Math.pow(10, 2)) / Math.pow(10, 2)"/>--> <!-- <t t-esc="Math.round(account_line.debit * Math.pow(10, 2)) / Math.pow(10, 2)"/>-->
<t t-esc="account_line.currency_code"/> <!-- <t t-esc="account_line.currency_code"/>-->
<t t-esc="currency_symbol"/>
</t> </t>
</td> </td>
<td t-att-style="style_right" class="amt"> <td t-att-style="style_right" class="amt">
@ -463,7 +467,8 @@
<t t-else=""> <t t-else="">
<t t-esc="account_line.credit"/> <t t-esc="account_line.credit"/>
<!-- <t t-esc="Math.round(account_line.credit * Math.pow(10, 2)) / Math.pow(10, 2)"/>--> <!-- <t t-esc="Math.round(account_line.credit * Math.pow(10, 2)) / Math.pow(10, 2)"/>-->
<t t-esc="account_line.currency_code"/> <!-- <t t-esc="account_line.currency_code"/>-->
<t t-esc="currency_symbol"/>
</t> </t>
</td> </td>
<td t-att-style="style_right" class="amt"> <td t-att-style="style_right" class="amt">
@ -477,7 +482,8 @@
t-options='{"widget": "float", "precision": 2}'/> t-options='{"widget": "float", "precision": 2}'/>
<!-- <t t-esc="account_line.balance"/>--> <!-- <t t-esc="account_line.balance"/>-->
<!-- <t t-esc="Math.round(account_line.balance * Math.pow(10, 2)) / Math.pow(10, 2)"/>--> <!-- <t t-esc="Math.round(account_line.balance * Math.pow(10, 2)) / Math.pow(10, 2)"/>-->
<t t-esc="account_line.currency_code"/> <!-- <t t-esc="account_line.currency_code"/>-->
<t t-esc="currency_symbol"/>
</t> </t>
</td> </td>
</t> </t>

1
dynamic_accounts_report/wizard/balance_sheet_config.py

@ -123,7 +123,6 @@ class BalanceSheet(models.TransientModel):
# states = [report.account_type_ids] # states = [report.account_type_ids]
"""end""" """end"""
print(report)
accounts = self.env['account.account'].search([ accounts = self.env['account.account'].search([
('account_type', 'in', ('account_type', 'in',
report.account_ids.mapped('account_type')) report.account_ids.mapped('account_type'))

2
inventory_report_generator/README.rst

@ -1,6 +1,6 @@
Inventory All In One Report Generator Inventory All In One Report Generator
===================================== =====================================
* Inventory All In One Dynamic Report For Odoo 15 community And Enterprise editions * Inventory All In One Dynamic Report For Odoo 16 community And Enterprise editions
Installation Installation
============ ============

1
inventory_report_generator/__init__.py

@ -18,7 +18,6 @@
# If not, see <http://www.gnu.org/licenses/>. # If not, see <http://www.gnu.org/licenses/>.
# #
############################################################################# #############################################################################
from . import models from . import models
from . import report from . import report
from . import controllers from . import controllers

3
inventory_report_generator/__manifest__.py

@ -12,7 +12,6 @@
# but WITHOUT ANY WARRANTY; without even the implied warranty of # but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details. # GNU AFFERO GENERAL PUBLIC LICENSE (AGPL v3) for more details.
#
# You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE # You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
# (AGPL v3) along with this program. # (AGPL v3) along with this program.
# If not, see <http://www.gnu.org/licenses/>. # If not, see <http://www.gnu.org/licenses/>.
@ -21,7 +20,7 @@
{ {
'name': 'Inventory All In One Report Generator', 'name': 'Inventory All In One Report Generator',
'version': '15.0.1.1.1', 'version': '16.0.1.1.2',
'summary': "Dynamic Inventory Report Generator", 'summary': "Dynamic Inventory Report Generator",
'description': "Dynamic Inventory Report Generator", 'description': "Dynamic Inventory Report Generator",
'category': 'Inventory', 'category': 'Inventory',

12
inventory_report_generator/controllers/main.py

@ -26,8 +26,10 @@ from odoo.tools import html_escape
class TBXLSXReportController(http.Controller): class TBXLSXReportController(http.Controller):
@http.route('/inventory_dynamic_xlsx_reports', type='http', auth='user', methods=['POST'], csrf=False) @http.route('/inventory_dynamic_xlsx_reports', type='http', auth='user',
def get_report_xlsx(self, model, options, output_format, report_data, report_name, dfr_data, **kw): methods=['POST'], csrf=False)
def get_report_xlsx(self, model, options, output_format, report_data,
report_name, dfr_data, **kw):
uid = request.session.uid uid = request.session.uid
report_obj = request.env[model].with_user(uid) report_obj = request.env[model].with_user(uid)
dfr_data = dfr_data dfr_data = dfr_data
@ -39,10 +41,12 @@ class TBXLSXReportController(http.Controller):
None, None,
headers=[ headers=[
('Content-Type', 'application/vnd.ms-excel'), ('Content-Type', 'application/vnd.ms-excel'),
('Content-Disposition', content_disposition(report_name + '.xlsx')) ('Content-Disposition',
content_disposition(report_name + '.xlsx'))
] ]
) )
report_obj.get_inventory_xlsx_report(options, response, report_data, dfr_data) report_obj.get_inventory_xlsx_report(options, response,
report_data, dfr_data)
response.set_cookie('fileToken', token) response.set_cookie('fileToken', token)
return response return response
except Exception as e: except Exception as e:

6
inventory_report_generator/doc/RELEASE_NOTES.md

@ -1,7 +1,7 @@
## Module <sale_report_generator> ## Module <inventory_report_generator>
#### 14.10.2022 #### 16.02.2023
#### Version 16.0.1.0.0 #### Version 16.0.1.1.2
#### ADD #### ADD
Initial Commit Initial Commit

60
inventory_report_generator/models/inventory_report.py

@ -44,7 +44,6 @@ class DynamicInventoryReport(models.Model):
@api.model @api.model
def inventory_report(self, option): def inventory_report(self, option):
# orders = self.env['purchase.order'].search([])
report_values = self.env['dynamic.inventory.report'].search( report_values = self.env['dynamic.inventory.report'].search(
[('id', '=', option[0])]) [('id', '=', option[0])])
data = { data = {
@ -89,7 +88,8 @@ class DynamicInventoryReport(models.Model):
return filters return filters
def get_filter_data(self, option): def get_filter_data(self, option):
r = self.env['dynamic.inventory.report'].search([('id', '=', option[0])]) r = self.env['dynamic.inventory.report'].search(
[('id', '=', option[0])])
default_filters = {} default_filters = {}
filter_dict = { filter_dict = {
@ -113,18 +113,19 @@ class DynamicInventoryReport(models.Model):
new_filter = None new_filter = None
if data.get('report_type') == 'report_by_transfers': if data.get('report_type') == 'report_by_transfers':
query = ''' query = '''select l.name,l.partner_id,l.scheduled_date,l.origin,
select l.name,l.partner_id,l.scheduled_date,l.origin,l.company_id,l.state,res_partner.name as partner,res_company.name as company,l.id as id l.company_id,l.state,res_partner.name as partner,
from stock_picking as l res_company.name as company,l.id as id from stock_picking as l
left join res_partner on l.partner_id = res_partner.id left join res_partner on l.partner_id = res_partner.id left join
left join res_company on l.company_id = res_company.id res_company on l.company_id = res_company.id'''
'''
term = 'Where ' term = 'Where '
if data.get('date_from'): if data.get('date_from'):
query += "Where l.scheduled_date >= '%s' " % data.get('date_from') query += " Where l.scheduled_date >= '%s' " % data.get(
'date_from')
term = 'AND ' term = 'AND '
if data.get('date_to'): if data.get('date_to'):
query += term + "l.scheduled_date <= '%s' " % data.get('date_to') query += term + " l.scheduled_date <= '%s' " % data.get(
'date_to')
self._cr.execute(query) self._cr.execute(query)
report_by_order = self._cr.dictfetchall() report_by_order = self._cr.dictfetchall()
report_sub_lines.append(report_by_order) report_sub_lines.append(report_by_order)
@ -138,21 +139,21 @@ class DynamicInventoryReport(models.Model):
''' '''
term = ' Where ' term = ' Where '
if data.get('date_from'): if data.get('date_from'):
query += "Where l.create_date >= '%s' " % data.get('date_from') query += " Where prop_date.create_date >= '%s' " % data.get('date_from')
term = ' AND ' term = ' AND '
if data.get('date_to'): if data.get('date_to'):
query += term + "l.create_date <= '%s' " % data.get('date_to') query += term + " prop_date.create_date <= '%s' " % data.get('date_to')
self._cr.execute(query) self._cr.execute(query)
report_by_order_details = self._cr.dictfetchall() report_by_order_details = self._cr.dictfetchall()
report_sub_lines.append(report_by_order_details) report_sub_lines.append(report_by_order_details)
elif data.get('report_type') == 'report_by_warehouse': elif data.get('report_type') == 'report_by_warehouse':
query = ''' query = '''select l.name,l.company_id,l.view_location_id,
select l.name,l.company_id,l.view_location_id,l.reception_route_id as route,l.write_date,res_company.name as company,stock_location.name as location,stock_location_route.name as route l.reception_route_id as route,l.write_date,res_company.name as
from stock_warehouse as l company,stock_location.name as location,stock_route.name as
left join res_company on res_company.id = l.company_id route from stock_warehouse as l left join res_company on
left join stock_location on stock_location.id = l.view_location_id res_company.id = l.company_id left join stock_location on
left join stock_location_route on stock_location_route.id = l.reception_route_id stock_location.id = l.view_location_id left join stock_route on
''' stock_route.id = l.reception_route_id'''
term = ' Where ' term = ' Where '
if data.get('date_from'): if data.get('date_from'):
query += " Where l.write_date >= '%s' " % data.get('date_from') query += " Where l.write_date >= '%s' " % data.get('date_from')
@ -163,11 +164,10 @@ class DynamicInventoryReport(models.Model):
report_by_product = self._cr.dictfetchall() report_by_product = self._cr.dictfetchall()
report_sub_lines.append(report_by_product) report_sub_lines.append(report_by_product)
elif data.get('report_type') == 'report_by_location': elif data.get('report_type') == 'report_by_location':
query = ''' query = '''select l.complete_name,l.usage as location_type,
select l.complete_name,l.usage as location_type,l.create_date,l.company_id,res_company.name as company l.create_date,l.company_id,res_company.name as company from
from stock_location as l stock_location as l left join res_company on res_company.id =
left join res_company on res_company.id = l.company_id l.company_id'''
'''
term = ' Where ' term = ' Where '
if data.get('date_from'): if data.get('date_from'):
query += " Where l.create_date >= '%s' " % data.get('date_from') query += " Where l.create_date >= '%s' " % data.get('date_from')
@ -312,10 +312,6 @@ class DynamicInventoryReport(models.Model):
sheet.write('C7', 'Create Date', heading) sheet.write('C7', 'Create Date', heading)
sheet.write('D7', 'Product Cost', heading) sheet.write('D7', 'Product Cost', heading)
sheet.write('E7', 'On Hand Qty', heading) sheet.write('E7', 'On Hand Qty', heading)
# sheet.write('F7', 'Product Name', heading)
# sheet.write('G7', 'Price unit', heading)
# sheet.write('H7', 'Qty', heading)
# sheet.write('I7', 'Price Total', heading)
lst = [] lst = []
for rec in report_data_main[0]: for rec in report_data_main[0]:
@ -338,14 +334,10 @@ class DynamicInventoryReport(models.Model):
two_lst = [] two_lst = []
row += 1 row += 1
sheet.write(row, col, rec_data['category'], txt_l) sheet.write(row, col, rec_data['category'], txt_l)
sheet.write(row, col + 1, rec_data['name'], txt_l) sheet.write(row, col + 1, rec_data['name']['en_US'], txt_l)
sheet.write(row, col + 2, rec_data['create_date'], txt_l) sheet.write(row, col + 2, rec_data['create_date'], txt_l)
sheet.write(row, col + 3, rec_data['value_float'], txt_l) sheet.write(row, col + 3, rec_data['value_float'], txt_l)
sheet.write(row, col + 4, rec_data['quantity'], txt_l) sheet.write(row, col + 4, rec_data['quantity'], txt_l)
# sheet.write(row, col + 5, rec_data['product'], txt_l)
# sheet.write(row, col + 6, rec_data['price_unit'], txt_l)
# sheet.write(row, col + 7, rec_data['sum'], txt_l)
# sheet.write(row, col + 8, rec_data['amount_total'], txt_l)
if filters.get('report_type') == 'report_by_warehouse': if filters.get('report_type') == 'report_by_warehouse':
sheet.merge_range('B5:D5', 'Report Type: ' + sheet.merge_range('B5:D5', 'Report Type: ' +
@ -376,7 +368,7 @@ class DynamicInventoryReport(models.Model):
sheet.write(row, col + 1, rec_data['write_date'], txt_l) sheet.write(row, col + 1, rec_data['write_date'], txt_l)
sheet.write(row, col + 2, rec_data['company'], txt_l) sheet.write(row, col + 2, rec_data['company'], txt_l)
sheet.write(row, col + 3, rec_data['location'], txt_l) sheet.write(row, col + 3, rec_data['location'], txt_l)
sheet.write(row, col + 4, rec_data['route'], txt_l) sheet.write(row, col + 4, rec_data['route']['en_US'], txt_l)
if filters.get('report_type') == 'report_by_location': if filters.get('report_type') == 'report_by_location':

3
inventory_report_generator/report/inventory_pdf_report.py

@ -30,7 +30,8 @@ class PurchaseOrder(models.AbstractModel):
if self.env.context.get('inventory_pdf_report'): if self.env.context.get('inventory_pdf_report'):
if data.get('report_data'): if data.get('report_data'):
data.update({'report_main_line_data': data.get('report_data')['report_lines'], data.update({'report_main_line_data': data.get('report_data')[
'report_lines'],
'Filters': data.get('report_data')['filters'], 'Filters': data.get('report_data')['filters'],
'company': self.env.company, 'company': self.env.company,
}) })

37
inventory_report_generator/report/inventory_pdf_report.xml

@ -1,4 +1,13 @@
<odoo> <odoo>
<record id="action_report_inventory_all_in_one" model="ir.actions.report">
<field name="name">Inventory All In One Report</field>
<field name="model">dynamic.inventory.report</field>
<field name="report_type">qweb-pdf</field>
<field name="report_name">inventory_report_generator.inventory_pdf_report</field>
<field name="report_file">inventory_report_generator.inventory_pdf_report</field>
<field name="binding_type">report</field>
</record>
<template id="inventory_pdf_report"> <template id="inventory_pdf_report">
<t t-call="web.html_container"> <t t-call="web.html_container">
<t t-call="web.internal_layout"> <t t-call="web.internal_layout">
@ -45,17 +54,21 @@
</div> </div>
</div> </div>
<br></br> <br></br>
<table class="table table-sm table-reports"> <table class="table table-sm table-reports">
<thead> <thead>
<tr> <tr>
<th class="text-left">Reference</th> <th class="text-left">Reference</th>
<th colspan="6" class="text-center">Scheduled Date</th> <th colspan="6" class="text-center">Scheduled
<th colspan="6" class="text-right">Source Document</th> Date
</th>
<th colspan="6" class="text-right">Source
Document
</th>
<th colspan="6" class="text-right">Company</th> <th colspan="6" class="text-right">Company</th>
<th colspan="6" class="text-center">Delivery Address</th> <th colspan="6" class="text-center">Delivery
Address
</th>
<th colspan="6" class="text-left">State</th> <th colspan="6" class="text-left">State</th>
</tr> </tr>
</thead> </thead>
@ -82,7 +95,6 @@
</td> </td>
</tr> </tr>
</t> </t>
@ -130,8 +142,10 @@
<th>Category</th> <th>Category</th>
<th colspan="6">Product Name</th> <th colspan="6">Product Name</th>
<th colspan="6" class="text-right">Create Date</th> <th colspan="6" class="text-right">Create Date</th>
<th colspan="6" class="text-center">Product Cost</th> <th colspan="6" class="text-center">Product Cost
<th colspan="6" class="text-center">On Hand Qty</th> </th>
<th colspan="6" class="text-center">On Hand Qty
</th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@ -292,12 +306,5 @@
<br></br> <br></br>
</div> </div>
</template> </template>
<record id="action_report_inventory_all_in_one" model="ir.actions.report">
<field name="name">Inventory All In One Report</field>
<field name="model">dynamic.inventory.report</field>
<field name="report_type">qweb-pdf</field>
<field name="report_name">inventory_report_generator.inventory_pdf_report</field>
<field name="report_file">inventory_report_generator.inventory_pdf_report</field>
</record>
</odoo> </odoo>

263
inventory_report_generator/static/description/index.html

@ -2,7 +2,8 @@
<!-- TITLE BAR --> <!-- TITLE BAR -->
<div <div
style="border-bottom: 1px solid #875A7B; padding: 15px; display: flex; justify-content: space-between; align-items: center;"> style="border-bottom: 1px solid #875A7B; padding: 15px; display: flex; justify-content: space-between; align-items: center;">
<img src="assets/misc/cybrosys-logo.png" width="42" height="42" style="width: 42px; height: 42px;" /> <img src="assets/misc/cybrosys-logo.png" width="42" height="42"
style="width: 42px; height: 42px;"/>
<div> <div>
<div style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;" <div style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;"
class="mr-2"> class="mr-2">
@ -21,8 +22,10 @@
<!-- END OF TITLE BAR --> <!-- END OF TITLE BAR -->
<!-- APP HERO --> <!-- APP HERO -->
<h1 style="color: #FFFFFF; font-weight: bolder; font-size: 50px; text-align: center; margin-top: 50px;">Inventory All In One Report Generator</h1> <h1 style="color: #FFFFFF; font-weight: bolder; font-size: 50px; text-align: center; margin-top: 50px;">
<p style="color:#FFFFFF; padding: 8px 15px; text-align: center; font-size: 24px;">Dynamic Inventory Report Generator</p> Inventory All In One Report Generator</h1>
<p style="color:#FFFFFF; padding: 8px 15px; text-align: center; font-size: 24px;">
Dynamic Inventory Report Generator</p>
<!-- END OF APP HERO --> <!-- END OF APP HERO -->
<img src="assets/screenshots/hero.gif" <img src="assets/screenshots/hero.gif"
style="width: 75%; height: auto; position: absolute; margin-left: auto; margin-right: auto; top: 45%; left: 12%; right: auto;"/> style="width: 75%; height: auto; position: absolute; margin-left: auto; margin-right: auto; top: 45%; left: 12%; right: auto;"/>
@ -30,12 +33,15 @@
</div> </div>
<!-- NAVIGATION SECTION --> <!-- NAVIGATION SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px; margin-top: 300px;"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px; margin-top: 300px;">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/compass.png"/> <img src="assets/misc/compass.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Explore This <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Explore This
Module</h2> Module</h2>
</div> </div>
<div class="row my-4" style="font-family: 'Montserrat', sans-serif;"> <div class="row my-4" style="font-family: 'Montserrat', sans-serif;">
@ -88,52 +94,70 @@
<!-- END OF NAVIGATION SECTION --> <!-- END OF NAVIGATION SECTION -->
<!-- OVERVIEW SECTION --> <!-- OVERVIEW SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="overview"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"
id="overview">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/pie-chart.png"/> <img src="assets/misc/pie-chart.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Overview <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Overview
</h2> </h2>
</div> </div>
<div class="row" style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;"> <div class="row"
style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;">
<div class="col-sm-12 py-4"> <div class="col-sm-12 py-4">
This app is useful to provide different Inventory Reports to do analysis. It shows the Inventory analysis of a company in many aspects such as by order,order details,salesman and so on. It can be filtered out based on different date ranges too. This app is useful to provide different Inventory Reports to do
analysis. It shows the Inventory analysis of a company in many aspects
such as by order,order details,salesman and so on. It can be filtered
out based on different date ranges too.
</div> </div>
</div> </div>
<!-- END OF OVERVIEW SECTION --> <!-- END OF OVERVIEW SECTION -->
<!-- FEATURES SECTION --> <!-- FEATURES SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="features"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"
id="features">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/features.png"/> <img src="assets/misc/features.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Features <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Features
</h2> </h2>
</div> </div>
<div class="row" style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;"> <div class="row"
style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;">
<div class="col-sm-12 col-md-6"> <div class="col-sm-12 col-md-6">
<div class="d-flex align-items-center" style="margin-top: 40px; margin-bottom: 40px"> <div class="d-flex align-items-center"
style="margin-top: 40px; margin-bottom: 40px">
<img src="assets/misc/check-box.png" class="mr-2"/> <img src="assets/misc/check-box.png" class="mr-2"/>
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Community & Enterprise Support</span> <span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Community & Enterprise Support</span>
</div> </div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px"> <div class="d-flex align-items-center"
style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2"/> <img src="assets/misc/check-box.png" class="mr-2"/>
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> <span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">
Filtering based on different aspects</span> Filtering based on different aspects</span>
</div> </div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px"> <div class="d-flex align-items-center"
style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2"/> <img src="assets/misc/check-box.png" class="mr-2"/>
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> <span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">
Drilled on approach</span> Drilled on approach</span>
</div> </div>
</div> </div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px"> <div class="d-flex align-items-center"
style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2"/> <img src="assets/misc/check-box.png" class="mr-2"/>
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Print Reports in both PDF and XLSX format.</span> <span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Print Reports in both PDF and XLSX format.</span>
</div> </div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px"> <div class="d-flex align-items-center"
style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2"/> <img src="assets/misc/check-box.png" class="mr-2"/>
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> <span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">
Generates Report for a specific date range.</span> Generates Report for a specific date range.</span>
@ -143,29 +167,36 @@ Generates Report for a specific date range.</span>
<!-- END OF FEATURES SECTION --> <!-- END OF FEATURES SECTION -->
<!-- SCREENSHOTS SECTION --> <!-- SCREENSHOTS SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="screenshots"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;"
id="screenshots">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/pictures.png"/> <img src="assets/misc/pictures.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Screenshots <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Screenshots
</h2> </h2>
</div> </div>
<div class="row"> <div class="row">
<div class="col-sm-12"> <div class="col-sm-12">
<div style="display: block; margin: 30px auto;"> <div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">All In One Inventory Report Menu</h3> <h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">
All In One Inventory Report Menu</h3>
<img src="assets/screenshots/1.png" class="img-thumbnail"> <img src="assets/screenshots/1.png" class="img-thumbnail">
</div> </div>
<div style="display: block; margin: 30px auto;"> <div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Inventory Report Based On Categories</h3> <h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">
Inventory Report Based On Categories</h3>
<img src="assets/screenshots/2.png" class="img-thumbnail"> <img src="assets/screenshots/2.png" class="img-thumbnail">
</div> </div>
<div style="display: block; margin: 30px auto;"> <div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Inventory Report Based On Product</h3> <h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">
Inventory Report Based On Product</h3>
<img src="assets/screenshots/3.png" class="img-thumbnail"> <img src="assets/screenshots/3.png" class="img-thumbnail">
</div> </div>
@ -174,12 +205,15 @@ Generates Report for a specific date range.</span>
<!-- END OF SCREENSHOTS SECTION --> <!-- END OF SCREENSHOTS SECTION -->
<!-- RELATED PRODUCTS --> <!-- RELATED PRODUCTS -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/categories.png"/> <img src="assets/misc/categories.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Related <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Related
Products Products
</h2> </h2>
</div> </div>
@ -189,52 +223,71 @@ Generates Report for a specific date range.</span>
<!-- The slideshow --> <!-- The slideshow -->
<div class="carousel-inner" style="padding: 30px;"> <div class="carousel-inner" style="padding: 30px;">
<div class="carousel-item" style="min-height: 198.656px;"> <div class="carousel-item" style="min-height: 198.656px;">
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left"> <div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16"
<a href="https://apps.odoo.com/apps/modules/15.0/dynamic_accounts_report/" target="_blank"> style="float:left">
<a href="https://apps.odoo.com/apps/modules/15.0/dynamic_accounts_report/"
target="_blank">
<div style="border-radius:10px"> <div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" <img class="img img-responsive center-block"
style="border-radius: 0px;"
src="assets/modules/1.png"> src="assets/modules/1.png">
</div> </div>
</a> </a>
</div> </div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left"> <div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16"
<a href="https://apps.odoo.com/apps/modules/15.0/custom_gantt_view/" target="_blank"> style="float:left">
<a href="https://apps.odoo.com/apps/modules/15.0/custom_gantt_view/"
target="_blank">
<div style="border-radius:10px"> <div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" <img class="img img-responsive center-block"
style="border-radius: 0px;"
src="assets/modules/2.png"> src="assets/modules/2.png">
</div> </div>
</a> </a>
</div> </div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left"> <div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16"
<a href="https://apps.odoo.com/apps/modules/15.0/project_custom_gantt/" target="_blank"> style="float:left">
<a href="https://apps.odoo.com/apps/modules/15.0/project_custom_gantt/"
target="_blank">
<div style="border-radius:10px"> <div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" <img class="img img-responsive center-block"
style="border-radius: 0px;"
src="assets/modules/3.png"> src="assets/modules/3.png">
</div> </div>
</a> </a>
</div> </div>
</div> </div>
<div class="carousel-item active" style="min-height: 198.656px;"> <div class="carousel-item active"
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left"> style="min-height: 198.656px;">
<a href="https://apps.odoo.com/apps/modules/15.0/account_reports_xlsx/" target="_blank"> <div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16"
style="float:left">
<a href="https://apps.odoo.com/apps/modules/15.0/account_reports_xlsx/"
target="_blank">
<div style="border-radius:10px"> <div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" <img class="img img-responsive center-block"
style="border-radius: 0px;"
src="assets/modules/4.png"> src="assets/modules/4.png">
</div> </div>
</a> </a>
</div> </div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left"> <div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16"
<a href="https://apps.odoo.com/apps/modules/15.0/base_accounting_kit/" target="_blank"> style="float:left">
<a href="https://apps.odoo.com/apps/modules/15.0/base_accounting_kit/"
target="_blank">
<div style="border-radius:10px"> <div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" <img class="img img-responsive center-block"
style="border-radius: 0px;"
src="assets/modules/5.png"> src="assets/modules/5.png">
</div> </div>
</a> </a>
</div> </div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left"> <div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16"
<a href="https://apps.odoo.com/apps/modules/15.0/hr_payroll_community/" target="_blank"> style="float:left">
<a href="https://apps.odoo.com/apps/modules/15.0/hr_payroll_community/"
target="_blank">
<div style="border-radius:10px"> <div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" <img class="img img-responsive center-block"
style="border-radius: 0px;"
src="assets/modules/6.png"> src="assets/modules/6.png">
</div> </div>
</a> </a>
@ -242,10 +295,15 @@ Generates Report for a specific date range.</span>
</div> </div>
</div> </div>
<!-- Left and right controls --> <!-- Left and right controls -->
<a class="carousel-control-prev" href="#demo1" data-slide="prev" style="width:35px; color:#000"> <span <a class="carousel-control-prev" href="#demo1" data-slide="prev"
class="carousel-control-prev-icon"><i class="fa fa-chevron-left" style="font-size:24px"></i></span> style="width:35px; color:#000"> <span
</a> <a class="carousel-control-next" href="#demo1" data-slide="next" style="width:35px; color:#000"> class="carousel-control-prev-icon"><i
<span class="carousel-control-next-icon"><i class="fa fa-chevron-right" class="fa fa-chevron-left"
style="font-size:24px"></i></span>
</a> <a class="carousel-control-next" href="#demo1"
data-slide="next" style="width:35px; color:#000">
<span class="carousel-control-next-icon"><i
class="fa fa-chevron-right"
style="font-size:24px"></i></span> style="font-size:24px"></i></span>
</a> </a>
</div> </div>
@ -255,12 +313,15 @@ Generates Report for a specific date range.</span>
<!-- OUR SERVICES --> <!-- OUR SERVICES -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/star.png"/> <img src="assets/misc/star.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Our Services <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Our Services
</h2> </h2>
</div> </div>
@ -269,9 +330,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #1dd1a1 !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #1dd1a1 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/cogs.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/cogs.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Customization</h6> Customization</h6>
</div> </div>
@ -279,9 +342,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #ff6b6b !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #ff6b6b !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/wrench.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/wrench.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Implementation</h6> Implementation</h6>
</div> </div>
@ -289,9 +354,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #6462CD !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #6462CD !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/lifebuoy.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/lifebuoy.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Support</h6> Support</h6>
</div> </div>
@ -300,9 +367,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #ffa801 !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #ffa801 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/user.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/user.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Hire Hire
Odoo Odoo
Developer</h6> Developer</h6>
@ -311,9 +380,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #54a0ff !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #54a0ff !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/puzzle.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/puzzle.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Integration</h6> Integration</h6>
</div> </div>
@ -321,9 +392,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #6d7680 !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #6d7680 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/update.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/update.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Migration</h6> Migration</h6>
</div> </div>
@ -332,9 +405,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #786fa6 !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #786fa6 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/consultation.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/consultation.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Consultancy</h6> Consultancy</h6>
</div> </div>
@ -342,9 +417,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #f8a5c2 !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #f8a5c2 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/training.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/training.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Implementation</h6> Implementation</h6>
</div> </div>
@ -352,9 +429,11 @@ Generates Report for a specific date range.</span>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4"> <div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3" <div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #e6be26 !important; border-radius: 15px !important; height: 80px; width: 80px;"> style="background-color: #e6be26 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/license.png" class="img-responsive" height="48px" width="48px"> <img src="assets/icons/license.png" class="img-responsive"
height="48px" width="48px">
</div> </div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> <h6 class="text-center"
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo Odoo
Licensing Consultancy</h6> Licensing Consultancy</h6>
</div> </div>
@ -366,12 +445,15 @@ Generates Report for a specific date range.</span>
<!-- OUR INDUSTRIES --> <!-- OUR INDUSTRIES -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/corporate.png"/> <img src="assets/misc/corporate.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Our <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Our
Industries Industries
</h2> </h2>
</div> </div>
@ -381,7 +463,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/trading-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/trading-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Trading Trading
</h5> </h5>
@ -395,7 +478,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/pos-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/pos-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
POS POS
</h5> </h5>
@ -409,7 +493,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/education-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/education-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Education Education
</h5> </h5>
@ -422,7 +507,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/manufacturing-black.png" class="img-responsive mb-3" height="48px" <img src="assets/icons/manufacturing-black.png"
class="img-responsive mb-3" height="48px"
width="48px"> width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Manufacturing Manufacturing
@ -436,7 +522,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/ecom-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/ecom-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
E-commerce &amp; Website E-commerce &amp; Website
</h5> </h5>
@ -450,7 +537,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/service-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/service-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Service Management Service Management
</h5> </h5>
@ -463,7 +551,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/restaurant-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/restaurant-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Restaurant Restaurant
</h5> </h5>
@ -476,7 +565,8 @@ Generates Report for a specific date range.</span>
<div class="col-lg-3"> <div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center" <div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;"> style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/hotel-black.png" class="img-responsive mb-3" height="48px" width="48px"> <img src="assets/icons/hotel-black.png"
class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;"> <h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Hotel Management Hotel Management
</h5> </h5>
@ -492,12 +582,15 @@ Generates Report for a specific date range.</span>
<!-- END OF END OF OUR INDUSTRIES --> <!-- END OF END OF OUR INDUSTRIES -->
<!-- SUPPORT --> <!-- SUPPORT -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;"> <div class="d-flex align-items-center"
style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2" <div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/customer-support.png"/> <img src="assets/misc/customer-support.png"/>
</div> </div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Support <h2 class="mt-2"
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">
Support
</h2> </h2>
</div> </div>
<div class="container mt-5"> <div class="container mt-5">
@ -506,11 +599,13 @@ Generates Report for a specific date range.</span>
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> <div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;">
<div class="mr-4" <div class="mr-4"
style="background-color: #714B67; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;"> style="background-color: #714B67; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;">
<img src="assets/misc/support.png" height="48" width="48" style="width: 42px; height: 42px;" /> <img src="assets/misc/support.png" height="48" width="48"
style="width: 42px; height: 42px;"/>
</div> </div>
<div> <div>
<h4>Need Help?</h4> <h4>Need Help?</h4>
<p style="line-height: 100%;">Got questions or need help? Get in touch.</p> <p style="line-height: 100%;">Got questions or need help?
Get in touch.</p>
<a href="mailto:odoo@cybrosys.com"> <a href="mailto:odoo@cybrosys.com">
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> <p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;">
odoo@cybrosys.com</p> odoo@cybrosys.com</p>
@ -522,13 +617,15 @@ Generates Report for a specific date range.</span>
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> <div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;">
<div class="mr-4" <div class="mr-4"
style="background-color: #2AC44D; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;"> style="background-color: #2AC44D; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;">
<img src="assets/misc/whatsapp.png" height="52" width="52" style="width: 52px; height: 52px;" /> <img src="assets/misc/whatsapp.png" height="52" width="52"
style="width: 52px; height: 52px;"/>
</div> </div>
<div> <div>
<h4>WhatsApp</h4> <h4>WhatsApp</h4>
<p style="line-height: 100%;">Say hi to us on WhatsApp!</p> <p style="line-height: 100%;">Say hi to us on WhatsApp!</p>
<a href="https://api.whatsapp.com/send?phone=918606827707"> <a href="https://api.whatsapp.com/send?phone=918606827707">
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;">+91 86068 <p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;">
+91 86068
27707</p> 27707</p>
</a> </a>
</div> </div>

14
inventory_report_generator/static/src/css/inventory_report.css

@ -13,7 +13,7 @@ a.dropdown-toggle.report-type {
margin: 10px; margin: 10px;
} }
.search-Result-Selection { .search {
border: 2px solid #ccc; border: 2px solid #ccc;
width: 257px; width: 257px;
margin-right: 10px; margin-right: 10px;
@ -44,15 +44,3 @@ tr.table_pr_head th {
font-size: 18px; font-size: 18px;
text-align: center; text-align: center;
} }
ul.dropdown-menu.show {
height: 40px;
background-color: #eeeeee;
width: 200px;
}
ul.dropdown-menu.show li {
margin-left: 10px;
}
ul.dropdown-menu.show a{
color: #221c1c;
}

127
inventory_report_generator/static/src/xml/inventory_report_view.xml

@ -18,7 +18,8 @@
<t t-name="InventoryFilterView"> <t t-name="InventoryFilterView">
<div style="display: flex; margin-right: 10px; margin-left: 10px;justify-content:space-between"> <div style="display: flex; margin-right: 10px; margin-left: 10px;justify-content:space-between">
<div class="sub_container_left" style="width: 285px; margin-left: 36px;"> <div class="sub_container_left"
style="width: 285px; margin-left: 36px;">
<div class="row report_print"> <div class="row report_print">
<button type="button" class="btn btn-primary" id="pdf" <button type="button" class="btn btn-primary" id="pdf"
style="top: 0px; height: 42px; color: white; background-color: #7c7bad; border-color: #7c7bad; width: 127px; margin-right:4px;"> style="top: 0px; height: 42px; color: white; background-color: #7c7bad; border-color: #7c7bad; width: 127px; margin-right:4px;">
@ -32,21 +33,23 @@
</div> </div>
<div style="margin-bottom: 40px;display: flex; margin-right:10px;"> <div style="margin-bottom: 40px;display: flex; margin-right:10px;">
<div class="dropdown"> <div class="dropdown">
<button class="btn btn-secondary dropdown-toggle time_range_pr" <button class="btn btn-secondary dropdown-toggle time_range_pr"
type="button" id="date_chose" type="button" id="date_chose"
data-bs-toggle="dropdown" aria-expanded="false" style="height:33px;width:150px;align-items:center;display:flex;"> data-bs-toggle="dropdown" aria-expanded="false"
style="height:33px;width:150px;align-items:center;display:flex;">
<span class="fa fa-calendar" title="Dates" role="img" <span class="fa fa-calendar" title="Dates" role="img"
aria-label="Dates" style="display:block;margin-right:5px;"/> aria-label="Dates"
style="display:block;margin-right:5px;"/>
Date Range Date Range
</button> </button>
<div class="dropdown-menu" role="menu" <div class="dropdown-menu" role="menu"
aria-labelledby="date_chose"> aria-labelledby="date_chose">
<div class="form-group" style="margin-left:10px; margin-right:10px;"> <div class="form-group"
<label class="" for="date_from">Start Date :</label> style="margin-left:10px; margin-right:10px;">
<label class="" for="date_from">Start Date :
</label>
<div class="input-group date" id="date_from" <div class="input-group date" id="date_from"
data-target-input="nearest"> data-target-input="nearest">
<input type="text" name="date_from" <input type="text" name="date_from"
@ -56,7 +59,8 @@
<div class="input-group-append" <div class="input-group-append"
data-target="#date_from" data-target="#date_from"
data-toggle="datetimepicker"> data-toggle="datetimepicker">
<span class="input-group-text" style="justify-content:center;padding-bottom: 10px;padding-top: 5px;"> <span class="input-group-text"
style="justify-content:center;padding-bottom: 10px;padding-top: 5px;">
<span class="fa fa-calendar" role="img" <span class="fa fa-calendar" role="img"
aria-label="Calendar"/> aria-label="Calendar"/>
</span> </span>
@ -74,7 +78,8 @@
<div class="input-group-append" <div class="input-group-append"
data-target="#date_to" data-target="#date_to"
data-toggle="datetimepicker"> data-toggle="datetimepicker">
<span class="input-group-text" style="justify-content:center;padding-bottom: 10px;padding-top: 5px;"> <span class="input-group-text"
style="justify-content:center;padding-bottom: 10px;padding-top: 5px;">
<span class="fa fa-calendar" role="img" <span class="fa fa-calendar" role="img"
aria-label="Calendar"/> aria-label="Calendar"/>
</span> </span>
@ -87,8 +92,9 @@
</div> </div>
<div class="search-Result-Selection" style="display:flex;"> <div class="search-Result-Selection search" style="display:flex;">
<div class="dropdown" style="border=2px;width:100%;margin-right:10px;border-radius:5px;"> <div class="dropdown"
style="border=2px;width:100%;margin-right:10px;border-radius:5px;">
<a class="btn btn-secondary dropdown-togglereport-type" <a class="btn btn-secondary dropdown-togglereport-type"
href="#" role="button" id="dropdownMenuLink" href="#" role="button" id="dropdownMenuLink"
data-bs-toggle="dropdown" aria-expanded="false"> data-bs-toggle="dropdown" aria-expanded="false">
@ -96,25 +102,22 @@
<span class="low_case">Report Type :</span> <span class="low_case">Report Type :</span>
</a> </a>
<select id="selection" class="dropdown-menu report_type" <select id="selection"
aria-labelledby="dropdownMenuLink" class="dropdown-menu report_type"
name="states[]"> name="states[]">
<div role="separator" class="dropdown-divider"/> <div role="separator" class="dropdown-divider"/>
<option value="report_by_order" selected="">Report <option value="report_by_transfers" selected="">
By Report By Transfers
Order</option> </option>
<option value="report_by_order_detail">Report By
Order
Detail</option>
<option value="report_by_product">Report By
Product</option>
<option value="report_by_categories">Report By <option value="report_by_categories">Report By
Categories</option> Categories
<option value="report_by_purchase_representative"> </option>
Report <option value="report_by_warehouse">Report By
By Purchase Representative</option> Warehouse
<option value="report_by_state">Report By </option>
State</option> <option value="report_by_location">Report By
Location
</option>
</select> </select>
<span id="report_res"/> <span id="report_res"/>
</div> </div>
@ -150,25 +153,32 @@
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<!-- <t t-if="order['report_type']='report_by_order'">--> <t t-foreach="report_lines"
<t t-foreach="report_lines" t-as="dynamic_inventory_report"> t-as="dynamic_inventory_report">
<tr style="border: 1.5px solid black;" class="pr-line" <tr style="border: 1.5px solid black;"
class="pr-line"
t-att-data-account-id="dynamic_inventory_report['id']" t-att-data-account-id="dynamic_inventory_report['id']"
t-attf-data-target=".a{{dynamic_inventory_report['id']}}"> t-attf-data-target=".a{{dynamic_inventory_report['id']}}">
<td> <td>
<t t-if="dynamic_inventory_report['id']"> <t t-if="dynamic_inventory_report['id']">
<div class="dropdown dropdown-toggle"> <div class="dropdown dropdown-toggle">
<a data-toggle="dropdown" href="#" id="table_toggle_btn" data-bs-toggle="dropdown" aria-expanded="false"> <a data-toggle="dropdown" href="#"
id="table_toggle_btn"
data-bs-toggle="dropdown"
aria-expanded="false">
<span class="caret"/> <span class="caret"/>
<span> <span>
<t t-esc="dynamic_inventory_report['name']"/> <t t-esc="dynamic_inventory_report['name']"/>
</span> </span>
</a> </a>
<ul class="dropdown-menu" role="menu" aria-labelledby="table_toggle_btn"> <ul class="dropdown-menu"
role="menu"
aria-labelledby="table_toggle_btn">
<li> <li>
<a class="view_transfer_order" tabindex="-1" href="#" <a class="view_transfer_order"
tabindex="-1" href="#"
t-att-id="dynamic_inventory_report['id']"> t-att-id="dynamic_inventory_report['id']">
View Transfer Order View Transfer Order
</a> </a>
@ -226,14 +236,16 @@
</thead> </thead>
<tbody> <tbody>
<!-- <t t-if="order['report_type']='report_by_order'">--> <t t-foreach="report_lines"
<t t-foreach="report_lines" t-as="dynamic_inventory_report"> t-as="dynamic_inventory_report">
<tr style="border: 1.5px solid black;" class="pr-line" <tr style="border: 1.5px solid black;"
class="pr-line"
data-toggle="collapse" data-toggle="collapse"
t-att-data-account-id="dynamic_inventory_report['id']" t-att-data-account-id="dynamic_inventory_report['id']"
t-attf-data-target=".a{{dynamic_inventory_report['id']}}"> t-attf-data-target=".a{{dynamic_inventory_report['id']}}">
<td style="border: 0px solid black;"> <td style="border: 0px solid black;">
<i class="fa fa-caret-down" role="img" aria-label="Unfolded" title="Unfolded"/> <i class="fa fa-caret-down" role="img"
aria-label="Unfolded" title="Unfolded"/>
<span> <span>
<t t-esc="dynamic_inventory_report['category']"/> <t t-esc="dynamic_inventory_report['category']"/>
@ -259,27 +271,6 @@
<t t-esc="dynamic_inventory_report['quantity']"/> <t t-esc="dynamic_inventory_report['quantity']"/>
</span> </span>
</td> </td>
<!-- <td style="text-align:center;">-->
<!-- <span>-->
<!-- <t t-esc="dynamic_purchase_report['product']"/>-->
<!-- </span>-->
<!-- </td>-->
<!-- <td style="text-align:center;">-->
<!-- <span>-->
<!-- <t t-esc="dynamic_purchase_report['price_unit']"/>-->
<!-- </span>-->
<!-- </td>-->
<!-- <td style="text-align:center;">-->
<!-- <span>-->
<!-- <t t-esc="dynamic_purchase_report['sum']"/>-->
<!-- </span>-->
<!-- </td>-->
<!-- <td style="text-align:center;">-->
<!-- <span>-->
<!-- <t t-esc="dynamic_purchase_report['amount_total']"/>-->
<!-- </span>-->
<!-- </td>-->
</tr> </tr>
</t> </t>
</tbody> </tbody>
@ -306,13 +297,16 @@
<tbody> <tbody>
<!-- <t t-if="order['report_type']='report_by_order'">--> <!-- <t t-if="order['report_type']='report_by_order'">-->
<t t-foreach="report_lines" t-as="dynamic_inventory_report"> <t t-foreach="report_lines"
<tr style="border: 1.5px solid black;" class="pr-line" t-as="dynamic_inventory_report">
<tr style="border: 1.5px solid black;"
class="pr-line"
data-toggle="collapse" data-toggle="collapse"
t-att-data-account-id="dynamic_inventory_report['id']" t-att-data-account-id="dynamic_inventory_report['id']"
t-attf-data-target=".a{{dynamic_inventory_report['id']}}"> t-attf-data-target=".a{{dynamic_inventory_report['id']}}">
<td style="border: 0px solid black;"> <td style="border: 0px solid black;">
<i class="fa fa-caret-down" role="img" aria-label="Unfolded" title="Unfolded"/> <i class="fa fa-caret-down" role="img"
aria-label="Unfolded" title="Unfolded"/>
<span> <span>
<t t-esc="dynamic_inventory_report['name']"/> <t t-esc="dynamic_inventory_report['name']"/>
</span> </span>
@ -334,7 +328,7 @@
</td> </td>
<td style="text-align:center;"> <td style="text-align:center;">
<span> <span>
<t t-esc="dynamic_inventory_report['route']"/> <t t-esc="dynamic_inventory_report['route']['en_US']"/>
</span> </span>
</td> </td>
</tr> </tr>
@ -359,13 +353,16 @@
</thead> </thead>
<tbody> <tbody>
<!-- <t t-if="order['report_type']='report_by_order'">--> <!-- <t t-if="order['report_type']='report_by_order'">-->
<t t-foreach="report_lines" t-as="dynamic_inventory_report"> <t t-foreach="report_lines"
<tr style="border: 1.5px solid black;" class="pr-line" t-as="dynamic_inventory_report">
<tr style="border: 1.5px solid black;"
class="pr-line"
data-toggle="collapse" data-toggle="collapse"
t-att-data-account-id="dynamic_inventory_report['id']" t-att-data-account-id="dynamic_inventory_report['id']"
t-attf-data-target=".a{{dynamic_inventory_report['id']}}"> t-attf-data-target=".a{{dynamic_inventory_report['id']}}">
<td style="border: 0px solid black;"> <td style="border: 0px solid black;">
<i class="fa fa-caret-down" role="img" aria-label="Unfolded" title="Unfolded"/> <i class="fa fa-caret-down" role="img"
aria-label="Unfolded" title="Unfolded"/>
<span> <span>
<t t-esc="dynamic_inventory_report['complete_name']"/> <t t-esc="dynamic_inventory_report['complete_name']"/>
</span> </span>

Loading…
Cancel
Save