From 4dfc0379caa108688f89cbdc595152c97ed3a7a8 Mon Sep 17 00:00:00 2001
From: 81041 <81041@192.168.10.25>
Date: 星期一, 22 十月 2018 09:15:36 +0800
Subject: [PATCH] 首页修改

---
 gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java  |   34 +++++++-
 gx_tieta/src/com/fgkj/dao/impl/BattMap_informationImpl.java    |   99 ++++++++++++++++++++++++
 gx_tieta/src/com/fgkj/services/BattMap_informationService.java |   65 +++++++++++++++-
 gx_tieta/src/com/fgkj/actions/BattMap_informationAction.java   |   24 +++++
 gx_tieta/src/com/fgkj/dto/BattMap_information.java             |   16 +++
 5 files changed, 222 insertions(+), 16 deletions(-)

diff --git a/gx_tieta/src/com/fgkj/actions/BattMap_informationAction.java b/gx_tieta/src/com/fgkj/actions/BattMap_informationAction.java
index d6a8f2d..7ea5587 100644
--- a/gx_tieta/src/com/fgkj/actions/BattMap_informationAction.java
+++ b/gx_tieta/src/com/fgkj/actions/BattMap_informationAction.java
@@ -4,6 +4,7 @@
 
 import com.fgkj.dao.UinfDaoFactory;
 import com.fgkj.dto.BattMap_information;
+import com.fgkj.dto.Page;
 import com.fgkj.dto.ServiceModel;
 import com.fgkj.dto.User_inf;
 import com.fgkj.dto.User_log;
@@ -98,14 +99,31 @@
 		result = tojson(model);
 		return SUCCESS;
 	}
-	//9.1棣栭〉涓婃煡璇㈠凡缁忔坊鍔犵墿鐞嗕俊鎭殑鏈烘埧(鐢ㄦ埛绠$悊鐨�)  鍖呮嫭(鍛婅鎬绘暟钀藉悗鎬绘暟寤惰繜鎬绘暟)
+	//9.1棣栭〉涓婃煡璇㈠凡缁忔坊鍔犵墿鐞嗕俊鎭殑鏈烘埧(鐢ㄦ埛绠$悊鐨�,l鏌ヨ鍏ㄩ儴鎵撳紑椤甸潰)
 	public String searchUserManageStation() {
 		User_inf uinf=(User_inf) getUser();
-		List list = service.searchUserManageStation(uinf);
+		ServiceModel model = service.searchUserManageStation(uinf);
+		result = tojson(model);
+		return SUCCESS;
+	}
+	//9.1棣栭〉涓婃煡璇㈠凡缁忔坊鍔犵墿鐞嗕俊鎭殑鏈烘埧(鐢ㄦ埛绠$悊鐨勶紝鍒嗛〉鍒锋柊)
+	public String searchUserManageStation2() {
+		Page p=getGson().fromJson(json, Page.class);
+		User_inf uinf=(User_inf) getUser();
+		p.setPageAll(uinf.getUId());
+		List list = service.searchUserManageStation2(p);
 		result = tojson(list);
 		return SUCCESS;
 	}
-	
+	//9.1棣栭〉涓婃煡璇㈠凡缁忔坊鍔犵墿鐞嗕俊鎭殑鏈烘埧(鐢ㄦ埛绠$悊鐨勶紝3.鏍规嵁鍏蜂綋id鏌ヨ鍛婅淇℃伅绛�)
+	public String searchUserManageStation3() {
+		BattMap_information binfor=getGson().fromJson(json, BattMap_information.class);
+		User_inf uinf=(User_inf) getUser();
+		binfor.setNum(uinf.getUId());
+		List list = service.searchUserManageStation3(binfor);
+		result = tojson(list);
+		return SUCCESS;
+	}
 	//9.1鐢垫睜瀵垮懡绠$悊
     public String serchByStationid(){
     	BattMap_information bmap = getGson().fromJson(json, BattMap_information.class);
diff --git a/gx_tieta/src/com/fgkj/dao/impl/BattMap_informationImpl.java b/gx_tieta/src/com/fgkj/dao/impl/BattMap_informationImpl.java
index 0a540cc..617f063 100644
--- a/gx_tieta/src/com/fgkj/dao/impl/BattMap_informationImpl.java
+++ b/gx_tieta/src/com/fgkj/dao/impl/BattMap_informationImpl.java
@@ -1,5 +1,6 @@
 package com.fgkj.dao.impl;
 
+import java.sql.Connection;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.ArrayList;
@@ -9,6 +10,7 @@
 import com.fgkj.dao.BaseDAO;
 import com.fgkj.dao.CallBack;
 import com.fgkj.dao.DAOHelper;
+import com.fgkj.dao.LimitNumberFactory;
 import com.fgkj.db.DBUtil;
 import com.fgkj.db.IDatabaseName;
 import com.fgkj.dto.BattDischarge_plan;
@@ -16,6 +18,7 @@
 import com.fgkj.dto.BattMap_information;
 import com.fgkj.dto.Batt_Maint_Dealarm;
 import com.fgkj.dto.Battalarm_data;
+import com.fgkj.dto.Page;
 import com.fgkj.dto.User_inf;
 
 public class BattMap_informationImpl implements BaseDAO,CallBack{
@@ -127,7 +130,7 @@
 		});
 		return list;
 	}
-	//9.1鏌ヨ宸茬粡娣诲姞鐗╃悊淇℃伅鐨勬満鎴�(鐢ㄦ埛绠$悊鐨�)
+	//9.1鏌ヨ宸茬粡娣诲姞鐗╃悊淇℃伅鐨勬満鎴�(鐢ㄦ埛绠$悊鐨�,l鏌ヨ鍏ㄩ儴鎵撳紑椤甸潰)
 	public List serchInBattMapByUid(Object obj) {
 		User_inf uinf=(User_inf) obj;
 		String sql="select distinct tb_battmap_information.num,tb_battmap_information.StationId,tb_battmap_information.StationName,address,longitude,latitude,information,db_battinf.tb_battinf.FBSDeviceId  " +
@@ -139,7 +142,7 @@
 				"  left outer join db_user.tb_user_battgroup_baojigroup_battgroup on db_user.tb_user_battgroup_baojigroup_battgroup.stationid=db_battinf.tb_battinf.stationid " +
 				"  left outer join db_user.tb_user_battgroup_baojigroup_usr on db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
 				"  left outer join db_user.tb_user_inf on tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
-				"  where db_user.tb_user_inf.uid=?  )";
+				"  where db_user.tb_user_inf.uid=?  ) ";
 		List list=DAOHelper.executeQuery(sql, DBUtil.getConn(),new Object[]{uinf.getUId()}, new CallBack() {
 			
 			public List getResults(ResultSet rs) {
@@ -166,6 +169,98 @@
 		} );
 		return list;
 	}
+	//9.1鏌ヨ宸茬粡娣诲姞鐗╃悊淇℃伅鐨勬満鎴�(鐢ㄦ埛绠$悊鐨勶紝鍒嗛〉鍒锋柊)
+	public List serchInBattMapByUid2(Object obj) {
+		Page page=(Page) obj;
+		int uid=page.getPageAll();
+		Connection conn=DBUtil.getConn();
+		String numberSql="SELECT FOUND_ROWS() number";//瀛樻斁鎬绘暟
+		String sql="select SQL_CALC_FOUND_ROWS distinct tb_battmap_information.num,tb_battmap_information.StationId,tb_battmap_information.StationName,address,longitude,latitude,information,db_battinf.tb_battinf.FBSDeviceId  " +
+				"  from web_site.tb_battmap_information,db_battinf.tb_battinf " +
+				"  where  tb_battmap_information.StationId=db_battinf.tb_battinf.StationId " +
+				"  and tb_battmap_information.StationId in (" +
+				"  select distinct db_battinf.tb_battinf.stationid  " +
+				"  from db_battinf.tb_battinf " +
+				"  left outer join db_user.tb_user_battgroup_baojigroup_battgroup on db_user.tb_user_battgroup_baojigroup_battgroup.stationid=db_battinf.tb_battinf.stationid " +
+				"  left outer join db_user.tb_user_battgroup_baojigroup_usr on db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
+				"  left outer join db_user.tb_user_inf on tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
+				"  where db_user.tb_user_inf.uid=?  )  " +
+				"  limit ?,?  " +
+				"  order by tb_battmap_information.StationId ";
+		List<BattMap_information> list=DAOHelper.executeQueryLimit(sql, conn,new Object[]{uid,(page.getPageCurr()-1)*page.getPageSize(),page.getPageSize()}, new CallBack() {
+			
+			public List getResults(ResultSet rs) {
+				List list=new ArrayList();
+				try {
+					while(rs.next()){
+						BattMap_information binformation=new BattMap_information();
+						binformation.setNum(rs.getInt("num"));
+						binformation.setStationId(rs.getString("stationId"));
+						binformation.setStationName(rs.getString("stationName"));
+						binformation.setAddress(rs.getString("address"));
+						binformation.setLongitude(rs.getDouble("longitude"));
+						binformation.setLatitude(rs.getDouble("latitude"));
+						binformation.setInformation(rs.getString("information"));
+						binformation.setFBSDeviceId(rs.getInt("fBSDeviceId"));
+						Page p=new Page();
+						binformation.setPage(p);
+						list.add(binformation);
+					}
+				} catch (SQLException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				}
+				return list;
+			}
+		} );
+		//鍘绘帀limit鏉′欢鍚庣殑鎬绘暟
+		int number=LimitNumberFactory.GetLimtitNumber(conn, numberSql);
+		//System.out.println("number: "+number);
+		if(list!=null&&list.size()>0){
+			list.get(list.size()-1).getPage().setPageAll(number);
+		}
+		return list;
+	}
+	//9.1鏌ヨ宸茬粡娣诲姞鐗╃悊淇℃伅鐨勬満鎴�(鐢ㄦ埛绠$悊鐨勶紝3.鏍规嵁鍏蜂綋id鏌ヨ鍛婅淇℃伅绛�)
+	public List serchInBattMapByUid3(Object obj) {
+		BattMap_information binfor=(BattMap_information) obj;
+		String sql="select distinct tb_battmap_information.num,tb_battmap_information.StationId,tb_battmap_information.StationName,address,longitude,latitude,information,db_battinf.tb_battinf.FBSDeviceId  " +
+				"  from web_site.tb_battmap_information,db_battinf.tb_battinf " +
+				"  where  tb_battmap_information.StationId=db_battinf.tb_battinf.StationId " +
+				"  and tb_battmap_information.StationId in (" +
+				"  select distinct db_battinf.tb_battinf.stationid  " +
+				"  from db_battinf.tb_battinf " +
+				"  left outer join db_user.tb_user_battgroup_baojigroup_battgroup on db_user.tb_user_battgroup_baojigroup_battgroup.stationid=db_battinf.tb_battinf.stationid " +
+				"  left outer join db_user.tb_user_battgroup_baojigroup_usr on db_user.tb_user_battgroup_baojigroup_usr.baoji_group_id=db_user.tb_user_battgroup_baojigroup_battgroup.baoji_group_id " +
+				"  left outer join db_user.tb_user_inf on tb_user_inf.uid=db_user.tb_user_battgroup_baojigroup_usr.uid " +
+				"  where db_user.tb_user_inf.uid=?  ) " +
+				"  and tb_battmap_information.StationId=? ";
+		List list=DAOHelper.executeQuery(sql, DBUtil.getConn(),new Object[]{binfor.getNum(),binfor.getStationId()}, new CallBack() {
+			
+			public List getResults(ResultSet rs) {
+				List list=new ArrayList();
+				try {
+					while(rs.next()){
+						BattMap_information binformation=new BattMap_information();
+						binformation.setNum(rs.getInt("num"));
+						binformation.setStationId(rs.getString("stationId"));
+						binformation.setStationName(rs.getString("stationName"));
+						binformation.setAddress(rs.getString("address"));
+						binformation.setLongitude(rs.getDouble("longitude"));
+						binformation.setLatitude(rs.getDouble("latitude"));
+						binformation.setInformation(rs.getString("information"));
+						binformation.setFBSDeviceId(rs.getInt("fBSDeviceId"));
+						list.add(binformation);
+					}
+				} catch (SQLException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				}
+				return list;
+			}
+		} );
+		return list;
+	}
 	//9.1鏌ヨ鏈烘埧鎵�鍦ㄧ殑鎵�鏈夌渷浠�
 	public List serchStationName1(){
 		String sql="  SELECT  DISTINCT substring_index(substring_index(address,'-',2),'-',1) as stationname1  FROM web_site.tb_BattMap_information  " ;
diff --git a/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java b/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java
index 4153aee..008fde0 100644
--- a/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java
+++ b/gx_tieta/src/com/fgkj/dao/impl/ram/Bts_station_stateImpl.java
@@ -111,12 +111,34 @@
 		}
 		return list;
 	}
-
+    //鏌ヨ褰撳墠鏈烘埧鍋滅數鏁�
+	public int serchByState() {
+		String sql=" select count(*) as nums from db_ram_db.tb_bts_station_state where station_stat&2>1  ";
+		List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() {
+			
+			public List getResults(ResultSet rs) {
+				List list=new ArrayList();
+				try {
+					while(rs.next()){
+						list.add(rs.getInt("nums"));
+					}
+				} catch (SQLException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				}
+				return list;
+			}
+		});
+		int nums=0;//鎬绘暟
+		if(list!=null&&list.size()>0){
+			nums=(Integer) list.get(list.size()-1);
+		}
+		return nums;
+	}
 	public List serchByInfo(Object obj) {
 		// TODO Auto-generated method stub
 		return null;
 	}
-
 	public static void main(String[] args) {
 		Bts_station_stateImpl bimpl=new Bts_station_stateImpl();
 		BattInf binf=new BattInf();
@@ -128,10 +150,14 @@
 		p.setPageCurr(1);
 		p.setPageSize(1);
 		binf.setPage(p);
-		List<Bts_station_state> list=bimpl.serchByCondition(binf);
+		/*List<Bts_station_state> list=bimpl.serchByCondition(binf);
 		for (Bts_station_state bs : list) {
 			//System.out.println(bs.getStation_stat_diaozhan()+"  "+bs.getStation_stat_dooropen()+"  "+bs.getStation_stat_fadian()+"   "+bs.getStation_stat_xuhang()+"  "+bs.getStation_stat_poff());
 		    System.out.println(bs);
-		}
+		}*/
+		int nums=bimpl.serchByState();
+		System.out.println(nums);
 	}
+
+	
 }
diff --git a/gx_tieta/src/com/fgkj/dto/BattMap_information.java b/gx_tieta/src/com/fgkj/dto/BattMap_information.java
index 9ac594a..919e00c 100644
--- a/gx_tieta/src/com/fgkj/dto/BattMap_information.java
+++ b/gx_tieta/src/com/fgkj/dto/BattMap_information.java
@@ -11,7 +11,7 @@
 	private Double latitude;				// 绾害
 	private String information;			//澶囨敞
 	private Integer FBSDeviceId;        //璁惧id
-	
+	private Page page;
 	public BattMap_information() {
 		super();
 		
@@ -97,15 +97,27 @@
 	}
 
 
+	public Page getPage() {
+		return page;
+	}
+
+
+	public void setPage(Page page) {
+		this.page = page;
+	}
+
+
 	@Override
 	public String toString() {
 		return "BattMap_information [num=" + num + ", StationId=" + StationId
 				+ ", StationName=" + StationName + ", Address=" + Address
 				+ ", longitude=" + longitude + ", latitude=" + latitude
 				+ ", information=" + information + ", FBSDeviceId="
-				+ FBSDeviceId + "]";
+				+ FBSDeviceId + ", page=" + page + "]";
 	}
 
+
+
     
 	
 }
diff --git a/gx_tieta/src/com/fgkj/services/BattMap_informationService.java b/gx_tieta/src/com/fgkj/services/BattMap_informationService.java
index db0b9b4..6d48fbb 100644
--- a/gx_tieta/src/com/fgkj/services/BattMap_informationService.java
+++ b/gx_tieta/src/com/fgkj/services/BattMap_informationService.java
@@ -86,10 +86,22 @@
 		}
 		return listAll;
 	}
-	
-	//棣栭〉涓婃煡璇㈢敤鎴风鐞嗙殑宸茬粡璁剧疆杩囦綅缃殑鏈烘埧淇℃伅
-	public List searchUserManageStation(Object obj){		
-		List<BattMap_information> list = ((BattMap_informationImpl)dao).serchInBattMapByUid(obj);
+	//棣栭〉涓婃煡璇㈢敤鎴风鐞嗙殑宸茬粡璁剧疆杩囦綅缃殑鏈烘埧淇℃伅(鐢ㄦ埛绠$悊鐨�,l鏌ヨ鍏ㄩ儴鎵撳紑椤甸潰)
+	public ServiceModel searchUserManageStation(Object obj){		
+		List list = ((BattMap_informationImpl)dao).serchInBattMapByUid(obj);
+		if(list!=null&&list.size()>0){
+			model.setCode(1);
+			model.setData(list);
+			model.setMsg("鏌ヨ鎴愬姛!");
+		}else{
+			model.setCode(0);
+			model.setMsg("鏌ヨ澶辫触!");
+		}
+		return model;
+	}
+	//棣栭〉涓婃煡璇㈢敤鎴风鐞嗙殑宸茬粡璁剧疆杩囦綅缃殑鏈烘埧淇℃伅(鐢ㄦ埛绠$悊鐨勶紝鍒嗛〉鍒锋柊)
+	public List searchUserManageStation2(Object obj){		
+		List<BattMap_information> list = ((BattMap_informationImpl)dao).serchInBattMapByUid2(obj);
 		List listAll=new ArrayList();//瀛樻斁鏈�鍚庣殑缁撴灉
 		String state="";
 		int numBadBatt=0;
@@ -131,7 +143,50 @@
 		}
 		return listAll;
 	}
-	
+	//棣栭〉涓婃煡璇㈢敤鎴风鐞嗙殑宸茬粡璁剧疆杩囦綅缃殑鏈烘埧淇℃伅(鐢ㄦ埛绠$悊鐨勶紝3.鏍规嵁鍏蜂綋id鏌ヨ鍛婅淇℃伅绛�)
+	public List searchUserManageStation3(Object obj){		
+		List<BattMap_information> list = ((BattMap_informationImpl)dao).serchInBattMapByUid3(obj);
+		List listAll=new ArrayList();//瀛樻斁鏈�鍚庣殑缁撴灉
+		String state="";
+		int numBadBatt=0;
+		int numAlarm=0;
+		int numPlan=0;
+		if(list!=null&&list.size()>0){
+			for(int i=0;i<list.size();i++){
+				state="item-normal";
+				ServiceModel model=new ServiceModel();
+				BattMap_information binformation = list.get(i);
+				if(binformation.getFBSDeviceId()/100000==6185){
+					BattInf binf=new BattInf();
+					binf.setFBSDeviceId(binformation.getFBSDeviceId());
+					state=(new Fbs9100_stateImpl().seachDevNow(binf));
+				}else{
+					numBadBatt=(new BadBatt_monImpl()).serchByStationId(binformation);				//钀藉悗鎬绘暟
+					numAlarm=(new Battalarm_dataDAOImpl()).serchByStationId(binformation);		//鍛婅鎬绘暟
+					numPlan=(new BattDischarge_planImpl()).serchByStationId(binformation);	//寤惰繜鎬绘暟
+					if(numBadBatt>0){
+						state="item-behind";									//钀藉悗鏈烘埧
+					}else{
+						if(numAlarm > 0){
+							state="item-warn";								//鍛婅鏈烘埧
+						}else{
+							if(numPlan > 0){
+								state="item-timeout";						//寤惰繜鏈烘埧
+							}
+						}
+					}
+				}
+				model.setData(list.get(i));
+				model.setCode(numAlarm);		//鍛婅鎬绘暟
+				model.setSum(numBadBatt);		//钀藉悗鎬绘暟
+				model.setNewsum(numPlan);		//寤舵椂鎬绘暟
+				model.setMsg(state);            //61850鐘舵��
+				model.setMsgN(binformation.getFBSDeviceId().toString());
+				listAll.add(model);
+			}
+		}
+		return listAll;
+	}
 	//9.1鐧惧害鍦板浘瀹氫綅鏍规嵁鐪佷唤鏌ヨ鎵�鏈夎鍖哄煙鐨勬満鎴�
 	public List serchByCondition(Object obj){
 			List<BattMap_information> list =dao.serchByCondition(obj);

--
Gitblit v1.9.1