Beispiel #1
0
 def get_user_extension_birthday(self, obj):
     try:
         birthday = self.get_the_argument(obj, USER_EXTENSION_BIRTHDAY,
                                          DEFAULT)
         if not birthday:
             return DEFAULT
         else:
             return OHHODatetime.string2date(birthday)
     except Exception as ex:
         return DEFAULT
Beispiel #2
0
    def match_by_condition_version2(self, user_id, user_id_list):
        # 根据user_id获取配对条件
        # 根据user_id_list获取配对用户列表
        # 根据条件从用户列表中配对

        # result = user_id_list
        # return result

        result = list()
        condition = self.condition_relation.get_nearest_match_relation_by_user(
            user_id)
        if condition:
            match_condition = self.condition.get_by_id(
                condition.match_condition_id)
            if match_condition:
                query = self.user_extension.get_by_user_list(user_id_list)

                sex = match_condition.sex
                if sex and sex != 3:
                    query = self.user_extension.get_by_sex(query, sex)

                small_age = match_condition.small_age
                big_age = match_condition.big_age
                if small_age and big_age:
                    this_year = OHHODatetime.get_now().year
                    small_age_year = this_year - small_age
                    big_age_year = this_year - big_age

                    big_age_year_start = str(big_age_year) + "-1-1"
                    date_big_age_year_start = OHHODatetime.string2date(
                        big_age_year_start)
                    small_age_year_end = str(small_age_year) + "-1-1"
                    date_small_age_year_end = OHHODatetime.string2date(
                        small_age_year_end)
                    query = self.user_extension.find_by_birthday(
                        query, date_big_age_year_start,
                        date_small_age_year_end)
                if self.user_extension.is_empty(query):
                    pass
                else:
                    result = [ue.user_id for ue in query]
        return result