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<tb_warning> 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_warning> tb_warningList = new ArrayList<tb_warning>();
|
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<tb_warning> getWarningSummary(int page) {
|
String sql = null;
|
Query query = null;
|
sql = "SELECT id,type,objectid,`status`,time 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_warning> tb_warningList = new ArrayList<tb_warning>();
|
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 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<tb_warning> searchWarningSummary(String input) {
|
String sql = null;
|
Query query = null;
|
sql = "SELECT id,type,objectid,`status`,time FROM tb_warning WHERE objectid = :objectid";
|
query = this.em.createNativeQuery(sql);
|
query.setParameter("objectid", input);
|
List resultList = query.getResultList();
|
List<tb_warning> tb_warningList = new ArrayList<tb_warning>();
|
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 Map<String, Integer> 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<String, Integer> reMap = new HashMap<String, Integer>();
|
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<tb_realinwarning> 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_realinwarning> tb_realinwarningList = new ArrayList<tb_realinwarning>();
|
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<tb_realinwarning> 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_realinwarning> tb_realinwarningList = new ArrayList<tb_realinwarning>();
|
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<tb_realinwarning> 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_realinwarning> tb_realinwarningList = new ArrayList<tb_realinwarning>();
|
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<tb_historyinwarning> 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_historyinwarning> tb_historyinwarningList = new ArrayList<tb_historyinwarning>();
|
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<tb_historyinwarning> 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_historyinwarning> tb_historyinwarningList = new ArrayList<tb_historyinwarning>();
|
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 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<tb_historyinwarning> 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_historyinwarning> tb_historyinwarningList = new ArrayList<tb_historyinwarning>();
|
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();
|
}
|
}
|