添加功能

This commit is contained in:
zhou
2025-05-16 09:54:15 +08:00
parent ed0a048875
commit 86cdc9caaf
2 changed files with 15 additions and 4 deletions
@@ -405,7 +405,8 @@ class SoongWorkflowMixin(models.AbstractModel):
log_ids = record.log_ids.sorted('sequence')
if log_ids[-1].approval_state == '2':
raise UserError('当前状态不可以收回')
self.env['soong.workflow.record'].search([('code', '=', self.code)]).write({"employee_ids": self.env.user.employee_id.id,})
employee_id = self.env.user.employee_id.id
self.env['soong.workflow.record'].search([('code', '=', self.code)]).write({'employee_ids': [(6, 0, [employee_id])]})
log_ids[-1].unlink()
log_ids[-2].write({'approval_state': '1'})
record.write({'state': log_ids[-2].name})
+13 -3
View File
@@ -15,13 +15,13 @@ class YuthonWillTask(models.Model):
priority = fields.Selection([('general', '不紧急不重要'), ('important', '重要不紧急'),
('urgent', '紧急不重要'), ('very_urgent', '重要且紧急')], string='优先级')
user_id = fields.Many2one('res.users', string="创建人")
user_id = fields.Many2one('res.users', string="创建人", default=lambda self: self.env.user)
company_id = fields.Many2one('res.company', string="公司", default=lambda self: self.env.company)
task_content = fields.Text(string='任务内容')
remarks = fields.Text(string='备注')
creation_time = fields.Date(string='创建时间', default=fields.Date.today())
employee_ids = fields.Many2many('hr.employee', 'will_task_employee_rel', 'custom_id', 'employee_id',
string='人员', default=lambda self: self.env.user.employee_id, store=True, index=True)
string='人员', store=True, index=True)
employee_ids2 = fields.Many2many('hr.employee', 'will_task_employee_rel2', 'custom_id', 'employee_id',
string='司机', store=True, index=True)
users_ids = fields.Many2many('res.users', string='用户', store=True, index=True, default=lambda self: self.env.user)
@@ -29,7 +29,7 @@ class YuthonWillTask(models.Model):
task_time_ids = fields.Many2many('yuthon.task.time', string='提醒')
address = fields.Char(string='地点')
start_time = fields.Datetime(string='开始时间',default=lambda self: datetime.combine(datetime.now().date(), time(1, 0, 0)))
end_time = fields.Datetime(string='结束时间',default=lambda self: datetime.combine(datetime.now().date(), time(11, 0, 0)))
end_time = fields.Datetime(string='结束时间')
task_state = fields.Selection([('will', '待办'), ('done', '已办'), ('cancel', '取消')], default='will', string='状态', store=True)
@api.constrains('start_time', 'end_time')
@@ -38,6 +38,16 @@ class YuthonWillTask(models.Model):
if record.start_time and record.end_time and record.start_time > record.end_time:
raise models.ValidationError("开始时间不能大于结束时间!")
@api.model
def default_get(self, fields_list):
defaults = super().default_get(fields_list)
current_time = datetime.now()
if current_time.time() < time(12, 0, 0):
defaults["end_time"] = current_time.replace(hour=12, minute=0, second=0) - timedelta(hours=8)
else:
defaults["end_time"] = current_time.replace(hour=18, minute=0, second=0) - timedelta(hours=8)
return defaults
@api.onchange('employee_ids', 'user_id')
def _onchange_employee_ids(self):
user_ids = []