import city from './geographic/city.json'; import province from './geographic/province.json'; import area from './geographic/area.json'; function getProvince(req: any, res: any) { const currentPage: number = req.query.currentPage ? Number(req.query.currentPage) : 1; const pageSize: number = req.query.pageSize ? Number(req.query.pageSize) : 100; const items = []; console.log('getProvince...'); console.log(currentPage); let i: number; for ( i = (currentPage - 1) * pageSize; i < (Number(currentPage) - 1) * Number(pageSize) + Number(pageSize); ) { if (province.hasOwnProperty(i)) { // console.log((Number(currentPage) - 1) * Number(pageSize) + Number(pageSize)); items.push(province[i]); } i += 1; } return res.json({ list: items, pagination: { total: 34, pageSize: Number(req.query.pageSize) || 100, current: Number(req.query.currentPage) || 1, }, }); } function getCity(req: any, res: any) { const currentPage: number = req.query.currentPage ? Number(req.query.currentPage) : 1; const pageSize: number = req.query.pageSize ? Number(req.query.pageSize) : 100; const items = []; console.log('getCity...'); console.log(currentPage); let i: number; console.log('getCity:'); // console.log(req.params.province); // console.log(city[req.params.province]); // console.log((Number(currentPage) - 1) * Number(pageSize) + Number(pageSize)) for ( i = (currentPage - 1) * pageSize; i < (Number(currentPage) - 1) * Number(pageSize) + Number(pageSize); ) { if (city[req.params.province].hasOwnProperty(i)) { // console.log((Number(currentPage) - 1) * Number(pageSize) + Number(pageSize)); console.log(i); items.push(city[req.params.province][i]); } i += 1; } console.log(items); return res.json({ list: items, pagination: { total: 34, pageSize: Number(req.query.pageSize) || 100, current: Number(req.query.currentPage) || 1, }, }); } function getArea(req: any, res: any) { const currentPage: number = req.query.currentPage ? Number(req.query.currentPage) : 1; const pageSize: number = req.query.pageSize ? Number(req.query.pageSize) : 100; const items = []; console.log('getArea...'); console.log(currentPage); let i: number; for ( i = (currentPage - 1) * pageSize; i < (Number(currentPage) - 1) * Number(pageSize) + Number(pageSize); ) { if (area[req.params.city].hasOwnProperty(i)) { // console.log((Number(currentPage) - 1) * Number(pageSize) + Number(pageSize)); items.push(area[req.params.city][i]); } i += 1; } return res.json({ list: items, pagination: { total: 34, pageSize: Number(req.query.pageSize) || 100, current: Number(req.query.currentPage) || 1, }, }); } export default { 'GET /api/geographic/province': getProvince, 'GET /api/geographic/city/:province': getCity, 'GET /api/geographic/area/:city': getArea, };