⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 querylifecircleaction.java

📁 MM7彩信对接网关示例
💻 JAVA
字号:
package com.rainbow.mms.datadigger;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;

import org.apache.log4j.Logger;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Restrictions;

import com.opensymphony.webwork.ServletActionContext;
import com.opensymphony.xwork.ActionContext;
import com.opensymphony.xwork.ActionSupport;
import com.rainbow.mms.common.MMSServiceCode;
import com.rainbow.mms.common.MmsGatewayInfo;
import com.rainbow.util.tools.HibernateUtil;

/**
 * 获得产品的生命周期,输入参数:产品的业务编号、产品所在网关、产品所在省、产品所在地市
 * 从表单里需要获得参数有:unformId,gateWayId,prov,city
 * 统计结果将以List的形式放在Session中的resultList对象里
 * @author Rainbow MMS Platform Group Leader -- TrWorks
 *
 */
public class QueryLifeCircleAction extends ActionSupport {
	
	private static final long serialVersionUID = 1L;
	
	private Logger log = Logger.getLogger(QueryLifeCircleAction.class);

	/**
	 * 根据用户输入的参数,获得产品的生命周期
	 */
	public String execute() throws Exception {
		
		// 取参数
		String unformIdString = ServletActionContext.getRequest().getParameter("serviceList");
		String gateWayIdString = ServletActionContext.getRequest().getParameter("gatewayList");
		String beginTime = ServletActionContext.getRequest().getParameter("beginTime");
		//String endTime = ServletActionContext.getRequest().getParameter("endTime");
		String prov = ServletActionContext.getRequest().getParameter("provList");
		if (prov == null || prov.equalsIgnoreCase("")){
			prov = "全部";
		}
		else{
			prov = new String(prov.getBytes("iso8859-1"), "GBK");
		}
		String city = ServletActionContext.getRequest().getParameter("cityList");
		if (city == null || city.equalsIgnoreCase("")){
			city = "全部";
		}
		else{
			city = new String(city.getBytes("iso8859-1"), "GBK");
		}
		
		// 参数校验
		if (unformIdString == null || gateWayIdString == null || 
			unformIdString.equalsIgnoreCase("") ||
			gateWayIdString.equalsIgnoreCase("")){
			log.warn("QueryLifeCircleAction Input Params Error!");
			return ERROR;
		}

		// 参数类型转换
		int uniformId = Integer.parseInt(unformIdString);
		int gateWayId = Integer.parseInt(gateWayIdString);
		
		if (prov.equalsIgnoreCase("全部")){
			prov = null;
		}
		if (city.equalsIgnoreCase("全部")){
			city = null;
		}
		
		String result = ERROR;
		List resultList = new LinkedList();
		
		// 调用存储过程 MMS_PSysCacuProductLifeCircle 取结果
		try {
			Session sess = HibernateUtil.currentSession();
			Transaction tx = sess.beginTransaction();
			Connection con = sess.connection();
			CallableStatement state = con.prepareCall("{call MMS_PSysStaticCacuProductLifeCircle (?, ?, ?, ?, ?)}");
			state.setInt(1, uniformId);
			state.setInt(2, gateWayId);
			state.setString(3, beginTime);
			state.setString(4, prov);
			state.setString(5, city);						

			ResultSet set = state.executeQuery();
			tx.commit();
			
			if (set.next()){
				ProductLifeCircle data = new ProductLifeCircle();
				data.setUniformId(uniformId);
				data.setGateWayId(gateWayId);
				data.setLifeMonth(set.getFloat(1));
				
				resultList.add(data);
			}		
			
			set.close();
			state.close();
			
			MmsGatewayInfo gwinfo = (MmsGatewayInfo)sess.load(MmsGatewayInfo.class, new Integer(gateWayIdString));
			MMSServiceCode codeinfo = (MMSServiceCode)sess.createCriteria(MMSServiceCode.class).add(
							Restrictions.eq("uniformID", new Integer(unformIdString))).add(
							Restrictions.eq("gateWayID", new Integer(gateWayIdString))).list().get(0);
			
			ActionContext.getContext().getSession().put("resultList", resultList);
			
			ServletActionContext.getRequest().setAttribute("unformId", unformIdString);
			ServletActionContext.getRequest().setAttribute("unformName", codeinfo.getServiceName());
			ServletActionContext.getRequest().setAttribute("gateWayId", gateWayIdString);
			ServletActionContext.getRequest().setAttribute("gateWayName", gwinfo.getGatewayName());
			ServletActionContext.getRequest().setAttribute("prov", prov == null ? "全部" : prov);
			ServletActionContext.getRequest().setAttribute("city", city == null ? "全部" : city);
			
	        result = SUCCESS;

		} catch (Exception e) {
			e.printStackTrace();
			log.error(e);
			result = ERROR;
		}
		finally{
			HibernateUtil.closeSession();
		}
		
		return result;		
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -