diff --git a/src/main/java/com/ifish/action/FactoryAction.java b/src/main/java/com/ifish/action/FactoryAction.java index b77c4bb..cb74e65 100644 --- a/src/main/java/com/ifish/action/FactoryAction.java +++ b/src/main/java/com/ifish/action/FactoryAction.java @@ -232,6 +232,11 @@ public class FactoryAction { if(factoryList!=null){ String ip = getRemoteAddress.getIp(request); String[] deviceIds = deviceId.split("_"); + //是否授权 + String authorization = request.getParameter("authorization"); + if (authorization.equals("0")) { + this.adminService.deviceAuthorizeNew(ip,factoryList.getFactoryCode(),deviceIds); + } for (String dId : deviceIds) { int id = Integer.parseInt(dId); this.adminService.deviceFenpeiSingleNew(ip,factoryList.getFactoryCode(),id,brandCode,createCode); diff --git a/src/main/java/com/ifish/daoImpl/DeviceDaoImpl.java b/src/main/java/com/ifish/daoImpl/DeviceDaoImpl.java index 9c54d9c..b28f225 100644 --- a/src/main/java/com/ifish/daoImpl/DeviceDaoImpl.java +++ b/src/main/java/com/ifish/daoImpl/DeviceDaoImpl.java @@ -3,6 +3,8 @@ package com.ifish.daoImpl; import java.math.BigInteger; import java.util.List; +import org.hibernate.Session; +import org.hibernate.Transaction; import org.hibernate.transform.Transformers; import org.springframework.stereotype.Repository; @@ -61,7 +63,9 @@ public class DeviceDaoImpl extends HibernateBaseDao implements @Override public int executeSql(String sql) { - return this.getSession().createSQLQuery(sql).executeUpdate(); + Session session = this.getSession(); + int i = session.createSQLQuery(sql).executeUpdate(); + return i; } } diff --git a/src/main/java/com/ifish/serviceImpl/AdminServiceImpl.java b/src/main/java/com/ifish/serviceImpl/AdminServiceImpl.java index e4c6640..e7dc2a2 100644 --- a/src/main/java/com/ifish/serviceImpl/AdminServiceImpl.java +++ b/src/main/java/com/ifish/serviceImpl/AdminServiceImpl.java @@ -1927,11 +1927,12 @@ public class AdminServiceImpl implements AdminService { id.setBillMonth(yearMonth); id.setFactoryCode(factoryCode); PayBill payBill = this.payBillDao.get(id); + String sql = "UPDATE tbl_device SET is_charge='1',charge_time=CURRENT_TIMESTAMP() where factory_code='" + factoryCode + "' and is_blacklist='0' and date_format(authorize_time,'%Y-%m')='" + yearMonth + "'"; + int i = this.deviceDao.executeSql(sql); + System.out.println(i); if (payBill != null) { payBill.setPayStatus(PayStatusEnum.one.getKey()); this.payBillDao.update(payBill); - String sql = "UPDATE tbl_device SET is_charge='1' where factory_code='" + factoryCode + "' and is_blacklist='0' and date_format(authorize_time,'%Y-%m')='" + yearMonth + "'"; - this.deviceDao.executeSql(sql); } } @@ -2384,6 +2385,9 @@ public class AdminServiceImpl implements AdminService { //电子厂 String selectField = searchFilter.getSelectField(); selectField = (selectField != null && selectField.length() > 0) ? selectField : ""; + //是否收费 + String selectField1 = searchFilter.getSelectField1(); + selectField1 = (selectField1 != null && selectField1.length() > 0) ? selectField1 : "0"; //授权开始日期 String sSearch = searchFilter.getsSearch(); sSearch = (sSearch != null && sSearch.length() > 0) ? sSearch : ""; @@ -2410,8 +2414,13 @@ public class AdminServiceImpl implements AdminService { String lastDay = format.format(calendar.getTime()); searchFilter.setsSearch1(lastDay); //按电子厂和鱼缸厂分组统计设备数量 - String sql = "SELECT d.factory_code AS factoryCode,f.factory_name AS factoryName,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE is_blacklist=0 AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + firstDay + "' AND '" + lastDay + "' GROUP BY d.factory_code ORDER BY deviceNumber DESC"; - List list = (List) this.deviceDao.getReportDataByGroup(sql, FactoryRecordData.class); + StringBuilder sb = new StringBuilder("SELECT d.factory_code AS factoryCode,f.factory_name AS factoryName,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE is_blacklist=0 "); + if (!"-1".equals(selectField1)) { + sb.append("AND d.is_charge='" + selectField1 + "' "); + } + sb.append("AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + firstDay + "' AND '" + lastDay + "' GROUP BY d.factory_code ORDER BY deviceNumber DESC"); + + List list = (List) this.deviceDao.getReportDataByGroup(sb.toString(), FactoryRecordData.class); //设备数量 Integer total = 0; for (FactoryRecordData data : list) { @@ -2430,9 +2439,13 @@ public class AdminServiceImpl implements AdminService { map.put("list", list); } //电子厂查询 else if (selectField.length() == 0 && sSearch.length() > 0 && sSearch1.length() > 0) { + StringBuilder sb = new StringBuilder("SELECT d.factory_code AS factoryCode,f.factory_name AS factoryName,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE is_blacklist=0 "); + if (!"-1".equals(selectField1)) { + sb.append("AND d.is_charge='" + selectField1 + "' "); + } + sb.append("AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + sSearch + "' AND '" + sSearch1 + "' GROUP BY d.factory_code ORDER BY deviceNumber DESC"); //按电子厂和鱼缸厂分组统计设备数量 - String sql = "SELECT d.factory_code AS factoryCode,f.factory_name AS factoryName,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE is_blacklist=0 AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + sSearch + "' AND '" + sSearch1 + "' GROUP BY d.factory_code ORDER BY deviceNumber DESC"; - List list = (List) this.deviceDao.getReportDataByGroup(sql, FactoryRecordData.class); + List list = (List) this.deviceDao.getReportDataByGroup(sb.toString(), FactoryRecordData.class); //设备数量 Integer total = 0; for (FactoryRecordData data : list) { @@ -2465,8 +2478,13 @@ public class AdminServiceImpl implements AdminService { String lastDay = format.format(calendar.getTime()); searchFilter.setsSearch1(lastDay); //按电子厂和鱼缸厂分组统计设备数量 - String sql = "SELECT date_format(d.authorize_time,'%Y-%m-%d') as date,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE d.is_blacklist=0 AND d.factory_code='" + selectField + "' AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + firstDay + "' AND '" + lastDay + "' GROUP BY date ORDER BY d.authorize_time DESC"; - List list = (List) this.deviceDao.getReportDataByGroup(sql, RecordData.class); + StringBuilder sb = new StringBuilder("SELECT date_format(d.authorize_time,'%Y-%m-%d') as date,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE d.is_blacklist=0 "); + if (!"-1".equals(selectField1)) { + sb.append("AND d.is_charge='" + selectField1 + "' "); + } + sb.append("AND d.factory_code='" + selectField + "' AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + firstDay + "' AND '" + lastDay + "' GROUP BY date ORDER BY d.authorize_time DESC"); + List list = (List) this.deviceDao.getReportDataByGroup(sb.toString(), RecordData.class); + //设备数量 Integer total = 0; for (RecordData data : list) { @@ -2485,8 +2503,13 @@ public class AdminServiceImpl implements AdminService { map.put("list", list); } else if (selectField.length() > 0 && sSearch.length() > 0 && sSearch1.length() > 0) { //按电子厂和鱼缸厂分组统计设备数量 - String sql = "SELECT date_format(d.authorize_time,'%Y-%m-%d') as date,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE d.is_blacklist=0 AND d.factory_code='" + selectField + "' AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + sSearch + "' AND '" + sSearch1 + "' GROUP BY date ORDER BY d.authorize_time DESC"; - List list = (List) this.deviceDao.getReportDataByGroup(sql, RecordData.class); + StringBuilder sb = new StringBuilder("SELECT date_format(d.authorize_time,'%Y-%m-%d') as date,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code WHERE d.is_blacklist=0 "); + if (!"-1".equals(selectField1)) { + sb.append("AND d.is_charge='" + selectField1 + "' "); + } + sb.append("AND d.factory_code='" + selectField + "' AND date_format(d.authorize_time,'%Y-%m-%d') BETWEEN '" + sSearch + "' AND '" + sSearch1 + "' GROUP BY date ORDER BY d.authorize_time DESC"); + + List list = (List) this.deviceDao.getReportDataByGroup(sb.toString(), RecordData.class); //设备数量 Integer total = 0; for (RecordData data : list) { diff --git a/src/main/webapp/WEB-INF/view/roleAdmin/recordReport.jsp b/src/main/webapp/WEB-INF/view/roleAdmin/recordReport.jsp index e4bcb98..bd275e6 100644 --- a/src/main/webapp/WEB-INF/view/roleAdmin/recordReport.jsp +++ b/src/main/webapp/WEB-INF/view/roleAdmin/recordReport.jsp @@ -22,6 +22,12 @@ var dataTable = null; $(function(){ $("#selectField").val("${searchFilter.selectField}"); + if ("${searchFilter.selectField1}" != null && "${searchFilter.selectField1}" != undefined && "${searchFilter.selectField1}" != '') { + $("#selectField1").val("${searchFilter.selectField1}"); + } else { + $("#selectField1").val("-1"); + + } $("#sSearch").val("${searchFilter.sSearch}"); $("#sSearch1").val("${searchFilter.sSearch1}"); //日期控件 @@ -84,6 +90,12 @@
+
+ +
+ +
+