-
-
Notifications
You must be signed in to change notification settings - Fork 247
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[14.0][IMP] l10n_br_fiscal: add operation line/product tags match #3418
base: 14.0
Are you sure you want to change the base?
Conversation
Hi @renatonlima, |
@DiegoParadeda pode implementar alguns testes e uns dados de demo? |
De fato sinto falta de algo mais especifico para definir como filtro de operação ou linha de operação fiscal, mas será que precisamos de mais um modelo ? |
Poderia sugerir alguma outra opção? Das que pensamos e não fica legal:
Essas tags dão mais versatilidade para casos complexos, onde existem mais de uma CFOP para a mesma operação, por exemplo a exportação com as CFOPs:
A ideia é que o usuário nunca tenha que selecionar a linha da operação manualmente. |
@marcelsavegnago tentei usar a ideia dos marcadores (many2many) por simplicidade e praticidade apenas. Me pareceu ser a forma mais tranquila de cobrir vários casos de uso. Só queria ressaltar que o many2many na minha visão é importante. Agora sobre o modelo em si, acho que daria pra herdar algum product.tags e colocar um campo nele exemplo "is_fiscal_tag" e usar esse modelo já existente com um domínio. Se acharem que fica melhor desse jeito posso alterar. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@renatonlima pode revisar? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pra mim isso já esta legal, mas o ideal é colocar testes para garantir que continua funcionando no futuro.
This PR has the |
b9e08f4
to
fc4e040
Compare
|
||
# ICMS | ||
if line.product_id.icms_origin not in ICMS_ORIGIN_TAX_IMPORTED: | ||
self.assertEqual( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pode fazer um assert da taxa do ICMS ST?
cb467f8
to
25b5a8d
Compare
depend de #3422 |
cb05c65
to
4f17d7e
Compare
|
||
# ICMS | ||
if line.product_id.icms_origin not in ICMS_ORIGIN_TAX_IMPORTED: | ||
line.write( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Tiago370 acho que esse write não pode estar aqui. A ideia é testar o imposto automático. Se você escrever o imposto no teste a validação perde o sentido
|
||
# ICMS | ||
if line.product_id.icms_origin not in ICMS_ORIGIN_TAX_IMPORTED: | ||
line.write( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Tiago370 acho que esse write não pode estar aqui. A ideia é testar o imposto automático. Se você escrever o imposto no teste a validação perde o sentido
line.with_company(empresa_lucro_presumido.id)._onchange_fiscal_taxes() | ||
|
||
self.assertTrue("Revenda" in line.fiscal_operation_line_id.name) | ||
if "Revenda" in line.fiscal_operation_line_id.name: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
O assert da cfop_id precisa acontecer independente se "Revenda" está no nome da operation line. Essa linha é desnecessária
)._onchange_fiscal_operation_line_id() | ||
line.with_company(empresa_lucro_presumido.id)._onchange_fiscal_taxes() | ||
|
||
self.assertTrue("Revenda" in line.fiscal_operation_line_id.name) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Essa linha também é desnecessária já que esse assert já acontece algumas linhas abaixo em: "line.cfop_id.code, 6404"
4f17d7e
to
e5f6c93
Compare
Corrigido |
@DiegoParadeda @Tiago370 esta pronto para revisão? |
@mileo da minha parte sim. |
) | ||
|
||
# ICMS | ||
if line.product_id.icms_origin not in ICMS_ORIGIN_TAX_IMPORTED: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if line.product_id.icms_origin not in ICMS_ORIGIN_TAX_IMPORTED:
Esse if é desnecessário
) | ||
|
||
# ICMS | ||
if line.product_id.icms_origin not in ICMS_ORIGIN_TAX_IMPORTED: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Esse if é desnecessário
" for Venda de Contribuinte p/ Fora do Estado.", | ||
) | ||
self.assertEqual( | ||
line.icmsst_tax_id.name, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Utilizar registro.name
não é uma prática muito legal @Tiago370. Nesse caso você consegue pegar o XML ID do registro e garantir que o teste não vai quebrar se alguém trocar o nome do imposto
e5f6c93
to
c33ae6e
Compare
@DiegoParadeda corrigido. |
Objetivo
Este PR introduz o modelo
product.tag
para aprimorar a capacidade de combinação automática das linhas de operação fiscal por produto.