async def dimission_transfer(ns): """ 离职交接 dimission_user_id-离职销售id transfer_user_id-转接销售id :param ns: :return: """ db = DBPools() dimission_user_id = ns.get('dimission_user_id') transfer_user_id = ns.get('transfer_user_id') async with db.sqlorContext('kboss') as sor: try: # 查询离职销售的详细信息 dimission_user = await sor.R('users', {'id': dimission_user_id}) if dimission_user[0]['user_status'] != "2": return {'status': False, 'msg': '该销售人员未离职,无法进行转接'} # 查询转接销售的详细信息 transfer_user = await sor.R('users', {'id': transfer_user_id}) if not transfer_user: return {'status': False, 'msg': '暂无销售,无法转接'} if transfer_user[0]['user_status'] == "2": return {'status': False, 'msg': '转接销售人员也已离职,无法进行转接'} customer = await sor.R('customer', {'salemanid': dimission_user[0]['id']}) if not customer: return {'status': False, 'msg': '客户已转接'} transferred_customers = [] # 保存转接过来的客户 for c in customer: await sor.U('customer', {"salemanid": transfer_user_id, "id": c["id"]}) transferred_customers.append(c) # 添加到转接过来的客户列表 # 存入转接记录表shishi transfer_data = { 'dimission_id': dimission_user_id, 'change_id': transfer_user_id, 'customer_id': c["customerid"] } await sor.C('transfer_record',transfer_data) return { 'status': True, 'msg': '转接销售成功', 'zj_cust': transferred_customers, } except Exception as e: print(e) return {'status': False, 'msg': '操作失败'} ret = await dimission_transfer(params_kw) return ret