1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # coding=utf-8
- from apilib.monetary import VirtualCoin, RMB
- from apps.web.device.models import Device
- from base import init_env
- init_env(True)
- from apps.web.user.models import ConsumeRecord, UniqueUser
- from apps.web.core.device_define.ywt_chongdiangui_new import Calculater
- def _handle_not_finished_order():
- """
- 某些信号状态不好的情况下 粤万通的充电柜可能会导致结算失败,从而无法继续使用下一个订单
- 清理程序
- """
- userId = raw_input("请输入用户个人中心ID, userId = ")
- try:
- user = UniqueUser.objects.get(userId=userId) # type: UniqueUser
- openId = user.openId
- except Exception:
- print u"未找到用户"
- return
- orders = ConsumeRecord.objects.filter(
- openId=openId,
- status__ne="finished"
- )
- for _order in orders: # type: ConsumeRecord
- _dev = Device.get_dev(_order.devNo)
- consumeMoney = Calculater.get_consume_by_order(_dev, _order.orderNo)
- isContinue = raw_input("""
- 订单编号:{};
- 当前订单状态:{};
- 订单结算金额: {};
- yes/no""".format(_order.orderNo, _order.status, consumeMoney))
- if isContinue == "yes":
- _order.update(money=RMB(consumeMoney).mongo_amount, coin=VirtualCoin(consumeMoney).mongo_amount)
- _order.reload()
- _order.s_to_e()
- print "OK!"
- else:
- print "ignore"
|