123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344 |
- package com.huimv.sj.dao;
- import java.sql.SQLException;
- import java.util.Calendar;
- import java.util.Date;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- import org.springframework.orm.ibatis.SqlMapClientCallback;
- import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;
- import org.springframework.util.StringUtils;
- import com.huimv.busi.tjt.dto.SjSdDTO;
- import com.huimv.busi.tjt.dto.SjhjkzDTO;
- import com.huimv.busi.xt.constant.XtAppConstant;
- import com.huimv.busi.xt.constant.XtSqlMapConstant;
- import com.huimv.busi.xt.utils.CommonUtil;
- import com.huimv.sj.dataobject.SjSshjkz;
- import com.huimv.sj.dataobject.SjSshjkzExample;
- import com.huimv.xt.dataobject.XtHjbjcs;
- import com.huimv.xx.dataobject.XxXxts;
- import com.huimv.xx.dataobject.XxXxtz;
- import com.ibatis.sqlmap.client.SqlMapExecutor;
- public class SjSshjkzDAOImpl extends SqlMapClientDaoSupport implements SjSshjkzDAO {
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public SjSshjkzDAOImpl() {
- super();
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int countByExample(SjSshjkzExample example) {
- Integer count = (Integer) getSqlMapClientTemplate().queryForObject("sj_sshjkz.ibatorgenerated_countByExample", example);
- return count;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int deleteByExample(SjSshjkzExample example) {
- int rows = getSqlMapClientTemplate().delete("sj_sshjkz.ibatorgenerated_deleteByExample", example);
- return rows;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int deleteByPrimaryKey(Integer id) {
- SjSshjkz key = new SjSshjkz();
- key.setId(id);
- int rows = getSqlMapClientTemplate().delete("sj_sshjkz.ibatorgenerated_deleteByPrimaryKey", key);
- return rows;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public void insert(SjSshjkz record) {
- getSqlMapClientTemplate().insert("sj_sshjkz.ibatorgenerated_insert", record);
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public void insertSelective(SjSshjkz record) {
- getSqlMapClientTemplate().insert("sj_sshjkz.ibatorgenerated_insertSelective", record);
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- @SuppressWarnings("unchecked")
- public List<SjSshjkz> selectByExample(SjSshjkzExample example) {
- List<SjSshjkz> list = getSqlMapClientTemplate().queryForList("sj_sshjkz.ibatorgenerated_selectByExample", example);
- return list;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public SjSshjkz selectByPrimaryKey(Integer id) {
- SjSshjkz key = new SjSshjkz();
- key.setId(id);
- SjSshjkz record = (SjSshjkz) getSqlMapClientTemplate().queryForObject("sj_sshjkz.ibatorgenerated_selectByPrimaryKey", key);
- return record;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int updateByExampleSelective(SjSshjkz record, SjSshjkzExample example) {
- UpdateByExampleParms parms = new UpdateByExampleParms(record, example);
- int rows = getSqlMapClientTemplate().update("sj_sshjkz.ibatorgenerated_updateByExampleSelective", parms);
- return rows;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int updateByExample(SjSshjkz record, SjSshjkzExample example) {
- UpdateByExampleParms parms = new UpdateByExampleParms(record, example);
- int rows = getSqlMapClientTemplate().update("sj_sshjkz.ibatorgenerated_updateByExample", parms);
- return rows;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int updateByPrimaryKeySelective(SjSshjkz record) {
- int rows = getSqlMapClientTemplate().update("sj_sshjkz.ibatorgenerated_updateByPrimaryKeySelective", record);
- return rows;
- }
- /**
- * This method was generated by Apache iBATIS ibator.
- * This method corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- public int updateByPrimaryKey(SjSshjkz record) {
- int rows = getSqlMapClientTemplate().update("sj_sshjkz.ibatorgenerated_updateByPrimaryKey", record);
- return rows;
- }
- /**
- * This class was generated by Apache iBATIS ibator.
- * This class corresponds to the database table sj_sshjkz
- *
- * @ibatorgenerated Sun Jun 29 20:51:17 CST 2014
- */
- private static class UpdateByExampleParms extends SjSshjkzExample {
- private Object record;
- public UpdateByExampleParms(Object record, SjSshjkzExample example) {
- super(example);
- this.record = record;
- }
- @SuppressWarnings("unused")
- public Object getRecord() {
- return record;
- }
- }
-
- /**
- * 得到指定条件的环境控制记录的最大时间
- */
- public Date selectMaxSshjkzTimeByParam(Map<String, Object> searchParam) {
- Date date = (Date) getSqlMapClientTemplate().queryForObject(XtSqlMapConstant.SQLMAP_SELECT_MAX_SSHJKZ_BY_PARAM, searchParam);
- return date;
- }
-
- /**
- * 插入环境控制记录
- */
- public void insertSshjkzByParam(List<Map<String, Object>> paramMapList, HashMap<String, Object> hm) {
- SshjkzSqlMapClientCallback sshjkzSqlMapClientCallback = new SshjkzSqlMapClientCallback();
- sshjkzSqlMapClientCallback.setParamMapList(paramMapList, hm);
- getSqlMapClientTemplate().execute(sshjkzSqlMapClientCallback);
- }
-
- /**
- * 插入数据的回调类
- */
- private class SshjkzSqlMapClientCallback implements SqlMapClientCallback {
- private List<Map<String, Object>> paramMapList;
- // private HashMap<String, Object> hm;
-
- public void setParamMapList(List<Map<String, Object>> paramMapList, HashMap<String, Object> hm) {
- this.paramMapList = paramMapList;
- // this.hm = hm;
- }
- @Override
- public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
- // List<XtHjbjcs> hjcsList = executor.queryForList(XtSqlMapConstant.SQLMAP_SELECT_HJBJCS_BY_PARAM, hm);
- // boolean flag = hjcsList.size() > 0 ? true : false;
- executor.startBatch();
- String dqlq = "";
- String jqid = "";
- for (Map<String, Object> paramMap : paramMapList) {
- // //报警之前判断之前记录是否已经报警
- // Map<String, Object> map = new HashMap<String, Object>();
- // if (flag) {
- // SjSshjkz sjSshjkz = (SjSshjkz)executor.queryForObject(XtSqlMapConstant.SQLMAP_SELECT_MAXSSHJKZ_BY_PARAM, hm);
- // if (sjSshjkz != null) {
- // Map<String, Object> hjmap = new HashMap<String, Object>();
- // hjmap.put("temp", sjSshjkz.getDqwd());
- // XtHjbjcs xtHjbjcs = hjcsList.get(0);
- // map = compareBjCs(xtHjbjcs, hjmap, map, 1);
- // }
- // }
- jqid = (String) paramMap.get("jqid");
- dqlq = (String) executor.queryForObject(XtSqlMapConstant.SQLMAP_SELECT_DQLQ_FROM_ZSDA_AND_JQDA_BY_JQID, jqid);
- if (StringUtils.hasText(dqlq)) {
- paramMap.put("dqlq", dqlq);
- executor.insert(XtSqlMapConstant.SQLMAP_INSERT_SSHJKZ_BY_PARAM, paramMap);
- }
- // if (flag) {
- // XtHjbjcs xtHjbjcs = hjcsList.get(0);
- // compareBjCs(xtHjbjcs, paramMap, map, 2);
- // }
- }
- executor.executeBatch();
- return null;
- }
- }
-
- public Map<String, Object> compareBjCs(XtHjbjcs xtHjbjcs, Map<String, Object> paramMap, Map<String, Object> map, int flag) {
- int wdCount = 0; //温度报警
- int sdCount = 0; //湿度报警
- try {
- String regEx = "^[1-9,-.]+"; //数据格式 第一级报警下限-第一级报警上线#报警级别, 第二级报警下限-第二级报警上线#报警级别。。。。。22-28#1,20-30#2
- Pattern pat = Pattern.compile(regEx);
- Matcher wdMat = pat.matcher(StringUtils.hasText(xtHjbjcs.getWd()) ? xtHjbjcs.getWd() : "&&");
- Matcher sdMat = pat.matcher(StringUtils.hasText(xtHjbjcs.getSd()) ? xtHjbjcs.getSd() : "&&");
- if (StringUtils.hasText(xtHjbjcs.getWd()) && wdMat.find()) {
- wdCount = CommonUtil.mathCompare(xtHjbjcs.getWd(), paramMap, "temp");
- }
- if (StringUtils.hasText(xtHjbjcs.getSd()) && sdMat.find()) {
- sdCount = CommonUtil.mathCompare(xtHjbjcs.getSd(), paramMap, "humi");
- }
- //超出 插入报警数据
- if (wdCount > 0 && (map.get("wdFlag") == null || "".equals(map.get("wdFlag")) || wdCount != (int)map.get("wdFlag")) && flag == 2) {
- insertXxtz(xtHjbjcs, (String)paramMap.get("eh_time"), wdCount,(String)paramMap.get("temp")+"℃", "温度");
- insertXxts(xtHjbjcs, (String)paramMap.get("eh_time"), wdCount,(String)paramMap.get("temp")+"℃", "温度");
- }
- map.put("wdFlag", wdCount);
- if (sdCount > 0 && (map.get("sdFlag") == null || "".equals(map.get("sdFlag")) || sdCount != (int)map.get("sdFlag")) && flag == 2) {
- insertXxtz(xtHjbjcs, (String)paramMap.get("eh_time"), sdCount,(String)paramMap.get("humi")+"RH", "湿度");
- }
- map.put("sdFlag", sdCount);
- } catch (Exception e) {
- System.out.println("可能当前栏期" + xtHjbjcs.getLqid() + "参数不符合规范");
- e.printStackTrace();
- }
- return map;
- }
-
-
- public void insertXxtz(XtHjbjcs xtHjbjcs, String time, int jb, String sz, String type) {
- XxXxtz xxXxtz = new XxXxtz();
- Date nowdate = new Date();
- xxXxtz.setBt(xtHjbjcs.getZsmc() + type + "超过警戒线");
- xxXxtz.setXxlx("1");
- xxXxtz.setZz(xtHjbjcs.getMcmc());
- xxXxtz.setZw("<p><font color=red>在大概" + time + type + "超出警戒线,目前" +type + sz + "</font></p>");
- xxXxtz.setFbsj(nowdate);
- xxXxtz.setFbr(1);
- xxXxtz.setZy("机器设备");
- xxXxtz.setKssj(nowdate);
- xxXxtz.setMcid(Integer.parseInt(xtHjbjcs.getMcid()));
- Calendar rightNow = Calendar.getInstance();
- rightNow.setTime(nowdate);
- rightNow.add(Calendar.DATE, +7);
- xxXxtz.setJssj(rightNow.getTime());
- xxXxtz.setZfbz(XtAppConstant.ZFBZ_VALID);
-
- xxXxtz.setXxbz(jb);
- //xxXxtz.setXfzt(XtAppConstant.XXTZ_XFZT_1);
- xxXxtz.setClzt(XtAppConstant.XXTZ_CLZT_1);
- getSqlMapClientTemplate().insert("xx_xxtz.ibatorgenerated_insert", xxXxtz);
- }
-
- public void insertXxts(XtHjbjcs xtHjbjcs, String time, int jb, String sz, String type) {
- XxXxts xxXxts = new XxXxts();
- Date nowdate = new Date();
- xxXxts.setBt(xtHjbjcs.getZsmc() + "温度" + jb + "级报警");
- xxXxts.setZy(xtHjbjcs.getZsmc() + "温度在" + time + "时产生" + jb + "级报警,报警" + type + sz);
- xxXxts.setZw(xtHjbjcs.getZsmc() + "舍,温度在" + time + "时产生" + jb + "级报警,报警" + type + sz);
- xxXxts.setXxlx(XtAppConstant.XX_XXTS_SWD);
- xxXxts.setTsbz(1);
- xxXxts.setMcid(xtHjbjcs.getMcid());
- xxXxts.setFbsj(nowdate);
- getSqlMapClientTemplate().insert("xx_xxts.ibatorgenerated_insert", xxXxts);
- }
- @SuppressWarnings("unchecked")
- @Override
- public List<SjhjkzDTO> selectByParam(HashMap<String, Object> hm) {
- List<SjhjkzDTO> list = getSqlMapClientTemplate().queryForList("sj_sshjkz.select_sjsshjkzdto_by_param", hm);
- return list;
- }
- @Override
- public int countSelectByParam(HashMap<String, Object> hm) {
- int count = (int)getSqlMapClientTemplate().queryForObject("sj_sshjkz.select_count_sjsshjkzdto_by_param", hm);
- return count;
- }
-
- @SuppressWarnings({ "unchecked", "rawtypes" })
- public List<SjSdDTO> selectDqsdByParam(Map hm) {
- List<SjSdDTO> list = getSqlMapClientTemplate().queryForList("dqsd.select.by.param", hm);
- return list;
- }
-
- @SuppressWarnings("unchecked")
- public List<SjSdDTO> selectQcsdByLqid(Map<String, Object> searchParam) {
- List<SjSdDTO> list = getSqlMapClientTemplate().queryForList("qcsd.select.sd.by.lqid", searchParam);
- return list;
- }
- }
|