importdatetimeimportosimportmssqlhelper
ms= mssqlhelper.MSSQL(host="192.168.0.108", user="sa", pwd="sa", db="ComPrject")defgetAreas(cityid):
arealist=ms.ExecQuery("select *From dbo.areas where cityid='%s'" %cityid)returnarealistdefgetCity(provinces):
citylist=ms.ExecQuery("select *From dbo.cities where provinceid='%s'" %provinces)returncitylistdefgetProvinces():
provlist=ms.ExecQuery("select *From dbo.provinces")returnprovlistdefcreateFileJson():
date=datetime.datetime.now().strftime('%Y-%m-%d')
path=date+'-provinces.json'
returnpathdefwriteJson(path):
provlist=getProvinces()
with open(path,"w+",encoding="utf-8") as f:
f.write("[")
lp=0for p inprovlist:if lp>0:
f.write(",\n")else:
f.write("\n")
f.write("{\n")
f.write('"Code":"%s"\n'% p[1])
f.write(',"Name":"%s"\n'% p[2])
f.write(',Nodes:[\n')
citylist=getCity(p[1])
lc=0for c incitylist:if lc>0:
f.write("\t,\n")else:
f.write("\n")
f.write("\t{\n")
f.write('\t"Code":"%s"\n'% c[1])
f.write('\t,"Name":"%s"\n'% c[2])
f.write('\t,Nodes:[\n')
arealist= getAreas(c[1])
la=0for a inarealist:if la>0:
f.write("\t\t,\n")else:
f.write("\n")
f.write("\t\t{\n")
f.write('\t\t"Code":"%s"\n'% a[1])
f.write('\t\t,"Name":"%s"\n'% a[2])
f.write("\t\t}\n")
la+= 1f.write("\t]\n")
f.write("\t}\n")
lc+= 1f.write("]\n")
f.write("}\n")
lp+= 1f.write("]\n")if __name__ == '__main__':
path=createFileJson()
writeJson(path)