添加功能

This commit is contained in:
zhouzhou
2024-12-11 14:49:22 +08:00
parent 705cceddf8
commit 2ae9ed2883
20 changed files with 43 additions and 34 deletions
-7
View File
@@ -18,13 +18,6 @@
'views/yuthon_duty_arrangement_views.xml',
'views/yuthon_duty_summary_views.xml',
'views/yuthon_duty_setting_views.xml',
'views/yuthon_duty_plan_views.xml',
'views/yuthon_abnormal_approval_views.xml',
'views/yuthon_abnormal_setting_views.xml',
'views/yuthon_adjustments_approval_views.xml',
'views/yuthon_shift_approval_views.xml',
],
'installable': True,
'application': True,
-6
View File
@@ -1,8 +1,2 @@
from . import yuthon_duty_arrangement
from . import yuthon_duty_plan
from . import yuthon_duty_setting
from . import yuthon_duty_summary
from . import yuthon_adjustments_approval
from . import yuthon_abnormal_approval
from . import yuthon_abnormal_setting
from . import yuthon_shift_approval
@@ -1,11 +1,3 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_yuthon_duty_arrangement,yuthon.duty.arrangement,model_yuthon_duty_arrangement,base.group_user,1,1,1,1
access_yuthon_duty_plan,yuthon.duty.plan,model_yuthon_duty_plan,base.group_user,1,1,1,1
access_duty_plan_line,duty.plan.line,model_duty_plan_line,base.group_user,1,1,1,1
access_yuthon_duty_class_setting,yuthon.duty.class.setting,model_yuthon_duty_class_setting,base.group_user,1,1,1,1
access_yuthon_duty_summary,yuthon.duty.summary,model_yuthon_duty_summary,base.group_user,1,1,1,1
access_yuthon_adjustments_approval,yuthon.adjustments.approval,model_yuthon_adjustments_approval,base.group_user,1,1,1,1
access_yuthon_abnormal_approval,yuthon.abnormal.approval,model_yuthon_abnormal_approval,base.group_user,1,1,1,1
access_yuthon_abnormal_setting,yuthon.abnormal.setting,model_yuthon_abnormal_setting,base.group_user,1,1,1,1
access_yuthon_shift_approval,yuthon.shift.approval,model_yuthon_shift_approval,base.group_user,1,1,1,
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_yuthon_duty_arrangement yuthon.duty.arrangement model_yuthon_duty_arrangement base.group_user 1 1 1 1
access_yuthon_duty_plan yuthon.duty.plan model_yuthon_duty_plan base.group_user 1 1 1 1
access_duty_plan_line duty.plan.line model_duty_plan_line base.group_user 1 1 1 1
access_yuthon_duty_class_setting yuthon.duty.class.setting model_yuthon_duty_class_setting base.group_user 1 1 1 1
3 access_yuthon_duty_summary yuthon.duty.summary model_yuthon_duty_summary base.group_user 1 1 1 1
access_yuthon_adjustments_approval yuthon.adjustments.approval model_yuthon_adjustments_approval base.group_user 1 1 1 1
access_yuthon_abnormal_approval yuthon.abnormal.approval model_yuthon_abnormal_approval base.group_user 1 1 1 1
access_yuthon_abnormal_setting yuthon.abnormal.setting model_yuthon_abnormal_setting base.group_user 1 1 1 1
access_yuthon_shift_approval yuthon.shift.approval model_yuthon_shift_approval base.group_user 1 1 1
+6
View File
@@ -36,6 +36,12 @@
'views/card_approval.xml',
'views/attendance_scheme.xml',
'views/duty_approval.xml',
'views/yuthon_duty_setting_views.xml',
'views/yuthon_duty_plan_views.xml',
'views/yuthon_abnormal_approval_views.xml',
'views/yuthon_abnormal_setting_views.xml',
'views/yuthon_adjustments_approval_views.xml',
'views/yuthon_shift_approval_views.xml',
'views/all_attendance_menu.xml',
],
+7
View File
@@ -15,6 +15,13 @@ from . import yuthon_shift_planning
from . import yuthon_run_planning
from . import duty_approval
from . import yuthon_customer_approval
from . import yuthon_duty_plan
from . import yuthon_duty_setting
from . import yuthon_adjustments_approval
from . import yuthon_abnormal_approval
from . import yuthon_abnormal_setting
from . import yuthon_shift_approval
# from odoo.tools import SQL
@@ -17,6 +17,7 @@ class YuthonDutyPlan(models.Model):
def auto_duty_plan(self):
role_a = self.env['planning.role'].search([('name', '=', '联安粮库')], limit=1)
role_template_a = self.env['planning.slot.template'].search([('planning_name', '=', '白班'), ('role_id', '=', role_a.id)])
role_template_b = self.env['planning.slot.template'].search([('planning_name', '=', '值班'), ('role_id', '=', role_a.id)])
today = datetime.today().date()
first_day_of_month = today.replace(day=1)
if today.month < 12:
@@ -30,6 +31,15 @@ class YuthonDutyPlan(models.Model):
while current_date <= last_day_of_month:
self.create_planning_slot(employee, role_a, role_template_a, current_date)
current_date += timedelta(days=1)
current_date = first_day_of_month
for line in self.plan_line_ids.sorted('sequence'):
for employee in line.employee_ids:
self.create_planning_slot(employee, role_a, role_template_b, current_date)
current_date += timedelta(days=1)
return {
'type': 'ir.actions.client',
'tag': 'display_notification',
@@ -22,4 +22,12 @@ access_yuthon_all_run_line,all.run.line,model_yuthon_all_run_line,base.group_use
access_yuthon_other_line,yuthon.other.line,model_yuthon_other_line,base.group_user,1,1,1,1
access_yuthon_shift_ever_white_line,shift.ever.white.line,model_yuthon_shift_ever_white_line,base.group_user,1,1,1,1
access_yuthon_shift_ever_noon_line,shift.ever.noon.line,model_yuthon_shift_ever_noon_line,base.group_user,1,1,1,1
access_yuthon_customer_approval,yuthon.customer.approval,model_yuthon_customer_approval,base.group_user,1,1,1,1
access_yuthon_customer_approval,yuthon.customer.approval,model_yuthon_customer_approval,base.group_user,1,1,1,1
access_yuthon_duty_plan,yuthon.duty.plan,model_yuthon_duty_plan,base.group_user,1,1,1,1
access_duty_plan_line,duty.plan.line,model_duty_plan_line,base.group_user,1,1,1,1
access_yuthon_duty_class_setting,yuthon.duty.class.setting,model_yuthon_duty_class_setting,base.group_user,1,1,1,1
access_yuthon_adjustments_approval,yuthon.adjustments.approval,model_yuthon_adjustments_approval,base.group_user,1,1,1,1
access_yuthon_abnormal_approval,yuthon.abnormal.approval,model_yuthon_abnormal_approval,base.group_user,1,1,1,1
access_yuthon_abnormal_setting,yuthon.abnormal.setting,model_yuthon_abnormal_setting,base.group_user,1,1,1,1
access_yuthon_shift_approval,yuthon.shift.approval,model_yuthon_shift_approval,base.group_user,1,1,1,
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
22 access_yuthon_customer_approval yuthon.customer.approval model_yuthon_customer_approval base.group_user 1 1 1 1
23 access_yuthon_duty_plan yuthon.duty.plan model_yuthon_duty_plan base.group_user 1 1 1 1
24 access_duty_plan_line duty.plan.line model_duty_plan_line base.group_user 1 1 1 1
25 access_yuthon_duty_class_setting yuthon.duty.class.setting model_yuthon_duty_class_setting base.group_user 1 1 1 1
26 access_yuthon_adjustments_approval yuthon.adjustments.approval model_yuthon_adjustments_approval base.group_user 1 1 1 1
27 access_yuthon_abnormal_approval yuthon.abnormal.approval model_yuthon_abnormal_approval base.group_user 1 1 1 1
28 access_yuthon_abnormal_setting yuthon.abnormal.setting model_yuthon_abnormal_setting base.group_user 1 1 1 1
29 access_yuthon_shift_approval yuthon.shift.approval model_yuthon_shift_approval base.group_user 1 1 1
30
31
32
33
@@ -4,7 +4,7 @@
<field name="name">yuthon.duty.plan.tree</field>
<field name="model">yuthon.duty.plan</field>
<field name="arch" type="xml">
<tree string="值班计划">
<tree string="排班安排">
<field name="name"/>
<field name="start_index_time"/>
<field name="end_index_time"/>
@@ -16,7 +16,7 @@
<field name="name">yuthon.duty.plan.form</field>
<field name="model">yuthon.duty.plan</field>
<field name="arch" type="xml">
<form string="值班计划">
<form string="排班安排">
<header>
<button name="auto_duty_plan" type="object" string="安排值班" class="oe_highlight"/>
</header>
@@ -57,7 +57,7 @@
</field>
</record>
<record id="view_yuthon_duty_plan_action" model="ir.actions.act_window">
<field name="name">值班计划</field>
<field name="name">排班安排</field>
<field name="res_model">yuthon.duty.plan</field>
<field name="view_mode">tree,form</field>
</record>
-1
View File
@@ -10,7 +10,6 @@
'payment', 'purchase', 'stock',
'resource', 'yuthon_hr_employee_approval',
'planning', 'ks_dashboard_ninja',
'yuthon_duty_plan',
],
'data': [
'security/ir.model.access.csv',
+8 -8
View File
@@ -178,7 +178,7 @@
<menuitem id="menu_hr_attendance_duty_plan_board"
name="排班安排"
parent="menu_hr_attendance_duty_summary_menu_board"
action="yuthon_duty_plan.view_yuthon_duty_plan_action"
action="yuthon_hr_attendance.view_yuthon_duty_plan_action"
sequence="1"/>
<menuitem id="menu_hr_attendance_duty_summary_board"
name="排班计划"
@@ -193,7 +193,7 @@
<!-- <menuitem id="menu_hr_attendance_summary_root_board"-->
<!-- name="值班汇总"-->
<!-- parent="menu_hr_attendance_duty_summary_menu_board"-->
<!-- action="yuthon_duty_plan.view_yuthon_duty_summary_action"-->
<!-- action="yuthon_hr_attendance.view_yuthon_duty_summary_action"-->
<!-- sequence="15"/>-->
<menuitem id="menu_hr_attendance_duty_summary_flow_board"
name="流程"
@@ -203,17 +203,17 @@
name="值班调休"
parent="menu_hr_attendance_duty_summary_flow_board"
sequence="1"
action="yuthon_duty_plan.view_yuthon_adjustments_approval_action"/>
action="yuthon_hr_attendance.view_yuthon_adjustments_approval_action"/>
<menuitem id="menu_yuthon_abnormal_approval_board"
name="值班补卡"
parent="menu_hr_attendance_duty_summary_flow_board"
sequence="3"
action="yuthon_duty_plan.view_yuthon_abnormal_approval_action"/>
action="yuthon_hr_attendance.view_yuthon_abnormal_approval_action"/>
<menuitem id="menu_yuthon_shift_approval_board"
name="值班换班"
parent="menu_hr_attendance_duty_summary_flow_board"
sequence="5"
action="yuthon_duty_plan.view_yuthon_shift_approval_action"/>
action="yuthon_hr_attendance.view_yuthon_shift_approval_action"/>
<menuitem id="menu_yuthon_duty_summary_setting"
name="配置"
parent="menu_hr_attendance_duty_summary_menu_board"
@@ -222,12 +222,12 @@
<!-- name="值班说明"-->
<!-- parent="menu_yuthon_duty_summary_setting"-->
<!-- sequence="1"-->
<!-- action="yuthon_duty_plan.action_yuthon_duty_setting"/>-->
<!-- action="yuthon_hr_attendance.action_yuthon_duty_setting"/>-->
<menuitem id="menu_yuthon_duty_shows_class_board"
name="班组配置"
parent="menu_yuthon_duty_summary_setting"
sequence="2"
action="yuthon_duty_plan.action_yuthon_duty_class_setting"/>
action="yuthon_hr_attendance.action_yuthon_duty_class_setting"/>
<menuitem id="menu_yuthon_duty_action_planning_role_board"
name="班次名称"
parent="menu_yuthon_duty_summary_setting"
@@ -242,7 +242,7 @@
name="值班补卡次数"
parent="menu_yuthon_duty_summary_setting"
sequence="15"
action="yuthon_duty_plan.view_yuthon_abnormal_setting_action"/>
action="yuthon_hr_attendance.view_yuthon_abnormal_setting_action"/>
<!-- 计划相关 -->
<menuitem id="menu_hr_attendance_approval_request_board"