package com.mossle.form.support; import java.util.ArrayList; import java.util.List; import javax.annotation.Resource; import com.mossle.api.form.FormConnector; import com.mossle.api.form.FormDTO; import com.mossle.form.persistence.domain.FormTemplate; import com.mossle.form.persistence.manager.FormTemplateManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class FormConnectorImpl implements FormConnector { private static Logger logger = LoggerFactory .getLogger(FormConnectorImpl.class); private FormTemplateManager formTemplateManager; public List<FormDTO> getAll(String tenantId) { String hql = "from FormTemplate where tenantId=?"; List<FormTemplate> formTemplates = formTemplateManager.find(hql, tenantId); List<FormDTO> formDtos = new ArrayList<FormDTO>(); for (FormTemplate formTemplate : formTemplates) { FormDTO formDto = new FormDTO(); formDtos.add(formDto); formDto.setId(formTemplate.toString()); formDto.setCode(formTemplate.getCode()); formDto.setName(formTemplate.getName()); } return formDtos; } public FormDTO findForm(String code, String tenantId) { String hql = "from FormTemplate where code=? and tenantId=?"; FormTemplate formTemplate = formTemplateManager.findUnique(hql, code, tenantId); if (formTemplate == null) { logger.error("cannot find form : {}, {}", code, tenantId); return null; } FormDTO formDto = new FormDTO(); formDto.setId(formTemplate.getId().toString()); formDto.setCode(formTemplate.getCode()); formDto.setName(formTemplate.getName()); if (Integer.valueOf(1).equals(formTemplate.getType())) { formDto.setRedirect(true); formDto.setUrl(formTemplate.getContent()); } else { formDto.setContent(formTemplate.getContent()); } return formDto; } @Resource public void setFormTemplateManager(FormTemplateManager formTemplateManager) { this.formTemplateManager = formTemplateManager; } }