diff --git a/sf_bf_connect/__init__.py b/sf_bf_connect/__init__.py index c081ee06..f719d7e8 100644 --- a/sf_bf_connect/__init__.py +++ b/sf_bf_connect/__init__.py @@ -1,2 +1,3 @@ # -*-coding:utf-8-*- from . import models +from . import controllers diff --git a/sf_bf_connect/__manifest__.py b/sf_bf_connect/__manifest__.py index 8e78b13f..612bc615 100644 --- a/sf_bf_connect/__manifest__.py +++ b/sf_bf_connect/__manifest__.py @@ -10,12 +10,9 @@ """, 'category': 'YZ', 'website': 'https://www.sf.cs.jikimo.com', - 'depends': ['account', 'sf_base', 'base'], + 'depends': ['account', 'sf_base', 'base', 'sale'], 'data': [ - 'views/sf_sync_config_settings_views.xml', - 'data/sf_cron.xml' - - + 'views/sale_process_order_view.xml' ], 'demo': [ ], diff --git a/sf_bf_connect/controllers/__init__.py b/sf_bf_connect/controllers/__init__.py new file mode 100644 index 00000000..4644261c --- /dev/null +++ b/sf_bf_connect/controllers/__init__.py @@ -0,0 +1 @@ +from .import controllers diff --git a/sf_bf_connect/controllers/controllers.py b/sf_bf_connect/controllers/controllers.py new file mode 100644 index 00000000..91304469 --- /dev/null +++ b/sf_bf_connect/controllers/controllers.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +import json +import logging +from datetime import date, timedelta +from odoo import http +from odoo.http import request +from odoo.addons.mrs_gateway_api.models.common import Common +from odoo.addons.mrs_gateway_api.models.basicdata_str import BasicDataStr + + +class Sf_Bf_Connect(http.Controller): + + @http.route('/api/bfm_process_order/list', type='json', auth='none', methods=['GET', 'POST'], csrf=False, + cors="*") + def get_bfm_process_order_list(self, **kw): + """ + 获取业务平台传送来的业务平台订单 + :param kw: + :return: + """ + result = json.loads('bfm_process_order_list') + for item in result: + self.env['mrs.production.process'].create({ + "id": item['id'], + "model_file": item['model_file'], + "model_name": item['model_name'], + "type": item['type'], + "surface_technics": item['surface_technics'], + "unit_price": item['unit_price'], + "amount": item['amount'], + "money": item['money'] + }) diff --git a/sf_bf_connect/models/__init__.py b/sf_bf_connect/models/__init__.py index 176b8cbe..b6c1e8a8 100644 --- a/sf_bf_connect/models/__init__.py +++ b/sf_bf_connect/models/__init__.py @@ -1,3 +1,2 @@ -# from . import sf_process_order - +from . import sf_process_order diff --git a/sf_bf_connect/models/sf_process_order.py b/sf_bf_connect/models/sf_process_order.py index acff902a..e3947692 100644 --- a/sf_bf_connect/models/sf_process_order.py +++ b/sf_bf_connect/models/sf_process_order.py @@ -2,38 +2,33 @@ from odoo import models,fields from odoo.exceptions import ValidationError -class Order(models.Model): - _name = 'sf.order' - - _inherit = ['portal.mixin', 'mail.thread', 'mail.activity.mixin', 'utm.mixin'] +class bfmOrderLine(models.Model): + _name = 'sf.bfm.order.line' _description = '业务平台订单' - order_number = fields.Char('订单号') - date_order = fields.Datetime('订购日期') - validity_date = fields.Date('到期') - partner_id = fields.Many2one( - 'res.partner', string='客户', - domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]", ) - - sale_order_template_id = fields.Many2one('sf.order.template', '报价单模板') - pricelist_id = fields.Many2one('sf.pricelist', string='付款条款', ) - deadline_of_delivery= fields.Datetime('交货截止日期') - order_line = fields.One2many('sale.order.line', 'order_id', string='Order Lines', states={'cancel': [('readonly', True)], 'done': [('readonly', True)]}, copy=True, auto_join=True) + model_file = fields.Binary('模型文件', attachment=False) + model_name = fields.char('模型名称') + type = fields.Many2one('mrs.materials.model', '型号') + surface_technics = fields.Many2one('mrs.production.process', string='表面工艺') + # technological_parameter = fields.Many2one('',string='工艺参数') + unit_price = fields.Float('单价') + amount = fields.Integer('数量') + money = fields.Float('金额') + + +class sale(models.Model): + _inherit = 'sale.order' + + bfm_process_order_ids = fields.Many2one('sf.bfm.order.line', string='业务平台订单') + + + + + -class OrderTemplate(models.Model): - _name = "sf.order.template" - _description = "报价单模板" - name = fields.Char('名称', required=True) - active = fields.Boolean('有效', default=True) -class Pricelist(models.Model): - _name = "sf.pricelist" - _description = "付款条款" - - name = fields.Char('名称') - active = fields.Boolean('有效', default=True) diff --git a/sf_bf_connect/models/sf_process_order_line.py b/sf_bf_connect/models/sf_process_order_line.py deleted file mode 100644 index 3ffd7bcf..00000000 --- a/sf_bf_connect/models/sf_process_order_line.py +++ /dev/null @@ -1,20 +0,0 @@ -# -*- coding: utf-8 -*- -# Part of Odoo. See LICENSE file for full copyright and licensing details. - -from datetime import timedelta - -from odoo import api, fields, models, _ -from odoo.exceptions import UserError -from odoo.tools.misc import get_lang -from odoo.osv import expression -from odoo.tools import float_is_zero, float_compare, float_round - - -class OrderLine(models.Model): - _name = 'sf.order.line' - _description = '订单行' - - order_id = fields.Many2one('sf.order') - name = fields.Text(string='说明', required=True) - product_uom_qty = fields.Float('单价') - diff --git a/sf_bf_connect/views/bf_process_order_view.xml b/sf_bf_connect/views/bf_process_order_view.xml deleted file mode 100644 index 9ea0c097..00000000 --- a/sf_bf_connect/views/bf_process_order_view.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - 业务平台订单 - sale.order - tree,form,pivot,graph - [] - {} - - - [业务平台订单] 还没有哦!点左上角的[创建]按钮,沙发归你了! - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/sf_bf_connect/views/sale_process_order_view.xml b/sf_bf_connect/views/sale_process_order_view.xml new file mode 100644 index 00000000..898ade1b --- /dev/null +++ b/sf_bf_connect/views/sale_process_order_view.xml @@ -0,0 +1,18 @@ + + + + + sale.order + + + + + + + + + + + + + \ No newline at end of file
- [业务平台订单] 还没有哦!点左上角的[创建]按钮,沙发归你了! -
-