@ -0,0 +1,39 @@ |
|||
Agriculture Management |
|||
============================= |
|||
App for managing the Agriculture cultivation |
|||
|
|||
Configuration |
|||
============= |
|||
* No additional configurations needed |
|||
|
|||
Company |
|||
------- |
|||
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__ |
|||
|
|||
Credits |
|||
------- |
|||
* Developer: VYSHNAV AR @cybrosys |
|||
|
|||
Contacts |
|||
-------- |
|||
* Mail Contact : odoo@cybrosys.com |
|||
* Website : https://cybrosys.com |
|||
|
|||
Bug Tracker |
|||
----------- |
|||
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. |
|||
|
|||
Maintainer |
|||
========== |
|||
.. image:: https://cybrosys.com/images/logo.png |
|||
:target: https://cybrosys.com |
|||
|
|||
This module is maintained by Cybrosys Technologies. |
|||
|
|||
For support and more information, please visit `Our Website <https://cybrosys.com/>`__ |
|||
|
|||
Further information |
|||
=================== |
|||
HTML Description: `<static/description/index.html>`__ |
|||
|
|||
|
@ -0,0 +1,23 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from . import models |
|||
from . import wizard |
@ -0,0 +1,70 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
{ |
|||
'name': 'Agriculture Management Odoo', |
|||
'version': '16.0.1.0.0', |
|||
'summary': 'Agriculture Management Odoo', |
|||
'sequence': 4, |
|||
'description': """Agriculture Management Odoo, Agriculture, Farmers, Farming, Crops, Farm, Seeds, Farm Management""", |
|||
'category': 'Productivity', |
|||
'author': 'Cybrosys Techno Solutions', |
|||
'company': 'Cybrosys Techno Solutions', |
|||
'maintainer': 'Cybrosys Techno Solutions', |
|||
'website': 'https://www.cybrosys.com', |
|||
'license': 'LGPL-3', |
|||
'depends': [ |
|||
'base', |
|||
'fleet', |
|||
], |
|||
'data': [ |
|||
'security/user_groups.xml', |
|||
'security/ir.model.access.csv', |
|||
'data/data_sequence.xml', |
|||
'report/crop_report.xml', |
|||
'report/pest_report.xml', |
|||
'report/crop_report_template.xml', |
|||
'report/pest_report_template.xml', |
|||
'report/crop_vehicle_report.xml', |
|||
'report/crop_animal_report.xml', |
|||
'wizard/crop_report_wiz.xml', |
|||
'wizard/pest_report_wiz.xml', |
|||
'views/menu_action.xml', |
|||
'views/menu_items.xml', |
|||
'views/seed_details_view.xml', |
|||
'views/animal_details_views.xml', |
|||
'views/location_details_view.xml', |
|||
'views/vehicle_details_view.xml', |
|||
'views/fleet_inherit_view.xml', |
|||
'views/farmer_details_view.xml', |
|||
'views/pest_request.xml', |
|||
'views/pest_details.xml', |
|||
'views/damage_loss.xml', |
|||
'views/crop_request.xml', |
|||
'views/tag_details.xml', |
|||
'views/vehicle_rental_views.xml', |
|||
'views/animal_rental_views.xml', |
|||
], |
|||
'images': ['static/description/banner.png'], |
|||
'installable': True, |
|||
'application': True, |
|||
'auto_install': False, |
|||
} |
@ -0,0 +1,17 @@ |
|||
<data> |
|||
<record id="seq_pesticide" model="ir.sequence"> |
|||
<field name="name">Pest Request</field> |
|||
<field name="code">pest.request</field> |
|||
<field name="prefix">PEST/REQ/</field> |
|||
<field name="padding">5</field> |
|||
<field name="company_id" eval="False"/> |
|||
</record> |
|||
<record id="seq_crop" model="ir.sequence"> |
|||
<field name="name">Crop Request</field> |
|||
<field name="code">crop.requests</field> |
|||
<field name="prefix">CROP/REQ/</field> |
|||
<field name="padding">5</field> |
|||
<field name="company_id" eval="False"/> |
|||
</record> |
|||
|
|||
</data> |
@ -0,0 +1,7 @@ |
|||
## Module <agriculture_management_odoo> |
|||
|
|||
#### 19.11.2022 |
|||
#### Version 16.0.1.0.0 |
|||
#### ADD |
|||
- Initial commit for agriculture_management_odoo |
|||
|
@ -0,0 +1,34 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from . import crop_requests |
|||
from . import seed_details |
|||
from . import animal_details |
|||
from . import location_details |
|||
from . import vehicle_details |
|||
from . import fleet_inherit |
|||
from . import farmer_details |
|||
from . import pest_details |
|||
from . import pest_request |
|||
from . import damage_loss |
|||
from . import tag_details |
|||
from . import vehicle_rental |
|||
from . import animal_rental |
@ -0,0 +1,49 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
'''Module for Creating Animal Records''' |
|||
from odoo import models, fields |
|||
|
|||
|
|||
class AnimalDetails(models.Model): |
|||
'''Details of Animals''' |
|||
_name = 'animal.details' |
|||
_inherit = ['mail.thread', 'mail.activity.mixin'] |
|||
_description = "Animal Details" |
|||
_rec_name = 'breed' |
|||
|
|||
image = fields.Binary(string='Image', tracking=True) |
|||
breed = fields.Char(string='Breed', required=True, tracking=True) |
|||
age = fields.Char(string='Age', required=True, tracking=True) |
|||
state = fields.Selection( |
|||
[('available', 'Available'), ('not_available', 'Not Available')], |
|||
default="available", |
|||
string='Status', required=True, tracking=True) |
|||
note = fields.Text(string='Note', tracking=True) |
|||
|
|||
def action_not_available(self): |
|||
self.state = 'not_available' |
|||
|
|||
def action_sold(self): |
|||
self.state = 'sold' |
|||
|
|||
def action_available(self): |
|||
self.state = 'available' |
@ -0,0 +1,43 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
'''Model for Renting the Animals''' |
|||
from odoo import models, fields, api |
|||
|
|||
|
|||
class AnimalRental(models.Model): |
|||
_name = 'animal.rental' |
|||
_inherit = ['mail.thread', 'mail.activity.mixin'] |
|||
_description = 'Animal Rental' |
|||
|
|||
animal_id = fields.Many2one('animal.details', string='Animal', |
|||
required=True, tracking=True) |
|||
no_of_days = fields.Float(string='No of Days', tracking=True, |
|||
compute='compute_days', store=True) |
|||
start_date = fields.Date(string='Start Date', required=True, tracking=True) |
|||
end_date = fields.Date(string='End Date', required=True, tracking=True) |
|||
note = fields.Text(string='Description', tracking=True) |
|||
|
|||
@api.depends('start_date', 'end_date') |
|||
def compute_days(self): |
|||
if self.start_date and self.end_date: |
|||
days = (self.end_date - self.start_date).days |
|||
self.no_of_days = days |
@ -0,0 +1,122 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
'''Model For Creating Crop Requests''' |
|||
from odoo import models, fields, api, _ |
|||
|
|||
|
|||
class CropRequests(models.Model): |
|||
'''Details to create Crop Requests''' |
|||
_name = 'crop.requests' |
|||
_inherit = ["mail.thread", 'mail.activity.mixin'] |
|||
_description = "Agriculture Management" |
|||
_rec_name = 'ref' |
|||
|
|||
ref = fields.Char(string='Reference', required=True, copy=False, |
|||
readonly=True, tracking=True, |
|||
default=lambda self: _('New')) |
|||
farmer_id = fields.Many2one('farmer.details', string='Farmer', |
|||
required=True, tracking=True) |
|||
seed_id = fields.Many2one('seed.details', string='Crop', required=True, |
|||
tracking=True) |
|||
location_id = fields.Many2one('location.details', string='Location', |
|||
required=True, tracking=True) |
|||
request_date = fields.Date(string='Request Date', |
|||
default=fields.Date.context_today, required=True, |
|||
tracking=True) |
|||
state = fields.Selection( |
|||
[('draft', 'Draft'), ('confirm', 'Confirmed'), |
|||
('ploughing', 'Ploughing'), ('sowing', 'Sowing'), |
|||
('manuring', 'Manuring'), ('irrigation', 'Irrigation'), |
|||
('weeding', 'Weeding'), ('harvest', 'Harvest'), ('storage', 'Storage'), |
|||
('cancel', 'Cancel')], |
|||
string='Status', default='draft', tracking=True, |
|||
group_expand='_group_expand_states') |
|||
note = fields.Text(string='Note', tracking=True) |
|||
machinery_ids = fields.One2many('crop.machinery', 'des', string='Machinery', |
|||
tracking=True) |
|||
animal_ids = fields.One2many('crop.animals', 'dec', string='Animals', |
|||
tracking=True) |
|||
tags_id = fields.Many2many('agr.tag', string='Tags', tracking=True) |
|||
user_id = fields.Many2one('res.users', string='Responsible User', |
|||
default=lambda self: self.env.user) |
|||
|
|||
@api.model |
|||
def create(self, values): |
|||
if values.get('ref', _('New')) == _('New'): |
|||
values['ref'] = self.env['ir.sequence'].next_by_code( |
|||
'crop.requests') or _('New') |
|||
res = super(CropRequests, self).create(values) |
|||
return res |
|||
|
|||
def action_draft(self): |
|||
self.state = 'draft' |
|||
|
|||
def action_confirm(self): |
|||
self.state = 'confirm' |
|||
|
|||
def action_ploughing(self): |
|||
self.state = 'ploughing' |
|||
|
|||
def action_sowing(self): |
|||
self.state = 'sowing' |
|||
|
|||
def action_manuring(self): |
|||
self.state = 'manuring' |
|||
|
|||
def action_irrigation(self): |
|||
self.state = 'irrigation' |
|||
|
|||
def action_weeding(self): |
|||
self.state = 'weeding' |
|||
|
|||
def action_harvest(self): |
|||
self.state = 'harvest' |
|||
|
|||
def action_cancel(self): |
|||
self.state = 'cancel' |
|||
|
|||
def action_storage(self): |
|||
self.state = 'storage' |
|||
|
|||
def _group_expand_states(self, states, domain, order): |
|||
return [key for |
|||
key, val in type(self).state.selection] |
|||
|
|||
|
|||
class CropMachinery(models.Model): |
|||
'''Model For Attaching Vehicles''' |
|||
_name = 'crop.machinery' |
|||
|
|||
des = fields.Many2one('crop.requests') |
|||
vehicle_id = fields.Many2one('vehicle.details', string='Vehicle', |
|||
tracking=True) |
|||
qty = fields.Integer(string='Quantity') |
|||
|
|||
|
|||
class CropAnimals(models.Model): |
|||
'''Model For Attaching Animals''' |
|||
_name = 'crop.animals' |
|||
|
|||
dec = fields.Many2one('crop.requests') |
|||
animal_id = fields.Many2one('animal.details', string='Animal', |
|||
tracking=True) |
|||
qty = fields.Integer(string='Quantity') |
@ -0,0 +1,43 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields |
|||
|
|||
|
|||
class DamageLossDetails(models.Model): |
|||
_name = 'damage.loss' |
|||
_inherit = ["mail.thread", 'mail.activity.mixin'] |
|||
|
|||
name = fields.Char(string='Name', required=True, tracking=True) |
|||
farmer_id = fields.Many2one('farmer.details', string='Farmer', |
|||
required=True, tracking=True) |
|||
crop_id = fields.Many2one('crop.requests', string='Crop', required=True, |
|||
tracking=True) |
|||
location_id = fields.Many2one('location.details', string='Location', |
|||
required=True, tracking=True) |
|||
damage_loss_type = fields.Selection( |
|||
[('damage', 'Damage'), ('loss', 'Loss')], string='Damage/Loss Type', |
|||
required=True, tracking=True) |
|||
damage_loss_date = fields.Date(string='Damage/Loss Date', |
|||
default=fields.Date.context_today, |
|||
required=True, tracking=True) |
|||
note = fields.Text(string='Damage/Loss Description', tracking=True) |
|||
damage_loss_image = fields.Binary(string='Image', tracking=True) |
@ -0,0 +1,39 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields, api |
|||
|
|||
|
|||
class FarmerDetails(models.Model): |
|||
_name = 'farmer.details' |
|||
_inherit = ["mail.thread", 'mail.activity.mixin'] |
|||
_description = 'Farmer Details' |
|||
_rec_name = 'farmer_name' |
|||
|
|||
farmer_name = fields.Many2one('res.partner', string='Farmer', required=True, |
|||
tracking=True) |
|||
farmer_image = fields.Binary(string='Image', tracking=True) |
|||
note = fields.Text(string='Notes', tracking=True) |
|||
|
|||
@api.onchange('farmer_name') |
|||
def onchange_farmer_name(self): |
|||
if self.farmer_name: |
|||
self.farmer_image = self.farmer_name.image_1920 |
@ -0,0 +1,30 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
'''Inheriting the Fleet Module To Get Vehicles''' |
|||
from odoo import fields, models |
|||
|
|||
|
|||
class Fleet(models.Model): |
|||
_inherit = "fleet.vehicle" |
|||
|
|||
registration_date = fields.Date(string="Registration Date", |
|||
default=fields.Date.today) |
@ -0,0 +1,44 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields |
|||
|
|||
|
|||
class LocationDetails(models.Model): |
|||
_name = 'location.details' |
|||
_inherit = ['mail.thread', 'mail.activity.mixin'] |
|||
_description = "Location Details" |
|||
_rec_name = 'location_name' |
|||
|
|||
location_name = fields.Char(string='Location Name', required=True, |
|||
tracking=True) |
|||
location_address = fields.Char(string='Location Address', required=True, |
|||
tracking=True) |
|||
location_area = fields.Float(string='Location Area', required=True, |
|||
tracking=True) |
|||
location_area_unit = fields.Selection( |
|||
[('acres', 'Acres'), ('hectares', 'Hectares')], string='Area Unit', |
|||
required=True, tracking=True) |
|||
location_type = fields.Selection([('plot', 'Plot'), ('field', 'Field')], |
|||
default="plot", |
|||
string='Location Type', required=True, |
|||
tracking=True) |
|||
note = fields.Text(string='Note', tracking=True) |
@ -0,0 +1,50 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields, api |
|||
|
|||
|
|||
class PestDetails(models.Model): |
|||
_name = 'pest.details' |
|||
_inherit = ["mail.thread", 'mail.activity.mixin'] |
|||
_description = 'Pest Details' |
|||
_rec_name = 'pest_name' |
|||
|
|||
pest_name = fields.Char(string='Pesticide', required=True, tracking=True) |
|||
pest_expiry_date = fields.Date(string='Expiry Date', required=True, |
|||
tracking=True) |
|||
pest_description = fields.Text(string='Pest Description', tracking=True) |
|||
pest_image = fields.Binary(string='Image', tracking=True) |
|||
pest_cost = fields.Float(string='Cost', required=True, tracking=True) |
|||
pest_quantity = fields.Integer(string='Quantity', required=True, |
|||
tracking=True) |
|||
total_cost = fields.Float(string='Total Cost', |
|||
compute='_compute_total_cost', store=True, |
|||
tracking=True) |
|||
currency_id = fields.Many2one('res.currency', string='Currency', |
|||
default=lambda |
|||
self: self.env.user.company_id.currency_id, |
|||
tracking=True) |
|||
|
|||
@api.depends('pest_cost', 'pest_quantity') |
|||
def _compute_total_cost(self): |
|||
for record in self: |
|||
record.total_cost = record.pest_cost * record.pest_quantity |
@ -0,0 +1,84 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields, api, _ |
|||
|
|||
|
|||
class PestRequests(models.Model): |
|||
_name = 'pest.request' |
|||
_inherit = ["mail.thread", 'mail.activity.mixin'] |
|||
_description = 'Pest Request' |
|||
_rec_name = 'reference' |
|||
|
|||
reference = fields.Char(string='Reference', required=True, copy=False, |
|||
readonly=True, tracking=True, |
|||
default=lambda self: _('New')) |
|||
request_date = fields.Date(string='Request Date', |
|||
default=fields.Date.context_today, required=True, |
|||
tracking=True) |
|||
farmer_id = fields.Many2one('res.partner', string='Farmer', required=True, |
|||
tracking=True) |
|||
crop_id = fields.Many2one('crop.requests', string='Crop', required=True, |
|||
tracking=True) |
|||
location_id = fields.Many2one('location.details', string='Location', |
|||
tracking=True) |
|||
pest_id = fields.Many2one('pest.details', string='Pest', required=True, |
|||
tracking=True) |
|||
currency_id = fields.Many2one('res.currency', string='Currency', |
|||
default=lambda |
|||
self: self.env.user.company_id.currency_id) |
|||
pest_quantity = fields.Integer(string='Pest Quantity', required=True, |
|||
tracking=True) |
|||
pest_cost = fields.Float(string='Pest Cost', required=True, tracking=True) |
|||
total_cost = fields.Float(string='Total Cost', |
|||
compute='_compute_total_cost', store=True, |
|||
tracking=True) |
|||
disease = fields.Text(string='Disease', tracking=True, required=True) |
|||
note = fields.Text(string='Note', tracking=True) |
|||
state = fields.Selection( |
|||
[('draft', 'Draft'), ('pending', 'Pending'), ('approve', 'Approved'), |
|||
('rejected', 'Rejected')], |
|||
string='Status', default='draft', tracking=True) |
|||
|
|||
def action_draft(self): |
|||
self.state = 'draft' |
|||
|
|||
def action_pending(self): |
|||
self.state = 'pending' |
|||
|
|||
def action_approved(self): |
|||
self.state = 'approve' |
|||
|
|||
def action_rejected(self): |
|||
self.state = 'rejected' |
|||
|
|||
@api.depends('pest_cost', 'pest_quantity') |
|||
def _compute_total_cost(self): |
|||
for record in self: |
|||
record.total_cost = record.pest_cost * record.pest_quantity |
|||
|
|||
@api.model |
|||
def create(self, values): |
|||
if values.get('reference', _('New')) == _('New'): |
|||
values['reference'] = self.env['ir.sequence'].next_by_code( |
|||
'pest.request') or _('New') |
|||
res = super(PestRequests, self).create(values) |
|||
return res |
@ -0,0 +1,39 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields |
|||
|
|||
|
|||
class SeedDetails(models.Model): |
|||
_name = 'seed.details' |
|||
_inherit = ["mail.thread", 'mail.activity.mixin'] |
|||
_description = "Seed Details" |
|||
|
|||
name = fields.Char(string='Name', required=True, tracking=True) |
|||
quantity = fields.Integer(string='Quantity', required=True, tracking=True) |
|||
unit = fields.Selection([('kg', 'Kilograms'), ('gms', 'Grams')], |
|||
string='Unit', required=True, tracking=True) |
|||
seed_type = fields.Selection( |
|||
[('registered', 'Registered'), ('breeder', 'Breeder'), |
|||
('foundation', 'Foundation'), |
|||
('certified', 'Certified')], string='Type', required=True, |
|||
tracking=True) |
|||
note = fields.Text(string='Note', tracking=True) |
@ -0,0 +1,39 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from random import randint |
|||
|
|||
from odoo import fields, models |
|||
|
|||
|
|||
class Tag(models.Model): |
|||
_name = "agr.tag" |
|||
_description = "Agriculture Tags" |
|||
|
|||
def _get_default_color(self): |
|||
return randint(1, 11) |
|||
|
|||
name = fields.Char('Tag Name', required=True, translate=True) |
|||
color = fields.Integer('Color', default=_get_default_color) |
|||
|
|||
_sql_constraints = [ |
|||
('name_uniq', 'unique (name)', "Tag name already exists !"), |
|||
] |
@ -0,0 +1,58 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from datetime import datetime |
|||
from odoo import models, fields, api |
|||
|
|||
|
|||
class VehicleDetails(models.Model): |
|||
_name = 'vehicle.details' |
|||
_inherit = ['mail.thread', 'mail.activity.mixin'] |
|||
_description = "Vehicle Details" |
|||
|
|||
name = fields.Char(string='Name', tracking=True, ) |
|||
vehicle_main_id = fields.Many2one('fleet.vehicle', string='Vehicle', |
|||
required=True, tracking=True, |
|||
domain=( |
|||
[('state_id', '=', 'Registered')])) |
|||
vehicle_type = fields.Selection( |
|||
[('tractor', 'Tractor'), ('harvester', 'Harvester'), |
|||
('pickup', 'Pickup'), ('other', 'Other')], |
|||
string='Vehicle Type', required=True, tracking=True) |
|||
vehicle_model = fields.Char(string='Model Year', compute='compute_model', |
|||
store=True, tracking=True) |
|||
note = fields.Text(string='Note', tracking=True) |
|||
|
|||
@api.onchange("vehicle_main_id") |
|||
def onchange_vehicle(self): |
|||
self.name = str( |
|||
self.vehicle_main_id.model_id.brand_id.name or " ") + "/" + str( |
|||
self.vehicle_main_id.model_id.name or " ") + "/" + str( |
|||
self.vehicle_main_id.license_plate or " ") |
|||
|
|||
@api.depends('vehicle_main_id') |
|||
def compute_model(self): |
|||
for ref in self: |
|||
ref.vehicle_model = False |
|||
if ref.vehicle_main_id.registration_date: |
|||
date = datetime.strptime( |
|||
str(ref.vehicle_main_id.registration_date), '%Y-%m-%d') |
|||
ref.vehicle_model = str(date.year) |
@ -0,0 +1,42 @@ |
|||
# -*- coding: utf-8 -*- |
|||
############################################################################# |
|||
# |
|||
# Cybrosys Technologies Pvt. Ltd. |
|||
# |
|||
# Copyright (C) 2022-TODAY Cybrosys Technologies(<https://www.cybrosys.com>) |
|||
# Author: Cybrosys Techno Solutions(<https://www.cybrosys.com>) |
|||
# |
|||
# You can modify it under the terms of the GNU LESSER |
|||
# GENERAL PUBLIC LICENSE (LGPL v3), Version 3. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) for more details. |
|||
# |
|||
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE |
|||
# (LGPL v3) along with this program. |
|||
# If not, see <http://www.gnu.org/licenses/>. |
|||
# |
|||
############################################################################# |
|||
from odoo import models, fields, api |
|||
|
|||
|
|||
class VehicleRental(models.Model): |
|||
_name = 'vehicle.rental' |
|||
_inherit = ['mail.thread', 'mail.activity.mixin'] |
|||
_description = 'Vehicle Rental' |
|||
|
|||
vehicle_id = fields.Many2one('vehicle.details', string='Vehicle', |
|||
required=True, tracking=True) |
|||
no_of_days = fields.Float(string='No of Days', tracking=True, |
|||
compute='compute_days', store=True) |
|||
start_date = fields.Date(string='Start Date', required=True, tracking=True) |
|||
end_date = fields.Date(string='End Date', required=True, tracking=True) |
|||
note = fields.Text(string='Description', tracking=True) |
|||
|
|||
@api.depends('start_date', 'end_date') |
|||
def compute_days(self): |
|||
if self.start_date and self.end_date: |
|||
days = (self.end_date - self.start_date).days |
|||
self.no_of_days = days |
@ -0,0 +1,89 @@ |
|||
<odoo> |
|||
<template id="animal_crop"> |
|||
<t t-call="web.html_container"> |
|||
<t t-foreach="docs" t-as="doc"> |
|||
<t t-call="web.external_layout"> |
|||
<div class="page"> |
|||
<strong> |
|||
<h1>Crop Animal Report</h1> |
|||
</strong> |
|||
<table class="table table-sm" |
|||
style="border: 2px solid black;"> |
|||
<tr> |
|||
<td>REFERENCE</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.ref"/> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>FARMER</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.farmer_id.farmer_name.name"/> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>CROP</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.seed_id.name"/> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>LOCATION</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.location_id.location_name"/> |
|||
</td> |
|||
</tr> |
|||
</table> |
|||
|
|||
<br> |
|||
</br> |
|||
<style> |
|||
table, thead, th, td, tr, tbody { |
|||
border: 1px solid black; |
|||
border-collapse: collapse; |
|||
padding: 5px; |
|||
} |
|||
</style> |
|||
<table class="table table-sm" |
|||
style="border: 2px solid black;"> |
|||
<thead> |
|||
<tr> |
|||
<strong> |
|||
<th>Animal</th> |
|||
<th>Quantity</th> |
|||
</strong> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
<tr t-foreach="doc.animal_ids" t-as="line"> |
|||
<td> |
|||
<span t-esc="line.animal_id.breed"/> |
|||
</td> |
|||
<td> |
|||
<span t-esc="line.qty"/> |
|||
</td> |
|||
</tr> |
|||
</tbody> |
|||
</table> |
|||
</div> |
|||
</t> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
|
|||
|
|||
<record id="report_animal_crop" model="ir.actions.report"> |
|||
<field name="name">Animal Crop Report</field> |
|||
<field name="model">crop.requests</field> |
|||
<field name="report_type">qweb-pdf</field> |
|||
<field name="report_name">agriculture_management_odoo.animal_crop</field> |
|||
<field name="report_file">agriculture_management_odoo.animal_crop</field> |
|||
<field name="binding_type">report</field> |
|||
<field name="binding_model_id" ref="model_crop_requests"/> |
|||
</record> |
|||
|
|||
</odoo> |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<odoo> |
|||
<record id="action_crop_request_report" model="ir.actions.report"> |
|||
<field name="name">Crop Report</field> |
|||
<field name="model">crop.report.wizard</field> |
|||
<field name="report_type">qweb-pdf</field> |
|||
<field name="report_name">agriculture_management_odoo.report_crop_details</field> |
|||
<field name="report_file">agriculture_management_odoo.report_crop_details</field> |
|||
<field name="binding_model_id" ref="model_crop_report_wizard"/> |
|||
<field name="binding_type">report</field> |
|||
</record> |
|||
</odoo> |
|||
|
@ -0,0 +1,92 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<template id="report_crop_details"> |
|||
<t t-call="web.html_container"> |
|||
<t t-call="web.external_layout"> |
|||
<div class="page"> |
|||
<div class="oe_structure"/> |
|||
<div class="text-center"> |
|||
<h1>Crop Report</h1> |
|||
</div> |
|||
<table class="table table-condensed"> |
|||
<tr> |
|||
<td>FROM DATE</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-if="form.get('date_from')"> |
|||
<t t-esc="form['date_from']"/> |
|||
</t> |
|||
|
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>TO DATE</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-if="form.get('date_to')"> |
|||
<t t-esc="form['date_to']"/> |
|||
</t> |
|||
|
|||
</td> |
|||
</tr> |
|||
<table class="table table-condensed"> |
|||
<thead> |
|||
<tr> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Reference |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Farmer |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Crop |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Request Date |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Location |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Status |
|||
</th> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
<t> |
|||
<tr t-foreach="record" t-as="val"> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[0]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[1]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[2]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[3]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[5]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[4]"/> |
|||
</td> |
|||
|
|||
</tr> |
|||
</t> |
|||
</tbody> |
|||
</table> |
|||
</table> |
|||
</div> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
</odoo> |
@ -0,0 +1,88 @@ |
|||
<odoo> |
|||
<template id="vehicle_crop"> |
|||
<t t-call="web.html_container"> |
|||
<t t-foreach="docs" t-as="doc"> |
|||
<t t-call="web.external_layout"> |
|||
<div class="page"> |
|||
<strong> |
|||
<h1>Crop Vehicle Report</h1> |
|||
</strong> |
|||
<table class="table table-sm" |
|||
style="border: 2px solid black;"> |
|||
<tr> |
|||
<td>REFERENCE</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.ref"/> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>FARMER</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.farmer_id.farmer_name.name"/> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>CROP</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.seed_id.name"/> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>LOCATION</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-esc="doc.location_id.location_name"/> |
|||
</td> |
|||
</tr> |
|||
</table> |
|||
|
|||
<br> |
|||
</br> |
|||
<style> |
|||
table, thead, th, td, tr, tbody { |
|||
border: 1px solid black; |
|||
border-collapse: collapse; |
|||
padding: 5px; |
|||
} |
|||
</style> |
|||
<table class="table table-sm" |
|||
style="border: 2px solid black;"> |
|||
<thead> |
|||
<tr> |
|||
<strong> |
|||
<th>Vehicle</th> |
|||
<th>Quantity</th> |
|||
</strong> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
<tr t-foreach="doc.machinery_ids" t-as="line"> |
|||
<td> |
|||
<span t-esc="'%s/%s/%s' % (line.vehicle_id.vehicle_main_id.model_id.name,line.vehicle_id.vehicle_main_id.model_id.name,line.vehicle_id.vehicle_main_id.license_plate)"/> |
|||
</td> |
|||
<td> |
|||
<span t-esc="line.qty"/> |
|||
</td> |
|||
</tr> |
|||
</tbody> |
|||
</table> |
|||
</div> |
|||
</t> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
|
|||
|
|||
<record id="report_vehicle_crop" model="ir.actions.report"> |
|||
<field name="name">Vehicle Crop Report</field> |
|||
<field name="model">crop.requests</field> |
|||
<field name="report_type">qweb-pdf</field> |
|||
<field name="report_name">agriculture_management_odoo.vehicle_crop</field> |
|||
<field name="report_file">agriculture_management_odoo.vehicle_crop</field> |
|||
<field name="binding_type">report</field> |
|||
<field name="binding_model_id" ref="model_crop_requests"/> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<odoo> |
|||
<record id="action_pest_request_report" model="ir.actions.report"> |
|||
<field name="name">pest Report</field> |
|||
<field name="model">pest.report.wizard</field> |
|||
<field name="report_type">qweb-pdf</field> |
|||
<field name="report_name">agriculture_management_odoo.report_pest_details</field> |
|||
<field name="report_file">agriculture_management_odoo.report_pest_details</field> |
|||
<field name="binding_model_id" ref="model_pest_report_wizard"/> |
|||
<field name="binding_type">report</field> |
|||
</record> |
|||
</odoo> |
|||
|
@ -0,0 +1,113 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<template id="report_pest_details"> |
|||
<t t-call="web.html_container"> |
|||
<t t-call="web.external_layout"> |
|||
<div class="page"> |
|||
<div class="oe_structure"/> |
|||
<div class="text-center"> |
|||
<h1>Pest Report</h1> |
|||
</div> |
|||
<table class="table table-condensed"> |
|||
<tr> |
|||
<td>FROM DATE</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-if="form.get('date_from')"> |
|||
<t t-esc="form['date_from']"/> |
|||
</t> |
|||
|
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>TO DATE</td> |
|||
<td>:</td> |
|||
<td> |
|||
<t t-if="form.get('date_to')"> |
|||
<t t-esc="form['date_to']"/> |
|||
</t> |
|||
|
|||
</td> |
|||
</tr> |
|||
<table class="table table-condensed"> |
|||
<thead> |
|||
<tr> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Reference |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Farmer |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Crop |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Disease |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Pest |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Quantity |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Cost |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Total |
|||
</th> |
|||
<th style="text-align:left;color:black!important;"> |
|||
Status |
|||
</th> |
|||
</tr> |
|||
</thead> |
|||
<tbody> |
|||
<t> |
|||
<tr t-foreach="record" t-as="val"> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[0]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[1]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[2]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[3]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[4]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[5]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[6]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[7]"/> |
|||
</td> |
|||
<td> |
|||
<span t-att-style="style" |
|||
t-esc="val[8]"/> |
|||
</td> |
|||
|
|||
</tr> |
|||
</t> |
|||
</tbody> |
|||
</table> |
|||
</table> |
|||
</div> |
|||
</t> |
|||
</t> |
|||
</template> |
|||
</odoo> |
|
@ -0,0 +1,36 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<odoo> |
|||
<record model="ir.module.category" id="module_agriculture_management_odoo"> |
|||
<field name="name">Agriculture Management</field> |
|||
<field name="description">Category for Agriculture</field> |
|||
</record> |
|||
|
|||
<record id="group_agriculture_user" model="res.groups"> |
|||
<field name="name">User</field> |
|||
<field name="category_id" ref="module_agriculture_management_odoo"/> |
|||
</record> |
|||
|
|||
<record id="group_agriculture_admin" model="res.groups"> |
|||
<field name="name">Manager</field> |
|||
<field name="category_id" ref="module_agriculture_management_odoo"/> |
|||
<field name="implied_ids" eval="[(4, ref('group_agriculture_user'))]"/> |
|||
</record> |
|||
|
|||
<record id="rule_own_doc" model="ir.rule"> |
|||
<field name="name">View Own Docs</field> |
|||
<field ref="model_crop_requests" name="model_id"/> |
|||
<field name="domain_force">['|',('user_id', '=', user.id),('create_uid', |
|||
'=', user.id)] |
|||
</field> |
|||
<field name="groups" |
|||
eval="[(4, ref('agriculture_management_odoo.group_agriculture_user'))]"/> |
|||
</record> |
|||
|
|||
<record id="rule_all_doc" model="ir.rule"> |
|||
<field name="name">View All Docs</field> |
|||
<field ref="model_crop_requests" name="model_id"/> |
|||
<field name="domain_force">[(1, '=', 1)]</field> |
|||
<field name="groups" |
|||
eval="[(4, ref('agriculture_management_odoo.group_agriculture_admin'))]"/> |
|||
</record> |
|||
</odoo> |
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 310 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 576 B |
After Width: | Height: | Size: 733 B |
After Width: | Height: | Size: 911 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 673 B |
After Width: | Height: | Size: 878 B |
After Width: | Height: | Size: 653 B |
After Width: | Height: | Size: 905 B |
After Width: | Height: | Size: 839 B |
After Width: | Height: | Size: 427 B |
After Width: | Height: | Size: 627 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 988 B |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.5 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 4.4 KiB |
After Width: | Height: | Size: 589 B |
After Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 967 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 5.0 KiB |
After Width: | Height: | Size: 80 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 84 KiB |
After Width: | Height: | Size: 83 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 80 KiB |
After Width: | Height: | Size: 286 KiB |
After Width: | Height: | Size: 90 KiB |
After Width: | Height: | Size: 50 KiB |
After Width: | Height: | Size: 56 KiB |
After Width: | Height: | Size: 64 KiB |
After Width: | Height: | Size: 62 KiB |
After Width: | Height: | Size: 58 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 57 KiB |
After Width: | Height: | Size: 53 KiB |
After Width: | Height: | Size: 43 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 88 KiB |
After Width: | Height: | Size: 48 KiB |
After Width: | Height: | Size: 89 KiB |
After Width: | Height: | Size: 101 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 99 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 51 KiB |
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 2.3 KiB |
@ -0,0 +1,781 @@ |
|||
<div style="background-color: #714B67; height: 810px; width: 100%; padding: 15px; position: relative;"> |
|||
<!-- TITLE BAR --> |
|||
<div class="d-flex align-items-center justify-content-between" |
|||
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;"/> |
|||
<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;" |
|||
class="mr-2"> |
|||
<i class="fa fa-check mr-1"></i>Community |
|||
</div> |
|||
<div |
|||
style="color: #875A7B; 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"> |
|||
<i class="fa fa-check mr-1"></i>Enterprise |
|||
</div> |
|||
<div |
|||
style="color: #017E84; 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"> |
|||
<i class="fa fa-check mr-1"></i>Odoo.sh |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF TITLE BAR --> |
|||
<div class="container"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 col-md-12 col-lg-12"> |
|||
<!-- APP HERO --> |
|||
<h1 style="color: #FFFFFF; font-weight: bolder; font-size: 50px; text-align: center; margin-top: 50px;"> |
|||
Agriculture Management</h1> |
|||
<p |
|||
style="color:#FFFFFF; padding: 8px 15px; text-align: center; font-size: 24px;"> |
|||
Agriculture Management In Odoo16</p> |
|||
<!-- END OF APP HERO --> |
|||
<img src="assets/screenshots/hero.gif" class="img-responsive" |
|||
style="width: 100%; margin-left: auto; margin-right: auto;"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
|
|||
</div> |
|||
|
|||
<!-- 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 justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/compass.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Explore This |
|||
Module</h2> |
|||
</div> |
|||
<div class="row my-4" style="font-family: 'Montserrat', sans-serif;"> |
|||
<div class="col-sm-12 col-md-6 my-3"> |
|||
<a href="#overview"> |
|||
<div class="d-flex justify-content-between align-items-center" |
|||
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
|||
<div> |
|||
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Overview</span> |
|||
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">Learn |
|||
more about this |
|||
module</span> |
|||
</div> |
|||
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6 my-3"> |
|||
<a href="#features"> |
|||
<div class="d-flex justify-content-between align-items-center" |
|||
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
|||
<div> |
|||
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Features</span> |
|||
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View |
|||
features of this |
|||
module</span> |
|||
</div> |
|||
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6 my-3"> |
|||
<a href="#screenshots"> |
|||
<div class="d-flex justify-content-between align-items-center" |
|||
style="background-color: #f5f5f5; padding: 30px; width: 100%;"> |
|||
<div> |
|||
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Screenshots</span> |
|||
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View |
|||
screenshots for this |
|||
module</span> |
|||
</div> |
|||
<img src="assets/misc/right-arrow.png" width="36" height="36"/> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
<!-- END OF NAVIGATION 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 justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/pie-chart.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Overview |
|||
</h2> |
|||
</div> |
|||
<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"> |
|||
This module helps to print Current Stock Report for all Products in each |
|||
Warehouse with XLS |
|||
</div> |
|||
</div> |
|||
<!-- END OF OVERVIEW 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 justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/features.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Features |
|||
</h2> |
|||
</div> |
|||
<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="d-flex align-items-center" |
|||
style="margin-top: 40px; margin-bottom: 40px"> |
|||
<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> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Set the Manager and User in settings.</span> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Create Crop Requests.</span> |
|||
</div> |
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Create Rentals for Vehicles and Animals.</span> |
|||
</div> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6"> |
|||
|
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Available in Odoo 16.0 |
|||
Community and Enterprise.</span> |
|||
</div> |
|||
|
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Create Damage/Loss Report.</span> |
|||
</div> |
|||
|
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Create Pesticide Request and Can View the Pesticide Details.</span> |
|||
</div> |
|||
|
|||
<div class="d-flex align-items-center" |
|||
style="margin-top: 30px; margin-bottom: 30px"> |
|||
<img src="assets/misc/check-box.png" class="mr-2"/> |
|||
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Create Total Crop Request Report.</span> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
<!-- END OF FEATURES 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 justify-content-center align-items-center mr-2" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/pictures.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Screenshots |
|||
</h2> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-sm-12"> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Provide User Access |
|||
</h3> |
|||
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;"> |
|||
In Settings, user can have Manager access which is overall |
|||
access and another one is User access.</p> |
|||
<img src="assets/screenshots/screenshot_1.png" |
|||
class="img-thumbnail"> |
|||
<img src="assets/screenshots/screenshot_2.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Configuration </h3> |
|||
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;"> |
|||
User can create Seed, Farmers, Vehicles, Animals, Locations and Tags used for creating Crop Request.</p> |
|||
<img src="assets/screenshots/screenshot_3.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Create Crop Request using created values in configuration. </h3> |
|||
<img src="assets/screenshots/screenshot_4.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User can print report of current record of used vehicles. </h3> |
|||
<img src="assets/screenshots/screenshot_5.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Report view of used vehicle report. </h3> |
|||
<img src="assets/screenshots/screenshot_6.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Print Report Of Current Record of Used Animals. </h3> |
|||
<img src="assets/screenshots/screenshot_7.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Report View Of Used Animal Report. </h3> |
|||
<img src="assets/screenshots/screenshot_8.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Rent The Vehicles. </h3> |
|||
<img src="assets/screenshots/screenshot_9.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Rent The Animals. </h3> |
|||
<img src="assets/screenshots/screenshot_10.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Submit Damage/ Loss of the Crops. </h3> |
|||
<img src="assets/screenshots/screenshot_11.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Request Pesticide For The Crops. </h3> |
|||
<img src="assets/screenshots/screenshot_12.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Create and View Details of Pesticides |
|||
Available. </h3> |
|||
<img src="assets/screenshots/screenshot_13.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Take The Crop Request Report. </h3> |
|||
<img src="assets/screenshots/screenshot_14.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Enter The Date Range To Print Report.</h3> |
|||
<img src="assets/screenshots/screenshot_15.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Report View Of Crop Request.</h3> |
|||
<img src="assets/screenshots/screenshot_16.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
User Can Take The Pest Request Report.</h3> |
|||
<img src="assets/screenshots/screenshot_17.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Enter The Date Range To Print Report.</h3> |
|||
<img src="assets/screenshots/screenshot_18.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
<div style="display: block; margin: 30px auto;"> |
|||
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;"> |
|||
Report View Of Pest Request.</h3> |
|||
<img src="assets/screenshots/screenshot_19.png" |
|||
class="img-thumbnail"> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
<!-- END OF SCREENSHOTS SECTION --> |
|||
|
|||
<!-- RELATED PRODUCTS --> |
|||
<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" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/categories.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Related |
|||
Products |
|||
</h2> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-sm-12"> |
|||
<div id="demo1" class="row carousel slide" data-ride="carousel"> |
|||
<!-- The slideshow --> |
|||
<div class="carousel-inner" style="padding: 30px;"> |
|||
<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"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/library_management_system/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/1.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/custom_gantt_view/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/2.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/customer_followup_community/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/3.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
<div class="carousel-item active" |
|||
style="min-height: 198.656px;"> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/sales_credit_limit/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/4.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/woo_commerce/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/5.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" |
|||
style="float:left"> |
|||
<a href="https://apps.odoo.com/apps/modules/16.0/pos_credit_limit/" |
|||
target="_blank"> |
|||
<div style="border-radius:10px"> |
|||
<img class="img img-responsive center-block" |
|||
style="border-radius: 0px;" |
|||
src="assets/modules/6.png"> |
|||
</div> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- Left and right controls --> |
|||
<a class="carousel-control-prev" href="#demo1" data-slide="prev" |
|||
style="width:35px; color:#000"> <span |
|||
class="carousel-control-prev-icon"><i |
|||
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> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF RELATED PRODUCTS --> |
|||
|
|||
<!-- OUR SERVICES --> |
|||
|
|||
<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" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/star.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Our Services |
|||
</h2> |
|||
</div> |
|||
|
|||
<div class="container my-5"> |
|||
<div class="row"> |
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Customization</h6> |
|||
</div> |
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Implementation</h6> |
|||
</div> |
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Support</h6> |
|||
</div> |
|||
|
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Hire |
|||
Odoo |
|||
Developer</h6> |
|||
</div> |
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Integration</h6> |
|||
</div> |
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Migration</h6> |
|||
</div> |
|||
|
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Consultancy</h6> |
|||
</div> |
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Implementation</h6> |
|||
</div> |
|||
|
|||
<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" |
|||
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"> |
|||
</div> |
|||
<h6 class="text-center" |
|||
style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;"> |
|||
Odoo |
|||
Licensing Consultancy</h6> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
|
|||
<!-- END OF END OF OUR SERVICES --> |
|||
|
|||
<!-- OUR INDUSTRIES --> |
|||
|
|||
<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" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/corporate.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Our |
|||
Industries |
|||
</h2> |
|||
</div> |
|||
|
|||
<div class="container my-5"> |
|||
<div class="row"> |
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
Trading |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Easily procure |
|||
and |
|||
sell your products</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
POS |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Easy |
|||
configuration |
|||
and convivial experience</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
Education |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
A platform for |
|||
educational management</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<img src="assets/icons/manufacturing-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;"> |
|||
Manufacturing |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Plan, track and |
|||
schedule your operations</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
E-commerce & Website |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Mobile |
|||
friendly, |
|||
awe-inspiring product pages</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
Service Management |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Keep track of |
|||
services and invoice</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
Restaurant |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
Run your bar or |
|||
restaurant methodically</p> |
|||
</div> |
|||
</div> |
|||
|
|||
<div class="col-lg-3"> |
|||
<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;"> |
|||
<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;"> |
|||
Hotel Management |
|||
</h5> |
|||
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;"> |
|||
An |
|||
all-inclusive |
|||
hotel management application</p> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<!-- END OF END OF OUR INDUSTRIES --> |
|||
|
|||
<!-- SUPPORT --> |
|||
<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" |
|||
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;"> |
|||
<img src="assets/misc/customer-support.png"/> |
|||
</div> |
|||
<h2 class="mt-2" |
|||
style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;"> |
|||
Support |
|||
</h2> |
|||
</div> |
|||
<div class="container mt-5"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 col-md-6"> |
|||
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> |
|||
<div class="mr-4 d-flex justify-content-center align-items-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;"/> |
|||
</div> |
|||
<div> |
|||
<h4>Need Help?</h4> |
|||
<p style="line-height: 100%;">Got questions or need help? |
|||
Get in touch.</p> |
|||
<a href="mailto:odoo@cybrosys.com"> |
|||
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> |
|||
odoo@cybrosys.com</p> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="col-sm-12 col-md-6"> |
|||
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;"> |
|||
<div class="mr-4 d-flex justify-content-center align-items-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;"/> |
|||
</div> |
|||
<div> |
|||
<h4>WhatsApp</h4> |
|||
<p style="line-height: 100%;">Say hi to us on WhatsApp!</p> |
|||
<a href="https://api.whatsapp.com/send?phone=918606827707"> |
|||
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;"> |
|||
+91 86068 |
|||
27707</p> |
|||
</a> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="row"> |
|||
<div class="col-sm-12 my-5 d-flex justify-content-center align-items-center"> |
|||
<img src="assets/misc/logo.png" width="144" height="31" |
|||
style="width:144px; height: 31px; margin-top: 40px;"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<!-- END OF SUPPORT --> |
@ -0,0 +1,54 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_animal_details_tree" model="ir.ui.view"> |
|||
<field name="name">animal.details.tree</field> |
|||
<field name="model">animal.details</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="breed"/> |
|||
<field name="age"/> |
|||
</tree> |
|||
|
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_animals_details_form" model="ir.ui.view"> |
|||
<field name="name">animal.details.form</field> |
|||
<field name="model">animal.details</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<header> |
|||
<button id="button_not_available" |
|||
name="action_not_available" string="Not Available" |
|||
class="btn-primary" |
|||
type="object" states="available"/> |
|||
<button id="button_available" name="action_available" |
|||
string="Set To Available" class="btn-primary" |
|||
type="object" states="not_available,sold"/> |
|||
<field name="state" widget="statusbar" |
|||
statusbar_visible="available,not_available,sold"/> |
|||
</header> |
|||
<sheet> |
|||
<h1> |
|||
<field name="breed"/> |
|||
</h1> |
|||
<group> |
|||
<group> |
|||
<field name="age"/> |
|||
</group> |
|||
<group> |
|||
<field name="image" widget="image"/> |
|||
</group> |
|||
</group> |
|||
<field name="note" placeholder="Animal Description"/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
|
|||
</odoo> |
@ -0,0 +1,44 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_animal_rental_tree" model="ir.ui.view"> |
|||
<field name="name">animal.rental.tree</field> |
|||
<field name="model">animal.rental</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="animal_id"/> |
|||
<field name="no_of_days"/> |
|||
<field name="start_date"/> |
|||
<field name="end_date"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<record id="view_animal_rental_form" model="ir.ui.view"> |
|||
<field name="name">animal.rental.form</field> |
|||
<field name="model">animal.rental</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<sheet> |
|||
<group> |
|||
<group> |
|||
<field name="animal_id"/> |
|||
<field name="no_of_days"/> |
|||
</group> |
|||
<group> |
|||
<field name="start_date"/> |
|||
<field name="end_date"/> |
|||
</group> |
|||
</group> |
|||
<field name="note" |
|||
placeholder="Vehicle Description........."/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
|
|||
|
|||
</odoo> |
@ -0,0 +1,150 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_crop_request_kanban" model="ir.ui.view"> |
|||
<field name="name">crop.request.kanban</field> |
|||
<field name="model">crop.requests</field> |
|||
<field name="arch" type="xml"> |
|||
<kanban default_group_by="state" |
|||
class="o_kanban_small_column o_kanban_project_tasks" |
|||
records_draggable="true" default_order="state" |
|||
examples="project" |
|||
js_class="project_task_kanban" sample="1"> |
|||
<field name="ref"/> |
|||
<field name="farmer_id"/> |
|||
<field name="request_date"/> |
|||
<field name="seed_id"/> |
|||
<field name="tags_id" widget="many2many_tags" |
|||
options="{'color_field': 'color'}"/> |
|||
<progressbar field="state" |
|||
colors='{"draft": "warning","confirm": "info", "cancel": "danger", "ploughing": "muted", "harvest": "muted", "storage": "success", "manuring": "primary"}'/> |
|||
<templates> |
|||
<t t-name="kanban-box"> |
|||
<div t-attf-class="oe_kanban_global_click"> |
|||
<div class="oe_kanban_details"> |
|||
<strong> |
|||
<field name="ref"/> |
|||
<br/> |
|||
<field name="farmer_id"/> |
|||
<br/> |
|||
<field name="request_date"/> |
|||
<br/> |
|||
<field name="seed_id"/> |
|||
<br/> |
|||
<field name="tags_id" |
|||
widget="many2many_tags" |
|||
options="{'color_field': 'color'}"/> |
|||
<br/> |
|||
</strong> |
|||
</div> |
|||
</div> |
|||
</t> |
|||
</templates> |
|||
</kanban> |
|||
</field> |
|||
</record> |
|||
|
|||
|
|||
<record id="view_crop_request_tree" model="ir.ui.view"> |
|||
<field name="name">crop.request.tree</field> |
|||
<field name="model">crop.requests</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="ref"/> |
|||
<field name="seed_id"/> |
|||
<field name="farmer_id"/> |
|||
<field name="location_id"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_crop_request_form" model="ir.ui.view"> |
|||
<field name="name">crop.request.form</field> |
|||
<field name="model">crop.requests</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<header> |
|||
<button id="button_draft" name="action_draft" string="Draft" |
|||
type="object" class="oe_highlight" |
|||
states="cancel"/> |
|||
<button id="button_confirm" name="action_confirm" |
|||
string="Submit" type="object" class="btn-primary" |
|||
states="draft"/> |
|||
<button id="button_ploughing" name="action_ploughing" |
|||
string="Ploughing" |
|||
class="btn-primary" |
|||
type="object" states="confirm"/> |
|||
<button id="button_sowing" name="action_sowing" |
|||
string="Sowing" class="btn-primary" |
|||
type="object" states="ploughing"/> |
|||
<button id="button_manuring" name="action_manuring" |
|||
string="Manure" class="btn-primary" |
|||
type="object" states="sowing"/> |
|||
<button id="button_irrigation" name="action_irrigation" |
|||
string="Irrigation" class="btn-primary" |
|||
type="object" states="manuring"/> |
|||
<button id="button_weeding" name="action_weeding" |
|||
string="Weeding" class="btn-primary" |
|||
type="object" states="irrigation"/> |
|||
<button id="button_harvest" name="action_harvest" |
|||
string="Harvest" class="btn-primary" |
|||
type="object" states="weeding"/> |
|||
<button id="button_storage" name="action_storage" |
|||
string="Storage" class="btn-primary" |
|||
type="object" states="harvest"/> |
|||
<button id="button_cancel" name="action_cancel" |
|||
string="Cancelled" class="btn-primary" |
|||
type="object" |
|||
states="ploughing,sowing,manuring,irrigation,weeding,harvest,storage"/> |
|||
<field name="state" widget="statusbar" |
|||
statusbar_visible="draft,confirm,ploughing,sowing,manuring,irrigation,weeding,harvest,storage,cancel"/> |
|||
</header> |
|||
<sheet> |
|||
<h1> |
|||
<field name="ref"/> |
|||
</h1> |
|||
<group> |
|||
<group> |
|||
<field name="farmer_id"/> |
|||
<field name="seed_id"/> |
|||
<field name="user_id"/> |
|||
</group> |
|||
<group> |
|||
<field name="request_date"/> |
|||
<field name="location_id"/> |
|||
<field name="tags_id" widget="many2many_tags" |
|||
options="{'color_field': 'color'}"/> |
|||
</group> |
|||
</group> |
|||
<notebook> |
|||
<page string="Machinery" name="used_machinery"> |
|||
<field name="machinery_ids"> |
|||
<tree editable="bottom"> |
|||
<field name="vehicle_id"/> |
|||
<field name="qty"/> |
|||
</tree> |
|||
</field> |
|||
</page> |
|||
<page string="Animals" name="used_animals"> |
|||
<field name="animal_ids"> |
|||
<tree editable="bottom"> |
|||
<field name="animal_id"/> |
|||
<field name="qty"/> |
|||
</tree> |
|||
</field> |
|||
</page> |
|||
<page string="Description" name="description"> |
|||
<field name="note" |
|||
placeholder="Crop Description........"/> |
|||
</page> |
|||
|
|||
</notebook> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,48 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_damage_loss_tree" model="ir.ui.view"> |
|||
<field name="name">damage.loss.tree</field> |
|||
<field name="model">damage.loss</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="name"/> |
|||
<field name="farmer_id"/> |
|||
<field name="crop_id"/> |
|||
<field name="location_id"/> |
|||
<field name="damage_loss_type"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_damage_loss_form" model="ir.ui.view"> |
|||
<field name="name">damage.loss.form</field> |
|||
<field name="model">damage.loss</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<sheet> |
|||
<h1> |
|||
<field name="name"/> |
|||
</h1> |
|||
<group> |
|||
<group> |
|||
<field name="farmer_id"/> |
|||
<field name="crop_id"/> |
|||
<field name="location_id"/> |
|||
<field name="damage_loss_type"/> |
|||
<field name="damage_loss_date"/> |
|||
</group> |
|||
<group> |
|||
<field name="damage_loss_image" widget="image"/> |
|||
</group> |
|||
</group> |
|||
<field name="note" placeholder="Damage/Loss Description"/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,64 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_farmer_details_kanban" model="ir.ui.view"> |
|||
<field name="name">farmer.details.kanban</field> |
|||
<field name="model">farmer.details</field> |
|||
<field name="arch" type="xml"> |
|||
<kanban> |
|||
<field name="farmer_name"/> |
|||
<field name="farmer_image"/> |
|||
<templates> |
|||
<t t-name="kanban-box"> |
|||
<div t-attf-class="oe_kanban_global_click"> |
|||
<div class="oe_kanban_details"> |
|||
<ul> |
|||
<group> |
|||
<group> |
|||
<div class="o_kanban_image_fill_left o_kanban_image_full"> |
|||
<img t-att-src="record.farmer_image" |
|||
alt=""/> |
|||
<field name="farmer_image" |
|||
widget="image"/> |
|||
</div> |
|||
<h5> |
|||
<field name="farmer_name"/> |
|||
</h5> |
|||
</group> |
|||
</group> |
|||
</ul> |
|||
</div> |
|||
</div> |
|||
</t> |
|||
</templates> |
|||
</kanban> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_farmer_details_form" model="ir.ui.view"> |
|||
<field name="name">farmer.details.form</field> |
|||
<field name="model">farmer.details</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<sheet> |
|||
<group> |
|||
<group> |
|||
<field name="farmer_name" |
|||
widget="res_partner_many2one" |
|||
context="{'show_address': 1}" |
|||
options='{"always_reload": True}'/> |
|||
</group> |
|||
<group> |
|||
<field name="farmer_image" widget="image"/> |
|||
</group> |
|||
</group> |
|||
<field name="note" placeholder="Location Description"/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,18 @@ |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<odoo> |
|||
<record id="view_order_form_inherit" model="ir.ui.view"> |
|||
<field name="name">fleet.vehicle.inherited</field> |
|||
<field name="model">fleet.vehicle</field> |
|||
<field name="inherit_id" ref="fleet.fleet_vehicle_view_form"/> |
|||
<field name="arch" type="xml"> |
|||
<xpath expr="//field[@name='first_contract_date']" |
|||
position="replace"> |
|||
<field name="first_contract_date" invisible="1"/> |
|||
</xpath> |
|||
<xpath expr="//field[@name='first_contract_date']" |
|||
position="before"> |
|||
<field name="registration_date"/> |
|||
</xpath> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,44 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_location_details_tree" model="ir.ui.view"> |
|||
<field name="name">location.details.tree</field> |
|||
<field name="model">location.details</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="location_name"/> |
|||
<field name="location_area_unit" optional="hide"/> |
|||
<field name="location_area"/> |
|||
<field name="location_type"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
<record id="view_location_details_form" model="ir.ui.view"> |
|||
<field name="name">location.details.form</field> |
|||
<field name="model">location.details</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<sheet> |
|||
<h1> |
|||
<field name="location_name"/> |
|||
</h1> |
|||
<group> |
|||
<group> |
|||
<field name="location_address"/> |
|||
<field name="location_area"/> |
|||
</group> |
|||
<group> |
|||
<field name="location_type"/> |
|||
<field name="location_area_unit"/> |
|||
</group> |
|||
</group> |
|||
<field name="note" placeholder="Location Description"/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,177 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Action Menu under Crops--> |
|||
<record id="action_crop_details" model="ir.actions.act_window"> |
|||
<field name="name">Crops</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">crop.requests</field> |
|||
<field name="view_mode">kanban,tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Crop Request |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<!-- Action Menu under rental--> |
|||
<record id="action_vehicle_rental" model="ir.actions.act_window"> |
|||
<field name="name">Vehicle Rental</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">vehicle.rental</field> |
|||
<field name="view_mode">tree,form,kanban</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Vehicle Rental Request |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="action_animal_rental" model="ir.actions.act_window"> |
|||
<field name="name">Vehicle Rental</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">animal.rental</field> |
|||
<field name="view_mode">tree,form,kanban</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Animal Rental Request |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<!-- Action Menu under Disease & Pesticides--> |
|||
<record id="action_pest_request" model="ir.actions.act_window"> |
|||
<field name="name">Pesticide Request</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">pest.request</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Pest Request |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="action_pest_details" model="ir.actions.act_window"> |
|||
<field name="name">Pesticide Details</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">pest.details</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Pesticide |
|||
</p> |
|||
</field> |
|||
</record> |
|||
<!-- Action of menu Damage and Loss--> |
|||
<record id="action_damage_loss" model="ir.actions.act_window"> |
|||
<field name="name">Damage and Loss</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">damage.loss</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Damage and Loss |
|||
</p> |
|||
</field> |
|||
</record> |
|||
<!-- Action of menu Reporting--> |
|||
<record id="action_crop_report" model="ir.actions.act_window"> |
|||
<field name="name">Crop Report</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">crop.report.wizard</field> |
|||
<field name="view_mode">form</field> |
|||
<field name="view_id" ref="crop_report_view_form"/> |
|||
<field name="target">new</field> |
|||
</record> |
|||
<record id="action_pest_report" model="ir.actions.act_window"> |
|||
<field name="name">Pest Report</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">pest.report.wizard</field> |
|||
<field name="view_mode">form</field> |
|||
<field name="view_id" ref="pest_report_view_form"/> |
|||
<field name="target">new</field> |
|||
</record> |
|||
|
|||
<!-- Action of menu under configuration--> |
|||
<record id="action_seed_details" model="ir.actions.act_window"> |
|||
<field name="name">Seeds</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">seed.details</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Seed |
|||
</p> |
|||
</field> |
|||
</record> |
|||
<record id="action_animal_details" model="ir.actions.act_window"> |
|||
<field name="name">Animals</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">animal.details</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Animal |
|||
</p> |
|||
</field> |
|||
</record> |
|||
<record id="action_location_details" model="ir.actions.act_window"> |
|||
<field name="name">Locations</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">location.details</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Location |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="action_vehicle_details" model="ir.actions.act_window"> |
|||
<field name="name">Vehicles</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">vehicle.details</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Vehicle |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="action_tags_details" model="ir.actions.act_window"> |
|||
<field name="name">Tags</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">agr.tag</field> |
|||
<field name="view_mode">tree,form</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Tag |
|||
</p> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="action_farmer_details" model="ir.actions.act_window"> |
|||
<field name="name">Farmers</field> |
|||
<field name="type">ir.actions.act_window</field> |
|||
<field name="res_model">farmer.details</field> |
|||
<field name="view_mode">kanban,form,tree</field> |
|||
<field name="context">{'search_default_available':1}</field> |
|||
<field name="help" type="html"> |
|||
<p class="o_view_nocontent_smiling_face"> |
|||
Create Your First Farmer |
|||
</p> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,127 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<!-- Root Menu--> |
|||
|
|||
<menuitem id="menu_agriculture_management_root" |
|||
name="Agriculture Management" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_crop_root" |
|||
name="Crops" |
|||
parent="menu_agriculture_management_root" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_rental_root" |
|||
name="Rentals" |
|||
parent="menu_agriculture_management_root" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_calamities" |
|||
name="Damage and Loss" |
|||
parent="menu_agriculture_management_root" |
|||
action="action_damage_loss" |
|||
sequence="30"/> |
|||
|
|||
<menuitem id="menu_disease_and_pest_root" |
|||
name="Disease and Pesticides" |
|||
parent="menu_agriculture_management_root" |
|||
sequence="50"/> |
|||
|
|||
<menuitem id="menu_reporting_root" |
|||
name="Reporting" |
|||
parent="menu_agriculture_management_root" |
|||
groups="agriculture_management_odoo.group_agriculture_admin" |
|||
sequence="50"/> |
|||
|
|||
<menuitem id="menu_configuration_root" |
|||
name="Configuration" |
|||
parent="menu_agriculture_management_root" |
|||
groups="agriculture_management_odoo.group_agriculture_admin" |
|||
sequence="100"/> |
|||
|
|||
<!-- menu under Crops--> |
|||
<menuitem id="menu_crop_request" |
|||
name="Crop Request" |
|||
parent="menu_crop_root" |
|||
action="action_crop_details" |
|||
sequence="20"/> |
|||
|
|||
<!-- menu under rentals--> |
|||
<menuitem id="menu_vehicle_rental" |
|||
name="Vehicle Rentals" |
|||
parent="menu_rental_root" |
|||
action="action_vehicle_rental" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_animal_rental" |
|||
name="Animal Rentals" |
|||
parent="menu_rental_root" |
|||
action="action_animal_rental" |
|||
sequence="20"/> |
|||
|
|||
|
|||
<!--menu under Disease and Pesticides--> |
|||
|
|||
<menuitem id="menu_pest_request" |
|||
name="Pesticide Request" |
|||
parent="menu_disease_and_pest_root" |
|||
action="action_pest_request" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_pest_details" |
|||
name="Pesticides Details" |
|||
parent="menu_disease_and_pest_root" |
|||
action="action_pest_details" |
|||
sequence="20"/> |
|||
|
|||
<!--menu under Reporting --> |
|||
<menuitem id="menu_crop_reporting" |
|||
name="Crop Reporting" |
|||
parent="menu_reporting_root" |
|||
action="action_crop_report" |
|||
sequence="10"/> |
|||
|
|||
<menuitem id="menu_pest_reporting" |
|||
name="Pest Reporting" |
|||
parent="menu_reporting_root" |
|||
action="action_pest_report" |
|||
sequence="10"/> |
|||
|
|||
<!--menu under configuration --> |
|||
|
|||
<menuitem id="menu_seed_conf" |
|||
name="Seed" |
|||
parent="menu_configuration_root" |
|||
action="action_seed_details" |
|||
sequence="10"/> |
|||
|
|||
<menuitem id="menu_farmer_conf" |
|||
name="Farmers" |
|||
parent="menu_configuration_root" |
|||
action="action_farmer_details" |
|||
sequence="12"/> |
|||
|
|||
<menuitem id="menu_animal_conf" |
|||
name="Animals" |
|||
parent="menu_configuration_root" |
|||
action="action_animal_details" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_location_conf" |
|||
name="Locations" |
|||
parent="menu_configuration_root" |
|||
action="action_location_details" |
|||
sequence="20"/> |
|||
|
|||
<menuitem id="menu_vehicle_conf" |
|||
name="Vehicles" |
|||
parent="menu_configuration_root" |
|||
action="action_vehicle_details" |
|||
sequence="15"/> |
|||
|
|||
<menuitem id="menu_tags_conf" |
|||
name="Tags" |
|||
parent="menu_configuration_root" |
|||
action="action_tags_details" |
|||
sequence="25"/> |
|||
</odoo> |
@ -0,0 +1,52 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
|
|||
<record id="view_pest_details_tree" model="ir.ui.view"> |
|||
<field name="name">pest.details.tree</field> |
|||
<field name="model">pest.details</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="pest_name"/> |
|||
<field name="pest_expiry_date"/> |
|||
<field name="pest_quantity"/> |
|||
<field name="pest_cost"/> |
|||
<field name="total_cost"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_pest_details_form" model="ir.ui.view"> |
|||
<field name="name">pest.details.form</field> |
|||
<field name="model">pest.details</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<sheet> |
|||
<group> |
|||
<group> |
|||
<field name="pest_name"/> |
|||
<field name="pest_expiry_date"/> |
|||
<field name="currency_id" invisible="1"/> |
|||
<field name="pest_quantity"/> |
|||
<field name="pest_cost" widget='monetary' |
|||
options="{'currency_field': 'currency_id'}" |
|||
optional="show"/> |
|||
<field name="total_cost" widget='monetary' |
|||
options="{'currency_field': 'currency_id'}" |
|||
optional="show"/> |
|||
</group> |
|||
<group> |
|||
<field name="pest_image" widget="image"/> |
|||
</group> |
|||
</group> |
|||
<field name="pest_description" |
|||
placeholder="Pesticide Description..............."/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |
@ -0,0 +1,78 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<odoo> |
|||
<record id="view_pest_request_tree" model="ir.ui.view"> |
|||
<field name="name">pest.request.tree</field> |
|||
<field name="model">pest.request</field> |
|||
<field name="arch" type="xml"> |
|||
<tree> |
|||
<field name="reference"/> |
|||
<field name="farmer_id"/> |
|||
<field name="crop_id"/> |
|||
<field name="location_id"/> |
|||
<field name="disease"/> |
|||
<field name="total_cost"/> |
|||
<field name="state"/> |
|||
</tree> |
|||
</field> |
|||
</record> |
|||
|
|||
<record id="view_pest_request_form" model="ir.ui.view"> |
|||
<field name="name">pest.request.form</field> |
|||
<field name="model">pest.request</field> |
|||
<field name="arch" type="xml"> |
|||
<form> |
|||
<header> |
|||
<button id="button_draft" name="action_draft" string="Draft" |
|||
type="object" class="oe_highlight" |
|||
states="rejected,approve"/> |
|||
<button id="button_pending" name="action_pending" |
|||
string="Submit" type="object" class="btn-primary" |
|||
states="draft"/> |
|||
<button id="button_approved" name="action_approved" |
|||
string="Approved" |
|||
class="btn-primary" |
|||
type="object" states="pending" |
|||
groups="agriculture_management_odoo.group_agriculture_admin"/> |
|||
<button id="button_rejected" name="action_rejected" |
|||
string="Reject" |
|||
class="btn-primary" |
|||
type="object" states="pending" |
|||
groups="agriculture_management_odoo.group_agriculture_admin"/> |
|||
<field name="state" widget="statusbar" |
|||
statusbar_visible="draft"/> |
|||
</header> |
|||
<sheet> |
|||
<h1> |
|||
<field name="reference"/> |
|||
</h1> |
|||
<group> |
|||
<group> |
|||
<field name="farmer_id"/> |
|||
<field name="crop_id"/> |
|||
<field name="disease"/> |
|||
<field name="pest_id"/> |
|||
<field name="currency_id" invisible="1"/> |
|||
<field name="total_cost" widget='monetary' |
|||
options="{'currency_field': 'currency_id'}" |
|||
optional="show"/> |
|||
</group> |
|||
<group> |
|||
<field name="request_date"/> |
|||
<field name="location_id"/> |
|||
<field name="pest_quantity"/> |
|||
<field name="pest_cost" widget='monetary' |
|||
options="{'currency_field': 'currency_id'}" |
|||
optional="show"/> |
|||
</group> |
|||
</group> |
|||
<field name="note" placeholder="Pesticide Description"/> |
|||
</sheet> |
|||
<div class="oe_chatter"> |
|||
<field name="message_follower_ids"/> |
|||
<field name="activity_ids"/> |
|||
<field name="message_ids"/> |
|||
</div> |
|||
</form> |
|||
</field> |
|||
</record> |
|||
</odoo> |