Class TariffTreeBuilder

java.lang.Object
ru.bitel.bgbilling.kernel.base.server.logger.BGLogger
ru.bitel.bgbilling.common.dao.AbstractDaoConstant
ru.bitel.bgbilling.kernel.tariff.server.bean.TariffTreeBuilder

public class TariffTreeBuilder extends ru.bitel.bgbilling.common.dao.AbstractDaoConstant
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     

    Fields inherited from class ru.bitel.bgbilling.common.dao.AbstractDaoConstant

    con, ERROR, fields, moduleId, SQL_ALL, SQL_AND, SQL_DELETE, SQL_DISTINCT, SQL_EQ, SQL_EQCS, SQL_FROM, SQL_GROUP, SQL_IN, SQL_INSERT, SQL_JOIN, SQL_LEFT_JOIN, SQL_LIMIT, SQL_NOT_IN, SQL_ON, SQL_ON_DUPLICATE_KEY_UPDATE, SQL_ORDER, SQL_SELECT, SQL_SET, SQL_UPDATE, SQL_VALUES, SQL_WHERE, tableName
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    addMTreeItems(int treeId, int moduleId, Element tree, boolean editable, int deep)
    Рекурсивная загрузка поддерева со всеми дочерними узлами.
    void
    changeParent(int id, int new_parent)
    Смена предка у узла.
    boolean
    checkMtree(int treeId, int moduleId)
    Проверка на существование поддерева для указанного модуля.
    boolean
    checkOneTree(int node1, int node2)
    Возвращает проверку на принадлженость узлов к одному дереву.
    boolean
    checkOrderChildren(int parentId, int treeId)
    Проверка на отсутствие дочерних узлов с одинаковыми позициями в дереве (false - есть такие узлы).
    int
    cloneNode(int id, int parent_id)
    Клонирование узла в другого предка.
    int
    createMtree(int treeId, int moduleId, int parentTreeId)
     
    int
    createMtreeNode(int mtree, int parent, String type)
    Создание узла.
    void
    createPersonalTariffTreeUpdateEvent(int userId, int nodeId, int mTreeId, int treeId, ru.bitel.bgbilling.kernel.container.managed.ServerContext context)
    Создает событие по изменению персонального тарифного плана, если это необходимо или 0 если дерево относиться к глобальному тарифному плану.
    int
     
    deleteMtree(int treeId, int moduleId)
     
    void
    deleteMtreeNode(int code)
    Удаление узла.
    deleteTree(int treeId)
     
    void
    fixOrder(int parentId, int treeId)
    Исправляет позиции дочерних узлов в дереве.
    int
    getCidForMTree(int mTreeId)
    Возврашает cid для модульного дерева персонального тарифного плана, или 0 если дерево относиться к глобальному тарифному плану
    int
    getCidForNode(int nodeId)
    Возврашает contractId для узла персонального тарифного плана, или 0 если узел относиться к глобальному тарифному плану
    long
    getLastModificationTimeForTree(int treeId, int moduleId)
     
    byte[]
     
    void
    getMtreeModifiedEvents(int mtreeId, int userId, List<TariffTreeModifiedEvent> events)
    Получение событий модификации модульных поддеревьев, наследующихся от поправленного.
    int
    getNodePos(int code)
    Получение позиции узла.
    int
    getParentTreeId(int treeId)
     
    getTreeRef(int tree_id)
     
    void
    linkTree(int id, int mode, int param)
     
    void
    setNodePos(int code, int pos)
    Обновление позиции узла.
    void
    updateMtreeNode(int id, String data)
    Обновление данных узла.

    Methods inherited from class ru.bitel.bgbilling.common.dao.AbstractDaoConstant

    getPeriod, getPlaceholders, getSQLOrder, getSQLOrderFields, getTableName, psSetDate, psSetDateOrNull, psSetInt, psSetIntOrNull, psSetPeriod, psSetString, psSetStringOrNull, psSetTimestampOrNull, queryAndIn, setStatementParam, sqlDelete, sqlDeleteBatch, sqlInsert, sqlInsertBatch, sqlInsertGetId, sqlInsertOnDuplicateKeyUpdate, sqlInsertUpdateById, sqlUpdate, sqlUpdateBatch

    Methods inherited from class ru.bitel.bgbilling.kernel.base.server.logger.BGLogger

    error, error, error, getLogger, logError, logError, warn

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • TariffTreeBuilder

      public TariffTreeBuilder(Connection con)
  • Method Details

    • getModuleTariffConfig

      public byte[] getModuleTariffConfig(String module)
    • linkTree

      public void linkTree(int id, int mode, int param) throws Exception
      Throws:
      Exception
    • createTree

      public int createTree() throws SQLException
      Throws:
      SQLException
    • addMTreeItems

      public boolean addMTreeItems(int treeId, int moduleId, Element tree, boolean editable, int deep)
      Рекурсивная загрузка поддерева со всеми дочерними узлами.
      Parameters:
      treeId - код поддерева.
      moduleId - код модуля.
      tree - элемент, куда загружать.
      editable - не используется??
      deep - глубина узла.
      Returns:
      результат загрузки, true - все ОК.
    • deleteTree

      public String deleteTree(int treeId)
    • deleteMtree

      public String deleteMtree(int treeId, int moduleId)
    • checkMtree

      public boolean checkMtree(int treeId, int moduleId) throws Exception
      Проверка на существование поддерева для указанного модуля.
      Parameters:
      treeId - код поддерева.
      moduleId - код модуля.
      Returns:
      Throws:
      Exception
    • createMtree

      public int createMtree(int treeId, int moduleId, int parentTreeId)
    • createMtreeNode

      public int createMtreeNode(int mtree, int parent, String type)
      Создание узла.
    • updateMtreeNode

      public void updateMtreeNode(int id, String data) throws Exception
      Обновление данных узла.
      Throws:
      Exception
    • deleteMtreeNode

      public void deleteMtreeNode(int code) throws Exception
      Удаление узла.
      Throws:
      Exception
    • getParentTreeId

      public int getParentTreeId(int treeId) throws SQLException
      Throws:
      SQLException
    • getMtreeModifiedEvents

      public void getMtreeModifiedEvents(int mtreeId, int userId, List<TariffTreeModifiedEvent> events) throws ru.bitel.bgbilling.common.BGException
      Получение событий модификации модульных поддеревьев, наследующихся от поправленного.
      Parameters:
      userId -
      events -
      treeId -
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getLastModificationTimeForTree

      public long getLastModificationTimeForTree(int treeId, int moduleId)
    • setNodePos

      public void setNodePos(int code, int pos) throws Exception
      Обновление позиции узла.
      Parameters:
      code - код узла.
      pos - новая позиция.
      Throws:
      Exception
    • getNodePos

      public int getNodePos(int code)
      Получение позиции узла. Позиции начинаются с 0, если узел не наден возвращает -1.
      Parameters:
      code - код узла
      Returns:
      позиция
    • changeParent

      public void changeParent(int id, int new_parent)
      Смена предка у узла. Узел добавляется в конец списка.
      Parameters:
      id - код узла.
      new_parent - новый предок.
    • cloneNode

      public int cloneNode(int id, int parent_id)
      Клонирование узла в другого предка. Клонирование идет в на последнюю позицию в новом узле.
      Parameters:
      id - код клонируемого узла.
      parent_id - новый родительский узел.
      Returns:
      код созданного узла.
    • checkOrderChildren

      public boolean checkOrderChildren(int parentId, int treeId) throws ru.bitel.bgbilling.common.BGException
      Проверка на отсутствие дочерних узлов с одинаковыми позициями в дереве (false - есть такие узлы).
      Parameters:
      parentId - код родительского узла.
      treeId - код дерева.
      Returns:
      true - ошибок нет.
      Throws:
      ru.bitel.bgbilling.common.BGException
    • fixOrder

      public void fixOrder(int parentId, int treeId) throws ru.bitel.bgbilling.common.BGException
      Исправляет позиции дочерних узлов в дереве.
      Parameters:
      parentId - код родительского узла.
      treeId - код дерева.
      Throws:
      ru.bitel.bgbilling.common.BGException
    • checkOneTree

      public boolean checkOneTree(int node1, int node2) throws ru.bitel.bgbilling.common.BGException
      Возвращает проверку на принадлженость узлов к одному дереву.
      Parameters:
      node1 - код первого узла.
      node2 - код второго узла.
      Returns:
      true - узлы принадлежат одному дереву.
      Throws:
      ru.bitel.bgbilling.common.BGException
    • getTreeRef

      public String getTreeRef(int tree_id) throws SQLException
      Throws:
      SQLException
    • getCidForNode

      public int getCidForNode(int nodeId)
      Возврашает contractId для узла персонального тарифного плана, или 0 если узел относиться к глобальному тарифному плану
      Parameters:
      nodeId - - id узла
      Returns:
      -1 если план глобальный, cid персонального тарифного плана
    • getCidForMTree

      public int getCidForMTree(int mTreeId)
      Возврашает cid для модульного дерева персонального тарифного плана, или 0 если дерево относиться к глобальному тарифному плану
      Parameters:
      mTreeId - - id модульного дерева
      Returns:
      -1 если план глобальный, cid персонального тарифного плана
    • createPersonalTariffTreeUpdateEvent

      public void createPersonalTariffTreeUpdateEvent(int userId, int nodeId, int mTreeId, int treeId, ru.bitel.bgbilling.kernel.container.managed.ServerContext context) throws SQLException, ru.bitel.bgbilling.common.BGException
      Создает событие по изменению персонального тарифного плана, если это необходимо или 0 если дерево относиться к глобальному тарифному плану.
      Parameters:
      mTreeId - - id модульного дерева
      context -
      Throws:
      ru.bitel.bgbilling.common.BGException
      SQLException