async def RebateDelete(ns={}): """ reseller rebate delete id * :param ns: :return: """ db = DBPools() async with db.sqlorContext('kboss') as sor: try: if ns.get('rebatectl_id'): # 根据id查找对应字段具体内容 ctl_res_li = await sor.R('rp_rebate_ctl', {'id': ns.get('rebatectl_id')}) ctl_res = ctl_res_li[0] # 获取rebateid 把 rebate 中对应字段删除 rebateid = ctl_res.get('rebateid') rebate_del_sql = """update rp_rebate set del_flg = '1' where rebateid = '%s';""" % rebateid await sor.sqlExe(rebate_del_sql, {}) await sor.U('rp_rebate_ctl', {'id': ns.get('rebatectl_id'), 'del_flg': '1'}) # 找到对应end_date的那一条数据并更新 end_date ctl_find = { 'resellerid': ctl_res.get('resellerid'), 'productid': ctl_res.get('productid'), 'end_date': ctl_res.get('start_date') } ctl_data_li = await sor.R('rp_rebate_ctl', ctl_find) if ctl_data_li: ctl_data = ctl_data_li[0] ctl_up = { 'id': ctl_data.get('id'), 'end_date': ctl_res.get('end_date') } await sor.U('rp_rebate_ctl', ctl_up) return { 'status': True, 'msg': 'delete rebate success' } elif ns.get('rebate_table_id'): nss = { 'id': ns.get('rebate_table_id'), 'del_flg': '1' } await sor.U('rp_rebate', nss) return { 'status': True, 'msg': 'rebate delete success' } except Exception as e: return { 'status': False, 'err_msg': e } ret = await RebateDelete(params_kw) return ret