package com.hxzkoa.services; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.persistence.EntityManager; import javax.persistence.PersistenceContext; import javax.persistence.Query; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.hxzkoa.json.tb_historyinwarning; import com.hxzkoa.json.tb_realinwarning; import com.hxzkoa.json.tb_warning; import com.hxzkoa.util.Config; import com.hxzkoa.util.ModifyConfig; @Service public class WarningService { @PersistenceContext private EntityManager em; @Autowired private CaozuoService cs; public List getWarningSummary() { String sql = null; Query query = null; sql = "SELECT id,type,objectid,`status`,time FROM tb_warning"; query = this.em.createNativeQuery(sql); List resultList = query.getResultList(); List tb_warningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_warning warning = new tb_warning(); Object[] obj = (Object[]) resultList.get(i); warning.setId((int) obj[0]); warning.setType(obj[1] == null ? "" : obj[1].toString()); warning.setObjectid(obj[2] == null ? "" : obj[2].toString()); warning.setStatus(obj[3] == null ? "" : obj[3].toString()); warning.setTime(obj[4] == null ? "" : obj[4].toString()); tb_warningList.add(warning); } } return tb_warningList; } public List getWarningSummary(int page) { String sql = null; Query query = null; sql = "SELECT id,type,objectid,`status`,time,baoliu1 FROM tb_warning ORDER BY id DESC LIMIT :start,:end"; query = this.em.createNativeQuery(sql); query.setParameter("start", (page - 1) * Integer.parseInt(ModifyConfig.readData(Config.getPageConfig(), "perPage"))); query.setParameter("end", Integer.parseInt(ModifyConfig.readData(Config.getPageConfig(), "perPage"))); List resultList = query.getResultList(); List tb_warningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_warning warning = new tb_warning(); Object[] obj = (Object[]) resultList.get(i); warning.setId((int) obj[0]); warning.setType(obj[1] == null ? "" : obj[1].toString()); warning.setObjectid(obj[2] == null ? "" : obj[2].toString()); warning.setStatus(obj[3] == null ? "" : obj[3].toString()); warning.setTime(obj[4] == null ? "" : obj[4].toString()); warning.setBaoliu1(obj[5] == null ? "" : obj[5].toString()); tb_warningList.add(warning); } } return tb_warningList; } public int getWarningSummaryCount() { String sql = null; Query query = null; sql = "SELECT count(1) FROM tb_warning"; query = this.em.createNativeQuery(sql); return Integer.parseInt(query.getSingleResult().toString()); } public List searchWarningSummary(String input) { String sql = null; Query query = null; sql = "SELECT id,type,objectid,`status`,time,baoliu1 FROM tb_warning WHERE objectid = :objectid"; query = this.em.createNativeQuery(sql); query.setParameter("objectid", input); List resultList = query.getResultList(); List tb_warningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_warning warning = new tb_warning(); Object[] obj = (Object[]) resultList.get(i); warning.setId((int) obj[0]); warning.setType(obj[1] == null ? "" : obj[1].toString()); warning.setObjectid(obj[2] == null ? "" : obj[2].toString()); warning.setStatus(obj[3] == null ? "" : obj[3].toString()); warning.setTime(obj[4] == null ? "" : obj[4].toString()); warning.setBaoliu1(obj[5] == null ? "" : obj[5].toString()); tb_warningList.add(warning); } } return tb_warningList; } public Map getWarningSummaryType() { String sql = null; Query query = null; String str = "未处理"; sql = "SELECT type,count(1) c FROM tb_warning WHERE status = :str GROUP BY type ORDER BY c DESC"; query = this.em.createNativeQuery(sql); query.setParameter("str", str); List resultList = query.getResultList(); Map reMap = new HashMap(); int warningSummaryCount = getWarningSummaryCount(); if (resultList.size() > 3) { for (int i = 0; i < 3; i++) { Object[] obj = (Object[]) resultList.get(i); reMap.put(obj[0].toString(), Integer.parseInt(obj[1].toString())); warningSummaryCount = warningSummaryCount - Integer.parseInt(obj[1].toString()); } reMap.put("其他", warningSummaryCount); } else { for (int i = 0; i < resultList.size(); i++) { Object[] obj = (Object[]) resultList.get(i); reMap.put(obj[0].toString(), Integer.parseInt(obj[1].toString())); } } return reMap; } public List getRealinWarning() { String sql = null; Query query = null; sql = "SELECT id,area,name,bumen,tagid,intime FROM tb_realinwarning"; query = this.em.createNativeQuery(sql); List resultList = query.getResultList(); List tb_realinwarningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_realinwarning realinwarning = new tb_realinwarning(); Object[] obj = (Object[]) resultList.get(i); realinwarning.setId((int) obj[0]); realinwarning.setArea(obj[1] == null ? "" : obj[1].toString()); realinwarning.setName(obj[2] == null ? "" : obj[2].toString()); realinwarning.setBumen(obj[3] == null ? "" : obj[3].toString()); realinwarning.setTagid(obj[4] == null ? "" : obj[4].toString()); realinwarning.setIntime(obj[5] == null ? "" : obj[5].toString()); tb_realinwarningList.add(realinwarning); } } return tb_realinwarningList; } public List getRealinWarning(int page) { String sql = null; Query query = null; sql = "SELECT id,area,name,bumen,tagid,intime FROM tb_realinwarning LIMIT :start,:end"; query = this.em.createNativeQuery(sql); query.setParameter("start", (page - 1) * Integer.parseInt(ModifyConfig.readData(Config.getPageConfig(), "perPage"))); query.setParameter("end", Integer.parseInt(ModifyConfig.readData(Config.getPageConfig(), "perPage"))); List resultList = query.getResultList(); List tb_realinwarningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_realinwarning realinwarning = new tb_realinwarning(); Object[] obj = (Object[]) resultList.get(i); realinwarning.setId((int) obj[0]); realinwarning.setArea(obj[1] == null ? "" : obj[1].toString()); realinwarning.setName(obj[2] == null ? "" : obj[2].toString()); realinwarning.setBumen(obj[3] == null ? "" : obj[3].toString()); realinwarning.setTagid(obj[4] == null ? "" : obj[4].toString()); realinwarning.setIntime(obj[5] == null ? "" : obj[5].toString()); tb_realinwarningList.add(realinwarning); } } return tb_realinwarningList; } public int getRealinWarningCount() { String sql = null; Query query = null; sql = "SELECT count(1) FROM tb_realinwarning"; query = this.em.createNativeQuery(sql); return Integer.parseInt(query.getSingleResult().toString()); } @Transactional public void realinWarning_delete(String[] checkVal) { String sql = null; Query query = null; for (int i = 0; i < checkVal.length; i++) { int id = Integer.parseInt(checkVal[i]); sql = "DELETE FROM tb_realinwarning WHERE id = :id"; cs.tb_caozuo("tb_realinwarning", 2); query = this.em.createNativeQuery(sql); query.setParameter("id", id); query.executeUpdate(); } } @Transactional public void realinWarning_deleteAll() { String sql = null; Query query = null; sql = "DELETE FROM tb_realinwarning"; cs.tb_caozuo("tb_realinwarning", 2); query = this.em.createNativeQuery(sql); query.executeUpdate(); } public List searchRealinWarning(String input) { String sql = null; Query query = null; sql = "SELECT id,area,name,bumen,tagid,intime FROM tb_realinwarning WHERE tagid = :tag_id"; query = this.em.createNativeQuery(sql); query.setParameter("tag_id", input); List resultList = query.getResultList(); List tb_realinwarningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_realinwarning realinwarning = new tb_realinwarning(); Object[] obj = (Object[]) resultList.get(i); realinwarning.setArea(obj[1] == null ? "" : obj[1].toString()); realinwarning.setName(obj[2] == null ? "" : obj[2].toString()); realinwarning.setBumen(obj[3] == null ? "" : obj[3].toString()); realinwarning.setTagid(obj[4] == null ? "" : obj[4].toString()); realinwarning.setIntime(obj[5] == null ? "" : obj[5].toString()); tb_realinwarningList.add(realinwarning); } } return tb_realinwarningList; } public List getHistoricalWarning() { String sql = null; Query query = null; sql = "SELECT id,area,name,bumen,tagid,intime,outtime,alltime,beizhu FROM tb_historyinwarning"; query = this.em.createNativeQuery(sql); List resultList = query.getResultList(); List tb_historyinwarningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { Object[] obj = (Object[]) resultList.get(i); tb_historyinwarning historyinwarning = new tb_historyinwarning(); historyinwarning.setId((int) obj[0]); historyinwarning.setArea(obj[1] == null ? "" : obj[1].toString()); historyinwarning.setName(obj[2] == null ? "" : obj[2].toString()); historyinwarning.setBumen(obj[3] == null ? "" : obj[3].toString()); historyinwarning.setTagid(obj[4] == null ? "" : obj[4].toString()); historyinwarning.setIntime(obj[5] == null ? "" : obj[5].toString()); historyinwarning.setOuttime(obj[6] == null ? "" : obj[6].toString()); historyinwarning.setAlltime(obj[7] == null ? "" : obj[7].toString()); historyinwarning.setBeizhu(obj[8] == null ? "" : obj[8].toString()); tb_historyinwarningList.add(historyinwarning); } } return tb_historyinwarningList; } public List getHistoricalWarning(int page) { String sql = null; Query query = null; sql = "SELECT id,area,name,bumen,tagid,intime,outtime,alltime,beizhu FROM tb_historyinwarning LIMIT :start,:end"; query = this.em.createNativeQuery(sql); query.setParameter("start", (page - 1) * Integer.parseInt(ModifyConfig.readData(Config.getPageConfig(), "perPage"))); query.setParameter("end", Integer.parseInt(ModifyConfig.readData(Config.getPageConfig(), "perPage"))); List resultList = query.getResultList(); List tb_historyinwarningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { Object[] obj = (Object[]) resultList.get(i); tb_historyinwarning historyinwarning = new tb_historyinwarning(); historyinwarning.setId((int) obj[0]); historyinwarning.setArea(obj[1] == null ? "" : obj[1].toString()); historyinwarning.setName(obj[2] == null ? "" : obj[2].toString()); historyinwarning.setBumen(obj[3] == null ? "" : obj[3].toString()); historyinwarning.setTagid(obj[4] == null ? "" : obj[4].toString()); historyinwarning.setIntime(obj[5] == null ? "" : obj[5].toString()); historyinwarning.setOuttime(obj[6] == null ? "" : obj[6].toString()); historyinwarning.setAlltime(obj[7] == null ? "" : obj[7].toString()); historyinwarning.setBeizhu(obj[8] == null ? "" : obj[8].toString()); tb_historyinwarningList.add(historyinwarning); } } return tb_historyinwarningList; } public int getHistoricalWarningCount() { String sql = null; Query query = null; sql = "SELECT count(1) FROM tb_historyinwarning"; query = this.em.createNativeQuery(sql); return Integer.parseInt(query.getSingleResult().toString()); } @Transactional public void historicalWarning_delete(String[] checkVal) { String sql = null; Query query = null; for (int i = 0; i < checkVal.length; i++) { int id = Integer.parseInt(checkVal[i]); sql = "DELETE FROM tb_historyinwarning WHERE id = :id"; cs.tb_caozuo("tb_historyinwarning", 2); query = this.em.createNativeQuery(sql); query.setParameter("id", id); query.executeUpdate(); } } @Transactional public void Warning_delete(String[] checkVal) { String sql = null; Query query = null; for (int i = 0; i < checkVal.length; i++) { int id = Integer.parseInt(checkVal[i]); sql = "DELETE FROM tb_warning WHERE id = :id"; cs.tb_caozuo("tb_warning", 2); query = this.em.createNativeQuery(sql); query.setParameter("id", id); query.executeUpdate(); } } @Transactional public void historicalWarning_deleteAll() { String sql = null; Query query = null; sql = "DELETE FROM tb_historyinwarning"; cs.tb_caozuo("tb_historyinwarning", 2); query = this.em.createNativeQuery(sql); query.executeUpdate(); } @Transactional public void Warning_deleteAll() { String sql = null; Query query = null; sql = "DELETE FROM tb_warning"; cs.tb_caozuo("tb_warning", 2); query = this.em.createNativeQuery(sql); query.executeUpdate(); } @Transactional public void Warning_deletefenlei(String fenlei) { String sql = null; Query query = null; sql = "DELETE FROM tb_warning WHERE type=:fenlei"; cs.tb_caozuo("tb_warning", 2); query = this.em.createNativeQuery(sql); query.setParameter("fenlei", fenlei); query.executeUpdate(); } @Transactional public void historicalWarning_handle(String[] checkVal) { String sql = null; Query query = null; for (int i = 0; i < checkVal.length; i++) { int id = Integer.parseInt(checkVal[i]); sql = "UPDATE tb_warning SET status='已处理' WHERE objectid = :id"; cs.tb_caozuo("tb_warning", 3); query = this.em.createNativeQuery(sql); query.setParameter("id", id); query.executeUpdate(); } } @Transactional public void historicalWarning_handleAll() { String sql = null; Query query = null; sql = "UPDATE tb_warning SET status='已处理'"; cs.tb_caozuo("tb_warning", 3); query = this.em.createNativeQuery(sql); query.executeUpdate(); } @Transactional public void historicalWarning_handleAll_realpositoin() { String sql = null; Query query = null; sql = "UPDATE tb_realpositoin SET sos='0'"; cs.tb_caozuo("tb_realpositoin", 3); query = this.em.createNativeQuery(sql); query.executeUpdate(); } public List searchHistoricalWarning(String input) { String sql = null; Query query = null; sql = "SELECT id,area,'name',bumen,tagid,intime,outtime,alltime,beizhu FROM tb_historyinwarning WHERE tagid = :tag_id"; query = this.em.createNativeQuery(sql); query.setParameter("tag_id", input); List resultList = query.getResultList(); List tb_historyinwarningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { Object[] obj = (Object[]) resultList.get(i); tb_historyinwarning historyinwarning = new tb_historyinwarning(); historyinwarning.setArea(obj[1] == null ? "" : obj[1].toString()); historyinwarning.setName(obj[2] == null ? "" : obj[2].toString()); historyinwarning.setBumen(obj[3] == null ? "" : obj[3].toString()); historyinwarning.setTagid(obj[4] == null ? "" : obj[4].toString()); historyinwarning.setIntime(obj[5] == null ? "" : obj[5].toString()); historyinwarning.setOuttime(obj[6] == null ? "" : obj[6].toString()); historyinwarning.setAlltime(obj[7] == null ? "" : obj[7].toString()); historyinwarning.setBeizhu(obj[8] == null ? "" : obj[8].toString()); tb_historyinwarningList.add(historyinwarning); } } return tb_historyinwarningList; } @Transactional public void warning_add(tb_warning warning) { String sql = null; Query query = null; sql = "INSERT tb_warning (type,objectid,status,time) VALUES (:type,:objectid,:status,now())"; cs.tb_caozuo("tb_warning", 1); query = this.em.createNativeQuery(sql); query.setParameter("type", warning.getType().toString()); query.setParameter("objectid", warning.getObjectid()); query.setParameter("status", warning.getStatus()); query.executeUpdate(); } @Transactional public void realinwarning_add(tb_realinwarning realinwarning) { String sql = null; Query query = null; sql = "INSERT tb_realinwarning (area,name,bumen,tagid,intime) VALUES (:area,:name,:bumen,:tagid,now())"; cs.tb_caozuo("tb_realinwarning", 1); query = this.em.createNativeQuery(sql); query.setParameter("area", realinwarning.getArea()); query.setParameter("name", realinwarning.getName()); query.setParameter("bumen", realinwarning.getBumen()); query.setParameter("tagid", realinwarning.getTagid()); query.executeUpdate(); } public List getfenlei(String fenlei) { String sql = null; Query query = null; sql = "SELECT id,type,objectid,`status`,time,baoliu1 FROM tb_warning WHERE type=:fenlei ORDER BY id DESC"; query = this.em.createNativeQuery(sql); query.setParameter("fenlei", fenlei); List resultList = query.getResultList(); List tb_warningList = new ArrayList(); if (resultList.size() > 0) { for (int i = 0; i < resultList.size(); i++) { tb_warning warning = new tb_warning(); Object[] obj = (Object[]) resultList.get(i); warning.setId((int) obj[0]); warning.setType(obj[1] == null ? "" : obj[1].toString()); warning.setObjectid(obj[2] == null ? "" : obj[2].toString()); warning.setStatus(obj[3] == null ? "" : obj[3].toString()); warning.setTime(obj[4] == null ? "" : obj[4].toString()); warning.setBaoliu1(obj[5] == null ? "" : obj[5].toString()); tb_warningList.add(warning); } } return tb_warningList; } }