# 删除和上传成绩 from loguru import logger from HelperLogInOut import apiLogin, apiLogout, generateTimestamp from HelperFullPlay import implFullPlayAction from MyConfig import testUid def implDeleteMusicRecord( userId: int, currentLoginTimestamp: int, currentLoginResult, musicId: int, levelId: int, ) -> str: musicData = { "musicId": musicId, "level": levelId, "playCount": 1, "achievement": 0, "comboStatus": 0, "syncStatus": 0, "deluxscoreMax": 0, "scoreRank": 0, "extNum1": 0, } userAllPatches = { "upsertUserAll": { "userMusicDetailList": [musicData], "isNewMusicDetailList": "0", # 0为编辑,即可删除掉成绩 } } result = implFullPlayAction( userId, currentLoginTimestamp, currentLoginResult, musicData, userAllPatches ) return result def implUploadMusicRecord( userId: int, currentLoginTimestamp: int, currentLoginResult, musicId: int, levelId: int, achievement: int, dxScore: int, ) -> str: """ VERY EARLY STAGE OF UPLOADING SCORES!!!! DO NOT USE THIS!!!! 上传成绩的参考实现。 """ # 要上传的数据 musicData = { "musicId": musicId, "level": levelId, "playCount": 1, "achievement": achievement, "comboStatus": 0, "syncStatus": 0, "deluxscoreMax": dxScore, "scoreRank": 0, "extNum1": 0, } userAllPatches = { "upsertUserAll": { "userMusicDetailList": [musicData], "isNewMusicDetailList": "1", # 0编辑 1插入 } } result = implFullPlayAction( userId, currentLoginTimestamp, currentLoginResult, musicData, userAllPatches ) return result if __name__ == "__main__": userId = testUid currentLoginTimestamp = generateTimestamp() loginResult = apiLogin(currentLoginTimestamp, userId) musicId = 852 # 852 is tiamat levelId = 3 # 3 is MASTER if loginResult["returnCode"] != 1: logger.info("登录失败") exit() try: logger.info( implDeleteMusicRecord( userId, currentLoginTimestamp, loginResult, musicId, levelId ) ) # logger.info(implUploadMusicRecord(userId, currentLoginTimestamp, loginResult, musicId, levelId, 1000000, 100)) logger.info(apiLogout(currentLoginTimestamp, userId)) finally: logger.info(apiLogout(currentLoginTimestamp, userId)) # logger.warning("Error")