kboss/b/lease_product/provider_rate.dspy
2025-07-16 14:27:17 +08:00

38 lines
1.1 KiB
Plaintext

async def provider_rate(ns={}):
"""
供应商-空闲率-租售率
:param ns:
:return:
"""
data = {}
try:
data["providerid"] = ns['providerid']
except Exception as e:
return {"status": False, "msg": f"get key error, please check key:{str(e)}"}
db = DBPools()
async with db.sqlorContext('kboss') as sor:
data['del_flg'] = 0
sql_data = await sor.R("lease_server_status", data)
if not sql_data:
return {"status": False, "msg": "no data"}
else:
lease_server = 0
free_server = 0
for i in sql_data:
if i['status'] == 0: # 可租
free_server += 1
if i['status'] == 2: # 租赁中
lease_server += 1
free_rate = round(free_server / len(sql_data) * 100, 2)
lease_rate = round(lease_server / len(sql_data) * 100, 2)
return {"status": True, "free_rate": free_rate, "lease_rate": lease_rate}
return {"status": False, "msg": "sql error"}
ret = await provider_rate(params_kw)
return ret