diff --git a/src/main/java/com/supwisdom/dlpay/doorlist/bean/TCustomerInfo.java b/src/main/java/com/supwisdom/dlpay/doorlist/bean/TCustomerInfo.java
index 1e24f4c..dca8fca 100644
--- a/src/main/java/com/supwisdom/dlpay/doorlist/bean/TCustomerInfo.java
+++ b/src/main/java/com/supwisdom/dlpay/doorlist/bean/TCustomerInfo.java
@@ -12,7 +12,6 @@
     private String bankcardno;
     private String cardphyid;
     private String expiredate;
-    private String deviceid;
 
     public String getCustid() {
         return custid;
@@ -62,11 +61,4 @@
         this.expiredate = expiredate;
     }
 
-    public String getDeviceid() {
-        return deviceid;
-    }
-
-    public void setDeviceid(String deviceid) {
-        this.deviceid = deviceid;
-    }
 }
diff --git a/src/main/java/com/supwisdom/dlpay/doorlist/controller/DoorlistMgrController.java b/src/main/java/com/supwisdom/dlpay/doorlist/controller/DoorlistMgrController.java
index de63f53..9950ab9 100644
--- a/src/main/java/com/supwisdom/dlpay/doorlist/controller/DoorlistMgrController.java
+++ b/src/main/java/com/supwisdom/dlpay/doorlist/controller/DoorlistMgrController.java
@@ -342,6 +342,8 @@
     int flag =0;
     if (doorList.size() <= 0) {
       flag = -1;
+      map.put("flag", flag);
+      return map;
     }
     try {
       String now = DateUtil.getNow();
@@ -426,6 +428,8 @@
     }catch (Exception ex){
       logger.error("名单导入失败--"+ex.getMessage());
       flag=-2;
+      map.put("flag", flag);
+      return map;
     }
     map.put("flag", flag);
    return map;
diff --git a/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CustomerDaoImpl.java b/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CustomerDaoImpl.java
index ce6dd47..11555c2 100644
--- a/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CustomerDaoImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/mainservice/dao/impl/CustomerDaoImpl.java
@@ -50,8 +50,8 @@
     @Transactional
     @Override
     public List<TCustomerInfo> getAllTCustomerList(String perName, String cardno, String bankcardno) {
-        String sql = "select a.custid,a.custname,b.cardno,b.bankcardno,b.expiredate from T_Customer a left join t_card b on a.custid = b.custid " +
-                " where a.status='1' and b.status='1' and b.lossflag='1' and b.frozeflag='1' ";
+        String sql = "select a.custid,a.custname,b.cardno,b.bankcardno,b.cardphyid,b.expiredate from T_Customer a left join t_card b on a.custid = b.custid " +
+                " where a.status='1' and b.status='1' and b.lossflag='0' and b.frozeflag='0' ";
         if (!StringUtil.isEmpty(perName)){
             sql += " and a.custname like :perName ";
         }
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 68dae09..02029ac 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
@@ -152,17 +152,17 @@
 
     @Override
     public List<TDoordevInfo> getSystemDevList() {
-        return null;
+        return ncDeviceDao.getSystemDevList();
     }
 
     @Override
     public List<TDoordevInfo> getOperatorDevList(String regionid) {
-        return null;
+        return ncDeviceDao.getOperatorDevList(regionid);
     }
 
     @Override
     public List<TDoordevInfo> getBuildingOperDevList(String operid) {
-        return null;
+        return ncDeviceDao.getBuildingOperDevList(operid);
     }
 
     @Override
diff --git a/src/main/java/com/supwisdom/dlpay/system/bean/OperatorListBean.java b/src/main/java/com/supwisdom/dlpay/system/bean/OperatorListBean.java
index 9417cb4..5d61342 100644
--- a/src/main/java/com/supwisdom/dlpay/system/bean/OperatorListBean.java
+++ b/src/main/java/com/supwisdom/dlpay/system/bean/OperatorListBean.java
@@ -9,6 +9,7 @@
     private String operid;
     private String realname;
     private String opername;
+    private String opercode;
     private String opertype;
     private String roleid;
     private String rolename;
@@ -41,6 +42,14 @@
         this.opername = opername;
     }
 
+    public String getOpercode() {
+        return opercode;
+    }
+
+    public void setOpercode(String opercode) {
+        this.opercode = opercode;
+    }
+
     public String getOpertype() {
         return opertype;
     }
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 eeba7c6..e47d5dc 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
@@ -25,7 +25,7 @@
     @Transactional
     @Override
     public Pagination getOperatorList(String operid, String realname, int pageNo, int pageSize) {
-        String sql = "select a.operid,a.opername,a.opertype,a.realname,a.regionid,a.mobile,a.foperid,c.roleid,c.rolename,d.regionname " +
+        String sql = "select a.operid,a.opername,a.opercode,a.opertype,a.realname,a.regionid,a.mobile,a.foperid,c.roleid,c.rolename,d.regionname " +
                 " from Tb_Operator a " +
                 " left join tb_oper_role b on a.operid = b.operid " +
                 " left join tb_role c on b.roleid = c.roleid " +
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/impl/RoleServiceImpl.java b/src/main/java/com/supwisdom/dlpay/system/service/impl/RoleServiceImpl.java
index 03af7fb..740da25 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/impl/RoleServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/impl/RoleServiceImpl.java
@@ -102,7 +102,8 @@
             temp = opt.get();
             temp.setRoleName(role.getRoleName());
             temp.setRoleDesc(role.getRoleDesc());
-            temp.setRoleCode(role.getRoleCode());
+            temp.setRoleCode("ROLE_ADMIN");
+            temp.setGrade(role.getGrade());
             temp.setLastsaved(DateUtil.getNow());
             roleDao.save(temp);
         } else {
diff --git a/src/main/resources/templates/doorlist/addDoorlist.html b/src/main/resources/templates/doorlist/addDoorlist.html
index e1c3efc..df3b592 100644
--- a/src/main/resources/templates/doorlist/addDoorlist.html
+++ b/src/main/resources/templates/doorlist/addDoorlist.html
@@ -69,20 +69,21 @@
                                             width="55">
                                     </el-table-column>
                                     <el-table-column
+                                            sortable
                                             prop="cardno"
                                             label="卡号"
-                                            width="160">
+                                            width="100">
                                     </el-table-column>
                                     <el-table-column
                                             sortable
                                             prop="custname"
                                             label="姓名"
-                                            width="120">
+                                            width="100">
                                     </el-table-column>
                                     <el-table-column
                                             prop="bankcardno"
                                             label="银行卡号"
-                                            width="160">
+                                            width="190">
                                     </el-table-column>
                                 </el-table>
                             </template>
@@ -118,20 +119,21 @@
                                         width="55">
                                 </el-table-column>
                                 <el-table-column
+                                        sortable
                                         prop="cardno"
                                         label="卡号"
-                                        width="160">
+                                        width="100">
                                 </el-table-column>
                                 <el-table-column
                                         sortable
                                         prop="custname"
                                         label="姓名"
-                                        width="120">
+                                        width="100">
                                 </el-table-column>
                                 <el-table-column
                                         prop="bankcardno"
                                         label="银行卡号"
-                                        width="160">
+                                        width="190">
                                 </el-table-column>
                             </el-table>
                         </template>
@@ -1084,6 +1086,7 @@
             "&timeName="+timeName;
 //        url = encodeURI(url);
         $.get(url).success(function(data,status){
+            alert(data.pResult)
             if(data.pResult == undefined){
                 layer.msg('用户认证已过期，请重新登录',{icon:2,time:1000});
                 window.location="login";
@@ -1127,6 +1130,7 @@
     function addDoorlist_fillDevice_lefttable(url){
         url = encodeURI(url);
         $.get(url).success(function(data,status){
+            alert(data.pResult)
             if(data.pResult == undefined){
                 layer.msg('用户认证已过期，请重新登录',{icon:2,time:1000});
                 window.location="login";
diff --git a/src/main/resources/templates/system/operator.html b/src/main/resources/templates/system/operator.html
index 2fa7a67..7159d09 100644
--- a/src/main/resources/templates/system/operator.html
+++ b/src/main/resources/templates/system/operator.html
@@ -58,6 +58,11 @@
                             width="140">
                     </el-table-column>
                     <el-table-column
+                            prop="opercode"
+                            label="登录名"
+                            width="160">
+                    </el-table-column>
+                    <el-table-column
                             prop="opername"
                             label="操作员名称"
                             width="140">
@@ -186,7 +191,7 @@
                                         :label="regionid.label"
                                         :value="regionid.value">
                                 </el-option>
-                            </el-select>
+                            </el-select>&nbsp(注:区域管理员类别必选)
                         </el-col>
                     </el-form-item>
 
