def update_solution_active(**args): token = token_service.get_token(args.get('http_request')) user_login = token.username has_role = token.has_role('ROLE_MANAGER') solution = Solution() solution.__dict__ = solution_db.get_solution_by_id(args.get('solutionId')) if user_login != solution.authorLogin and not has_role: raise Exception('403 Forbidden') if solution.active and not args.get('active'): credit = Credit() credit.__dict__ = credit_service.find_user_credit(user_login) if credit.credit < 20: raise Exception('400 Bad request') else: solution.active = args.get('active') solution_db.update_solution_active(solution) credit_service.do_update_credit( credit, -20, '将AI模型<{}>设为私有'.format(solution.name)) return 0 else: solution.active = args.get('active') solution_db.update_solution_active(solution) return 0
def create_solution(**args): token = token_service.get_token(args.get('http_request')) if not token.is_valid: raise Exception('403 Forbidden') user_login = token.username solution = Solution() solution.__dict__ = args.get('solution') if user_login != solution.authorLogin and user_login != 'internal': raise Exception('403 Forbidden') solution.active = True solution.company = '' solution.starCount = 0 solution.viewCount = 0 solution.downloadCount = 0 solution.commentCount = 0 solution.displayOrder = 0 solution.createdDate = mytime.now() solution.modifiedDate = mytime.now() solution_id = solution_db.create_solution(solution) # 为solution创建描述,其uuid设为与solution的uuid一致。 ----huolongshe # description表只能在这里创建 description = Description() description.solutionUuid = solution.uuid description.authorLogin = solution.authorLogin description.content = r'<p>无内容</p>' description_db.create_description(description) credit = Credit() credit.__dict__ = credit_service.find_user_credit(solution.authorLogin) credit_service.do_update_credit(credit, 3, '创建新模型<{}>'.format(solution.name)) return solution_id