fix: ajusta fluxo de cadastro pela rota de /aprovacao-cadastros
This commit is contained in:
parent
cd33c63d9d
commit
1ef8d3f435
2 changed files with 99 additions and 12 deletions
|
|
@ -315,6 +315,15 @@ func (s *Service) AdminCreateUser(ctx context.Context, email, senha, role, nome,
|
|||
Nome: nome,
|
||||
Email: &email,
|
||||
FuncaoProfissionalID: funcaoID,
|
||||
Whatsapp: &telefone,
|
||||
CpfCnpjTitular: &cpfCnpj,
|
||||
Cep: &cep,
|
||||
Endereco: &endereco,
|
||||
Numero: &numero,
|
||||
Complemento: &complemento,
|
||||
Bairro: &bairro,
|
||||
Cidade: &cidade,
|
||||
Uf: &estado,
|
||||
}
|
||||
|
||||
// Create the professional
|
||||
|
|
|
|||
|
|
@ -270,7 +270,7 @@ const CreateUserModal: React.FC<CreateUserModalProps> = ({
|
|||
|
||||
{formData.role === "EVENT_OWNER" && (
|
||||
<div className="space-y-4 border-t pt-4 mt-2">
|
||||
<h4 className="font-medium text-gray-900">Dados do Cliente</h4>
|
||||
<h4 className="font-medium text-gray-900 border-b pb-1 mb-3">Dados Cadastrais</h4>
|
||||
<div className="grid grid-cols-2 gap-4">
|
||||
<Input
|
||||
label="CPF/CNPJ"
|
||||
|
|
@ -361,6 +361,84 @@ const CreateUserModal: React.FC<CreateUserModalProps> = ({
|
|||
</div>
|
||||
)}
|
||||
|
||||
{/* Show Address for Professionals too if not EVENT_OWNER (since we handled it above inside the block, wait - logic change needed) */}
|
||||
{/* Actually, let's make the Address block generic for PHOTOGRAPHER and BUSINESS_OWNER too */}
|
||||
{(formData.role === "PHOTOGRAPHER" || formData.role === "BUSINESS_OWNER") && (
|
||||
<div className="space-y-4 border-t pt-4 mt-2">
|
||||
<h4 className="font-medium text-gray-900 border-b pb-1 mb-3">Dados Profissionais</h4>
|
||||
<div className="grid grid-cols-2 gap-4">
|
||||
<Input
|
||||
label="CPF/CNPJ"
|
||||
value={formData.cpfCnpj || ''}
|
||||
onChange={(e) => setFormData({...formData, cpfCnpj: formatCPFCNPJ(e.target.value)})}
|
||||
placeholder="000.000.000-00"
|
||||
maxLength={18}
|
||||
/>
|
||||
<Input
|
||||
label="CEP"
|
||||
value={formData.cep || ''}
|
||||
onChange={(e) => setFormData({...formData, cep: formatCEP(e.target.value)})}
|
||||
placeholder="00000-000"
|
||||
onBlur={(e) => {
|
||||
const cep = e.target.value.replace(/\D/g, '');
|
||||
if (cep.length === 8) {
|
||||
fetch(`https://viacep.com.br/ws/${cep}/json/`)
|
||||
.then(res => res.json())
|
||||
.then(data => {
|
||||
if (!data.erro) {
|
||||
setFormData(prev => ({
|
||||
...prev,
|
||||
endereco: data.logradouro,
|
||||
bairro: data.bairro,
|
||||
cidade: data.localidade,
|
||||
estado: data.uf
|
||||
}));
|
||||
}
|
||||
});
|
||||
}
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
<div className="grid grid-cols-[2fr_1fr] gap-4">
|
||||
<Input
|
||||
label="Endereço"
|
||||
value={formData.endereco || ''}
|
||||
onChange={(e) => setFormData({...formData, endereco: e.target.value})}
|
||||
/>
|
||||
<Input
|
||||
label="Número"
|
||||
value={formData.numero || ''}
|
||||
onChange={(e) => setFormData({...formData, numero: e.target.value})}
|
||||
/>
|
||||
</div>
|
||||
<div className="grid grid-cols-2 gap-4">
|
||||
<Input
|
||||
label="Complemento"
|
||||
value={formData.complemento || ''}
|
||||
onChange={(e) => setFormData({...formData, complemento: e.target.value})}
|
||||
/>
|
||||
<Input
|
||||
label="Bairro"
|
||||
value={formData.bairro || ''}
|
||||
onChange={(e) => setFormData({...formData, bairro: e.target.value})}
|
||||
/>
|
||||
</div>
|
||||
<div className="grid grid-cols-[2fr_1fr] gap-4">
|
||||
<Input
|
||||
label="Cidade"
|
||||
value={formData.cidade || ''}
|
||||
onChange={(e) => setFormData({...formData, cidade: e.target.value})}
|
||||
/>
|
||||
<Input
|
||||
label="UF"
|
||||
value={formData.estado || ''}
|
||||
onChange={(e) => setFormData({...formData, estado: e.target.value})}
|
||||
maxLength={2}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
|
||||
{formData.role === "PHOTOGRAPHER" && (
|
||||
<div className="space-y-4">
|
||||
<div>
|
||||
|
|
@ -373,9 +451,9 @@ const CreateUserModal: React.FC<CreateUserModalProps> = ({
|
|||
className="w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-photum-green focus:border-transparent outline-none transition-all"
|
||||
>
|
||||
<option value="">Selecione...</option>
|
||||
<option value="FOTOGRAFO">Fotógrafo</option>
|
||||
<option value="CINEGRAFISTA">Cinegrafista</option>
|
||||
<option value="EDITOR">Editor</option>
|
||||
<option value="Fotógrafo">Fotógrafo</option>
|
||||
<option value="Cinegrafista">Cinegrafista</option>
|
||||
<option value="Editor">Editor</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -513,14 +591,14 @@ export const UserApproval: React.FC<UserApprovalProps> = ({ onNavigate }) => {
|
|||
telefone: createFormData.telefone,
|
||||
professional_type: createFormData.role === "PHOTOGRAPHER" ? createFormData.professional_type : undefined,
|
||||
empresa_id: createFormData.role === "EVENT_OWNER" ? createFormData.empresa_id : undefined,
|
||||
cpf_cnpj: createFormData.role === "EVENT_OWNER" ? createFormData.cpfCnpj : undefined,
|
||||
cep: createFormData.role === "EVENT_OWNER" ? createFormData.cep : undefined,
|
||||
endereco: createFormData.role === "EVENT_OWNER" ? createFormData.endereco : undefined,
|
||||
numero: createFormData.role === "EVENT_OWNER" ? createFormData.numero : undefined,
|
||||
complemento: createFormData.role === "EVENT_OWNER" ? createFormData.complemento : undefined,
|
||||
bairro: createFormData.role === "EVENT_OWNER" ? createFormData.bairro : undefined,
|
||||
cidade: createFormData.role === "EVENT_OWNER" ? createFormData.cidade : undefined,
|
||||
estado: createFormData.role === "EVENT_OWNER" ? createFormData.estado : undefined,
|
||||
cpf_cnpj: createFormData.cpfCnpj,
|
||||
cep: createFormData.cep,
|
||||
endereco: createFormData.endereco,
|
||||
numero: createFormData.numero,
|
||||
complemento: createFormData.complemento,
|
||||
bairro: createFormData.bairro,
|
||||
cidade: createFormData.cidade,
|
||||
estado: createFormData.estado,
|
||||
regiao: createFormData.regiao || undefined
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue