加班归档导出
This commit is contained in:
@@ -15,6 +15,7 @@ class OvertimeCarryover(models.Model):
|
||||
employee_id = fields.Many2one(related='over_line_id.employee_id', string='员工', store=True)
|
||||
department_id = fields.Many2one(related='over_line_id.department_id', string='部门', store=True)
|
||||
carry_result = fields.Selection(related='over_line_id.carry_result', string='结转结果', store=True)
|
||||
carry_forward_state = fields.Selection(related='over_line_id.carry_forward_state', string='结转状态', store=True)
|
||||
over_line_id1 = fields.Many2one('vacation.over.line', string='加班记录(销假)')
|
||||
carry_forward_date = fields.Date(string="结转日期")
|
||||
# carry_forward_date1 = fields.Date(string="动态结转日期")
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
<field name="name">overtime.carryover.tree1</field>
|
||||
<field name="model">overtime.carryover</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="结转明细" default_order="this_month desc" editable="bottom" create="false" delete="false" js_class="custom_overtime_export_button">
|
||||
<tree string="结转明细" default_order="this_month desc" editable="bottom" create="false" delete="false">
|
||||
<field name="over_line_id" column_invisible="1"/>
|
||||
<field name="over_line_id1" column_invisible="1"/>
|
||||
<field name="leave_id" column_invisible="1"/>
|
||||
@@ -39,8 +39,7 @@
|
||||
<field name="last_month"/>
|
||||
<field name="carry_forward_quantity" sum = "Total"/>
|
||||
<field name="this_month" options='{ "fg_color": "blue"}'/>
|
||||
<field name="carry_result"/>
|
||||
<field name="carryover_type" column_invisible="1"/>
|
||||
<field name="carry_forward_state"/>
|
||||
<field name="text" column_invisible="1"/>
|
||||
<field name="is_void" column_invisible="1"/>
|
||||
</tree>
|
||||
|
||||
@@ -251,6 +251,12 @@ class ExportDateWizard(models.TransientModel):
|
||||
else:
|
||||
prev_year, prev_month = year, month - 1
|
||||
|
||||
carry_forward_state_map = {
|
||||
'pending': '待结转',
|
||||
'completed': '已结转',
|
||||
'partial': '部分结转',
|
||||
}
|
||||
|
||||
active_records = self.env['vacation.overtime.active'].search([
|
||||
('select_year', '=', str(prev_year)),
|
||||
('select_month', '=', str(prev_month)),
|
||||
@@ -287,16 +293,16 @@ class ExportDateWizard(models.TransientModel):
|
||||
'end_time': (over_line.end_time + timedelta(hours=8)).strftime('%Y-%m-%d %H:%M:%S') if over_line and over_line.end_time else '',
|
||||
'carry_forward_date': carry.carry_forward_date,
|
||||
'carry_forward_quantity1': carry.carry_forward_quantity,
|
||||
'carry_result': '成功',
|
||||
'carry_forward_state': carry_forward_state_map.get(carry.carry_forward_state, carry.carry_forward_state or ''),
|
||||
})
|
||||
|
||||
if not export_data:
|
||||
raise UserError(f'在 {prev_year} 年 {prev_month} 月没有找到符合条件的加班归档记录')
|
||||
|
||||
fields_name = ['employee_id', 'department_id', 'start_time', 'end_time',
|
||||
'carry_forward_date', 'carry_forward_quantity1', 'carry_result']
|
||||
'carry_forward_date', 'carry_forward_quantity1', 'carry_forward_state']
|
||||
field_label = ['姓名', '部门', '加班开始时间', '加班结束时间',
|
||||
'结转日期', '结转时长', '结转结果']
|
||||
'结转日期', '结转时长', '结转状态']
|
||||
|
||||
data = {
|
||||
'report_name': '加班归档明细报表',
|
||||
|
||||
Reference in New Issue
Block a user