Commit d6a8df9b by java-lixy

消息中心 小红圈

parent 185f311c
......@@ -8,6 +8,8 @@ import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import com.ejweb.modules.sys.entity.User;
import com.ejweb.modules.workbench.service.NoticeService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
......@@ -38,6 +40,8 @@ public class MenuController extends BaseController {
@Autowired
private SystemService systemService;
@Autowired
private NoticeService noticeService;
@ModelAttribute("menu")
public Menu get(@RequestParam(required=false) String id) {
......@@ -115,7 +119,14 @@ public class MenuController extends BaseController {
@RequiresPermissions("user")
@RequestMapping(value = "tree")
public String tree() {
public String tree(Model model) {
User user = UserUtils.getUser();
Integer count = noticeService.getMessageCount(user.getId());
String result = "";
if (count != 0){
result = count.toString();
}
model.addAttribute("result", result);
return "modules/sys/menuTree";
}
......@@ -148,7 +159,7 @@ public class MenuController extends BaseController {
/**
* isShowHide是否显示隐藏菜单
* @param extId
* @param isShowHidden
* @param isShowHide
* @param response
* @return
*/
......
......@@ -25,4 +25,6 @@ public interface ReportNoticeMapper extends CrudDao<ReportNotice> {
* 获取列表
*/
List<ReportNotice> selectBySendToId(@Param("sendToId") String sendToId) throws Exception;
int getMessageCount(String id);
}
\ No newline at end of file
......@@ -37,4 +37,8 @@ public class NoticeService{
record.setStatus("1");
noticeMapper.updateByPrimaryKeySelective(record);
}
public int getMessageCount(String id) {
return noticeMapper.getMessageCount(id);
}
}
......@@ -16,6 +16,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* Created by mengxy on 2017/9/15.
......@@ -97,4 +99,18 @@ public class NoticeController extends BaseController {
}
return "redirect:" + adminPath + "/notice/list";
}
@RequestMapping("prompt")
public void getMessageCount(HttpServletResponse response) throws IOException {
User user = UserUtils.getUser();
Integer count = noticeService.getMessageCount(user.getId());
String result = "";
if (count != 0){
result = count.toString();
}
PrintWriter out = response.getWriter();
response.setContentType("application/json;charset=utf-8");
out.write(result);
out.close();
}
}
......@@ -15,8 +15,8 @@
<result column="update_date" property="updateDate" jdbcType="TIMESTAMP" />
</resultMap>
<sql id="Base_Column_List" >
id, report_id, title, send_time, send_from_id, send_to_id, status, create_by, DATE_FORMAT(create_date,'%Y-%m-%d %H:%i:%s'), update_by,
DATE_FORMAT(update_date,'%Y-%m-%d %H:%i:%s')
id, report_id, title, send_time, send_from_id, send_to_id, status, create_by, create_date, update_by,
update_date
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
select
......@@ -158,4 +158,14 @@
WHERE send_to_id = #{sendToId,jdbcType=VARCHAR}
order by create_date desc
</select>
<select id="getMessageCount" resultType="Integer">
SELECT
count(*)
FROM
CT_BBTC_REPORT_NOTICE n
WHERE
n.SEND_TO_ID = #{sendToId,jdbcType=VARCHAR}
AND n.STATUS = '0'
</select>
</mapper>
\ No newline at end of file
......@@ -27,6 +27,14 @@
</script>
</head>
<body> --%>
<script type="text/javascript">
function showMessage() {
var result = "${result}";
if (result == "") {
$("#messageDiv").hide();
}
}
</script>
<div class="accordion" id="menu-${param.parentId}">
<c:set var="menuList" value="${fns:getMenuList()}"/><c:set var="firstMenu" value="true"/>
<c:forEach items="${menuList}" var="menu" varStatus="idxStatus">
......@@ -35,8 +43,14 @@
<c:if test="${(fns:getUser().admin && menu.id ne '81687207761300463255') || (!fns:getUser().admin)}">
<!-- -->
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#menu-${param.parentId}" data-href="#collapse-${menu.id}" href="#collapse-${menu.id}" title="${menu.remarks}"><i class="icon-chevron-${not empty firstMenu && firstMenu ? 'down' : 'right'}"></i>&nbsp;${menu.name}</a>
<div class="accordion-heading" style="position:relative;"><div>
<a class="accordion-toggle" data-toggle="collapse" data-parent="#menu-${param.parentId}" data-href="#collapse-${menu.id}" href="#collapse-${menu.id}" title="${menu.remarks}">
<i class="icon-chevron-${not empty firstMenu && firstMenu ? 'down' : 'right'}"></i>&nbsp;${menu.name}</a></div>
<c:if test="${menu.name eq '消息中心'}">
<div id="messageDiv" style="position:absolute;right:20px;top:10px;width:15px; height:15px; background-color:#F00; border-radius:25px;">
<span id="promptMessage" style="height:15px; line-height:15px; display:block; color:#FFF; text-align:center">${result}</span>
</div>
</c:if>
</div>
<div id="collapse-${menu.id}" class="accordion-body collapse ${not empty firstMenu && firstMenu ? 'in' : ''}">
<div class="accordion-inner">
......@@ -61,6 +75,8 @@
</div>
</c:if>
</c:if>
</c:forEach></div><%--
</c:forEach></div>
<img hidden src="about:blank" onerror="showMessage();">
<%--
</body>
</html> --%>
\ No newline at end of file
......@@ -125,6 +125,22 @@
$(this).click();
}
});
$.ajax({
url: "${ctx}/notice/prompt",
dataType: "text",
traditional: true,//这里设置为true
cache: false,
success: function(result) { //登录成功后返回的数据
if (result != "") {
$("#prompt").text(result);
}else {
$("#message").hide();
}
},
error:function(){
alert("系统错误!");
}
});
});
// <c:if test="${tabmode eq '1'}"> 添加一个页签
function addTab($this, refresh){
......@@ -183,7 +199,12 @@
<c:if test="${menu.parent.id eq '1'&&menu.isShow eq '1'}">
<li class="menu ${not empty firstMenu && firstMenu ? ' active' : ''}">
<c:if test="${empty menu.href}">
<a class="menu" href="javascript:" data-href="${ctx}/sys/menu/tree?parentId=${menu.id}" data-id="${menu.id}"><span>${menu.name}</span></a>
<a class="menu" href="javascript:" data-href="${ctx}/sys/menu/tree?parentId=${menu.id}" data-id="${menu.id}"><div style="position:relative;"><div><span>${menu.name}</span></div>
<c:if test="${menu.name eq '工作台'}">
<div id="message" style="position:absolute;right:-10px;top:-10px;width:15px; height:15px; background-color:#F00; border-radius:25px;">
<span id="prompt" style="height:15px; line-height:15px; display:block; color:#FFF; text-align:center"></span>
</div>
</c:if></div></a>
</c:if>
<c:if test="${not empty menu.href}">
<a class="menu" href="${fn:indexOf(menu.href, '://') eq -1 ? ctx : ''}${menu.href}" data-id="${menu.id}" target="mainFrame"><span>${menu.name}</span></a>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment