tomi amar akhane order module and customer and stock module create korba and full order system ta build korba and after order jodi customer product return kore seta o stock a korba -> must any kind of type error resolve korba -> must well swagger documentation likhba every field er -> and akta stock report api banaba stock report requirement: Generate a monthly stock management report in JSON format suitable for rendering directly in an Ant Design Table (Next.js frontend). Follow these exact rules: 1. The report must include both `columns` and `dataSource` objects. 2. Each row in `dataSource` represents one shoe item and must include: - `sl`: serial number - `item`: item name or code (e.g., "Flat Loafer / Loafer-002") - `image`: URL of the shoe image - `size`: numeric size - `opening`: opening stock quantity for the month - `days`: - `raw`: object with daily details (for each day 1–31) having `n`, `r`, `s` (new, return, sold) - `display`: human-readable representation (e.g., "N", "R", "3", "N/R") - `closing`: final closing stock quantity 3. Include one total row with `"isSummary": true` containing total opening and closing. 4. `columns` should include: - Basic columns: SL, Item, Image, Size, Opening - A grouped column `"Days"` with child columns from 1–31 (each `dataIndex: ["days","display",""]`) - Closing column at the end 5. The JSON must be valid and directly usable as `` in Next.js + AntD. 6. Include `uiType: "image"` for image column so frontend can render it with ``. 7. All strings and keys must be in English and follow camelCase naming. 8. Example logic for closing: `closing = opening + total(n) + total(r) - total(s)` 9. Use realistic values for demonstration (N = new stock, R = returned stock, numbers = sold quantity). Output must look like: ```json { "title": "Stock Report - July 2025", "rowKey": "key", "columns": [...], "dataSource": [...] } example_full_json ={ "title": "TLZ Shoe Stock - July 2025", "rowKey": "key", "meta": { "month": "2025-07", "daysInMonth": 31 }, "columns": [ { "title": "SL", "dataIndex": "sl", "key": "sl", "width": 60, "align": "center" }, { "title": "Item", "dataIndex": "item", "key": "item", "width": 160 }, { "title": "Image", "dataIndex": "image", "key": "image", "width": 70, "uiType": "image" }, { "title": "Size", "dataIndex": "size", "key": "size", "width": 70, "align": "center" }, { "title": "Opening", "dataIndex": "opening", "key": "opening", "width": 90, "align": "right" }, { "title": "Days", "key": "days", "children": [ { "title": "1", "dataIndex": ["days", "display", "1"], "key": "d1", "align": "center" }, { "title": "2", "dataIndex": ["days", "display", "2"], "key": "d2", "align": "center" }, { "title": "3", "dataIndex": ["days", "display", "3"], "key": "d3", "align": "center" }, { "title": "4", "dataIndex": ["days", "display", "4"], "key": "d4", "align": "center" }, { "title": "5", "dataIndex": ["days", "display", "5"], "key": "d5", "align": "center" }, { "title": "6", "dataIndex": ["days", "display", "6"], "key": "d6", "align": "center" }, { "title": "7", "dataIndex": ["days", "display", "7"], "key": "d7", "align": "center" }, { "title": "8", "dataIndex": ["days", "display", "8"], "key": "d8", "align": "center" }, { "title": "9", "dataIndex": ["days", "display", "9"], "key": "d9", "align": "center" }, { "title": "10", "dataIndex": ["days", "display", "10"], "key": "d10", "align": "center" }, { "title": "11", "dataIndex": ["days", "display", "11"], "key": "d11", "align": "center" }, { "title": "12", "dataIndex": ["days", "display", "12"], "key": "d12", "align": "center" }, { "title": "13", "dataIndex": ["days", "display", "13"], "key": "d13", "align": "center" }, { "title": "14", "dataIndex": ["days", "display", "14"], "key": "d14", "align": "center" }, { "title": "15", "dataIndex": ["days", "display", "15"], "key": "d15", "align": "center" }, { "title": "16", "dataIndex": ["days", "display", "16"], "key": "d16", "align": "center" }, { "title": "17", "dataIndex": ["days", "display", "17"], "key": "d17", "align": "center" }, { "title": "18", "dataIndex": ["days", "display", "18"], "key": "d18", "align": "center" }, { "title": "19", "dataIndex": ["days", "display", "19"], "key": "d19", "align": "center" }, { "title": "20", "dataIndex": ["days", "display", "20"], "key": "d20", "align": "center" }, { "title": "21", "dataIndex": ["days", "display", "21"], "key": "d21", "align": "center" }, { "title": "22", "dataIndex": ["days", "display", "22"], "key": "d22", "align": "center" }, { "title": "23", "dataIndex": ["days", "display", "23"], "key": "d23", "align": "center" }, { "title": "24", "dataIndex": ["days", "display", "24"], "key": "d24", "align": "center" }, { "title": "25", "dataIndex": ["days", "display", "25"], "key": "d25", "align": "center" }, { "title": "26", "dataIndex": ["days", "display", "26"], "key": "d26", "align": "center" }, { "title": "27", "dataIndex": ["days", "display", "27"], "key": "d27", "align": "center" }, { "title": "28", "dataIndex": ["days", "display", "28"], "key": "d28", "align": "center" }, { "title": "29", "dataIndex": ["days", "display", "29"], "key": "d29", "align": "center" }, { "title": "30", "dataIndex": ["days", "display", "30"], "key": "d30", "align": "center" }, { "title": "31", "dataIndex": ["days", "display", "31"], "key": "d31", "align": "center" } ] }, { "title": "Closing", "dataIndex": "closing", "key": "closing", "width": 90, "align": "right" } ], "dataSource": [ { "key": "row-1", "sl": 1, "item": "Flat Loafer / Loafer-002", "image": "https://example.com/img/loafer-39.jpg", "size": 39, "opening": 30, "days": { "raw": { "1": { "n": 0, "r": 0, "s": 2 }, "2": { "n": 0, "r": 0, "s": 0 }, "3": { "n": 0, "r": 1, "s": 0 }, "4": { "n": 1, "r": 0, "s": 0 } /* ... up to 31 */ }, "display": { "1": "2", "2": "", "3": "R", "4": "N" /* ... up to 31 */ } }, "closing": 62 }, { "key": "row-2", "sl": 2, "item": "Flat Loafer / Loafer-002", "image": "https://example.com/img/loafer-40.jpg", "size": 40, "opening": 6, "days": { "raw": { "1": { "n": 0, "r": 0, "s": 0 }, "2": { "n": 0, "r": 0, "s": 1 }, "3": { "n": 0, "r": 0, "s": 0 } }, "display": { "1": "", "2": "1", "3": "" } }, "closing": 35 }, { "key": "total", "isSummary": true, "item": "Total", "opening": 75, "closing": 275 } ] }