This commit is contained in:
jinling.yang
2024-08-27 16:58:41 +08:00
3 changed files with 33 additions and 21 deletions

View File

@@ -19,7 +19,12 @@ class IrSequence(models.Model):
# date mode # date mode
dt = sequence_date or self._context.get('ir_sequence_date', fields.Date.today()) dt = sequence_date or self._context.get('ir_sequence_date', fields.Date.today())
seq_date = self.env['ir.sequence.date_range'].search( seq_date = self.env['ir.sequence.date_range'].search(
[('sequence_id', '=', self.id), ('date_from', '<=', dt), ('date_to', '>=', dt)], limit=1) [
('sequence_id', '=', self.id),
('date_from', '<=', dt),
('date_to', '>=', dt),
('date_range_period', '=', self.date_range_period)
], limit=1)
if not seq_date: if not seq_date:
if self.date_range_period: if self.date_range_period:
seq_date = self._create_date_range_seq_by_period(dt, self.date_range_period) seq_date = self._create_date_range_seq_by_period(dt, self.date_range_period)

View File

@@ -28,24 +28,31 @@ class StatusChange(models.Model):
raise UserError(_("请先至【产品】中创建【表面工艺参数】为%s的服务产品", ", ".join(server_product_none))) raise UserError(_("请先至【产品】中创建【表面工艺参数】为%s的服务产品", ", ".join(server_product_none)))
# 使用super()来调用原始方法(在本例中为'sale.order'模型的'action_confirm'方法) # 使用super()来调用原始方法(在本例中为'sale.order'模型的'action_confirm'方法)
res = super(StatusChange, self).action_confirm() try:
res = super(StatusChange, self).action_confirm()
# 原有方法执行后进行额外的操作如调用外部API # 原有方法执行后进行额外的操作如调用外部API
process_start_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S') process_start_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
config = self.env['res.config.settings'].get_values() config = self.env['res.config.settings'].get_values()
json1 = { json1 = {
'params': { 'params': {
'model_name': 'jikimo.process.order', 'model_name': 'jikimo.process.order',
'field_name': 'name', 'field_name': 'name',
'default_code': self.default_code, 'default_code': self.default_code,
'state': '加工中', 'state': '加工中',
'process_start_time': process_start_time, 'process_start_time': process_start_time,
}, },
} }
url1 = config['bfm_url_new'] + '/api/get/state/get_order' url1 = config['bfm_url_new'] + '/api/get/state/get_order'
requests.post(url1, json=json1, data=None) ret = requests.post(url1, json=json1, data=None)
logging.info('接口已经执行=============') ret = ret.json()
if not ret.get('error'):
logging.info('接口已经执行=============')
else:
logging.error('工厂加工同步订单状态失败 {}'.format(ret.text))
raise UserError('工厂加工同步订单状态失败')
except UserError as e:
logging.error('工厂加工同步订单状态失败 {}'.format(e))
raise UserError('工厂加工同步订单状态失败')
return res return res
def action_cancel(self): def action_cancel(self):

View File

@@ -387,9 +387,9 @@ class FunctionalToolAssemblyOrder(models.TransientModel):
lot_ids = self.env['stock.lot'].sudo().search([('rfid', '=', barcode)]) lot_ids = self.env['stock.lot'].sudo().search([('rfid', '=', barcode)])
if lot_ids: if lot_ids:
for lot_id in lot_ids: for lot_id in lot_ids:
if lot_id.quant_ids[-1].location_id.name in '刀具房': if lot_id.tool_material_status == '可用':
record.handle_code_id = lot_id.id record.handle_code_id = lot_id.id
elif lot_id.quant_ids[-1].location_id.name == '刀具组装位置': elif lot_id.quant_ids[-1].location_id.name in ['刀具组装位置']:
raise ValidationError('该刀柄已使用,请重新扫描!!!') raise ValidationError('该刀柄已使用,请重新扫描!!!')
else: else:
raise ValidationError('该刀柄未入库,请重新扫描!!!') raise ValidationError('该刀柄未入库,请重新扫描!!!')