summaryrefslogtreecommitdiff
path: root/indoteknik_custom/models/ir_actions_report.py
blob: 8363694533621f6f09e29fb34c3aad69f6ced4ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
from odoo import models
from odoo.http import request
import requests
class IrActionsReport(models.Model):
    _inherit = 'ir.actions.report'

    def _get_readable_fields(self):
        if self.env.context.get('active_model') == 'sale.order':
            self.send_to_telegram()
        return super()._get_readable_fields()

    def send_to_telegram(self):
        so_id = self.env.context.get('active_id')
        if so_id:
            sale_order = self.env['sale.order'].browse(so_id)
            if sale_order.amount_total < 50000000:
                return
            # ci_vita 7751529082:AAE9XsZa_Pj2Pi2IN1grX98WkwTaIt32pbI & 5081411103
            # iman 7094158106:AAHpWtYOMnA3Yqm_Fvrr3Vw7MrB45vLV9AY & 6592318498
            bot_name_iman = '7094158106:AAHpWtYOMnA3Yqm_Fvrr3Vw7MrB45vLV9AY'
            chat_id_iman = '-1002493002821'
            bot_name_vita = '7751529082:AAE9XsZa_Pj2Pi2IN1grX98WkwTaIt32pbI'
            chat_id_vita = '5081411103'
            apiURL = f'https://api.telegram.org/bot{bot_name_iman}/sendMessage'
            try:
                requests.post(apiURL, json={'chat_id': chat_id_iman, 'text': sale_order.name + " senilai Rp" + self.format_currency(sale_order.amount_total) + ' untuk customer ' + sale_order.partner_id.name + ' telah dibuat oleh sales ' +sale_order.user_id.name})
            except Exception as e:
                print(e)

            # id ci vita 79160
            # id iman 112718
            # partner = request.env['res.partner'].search([('id', '=', 112718)], limit=1)
            # telegram_data = {
            #         'tittle': sale_order.name,
            #         'about': sale_order.name,
            #         'user_id': partner,
            #         'id_data': sale_order.id,
            #         'username': '@' + sale_order.name.replace('/', '')
            #     }
            # channel_data = self.env['website.telegram'].search([('tittle', '=', sale_order.name)])
            # if channel_data:
            #     channel_data.send_to_telegram(sale_order.name + " Telah di print Oleh " + self.env.user.name)
            #     for pick in self:
            #         self._check_telegram(pick)
            # else:
            #     telegram = self.env['website.telegram'].create(telegram_data)
            #     telegram.create_channel(sale_order.name + " Telah di print Oleh " + self.env.user.name)

    def format_currency(self, number):
        number = int(number)
        return "{:,}".format(number).replace(',', '.')