Untitled

 avatar
unknown
plain_text
a year ago
1.5 kB
7
Indexable
{
	..
	Receptor receptor
}

receptor type struct {
	Nombre,
	Rfc,
	Cp,
	IdRegimen string
}




	// Validar que haya mandado numcli y exista 
	if f.Numcli == "" {
		return errors.New("el campo numcli es obligatorio")
	}
	cli, fnd := clientes.Find(ses, p.Numcli)
	if !fnd {
		return fmt.Errorf("no existe el cliente %s", p.Numcli)
	}
	f.Numcli = cli.Numcli
	//
	// Si mandaron cliente eventual, validar que exista y tomar la clave
	f.Numcliev = strings.Trimspace(f.Numcliev)
	if f.Numcliev != "" {
		cliev, fnd := clienteseventuales.Find(ses, f.Numcliev)
		if !fnd {
			return fmt.Errorf("no existe el cliente eventual %s", f.Numcliev)
		}
		f.Numcliev = cliev.Numcliev
	}
	//
	// Validar tener cliente tenga Nombre, RFC, CP y IDRegimen 
	if f.Numcliev == "" {
		f.Receptor.Nombre = cli.Nomcli
		f.Receptor.Cp = cli.Cp
		f.Receptor.Rfc = cli.Rfc
		f.Receptor.Idregimen = cli.Idregimen
	} else {
		f.Receptor.Nombre = cliev.Nomcli
		f.Receptor.Cp = cliev.Cp
		f.Receptor.Rfc = cliev.Rfc
		f.Receptor.Idregimen = cliev.Idregimen
	}
	if string.Trimspace(f.Receptor.Nombre)==""{
		return fmt.Errorf("al emitir facturas cliente debe contar con Nombre")
	}
	if string.Trimspace(f.Receptor.Rfc)==""{
		return fmt.Errorf("al emitir facturas cliente debe contar con RFC")
	}
	if string.Trimspace(f.Receptor.Idregimen)==""{
		return fmt.Errorf("al emitir facturas cliente debe contar con regimien fiscal")
	}
	if string.Trimspace(f.Receptor.Cp)==""{
		return fmt.Errorf("al emitir facturas cliente debe contar CP en el Domicilio")
	}


Editor is loading...
Leave a Comment