| | |
| | | def SetValue7(self, value7): self.dbRecData.Value7 = value7
|
| | | def GetValue8(self): return self.dbRecData.Value8
|
| | | def SetValue8(self, value8): self.dbRecData.Value8 = value8
|
| | | def __GetUserDataDict(self):
|
| | | def GetUserDataDict(self):
|
| | | if self.__userDataDict == None:
|
| | | try:
|
| | | self.__userDataDict = eval(self.dbRecData.UserData)
|
| | |
| | | self.__userDataDict = {}
|
| | | return self.__userDataDict
|
| | | def GetUserDataByKey(self, key, defaultValue=None):
|
| | | userDataDict = self.__GetUserDataDict()
|
| | | userDataDict = self.GetUserDataDict()
|
| | | if key in userDataDict:
|
| | | return userDataDict[key]
|
| | | return defaultValue
|
| | | def SetUserDataByKey(self, key, value):
|
| | | userDataDict = self.__GetUserDataDict()
|
| | | userDataDict = self.GetUserDataDict()
|
| | | userDataDict[key] = value
|
| | | self.__userDataChange = True
|
| | | return
|
| | |
| | | return {"RecID":self.GetRecID(), "RecType":self.GetRecType(), "Time":self.GetTime(),
|
| | | "Value1":self.GetValue1(), "Value2":self.GetValue2(), "Value3":self.GetValue3(), "Value4":self.GetValue4(),
|
| | | "Value5":self.GetValue5(), "Value6":self.GetValue6(), "Value7":self.GetValue7(), "Value8":self.GetValue8(),
|
| | | "UserDataDict":self.__GetUserDataDict()
|
| | | "UserDataDict":self.GetUserDataDict()
|
| | | }
|
| | | def SetAttr(self, attrDict, isClear=False):
|
| | | if isClear:
|
| | |
| | | matchRecDataList.append(recData)
|
| | | return matchRecDataList
|
| | |
|
| | | def GetGameRecDataMatchEx(self, recType, valueList, findone=False):
|
| | | '''获取记录类型对应的匹配value值记录
|
| | | @param recType: 记录类型
|
| | | @param valueList: [value1, value2, ...] value为None时不判断该值
|
| | | @param findone: 是否只匹配一条满足的记录
|
| | | @return: recData or [recData, ...] or None
|
| | | '''
|
| | | if recType not in self.recTypeDict:
|
| | | return
|
| | | recDataDict = self.recTypeDict[recType]
|
| | | for recID in recDataDict.keys():
|
| | | matchRet = self.GetGameRecDataMatch(recType, recID, valueList, findone)
|
| | | if matchRet:
|
| | | return matchRet
|
| | | return
|
| | | |
| | | def GetGameRecDataFirst(self, recType, recID, isAddNew):
|
| | | ## 获取记录类型对应的第一条记录,适用于仅需一条的记录类型
|
| | | # @param isAddNew: 没有记录时是否添加一条新记录,一般获取后需要更新数据的可以设置为True,仅判断用的建议设置为False,减少产生多余空数据
|
| | | recData = None
|
| | | recDataList = self.GetGameRecDataList(recType, recID)
|
| | | if recDataList:
|
| | | recData = recDataList[0]
|
| | | elif isAddNew:
|
| | | recData = self.AddGameRecData(recType, recID)
|
| | | return recData
|
| | | |
| | | def GetGameRecDataList(self, recType, recID):
|
| | | ## 获取记录类型对应记录列表 [recData, ...]
|
| | | if recType not in self.recTypeDict:
|