61 lines
2.3 KiB
Python
61 lines
2.3 KiB
Python
"""注释"""
|
|
import requests
|
|
from celery import Task
|
|
from channels.layers import get_channel_layer
|
|
|
|
from django_celery.main import app
|
|
from wechat_token.token工具包 import sixToken
|
|
from wechat_数据库.支付订单数据库.商品订单数据 import order订单
|
|
from wechat_项目工具包.小程序交易管理服务.小程序交易订单管理工具 import miniTransaction交易管理服务工具
|
|
|
|
channel_layer = get_channel_layer()
|
|
import logging
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
# 这是任务执行成功后的回调监听函数;(使用方法: 只需要在调用任务的时候添加属性 link=函数名.s() )
|
|
@app.task(bind=True)
|
|
def on_success_callback(self: Task, result, *args, **kwargs):
|
|
"""这是任务执行成功后的回调监听函数"""
|
|
# 在这里实现你的回调逻辑
|
|
print("成功地回调")
|
|
task_name = self.name
|
|
# 获取触发回调的任务ID
|
|
task_id = self.request.id
|
|
print(self.request.parent_id) # 这个参数非常重要,是执行任务的🆔(可以知道是哪个任务的回调)
|
|
print(f"任务 {task_name} (ID: {task_id}) 执行成功,回调函数已触发")
|
|
|
|
|
|
class MyCustomTask(Task):
|
|
"""注释"""
|
|
|
|
def on_success(self, retval, task_id, args, kwargs):
|
|
""" 任务执行成功,回调函数打印返回值 """
|
|
# 在任务成功执行后运行的逻辑
|
|
# logger.info( f"任务 {task_id} 成功: {retval}" )
|
|
pass
|
|
|
|
def on_retry(self, exc, task_id, args, kwargs, einfo):
|
|
""" 在任务重试后运行的逻辑 """
|
|
|
|
pass
|
|
|
|
def on_failure(self, exc, task_id, args, kwargs, einfo):
|
|
"""参数"""
|
|
# 在任务执行失败后运行的逻辑
|
|
pass
|
|
|
|
|
|
@app.task(base=MyCustomTask, bind=True)
|
|
def mini调用微信小程序交易管理服务录入订单接口(self: Task,order支付商家侧订单号, **kwargs, ):
|
|
"""执行这个任务,:会自动打印回调"""
|
|
# 任务完成后,往前端发消息 print("任务执行了")
|
|
# TODO my_task.apply_async( kwargs={ "name": "这里是传递的名称的值" }, queue="xiao_queue", )
|
|
# 根据订单号: 对运单接口发起生成运单的物流信息
|
|
print("\n🍎 🍏 🍊 🍎 🍏 🍊 🍎 🍏 🍊 到底调用了没有呀", )
|
|
|
|
miniTransaction交易管理服务工具().发货信息录入(order支付商家侧订单号=order支付商家侧订单号)
|
|
|
|
|