Never-ending Pumpkin Mulch

    @utkonos/entrepreneur
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    Валидация данных юридического лица (utk-entrepreneur)

    Библиотека функций валидации данных юридического лица

    Возможности

    функции включают в себя валидаторы данных:

    • БИК
    • Расчётный счёт
    • Корр. счёт
    • GS1
    • GLN (global location number)
    • ИНН (юр. лицо, физ.лицо/ИП)
    • КПП
    • ОГРН(ИП)
    • ОКАТО
    • OKPO

    Описание методов

    Любой метод представленный в библиотеки принимает значение и возвражает boolean

    • isBIK(value: string) - проверка значения на БИК
    • isPaymentAccount(value: string, bik: string) - проверка рассчётного счёта. Принимает собственное значение и значение БИК.
    • isCorrespondentAccount(value: string, bik: string) - проверка корреспондентского счёта. Принимает собственное значение и значение БИК.
    • isINN(value: string) - проверяет яляется ли значение ИНН независимо от типа владельца (физическое лицо или юридическое лицо).
    • isINNIndividual(value: string) - проверяет является ли значение ИНН физического лица.
    • isINNLegalEntity(value: string) - проверяет является ли значение ИНН юридического лица.
    • isOGRN(value: string) - проверяет является ли значение ОГРН (для юридических лиц).
    • isOGRNIP(value: string) - проверяет является ли значение ОГРНИП (для ИП).
    • isOKATO(value: string) - проверяет является ли значение ОКАТО.
    • isOKPO(value: string) - проверяет является ли значение ОКПО.
    • isGLN(value: string) - проверяет является ли значение GLN (global location number). Частный случай GS1 и базируется на методе isGS1.
    • isGS1(value: string) - проверяет является ли значение GS1. Реализует проверку контрольной суммы для любых маркировок стандарта GS1. На базе этого метода вы можете построить собственный валидаторы для различных маркировок, например для EAN (EAN-13, EAN-8) и другие. Правильность GS1 вы можете проверить с помощью сервиса ассоциации.

    Примеры

    Валидация данных рассчётного счёта

    Пример для работы с yup. В данном примере используются 3 метода (isBIK, isPaymentAccount, isCorrespondentAccount). Обратите внимиание, что в методах yup'а test в некоторых случаях используется обычные функции, а не стрелочные. Это нужно для сохранения TestContext'а yup, который необходим для работы Ref.

    // Импорт
    import { isBIK, isPaymentAccount, isCorrespondentAccount } from 'utk-entrepreneur'
    import * as yup from 'yup'
    
    const validtionSchema = yup.object().shape({
      bik: yup.string().test('bik', (value) => isBIK(value)),
      paymentAccout: yup.string().test('payment', function (value) {
        return isPaymentAccount(value, this.resolve(yup.ref('bik')))
      }),
      corrAccount: yup.string().test('corr', function (value) {
        return isCorrespondentAccount(value, this.resolve(yup.ref('bik')))
      }),
    })
    

    Валидация ИНН

    Библиотека utk-entrepreneur может валидировать разные типы ИНН. Возьмём 2 ИНН и сравним в чём разница методов. ИНН физического лица - 525696684324, ИНН юридического лица - 7097670129

    import {isINN, isINNIndividual, isINNLegalEntity} from 'utk-entrepreneur'
    
    console.log(isINN('525696684324'), isINN('7097670129')) // true, true
    
    console.log(isINNIndividual('525696684324'), isINNIndividual('7097670129')) // true, false
    
    console.log(isINNLegalEntity('525696684324'), isINNLegalEntity('7097670129')) // false, true
    

    Install

    npm i @utkonos/entrepreneur

    DownloadsWeekly Downloads

    9

    Version

    1.0.2

    License

    ISC

    Unpacked Size

    22.5 kB

    Total Files

    35

    Last publish

    Collaborators

    • sedx
    • nosycode