Browse Source

git-svn-id: https://192.168.57.71/svn/jsgkj@1280 931142cf-59ea-a443-aa0e-51397b428577

ld_jiangxf 8 years ago
parent
commit
54ee18c9e2

+ 322 - 0
gkjsjy/trunk/src/com/xt/jygl/gkyxtjyfx/hzttltj/ctl/HwttlfxCtl.java

@@ -0,0 +1,322 @@
+package com.xt.jygl.gkyxtjyfx.hzttltj.ctl;
+
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.List;
+import java.util.Map;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import javax.servlet.http.HttpServletRequest;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import cache.CacheSearchCondition;
+
+import com.xt.jygl.common.BaseWebCtl;
+import com.xt.jygl.gkyxtjyfx.hzttltj.entity.FlhwttlhjEntity;
+import com.xt.jygl.gkyxtjyfx.hzttltj.service.HwttlfxService;
+import com.xtframe.sec.common.QueryService;
+import com.xtframe.util.StringUtils;
+
+@Controller
+@RequestMapping(value = "/hwttlfx")
+public class HwttlfxCtl extends BaseWebCtl{
+
+	@Autowired
+	private QueryService query;
+	@Autowired
+	private HwttlfxService hwttlfxService;
+	
+	@RequestMapping(value="/main")
+	public String main(Model model,final HttpServletRequest request,String tjx,String zzbl,final String startDate,final String endDate){
+
+		Specification<FlhwttlhjEntity> spec = new Specification<FlhwttlhjEntity>() {
+
+			@Override
+			public Predicate toPredicate(Root<FlhwttlhjEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+				List<Predicate> list = new ArrayList<Predicate>();
+				if (StringUtils.isNotEmpty(startDate)&&StringUtils.isNotEmpty(endDate)) {
+					list.add(cb.between(root.get("tj_month").as(String.class), startDate,endDate));
+				}else if (isGET(request)){
+					Calendar currentDate = Calendar.getInstance();
+					list.add(cb.between(root.get("tj_month").as(String.class), currentDate.get(Calendar.YEAR)+"-01",
+							currentDate.get(Calendar.YEAR)+"-"+currentDate.get(Calendar.MONTH)));
+				}
+				return cb.and(list.toArray(new Predicate[] {}));
+			}
+		};
+		
+		List<FlhwttlhjEntity> entityList = query.findAll(spec, FlhwttlhjEntity.class);
+		//吞吐量
+		List<String> ttl = new ArrayList<String>();
+		//时间区间
+		List<String> dateList = new ArrayList<String>();
+		//比率
+		List<String> bl = new ArrayList<String>();
+		String[] date;
+		int year,month;
+		//获取吞吐量
+		if(StringUtils.isEmpty(tjx) || tjx.equals("GK03010202000000000000000000")){
+			for(FlhwttlhjEntity e : entityList){
+				ttl.add(e.getGK03010202000000000000000000()+"");
+			}
+			//比率
+			//同比
+			if(StringUtils.isEmpty(zzbl)||"tb".equals(zzbl)){
+				for(FlhwttlhjEntity e : entityList){
+					date = e.gettj_month().split("-");
+					year = Integer.parseInt(date[0])-1;
+					month = Integer.parseInt(date[1]);
+					FlhwttlhjEntity temp = hwttlfxService.findOne(year+"-"+month);
+					if(temp == null || e.getGK03010202000000000000000000() == 0){
+						bl.add("0");
+					}else{
+						bl.add(""+(int)((e.getGK03010202000000000000000000()-temp.getGK03010202000000000000000000())/e.getGK03010202000000000000000000()*100));
+					}
+				}
+			}else if("hb".equals(zzbl)){
+				for(int i = 0; i < entityList.size(); i++){
+					if(i == 0){
+						date = entityList.get(i).gettj_month().split("-");
+						year = Integer.parseInt(date[0]);
+						month = Integer.parseInt(date[1]);
+						FlhwttlhjEntity temp = null;
+						if(month == 1){
+							year = year - 1;
+							month = 12;
+						}else{
+							month = month - 1;
+							if(month<10){
+								temp = hwttlfxService.findOne(year+"-0"+month);
+							}else{
+								temp = hwttlfxService.findOne(year+"-"+month);
+							}
+						}
+						if(temp == null || entityList.get(i).getGK03010202000000000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000000000000000000()-temp.getGK03010202000000000000000000())/entityList.get(i).getGK03010202000000000000000000()*100));
+						}
+					}else{
+						if(entityList.get(i).getGK03010202000000000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000000000000000000()-entityList.get(i-1).getGK03010202000000000000000000())/entityList.get(i).getGK03010202000000000000000000()*100));
+						}
+					}
+				}
+			}else{
+				for(int i = 0; i < entityList.size(); i++){
+					if(i == 0){
+						date = entityList.get(i).gettj_month().split("-");
+						year = Integer.parseInt(date[0]);
+						month = Integer.parseInt(date[1]);
+						FlhwttlhjEntity temp = null;
+						if(month == 1){
+							year = year - 1;
+							month = 12;
+						}else{
+							month = month - 1;
+							if(month<10){
+								temp = hwttlfxService.findOne(year+"-0"+month);
+							}else{
+								temp = hwttlfxService.findOne(year+"-"+month);
+							}
+						}
+						if(temp == null || entityList.get(i-1).getGK03010202000000000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000000000000000000()-temp.getGK03010202000000000000000000())/temp.getGK03010202000000000000000000()*100));
+						}
+					}else{
+						if(entityList.get(i-1).getGK03010202000000000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000000000000000000()-entityList.get(i-1).getGK03010202000000000000000000())/entityList.get(i-1).getGK03010202000000000000000000()*100));
+						}
+					}
+				}
+			}
+		}else if(tjx.equals("GK03010202000010000000000000")){
+			for(FlhwttlhjEntity e : entityList){
+				ttl.add(e.getGK03010202000010000000000000()+"");
+			}
+			//比率
+			if(StringUtils.isEmpty(zzbl)||zzbl.equals("tb")){
+				for(FlhwttlhjEntity e : entityList){
+					date = e.gettj_month().split("-");
+					year = Integer.parseInt(date[0])-1;
+					month = Integer.parseInt(date[1]);
+					FlhwttlhjEntity temp = hwttlfxService.findOne(year+"-"+month);
+					if(temp == null || e.getGK03010202000010000000000000() == 0){
+						bl.add("0");
+					}else{
+						bl.add(""+(int)((e.getGK03010202000010000000000000()-temp.getGK03010202000010000000000000())/e.getGK03010202000010000000000000()*100));
+					}
+				}
+			}else if("hb".equals(zzbl)){
+				for(int i = 0; i < entityList.size(); i++){
+					if(i == 0){
+						date = entityList.get(i).gettj_month().split("-");
+						year = Integer.parseInt(date[0]);
+						month = Integer.parseInt(date[1]);
+						FlhwttlhjEntity temp = null;
+						if(month == 1){
+							year = year - 1;
+							month = 12;
+						}else{
+							month = month - 1;
+							if(month<10){
+								temp = hwttlfxService.findOne(year+"-0"+month);
+							}else{
+								temp = hwttlfxService.findOne(year+"-"+month);
+							}
+						}
+						if(temp == null || entityList.get(i).getGK03010202000010000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000010000000000000()-temp.getGK03010202000010000000000000())/entityList.get(i).getGK03010202000010000000000000()*100));
+						}
+					}else{
+						if(entityList.get(i).getGK03010202000010000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000010000000000000()-entityList.get(i-1).getGK03010202000010000000000000())/entityList.get(i).getGK03010202000010000000000000()*100));
+						}
+					}
+				}
+			}else{
+				for(int i = 0; i < entityList.size(); i++){
+					if(i == 0){
+						date = entityList.get(i).gettj_month().split("-");
+						year = Integer.parseInt(date[0]);
+						month = Integer.parseInt(date[1]);
+						FlhwttlhjEntity temp = null;
+						if(month == 1){
+							year = year - 1;
+							month = 12;
+						}else{
+							month = month - 1;
+							if(month<10){
+								temp = hwttlfxService.findOne(year+"-0"+month);
+							}else{
+								temp = hwttlfxService.findOne(year+"-"+month);
+							}
+						}
+						if(temp == null){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000010000000000000()-temp.getGK03010202000010000000000000())/temp.getGK03010202000010000000000000()*100));
+						}
+					}else{
+						if(entityList.get(i-1).getGK03010202000010000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000010000000000000()-entityList.get(i-1).getGK03010202000010000000000000())/entityList.get(i-1).getGK03010202000010000000000000()*100));
+						}
+					}
+				}
+			}
+		}else if(tjx.equals("GK03010202000020000000000000")){
+			for(FlhwttlhjEntity e : entityList){
+				ttl.add(e.getGK03010202000020000000000000()+"");
+			}
+			//比率
+			if(StringUtils.isEmpty(zzbl)||zzbl.equals("tb")){
+				for(FlhwttlhjEntity e : entityList){
+					date = e.gettj_month().split("-");
+					year = Integer.parseInt(date[0])-1;
+					month = Integer.parseInt(date[1]);
+					FlhwttlhjEntity temp = hwttlfxService.findOne(year+"-"+month);
+					if(temp == null || e.getGK03010202000020000000000000() == 0){
+						bl.add("0");
+					}else{
+						bl.add(""+(int)((e.getGK03010202000020000000000000()-temp.getGK03010202000020000000000000())/e.getGK03010202000020000000000000()*100));
+					}
+				}
+			}else if("hb".equals(zzbl)){
+				for(int i = 0; i < entityList.size(); i++){
+					if(i == 0){
+						date = entityList.get(i).gettj_month().split("-");
+						year = Integer.parseInt(date[0]);
+						month = Integer.parseInt(date[1]);
+						FlhwttlhjEntity temp = null;
+						if(month == 1){
+							year = year - 1;
+							month = 12;
+						}else{
+							month = month - 1;
+							if(month<10){
+								temp = hwttlfxService.findOne(year+"-0"+month);
+							}else{
+								temp = hwttlfxService.findOne(year+"-"+month);
+							}
+						}
+						if(temp == null || entityList.get(i).getGK03010202000020000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000020000000000000()-temp.getGK03010202000020000000000000())/entityList.get(i).getGK03010202000020000000000000()*100));
+						}
+					}else{
+						if(entityList.get(i).getGK03010202000020000000000000()==0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000020000000000000()-entityList.get(i-1).getGK03010202000020000000000000())/entityList.get(i).getGK03010202000020000000000000()*100));
+						}
+					}
+				}
+			}else{
+				for(int i = 0; i < entityList.size(); i++){
+					if(i == 0){
+						date = entityList.get(i).gettj_month().split("-");
+						year = Integer.parseInt(date[0]);
+						month = Integer.parseInt(date[1]);
+						FlhwttlhjEntity temp = null;
+						if(month == 1){
+							year = year - 1;
+							month = 12;
+						}else{
+							month = month - 1;
+							if(month<10){
+								temp = hwttlfxService.findOne(year+"-0"+month);
+							}else{
+								temp = hwttlfxService.findOne(year+"-"+month);
+							}
+						}
+						if(temp == null){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000020000000000000()-temp.getGK03010202000020000000000000())/temp.getGK03010202000020000000000000()*100));
+						}
+					}else{
+						if(entityList.get(i-1).getGK03010202000020000000000000() == 0){
+							bl.add("0");
+						}else{
+							bl.add(""+(int)((entityList.get(i).getGK03010202000020000000000000()-entityList.get(i-1).getGK03010202000020000000000000())/entityList.get(i-1).getGK03010202000020000000000000()*100));
+						}
+					}
+				}
+			}
+		}
+		//获取时间区间
+		for(FlhwttlhjEntity e : entityList){
+			dateList.add("'"+e.gettj_month()+"'");
+		}
+		model.addAttribute("bl",bl);
+		model.addAttribute("ttl", ttl);
+		model.addAttribute("dateList", dateList);
+		model.addAttribute("startDate", startDate);
+		model.addAttribute("endDate", endDate);
+		model.addAttribute("zzbl", zzbl);
+		model.addAttribute("tjx", tjx);
+		return "gkyxtjyfx/gkhwttlfx/gkhwttlfx";
+	}
+	
+}

+ 8 - 0
gkjsjy/trunk/src/com/xt/jygl/gkyxtjyfx/hzttltj/dao/HwttlfxDao.java

@@ -0,0 +1,8 @@
+package com.xt.jygl.gkyxtjyfx.hzttltj.dao;
+
+import com.xt.jygl.gkyxtjyfx.hzttltj.entity.FlhwttlhjEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface HwttlfxDao extends SecRepository<FlhwttlhjEntity, String>{
+
+}

+ 9 - 0
gkjsjy/trunk/src/com/xt/jygl/gkyxtjyfx/hzttltj/service/HwttlfxService.java

@@ -0,0 +1,9 @@
+package com.xt.jygl.gkyxtjyfx.hzttltj.service;
+
+import com.xt.jygl.gkyxtjyfx.hzttltj.entity.FlhwttlhjEntity;
+
+public interface HwttlfxService {
+	
+	FlhwttlhjEntity findOne(String id);
+
+}