You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
2.3 KiB
56 lines
2.3 KiB
# -*- coding: utf-8 -*-
|
|
###############################################################################
|
|
#
|
|
# Cybrosys Technologies Pvt. Ltd.
|
|
#
|
|
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
|
|
# Author: Lajina (odoo@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/>.
|
|
#
|
|
###############################################################################
|
|
import base64
|
|
|
|
from odoo import http
|
|
from odoo.http import request
|
|
|
|
|
|
class LegalCaseController(http.Controller):
|
|
"""Legal Case Controller"""
|
|
@http.route('/legal/case/register', type="http", auth="user", website=True)
|
|
def legal_case_register(self):
|
|
""" Returns Case Registration Form"""
|
|
return request.render(
|
|
'legal_case_management.legal_case_register_view')
|
|
|
|
@http.route('/submit/create/case', type='http', website=True, auth='user')
|
|
def create_case_register(self, **kw):
|
|
"""Creation of Cases"""
|
|
attached_files = request.httprequest.files.getlist('attachments')
|
|
case = request.env['case.registration'].sudo().create({
|
|
'client_id': request.env.user.partner_id.id,
|
|
'email': request.env.user.partner_id.email,
|
|
'contact_no': kw['contact'],
|
|
'description': kw['description'],
|
|
'case_category_id': int(kw['case_category']),
|
|
'company_id': request.env.company.id,
|
|
})
|
|
for attachment in attached_files:
|
|
request.env['ir.attachment'].sudo().create({
|
|
'name': attachment.filename,
|
|
'res_model': 'case.registration',
|
|
'res_id': case.id,
|
|
'type': 'binary',
|
|
'datas': base64.b64encode(attachment.read())
|
|
})
|
|
return request.render("legal_case_management.thanks_page")
|
|
|