def getHouseArea(request): today = todayWithChineseTZ().strftime("%Y-%m-%d") areas = [] areaCounts = [] totalAreas = HouseService.getOnlineHouses(today) for (k,v) in totalAreas.items(): areas.append(k) areaCounts.append(v) data = { 'count': len(totalAreas), 'areas': areas, 'areaCounts': areaCounts } return JsonResponse(data, content_type='application/json; charset=utf-8')
def index(request): today = todayWithChineseTZ() dailySummary = HouseService.listDailySummary(today)[0] soldPercent = round(dailySummary.soldRooms/dailySummary.totalRooms, 2) lastUpdated = toChineseTZ(dailySummary.lastUpdated) lastUpdated = lastUpdated.strftime("%Y-%m-%d %H:%M:%S") return render(request, 'index.html',{ 'turnover': round(dailySummary.turnover, 2), 'totalRooms': dailySummary.totalRooms, 'soldRooms': dailySummary.soldRooms, 'soldPercent': format(soldPercent, '.00%'), 'lastUpdated': lastUpdated, })
def saveDailySummary(data): now = nowWithChineseTZ() today = todayWithChineseTZ() try: dailySummary = DailySummary.objects.get(date=data['date']) dailySummary.totalRooms = data['totalRooms'] dailySummary.soldRooms = data['soldRooms'] dailySummary.turnover = data['turnover'] dailySummary.date = data['date'] dailySummary.lastUpdated = now except DailySummary.DoesNotExist: dailySummary = DailySummary( totalRooms=data['totalRooms'], soldRooms=data['soldRooms'], turnover=data['turnover'], date=data['date'], lastUpdated=now) dailySummary.save()
def saveHouseSold(houseId, data): now = nowWithChineseTZ() today = todayWithChineseTZ() try: houseSold = HouseSold.objects.get(houseId=houseId, date=today) houseSold.price = float(data['price4hour']) houseSold.specialPrice=float(data['specialPrice']) if data['specialPrice'] else 0 houseSold.status=int(data['sold']) if((houseSold.status == 1) and (not houseSold.lastUpdated)): houseSold.lastUpdated = now except HouseSold.DoesNotExist: houseSold = HouseSold(houseId=houseId, date=today, price=float(data['price4hour']), specialPrice=float(data['specialPrice']) if data['specialPrice'] else 0, status=int(data['sold']), lastUpdated=now) houseSold.save()
def readHudouOnlineData(self): pageIndex = 0 hasPage = True print('Fetching data...') while (hasPage): data = self.getData(pageIndex, PAGE_SIZE) HouseService.saveAllHouses(data['data']) pageIndex = pageIndex + 1 hasPage = True if (pageIndex < int(data['pagenum'])) else False # generate daily summary today = todayWithChineseTZ() HouseService.generateDailySummary(today) print('Data fetching completed.') #DataFetcher.readHudouOnlineData(DataFetcher)
def getAccessHistory(request): today = todayWithChineseTZ().strftime("%Y-%m-%d") data = {'data': HouseService.getAccessHistory(today + ' 00:00:00', today + ' 23:59:59')} return JsonResponse(data, content_type='application/json; charset=utf-8')