package com.mossle.pim.web.portal; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.List; import javax.annotation.Resource; import com.mossle.api.tenant.TenantHolder; import com.mossle.core.auth.CurrentUserHolder; import com.mossle.core.page.Page; import com.mossle.pim.persistence.domain.PimTask; import com.mossle.pim.persistence.manager.PimTaskManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("pim/portal") public class TaskPortalController { private static Logger logger = LoggerFactory .getLogger(TaskPortalController.class); private CurrentUserHolder currentUserHolder; private TenantHolder tenantHolder; private PimTaskManager pimTaskManager; @RequestMapping("tasks") public String personalTasks() { String userId = currentUserHolder.getUserId(); String tenantId = tenantHolder.getTenantId(); String hql = "from PimTask where userId=? and status='active' order by priority"; Page page = this.pimTaskManager.pagedQuery(hql, 1, 10, userId); List<PimTask> pimTasks = (List<PimTask>) page.getResult(); StringBuilder buff = new StringBuilder(); buff.append("<table class='table table-hover'>"); buff.append(" <thead>"); buff.append(" <tr>"); buff.append(" <th>名称</th>"); buff.append(" <th>时间</th>"); buff.append(" <th width='20%'> </th>"); buff.append(" </tr>"); buff.append(" </thead>"); buff.append(" <tbody>"); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); for (PimTask pimTask : pimTasks) { buff.append(" <tr>"); buff.append(" <td>" + pimTask.getName() + "</td>"); buff.append(" <td>" + dateFormat.format(pimTask.getCreateTime()) + "</td>"); buff.append(" <td>"); buff.append(" <a href='" + ".." + "/pim/pim-task-input.do?id=" + pimTask.getId() + "' class='btn btn-xs btn-primary'>处理</a>"); buff.append(" </td>"); buff.append(" </tr>"); } buff.append(" </tbody>"); buff.append("</table>"); return buff.toString(); } @Resource public void setCurrentUserHolder(CurrentUserHolder currentUserHolder) { this.currentUserHolder = currentUserHolder; } @Resource public void setTenantHolder(TenantHolder tenantHolder) { this.tenantHolder = tenantHolder; } @Resource public void setPimTaskManager(PimTaskManager pimTaskManager) { this.pimTaskManager = pimTaskManager; } }