I am new to QGIS and wants to develop a method to generate a series of map in the following case:
I have a polygon feature shapefile of a state and it has multiple polygons inside it of various districts.
I want to divide the whole state into number of overlapping grids and then map them according to the grid.
Here in this image I have highlighted the grid A5. It shows the state polygon along with districts polygons and the grids and its overlap with surrounding grid.

So there are two possibilities when grids are intersected with polygon: either district polygon will be completely inside the grid (which I want to show as continuous line) or some part of a district polygon will be outside the grid or we can call as overlay polygons (i want to show them as dashed line).
I want to make a map of each grid in a data frame and another data frame showing the whole state polygon and having an extent indicator in it, which will highlight the grid which is mapped on the other data frame. Along with this I want to put a map title which shows the state name and grid no (e.g. Chhattisgarh Grid No A5) likewise in all maps.
I have tried the atlas option but desired results were not obtained.
It would be of great help if this can be done automatically using a python script.
The output map is shown below:

@atlas_featurevariable, a lot of what you're describing is possible in an Atlas. – jcarlson Jul 14 '20 at 11:30