升级商城逻辑
This commit is contained in:
@@ -120,12 +120,37 @@ router.get('/zhejiang', async (req, res) => {
|
||||
*/
|
||||
router.get('/provinces', async (req, res) => {
|
||||
try {
|
||||
// 递归获取子区域的函数
|
||||
async function getChildrenRecursively(parentCode, level) {
|
||||
const [children] = await getDB().execute(
|
||||
`SELECT code, name as label, level FROM china_regions
|
||||
WHERE parent_code = ? AND level = ?
|
||||
ORDER BY code`,
|
||||
[parentCode, level]
|
||||
);
|
||||
|
||||
// 为每个子区域递归获取其子区域
|
||||
for (let child of children) {
|
||||
if (level < 3) { // 最多到区县级别(level 3)
|
||||
child.children = await getChildrenRecursively(child.code, level + 1);
|
||||
}
|
||||
}
|
||||
|
||||
return children;
|
||||
}
|
||||
|
||||
// 获取所有省份
|
||||
const [provinces] = await getDB().execute(
|
||||
`SELECT code, name FROM china_regions
|
||||
`SELECT code, name as label, level FROM china_regions
|
||||
WHERE level = 1
|
||||
ORDER BY code`
|
||||
);
|
||||
|
||||
// 为每个省份递归获取城市和区县
|
||||
for (let province of provinces) {
|
||||
province.children = await getChildrenRecursively(province.code, 2);
|
||||
}
|
||||
|
||||
res.json({
|
||||
success: true,
|
||||
data: provinces
|
||||
|
||||
Reference in New Issue
Block a user