Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction


Construction or renovation of buildings is regulated by Municipal Body in India. One must  get permission from ULB prior to construction . This process involves submitting the building plan to ULB along with other documents, ULB verifies the  plan with other documents and approves the construction. The document which authorizes the construction is called “Permit Order” One must have this permit order with him till the completion of construction. ULB officials  will inspect various stages of construction and make sure it is compliance to the plan . When construction completed ,after inspection Secretary provides “Completion certificate” and finally will provide “Occupancy Certificate”.  This entire process is known as “Building Plan Approval”.


Prerequisites 

BPA  is one the revenue module among the eGov ERP. This module depends on Demand, Collection, Employee information system, DCR, financial, Common masters, Portal and infrastructure modules. These are the required dependent modules for BPA.

The overall ERP product suite is divided into modules, with each module being loosely coupled with the other modules. Only modules which are required for BPA are grouped in this branch. In eGov-erp and eGov-ear modules, pom.xml used to define dependency modules.

Deployment Configuration

State Wide/City wise implementation

  • Centralized Server hosting all the ULBs within a state

  • All ULBs access the software over the browser. There is no offline system.

  • Uniform code base supporting all the ULBs for the state. City specific code also maintain using client specific implementation branch

    .

  • Separate Database for each ULB.

  • Dashboard to aggregate data across ULBs for state-level analysis


  • Functionality

    This section covers the high-level details of the functionalities available in the Building Plan Application system.

    • State level registration of stakeholders
    • State specific restriction for stakeholder application submission
    • Centralized login page for citizen,official and stakeholders
    • Citizen functionalities
    • Online application submission - New construction, Additional/Alteration, Demolition etc
    • Occupancy certificate request
    • Pay fee online and generate permit order online
    • Inspection of applications and online status
    • Configurable workflow
    • Schedule of appointment for document scrutiny and inspection
    • Auto fee calculation
    • Dash board and reports
    • State specific format output and reports
    • Online and off line payment collection
    • Integration with NOC system
    • Inspection pre,post and under construction stages.
    • Rejection process
    • Revocation process
    • Renewal of permit order
    • Configurable functionalities

    Flow Diagram

    End to end flow diagram of the BPA system looks like below-

    View file
    nameDIGIT BPA Flow.pdf
    height250

    Image Added



    Sequence Diagram



    ER Diagram

    New application

    View file
    nameApplication.pdf
    height400

    Inspection

    View file
    nameinspection.pdf
    height250

    General Instructions for Development

    • All the database scripts are structured in standard format. Each module specific scripts are arranged in sample and main folder. Sample script used for development purpose. The database script include DDL and DML scripts.

         City specific data will be saved in concerned city folder script of implementation branch.

    • All the report templates are under reports template folder

    Configurations and Setup

    BPA allows configuring the system for different client requirements. These changes are configurable from UI. The configuration keys are detailed here.


    Steps to setup client specific repository in eclipse:

    1) Clone impl repo like below.
         git clone https://github.com/egovernments/eGov-Bihar-Implementation.git
    2) Import impl repo to eclipse (digit-bpa workspace).
    3) Add Impl egov-ear to server and remove digit-bpa egov ear.
    4) Point the impl settings.xml in maven>user settings.
    5) Delete temp/data and ear file from deployments folder and redeploy to wildfly.
    Key NameDescriptionData TypeDefault Value

    Allowed Values

    AUTO_CANCEL_UNATTENDED_DOCUMENT_SCRUTINY_OC
    Flag to cancel the occupancy application for which the citizen is not attended for document scrutiny on the scheduled timeStringYESYES, NO
    BPA_CITIZENACCEPTANCE_CHECKIs Citizen acceptance of application is required after stakeholder apply for a permit on behalf of citizenStringYESYES, NO
    BPA_DEFAULT_FUNCTIONARY_CODEFunction code to be used for posting a voucher to the Financials systemNumber1Code from Functionary master
    BPA_DEFAULT_FUND_CODEFund code to be used for posting a voucher to the Financials systemNumber1Code from Fund master
    BPA_DEFAULT_FUND_SRC_CODEThe fund source code to be used for posting a voucher to the Financials systemNumber1Code from Fund Source master
    BPA_DEPARTMENT_CODEDepartment code to be used for posting a voucher to the Financials systemStringREVCode from Department master
    BPA_FEE_CALCULATIONPermit fee calculation types
    AUTOFEECAL: Calculation by the system with defined rules
    AUTOFEECAL_EDIT: Calculation by the system with defined rules but officials can override these values
    MANUAL: Manually calculated by officials and entered into the system
    StringAUTOFEECALAUTOFEECAL, AUTOFEECAL_EDIT, MANUAL
    BPA_GENERIC_BOUNDARY_CONFIGURATION

    The Boundary configuration. What are the type of boundaries application has to capture during new application creation.


    Here validBoundary → "REVENUE" refers to the hierarchy type. The data Should match with eg_hierarchy_type  table, "Name" column data.

    Here validBoundary → "REVENUE" → "boundary": "Zone" referes "eg_boundary_type" table data. The data Should match with the eg_boundary_type table → "Name" column.

    The "hierarchy" column of "eg_boundary_type" table used to define the order of boundary to show in the UI.

    All the boundary data are mandatory as per current design which are defined in the configuration.

    Use "uniformBoundary" to autopopulate values on selection of boundary.

    Similarly Use "crossBoundary" to autopopulate values on selection of boundary  if the boundaries are not related to each other.

    Json{"validBoundary": {"REVENUE": [{"boundary": "Zone", "displayName": "Circle"}, {"boundary": "Ward", "displayName": "Revenue Ward"}]}, "crossBoundary":{}, "uniformBoundary": {"REVENUE": [{"fromBoundary": "Zone:Circle", "toBoundary": "Ward:Revenue Ward"}]}}A Defined structured JSON, one example is given in default value
    BPA_ONLINE_PAYFlag to enable online paymentStringYESYES, NO
    BPA_WORKFLOW_EMPLOYEE_BOUNDARY_HIERARCHYBoundary hierarchy type for the employee when the workflow runs on employee jurisdictionStringREVENUECode from Hierarchy Master
    BPAPRIMARYDEPARTMENTBuilding plan primary departmentStringTown PlanningName from Department Master
    BUILDING_LICENSEE_REG_FEE_REQUIREDFlag to collect registration fee or not for stakeholder registrationStringYESYES, NO
    BUILDINGDETAILSVALIDATIONREQUIREDFlag to check whether building floor details validation required or notStringYESYES, NO
    DCR_DOC_AUTO_POPULATE_AND_MANUAL_UPLOADFlag to populate required/available documents from eDCR in the Permit application.
    If this flag is YES then application allows overriding populated documents
    If this flag is NO then the application will not allow overriding populated documents
    StringNOYES, NO
    DCR_DOC_AUTO_POPULATE_UPLOADFlag to populate required/available documents from eDCR in the Permit application. No overrideStringNOYES, NO
    DCR_DOC_MANUAL_UPLOADManually upload the all plan-related documentsStringYESYES, NO
    DCR_INTEGRATION_REQUIRE_WITH_BPAFag to know whether eDCR system integration is required or not with application process systemStringYESYES, NO
    DCRPDFQRCODEENABLED

    Flag to

    generate QRCode for DCR scrutiny and show it on the output

    stamp the plan scrutiny documents submitted by citizen or not

    String1TRUE, FALSE
    DOCUMENT_SCRUTINY_INTEGRATION_REQUIREDFlag to enable/disable document scrutiny for Permit applicationStringNOYES, NO
    GAPFORSCHEDULINGThe delay or gap of days for scheduling document scrutiny with citizen from the date of application. This is for permit application.Number2Any integer number indicating no.of days
    GAPFORSCHEDULINGOCThe delay or gap of days for scheduling document scrutiny with citizen from the date of application. This is for Occupancy applicationNumber0Any integer number indicating no.of days
    GAPFORSCHEDULINGONEDAYPERMITAPPLICATIONS
    The delay or gap of days for scheduling document scrutiny with citizen from the date of application. This is for One Day Permit applicationNumber2Any integer number indicating no.of days
    HELPLINENUMBERHelpline number for Citizen in case he/she wants to re-schedule his/her appointmentNumber4952362100Valid telephone number
    IS_AUTO_CANCEL_UNATTENDED_DOCUMENT_SCRUTINY_APPLICATION
    Flag to cancel the permit application for which the citizen is not attended for document scrutiny on the scheduled timeStringYESYES, NO
    MERGEPERMITEDCRFlag to show eDCR scrutiny report along with the permit orderString1TRUE, FALSE
    NOOFDAYSFORASSIGNINGSLOTSThe number of days for which slots to be opened for document scrutiny for Permit applicationNumber1Any integer number indicating no.of days
    NOOFDAYSFORASSIGNINGSLOTSFOROCThe number of days for which slots to be opened for document scrutiny for Occupancy applicationNumber3Any integer number indicating no.of days
    NOOFDAYSFORASSIGNINGSLOTSFORONEDAYPERMITThe number of days for which slots to be opened for document scrutiny for One Day Permit applicationNumber1Any integer number indicating no.of days
    OC_ALLOW_DEVIATIONThe percentage of violation compared to permit order while applying for Occupancy certificateNumber5Any integer number indicating deviation percentage
    OC_DOCUMENT_SCRUTINY_INTEGRATION_REQUIREDFlag to enable/disable document scrutiny for Occupancy applicationStringNOYES, NO
    OC_FEE_CALCULATIONOccupancy Fee calculation type
    AUTOFEECAL: Calculation by the system with defined rules
    AUTOFEECAL_EDIT: Calculation by the system with defined rules but officials can override these values
    MANUAL: Manually calculated by officials and entered into the system
    StringAUTOFEECALAUTOFEECAL, AUTOFEECAL_EDIT, MANUAL
    OC_INSPECTION_SCHEDULE_INTEGRATION_REQUIREDFlag to allow inspection schedule for OC applicationStringYESYES, NO
    OCAPPLICATIONFEECOLLECTIONREQUIREDFlag to generate and collect the application fee for OCStringNOYES, NO
    ONE_DAY_PERMIT_APPLN_INTEGRATION_REQUIREDFlag to enable/disable application type 'one day permit'StringYESYES, NO
    ONE_DAY_PERMIT_INSPECTION_SCHEDULE_INTEGRATION_REQUIRED
    Flag to allow inspection schedule for One day permit applicationStringNOYES, NO
    PDFHEIGHTSUBTRACTIONVALUEThe height in the page where to show/print ULB seal/stamp on eDCR scrutiny reportNumber50Any integer number indicating the height
    PDFWIDTHSUBTRACTIONVALUEThe width in the page where to show/print ULB seal/stamp on eDCR scrutiny reportNumber50Any integer number indicating the height
    PERMITAPPLNFEECOLLECTIONREQUIREDFlag to generate and collect the application fee for permit applicationStringYESYES, NO
    RECENT_DCRRULE_AMENDMENTDATE
    The latest eDCR rules amendment dateString01/01/2019A date in the format dd/MM/yyyy
    DCR_SCRUTINIZED_PLAN_EXPIRY_DAYS
    The No.of days that eDCR scrutinized plan is valid from the date of scrutinyNumber30Any integer number indicating no.of days
    REGULAR_PERMIT_INSPECTION_SCHEDULE_INTEGRATION_REQUIRED
    Flag to enable inspection appointment schedule for a permit applicationStringYESYES, NO
    SENDEMAILFROOMBPAMODULE
    Flag to enable Email from OBPS moduleStringYESYES, NO
    SENDSMSFROOMBPAMODULEFlag to enable SMS from OBPS moduleStringYESYES, NO
    SLAFORBPAAPPLICATIONService Level Agreement (SLA) days for a Permit applicationNumber15Any integer number indicating no.of days
    EIS EMPLOYEE JURISDICTION HIERARCHYThe boundary hierarchy for which the employee can be mapped in the jurisdictionStringADMINISTRATIONCode from Hierarchy Master

    How to Setup New City/State

    Each city/state has their own rule book which explains the flow of application, application input format, notice format, permit format, fee calculation, restrictions for stakeholder, local language support etc. The work flow also decided by city based on the availability of designation or position present in concerned city. The following changes to be add for each city to go live. Each city enabled by adding new schema in the database. Add following data to go live,

    • City information
    • Boundary information
    • Employees information
    • Configuration changes
    • Workflow (if required)

    All the client specific implementations can be grouped in separate branch. 

    Eg:

    https://github.com/egovernments/eGov-Bihar-Implementation

    Permit format order changes are added as  https://github.com/egovernments/eGov-Bihar-Implementation/blob/master/egov/egov-bihar-impl/src/main/java/org/egov/bihar/bpa/service/notice/impl/PermitOrderFormatImpl_Bihar.java



    Support Information

    Features of Building plan approval system


    References and Notes


    Digit BPA Code Base :

    https://github.com/egovernments/digit-bpa.git


    Client specific implementation Code Reference :

    https://github.com/egovernments/eGov-Bihar-Implementation.git