-
- - This module adds a sidebar to the main screen. The sidebar has a list of all - installed apps similar to the home menu to ease navigation. Each user can define - in their profile the display of the sidebar. The options are to show the large - version, the small version, or hide the sidebar completely. In addition, an image - can be added for each company, which is displayed at the bottom of the sidebar. -
-
- Are you having troubles with your Odoo integration? Or do you feel
- your system lacks of essential features?
If your answer is YES
- to one of the above questions, feel free to contact us at anytime
- with your inquiry.
We are looking forward to discuss your
- needs and plan the next steps with you.
-
-
-
-
-
-
-
- - This module improves the design of the chatter and adds a user preference - to set the position of the chatter in the form view. Each user can define in - their profile the display of the chatter. The options are to show the chatter - on the side or at the bottom. -
-
- Are you having troubles with your Odoo integration? Or do you feel
- your system lacks of essential features?
If your answer is YES
- to one of the above questions, feel free to contact us at anytime
- with your inquiry.
We are looking forward to discuss your
- needs and plan the next steps with you.
-
-
-
-
-
-
-
- - This module gives you options to customize the color schema of your Odoo system. - You have options to edit the brand and the primary color as well as the context - colors (info, success, warning, danger). The options are also available for the - dark mode on Odoo Enterprise. -
-
- Are you having troubles with your Odoo integration? Or do you feel
- your system lacks of essential features?
If your answer is YES
- to one of the above questions, feel free to contact us at anytime
- with your inquiry.
We are looking forward to discuss your
- needs and plan the next steps with you.
-
-
-
-
-
-
-
- - This module adds an option to dialogs to expand it to full screen mode. - Each user can the initial state of the dialogs in their preferences. -
-
- Are you having troubles with your Odoo integration? Or do you feel
- your system lacks of essential features?
If your answer is YES
- to one of the above questions, feel free to contact us at anytime
- with your inquiry.
We are looking forward to discuss your
- needs and plan the next steps with you.
-
-
-
-
-
-
-
- - This module offers a mobile compatible design for Odoo Enterprise. Furthermore it - allows the user to define some design preferences. Each user can choose the size - of the sidebar. In addition, the background image of the home menu can be set - for each company. -
-
- Are you having troubles with your Odoo integration? Or do you feel
- your system lacks of essential features?
If your answer is YES
- to one of the above questions, feel free to contact us at anytime
- with your inquiry.
We are looking forward to discuss your
- needs and plan the next steps with you.
-
-
-
-
-
-
-
-更多模块或进群交流欢迎加微信:
-
-
\ No newline at end of file
diff --git a/xy_wechat-master/__init__.py b/xy_wechat-master/__init__.py
deleted file mode 100644
index 511a0ca3a..000000000
--- a/xy_wechat-master/__init__.py
+++ /dev/null
@@ -1,4 +0,0 @@
-# -*- coding: utf-8 -*-
-
-from . import controllers
-from . import models
\ No newline at end of file
diff --git a/xy_wechat-master/__manifest__.py b/xy_wechat-master/__manifest__.py
deleted file mode 100644
index 173b67072..000000000
--- a/xy_wechat-master/__manifest__.py
+++ /dev/null
@@ -1,41 +0,0 @@
-# -*- coding: utf-8 -*-
-{
- 'name': "Wechat Enterprise",
-
- 'summary': 'Wechat Enterprise',
-
- 'description': """
- Api and methods for Wechat Enterprise , which is used in Internal Enterprise Applications.
- Use pycrypto to replace Crypto.
- Need python version >= 3.7
- """,
-
- 'author': "funenc",
- 'website': "https://www.funenc.com",
-
- 'external_dependencies': {
- 'python': ['aiohttp', 'Crypto'],
- },
-
- # Categories can be used to filter modules in modules listing
- # Check https://github.com/odoo/odoo/blob/15.0/odoo/addons/base/data/ir_module_category_data.xml
- # for the full list
- 'category': 'Uncategorized',
- 'version': '0.1',
-
- # any module necessary for this one to work correctly
- 'depends': ['base', 'hr'],
- 'assets': {
- 'web.assets_backend': [
- 'wechat_enterprise/static/src/js/we_qrcode_widget.js',
- ]
- },
- # always loaded
- 'data': [
- 'security/ir.model.access.csv',
- 'views/company.xml',
- 'views/app.xml',
- 'views/log.xml',
- ],
- 'application': True
-}
diff --git a/xy_wechat-master/common/__init__.py b/xy_wechat-master/common/__init__.py
deleted file mode 100644
index 2c24d6f3e..000000000
--- a/xy_wechat-master/common/__init__.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from . import token_store
-from . import we_request
-from . import custom_encrypt
-from . import callback
diff --git a/xy_wechat-master/common/callback/WXBizMsgCrypt.py b/xy_wechat-master/common/callback/WXBizMsgCrypt.py
deleted file mode 100644
index 24a618962..000000000
--- a/xy_wechat-master/common/callback/WXBizMsgCrypt.py
+++ /dev/null
@@ -1,280 +0,0 @@
-#!/usr/bin/env python
-# -*- encoding:utf-8 -*-
-
-""" 对企业微信发送给企业后台的消息加解密示例代码.
-@copyright: Copyright (c) 1998-2014 Tencent Inc.
-
-"""
-# ------------------------------------------------------------------------
-import logging
-import base64
-import random
-import hashlib
-import time
-import struct
-from Crypto.Cipher import AES
-import xml.etree.cElementTree as ET
-import socket
-
-from . import ierror
-
-
-"""
-关于Crypto.Cipher模块,ImportError: No module named 'Crypto'解决方案
-请到官方网站 https://www.dlitz.net/software/pycrypto/ 下载pycrypto。
-下载后,按照README中的“Installation”小节的提示进行pycrypto安装。
-"""
-
-
-class FormatException(Exception):
- pass
-
-
-def throw_exception(message, exception_class=FormatException):
- """my define raise exception function"""
- raise exception_class(message)
-
-
-class SHA1:
- """计算企业微信的消息签名接口"""
-
- def getSHA1(self, token, timestamp, nonce, encrypt):
- """用SHA1算法生成安全签名
- @param token: 票据
- @param timestamp: 时间戳
- @param encrypt: 密文
- @param nonce: 随机字符串
- @return: 安全签名
- """
- try:
- sortlist = [token, timestamp, nonce, encrypt]
- sortlist.sort()
- sha = hashlib.sha1()
- sha.update("".join(sortlist).encode())
- return ierror.WXBizMsgCrypt_OK, sha.hexdigest()
- except Exception as e:
- logger = logging.getLogger()
- logger.error(e)
- return ierror.WXBizMsgCrypt_ComputeSignature_Error, None
-
-
-class XMLParse:
- """提供提取消息格式中的密文及生成回复消息格式的接口"""
-
- # xml消息模板
- AES_TEXT_RESPONSE_TEMPLATE = """
- 尊敬的用户,
- 您的有一个需要确认的
-