diff --git a/yuthon_hr_employee/models/hr_employee_page.py b/yuthon_hr_employee/models/hr_employee_page.py
index 044b6ca19..69ab35dac 100644
--- a/yuthon_hr_employee/models/hr_employee_page.py
+++ b/yuthon_hr_employee/models/hr_employee_page.py
@@ -10,7 +10,9 @@ class YuthonEmergencyContactLine(models.Model):
message_login_id = fields.Many2one('yuthon.message.login', string="关联信息登记")
name = fields.Char(string="姓名")
user_sfz = fields.Char(string="身份证")
- user_relationship = fields.Selection([("parents", "父母"), ("children", "子女"), ("spouse", "配偶"), ("spouse", "其他")], string="关系")
+ user_relationship = fields.Selection([("father", "父亲"), ("sisters", "姐妹"), ("spouse", "妻子"), ("daughter", "母女"),
+ ('husband', '丈夫'), ('sister', '姐姐'), ('brother', '兄弟'), ('sister_do', '妹妹'),
+ ('siblings', '姐弟'), ('mother', '母亲'), ('daughter', '母女')], string="关系")
workplace = fields.Char(string="工作单位")
post = fields.Char(string="岗位")
phone_number = fields.Char(string="手机号")
diff --git a/yuthon_hr_employee/wizard/hr_employee_wizard.py b/yuthon_hr_employee/wizard/hr_employee_wizard.py
index 14a1bb5e2..f5e4c3102 100644
--- a/yuthon_hr_employee/wizard/hr_employee_wizard.py
+++ b/yuthon_hr_employee/wizard/hr_employee_wizard.py
@@ -171,37 +171,135 @@ class YuthonHrEmployeeWizard(models.Model):
# employee_name.write({
# 'skills_certificates_ids': [(0, 0, certificate_data)]
# })
+ def employee_date(self, value):
+ date = pd.to_datetime(value, unit='d', origin='1899-12-30').date()
+ return date
- def salary_group_import(self,row):
- employee_id = self.env['hr.employee'].search([('name', '=', row[0].value)])
- social_base_on = row[2].value if row[2].value else None
- social_base_off = row[3].value if row[3].value else None
- last_year_salary = row[3].value if row[3].value else None
- employee_date = {
- 'social_base_on': social_base_on,
- 'social_base_off': social_base_off,
- 'last_year_salary':last_year_salary,
- }
- if employee_id:
- employee_id.write(employee_date)
def update_bank_account(self,row):
- employee_id = self.env['hr.employee'].search([('name', '=', row[2].value)])
- bank_account_id = self.env['res.partner.bank'].search([('acc_number', '=', row[1].value)])
- partner_id = self.env['res.partner'].search([('name', '=', row[2].value)], limit=1)
- if not partner_id:
- partner_id = self.env['res.partner'].create({
- 'name': row[2].value,
- 'phone': employee_id.mobile_phone,
- 'email': employee_id.work_email,
- 'company_id' : employee_id.company_id.id,
- })
- if not bank_account_id:
- bank_account_id = self.env['res.partner.bank'].create({
- 'acc_number': row[1].value,
- 'partner_id': partner_id.id,
+ contacts_list = []
+ employee_id = self.env['hr.employee'].search([('name', '=', row[1].value)])
+ company_id = self.env['res.company'].search([('name', '=', row[0].value)])
+ work_phone = row[4].value
+ mobile_phone = row[5].value
+ if row[6].value:
+ entry_date = self.employee_date(row[6].value)
+ else:
+ entry_date = None
+ if row[7].value:
+ confirmation_date = self.employee_date(row[7].value)
+ else:
+ confirmation_date = None
+ identification_id = row[9].value
+ if row[10].value:
+ user_number_start_time = self.employee_date(row[10].value)
+ else:
+ user_number_start_time = None
+ if row[11].value and row[11].value != "长期":
+ user_number_end_time = self.employee_date(row[11].value)
+ else:
+ user_number_end_time = None
+ user_type = row[17].value
+ if row[18].value:
+ retire_date = self.employee_date(row[18].value)
+ else:
+ retire_date = None
+
+ political_aspects_dict = {'中共党员': 'cpc_dang', '民盟': 'nld', '共青团员': 'league_member', '群众': 'people',
+ '': ''}
+ political_aspects = political_aspects_dict[row[20].value]
+ if row[21].value and row[21].value != "/":
+ dang_data = self.employee_date(row[21].value)
+ else:
+ dang_data = None
+ user_origin = row[22].value
+ user_location = row[23].value
+ if row[26].value:
+ open_start_time = self.employee_date(row[26].value)
+ else:
+ open_start_time = None
+ interrupt_work_month = row[27].value
+ cumulative_work_month = row[28].value
+ high_degree = row[29].value
+ high_degree2 = row[30].value
+ graduate_school = row[31].value
+ profession = row[32].value
+ job_lv = row[33].value
+
+ contract_id = self.env['hr.contract'].search([('employee_id', '=', employee_id.id)])
+ if row[24].value:
+ date_start = self.employee_date(row[24].value)
+ else:
+ date_start = None
+ date_end = row[25].value
+ if date_end == '无固定期限':
+ date_end = False
+ else:
+ date_end = self.employee_date(date_end)
+ contract_type_id = self.env['hr.contract.type'].search([('name', '=', row[34].value)])
+ if contract_id:
+ contract_id.write({
+ 'date_start': date_start,
+ 'date_end': date_end,
+ 'contract_type_id': contract_type_id.id,
})
+
+ name = row[36].value
+ relationship_dict = {
+ '父亲': 'father',
+ '姐妹': 'sisters',
+ '妻子': 'spouse',
+ '女儿': 'daughter',
+ '丈夫': 'husband',
+ '姐姐': 'sister',
+ '兄弟': 'brother',
+ '妹妹': 'sister_do',
+ '父母': 'parents',
+ '子女': 'children',
+ '姐弟': 'siblings',
+ '母亲': 'mother',
+ '母女': 'daughter',
+ }
+ if row[37].value:
+ user_relationship = relationship_dict[row[37].value]
+ else:
+ user_relationship = False
+ phone_number = row[38].value
+ archiving_agency = row[39].value
+ contacts_list.append([0, 0, {'name': name,
+ 'user_relationship': user_relationship,
+ 'phone_number': phone_number,
+ }])
+ write_uid = self.env['res.users'].search([('id', '=', employee_id.user_id.id)])
+
+ #
+ employee_date= {
+ 'company_id': company_id.id,
+ 'work_phone': work_phone,
+ 'mobile_phone': mobile_phone,
+ 'entry_date': entry_date,
+ 'dang_data':dang_data,
+ 'confirmation_date': confirmation_date,
+ 'user_number_start_time': user_number_start_time,
+ 'user_number_end_time': user_number_end_time,
+ 'retire_date': retire_date,
+ 'open_start_time': open_start_time,
+ 'identification_id': identification_id,
+ 'user_type': user_type,
+ 'political_aspects': political_aspects,
+ 'user_origin': user_origin,
+ 'user_location': user_location,
+ 'interrupt_work_month': interrupt_work_month,
+ 'cumulative_work_month': cumulative_work_month,
+ 'high_degree': high_degree,
+ 'high_degree2': high_degree2,
+ 'graduate_school': graduate_school,
+ 'profession': profession,
+ 'job_lv': job_lv,
+ 'write_uid': write_uid,
+ 'archiving_agency': archiving_agency,
+ 'emergency_contact_ids': contacts_list,
+ }
+ #
if employee_id:
- employee_id.write({
- 'bank_account_id': bank_account_id.id,
- })
+ employee_id.write(employee_date)
\ No newline at end of file
diff --git a/yuthon_issue/models/issue_library.py b/yuthon_issue/models/issue_library.py
index 79d2e6e73..77d65c9c7 100644
--- a/yuthon_issue/models/issue_library.py
+++ b/yuthon_issue/models/issue_library.py
@@ -72,14 +72,7 @@ class IssueLibrary(models.Model):
#
def _search_part_of_department(self, operator, value):
- if operator not in ('=', '!=') or not isinstance(value, bool):
- raise UserError(_('Operation not supported'))
user_employee = self._get_valid_employee_for_user()
- # Double negation
- if not value:
- operator = '!=' if operator == '=' else '='
- if not user_employee.department_id:
- return [('id', operator, user_employee.id)]
return (['!'] if operator == '!=' else []) + [('department_id', '=', user_employee.department_id.id)]
def _get_default_name_title(self):
diff --git a/yuthon_salary/static/others/salary_year_thtz.xlsx b/yuthon_salary/static/others/年终奖(天河投资).xlsx
similarity index 100%
rename from yuthon_salary/static/others/salary_year_thtz.xlsx
rename to yuthon_salary/static/others/年终奖(天河投资).xlsx
diff --git a/yuthon_salary/static/others/salary_year_thwg.xlsx b/yuthon_salary/static/others/年终奖(天河物管).xlsx
similarity index 100%
rename from yuthon_salary/static/others/salary_year_thwg.xlsx
rename to yuthon_salary/static/others/年终奖(天河物管).xlsx
diff --git a/yuthon_salary/static/others/salary_year_thlc.xlsx b/yuthon_salary/static/others/年终奖(天河粮储).xlsx
similarity index 100%
rename from yuthon_salary/static/others/salary_year_thlc.xlsx
rename to yuthon_salary/static/others/年终奖(天河粮储).xlsx
diff --git a/yuthon_salary/wizard/salary_year_wizard.xml b/yuthon_salary/wizard/salary_year_wizard.xml
index 784fdf904..48f52fd8c 100644
--- a/yuthon_salary/wizard/salary_year_wizard.xml
+++ b/yuthon_salary/wizard/salary_year_wizard.xml
@@ -4,19 +4,19 @@
天河投资模板下载
self
- /yuthon_salary/static/others/salary_year_thtz.xlsx
+ /yuthon_salary/static/others/年终奖(天河投资).xlsx
天河物管模板下载
self
- /yuthon_salary/static/others/salary_year_thwg.xlsx
+ /yuthon_salary/static/others/年终奖(天河物管).xlsx
天河粮储模板下载
self
- /yuthon_salary/static/others/salary_year_thlc.xlsx
+ /yuthon_salary/static/others/年终奖(天河粮储).xlsx