Class FnsFileGenerator

java.lang.Object
ru.bitel.bgbilling.plugins.edo.server.bean.FnsFileGenerator
All Implemented Interfaces:
EdoBillFileGenerator

public abstract class FnsFileGenerator extends Object implements EdoBillFileGenerator
Надстройка над EdoBillFileGenerator упрощающая написание динкода для формирования документов
  • Field Details

  • Constructor Details

    • FnsFileGenerator

      public FnsFileGenerator()
  • Method Details

    • init

      public void init(Setup setup, Connection con, int billModuleId, ParameterMap billModuleSetup, ParameterMap documentSetup, BillDoc doc, ContragentInfos contragentInfos) throws Exception
      Specified by:
      init in interface EdoBillFileGenerator
      Parameters:
      setup - сетап сервера
      con - коннекшен
      billModuleId - mid конкретного экземпляра модуля bill откуда выгрузка
      billModuleSetup - сетап модуля bill
      documentSetup - под-сетап для этого генератора из конфига документа+подписанта
      doc - BillDoc счёта/счётфактуры соответствующего
      contragentInfos - инфа о контрагенте-участнике-эдо с конкретным идентификатором
      Throws:
      Exception
    • getDocument

      public abstract ru.bitel.bgbilling.plugins.edo.server.utils.EdoFnsXmlGenerator getDocument() throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getFileContent

      public InputStream getFileContent() throws ru.bitel.bgbilling.common.BGException
      Specified by:
      getFileContent in interface EdoBillFileGenerator
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getContract

      protected Contract getContract() throws ru.bitel.bgbilling.common.BGException
      Throws:
      ru.bitel.bgbilling.common.BGException
    • value

      protected String value(String nameValue, boolean required) throws Exception
      Взять значение по переданному коду параметра; макросы откуда пытаться взять: pid:666 - брать из параметра договора; bill_attr:inn - из реквизита модуля бухгалтерия; contract:comment - поле договора (title, comment) 666 - константа как есть.
      Throws:
      ru.bitel.bgbilling.common.BGException - какой-то косяк
      Exception
    • value

      protected String value(String nameValue) throws Exception
      Throws:
      Exception
    • value_raw

      protected String value_raw(String nameValue, boolean required) throws ru.bitel.bgbilling.plugins.edo.server.utils.MissingDocParamException
      Throws:
      ru.bitel.bgbilling.plugins.edo.server.utils.MissingDocParamException
    • ФИОТип

      protected ru.bitel.bgbilling.plugins.edo.server.utils.EdoFnsXmlGenerator.S ФИОТип(String F, String I, String O)
    • ДатаТип

      protected String ДатаТип(Date date)
    • ВремяТип

      protected String ВремяТип(Date date)
    • ТекстИнфТип

      protected ru.bitel.bgbilling.plugins.edo.server.utils.EdoFnsXmlGenerator.S ТекстИнфТип(String id, String val)
    • ВерсПрог

      protected String ВерсПрог()
      Значение ВерсПрог для многих документов
    • getAddress

      protected FnsFileGenerator.АдресСтруктура getAddress(String valueFrom) throws Exception
      Варианты задания адреса: # [либо] адресный параметр договора Адрес=pid:адресный # [либо] адрес строка, константа или текстовый параметр или адресный (возьмётся текстовое представление), КодСтр/НаимСтран по дефолту российские. #Адрес.КодСтр= #Адрес.НаимСтран= Адрес.АдрТекст=pid:текст # [либо] компонентами адреса, константы или текстовые параметры, можно ВДОБАВОК к варианту адресного параметра, # тогда компоненты добавяется к компонентам адреса из параметра. # важно: # .КодРегион обязательно надо задать, т.к. из адресного его взять негде # .НаселПункт если требуется в дополнение к городу - тоже надо задать отдельно. Адрес.Индекс=450000 Адрес.КодРегион=02 Адрес.Район=Район Адрес.Город=Уфа Адрес.НаселПункт=Пригород Адрес.Улица=ул. Ленина Адрес.Дом=666 Адрес.Корпус=666 Адрес.Кварт=666
      Throws:
      Exception