diff --git a/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/DoordtlDaoImpl.java b/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/DoordtlDaoImpl.java
index 43b18ff..3d675ce 100644
--- a/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/DoordtlDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/DoordtlDaoImpl.java
@@ -44,10 +44,10 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingid = :buildingid";
+                queryString += " and e.buildingid = :buildingid ";
             }
             if (!regionid.equals("")){
-                queryString += "and d.regionid in  "
+                queryString += " and d.regionid in  "
                         +"("
                         + "with recursive tmp as  "
                         + "("
@@ -116,10 +116,10 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingid = :buildingid";
+                queryString += " and e.buildingid = :buildingid ";
             }
             if (!regionid.equals("")){
-                queryString += "and d.regionid in  "
+                queryString += " and d.regionid in  "
                         +"("
                         + "with recursive tmp as  "
                         + "("
@@ -128,7 +128,7 @@
                         + "select tbr.regionid,tbr.parentid,tbr.regionname from tb_region tbr inner join tmp t on t.regionid=tbr.parentid  "
                         + ") select regionid from tmp where tmp.regionid = :regionid )";
             }else {
-                queryString += "and d.regionid in  "
+                queryString += " and d.regionid in  "
                         +"("
                         + "with recursive tmp as  "
                         + "("
@@ -200,7 +200,7 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingid = :buildingid";
+                queryString += " and e.buildingid = :buildingid ";
             }
             queryString += " order by transdate DESC";
             Query query = entityManager.createNativeQuery(queryString, TDoordtlInfo.class);
@@ -259,10 +259,10 @@
             queryString += " and a.status =:streamstatus ";
         }
         if(!buildingid.equals("")){
-            queryString += " and e.buildingid = :buildingid";
+            queryString += " and e.buildingid = :buildingid ";
         }
         if (!regionid.equals("")){
-            queryString += "and d.regionid in  "
+            queryString += " and d.regionid in  "
                     +"("
                     + "with recursive tmp as  "
                     + "("
@@ -338,10 +338,10 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingid = :buildingid";
+                queryString += " and e.buildingid = :buildingid ";
             }
             if (!regionid.equals("")){
-                queryString += "and d.regionid in  "
+                queryString += " and d.regionid in  "
                         +"("
                         + "with recursive tmp as  "
                         + "("
@@ -414,10 +414,10 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingid = :buildingid";
+                queryString += " and e.buildingid = :buildingid ";
             }
             if (!regionid.equals("")){
-                queryString += "and d.regionid in  "
+                queryString += " and d.regionid in  "
                         +"("
                         + "with recursive tmp as  "
                         + "("
@@ -508,10 +508,10 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingname like :buildingname";
+                queryString += " and e.buildingid = :buildingid ";
             }
             if (!regionid.equals("")){
-                queryString += "and d.regionid in  "
+                queryString += " and d.regionid in  "
                         +"("
                         + "with recursive tmp as  "
                         + "("
@@ -594,7 +594,7 @@
             queryString += " and a.status =:streamstatus ";
         }
         if(!buildingid.equals("")){
-            queryString += " and e.buildingid = :buildingid";
+            queryString += " and e.buildingid = :buildingid ";
         }
         queryString += " order by transdate DESC";
         Query query = entityManager.createNativeQuery(queryString, TDoordtlInfo.class);
@@ -665,7 +665,7 @@
                 queryString += " and a.status =:streamstatus ";
             }
             if(!buildingid.equals("")){
-                queryString += " and e.buildingname like :buildingname";
+                queryString += " and e.buildingid = :buildingid ";
             }
             Query query = entityManager.createNativeQuery(queryString);
             query.setMaxResults(5);
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/controller/NcMgrController.java b/src/main/java/com/supwisdom/dlpay/ncmgr/controller/NcMgrController.java
index 5e51d27..16a9e71 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/controller/NcMgrController.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/controller/NcMgrController.java
@@ -162,12 +162,9 @@
                 map.put("buildingsfill", buildingsfill);
                 devices = ncService.getOperatorDevByType("C", operUser.getRegionid());
                 map.put("devices", devices);
-            }else if (opertype.equals("L") && !StringUtil.isEmpty(operUser.getFoperid())){
-                //楼栋管理员填充区域为其上级管理员区域
-                TOperator fOperUser = managerService.getOperatorById(operUser.getFoperid());
-                if (fOperUser.getOpertype().equals("H") && !StringUtil.isEmpty(fOperUser.getRegionid())){
-                    regionsfill = systemService.getRegionListById(fOperUser.getRegionid());
-                }
+            }else if (opertype.equals("L") ){
+                //楼栋管理员填充区域为所有区域
+                regionsfill = systemService.getAllRegions();
                 map.put("regionsfill", regionsfill);
                 buildingsfill = systemService.getBuildingOperBuildings(operUser.getOperid());
                 map.put("buildingsfill", buildingsfill);
@@ -188,10 +185,15 @@
      */
     @ResponseBody
     @RequestMapping("/getRegionBuilding")
-    public Map getRegionBuilding(@RequestParam(value = "regionid") String regionid){
+    public Map getRegionBuilding(@RequestParam(value = "regionid") String regionid,@AuthenticationPrincipal TOperator operUser){
         Map map = new HashMap();
         try{
-            List<TBuilding> regionBuildings = systemService.getBuildingByRegionId(regionid);
+            List<TBuilding> regionBuildings = null;
+            if (operUser.getOpertype().equals("L")){
+                regionBuildings = systemService.getBuildingOperBuildingByRegionId(regionid, operUser.getOperid());
+            }else {
+                regionBuildings = systemService.getBuildingByRegionId(regionid);
+            }
             map.put("reBuilding", regionBuildings);
         }catch (Exception e){
             e.printStackTrace();
@@ -249,7 +251,7 @@
                 devUpdate.setDevno(postData.getDevno());
                 devUpdate.setIp(postData.getIp());
                 devUpdate.setOperflag("A");
-                devUpdate.setSyncflag("N");
+                devUpdate.setSyncflag("S");
                 devUpdate.setUpdtime(DateUtil.getNow());
                 devUpdate.setSynctime(DateUtil.getNow());
                 devUpdate.setBuildingid(postData.getBuildingid());
@@ -369,7 +371,7 @@
         Map map = new HashMap();
         String message="";
         try{
-            TNcCardlist cleanList = ncService.getCleanList(devid + "");
+            TNcCardlist cleanList = ncService.getCleanList(devid);
             if (cleanList==null) {
                 //如果该设备没有清空专用名单则添加一个(直接添加到同步表里)
                 TNcCardlist tNcCardlist = new TNcCardlist();
@@ -414,7 +416,7 @@
         String message="";
         try{
             //修改该设备名单同步标志为未同步
-            ncService.updateForListReload(devid+"");
+            ncService.updateForListReload(devid);
         }catch (Exception e){
             e.printStackTrace();
             message = "设备名单重下异常!";
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/dao/NcCardListDao.java b/src/main/java/com/supwisdom/dlpay/ncmgr/dao/NcCardListDao.java
index 947ed47..eac278e 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/dao/NcCardListDao.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/dao/NcCardListDao.java
@@ -5,11 +5,11 @@
 
 public interface NcCardListDao {
 
-    public TNcCardlist getCleanList(String devid);
+    public TNcCardlist getCleanList(int devid);
 
     public boolean saveCardlist(TNcCardlist bean);
 
-    public void updateForListReload(String devid);
+    public void updateForListReload(int devid);
 
     public TNcCardlist getNcCardlist(int deviceid,String cardphyid,String timeid);
 
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/dao/impl/NcCardListDaoImpl.java b/src/main/java/com/supwisdom/dlpay/ncmgr/dao/impl/NcCardListDaoImpl.java
index 0725ccb..6e6db9a 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/dao/impl/NcCardListDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/dao/impl/NcCardListDaoImpl.java
@@ -22,7 +22,7 @@
 
     @Transactional
     @Override
-    public TNcCardlist getCleanList(String devid) {
+    public TNcCardlist getCleanList(int devid) {
         String sql = "select t from TNcCardlist t where t.deviceid=:devid and t.operflag = 'C'";
         TypedQuery<TNcCardlist> query = entityManager.createQuery(sql, TNcCardlist.class);
         query.setParameter("devid", devid);
@@ -48,7 +48,7 @@
 
     @Transactional
     @Override
-    public void updateForListReload(String devid) {
+    public void updateForListReload(int devid) {
         String sql = "update T_NC_CARDLIST set syncflag='N' ,synctime='' "+
                 " where deviceid=?1 and operflag != 'C'";
         Query query = entityManager.createNativeQuery(sql);
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 cfb9db3..b82c288 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/service/NcService.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/service/NcService.java
@@ -64,13 +64,13 @@
     public void delDevById(int devid);
 
     //设备名单清空(获取清空所用名单)
-    public TNcCardlist getCleanList(String devid);
+    public TNcCardlist getCleanList(int devid);
 
     //保存同步名单信息
     public boolean saveCardlist(TNcCardlist bean);
 
     //设备名单重下(修改该设备已同步名单为未同步)
-    public void updateForListReload(String devid);
+    public void updateForListReload(int devid);
 
     //根据楼栋id获取设备
     public TNcDevice getDevByBuildingid(String buildingid);
diff --git a/src/main/java/com/supwisdom/dlpay/ncmgr/service/impl/NcServiceImpl.java b/src/main/java/com/supwisdom/dlpay/ncmgr/service/impl/NcServiceImpl.java
index d841614..60efa27 100644
--- a/src/main/java/com/supwisdom/dlpay/ncmgr/service/impl/NcServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/ncmgr/service/impl/NcServiceImpl.java
@@ -121,7 +121,7 @@
     }
 
     @Override
-    public TNcCardlist getCleanList(String devid) {
+    public TNcCardlist getCleanList(int devid) {
         return ncCardListDao.getCleanList(devid);
     }
 
@@ -131,7 +131,7 @@
     }
 
     @Override
-    public void updateForListReload(String devid) {
+    public void updateForListReload(int devid) {
         ncCardListDao.updateForListReload(devid);
     }
 
diff --git a/src/main/java/com/supwisdom/dlpay/system/controller/OperatorController.java b/src/main/java/com/supwisdom/dlpay/system/controller/OperatorController.java
index ddc8527..0e5c553 100644
--- a/src/main/java/com/supwisdom/dlpay/system/controller/OperatorController.java
+++ b/src/main/java/com/supwisdom/dlpay/system/controller/OperatorController.java
@@ -396,6 +396,7 @@
             operator.setEmail(postData.getEmail());
             operator.setMobile(postData.getMobile());
             operator.setOpendate(DateUtil.getNow("yyyyMMdd"));
+            operator.setStatus("normal");
             operator.setRealname(postData.getRealname());
             operator.setFoperid(operUser.getOperid());
             operator.setRegionid(postData.getRegionid());
diff --git a/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java b/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java
index 1232481..a6086a4 100644
--- a/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java
+++ b/src/main/java/com/supwisdom/dlpay/system/controller/SystemController.java
@@ -249,15 +249,17 @@
         String message="";
         try{
             List<TBuilding> building = systemService.getBuildingByRegionId(regionid);
-            List<TRegion> regionByParentId = systemService.getRegionByParentId(regionid);
-            if (building!=null && regionByParentId!=null){
+            List<TRegion> regionByParentId = systemService.getRegionListById(regionid);
+            if (building!=null || regionByParentId!=null){
                 message="此区域已被绑定!";
                 map.put("message", message);
                 return map;
             }
+
+
             boolean flag = systemService.deleteRegionById(regionid);
             if (flag==false){
-                message="删除区域失败!";
+                message="无法执行删除,删除区域失败!";
             }
 
         }catch (Exception e){
@@ -307,7 +309,7 @@
     public Map addRegion (@RequestBody RegionBean postData){
         Map map = new HashMap();
         try{
-            TRegion regionById = systemService.getRegionById(postData.getRegionid());
+            TRegion regionById = systemService.getRegionAllFlagById(postData.getRegionid());
             if (regionById!=null){
                 map.put("errStr", "区域编号已经存在，请修改！");
                 return map;
diff --git a/src/main/java/com/supwisdom/dlpay/system/dao/BuildingDao.java b/src/main/java/com/supwisdom/dlpay/system/dao/BuildingDao.java
index 5e8c865..b2d7c68 100644
--- a/src/main/java/com/supwisdom/dlpay/system/dao/BuildingDao.java
+++ b/src/main/java/com/supwisdom/dlpay/system/dao/BuildingDao.java
@@ -42,5 +42,5 @@
 
     public List<TBuilding> getBuildingOperBuildings(String operid);
 
-
+    public List<TBuilding> getBuildingOperBuildingByRegionId(String regionid,String operid);
 }
diff --git a/src/main/java/com/supwisdom/dlpay/system/dao/RegionDao.java b/src/main/java/com/supwisdom/dlpay/system/dao/RegionDao.java
index 9e5c8e7..75847c4 100644
--- a/src/main/java/com/supwisdom/dlpay/system/dao/RegionDao.java
+++ b/src/main/java/com/supwisdom/dlpay/system/dao/RegionDao.java
@@ -15,6 +15,8 @@
 
     public TRegion getRegionById(String regionid);
 
+    public TRegion getRegionAllFlagById(String regionid);
+
     public List<TRegion> getRegionListById(String regionid);
 
     public List<TRegion> getRegionListByLevel(int level);
@@ -29,5 +31,4 @@
 
     public boolean updateRegion(TRegion bean);
 
-    public List<TRegion> getRegionByParentId(String parentid);
 }
diff --git a/src/main/java/com/supwisdom/dlpay/system/dao/impl/BuildingDaoImpl.java b/src/main/java/com/supwisdom/dlpay/system/dao/impl/BuildingDaoImpl.java
index 726c582..c32afe9 100644
--- a/src/main/java/com/supwisdom/dlpay/system/dao/impl/BuildingDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/dao/impl/BuildingDaoImpl.java
@@ -332,4 +332,20 @@
         List<TBuilding> list = query.getResultList();
         return list;
     }
+
+    @Transactional
+    @Override
+    public List<TBuilding> getBuildingOperBuildingByRegionId(String regionid,String operid) {
+        String sql = "select bean.buildingid,bean.buildingname,bean.synctime,bean.updtime,bean.flag,bean.buildingdesc,bean.regionid" +
+                " from T_Building bean where bean.flag='A' "+
+                "and bean.regionid in  " +
+                "( with recursive tmp as  ( select tbr.regionid,tbr.parentid,tbr.regionname from tb_region tbr " +
+                " where regionid= :regionid union all  select tbr.regionid,tbr.parentid,tbr.regionname from tb_region tbr inner join tmp t on t.regionid=tbr.parentid ) " +
+                "  select regionid from tmp  ) and bean.buildingid in (select c.buildingid from t_operbuilding c where c.operid = :operid)";
+        Query query = entityManager.createNativeQuery(sql, TBuilding.class);
+        query.setParameter("regionid", regionid);
+        query.setParameter("operid", operid);
+        List list = query.getResultList();
+        return list;
+    }
 }
diff --git a/src/main/java/com/supwisdom/dlpay/system/dao/impl/ManagerDaoImpl.java b/src/main/java/com/supwisdom/dlpay/system/dao/impl/ManagerDaoImpl.java
index feb8578..5a8e6a1 100644
--- a/src/main/java/com/supwisdom/dlpay/system/dao/impl/ManagerDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/dao/impl/ManagerDaoImpl.java
@@ -113,7 +113,7 @@
     @Transactional
     @Override
     public TOperator getOperatorById(String operid) {
-        String sql = "select bean from TOperator bean where bean.status='normal' and bean.operid=:operid ";
+        String sql = "select bean from TOperator bean where  bean.operid=:operid ";
         TypedQuery<TOperator> query = entityManager.createQuery(sql, TOperator.class);
         query.setParameter("operid", operid);
         List<TOperator> list = query.getResultList();
diff --git a/src/main/java/com/supwisdom/dlpay/system/dao/impl/RegionDaoImpl.java b/src/main/java/com/supwisdom/dlpay/system/dao/impl/RegionDaoImpl.java
index 0c6c4b3..f865cdb 100644
--- a/src/main/java/com/supwisdom/dlpay/system/dao/impl/RegionDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/dao/impl/RegionDaoImpl.java
@@ -153,6 +153,19 @@
 
     @Transactional
     @Override
+    public TRegion getRegionAllFlagById(String regionid) {
+        String sql = "select bean from TRegion bean where bean.regionid = :regionid ";
+        TypedQuery<TRegion> query = entityManager.createQuery(sql, TRegion.class);
+        query.setParameter("regionid", regionid );
+        List<TRegion> list = query.getResultList();
+        if (list!=null && list.size()>0){
+            return list.get(0);
+        }
+        return null;
+    }
+
+    @Transactional
+    @Override
     public List<TRegion> getRegionListById(String regionid) {
         String sql = "select bean.regionid,bean.address,bean.level,bean.parentid,bean.regionname,bean.remarks,bean.parentname,bean.flag " +
                 "from TB_REGION bean where flag=1 "+
@@ -195,7 +208,7 @@
     @Transactional
     @Override
     public TRegion getRegionByName(String regionname) {
-        String sql = "select bean from TRegion bean where bean.regionname = :regionname and bean.flag=1 ";
+        String sql = "select bean from TRegion bean where bean.regionname = :regionname ";
         TypedQuery<TRegion> query = entityManager.createQuery(sql, TRegion.class);
         query.setParameter("regionname", regionname );
         List<TRegion> list = query.getResultList();
@@ -221,7 +234,7 @@
     @Transactional
     @Override
     public TRegion getRegionByNameAndId(String regionname, String regionid) {
-        String sql = "select bean from TRegion bean where bean.regionname = :regionname and bean.flag=1 and bean.regionid <>:regionid";
+        String sql = "select bean from TRegion bean where bean.regionname = :regionname and bean.regionid <>:regionid";
         TypedQuery<TRegion> query = entityManager.createQuery(sql, TRegion.class);
         query.setParameter("regionname", regionname );
         query.setParameter("regionid",  regionid);
@@ -245,14 +258,6 @@
         return flag;
     }
 
-    @Transactional
-    @Override
-    public List<TRegion> getRegionByParentId(String parentid) {
-        String sql = "select bean from TRegion bean where bean.flag=1 and bean.parentid=:parentid";
-        TypedQuery<TRegion> query = entityManager.createQuery(sql, TRegion.class);
-        query.setParameter("parentid", parentid);
-        List<TRegion> list = query.getResultList();
-        return list;
-    }
+
 
 }
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 ca2ba46..0fd04c9 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/SystemService.java
@@ -41,12 +41,18 @@
     //根据区域id查询楼栋
     public List<TBuilding> getBuildingByRegionId(String regionid);
 
+    //根据区域id查询楼栋管理员权限下楼栋
+    public List<TBuilding> getBuildingOperBuildingByRegionId(String regionid,String operid);
+
     //根据id删除区域--修改状态flag为0
     public boolean deleteRegionById(String regionid);
 
     //根据id获取区域
     public TRegion getRegionById(String regionid);
 
+    //根据id获取所有状态的区域---查重使用
+    public TRegion getRegionAllFlagById(String regionid);
+
     //根据区域id获取其权限下所有区域
     public List<TRegion> getRegionListById(String regionid);
 
@@ -68,8 +74,6 @@
     //修改区域
     public boolean updateRegion(TRegion bean);
 
-    //根据parentid获取区域
-    public List<TRegion> getRegionByParentId(String parentid);
 
     //根据查询条件分页获取所有楼栋
     public Pagination getSystemBuildingList(String regionid,String buildingname,int pageNo,int pageSize);
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 d969dd6..d1d6679 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
@@ -85,6 +85,11 @@
     }
 
     @Override
+    public List<TBuilding> getBuildingOperBuildingByRegionId(String regionid,String operid) {
+        return buildingDao.getBuildingOperBuildingByRegionId(regionid, operid);
+    }
+
+    @Override
     public boolean deleteRegionById(String regionid) {
         return regionDao.updateRegionFlag(regionid);
     }
@@ -95,6 +100,11 @@
     }
 
     @Override
+    public TRegion getRegionAllFlagById(String regionid) {
+        return regionDao.getRegionAllFlagById(regionid);
+    }
+
+    @Override
     public List<TRegion> getRegionListById(String regionid) {
         return regionDao.getRegionListById(regionid);
     }
@@ -129,10 +139,6 @@
         return regionDao.updateRegion(bean);
     }
 
-    @Override
-    public List<TRegion> getRegionByParentId(String parentid) {
-        return regionDao.getRegionByParentId(parentid);
-    }
 
     @Override
     public Pagination getSystemBuildingList(String regionid, String buildingname, int pageNo, int pageSize) {
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index a10fe24..4859272 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -19,11 +19,11 @@
 INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (15, '检测无流水设备时间段', '3', '单位:天');
 INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (16, '设备使用类别', 'MJ', '门禁');
 INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (17, '刷卡不通过重下名单', '1', '1打开,0关闭');
-INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '21', '复位');
-INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '18', '企图开门');
-INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '17', '正常开门');
-INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '20', '按键开门');
-INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '19', '异常开门');
+INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '15', '复位');
+INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '12', '企图开门');
+INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '11', '正常开门');
+INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '14', '按键开门');
+INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (20, '流水状态', '13', '异常开门');
 INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (22, '海康平台地址', 'IP', 'http://172.28.201.105');
 INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (1, 'operator', 'H', '区域管理员');
 INSERT INTO t_dictionary(dicttype,dicttypename,dictval,dictcaption) VALUES (1, 'operator', 'P', '超级管理员');
@@ -79,14 +79,14 @@
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (11, NULL, 1, NULL, 'layui-icon-engine', '/ncmgr/devweek', '设备时间周管理', 25, 6);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (12, NULL, 0, NULL, 'layui-icon-app', '#', '集控中心', 30, -1);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (13, NULL, 1, NULL, 'layui-icon-app', '/system/dictionary', '数据字典管理', 31, 12);
-INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (14, NULL, 1, NULL, 'layui-icon-app', '/system/queue', '任务调度管理', 32, 12);
+/*INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (14, NULL, 1, NULL, 'layui-icon-app', '/system/queue', '任务调度管理', 32, 12);*/
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (6, NULL, 0, NULL, 'layui-icon-engine', '#', '门控中心', 20, -1);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (15, NULL, 0, NULL, 'layui-icon-username', '#', '人员中心', 40, -1);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (18, NULL, 0, NULL, 'layui-icon-chart-screen', '#', '数据中心', 50, -1);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (20, NULL, 1, NULL, 'layui-icon-chart-screen', '/query/tdoorstream', '流水信息查询', 52, 18);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (19, NULL, 1, NULL, 'layui-icon-chart-screen', '/doorlistMgr/searchDoorlist', '设备名单查询', 51, 18);
-INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (16, NULL, 1, NULL, 'layui-icon-username', '/doorlistMgr/downDoorList', '下发门禁名单', 41, 15);
-INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (17, NULL, 1, NULL, 'layui-icon-username', '/doorlistMgr/deleteDoorList', '删除门禁名单', 42, 15);
+/*INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (16, NULL, 1, NULL, 'layui-icon-username', '/doorlistMgr/downDoorList', '下发门禁名单', 41, 15);
+INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (17, NULL, 1, NULL, 'layui-icon-username', '/doorlistMgr/deleteDoorList', '删除门禁名单', 42, 15);*/
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (21, NULL, 1, NULL, 'layui-icon-username', '/function/index', '功能管理', 13, 3);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (22, NULL, 1, NULL, 'layui-icon-app', '/system/regionindex', '区域管理', 33, 12);
 INSERT INTO tb_function(id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (23, NULL, 1, NULL, 'layui-icon-app', '/system/buildingindex', '楼栋管理', 34, 12);
diff --git a/src/main/resources/templates/doorlist/searchDoorlist.html b/src/main/resources/templates/doorlist/searchDoorlist.html
index 66b2c82..ce46dc8 100644
--- a/src/main/resources/templates/doorlist/searchDoorlist.html
+++ b/src/main/resources/templates/doorlist/searchDoorlist.html
@@ -145,7 +145,7 @@
                 <el-table-column
                         prop="custname"
                         label="姓名"
-                        width="120">
+                        width="130">
                 </el-table-column>
                     <el-table-column
                             prop="bankcardno"
@@ -217,7 +217,7 @@
                 </el-pagination>
             </template>
 
-            <el-dialog title="时间段名称" :visible.sync="dialogFormVisible" center="true" top="3%" size="tiny">
+            <el-dialog title="时间段名称" :visible.sync="dialogFormVisible" center="true" top="3%" size="tiny" :modal-append-to-body='false'>
                 <p>正在查看<span style="color:#f96" id="searchDoorlist_custNameId"></span>学生的时间段名称:</p>
                 <div style="width: 100%;">
 		            <span style="font-size: 16px!important;">时间段名称：
@@ -321,12 +321,12 @@
                 searchDoorlist_getRegionBuilding(this,value);
             },
             rectimeform:function(row,column,cellValue){
-                if(row.rectime != null) {
+                if(row.rectime != '') {
                     return searchDoorlist_timeformatter(row.rectime);
                 }
             },
             synctimeform:function(row,column,cellValue){
-                if(row.synctime != null) {
+                if(row.synctime != '') {
                     return searchDoorlist_timeformatter(row.synctime);
                 }
             },
diff --git a/src/main/resources/templates/index.html b/src/main/resources/templates/index.html
index ed7ef23..94a4564 100755
--- a/src/main/resources/templates/index.html
+++ b/src/main/resources/templates/index.html
@@ -75,7 +75,7 @@
                     <cite>[[${loginOper.opername}]]</cite>
                 </a>
                 <dl class="layui-nav-child">
-                    <dd ay-unselect><a lay-href="/operator/userinfor">基本资料</a></dd>
+                    <!--<dd ay-unselect><a lay-href="/operator/userinfor">基本资料</a></dd>-->
                     <dd ay-unselect><a lay-href="/operator/setpwd">修改密码</a></dd>
                     <hr>
                     <dd layadmin-event="logout" style="text-align: center;" ><a href="/door/logout">退出</a></dd>
diff --git a/src/main/resources/templates/ncmgr/nc_dev.html b/src/main/resources/templates/ncmgr/nc_dev.html
index 8954ee0..6accb21 100644
--- a/src/main/resources/templates/ncmgr/nc_dev.html
+++ b/src/main/resources/templates/ncmgr/nc_dev.html
@@ -194,7 +194,7 @@
             </template>
 
             <!--添加修改设备-->
-            <el-dialog :title="devtitle" :visible.sync="dialogFormVisible" center="true" top="3%" size="tiny">
+            <el-dialog :title="devtitle" :visible.sync="dialogFormVisible" center="true" top="80%" size="tiny" :modal-append-to-body='false'>
                 <el-form ref="devUpform" :model="devUpform" :rules="rules" size="mini" label-width="36%">
                     <el-form-item label="设备名称:" prop="devname">
                         <div class="el-col el-col-18">
@@ -250,7 +250,7 @@
                     </el-form-item>
                     <el-form-item label="物理编号:" prop="devphyid">
                         <el-col :span="18">
-                            <el-input v-model="devUpform.devphyid" style="width: 187px;">
+                            <el-input v-model="devUpform.devphyid" style="width: 187px;" maxlength="14">
 
                             </el-input>
                         </el-col>
@@ -258,14 +258,14 @@
                     <el-form-item label="读头号:" prop="devno">
                         <el-col :span="18">
                             <el-input v-model.number="devUpform.devno" :disabled="devnoDis"
-                                      placeholder="读头需输入读头号" style="width: 187px;">
+                                      placeholder="读头需输入读头号" style="width: 187px;" maxlength="2">
 
                             </el-input>
                         </el-col>
                     </el-form-item>
                     <el-form-item label="IP:" prop="ip">
                         <el-col :span="18">
-                            <el-input v-model="devUpform.ip" style="width: 187px;">
+                            <el-input v-model="devUpform.ip" style="width: 187px;" maxlength="16">
 
                             </el-input>
                         </el-col>
diff --git a/src/main/resources/templates/ncmgr/nc_devweek.html b/src/main/resources/templates/ncmgr/nc_devweek.html
index 9a53880..3d520c2 100644
--- a/src/main/resources/templates/ncmgr/nc_devweek.html
+++ b/src/main/resources/templates/ncmgr/nc_devweek.html
@@ -85,7 +85,7 @@
                 </el-pagination>
             </template>
 
-            <el-dialog :title="devweekTitle" :visible.sync="dialogFormVisible" size="mini"top="30px" >
+            <el-dialog :title="devweekTitle" :visible.sync="dialogFormVisible" size="mini"top="80px" :modal-append-to-body='false'>
                 <el-form ref="devweekDiaform" :model="devweekDiaform" :rules="rules" label-width="100px" >
                     <el-form-item label="选择时间周:" prop="weekid">
                         <el-col  :span="24">
diff --git a/src/main/resources/templates/ncmgr/nc_time.html b/src/main/resources/templates/ncmgr/nc_time.html
index 5d609f0..7f2b9ef 100644
--- a/src/main/resources/templates/ncmgr/nc_time.html
+++ b/src/main/resources/templates/ncmgr/nc_time.html
@@ -79,7 +79,7 @@
                 </el-pagination>
             </template>
 
-            <el-dialog :title="timetitile" :visible.sync="dialogFormVisible" size="tiny" >
+            <el-dialog :title="timetitile" :visible.sync="dialogFormVisible" size="tiny" :modal-append-to-body='false'>
                 <el-form ref="timeDiaForm" :model="timeDiaForm" :rules="rules" label-width="36%" >
                     <el-form-item label="时间段名称:" prop="timename">
                         <div class="el-col el-col-15">
@@ -134,6 +134,7 @@
             rules:{
                 timename:[
                     {required:true,message:'请输入时间段名称',trigger:'blur'},
+                    {min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ]
             },
             timetitile:'添加时间段',
diff --git a/src/main/resources/templates/ncmgr/nc_timegrp.html b/src/main/resources/templates/ncmgr/nc_timegrp.html
index 9956a04..ef4b13e 100644
--- a/src/main/resources/templates/ncmgr/nc_timegrp.html
+++ b/src/main/resources/templates/ncmgr/nc_timegrp.html
@@ -104,11 +104,11 @@
             </template>
 
             <!--添加修改设备-->
-            <el-dialog :title="timegrptitle" top="50px" :visible.sync="dialogFormVisible" size="tiny">
+            <el-dialog :title="timegrptitle" top="50px" :visible.sync="dialogFormVisible" size="tiny" :modal-append-to-body='false'>
                 <el-form ref="timegrpDiaForm" class="el-form-item el-form-item--mini" :model="timegrpDiaForm" :rules="rules" label-width="36%">
                     <el-form-item label="时间组名称:" prop="timegrpname" >
                         <el-col :span="18">
-                            <el-input v-model="timegrpDiaForm.timegrpname" style="width: 187px;">
+                            <el-input v-model="timegrpDiaForm.timegrpname" style="width: 187px;" maxlength="20" >
 
                             </el-input>
                         </el-col>
@@ -228,7 +228,8 @@
             },
             rules: {
                 timegrpname: [
-                    { required: true, message: '请输入时间组名', trigger: 'blur' }
+                    { required: true, message: '请输入时间组名', trigger: 'blur' },
+                    {min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ]
             },
         },
diff --git a/src/main/resources/templates/ncmgr/nc_weektime.html b/src/main/resources/templates/ncmgr/nc_weektime.html
index c5cee30..3077817 100644
--- a/src/main/resources/templates/ncmgr/nc_weektime.html
+++ b/src/main/resources/templates/ncmgr/nc_weektime.html
@@ -116,11 +116,11 @@
             </template>
 
             <!--添加修改设备-->
-            <el-dialog :title="weektimetitle" :visible.sync="dialogFormVisible" top="50px" size="tiny">
+            <el-dialog :title="weektimetitle" :visible.sync="dialogFormVisible" top="80px" size="tiny" :modal-append-to-body='false'>
                 <el-form ref="weektimeDiaForm" class="el-form-item el-form-item--mini" :model="weektimeDiaForm" size="mini" :rules="rules" label-width="36%">
                     <el-form-item label="时间周名称:" prop="weekname">
                         <el-col :span="18">
-                            <el-input v-model="weektimeDiaForm.weekname" style="width: 187px;">
+                            <el-input v-model="weektimeDiaForm.weekname" style="width: 187px;" maxlength="20">
                             </el-input>
                         </el-col>
                     </el-form-item>
@@ -249,7 +249,8 @@
             },
             rules: {
                 weekname: [
-                    { required: true, message: '请输入时间周名', trigger: 'blur' }
+                    { required: true, message: '请输入时间周名', trigger: 'blur' },
+                    { min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ]
             }
         },
diff --git a/src/main/resources/templates/system/building.html b/src/main/resources/templates/system/building.html
index dc6518e..9f7ab15 100644
--- a/src/main/resources/templates/system/building.html
+++ b/src/main/resources/templates/system/building.html
@@ -104,7 +104,7 @@
                 </el-pagination>
             </template>
 
-            <el-dialog :title="buildingtitle" :visible.sync="dialogFormVisible" size="tiny">
+            <el-dialog :title="buildingtitle" :visible.sync="dialogFormVisible" size="tiny" :modal-append-to-body='false'>
                 <el-form ref="buildingDiaForm" :model="buildingDiaForm" :rules="rules" label-width="120px">
                     <el-form-item label="楼栋编号:" prop="buildingid">
                         <el-col :span="22">
@@ -118,7 +118,7 @@
                     </el-form-item>
                     <el-form-item label="信息描述:" prop="buildingdesc">
                         <el-col :span="22">
-                            <el-input v-model="buildingDiaForm.buildingdesc"></el-input>
+                            <el-input v-model="buildingDiaForm.buildingdesc" maxlength="255" ></el-input>
                         </el-col>
                     </el-form-item>
                     <el-form-item label="所在区域:" prop="regionid">
@@ -176,9 +176,11 @@
             rules: {
                 buildingid: [
                     { required: true, message: '楼栋编号不能为空', trigger: 'blur' },
+                    {min: 1, max: 32, message: '长度在 1 到 32 个字符', trigger: 'blur'}
                 ],
                 buildingname:[
                     { required: true, message: '楼栋名称不能为空', trigger: 'blur' },
+                    {min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ],
                 regionid:[
                     { required: true, message: '所在区域不能为空', trigger: 'blur' },
diff --git a/src/main/resources/templates/system/dictionary.html b/src/main/resources/templates/system/dictionary.html
index 64ee61b..968f3da 100644
--- a/src/main/resources/templates/system/dictionary.html
+++ b/src/main/resources/templates/system/dictionary.html
@@ -96,16 +96,16 @@
                 </el-pagination>
             </template>
 
-            <el-dialog :title="opertitle" :visible.sync="dialogFormVisible" size="tiny">
+            <el-dialog :title="opertitle" :visible.sync="dialogFormVisible" size="tiny" :modal-append-to-body='false'>
                 <el-form ref="dict" :model="dict" :rules="rules" label-width="120px">
                     <el-form-item label="字典编号:" prop="dicttype">
                         <el-col :span="22">
-                            <el-input v-model="dict.dicttype" id="dict_dicttype"></el-input>
+                            <el-input v-model="dict.dicttype" id="dict_dicttype" ></el-input>
                         </el-col>
                     </el-form-item>
                     <el-form-item label="字典类型名称:">
                         <el-col :span="22">
-                            <el-input v-model="dict.dicttypename" id="dict_dicttypename"></el-input>
+                            <el-input v-model="dict.dicttypename" id="dict_dicttypename" maxlength="20"></el-input>
                         </el-col>
                     </el-form-item>
                     <el-form-item label="字典值:" prop="dictval">
@@ -115,7 +115,7 @@
                     </el-form-item>
                     <el-form-item label="字典名称:" prop="dictcaption">
                         <el-col :span="22">
-                            <el-input v-model="dict.dictcaption"></el-input>
+                            <el-input v-model="dict.dictcaption" maxlength="20"></el-input>
                         </el-col>
                     </el-form-item>
 
@@ -156,9 +156,11 @@
             rules: {
                 dictval: [
                     { required: true, message: '字典值不能为空', trigger: 'blur' },
+                    {min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ],
                 dicttype:[
                     { required: true, message: '字典编号不能为空', trigger: 'blur' },
+                    {min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ]
             },
 
diff --git a/src/main/resources/templates/system/operator.html b/src/main/resources/templates/system/operator.html
index a79978d..accad3a 100644
--- a/src/main/resources/templates/system/operator.html
+++ b/src/main/resources/templates/system/operator.html
@@ -109,7 +109,7 @@
                 </el-pagination>
             </template>
 
-            <el-dialog :title="operatortitile" :visible.sync="dialogFormVisible"  >
+            <el-dialog :title="operatortitile" :visible.sync="dialogFormVisible"  :modal-append-to-body='false'>
                 <el-form ref="operatorDiaForm" :model="operatorDiaForm" :rules="rules" label-width="36%" >
                     <el-form-item label="操作员编号:" prop="operid">
                         <div class="el-col el-col-15">
@@ -192,7 +192,7 @@
 
                     <el-form-item label="联系方式:" prop="mobile">
                         <el-col :span="18">
-                            <el-input v-model.number="operatorDiaForm.mobile"  style="width: 187px;">
+                            <el-input v-model.number="operatorDiaForm.mobile"  style="width: 187px;" maxlength="11">
                                 <i class="el-icon-edit el-input__icon" slot="icon" ></i>
                             </el-input>
                         </el-col>
@@ -200,7 +200,7 @@
 
                     <el-form-item label="邮箱:" prop="email">
                         <el-col :span="18">
-                            <el-input v-model.number="operatorDiaForm.email"  style="width: 187px;">
+                            <el-input v-model.number="operatorDiaForm.email"  style="width: 187px;" maxlength="60">
                                 <i class="el-icon-edit el-input__icon" slot="icon" ></i>
                             </el-input>
                         </el-col>
@@ -208,7 +208,7 @@
 
                     <el-form-item label="姓名:" prop="realname">
                         <el-col :span="18">
-                            <el-input v-model.number="operatorDiaForm.realname"  style="width: 187px;">
+                            <el-input v-model.number="operatorDiaForm.realname"  style="width: 187px;" maxlength="16">
                                 <i class="el-icon-edit el-input__icon" slot="icon" ></i>
                             </el-input>
                         </el-col>
@@ -223,7 +223,7 @@
 
 
             <!--分配楼栋-->
-            <el-dialog :title="buildingTitle" :visible.sync="dlgAllotBuildingVisible" size="mini"top="30px">
+            <el-dialog :title="buildingTitle" :visible.sync="dlgAllotBuildingVisible" size="mini"top="80px" :modal-append-to-body='false'>
                 <el-form ref="operBuildingDiaform" :model="operBuildingDiaform" :rules="rules" label-width="100px" >
                     <el-form-item label="操作员:" prop="operid">
                         <el-col  :span="24">
@@ -310,6 +310,7 @@
             rules:{
                 operid:[
                     {required:true,message:'请输入操作员编号',trigger:'blur'},
+                    { min: 1, max: 20, message: '长度在 1 到 32 个字符', trigger: 'blur' }
                 ],
                 opercode:[
                     {required:true,message:'请输入登陆名',trigger:'blur'},
@@ -325,12 +326,7 @@
                 roleid: [
                     {required: true, message: '请选择角色', trigger: 'blur'}
                 ],
-                tel: [
-                    { min: 11, max: 11, message: '11位数字' }
-                ],
-                realname:[
-                    { min: 2, max: 20, message: '长度在 2 到 20 个字符', trigger: 'blur' }
-                ],
+
             },
             operatortitile:'添加操作员(默认密码为123456)',
         },
diff --git a/src/main/resources/templates/system/region.html b/src/main/resources/templates/system/region.html
index d84fadb..b044811 100644
--- a/src/main/resources/templates/system/region.html
+++ b/src/main/resources/templates/system/region.html
@@ -46,7 +46,7 @@
                     <el-table-column
                             prop="regionname"
                             label="区域名称"
-                            width="180">
+                            width="170">
                     </el-table-column>
                     <el-table-column
                             prop="level"
@@ -58,7 +58,7 @@
                     <el-table-column
                             prop="parentname"
                             label="父区域"
-                            width="180">
+                            width="170">
                     </el-table-column>
                     <el-table-column
                             prop="address"
@@ -91,7 +91,7 @@
                 </el-pagination>
             </template>
 
-            <el-dialog :title="regiontitile" :visible.sync="dialogFormVisible"  >
+            <el-dialog :title="regiontitile" :visible.sync="dialogFormVisible"  :modal-append-to-body='false'>
                 <el-form ref="regionDiaForm" :model="regionDiaForm" :rules="rules" label-width="36%" >
                     <el-form-item label="区域编号:" prop="regionid">
                         <div class="el-col el-col-15">
@@ -156,7 +156,7 @@
 
                     <el-form-item label="备注:" prop="remarks">
                         <el-col :span="18">
-                            <el-input v-model.number="regionDiaForm.remarks"  style="width: 187px;">
+                            <el-input v-model.number="regionDiaForm.remarks"  style="width: 187px;" maxlength="200">
                                 <i class="el-icon-edit el-input__icon" slot="icon" ></i>
                             </el-input>
                         </el-col>
@@ -200,9 +200,11 @@
             rules:{
                 regionid:[
                     {required:true,message:'请输入区域编号',trigger:'blur'},
+                    {min: 1, max: 32, message: '长度在 1 到 32 个字符', trigger: 'blur'}
                 ],
                 regionname:[
                     {required:true,message:'请输入区域名称',trigger:'blur'},
+                    {min: 1, max: 20, message: '长度在 1 到 20 个字符', trigger: 'blur'}
                 ],
                 level: [
                     {required: true, message: '请选择区域级别', trigger: 'blur'}
@@ -211,7 +213,8 @@
                     {required: true, message: '请选择父区域', trigger: 'blur'}
                 ],
                 address: [
-                    {required: true, message: '请输入详细地址', trigger: 'blur'}
+                    {required: true, message: '请输入详细地址', trigger: 'blur'},
+                    {min: 1, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur'}
                 ]
             },
             regiontitile:'添加区域',
