Nessuna descrizione

household_views.py 2.8KB

    # -*- coding: utf-8 -*- from __future__ import division import logging from django_logit import logit from django.conf import settings from django_response import response from TimeConvert import TimeConvert as tc from pywe_template_message import send_template_message from account.models import UserInfo from household.models import HouseholdThermometerMeasureLogInfo, HouseholdThermometerEquipmentBindInfo logger = logging.getLogger('console') @logit def mp_bind_thermometer(request): user_id = request.POST.get('user_id', '') macid = request.POST.get('macid', '') HouseholdThermometerEquipmentBindInfo.objects.get_or_create(user_id=user_id, macid=macid) return response() @logit def mp_thermometer_list(request): user_id = request.POST.get('user_id', '') eqpts = HouseholdThermometerEquipmentBindInfo.objects.filter(user_id=user_id, status=True) eqpts = [eqpt.data for eqpt in eqpts] return response(data={ eqpts: eqpts }) @logit def mp_upload_temperature(request): user_id = request.POST.get('user_id', '') macid = request.POST.get('macid', '') temperature = request.POST.get('temperature', '') HouseholdThermometerMeasureLogInfo.objects.create(user_id=user_id, macid=macid, temperature=temperature) userids = HouseholdThermometerEquipmentBindInfo.objects.values_list('user_id', flat=True).filter(macid=macid, status=True) wxcfg = settings.WECHAT.get('JSAPI', {}) appid = wxcfg.get('appID') secret = wxcfg.get('appsecret') wxcfg = settings.WECHAT.get('MINIAPP', {}) miniappid = wxcfg.get('appID') users = UserInfo.objects.filter(user_id__in=userids) data = { "first": { "value": u'你的家人测温了,请查收~~~', "color": "#173177" }, "product": { "value": macid, "color": "#173177" }, "price": { "value": temperature, "color": "#173177" }, "time": { "value": tc.local_string(), "color": "#173177" }, "remark": { "value": u'感谢你的使用', "color": "#173177" } } for user in users: res = send_template_message(user_id=user.openid, template_id=settings.TEMPLATE_ID_HOUSEHOLD_THERMOMETER_MEASURE, data=data, miniappid=miniappid, minipagepath='/pages/index/index', appid=appid, secret=secret, storage=RedisStorage(r)) logger.info(res) return response() @logit def mp_temperature_list(request): user_id = request.POST.get('user_id', '') macid = request.POST.get('macid', '') logs = HouseholdThermometerMeasureLogInfo.objects.filter(macid=macid, status=True) logs = [log.data for log in logs] return response(data={ 'logs': logs })