找到這個文件以後打開 HtkjtImport 類,該類繼承import基礎模塊api
class HtkjtImport(models.TransientModel): _inherit = "base_import.import"
代碼風格規範一點的也能夠本身新建一個方法,而後調用就能夠了app
@api.multi
def do(self, fields, columns, options, dryrun=False):code
self.ensure_one() self._cr.execute('SAVEPOINT import') try: data, import_fields = self._convert_import_data(fields, options) # Parse date and float field data = self._parse_import_data(data, import_fields, options) except ValueError as error: return { 'messages': [{ 'type': 'error', 'message': pycompat.text_type(error), 'record': False, }] } _logger.info('importing %d rows...', len(data)) name_create_enabled_fields = options.pop('name_create_enabled_fields', {}) model = self.env[self.res_model].with_context(import_file=True, name_create_enabled_fields=name_create_enabled_fields) import_result = model.load(import_fields, data) _logger.info('done') # If transaction aborted, RELEASE SAVEPOINT is going to raise # an InternalError (ROLLBACK should work, maybe). Ignore that. try: if dryrun: self._cr.execute('ROLLBACK TO SAVEPOINT import') # cancel all changes done to the registry/ormcache self.pool.reset_changes() else: self._cr.execute('RELEASE SAVEPOINT import') except psycopg2.InternalError: pass # 導入成功後更新插入映射列 if import_result['ids'] and options.get('headers'): BaseImportMapping = self.env['base_import.mapping'] for index, column_name in enumerate(columns): if column_name: # Update to latest selected field exist_records = BaseImportMapping.search( [('res_model', '=', self.res_model), ('column_name', '=', column_name)]) if exist_records: exist_records.write({'field_name': fields[index]}) else: BaseImportMapping.create({ 'res_model': self.res_model, 'column_name': column_name, 'field_name': fields[index] }) for da in data: print(da[1]) print(da[3]) data = { 'name': da[1], 'display_name': da[1], 'email': da[3], } partner = self.env['res.partner'].create(data) print(partner.id) data = { 'login': da[3], 'password': 123456, 'partner_id': partner.id, } user = self.env['res.users'].create(data) return import_result