Merge branch 'dev' of https://gitee.com/jinan-pengyusen-data/gzth into dev_wang
This commit is contained in:
@@ -180,16 +180,16 @@ class YuthonFileProcessing(models.Model):
|
||||
@api.onchange('is_cold')
|
||||
def onchange_is_cold(self):
|
||||
if self.is_cold:
|
||||
self.onchange_company_id()
|
||||
self.onchange_company_id1()
|
||||
else:
|
||||
self.reference_cold = False
|
||||
|
||||
@api.onchange('company_id')
|
||||
def onchange_company_id(self):
|
||||
@api.onchange('company_id1')
|
||||
def onchange_company_id1(self):
|
||||
current_year = fields.Date.today().year
|
||||
self.reference_cold = False
|
||||
if self.company_id and self.company_id.name:
|
||||
company_name = self.company_id.name
|
||||
if self.company_id1 and self.company_id1.name:
|
||||
company_name = self.company_id1.name
|
||||
prefix_map = {
|
||||
'集团本部': '穗天投',
|
||||
'天河粮储': '天粮储司',
|
||||
@@ -201,7 +201,7 @@ class YuthonFileProcessing(models.Model):
|
||||
# 构建查询条件:同公司 + 同一年份的文号
|
||||
year_str = f"〔{current_year}〕"
|
||||
domain = [
|
||||
('company_id', '=', self.company_id.id),
|
||||
('company_id1', '=', self.company_id1.id),
|
||||
('reference_cold', 'like', f"{prefix}{year_str}%")
|
||||
]
|
||||
last_record = self.search(domain, order='reference_cold desc', limit=1)
|
||||
|
||||
@@ -176,8 +176,15 @@ class YuthonOfficial(models.Model):
|
||||
}
|
||||
}
|
||||
|
||||
@api.onchange('is_cold')
|
||||
def onchange_is_cold(self):
|
||||
if self.is_cold:
|
||||
self.onchange_company_id1()
|
||||
else:
|
||||
self.reference_cold = False
|
||||
|
||||
@api.onchange('company_id1')
|
||||
def onchange_company_id(self):
|
||||
def onchange_company_id1(self):
|
||||
current_year = fields.Date.today().year
|
||||
self.reference_cold = False
|
||||
if self.company_id1 and self.company_id1.name:
|
||||
@@ -190,26 +197,24 @@ class YuthonOfficial(models.Model):
|
||||
prefix = prefix_map.get(company_name)
|
||||
if not prefix:
|
||||
return
|
||||
|
||||
year_str = f"〔{current_year}〕"
|
||||
domain = [
|
||||
('company_id', '=', self.company_id1.id),
|
||||
('company_id1', '=', self.company_id1.id),
|
||||
('reference_cold', 'like', f"{prefix}{year_str}%")
|
||||
]
|
||||
last_record = self.search(domain, order='reference_cold desc', limit=1)
|
||||
# 计算下一个序号(格式化为3位数字:001、002...)
|
||||
base_num = 27 if (current_year == 2026 and company_name == "集团本部") else 1
|
||||
max_seq = 0
|
||||
if last_record and last_record.reference_cold:
|
||||
# 从现有文号中提取数字部分(如从"穗天物【2025】003号"提取"003")
|
||||
try:
|
||||
# 截取序号部分(假设格式固定为"前缀【年份】序号号")
|
||||
seq_str = last_record.reference_cold.split(year_str)[1].rsplit('号', 1)[0]
|
||||
last_seq = int(seq_str)
|
||||
next_seq = last_seq + 1
|
||||
except (IndexError, ValueError):
|
||||
next_seq = 1
|
||||
else:
|
||||
next_seq = 1
|
||||
seq_str = f"{next_seq}"
|
||||
self.reference_cold = f"{prefix}{year_str}{seq_str}号"
|
||||
max_seq = int(seq_str)
|
||||
except:
|
||||
max_seq = 0
|
||||
|
||||
next_seq = max(max_seq + 1, base_num)
|
||||
self.reference_cold = f"{prefix}{year_str}{next_seq}号"
|
||||
|
||||
def supervising_button(self):
|
||||
return {
|
||||
|
||||
@@ -77,16 +77,16 @@ class YuthonOfficialBranchParty(models.Model):
|
||||
@api.onchange('is_cold')
|
||||
def onchange_is_cold(self):
|
||||
if self.is_cold:
|
||||
self.onchange_company_id()
|
||||
self.onchange_company_id1()
|
||||
else:
|
||||
self.reference_cold = False
|
||||
|
||||
@api.onchange('company_id')
|
||||
def onchange_company_id(self):
|
||||
@api.onchange('company_id1')
|
||||
def onchange_company_id1(self):
|
||||
current_year = fields.Date.today().year
|
||||
self.reference_cold = False
|
||||
if self.company_id and self.company_id.name:
|
||||
company_name = self.company_id.name
|
||||
if self.company_id1 and self.company_id1.name:
|
||||
company_name = self.company_id1.name
|
||||
prefix_map = {
|
||||
'集团本部': '穗天投',
|
||||
'天河粮储': '天粮储司',
|
||||
@@ -95,14 +95,18 @@ class YuthonOfficialBranchParty(models.Model):
|
||||
prefix = prefix_map.get(company_name)
|
||||
if not prefix:
|
||||
return
|
||||
# 构建查询条件:同公司 + 同一年份的文号
|
||||
year_str = f"〔{current_year}〕"
|
||||
domain = [
|
||||
('company_id', '=', self.company_id.id),
|
||||
('company_id1', '=', self.company_id1.id),
|
||||
('reference_cold', 'like', f"{prefix}{year_str}%")
|
||||
]
|
||||
last_record = self.search(domain, order='reference_cold desc', limit=1)
|
||||
# 计算下一个序号(格式化为3位数字:001、002...)
|
||||
if last_record and last_record.reference_cold:
|
||||
# 从现有文号中提取数字部分(如从"穗天物【2025】003号"提取"003")
|
||||
try:
|
||||
# 截取序号部分(假设格式固定为"前缀【年份】序号号")
|
||||
seq_str = last_record.reference_cold.split(year_str)[1].rsplit('号', 1)[0]
|
||||
last_seq = int(seq_str)
|
||||
next_seq = last_seq + 1
|
||||
|
||||
@@ -77,16 +77,16 @@ class YuthonOfficialLabor(models.Model):
|
||||
@api.onchange('is_cold')
|
||||
def onchange_is_cold(self):
|
||||
if self.is_cold:
|
||||
self.onchange_company_id()
|
||||
self.onchange_company_id1()
|
||||
else:
|
||||
self.reference_cold = False
|
||||
|
||||
@api.onchange('company_id')
|
||||
def onchange_company_id(self):
|
||||
@api.onchange('company_id1')
|
||||
def onchange_company_id1(self):
|
||||
current_year = fields.Date.today().year
|
||||
self.reference_cold = False
|
||||
if self.company_id and self.company_id.name:
|
||||
company_name = self.company_id.name
|
||||
if self.company_id1 and self.company_id1.name:
|
||||
company_name = self.company_id1.name
|
||||
prefix_map = {
|
||||
'集团本部': '穗天投',
|
||||
'天河粮储': '天粮储司',
|
||||
@@ -95,27 +95,29 @@ class YuthonOfficialLabor(models.Model):
|
||||
prefix = prefix_map.get(company_name)
|
||||
if not prefix:
|
||||
return
|
||||
# 构建查询条件:同公司 + 同一年份的文号
|
||||
year_str = f"〔{current_year}〕"
|
||||
domain = [
|
||||
('company_id', '=', self.company_id.id),
|
||||
('company_id1', '=', self.company_id1.id),
|
||||
('reference_cold', 'like', f"{prefix}{year_str}%")
|
||||
]
|
||||
last_record = self.search(domain, order='reference_cold desc', limit=1)
|
||||
# 计算下一个序号(格式化为3位数字:001、002...)
|
||||
if last_record and last_record.reference_cold:
|
||||
# 从现有文号中提取数字部分(如从"穗天物【2025】003号"提取"003")
|
||||
try:
|
||||
# 截取序号部分(假设格式固定为"前缀【年份】序号号")
|
||||
seq_str = last_record.reference_cold.split(year_str)[1].rsplit('号', 1)[0]
|
||||
last_seq = int(seq_str)
|
||||
next_seq = last_seq + 1
|
||||
except (IndexError, ValueError):
|
||||
next_seq = 1
|
||||
if current_year == 2026 and company_name == '集团本部':
|
||||
next_seq = 27
|
||||
else:
|
||||
next_seq = 1
|
||||
else:
|
||||
next_seq = 1
|
||||
seq_str = f"{next_seq}"
|
||||
self.reference_cold = f"{prefix}{year_str}{seq_str}号"
|
||||
if current_year == 2026 and company_name == '集团本部':
|
||||
next_seq = 27
|
||||
else:
|
||||
next_seq = 1
|
||||
|
||||
self.reference_cold = f"{prefix}{year_str}{next_seq}号"
|
||||
|
||||
@api.onchange('is_meet')
|
||||
def _onchange_is_meet(self):
|
||||
|
||||
@@ -85,16 +85,16 @@ class YuthonOfficialParty(models.Model):
|
||||
@api.onchange('is_cold')
|
||||
def onchange_is_cold(self):
|
||||
if self.is_cold:
|
||||
self.onchange_company_id()
|
||||
self.onchange_company_id1()
|
||||
else:
|
||||
self.reference_cold = False
|
||||
|
||||
@api.onchange('company_id')
|
||||
def onchange_company_id(self):
|
||||
@api.onchange('company_id1')
|
||||
def onchange_company_id1(self):
|
||||
current_year = fields.Date.today().year
|
||||
self.reference_cold = False
|
||||
if self.company_id and self.company_id.name:
|
||||
company_name = self.company_id.name
|
||||
if self.company_id1 and self.company_id1.name:
|
||||
company_name = self.company_id1.name
|
||||
prefix_map = {
|
||||
'集团本部': '穗天投',
|
||||
'天河粮储': '天粮储司',
|
||||
@@ -106,12 +106,15 @@ class YuthonOfficialParty(models.Model):
|
||||
# 构建查询条件:同公司 + 同一年份的文号
|
||||
year_str = f"〔{current_year}〕"
|
||||
domain = [
|
||||
('company_id', '=', self.company_id.id),
|
||||
('company_id1', '=', self.company_id1.id),
|
||||
('reference_cold', 'like', f"{prefix}{year_str}%")
|
||||
]
|
||||
last_record = self.search(domain, order='reference_cold desc', limit=1)
|
||||
# 计算下一个序号(格式化为3位数字:001、002...)
|
||||
if last_record and last_record.reference_cold:
|
||||
# 从现有文号中提取数字部分(如从"穗天物【2025】003号"提取"003")
|
||||
try:
|
||||
# 截取序号部分(假设格式固定为"前缀【年份】序号号")
|
||||
seq_str = last_record.reference_cold.split(year_str)[1].rsplit('号', 1)[0]
|
||||
last_seq = int(seq_str)
|
||||
next_seq = last_seq + 1
|
||||
|
||||
@@ -68,6 +68,18 @@ class PropertyBankStatements(models.Model):
|
||||
elif record.your_own_unit in ['天河粮储']:
|
||||
record.company_id = self.env['res.company'].search([('name', '=', '天河粮储')], limit=1)
|
||||
|
||||
|
||||
def update_your_own_unit(self):
|
||||
selected_records = self.env["property.bank.statements"].browse(
|
||||
self._context.get('active_ids', self._context.get('active_id'))
|
||||
)
|
||||
for record in selected_records:
|
||||
company_config = self.env['yuthon.property.company'].sudo().search(
|
||||
[('rent_account', '=', record.your_own_account)], limit=1
|
||||
)
|
||||
if company_config and company_config.referred:
|
||||
record.your_own_unit = company_config.referred
|
||||
|
||||
def update_record(self):
|
||||
selected_records = self.env["property.bank.statements"].browse(
|
||||
self._context.get('active_ids', self._context.get('active_id'))
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
<field name="your_own_account" optional="hide"/>
|
||||
<field name="your_own_unit" optional="hide"/>
|
||||
<header>
|
||||
<button name="other" type="object" class="oe_highlight" string="其他"/>
|
||||
<button name="other" type="object" class="oe_highlight" string="其他"/>
|
||||
</header>
|
||||
<field name="name_account"/>
|
||||
<field name="bank_branch"/>
|
||||
@@ -223,4 +223,11 @@
|
||||
<field name="state">code</field>
|
||||
<field name="code">action = model.update_company_id()</field>
|
||||
</record>
|
||||
<record id="all_update_your_own_unit" model="ir.actions.server">
|
||||
<field name="name">更新账号单位</field>
|
||||
<field name="model_id" ref="yuthon_property.model_property_bank_statements"/>
|
||||
<field name="binding_model_id" ref="yuthon_property.model_property_bank_statements"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">action = model.update_your_own_unit()</field>
|
||||
</record>
|
||||
</odoo>
|
||||
@@ -545,7 +545,6 @@ class PropertyStatementsWizard(models.Model):
|
||||
return False
|
||||
|
||||
def classify_by_last_four(self, input_str):
|
||||
"""根据本方账号匹配 yuthon.property.company 中的收租公司账号,返回简称"""
|
||||
if not isinstance(input_str, str) or not input_str.strip():
|
||||
return ''
|
||||
account = input_str.strip()
|
||||
|
||||
Reference in New Issue
Block a user