添加事务以及部分索引注解
diff --git a/src/main/java/com/supwisdom/dlpay/doorlist/service/DoorlistMgrService.java b/src/main/java/com/supwisdom/dlpay/doorlist/service/DoorlistMgrService.java
index e2cad0e..fd7af24 100644
--- a/src/main/java/com/supwisdom/dlpay/doorlist/service/DoorlistMgrService.java
+++ b/src/main/java/com/supwisdom/dlpay/doorlist/service/DoorlistMgrService.java
@@ -3,34 +3,44 @@
import com.supwisdom.dlpay.ncmgr.domain.TNcAllottime;
import com.supwisdom.dlpay.ncmgr.domain.TNcCardlist;
import com.supwisdom.dlpay.system.page.Pagination;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
public interface DoorlistMgrService {
//根据设备编号和物理卡号和时间周id获取名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcCardlist getNcCardlist(int deviceid,String cardphyid,String timeid);
//批量保存设备名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean batchSaveCardList(List<TNcCardlist> tNcCardlists);
//批量保存名单分配设备和时间
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean batchSaveAllotTime(List<TNcAllottime> tNcAllottimes);
//根据查询条件分页获取系统管理员权限下所有名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getSystemCardList(String devname, String custname, String cardno, String syncstatus, String regionid, String allocatStartDate,String allocatEndDate,
String operflag, int pageNo, int pageSize);
//根据查询条件分页获取区域管理员权限下所有名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getOperatorCardList(String devname, String custname, String cardno, String syncstatus, String regionid, String allocatStartDate,String allocatEndDate,
String operflag, int pageNo, int pageSize,String operRegionid);
//根据查询条件分页获取楼栋管理员权限下所有名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getBuildingOperCardList(String devname, String custname, String cardno, String syncstatus, String allocatStartDate,String allocatEndDate,
String operflag, int pageNo, int pageSize,String operid);
//根据id查询下发设备名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcCardlist getNcCardlistById(String id);
//修改设备人员名单
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateNcCardlist(TNcCardlist bean);
}
diff --git a/src/main/java/com/supwisdom/dlpay/doorlist/service/impl/DoorlistMgrServiceImpl.java b/src/main/java/com/supwisdom/dlpay/doorlist/service/impl/DoorlistMgrServiceImpl.java
index 5ce1f9f..207f817 100644
--- a/src/main/java/com/supwisdom/dlpay/doorlist/service/impl/DoorlistMgrServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/doorlist/service/impl/DoorlistMgrServiceImpl.java
@@ -8,6 +8,8 @@
import com.supwisdom.dlpay.system.page.Pagination;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -18,11 +20,13 @@
@Autowired
NcAllottimeDao ncAllottimeDao;
+
@Override
public TNcCardlist getNcCardlist(int deviceid, String cardphyid, String timeid) {
return ncCardListDao.getNcCardlist(deviceid, cardphyid, timeid);
}
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
@Override
public boolean batchSaveCardList(List<TNcCardlist> tNcCardlists) {
boolean flag = true;
diff --git a/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CardListDaoImpl.java b/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CardListDaoImpl.java
index e99f2cc..eeb91fc 100644
--- a/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CardListDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CardListDaoImpl.java
@@ -627,7 +627,7 @@
return 0;
}
- @Transactional(readOnly = true)
+ @Transactional
@Override
public List<TDoorcardlstInfo> getSystemCardListMap( String allocatStartDate, String allocatEndDate, String devname, String custname, String cardno, String syncflag, String operflag, String buildingid,String regionid) {
try {
diff --git a/src/main/java/com/supwisdom/dlpay/mainservice/domain/TCard.java b/src/main/java/com/supwisdom/dlpay/mainservice/domain/TCard.java
index 271a76e..4f28641 100644
--- a/src/main/java/com/supwisdom/dlpay/mainservice/domain/TCard.java
+++ b/src/main/java/com/supwisdom/dlpay/mainservice/domain/TCard.java
@@ -8,7 +8,8 @@
* TCard entity. @author MyEclipse Persistence Tools
*/
@Entity
-@Table(name = "T_CARD")
+@Table(name = "T_CARD",
+ indexes = {@Index(name = "idx_card_cardno",columnList = "cardno",unique = true)})
public class TCard implements java.io.Serializable {
// Fields
diff --git a/src/main/java/com/supwisdom/dlpay/mainservice/domain/TDoordtl.java b/src/main/java/com/supwisdom/dlpay/mainservice/domain/TDoordtl.java
index f63ac1d..8e5c62e 100644
--- a/src/main/java/com/supwisdom/dlpay/mainservice/domain/TDoordtl.java
+++ b/src/main/java/com/supwisdom/dlpay/mainservice/domain/TDoordtl.java
@@ -6,7 +6,8 @@
* TDoordtl entity. @author MyEclipse Persistence Tools
*/
@Entity
-@Table(name = "T_DOORDTL")
+@Table(name = "T_DOORDTL",
+ indexes = {@Index(name = "idx_dtl_date", columnList = "transdate")})
public class TDoordtl implements java.io.Serializable {
// Fields
diff --git a/src/main/java/com/supwisdom/dlpay/mainservice/service/WebInterfaceService.java b/src/main/java/com/supwisdom/dlpay/mainservice/service/WebInterfaceService.java
index 4840416..0e75b4c 100644
--- a/src/main/java/com/supwisdom/dlpay/mainservice/service/WebInterfaceService.java
+++ b/src/main/java/com/supwisdom/dlpay/mainservice/service/WebInterfaceService.java
@@ -7,70 +7,86 @@
import com.supwisdom.dlpay.mainservice.domain.TCustomer;
import com.supwisdom.dlpay.mainservice.domain.TKey;
import com.supwisdom.dlpay.system.page.Pagination;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
public interface WebInterfaceService {
//获取所有厂商
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TKey> getAllKeys() throws Exception;
/*cardlist*********************/
//根据查询条件分页获取所有设备内名单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getSystemCardListFrSearch(String allocatStartDate, String allocatEndDate,
String devname, String custname, String cardno, String syncflag,String operflag, String buildingid,String regionid, int pageNo, int pageSize);
//根据查询条件分页获取管理员权限的设备内名单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getOperatorCardListFrSearch(String allocatStartDate, String allocatEndDate,
String devname, String custname, String cardno, String syncflag,String operflag, String buildingid,String regionid, int pageNo, int pageSize,String operRegionid);
//根据查询条件分页获取楼栋管理员权限下的设备内名单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getBuildingOperCardListFrSearch(String allocatStartDate, String allocatEndDate,
String devname, String custname, String cardno, String syncflag,String operflag, String buildingid,String operid, int pageNo, int pageSize);
//根据查询条件获取系统管理员所有导出表单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class},readOnly = true)
public List<TDoorcardlstInfo> getSystemCardListMap( String allocatStartDate, String allocatEndDate,
String devname, String custname, String cardno, String syncflag, String operflag, String buildingid,String regionid);
//根据查询条件获取区域管理员所有导出表单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class},readOnly = true)
public List<TDoorcardlstInfo> getOperatorCardListMap( String allocatStartDate, String allocatEndDate,
String devname, String custname, String cardno, String syncflag, String operflag, String buildingid,String regionid,String operRegionid);
//根据查询条件获取楼栋管理员所有导出表单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class},readOnly = true)
public List<TDoorcardlstInfo> getBuildingOperCardListMap( String allocatStartDate, String allocatEndDate,
String devname, String custname, String cardno, String syncflag, String operflag, String buildingid,String operid);
//根据名单编号将已同步的名单修改为未同步使其重新同步
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public void updateDoorcardlstToNoWithIds (List<Long> listIds);
/*doordtl******************/
//根据查询条件获取所有导出Excel数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDoordtlInfo> findSystemExportExcelDoordtl(String startTranDate, String endTranDate, String startTranTime, String endTranTime, String cardno,
String custname, String buildingid, String regionid, String devname, String streamstatus);
//根据查询条件获取管理员权限的Excel数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDoordtlInfo> findOperatorExportExcelDoordtl(String startTranDate, String endTranDate, String startTranTime, String endTranTime, String cardno,
String custname, String buildingid, String regionid, String devname, String streamstatus,String operRegionid);
//根据查询条件获取楼栋管理员权限的Excel数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDoordtlInfo> findBuildingOperExportExcelDoorDtl(String startTranDate, String endTranDate, String startTranTime, String endTranTime, String cardno,
String custname, String buildingid,String devname, String streamstatus,String operid);
//根据查询条件获取系统管理员流水数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination findSystemTDoordtl(String startTranDate, String endTranDate, String startTranTime, String endTranTime, String cardno,
String custname, String buildingid, String devname, String streamstatus, int pageNo, int pageSize,String regionid);
//根据查询条件获取区域管理员权限相应流水数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination findOperatorTDoordtl(
String startTranDate, String endTranDate, String startTranTime, String endTranTime, String cardno,
String custname, String buildingid, String devname, String streamstatus, int pageNo, int pageSize,String regionid,String operRegionid);
//根据查询条件获取楼栋管理员权限相应流水数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination findBuildingOperTDoordtl(
String startTranDate, String endTranDate, String startTranTime, String endTranTime, String cardno,
String custname, String buildingid, String devname, String streamstatus, int pageNo, int pageSize,String operid);
@@ -79,20 +95,25 @@
/*customer*********************/
//根据卡号和银行卡号查询是否存在customer
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TCustomer findCustomerByNo(String cardno,String bankcardno);
//保存客户
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveCustomer(TCustomer bean);
//根据查询条件获取所有要下发的客户
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TCustomerInfo> getAllTCustomerList(String perName, String cardno, String bankcardno);
/*card************************/
//根据客户id获取其卡信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TCard findCardByCustid(String custid);
//保存卡信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveCard(TCard bean);
}
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TBuilding.java b/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TBuilding.java
index 2552c41..c9391ae 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TBuilding.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TBuilding.java
@@ -1,15 +1,13 @@
package com.supwisdom.dlpay.ncmgr.domain;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import javax.persistence.*;
/**
* TBuilding entity. @author MyEclipse Persistence Tools
*/
@Entity
-@Table(name = "T_BUILDING")
+@Table(name = "T_BUILDING",
+ indexes = {@Index(name = "idx_building_id",columnList = "buildingid",unique = true)})
public class TBuilding implements java.io.Serializable {
// Fields
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TNcDevice.java b/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TNcDevice.java
index 807d168..8ba75db 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TNcDevice.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/domain/TNcDevice.java
@@ -2,16 +2,16 @@
import cn.afterturn.easypoi.excel.annotation.Excel;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import javax.persistence.*;
/**
* TNcDevice entity. @author MyEclipse Persistence Tools
*/
@Entity
-@Table(name = "T_NC_DEVICE")
+@Table(name = "T_NC_DEVICE",
+ indexes = {@Index(name = "idx_nc_dev_phyid", columnList = "devphyid"),
+ @Index(name = "idx_nc_dev_devid",columnList = "deviceid",unique = true)}
+ )
public class TNcDevice implements java.io.Serializable {
// Fields
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/service/NcService.java b/src/main/java/com/supwisdom/dlpay/ncmgr/service/NcService.java
index f07ecdc..831c84f 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/service/NcService.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/service/NcService.java
@@ -4,206 +4,274 @@
import com.supwisdom.dlpay.ncmgr.domain.*;
import com.supwisdom.dlpay.system.domain.TRegion;
import com.supwisdom.dlpay.system.page.Pagination;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
public interface NcService {
//根据查询条件分页获取所有设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getSystemNcDeviceWithPage(String devname, int pageNo, int pageSize, Map map, String buildingid,String regionid, String devtype);
//根据查询条件分页获取管理员设备---
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getOperatorNcDeviceWithPage(String devname,int pageNo,int pageSize, String buildingid,String regionid,String devtype,String operRegionid);
//根据查询条件分页获取楼栋管理员设备 ---regionid为空
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getBuildingOperNcDeviceWithPage(String devname,int pageNo,int pageSize,String buildingid,String devtype,String operid);
//获取所有楼栋信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TBuilding> getAllBuilding();
//获取所有区域信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TRegion> getAllRegion();
//根据楼栋id获取楼栋信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TBuilding getBuidingById(String id);
//根据设备类型获取所有设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevice> getSystemDevByType(String type);
//根据设备类型获取操作员权限设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevice> getOperatorDevByType(String type,String regionid);
//根据设备类型获取楼栋管理员权限设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevice> getBuildingOperDevByType(String type,String operid);
//根据设备id获取设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcDevice findDevById(int id);
//验证设备名称
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcDevice validDevName(int devid,String devname);
//验证设备物理编号
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcDevice validDevPhyid(int devid,String devPhyid);
//验证读头号
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcDevice validDevNo(int fdevid,int devno,int devid);
//修改设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateDevice(TNcDevice bean);
//获取设备最大主键
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public int getMaxId();
//保存设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveDevice(TNcDevice bean);
//根据设备编号获取设备及父设备信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcDevice getDevInfoByDevid(int devid);
//根据控制器设备编号获取其读头设备列表
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevice> getDevListByfDevid(int devid);
//根据设备编号删除设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public void delDevById(int devid);
//根据设备编号查询是否绑定时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean getDevWeekByDevid(int devid);
//设备名单清空(获取清空所用名单)
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcCardlist getCleanList(int devid);
//保存同步名单信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveCardlist(TNcCardlist bean);
//设备名单重下(修改该设备已同步名单为未同步)
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public void updateForListReload(int devid);
//根据楼栋id获取设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcDevice getDevByBuildingid(String buildingid);
//获取系统管理员权限下所有可以分配的设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDoordevInfo> getSystemDevList(String devname,String regionid,String buildingid);
//获取区域管理员权限下所有可以分配的设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDoordevInfo> getOperatorDevList(String devname,String regionid,String buildingid,String operRegionid);
//获取楼栋管理员权限下所有可以分配的设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDoordevInfo> getBuildingOperDevList(String devname,String regionid,String buildingid,String operid);
//根据查询条件分页获取所有时间段信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getNcTimeWithPage(String time,int pageNo, int pageSize,Map map);
//根据时间段
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<String> getTimegrpIdById(int id);
//根据时间段id删除时间段
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean delTimeByTimeId(int id);
//DevWeek数据所有版本号+1
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updListVersion();
//根据时间段id获取时间段信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcTime findByTimeId(int id);
//根据时间段名称获取时间段信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcTime findByTimeName(String name);
//获取时间段最大主键
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public int getMaxTimeId();
//保存时间段
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveTime(TNcTime bean);
//根据id和名称获取时间段信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcTime findByIdAndName(int id, String name);
//修改时间段
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateTime(TNcTime bean);
//根据查询条件分页获取时间组
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getNcTimeGrpWithPage(String time,int pageNo, int pageSize,Map map);
//获取所有时间段
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcTime> findAllNcTime();
//根据id获取时间组信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcTimegrp findByTimeGrpId(int id);
//根据时间组名称获取时间组信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcTimegrp findByTimeGrpName(String name);
//获取时间组最大id主键
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public int getMaxTimeGrpId();
//保存时间组
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveTimegrp(TNcTimegrp bean);
//根据id和名称查询时间组是否存在
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcTimegrp findByGrpIdAndName(int id,String name);
//修改时间组
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateTimegrp(TNcTimegrp bean);
//根据时间组id查询此时间组是否被时间周使用
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<String> getWeekTimeById(int id);
//根据id删除时间组
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean delByGrpId(int id);
//根据查询条件分页获取时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getNcWeekTimeWithPage(String time,int pageNo, int pageSize,Map map);
//获取所有时间组
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcTimegrp> findAllNcTimeGrp();
//根据id获取时间周信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcWeektime findByWeekTimeId(int id);
//根据名称获取时间周信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcWeektime findByWeekTimeName(String name);
//获取最大时间周id 只支持3-15
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public int getMaxWeekId();
//保存时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveWeektime(TNcWeektime bean);
//根据id和名称查询时间周是否存在
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TNcWeektime findByWeekIdAndName(int id,String name);
//修改时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateWeektime(TNcWeektime bean);
//根据时间周id查询设备绑定时间周情况
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List getDevWeekByWeekid(int id);
//根据id删除时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean delByWeekId(int id);
//根据查询条件分页获取设备绑定时间周信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getNcDevWeekWithPage(int weekid,String devname,int pageNo, int pageSize,Map map);
//获取所有时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcWeektime> findAllNcWeekTime();
//根据设备编号和时间周id删除对应设备时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public void delDevWeekById(int devid,int weekid);
//获取最大设备时间周版本
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public int findMaxDevWeekVersion();
//根据时间周id删除设备绑定的时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public void deleteDevWeekByWeekId(int weekId);
//保存设备时间周
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveDevWeek(TNcDevweek devweek);
//根据id查询已选取此时间周的设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevweek> findChosenDev(int weekId);
//获取所有设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevice> findAllNcDevices();
//获取管理员权限下的设备
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TNcDevice> findOperatorDevices(String operRegionid);
}
diff --git a/src/main/java/com/supwisdom/dlpay/system/dao/impl/DictionaryDaoImpl.java b/src/main/java/com/supwisdom/dlpay/system/dao/impl/DictionaryDaoImpl.java
index 4655310..87c8077 100644
--- a/src/main/java/com/supwisdom/dlpay/system/dao/impl/DictionaryDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/dao/impl/DictionaryDaoImpl.java
@@ -6,6 +6,7 @@
import com.supwisdom.dlpay.system.domain.TDictionaryId;
import com.supwisdom.dlpay.system.page.Pagination;
import org.hibernate.transform.Transformers;
+import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
@@ -120,7 +121,6 @@
@Transactional
@Override
- //@Cacheable(cacheNames = "dicationary_cache", key = "#p0")
public List<TDictionaryId> findTDictionaryByType(int type) {
String sql = "select bean.id from TDictionary bean where bean.id.dicttype=?1";
Query query = entityManager.createQuery(sql,TDictionaryId.class);
diff --git a/src/main/java/com/supwisdom/dlpay/system/domain/TRegion.java b/src/main/java/com/supwisdom/dlpay/system/domain/TRegion.java
index 7513f94..449e79e 100644
--- a/src/main/java/com/supwisdom/dlpay/system/domain/TRegion.java
+++ b/src/main/java/com/supwisdom/dlpay/system/domain/TRegion.java
@@ -1,12 +1,10 @@
package com.supwisdom.dlpay.system.domain;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.Table;
+import javax.persistence.*;
@Entity
-@Table(name = "TB_REGION")
+@Table(name = "TB_REGION",
+ indexes = {@Index(name = "idx_region_id",columnList = "regionid",unique = true)})
public class TRegion {
private String regionid;
private String address;
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java b/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
index ff84e30..d486fbd 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
@@ -6,133 +6,176 @@
import com.supwisdom.dlpay.system.bean.RegionZTreeNodes;
import com.supwisdom.dlpay.system.domain.*;
import com.supwisdom.dlpay.system.page.Pagination;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
import java.util.List;
public interface SystemService {
//根据查询条件分页查询字典
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination findDictionary(String dicttype, String dictcaption, Integer pageNo, Integer pageSize);
//获取所有字典类型
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<DictionaryType> findDictionaryType();
//保存字典值
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveDictionary(String dicttype, String dicttypename, String dictval, String dictcaption);
//根据类型获取字典值
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDictionaryId> findTDictionaryByType(int type);
//根据管理员属性获取其能分配的管理员属性 sql中字典type固定为1
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDictionaryId> findOpertypes(String opertype);
//根据类型和值获取字典值
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TDictionaryId> findByType(int type, String dicVal);
//修改字典值
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TDictionary updateDictionary(String dicttype, String dicttypename, String dictval, String dictcaption, String oriengaltype, String oriengalval);
//根据查询条件分页获取所有区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getSystemRegionList(String regionname,int pageNo,int pageSize);
//根据查询条件以及管理员区域分页获取区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getOperatorRegionList(String regionname,String regionid,int pageNo,int pageSize);
//根据区域id查询楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TBuilding> getBuildingByRegionId(String regionid);
//根据区域id查询楼栋管理员权限下楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TBuilding> getBuildingOperBuildingByRegionId(String regionid,String operid);
//根据id删除区域--修改状态flag为0
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean deleteRegionById(String regionid);
//根据id获取区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TRegion getRegionById(String regionid);
//根据id获取所有状态的区域---查重使用
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TRegion getRegionAllFlagById(String regionid);
//根据区域id获取其权限下所有区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TRegion> getRegionListById(String regionid);
//根据区域id获取其下级所有区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TRegion> getLowRegionListById(String regionid);
//根据区域级别获取其上一级级别的所有区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TRegion> getRegionListByLevel(int level);
//根据区域级别获取其权限下上一级级别的区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TRegion> getOperRegionListByLevel(int level,String regionid);
//获取所有区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TRegion> getAllRegions();
//根据名称获取区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TRegion getRegionByName(String regionname);
//保存区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveRegion(TRegion bean);
//根据id和名称获取非本id的相同名称区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TRegion getRegionByNameAndId(String regionname,String regionid);
//修改区域
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateRegion(TRegion bean);
//获取区域树形数据
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<RegionZTreeNodes> getAllRegionTreeList();
//根据查询条件分页获取所有楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getSystemBuildingList(String regionid,String buildingname,int pageNo,int pageSize);
//根据查询条件分页获取区域管理员权限下所有楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getOperatorBuildingList(String operRegionid,String regionid,String buildingname,int pageNo,int pageSize);
//分页获取楼栋管理员权限内楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public Pagination getBuildingOperBuildingList(String regionid,String buildingname,String operid,int pageNo,int pageSize);
//根据id获取楼栋信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TBuilding getBuildingById(String buildingid);
//根据名称获取楼栋信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TBuilding getBuildingByName(String buildingname);
//保存楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveBuilding(TBuilding bean);
//根据id和名称获取非本id的相同名称楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public TBuilding getBuildingByNameAndId(String buildingname,String buildingid);
//修改楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean updateBuilding(TBuilding bean);
//根据id删除楼栋---修改flag为D
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean delBuilding(String buildingid);
//获取所有要分配的楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<AllotBuildingBean> findSystemAllotBuildingList();
//获取操作员权限下要分配的楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<AllotBuildingBean> findOperatorAllotBuildingList(String operRegionid);
//获取已经分配过的楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<AllotBuildingBean> findBuildingInOper(String operid);
//根据操作员id删除所有分配的楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean deleteOperBuildingByOperid(String operid);
//保存操作员分配的楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public boolean saveOperBuilding(TOperbuilding bean);
//获取所有楼栋信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TBuilding> getAllBuildings();
//获取区域管理员权限下的所有楼栋信息
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TBuilding> getOperatorBuildings(String regionid);
//获取楼栋管理员权限下的楼栋
+ @Transactional(propagation = Propagation.REQUIRED,rollbackFor = {Exception.class})
public List<TBuilding> getBuildingOperBuildings(String operid);
}
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java b/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java
index 3cbe761..e6f818e 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/impl/SystemServiceImpl.java
@@ -11,6 +11,8 @@
import com.supwisdom.dlpay.system.page.Pagination;
import com.supwisdom.dlpay.system.service.SystemService;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.CacheEvict;
+import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
@@ -38,6 +40,7 @@
}
@Override
+ @CacheEvict(cacheNames = "dicationary_cache", key = "#p0")
public boolean saveDictionary(String dicttype, String dicttypename, String dictval, String dictcaption) {
TDictionary tDictionary = new TDictionary();
TDictionaryId tDictionaryId = new TDictionaryId();
@@ -51,11 +54,13 @@
}
@Override
+ @Cacheable(cacheNames = "dicationary_cache", key = "#p0")
public List<TDictionaryId> findTDictionaryByType(int type) {
return dictionaryDao.findTDictionaryByType(type);
}
@Override
+ @Cacheable(cacheNames = "opertypes_cache", key = "#p0")
public List<TDictionaryId> findOpertypes(String opertype) {
return dictionaryDao.findOpertypes(opertype);
}
@@ -66,6 +71,7 @@
}
@Override
+ @CacheEvict(cacheNames = "dicationary_cache", key = "#p0")
public TDictionary updateDictionary(String dicttype, String dicttypename, String dictval, String dictcaption, String oriengaltype, String oriengalval) {
return dictionaryDao.updateDictionary(dicttype, dicttypename, dictval, dictcaption, oriengaltype, oriengalval);
}
diff --git a/src/main/resources/templates/system/role/func.html b/src/main/resources/templates/system/role/func.html
index fff2149..48d6dff 100755
--- a/src/main/resources/templates/system/role/func.html
+++ b/src/main/resources/templates/system/role/func.html
@@ -34,7 +34,6 @@
admin.dgo('[[@{/role/func}]]', {
roleId: func,
}, function (data) {
- debugger
layer.closeAll('loading');
if (data.code == 200) {
initTree(data.node);