文档章节

jstl标签判断不同条件进行不同操作

s
 sannywang
发布于 2016/07/13 17:13
字数 505
阅读 668
收藏 0
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<script src="${contextPath }/js/jquery-1.7.min.js"></script>
<script src="${contextPath }/js/jquery.min.js"></script>
<script src="${contextPath }/js/jquery-ui.min.js"></script>
<link rel="stylesheet" type="text/css" href="${contextPath }/css/jquery-ui.min.css" />
<div id="navbar" class="navbar-collapse collapse">
	            <ul class="nav navbar-nav navbar-right">
	                <li><a>[${sessionScope.loginSession.duser }]你好!</a></li>
	                <li><a href="${contextPath }/logout.htm">注销登录</a></li>
	                <c:if test="${sessionScope != null }">
	                <c:forEach items="${sessionScope.invoiceXsfInfosMap }" var="invoiceXsfInfosMap">
                       <c:choose>
                           <c:when test="${invoiceXsfInfosMap.key == '00' && invoiceXsfInfosMap.value == -1}">
                                <li><a><font color="white">云商电子发票余量: </font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '00' &&  invoiceXsfInfosMap.value <= 10000 }">
                                <li><a><font color="red">(余量不足!)云商电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '00' && invoiceXsfInfosMap.value > 10000 }">
                                <li><a><font color="white">云商电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '01' && invoiceXsfInfosMap.value == -1 }">
                                <li><a><font color="white">全球购电子发票余量: </font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '01' && invoiceXsfInfosMap.value <= 2500 }">
                                <li><a><font color="red">(余量不足!)全球购电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                           <c:when test="${invoiceXsfInfosMap.key == '01' && invoiceXsfInfosMap.value > 2500 }">
                                <li><a><font color="white">全球购电子发票余量:${invoiceXsfInfosMap.value }</font></a></li>
                           </c:when>
                       </c:choose>
                    </c:forEach>
	                </c:if>
	            </ul>
	        </div>

后台代码:

package com.blemall.controller;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.blemall.dao.InvoiceXsfInfoMapper;
import com.blemall.dto.common.ResultDto;
import com.blemall.dto.invoicesys.bw.response.QueryStockResp;
import com.blemall.model.InvoiceXsfInfo;
import com.blemall.service.invoicesys.BWSysService;
import com.blemall.utils.InvoiceXsfInfoConstants;
import com.blemall.utils.StringUtil;

@Controller
@RequestMapping("invoiceXsfInfo")
public class InvoiceXsfInfoController {
	private Map<String, Integer> map;
	private final Logger logger = LoggerFactory
			.getLogger(InvoiceXsfInfoController.class);

	@Autowired
	private InvoiceXsfInfoMapper invoiceXsfInfoMapper;
	@Autowired
	BWSysService bWSysService;

	@RequestMapping("selectElectXsfInfo")
	public String selectElectXsfInfo(HttpServletRequest request,
			HttpServletResponse response) {

		String subject_00 = InvoiceXsfInfoConstants.subject_00;
		String subject_01 = InvoiceXsfInfoConstants.subject_01;
		HttpSession session = request.getSession();

		map = (Map<String, Integer>) session.getAttribute("invoiceXsfInfosMap");
		if (map == null || map.size() == 0) {
			map = new HashMap<String, Integer>();

			setStock2Map(subject_00);
			setStock2Map(subject_01);
			session.setAttribute("invoiceXsfInfosMap", map);
		}
		return InvoiceXsfInfoConstants.IndexView;
	}

	/**
	 *subject 发票主题 00 云商 01 全球购 02 MP 03 纯跨境 
	 */
	private Map<String, Integer> setStock2Map(String subject) {
		String subject_ = subject;
		InvoiceXsfInfo invoiceXsfInfo_ = invoiceXsfInfoMapper
				.selectElectXsfInfo(subject_);
		if (invoiceXsfInfo_ != null) {
			ResultDto resultDto_ = bWSysService.queryStock(
					invoiceXsfInfo_.getTaxpayerid(), invoiceXsfInfo_);
			logger.info(invoiceXsfInfo_.toString());
			if (resultDto_ != null && "0000".equals(resultDto_.getReturnCode()) && resultDto_ instanceof QueryStockResp) {
				//返回的发票份数
				String returnDesc = resultDto_.getReturnDesc();
				if (StringUtil.isNumber(returnDesc)) {
					map.put(subject, Integer.parseInt(returnDesc));
					logger.info("返回的发票剩余数:"+returnDesc);
				} else {
					logger.error("数字转换失败:"+returnDesc);
					map.put(subject, -1);
				}
				logger.info(resultDto_.getReturnDesc());
			} else {
				map.put(subject, -1);
			}
		}
		return map;
	}
}

 

© 著作权归作者所有

共有 人打赏支持
s
粉丝 1
博文 67
码字总数 18100
作品 0
闵行
程序员
引用 JAVA标签库JSTL-EL表达式介绍使用配置手册

引用 【轰隆隆】 的 JAVA标签库JSTL-EL表达式介绍使用配置手册 JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代...

junsun
2010/10/16
0
0
初识 JSP---(JSTL)

JSTL jsp标准标签库(jstl)是一个JSP标签集合,它封装了jsp应用的通用核心功能。 JSTL支持通用的、格式化的任务。比如:迭代、条件判断、XML文档操作、国际化标签、SQL标签。除了这些它还提...

姜白告
08/03
0
0
与区别

我们都知道在jsp中include有两种形式,分别是Include指令:和include动作:。前者是指令元素、后者是行为元素。具体它们将在何处用?如何用及它们有什么区别?这应该是很多人看到它都会想到的...

陶邦仁
2015/04/08
0
0
Velocity初探小结--velocity使用语法详解

  做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上就完成...

冬至饮雪
2016/11/19
0
0
javaweb开发之Filter

一、简介 在Servlet2.3规范中定义了过滤器,它对servlet容器调用servlet的过程进行拦截,从而在servlet进行响应处理的前后实现一些特殊的功能。 过滤器实现了一个责任链的模式。多个过滤器形...

小米米儿小
2013/12/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

讲述下 :LVM逻辑卷管理遇到的问题

LVM学习逻辑卷管理创建逻辑卷遇到的问题 1 实验环境 系统 内核 发行版本 CentOS 2.6.32-754.2.1.el6.x86_64 CentOS release 6.10 (Final) 由于是最小化安装没有xfs命令,yum安装如下包支持此...

linuxprobe16
36分钟前
0
0
day95-20180922-英语流利阅读-待学习

Hey Jude 半个世纪传唱不衰的背后故事 毛西 2018-09-22 1.今日导读 2004 年,The Beatles 被《滚石》杂志选为“历史上最伟大的 50 位流行音乐家的第一位”。这四名来自英国利物浦的男孩不仅对...

飞鱼说编程
44分钟前
1
0
OSChina 周六乱弹 —— 放假前期焦虑症晚期

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @andonny :分享Matteo的单曲《Panama》: 《Panama》- Matteo 手机党少年们想听歌,请使劲儿戳(这里) @新垣吉衣OSC :我发现只要去有小朋友...

小小编辑
59分钟前
150
8
wait()被notify()后,接着执行wait()后面的语句

wait()被notify()后,接着执行wait()后面的语句

noteman
今天
1
0
Ubuntu集群-使用MAAS开始裸机安装

Ubuntu使用MAAS装机的七个步骤。 1、Setup your hardware You need one small server for MAAS and at least one server which can be managed with a BMC. It is recommended to have the M......

openthings
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部