private TaskInstanceEntity buildEntity()

in extension/storage/storage-mongodb/src/main/java/com/alibaba/smart/framework/engine/persister/mongo/service/MongoTaskInstanceStorage.java [251:295]


    private TaskInstanceEntity buildEntity(TaskInstance instance) {
        TaskInstanceEntity taskInstanceEntity= new TaskInstanceEntity();
        taskInstanceEntity.setProcessInstanceId(instance.getProcessInstanceId());
        taskInstanceEntity.setProcessDefinitionIdAndVersion(instance.getProcessDefinitionIdAndVersion());
        taskInstanceEntity.setExecutionInstanceId(instance.getExecutionInstanceId());
        taskInstanceEntity.setActivityInstanceId(instance.getActivityInstanceId());
        taskInstanceEntity.setProcessDefinitionType(instance.getProcessDefinitionType());
        taskInstanceEntity.setProcessDefinitionActivityId(instance.getProcessDefinitionActivityId());
        taskInstanceEntity.setClaimUserId(instance.getClaimUserId());
        taskInstanceEntity.setPriority(instance.getPriority());
        taskInstanceEntity.setStatus(instance.getStatus());
        taskInstanceEntity.setTag(instance.getTag());
        taskInstanceEntity.setClaimTime(instance.getClaimTime());
        taskInstanceEntity.setComment(instance.getComment());
        taskInstanceEntity.setExtension(instance.getExtension());
        taskInstanceEntity.setTitle(instance.getTitle());

        Date now = DateUtil.getCurrentDate();
        taskInstanceEntity.setGmtCreate(now);
        taskInstanceEntity.setGmtModified(now);


        List<TaskAssigneeInstance> taskAssigneeInstanceList = instance.getTaskAssigneeInstanceList();
        if(CollectionUtil.isNotEmpty(taskAssigneeInstanceList)){
            List<TaskAssigneeEntity> assigneeList  = new ArrayList<TaskAssigneeEntity>(taskAssigneeInstanceList.size());

            for (TaskAssigneeInstance taskAssigneeInstance : taskAssigneeInstanceList) {
                TaskAssigneeEntity taskAssigneeEntity = new TaskAssigneeEntity();
                taskAssigneeEntity.setProcessInstanceId(taskAssigneeInstance.getProcessInstanceId());
                taskAssigneeEntity.setTaskInstanceId(taskAssigneeInstance.getTaskInstanceId());
                taskAssigneeEntity.setAssigneeId(taskAssigneeInstance.getAssigneeId());
                taskAssigneeEntity.setAssigneeType(taskAssigneeInstance.getAssigneeType());
                taskAssigneeEntity.setGmtCreate(now);
                taskAssigneeEntity.setGmtModified(now);
                assigneeList.add(taskAssigneeEntity);

            }

            taskInstanceEntity.setAssigneeList(assigneeList);

        }

        return taskInstanceEntity;

    }