def post(self): data = request.json task_type_link = tasks_service.create_or_update_projecttasktypelink( data["projectId"], data["taskTypeId"], data.get("priority")) tasks_service.clear_task_type_cache(task_type_link.task_type_id) projects_service.clear_project_cache(task_type_link.project_id) return {"message": "updated"}, 201
def save_task_type(self, department, data): task_type = TaskType.get_by(shotgun_id=data["shotgun_id"]) data["department_id"] = department.id if task_type is None: task_type = TaskType.get_by(name=data["name"], for_entity=data["for_entity"]) if task_type is None: task_type = TaskType(**data) task_type.save() current_app.logger.info("Task Type created: %s" % task_type) else: existing_task_type = TaskType.get_by( name=data["name"], for_entity=data["for_entity"], department_id=data["department_id"], ) if existing_task_type is not None: data.pop("name", None) data.pop("for_entity", None) data.pop("department_id", None) task_type.update(data) tasks_service.clear_task_type_cache(str(task_type.id)) current_app.logger.info("Task Type updated: %s" % task_type) return task_type
def post_delete(self, instance_dict): tasks_service.clear_task_type_cache(instance_dict["id"])
def post_creation(self, instance): tasks_service.clear_task_type_cache(str(instance.id)) return instance.serialize()
def post_update(self, instance_dict): tasks_service.clear_task_type_cache(instance_dict["id"]) return instance_dict