From c45ba41f54c6424a20198617ff4df7433bf9e9a9 Mon Sep 17 00:00:00 2001
From: houruijun <411269194@kidgrow.com>
Date: Fri, 07 Aug 2020 18:39:59 +0800
Subject: [PATCH] 1.走查运营后台后,修改了页面所有显著错误和问题 2.修改运营后台  医院,充值,产品,套餐部分业务错误 3.增加首页数据接口

---
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/config.js                                                                                    |    3 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user_form.html                                                                         |    8 
 kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/DictionariesConstants.java                                       |    6 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html                                                                        |   10 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/role.html                                                                             |   14 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html                                                                         |   29 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus_form.html                                                                        |    8 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/role.html                                                                              |   33 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java                                      |    9 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderDetailMapper.java            |   32 +
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/businessRecords.html                                                                 |    2 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml                                         |    4 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderDetailMapper.xml                                   |   65 ++
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/treetable-lay/treetable.js                                                                   |    4 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysHospitalService.java                              |    6 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysHospitalMapper.xml                                                    |   55 +
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user_form.html                                                                        |    6 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_view.html                                                                |    2 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/myInfo.html                                                                           |    4 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java |  150 +++-
 kidgrow-business/kidgrow-opration-center/pom.xml                                                                                                              |    5 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html                                                              |  122 ++-
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user.html                                                                             |   16 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/config/MybatisPlusConfig.java                |   18 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java                                  |   13 
 kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java                                              |   32 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderController.java       |   14 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/attestation/app.html                                                                         |    6 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_view.html                                                               |    2 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/area.js                                                                                      |    4 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderMapper.java                  |    7 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/attestation/app.html                                                                          |    7 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/myInfo.html                                                                            |    5 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderDetailService.java         |   35 +
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysdictionaries.html                                                                 |   19 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/productdetail.html                                                                   |    8 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus.html                                                                            |    8 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/fallback/SysUserServiceFallbackFactory.java             |   31 +
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_form.html                                                                |    4 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/iframe.html                                                                               |    3 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/SysUserService.java                                     |   25 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/q.js                                                                                    |    1 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/baidu-map/MarkerClusterer.js                                                            |    2 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea.html                                                                           |    8 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysHospitalMapper.java                                 |    7 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_form.html                                                               |    4 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/login.html                                                                                         |    6 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/tokens.html                                                                            |    6 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysOrganization.html                                                                 |   29 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrder.java                         |    2 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java                      |    4 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html                                                                          |   31 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/OrderChartVo.java                            |   33 +
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/feedback.html                                                                        |   14 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/files/files.html                                                                              |    4 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/index.js                                                                                     |    9 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html                                                                        |   32 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderService.java               |    7 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/files/files.html                                                                             |    4 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDoctorMapper.xml                                                      |   25 
 kidgrow-uaa/kidgrow-uaa-server/src/main/resources/application.yml                                                                                             |    2 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java                                |   11 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java                          |  152 +++--
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html                                                                        |    3 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus.html                                                                             |   14 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html                                                                  |   16 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java                        |   15 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus_form.html                                                                       |    6 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDepartmentMapper.xml                                                  |    3 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDoctorMapper.java                                   |    7 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/admin.js                                                                                     |    1 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/verifyRecharge.html                                                                  |   20 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor_form.html                                                                     |   17 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java                  |   32 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java                    |    3 
 kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java                      |   67 +
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea_form.html                                                                      |    4 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product_form.html                                                                    |    6 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/login.html                                                                                          |    7 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product.html                                                                         |   10 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user.html                                                                              |   41 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/header.html                                                                                   |   26 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html                                                                        |    4 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderServiceImpl.java       |    5 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager.html                                                                     |    4 
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/password.html                                                                             |    1 
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/tokens.html                                                                           |    4 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java |   29 +
 kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager.html                                                                    |    4 
 89 files changed, 1,036 insertions(+), 540 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrder.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrder.java
index 42f4dff..d6bf227 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrder.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/ProductOrder.java
@@ -1,6 +1,5 @@
 package com.kidgrow.oprationcenter.model;
 
-import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
@@ -82,7 +81,6 @@
     /**
      * 是否删除,1删除,0未删除
      */
-    @TableLogic
     private Boolean isDel;
     /**
      * 状态,1启用,0停用
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/OrderChartVo.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/OrderChartVo.java
new file mode 100644
index 0000000..6951c61
--- /dev/null
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/vo/OrderChartVo.java
@@ -0,0 +1,33 @@
+package com.kidgrow.oprationcenter.vo;
+
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+/**
+ * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @Description: <br>
+ * @Project: <br>
+ * @CreateDate: Created in 2020/06/24 11:01 <br>
+ * @Author: <a href="411269194@kidgrow.com">houruijun</a>
+ */
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class OrderChartVo extends Model<OrderChartVo> {
+    //实体序列化  必要
+    private static final long serialVersionUID = 1L;
+    /**
+     * 统计的数量
+     */
+    private Integer ccount;
+    /**
+     * 统计的单位   具体就是 年  月  日  周  之类的
+     * 2020/4
+     * 4
+     * 25
+     * 2
+     */
+    private String units;
+}
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderDetailMapper.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderDetailMapper.java
index 19db86d..3abf32a 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderDetailMapper.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderDetailMapper.java
@@ -4,6 +4,7 @@
 import com.kidgrow.db.mapper.SuperMapper;
 import com.kidgrow.oprationcenter.model.ProductOrderDetail;
 import com.kidgrow.oprationcenter.vo.GroupProductDetail;
+import com.kidgrow.oprationcenter.vo.OrderChartVo;
 import com.kidgrow.oprationcenter.vo.ProductOrderJoinDetail;
 import org.apache.ibatis.annotations.Param;
 
@@ -45,4 +46,35 @@
     List<GroupProductDetail> groupProductDetail(Page<GroupProductDetail> page, @Param("p") Map<String, Object> params);
 
     List<ProductOrderJoinDetail> getTypeByUser(Long id);
+
+    /**
+     * 获取一个科室的试用套餐数量
+     * @param departmentId
+     * @return
+     */
+    int getEnabledCount(Long departmentId);
+
+    /**
+     * 统计获取数据量
+     * @param datatype
+     * 0 试用审核量
+     * 1 套餐总量
+     * 2 未处理用户反馈
+     * 3 未处理数据需求
+     * @return
+     */
+    int oprationChart(@Param("datatype") int datatype);
+
+    /**
+     * 按指定类型统计合同数量
+     * @param params
+     *    datatype      1 按年
+     *                 2 按月
+     *                 3 按天
+     *                 4 按周
+     *    beginTime 查询时间段的开始时间
+     *    endTime   结束时间
+     * @return
+     */
+    OrderChartVo productOrderChart(@Param("p") Map<String, Object> params);
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderMapper.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderMapper.java
index 20e05d6..a4119be 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderMapper.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/mapper/ProductOrderMapper.java
@@ -31,4 +31,11 @@
      * @return ProductOrder对象
      */
     ProductOrder findByObject(@Param("p") ProductOrder productOrder);
+
+    /**
+     * 删除指定orderid下的套餐数据
+     * @param orderId
+     * @return
+     */
+    int delProductDetail(@Param("orderId") Long orderId);
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderDetailService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderDetailService.java
index 1004c86..9d04b18 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderDetailService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderDetailService.java
@@ -6,6 +6,7 @@
 import com.kidgrow.common.service.ISuperService;
 import com.kidgrow.oprationcenter.model.ProductOrderDetail;
 import com.kidgrow.oprationcenter.vo.*;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 import java.util.Map;
@@ -70,6 +71,40 @@
     ResultBody biUserNowProduct(Long hospitalId,Long departmentId);
     ResultBody<UserProductData> UserProductDetailData(Long hospitalId, Long departmentId);
 
+    /**
+     * 试用审核的列表
+     * @param params
+     * @return
+     */
     PageResult all(Map<String, Object> params);
+
+    /**
+     * 获取一个科室使用过多少个试用套餐
+     * @param departmentId
+     * @return
+     */
+    int getEnabledCount(Long departmentId);
+    /**
+     * 统计获取数据量
+     * @param datatype
+     * 0 试用审核量
+     * 1 套餐总量
+     * 2 未处理用户反馈
+     * 3 未处理数据需求
+     * @return
+     */
+    int oprationChart(int datatype);
+    /**
+     * 按指定类型统计合同数量
+     * @param params
+     *    datatype      1 按年
+     *                 2 按月
+     *                 3 按天
+     *                 4 按周
+     *    beginTime 查询时间段的开始时间
+     *    endTime   结束时间
+     * @return
+     */
+    OrderChartVo productOrderChart(@Param("p") Map<String, Object> params);
 }
 
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderService.java
index c021064..46648b1 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IProductOrderService.java
@@ -38,5 +38,12 @@
      * @return
      */
     ResultBody updateEnabled(Map<String, Object> params);
+
+    /**
+     * 删除指定orderid下的套餐数据
+     * @param orderId
+     * @return
+     */
+    int delProductDetail(Long orderId);
 }
 
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
index 3d1879a..4eaa4e5 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderDetailServiceImpl.java
@@ -94,6 +94,11 @@
         return ResultBody.ok().data(userProductData);
     }
 
+    /**
+     * 获取需要审核的套餐
+     * @param params
+     * @return
+     */
     @Override
     public PageResult all(Map<String, Object> params) {
         Page<ProductOrderDetail> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit"));
@@ -119,6 +124,30 @@
     }
 
     /**
+     * 获取科室试用次数
+     * @param departmentId  科室ID
+     * @return
+     */
+    @Override
+    public int getEnabledCount(Long departmentId) {
+        int counts=baseMapper.getEnabledCount(departmentId);
+        return counts;
+    }
+    /**
+     * 统计获取数据量
+     * @param datatype
+     * 0 试用审核量
+     * 1 套餐总量
+     * 2 未处理用户反馈
+     * 3 未处理数据需求
+     * @return
+     */
+    @Override
+    public int oprationChart(int datatype) {
+        return baseMapper.oprationChart(datatype);
+    }
+
+    /**
      * 获取诊断列表
      * @param params
      * @return
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderServiceImpl.java
index 8184556..44cae85 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/ProductOrderServiceImpl.java
@@ -75,4 +75,9 @@
         int i = baseMapper.updateById(productOrder);
         return i > 0 ? ResultBody.ok().data(productOrder).msg("更新成功") : ResultBody.failed("更新失败");
     }
+
+    @Override
+    public int delProductDetail(Long orderId) {
+        return baseMapper.delProductDetail(orderId);
+    }
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderDetailMapper.xml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderDetailMapper.xml
index b22f059..0c4759b 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderDetailMapper.xml
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderDetailMapper.xml
@@ -145,7 +145,8 @@
     <sql id="whereforall">
         <where>
             <!--查询条件自行添加-->
-            DE.is_del=0 and DE.ailight_count>0 and DE.pro_begintime &lt;=now() and DE.pro_endtime >=now() and DE.enabled=1
+            DE.is_del=0 and DE.ailight_count>0 and DE.pro_begintime &lt;=now() and DE.pro_endtime >=now() and
+            DE.enabled=1
             <if test="p.hospitalId != null and p.hospitalId !=''">
                 and PRO.hospital_id = #{p.hospitalId}
             </if>
@@ -169,4 +170,66 @@
         <include refid="whereforall"/>
         order by DE.pro_endtime asc,DE.id asc
     </select>
+
+    <select id="getEnabledCount" resultType="int" parameterType="long">
+        SELECT
+	COUNT(*)
+FROM
+	product_order_record
+WHERE
+pro_type=0 AND is_del=0 AND enabled=1 AND
+	order_id IN (
+	SELECT
+		id
+	FROM
+		product_order
+WHERE
+	department_id = #{departmentId})
+    </select>
+    <select id="oprationChart" resultType="int" parameterType="int">
+        <if test="datatype==0">
+            -- 试用审核
+            SELECT count(*) FROM product_order_detail WHERE enabled=0 AND is_del=0 and pro_type=0
+        </if>
+        <if test="datatype==1">
+            -- 套餐总量
+            SELECT count(*) FROM product_order WHERE is_del=0 and enabled=1
+        </if>
+        <if test="datatype==2">
+            -- 未处理用户反馈
+            SELECT count(*) FROM sys_feedback WHERE is_del=0 and enabled=0
+        </if>
+        <if test="datatype==3">
+            -- 未处理数据需求
+            SELECT count(*) FROM data_need WHERE is_del=0 and enabled=0
+        </if>
+    </select>
+
+    <select id="productOrderChart" resultType="com.kidgrow.oprationcenter.vo.OrderChartVo">
+        <if test="p.units==1">
+            -- 按年统计
+            SELECT COUNT(t.id) ccount,t.units FROM
+            (select id,DATE_FORMAT(contract_time,'%Y/%m') units,contract_time from product_order
+            <include refid="whereorderchart"/>
+            ) AS t
+            GROUP BY t.units
+        </if>
+        <if test="p.units==2">
+            -- 按月统计
+            SELECT COUNT(t.id) ccount,t.units FROM
+            (select id,DATE_FORMAT(contract_time,'%Y') units,contract_time from product_order
+            <include refid="whereorderchart"/>
+            ) AS t
+            GROUP BY t.units
+        </if>
+    </select>
+    <sql id="whereorderchart">
+        <where>
+            <!--查询条件自行添加-->
+            is_del=0 and enabled=1
+            <if test="p.startTime != null and p.endTime !=''">
+                and contract_time between #{p.startTime} and #{p.endTime}
+            </if>
+        </where>
+    </sql>
 </mapper>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml
index 27388fb..81c0769 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/ProductOrderMapper.xml
@@ -88,4 +88,8 @@
         <include refid="where"/>
         order by id desc
     </select>
+    <update id="delProductDetail">
+        UPDATE  product_order_record SET is_del=1,update_time=now() WHERE order_id= #{orderId};
+        UPDATE  product_order_detail SET is_del=1,update_time=now() WHERE order_id= #{orderId};
+    </update>
 </mapper>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/config/MybatisPlusConfig.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/config/MybatisPlusConfig.java
index ae4c8a1..abd81f0 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/config/MybatisPlusConfig.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/config/MybatisPlusConfig.java
@@ -1,8 +1,12 @@
 package com.kidgrow.oprationcenter.config;
 
+import com.alibaba.druid.wall.WallConfig;
+import com.alibaba.druid.wall.WallFilter;
 import com.kidgrow.db.config.DefaultMybatisPlusConfig;
 import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.DependsOn;
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
@@ -15,4 +19,18 @@
 @Configuration
 @MapperScan({"com.kidgrow.oprationcenter.mapper*"})
 public class MybatisPlusConfig extends DefaultMybatisPlusConfig {
+    @Bean(name = "wallFilter")
+    @DependsOn("wallConfig")
+    public WallFilter wallFilter(WallConfig wallConfig) {
+        WallFilter wallFilter = new WallFilter();
+        wallFilter.setConfig(wallConfig);
+        return wallFilter;
+    }
+    @Bean(name = "wallConfig")
+    public WallConfig wallConfig() {
+        WallConfig wallConfig = new WallConfig();
+        wallConfig.setMultiStatementAllow(true);//允许一次执行多条语句
+        wallConfig.setNoneBaseStatementAllow(true);//允许一次执行多条语句
+        return wallConfig;
+    }
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderController.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderController.java
index 1bef92d..93e048a 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderController.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderController.java
@@ -16,6 +16,7 @@
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.MapUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.ObjectError;
 import org.springframework.web.bind.annotation.*;
@@ -99,6 +100,8 @@
             if(organizations.size()>0){
                 productOrder.setCreateUserOrgCode(organizations.get(organizations.size()-1).getOrgCode());
             }
+            //默认添加的合同视为无效合同,在充值完成后,会将对应合同启用
+            productOrder.setIsDel(true);
             boolean v = productOrderService.saveOrUpdate(productOrder);
             if (v) {
                 return ResultBody.ok().data(productOrder).msg("保存成功");
@@ -113,11 +116,18 @@
      */
     @ApiOperation(value = "删除")
     @DeleteMapping("/{id}")
+    @Transactional(rollbackFor = {Exception.class})
     public ResultBody delete(@PathVariable Long id,HttpServletRequest request) {
+        //先删除合同下的充值
+        int delRows= productOrderService.delProductDetail(id);
+        if (delRows==0) {
+            log.info(String.format("该订单下无套餐数据{0}!",id));
+        }
+        //再删除合同
         boolean v = productOrderService.removeById(id);
         if (v) {
             if (!businessRecordsService.recordBusinessData("删除合同:"+id,id.toString())) {
-                //log.error(String.format("删除合同编号为:{0}的数据后,写入业务日志失败!",id));
+                log.error(String.format("删除合同编号为:{0}的数据后,写入业务日志失败!",id));
 
             }
             return ResultBody.ok().msg("删除成功");
@@ -147,7 +157,7 @@
         if (resultBody.getCode()==0) {
             String enablad=(MapUtils.getBoolean(params, "enabled"))?"启用":"禁用";
             if (!businessRecordsService.recordBusinessData("修改合同状态为:"+enablad,enablad)) {
-                //log.error(String.format("修改合同状态为:{0},写入业务日志失败!合同管理id为:{1}",enablad,MapUtils.getString(params,"id")));
+                log.error(String.format("修改合同状态为:{0},写入业务日志失败!合同管理id为:{1}",enablad,MapUtils.getString(params,"id")));
             }
         }
         return resultBody;
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
index 103ca15..908e93b 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ProductOrderDetailController.java
@@ -1,12 +1,11 @@
 package com.kidgrow.oprationcenter.controller;
 
 import com.kidgrow.common.annotation.LoginUser;
+import com.kidgrow.common.constant.CommonConstant;
 import com.kidgrow.common.controller.BaseController;
-import com.kidgrow.common.model.PageResult;
-import com.kidgrow.common.model.ResultBody;
-import com.kidgrow.common.model.SysOrganization;
-import com.kidgrow.common.model.SysUser;
+import com.kidgrow.common.model.*;
 import com.kidgrow.oprationcenter.model.HospitalInfo;
+import com.kidgrow.oprationcenter.model.ProductOrder;
 import com.kidgrow.oprationcenter.model.ProductOrderDetail;
 import com.kidgrow.oprationcenter.model.ProductOrderRecord;
 import com.kidgrow.oprationcenter.service.IBusinessRecordsService;
@@ -15,6 +14,7 @@
 import com.kidgrow.oprationcenter.service.IProductOrderService;
 import com.kidgrow.oprationcenter.vo.ProductOrderJoinDetail;
 import com.kidgrow.oprationcenter.vo.UserProductData;
+import com.kidgrow.usercenter.feign.SysUserService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -56,7 +56,8 @@
     private IBusinessRecordsService businessRecordsService;
     @Autowired
     private IProductOrderService productOrderService;
-
+    @Autowired
+    private SysUserService sysUserServiceFeign;
     /**
      * 列表
      */
@@ -73,6 +74,7 @@
         }
         return productOrderDetailService.findList(params);
     }
+
     /**
      * 列表
      */
@@ -89,6 +91,7 @@
         }
         return productOrderDetailService.all(params);
     }
+
     /**
      * 列表
      */
@@ -103,7 +106,7 @@
             params.put("page", 1);
             params.put("limit", 10);
         }
-        if(params.get("diagnosticHospitalId")==null)
+        if (params.get("diagnosticHospitalId") == null)
             return PageResult.<ProductOrderJoinDetail>builder().data(null).code(0).count(0L).build();
         return productOrderDetailService.findAllDataList(params);
     }
@@ -129,6 +132,7 @@
      * 获取医院套餐是否到期和到期时间
      * data内 isend为true说明套餐到期
      * endtime上套餐的到期时间
+     *
      * @param hospitalId
      * @param departmentId
      * @return
@@ -136,21 +140,22 @@
 
     @ApiOperation(value = "获取医院套餐是否到期和到期时间")
     @GetMapping("/UserProductDetailData")
-    public ResultBody UserProductDetailData(@RequestParam Long hospitalId,@RequestParam Long departmentId) {
-        return productOrderDetailService.UserProductDetailData(hospitalId,departmentId);
+    public ResultBody UserProductDetailData(@RequestParam Long hospitalId, @RequestParam Long departmentId) {
+        return productOrderDetailService.UserProductDetailData(hospitalId, departmentId);
     }
 
     /**
      * 获取医院套餐是否到期和到期时间
      * data内 isend为true说明套餐到期
      * endtime上套餐的到期时间
+     *
      * @return
      */
 
     @ApiOperation(value = "获取医院套餐是否到期和到期时间")
     @PostMapping("/serviceperiod")
     public ResultBody<UserProductData> ServicePeriod(@RequestBody HospitalInfo hospitalInfo) {
-        return productOrderDetailService.UserProductDetailData(hospitalInfo.getHospitalId(),hospitalInfo.getDepartmentId());
+        return productOrderDetailService.UserProductDetailData(hospitalInfo.getHospitalId(), hospitalInfo.getDepartmentId());
     }
 
     /**
@@ -178,7 +183,7 @@
      */
     @ApiOperation(value = "保存")
     @PostMapping
-    public ResultBody save(@Valid @RequestBody ProductOrderDetail productOrderDetail, BindingResult bindingResult,@LoginUser SysUser sysUser) {
+    public ResultBody save(@Valid @RequestBody ProductOrderDetail productOrderDetail, BindingResult bindingResult, @LoginUser SysUser sysUser) {
         List<String> errMsg = new ArrayList<>();
         if (bindingResult.hasErrors()) {
             for (ObjectError error : bindingResult.getAllErrors()) {
@@ -187,8 +192,8 @@
             return ResultBody.failed().msg(errMsg.toString());
         } else {
             List<SysOrganization> organizations = sysUser.getOrganizations();
-            if(organizations.size()>0){
-                productOrderDetail.setCreateUserOrgCode(organizations.get(organizations.size()-1).getOrgCode());
+            if (organizations.size() > 0) {
+                productOrderDetail.setCreateUserOrgCode(organizations.get(organizations.size() - 1).getOrgCode());
             }
             boolean v = productOrderDetailService.saveOrUpdate(productOrderDetail);
             if (v) {
@@ -200,12 +205,12 @@
     }
 
     /**
-     * 新增or更新
+     * 新增or更新  套餐充值
      */
     @ApiOperation(value = "保存")
     @PostMapping("/saveall")
     @Transactional(rollbackFor = Exception.class)
-    public ResultBody batchInsert(@Valid @RequestBody List<ProductOrderDetail> list, BindingResult bindingResult) {
+    public ResultBody batchInsert(@Valid @RequestBody List<ProductOrderDetail> list,BindingResult bindingResult) {
         List<String> errMsg = new ArrayList<>();
         if (bindingResult.hasErrors()) {
             for (ObjectError error : bindingResult.getAllErrors()) {
@@ -213,36 +218,91 @@
             }
             return ResultBody.failed().msg(errMsg.toString());
         } else {
-            //写充值套餐给用户
-            Boolean v = productOrderDetailService.saveBatch(list);
-            //写充值记录
-            //对象转换
-            List<ProductOrderRecord> productOrderRecordList= new ArrayList<ProductOrderRecord>();;
-            list.forEach(item->{
-                ProductOrderRecord productOrderRecord=new ProductOrderRecord();
-                productOrderRecord.setAilightCount(item.getAilightCount());
-                productOrderRecord.setOrderId(item.getOrderId());
-                productOrderRecord.setProId(item.getProId());
-                productOrderRecord.setProName(item.getProName());
-                productOrderRecord.setProType(item.getProType());
-                productOrderRecord.setIsShare(item.getIsShare());
-                productOrderRecord.setIsDel(item.getIsDel());
-                productOrderRecord.setRecordCount(item.getRecordCount());
-                productOrderRecord.setProBegintime(item.getProBegintime());
-                productOrderRecord.setProEndtime(item.getProEndtime());
-                productOrderRecord.setEnabled(item.getEnabled());
-                productOrderRecordList.add(productOrderRecord);
-            });
-            Boolean r = productOrderRecordService.saveBatch(productOrderRecordList);
-            if (v&&r) {
-                return ResultBody.ok().data(list.size()).msg("产品充值成功");
+            //先检查科室试用数量是否已经超
+            ProductOrder productOrder = productOrderService.getById(list.get(0).getOrderId());
+            if (productOrder != null) {
+                //是否管理人员
+                boolean ismanager=false,
+                        //是否有待审核套餐
+                        isenabled=false;
+                //如果是超管,高管,销售部门管理  则不受次数限制
+                ResultBody<LoginAppUser> loginAppUserTemp=sysUserServiceFeign.getLoginAppUser();
+                LoginAppUser loginAppUser=loginAppUserTemp.getData();
+                if (loginAppUser != null) {
+
+                    List<SysRole> sysRoleList = loginAppUser.getRoles();
+                    if (sysRoleList != null && sysRoleList.size() > 0) {
+                        for (int i = 0; i < sysRoleList.size(); i++) {
+                            String roleName = sysRoleList.get(i).getCode();
+                            if (roleName.equals(CommonConstant.SYSTEM_ADMIN_ROLE_CODE) ||
+                                    roleName.equals(CommonConstant.SALE_MANAGER_ROLE_CODE) ||
+                                    roleName.equals(CommonConstant.PC_ADMIN_ROLE_CODE) ||
+                                    roleName.equals(CommonConstant.OPRATIONMANAGER_ROLE_CODE)) {
+                                ismanager=true;
+                                break;
+                            }
+                        }
+                    }
+                }
+                if (!ismanager) {
+                    int counts = productOrderDetailService.getEnabledCount(productOrder.getDepartmentId());
+                    if (counts >= CommonConstant.MAX_FREE_COUNT) {
+                        //超过了限定次数  将试用套餐改为禁用 待审核
+                        for (int i = 0; i <list.size() ; i++) {
+                            if (list.get(i).getProType()==0) {
+                                //试用套餐
+                                list.get(i).setEnabled(false);
+                                isenabled=true;
+                            }
+                        }
+                    }
+                }
+                //写充值套餐给用户
+                Boolean v = productOrderDetailService.saveBatch(list);
+                //写充值记录
+                //对象转换
+                List<ProductOrderRecord> productOrderRecordList = new ArrayList<ProductOrderRecord>();
+                ;
+                list.forEach(item -> {
+                    ProductOrderRecord productOrderRecord = new ProductOrderRecord();
+                    productOrderRecord.setAilightCount(item.getAilightCount());
+                    productOrderRecord.setOrderId(item.getOrderId());
+                    productOrderRecord.setProId(item.getProId());
+                    productOrderRecord.setProName(item.getProName());
+                    productOrderRecord.setProType(item.getProType());
+                    productOrderRecord.setIsShare(item.getIsShare());
+                    productOrderRecord.setIsDel(item.getIsDel());
+                    productOrderRecord.setRecordCount(item.getRecordCount());
+                    productOrderRecord.setProBegintime(item.getProBegintime());
+                    productOrderRecord.setProEndtime(item.getProEndtime());
+                    productOrderRecord.setEnabled(item.getEnabled());
+                    productOrderRecordList.add(productOrderRecord);
+                });
+                Boolean r = productOrderRecordService.saveBatch(productOrderRecordList);
+                //更新合同
+                Boolean p = false;
+                if (productOrder != null) {
+                    productOrder.setIsDel(false);
+                    p = productOrderService.saveOrUpdate(productOrder);
+                }
+                if (v && r && p) {
+                    if (isenabled) {
+                        return ResultBody.ok().data(list.size()).msg("充值成功,但是试用套餐需要管理审核才可使用!");
+                    }
+                    else
+                    {
+                        return ResultBody.ok().data(list.size()).msg("产品充值成功...");
+                    }
+                } else {
+                    //写入订单明细失败,则删除订单记录数据
+                    Boolean e = productOrderService.removeById(list.get(0).getOrderId());
+                    if (e)
+                        return ResultBody.failed().msg("充值数据保存失败,订单已撤回!");
+                    else
+                        return ResultBody.failed().msg("充值数据保存失败,订单撤回失败!");
+                }
             } else {
-                //写入订单明细失败,则删除订单记录数据
-                Boolean e = productOrderService.removeById(list.get(0).getOrderId());
-                if (e)
-                    return ResultBody.failed().msg("充值数据保存失败,订单已撤回!");
-                else
-                    return ResultBody.failed().msg("充值数据保存失败,订单撤回失败!");
+                return ResultBody.failed().msg("充值数据关联订单不存在!");
             }
         }
     }
@@ -256,7 +316,7 @@
         boolean v = productOrderDetailService.removeById(id);
         if (v) {
             if (!businessRecordsService.recordBusinessData("删除订单明细:" + id, id.toString())) {
-                //log.error(String.format("删除订单明细id为:{1}",id));
+                log.error(String.format("删除订单明细id为:{1}", id));
             }
             return ResultBody.ok().msg("删除成功");
         } else {
@@ -285,7 +345,7 @@
         if (resultBody.getCode() == 0) {
             String enablad = (MapUtils.getBoolean(params, "enabled")) ? "启用" : "禁用";
             if (!businessRecordsService.recordBusinessData("修改订单明细状态为:" + enablad, enablad)) {
-                //log.error(String.format("修改合同状态为:{0},写入业务日志失败!合同管理id为:{1}",enablad,MapUtils.getString(params,"id")));
+                log.error(String.format("修改合同状态为:{0},写入业务日志失败!合同管理id为:{1}", enablad, MapUtils.getString(params, "id")));
             }
         }
         return resultBody;
diff --git a/kidgrow-business/kidgrow-opration-center/pom.xml b/kidgrow-business/kidgrow-opration-center/pom.xml
index 9fe945a..13d2729 100644
--- a/kidgrow-business/kidgrow-opration-center/pom.xml
+++ b/kidgrow-business/kidgrow-opration-center/pom.xml
@@ -43,5 +43,10 @@
             <groupId>com.kidgrow</groupId>
             <artifactId>kidgrow-ribbon-spring-boot-starter</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.kidgrow</groupId>
+            <artifactId>kidgrow-usercenter-api</artifactId>
+            <version>1.0</version>
+        </dependency>
     </dependencies>
 </project>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/SysUserService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/SysUserService.java
new file mode 100644
index 0000000..3572e8e
--- /dev/null
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/SysUserService.java
@@ -0,0 +1,25 @@
+package com.kidgrow.usercenter.feign;
+
+import com.kidgrow.common.constant.ServiceNameConstants;
+import com.kidgrow.common.model.LoginAppUser;
+import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.usercenter.feign.fallback.SysUserServiceFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+
+/**
+ * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @Description: <br>
+ * @Project: <br>
+ * @CreateDate: Created in 2020/8/4 14:33 <br>
+ * @Author: <a href="411269194@kidgrow.com">houruijun</a>
+ * */
+@FeignClient(name = ServiceNameConstants.USER_SERVICE, fallbackFactory = SysUserServiceFallbackFactory.class, decode404 = true)
+public interface SysUserService {
+    /**
+     * 获取用户登录后的相关信息
+     */
+    @GetMapping("/users/current")
+    ResultBody<LoginAppUser> getLoginAppUser();
+}
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/fallback/SysUserServiceFallbackFactory.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/fallback/SysUserServiceFallbackFactory.java
new file mode 100644
index 0000000..ceccb0b
--- /dev/null
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/feign/fallback/SysUserServiceFallbackFactory.java
@@ -0,0 +1,31 @@
+package com.kidgrow.usercenter.feign.fallback;
+
+import com.kidgrow.common.model.LoginAppUser;
+import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.usercenter.feign.SysUserService;
+import feign.hystrix.FallbackFactory;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+
+/**
+ * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @Description: <br>
+ * @Project: <br>
+ * @CreateDate: Created in 2020/8/4 14:33 <br>
+ * @Author: <a href="411269194@kidgrow.com">houruijun</a>
+ */
+@Slf4j
+@Component
+public class SysUserServiceFallbackFactory  implements FallbackFactory<SysUserService> {
+    @Override
+    public SysUserService create(Throwable throwable) {
+        return new SysUserService() {
+            @Override
+            public ResultBody<LoginAppUser> getLoginAppUser() {
+                return null;
+            }
+        };
+    }
+}
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
index 9d8cb95..41ae83d 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-api/src/main/java/com/kidgrow/usercenter/model/SysDepartment.java
@@ -1,6 +1,5 @@
 package com.kidgrow.usercenter.model;
 
-import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -41,12 +40,6 @@
     @JsonSerialize(using = ToStringSerializer.class)
     private Long orgId;
     /**
-     * 医院Id
-     */
-    @NotNull(message = "医院Id不能为空")
-    @JsonSerialize(using = ToStringSerializer.class)
-    private Long hospitalId;
-    /**
      * 负责的销售代表
      */
     @NotNull(message = "服务代表不能为空")
@@ -68,9 +61,7 @@
     /**
      * 是否删除,1删除,0未删除
      */
-    @TableLogic
     private Boolean isDel;
-
     /**
      * 负责的销售代表
      */
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDoctorMapper.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDoctorMapper.java
index 0bd8d5f..9a9a80a 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDoctorMapper.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysDoctorMapper.java
@@ -37,4 +37,11 @@
      * @return SysDoctor
      */
     SysDoctor userIsAdmin(@Param("userName") String userName);
+
+    /**
+     * 统计医生数量
+     * @param datatype
+     * @return
+     */
+    int chartDoctor(@Param("datatype") int datatype);
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysHospitalMapper.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysHospitalMapper.java
index 1700033..03e48d1 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysHospitalMapper.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/mapper/SysHospitalMapper.java
@@ -47,4 +47,11 @@
      */
     SysHospital findByObject(@Param("p") SysHospital sysHospital);
 
+    /**
+     * 统计医院数量
+     * @param datatype  医院类型
+     * @return
+     */
+    int chartHospital(@Param("datatype") Integer datatype);
+
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java
index fe8bada..97e8876 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysDoctorService.java
@@ -63,5 +63,16 @@
      * @return
      */
     int deleteByUserId(Long userId);
+    /**
+     * 统计医生的数量
+     * @param datatype 业务类型
+     *                 0 自注册医生
+     *                 1 签约医生
+     *                 2 医答医生
+     *                 3 C端医生
+     *                 4 H端医生
+     * @return
+     */
+    int chartDoctor(int datatype);
 }
 
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysHospitalService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysHospitalService.java
index 3f0697c..43f20b9 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysHospitalService.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysHospitalService.java
@@ -65,4 +65,10 @@
      * @return
      */
     ResultBody updateLogo(@RequestBody Map<String, Object> params);
+
+    /**
+     * 统计用户的基本数据
+     * @return
+     */
+    ResultBody chartsUserDatas();
 }
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
index 359a51b..acfcf84 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/ISysUserService.java
@@ -157,7 +157,20 @@
 	 * @return
 	 */
 	ResultBody isRegUser(String userTel);
+
+	/**
+	 * 检查手机号是否已经注册 true存在  false不存在
+	 * @param phone
+	 * @return
+	 */
 	boolean phoneIsUsed(String phone);
 
 	ResultBody jiaMipython(String password);
+
+	/**
+	 * 根据科室id反查医院id
+	 * @param departmentId  科室id
+	 * @return
+	 */
+	Long HospitalIdByDepartmentId(Long departmentId);
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java
index f53f2a7..56ef37f 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDictionariesServiceImpl.java
@@ -1,26 +1,20 @@
 package com.kidgrow.usercenter.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kidgrow.common.model.PageResult;
 import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.common.service.impl.SuperServiceImpl;
+import com.kidgrow.usercenter.mapper.SysDictionariesMapper;
+import com.kidgrow.usercenter.model.SysDictionaries;
+import com.kidgrow.usercenter.service.ISysDictionariesService;
 import com.kidgrow.usercenter.vo.SysDictionariesVo;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.cglib.beans.BeanCopier;
 import org.springframework.stereotype.Service;
-import com.kidgrow.common.model.PageResult;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.kidgrow.common.service.impl.SuperServiceImpl;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-import org.apache.commons.collections4.MapUtils;
-import lombok.extern.slf4j.Slf4j;
-
-import com.kidgrow.usercenter.model.SysDictionaries;
-import com.kidgrow.usercenter.mapper.SysDictionariesMapper;
-import com.kidgrow.usercenter.service.ISysDictionariesService;
+import java.util.*;
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
@@ -49,9 +43,11 @@
             BeanCopier beanCopier = BeanCopier.create(SysDictionaries.class, SysDictionariesVo.class, false);
             beanCopier.copy(dictionaries,sysDictionariesVo,null);
             if(StringUtils.isNotBlank(dictionaries.getDictionariesClassId())){
-                SysDictionaries dic = baseMapper.selectById(dictionaries.getDictionariesClassId());
-                if(dic!=null){
-                    sysDictionariesVo.setDictionariesClassName(dic.getDictionariesName());
+                Map<String, Object> paramsTemp=new HashMap<>();
+                paramsTemp.put("dictionaries_key",dictionaries.getDictionariesClassId());
+                List<SysDictionaries> dicList = baseMapper.selectByMap(paramsTemp);
+                if(dicList!=null&&dicList.size()>0){
+                    sysDictionariesVo.setDictionariesClassName(dicList.get(0).getDictionariesName());
                 }
             }
             listvo.add(sysDictionariesVo);
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
index ad9770f..ea83f82 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
@@ -129,6 +129,21 @@
         params.put("userId", userId);
         return baseMapper.deleteByMap(params);
     }
+    /**
+     * 统计医生的数量
+     * @param datatype 业务类型
+     *                 0 自注册医生
+     *                 1 签约医生
+     *                 2 医答医生
+     *                 3 C端医生
+     *                 4 H端医生
+     * @return
+     */
+    @Override
+    public int chartDoctor(int datatype) {
+        return baseMapper.chartDoctor(datatype);
+    }
+
     @Override
     public ResultBody enable(Map<String, Object> params) {
         Long aLong = MapUtils.getLong(params,"id");
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java
index e9b5abd..d40fa17 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java
@@ -3,11 +3,13 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.kidgrow.common.model.PageResult;
 import com.kidgrow.common.model.ResultBody;
+import com.kidgrow.common.model.SysOrganization;
 import com.kidgrow.common.model.SysUser;
 import com.kidgrow.common.service.impl.SuperServiceImpl;
 import com.kidgrow.common.utils.StringUtils;
 import com.kidgrow.usercenter.mapper.SysDepartmentMapper;
 import com.kidgrow.usercenter.mapper.SysHospitalMapper;
+import com.kidgrow.usercenter.mapper.SysOrganizationMapper;
 import com.kidgrow.usercenter.model.SysDepartment;
 import com.kidgrow.usercenter.model.SysHospital;
 import com.kidgrow.usercenter.service.ISysHospitalService;
@@ -38,6 +40,8 @@
     private SysDepartmentMapper departmentMapper;
     @Autowired
     private SysRoleOrganizationServiceImpl SysRoleOrganizationServiceImpl;
+    @Autowired
+    private SysOrganizationMapper sysOrganizationMapper;
     /**
      * 列表
      * @param params
@@ -108,10 +112,10 @@
         SysHospital sysHospital = baseMapper.selectById(id);
         //医院下的所有数据
         Map<String,Object> columnMap=new HashMap<String,Object>();
-        columnMap.put("hospital_id",id);
-        columnMap.put("is_del",(boolean)false);
-        columnMap.put("enabled",!enabled);
-        List<SysDepartment> sysDepartmentList=departmentMapper.selectByMap(columnMap);
+        columnMap.put("is_del",0);
+        columnMap.put("enabled",(enabled)?0:1);
+        columnMap.put("org_parent_id",sysHospital.getOrgId());
+        List<SysOrganization> sysOrganizationList=sysOrganizationMapper.selectByMap(columnMap);
         if (sysHospital == null) {
             return ResultBody.failed("医院数据不存在!");
         }
@@ -119,14 +123,24 @@
             return ResultBody.failed("科室数据不存在!");
         }
         //如果这个医院下有多个科室,禁用只对当前科室有效,否则也要禁用医院
-        if(sysDepartmentList.size()==1)
+        if(sysOrganizationList.size()==1)
         {
             sysHospital.setEnabled(enabled);
-            int i =baseMapper.updateById(sysHospital);
-            //Log.info("修改医院状态为:{}",enabled+" "+i);
+            baseMapper.updateById(sysHospital);
+            SysOrganization sysOrganizationH=sysOrganizationMapper.selectById(sysHospital.getOrgId());
+            if (sysOrganizationH != null) {
+                sysOrganizationH.setEnabled(enabled);
+                sysOrganizationMapper.updateById(sysOrganizationH);
+            }
         }
         sysDepartment.setEnabled(enabled);
         int j=departmentMapper.updateById(sysDepartment);
+        //更新组织数据
+        SysOrganization sysOrganizationD=sysOrganizationMapper.selectById(sysDepartment.getOrgId());
+        if (sysOrganizationD != null) {
+            sysOrganizationD.setEnabled(enabled);
+            sysOrganizationMapper.updateById(sysOrganizationD);
+        }
         return (j > 0) ? ResultBody.ok().data(sysHospital).msg("更新成功") : ResultBody.failed("更新失败");
     }
 
@@ -144,26 +158,38 @@
         SysDepartment sysDepartment=departmentMapper.selectById(departmentId);
         //医院数据
         SysHospital sysHospital = baseMapper.selectById(id);
-        //医院下的所有数据
-        Map<String,Object> columnMap=new HashMap<String,Object>();
-        columnMap.put("hospital_id",id);
-        List<SysDepartment> sysDepartmentList=departmentMapper.selectByMap(columnMap);
         if (sysHospital == null) {
             return ResultBody.failed("医院数据不存在!");
         }
         if (sysDepartment == null) {
             return ResultBody.failed("科室数据不存在!");
         }
+        //医院下的所有科室数据
+        Map<String,Object> columnMap=new HashMap<String,Object>();
+        columnMap.put("org_parent_id",sysHospital.getOrgId());
+        columnMap.put("is_del",0);
+        columnMap.put("enabled",1);
+        List<SysOrganization> sysOrganizationList=sysOrganizationMapper.selectByMap(columnMap);
         //如果这个医院下有多个科室,禁用只对当前科室有效,否则也要禁用医院
-        if(sysDepartmentList.size()==1)
+        if(sysOrganizationList.size()==1)
         {
             sysHospital.setIsDel(true);
-            int i =baseMapper.updateById(sysHospital);
-            //Log.info("修改医院状态为:{}",enabled+" "+i);
+            baseMapper.updateById(sysHospital);
+            SysOrganization sysOrganizationH=sysOrganizationMapper.selectById(sysHospital.getOrgId());
+            if (sysOrganizationH != null) {
+                sysOrganizationH.setIsDel(true);
+                sysOrganizationMapper.updateById(sysOrganizationH);
+            }
         }
         sysDepartment.setIsDel(true);
         int j=departmentMapper.updateById(sysDepartment);
-        return (j > 0) ? ResultBody.ok().data(sysHospital).msg("删除成功") : ResultBody.failed("删除失败");
+        //删除组织数据
+        SysOrganization sysOrganizationD=sysOrganizationMapper.selectById(sysDepartment.getOrgId());
+        if (sysOrganizationD != null) {
+            sysOrganizationD.setIsDel(true);
+            sysOrganizationMapper.updateById(sysOrganizationD);
+        }
+        return (j>0) ? ResultBody.ok().data(sysHospital).msg("删除成功") : ResultBody.failed("删除失败");
     }
 
     /**
@@ -194,4 +220,15 @@
             return ResultBody.failed("修改数据有误!");
         }
     }
+
+    @Override
+    public ResultBody chartsUserDatas() {
+        //正式医院数据
+        int hospitalCount=baseMapper.chartHospital(1);
+        //试用医院数据
+        int tempHospitalCount=baseMapper.chartHospital(0);
+        //筛查医院
+        int screenHospitalCount=baseMapper.chartHospital(11);
+        return null;
+    }
 }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
index 9478ffe..1f97377 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysUserServiceImpl.java
@@ -87,6 +87,9 @@
     private SysRoleMapper sysRoleMapper;
     @Autowired
     private SysUserRoleMapper sysUserRoleMapper;
+    @Autowired
+    private SysOrganizationMapper sysOrganizationMapper;
+
     @Override
     public LoginAppUser findByUsername(String username) {
         SysUser sysUser = this.selectByUsername(username);
@@ -233,22 +236,22 @@
 
         SysUser sysUser = baseMapper.selectById(id);
         if (StrUtil.isNotBlank(oldPassword)) {
-            oldPassword=AesUtils.desEncrypt(oldPassword).trim();
+            oldPassword = AesUtils.desEncrypt(oldPassword).trim();
             if (!passwordEncoder.matches(oldPassword, sysUser.getPassword())) {
                 return ResultBody.failed("旧密码错误!");
             }
         }
         if (StrUtil.isBlank(newPassword)) {
             newPassword = com.kidgrow.common.utils.RandomValueUtils.getRandom(6);
-        }else {
-            newPassword=AesUtils.desEncrypt(newPassword).trim();
+        } else {
+            newPassword = AesUtils.desEncrypt(newPassword).trim();
         }
         SysUser user = new SysUser();
         user.setId(id);
         user.setPassword(passwordEncoder.encode(newPassword));
         if (isdefault) {
             user.setDefaultAuth(true);
-        }else {
+        } else {
             user.setDefaultAuth(false);
         }
         baseMapper.updateById(user);
@@ -261,7 +264,7 @@
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public ResultBody updateUserTel(Map<String, Object> params) throws Exception  {
+    public ResultBody updateUserTel(Map<String, Object> params) throws Exception {
         Long id = MapUtils.getLong(params, "id");
         String oldTel = MapUtils.getString(params, "oldTel");
         String newTel = AesUtils.desEncrypt(MapUtils.getString(params, "newTel")).trim();
@@ -303,13 +306,11 @@
                         } else {
                             return ResultBody.failed("手机号修改失败!");
                         }
-                    }else {
+                    } else {
                         return ResultBody.failed("用户信息验证失败,请提供正确的手机号和密码!");
                     }
                 }
-            }
-            else
-            {
+            } else {
                 return ResultBody.failed("无效的验证码");
             }
         } else {
@@ -361,11 +362,11 @@
     @Transactional(rollbackFor = Exception.class)
     @Override
     public ResultBody saveOrUpdateUser(SysUser sysUser) {
+        String defaultPassWord = com.kidgrow.common.utils.RandomValueUtils.getRandom(6);
         if (sysUser.getId() == null) {
             if (StringUtils.isBlank(sysUser.getType())) {
                 sysUser.setType(UserType.BACKEND.name());
             }
-            String defaultPassWord = com.kidgrow.common.utils.RandomValueUtils.getRandom(6);
             sysUser.setPassword(passwordEncoder.encode(defaultPassWord));
             sysUser.setEnabled(Boolean.TRUE);
         }
@@ -384,6 +385,7 @@
                 roleUserService.saveBatch(roleUsers);
             }
         }
+        sysUser.setPassword(defaultPassWord);
         return result ? ResultBody.ok().data(sysUser).msg("操作成功") : ResultBody.failed("操作失败");
     }
 
@@ -514,9 +516,9 @@
         if (newPass == null || "".equals(newPass.trim())) {
             return ResultBody.failed("请输入正确的密码");
         }
-        phone= AesUtils.desEncrypt(phone.trim());
-        verificationCode= AesUtils.desEncrypt(verificationCode.trim());
-        newPass= AesUtils.desEncrypt(newPass.trim());
+        phone = AesUtils.desEncrypt(phone.trim());
+        verificationCode = AesUtils.desEncrypt(verificationCode.trim());
+        newPass = AesUtils.desEncrypt(newPass.trim());
         if (CheckVerificationCode(ConstantSMS.PASSWORD_SMS, phone, verificationCode)) {
             //查询表
             Map<String, Object> selectMap = new HashMap<>();
@@ -652,7 +654,7 @@
     @Transactional(rollbackFor = Exception.class)
     @Override
     public ResultBody doctorUserReg(UserRegVo userRegVo, SysUser sysUserd) throws Exception {
-        if(sysUserd.getId()==null){
+        if (sysUserd.getId() == null) {
             sysUserd = this.baseMapper.selectById(userRegVo.getUserId());
         }
         userRegVo.setPassword(AesUtils.desEncrypt(userRegVo.getPassword()).trim());
@@ -687,6 +689,7 @@
                 SysHospital sysHospital = new SysHospital();
                 sysHospital.setHospitalName(userRegVo.getHospitalName());
                 sysHospital.setOrgId(organizationHos);
+                //注册的用户所在医院默认是试用状态
                 sysHospital.setHospitalState(0);
                 sysHospital.setCreateUserId(createUserId);
                 sysHospital.setCreateUserName(createUserName);
@@ -696,7 +699,6 @@
                     userRegVo.setHospitalId(sysHospital.getId());
                     //保存科室数据
                     SysDepartment sysDepartment = new SysDepartment();
-                    sysDepartment.setHospitalId(sysHospital.getId());
                     sysDepartment.setOrgId(organizationDep);
                     sysDepartment.setDepartmentName(userRegVo.getDepartmentName());
                     sysDepartment.setSaleUserId(createUserId);
@@ -790,8 +792,7 @@
                             }
                         } else {
                             //创建字典数据
-                            sysDictionaries.setDictionariesKey(DictionariesConstants.DOCTOR_RANK);
-                            sysDictionaries.setDictionariesClassId(DictionariesConstants.DOCTOR_RANK_ID.toString());
+                            sysDictionaries.setDictionariesClassId(DictionariesConstants.DOCTOR_RANK);
                             //将名称汉字转为拼音
                             sysDictionaries.setDictionariesKey(Pinyin4jUtil.makeStringByStringSet(Pinyin4jUtil.getPinyin(userRegVo.getDoctorRank(), true)));
                             sysDictionaries.setDictionariesName(userRegVo.getDoctorRank());
@@ -835,9 +836,7 @@
                                 sysDoctor.setCreateUserName(isReg ? createUserName : sysUserd.getUsername());
                                 if (isReg) {
                                     sysDoctor.setDoctorState(false);
-                                }
-                                else
-                                {
+                                } else {
                                     sysDoctor.setDoctorState(true);
                                 }
                                 sysDoctor.setDoctorTel(userRegVo.getMobile());
@@ -941,13 +940,13 @@
      * @return
      */
     @Override
-    public ResultBody hospitalDoctorList(Long hospitalId, Long departmentId,Boolean isIncluddel) {
+    public ResultBody hospitalDoctorList(Long hospitalId, Long departmentId, Boolean isIncluddel) {
         if (hospitalId > 0 && departmentId > 0) {
             List<HospitalDoctorListVo> listVoList;
-            if(isIncluddel){
-                listVoList= baseMapper.hospitalDoctorListAndDel(hospitalId, departmentId,CommonConstant.HOSPITAL_DOCTOR_ID,CommonConstant.HOSPITAL_ADMIN_ID);
-            }else {
-                listVoList=baseMapper.hospitalDoctorList(hospitalId, departmentId,CommonConstant.HOSPITAL_DOCTOR_ID,CommonConstant.HOSPITAL_ADMIN_ID);
+            if (isIncluddel) {
+                listVoList = baseMapper.hospitalDoctorListAndDel(hospitalId, departmentId, CommonConstant.HOSPITAL_DOCTOR_ID, CommonConstant.HOSPITAL_ADMIN_ID);
+            } else {
+                listVoList = baseMapper.hospitalDoctorList(hospitalId, departmentId, CommonConstant.HOSPITAL_DOCTOR_ID, CommonConstant.HOSPITAL_ADMIN_ID);
             }
             return ResultBody.ok().data(listVoList);
         } else {
@@ -980,34 +979,77 @@
         if (sysDepartment == null) {
             return 0;
         } else {
-            List<HospitalDoctorListVo> hospitalDoctorListVos = baseMapper.hospitalDoctorList(sysDepartment.getHospitalId(), depatmentId, CommonConstant.HOSPITAL_DOCTOR_ID, CommonConstant.HOSPITAL_ADMIN_ID);
-            if (hospitalDoctorListVos != null) {
-                int doctorCount = hospitalDoctorListVos.size();
-                int accountCount = sysDepartment.getAccountsCount();
-                return (accountCount - doctorCount);
-            } else {
+            Long sysHospitalId=HospitalIdByDepartmentId(depatmentId);
+            if (sysHospitalId>0) {
+                List<HospitalDoctorListVo> hospitalDoctorListVos = baseMapper.hospitalDoctorList(sysHospitalId, depatmentId, CommonConstant.HOSPITAL_DOCTOR_ID, CommonConstant.HOSPITAL_ADMIN_ID);
+                if (hospitalDoctorListVos != null) {
+                    int doctorCount = hospitalDoctorListVos.size();
+                    int accountCount = sysDepartment.getAccountsCount();
+                    return (accountCount - doctorCount);
+                } else {
+                    return 0;
+                }
+            }
+            else
+            {
                 return 0;
             }
         }
     }
-//    private Integer departmetAccountsCount(Long depatmentId) {
-//        SysDepartment sysDepartment = departmentService.getById(depatmentId);
-//        if (sysDepartment == null) {
-//            return 0;
-//        } else {
-//            Map<String, Object> selectMap = new HashMap<>();
-//            selectMap.put("department_id", depatmentId);
-//            selectMap.put("enabled", 1);
-//            List<SysDoctor> sysDoctorList = sysDoctorMapper.selectByMap(selectMap);
-//            if (sysDoctorList != null) {
-//                int doctorCount = sysDoctorList.size();
-//                int accountCount = sysDepartment.getAccountsCount();
-//                return (accountCount - doctorCount);
-//            } else {
-//                return 0;
+
+    /**
+     * 根据部门的id获取所属医院id
+     *
+     * @return
+     */
+    public Long HospitalIdByDepartmentId(Long departmentId) {
+        Long hospitalId = -1L;
+        SysDepartment sysDepartment = departmentService.getById(departmentId);
+        if (sysDepartment != null) {
+            //先获取科室的组织数据
+            SysOrganization sysOrganization = sysOrganizationMapper.selectById(sysDepartment.getOrgId());
+            if (sysOrganization != null) {
+                //获取上级组织id
+                sysOrganization = sysOrganizationMapper.selectById(sysOrganization.getOrgParentId());
+                if (sysOrganization != null) {
+                    //根据组织id获取上级医院id
+                    Map<String, Object> selectMap = new HashMap<>();
+                    selectMap.put("org_id", sysOrganization.getId());
+                    List<SysHospital> sysHospitalList = hospitalService.listByMap(selectMap);
+                    if (sysHospitalList != null && sysHospitalList.size() > 0) {
+                        //取第一个
+                        hospitalId = sysHospitalList.get(0).getId();
+                    }
+                }
+            }
+        }
+        return hospitalId;
+    }
+    /**
+     * 根据部门的id获取所属医院id
+     *
+     * @return
+     */
+//    public List<Long> DepartmentIdListByhospitalId(Long hospitalId) {
+//        List<Long> hospitalIdList =new ArrayList<Long>();
+//        SysHospital sysHospital = hospitalService.getById(hospitalId);
+//        if (sysHospital != null) {
+//            //先获取医院的组织数据
+//            SysOrganization sysOrganization = sysOrganizationMapper.selectById(sysHospital.getOrgId());
+//            if (sysOrganization != null) {
+//                    //根据组织id获取下级科室组织id
+//                    Map<String, Object> selectMap = new HashMap<>();
+//                    selectMap.put("org_parent_id", sysOrganization.getId());
+//                    List<SysOrganization> sysDepartmentList = sysOrganizationMapper.selectByMap(selectMap);
+//                    if (sysDepartmentList != null && sysDepartmentList.size() > 0) {
+//                        //hospitalIdList=sysDepartmentList.stream().sorted(Comparator.comparing(SysOrganization::getCreateTime).reversed()).map(SysOrganization::getId).collect(Collectors.toList());
+//                        sysDepartmentList.stream().sorted(Comparator.comparing(SysOrganization::getCreateTime).reversed()).map(SysOrganization::getId).collect(Collectors.toList()).get(0);
+//                    }
 //            }
 //        }
+//        return hospitalIdList;
 //    }
+
 
     /**
      * 检查用户登录名是否已经注册 true存在  false不存在
@@ -1036,29 +1078,25 @@
 
     /**
      * 检查手机号是注册用户还是正式用户
+     *
      * @param userTel
      * @return
      */
-    public ResultBody isRegUser(String userTel)
-    {
+    public ResultBody isRegUser(String userTel) {
         if (StringUtils.isNotBlank(userTel)) {
             List<SysUser> users = baseMapper.selectList(
                     new QueryWrapper<SysUser>().eq("username", userTel)
             );
-            if (users != null&&users.size()==1) {
-                SysUser sysUser=users.get(0);
-                if (sysUser.getCreateUserId()==CommonConstant.CREATE_USER_ID&&sysUser.getCreateUserName().equals(CommonConstant.CREATE_USER_NAME)) {
+            if (users != null && users.size() == 1) {
+                SysUser sysUser = users.get(0);
+                if (sysUser.getCreateUserId() == CommonConstant.CREATE_USER_ID && sysUser.getCreateUserName().equals(CommonConstant.CREATE_USER_NAME)) {
                     return ResultBody.ok().data(true);
                 }
                 return ResultBody.ok().data(false);
-            }
-            else
-            {
+            } else {
                 return ResultBody.failed("用户数据有误!");
             }
-        }
-        else
-        {
+        } else {
             return ResultBody.failed("必要参数有误!");
         }
     }
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDepartmentMapper.xml b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDepartmentMapper.xml
index c858f7b..5a7d902 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDepartmentMapper.xml
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDepartmentMapper.xml
@@ -15,9 +15,6 @@
             <if test="p.id != null and p.id !=''">
                 and id = #{p.id}
             </if>
-            <if test="p.hospitalId != null and p.hospitalId !=''">
-                and hospital_id = #{p.hospitalId}
-            </if>
             <if test="p.departmentName != null and p.departmentName !=''">
                 and department_name = #{p.departmentName}
             </if>
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDoctorMapper.xml b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDoctorMapper.xml
index de33ab1..5e9b35f 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDoctorMapper.xml
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysDoctorMapper.xml
@@ -37,7 +37,7 @@
                 and doctor_logo = #{p.doctorLogo}
             </if>
             <if test="p.doctorTel != null and p.doctorTel !=''">
-                and doctor_tel like  concat('%',#{p.doctorTel},'%')
+                and doctor_tel like concat('%',#{p.doctorTel},'%')
             </if>
             <if test="p.doctorRankId != null and p.doctorRankId !=''">
                 and doctor_rank_id = #{p.doctorRankId}
@@ -128,4 +128,27 @@
 		username = #{userName}
 		OR mobile = #{userName})
 	</select>
+    <select id="chartDoctor" resultType="int" parameterType="int">
+        select count(id) doctorCount from sys_doctor where is_del=0 and enabled=1
+        <if test="datatype==0">
+            -- 自注册医生
+            and (doctor_type=0 or doctor_type=1) and doctor_state=1
+        </if>
+        <if test="datatype==1">
+            -- 签约医生
+            and is_signing=1 and doctor_state=1
+        </if>
+        <if test="datatype==2">
+            -- 医答医生
+            and is_answer=1 and doctor_state=1
+        </if>
+        <if test="datatype==3">
+            -- C端医生
+            and (doctor_type=2 or doctor_type=0) and doctor_state=1
+        </if>
+        <if test="datatype==4">
+            -- H端医生
+            and (doctor_type=1 or doctor_type=0) and doctor_state=1
+        </if>
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysHospitalMapper.xml b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysHospitalMapper.xml
index 93bee13..b735ca9 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysHospitalMapper.xml
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/resources/mapper/SysHospitalMapper.xml
@@ -132,8 +132,7 @@
     </select>
     <sql id="whereList">
         <where>
-            DEP.is_del = 0
-            AND HOS.is_del = 0
+            hosisdel = 0
             <if test="p.isScreen != null and p.isScreen !=''">
                 and is_screen = #{p.isScreen}
             </if>
@@ -171,17 +170,20 @@
                             <when test="inx==2">
                                 <if test="itemto.flag">
                                     AND
-                                    <foreach item="itemtoto" collection="itemto.object" separator="or" open="(" close=")"
+                                    <foreach item="itemtoto" collection="itemto.object" separator="or" open="("
+                                             close=")"
                                              index="">
                                         create_user_org_code = #{itemtoto.orgCode}
                                     </foreach>
                                 </if>
                                 <if test="!itemto.flag">
                                     or (
-                                    <foreach item="itemtoto" collection="itemto.object" separator="or" open="(" close=")"
+                                    <foreach item="itemtoto" collection="itemto.object" separator="or" open="("
+                                             close=")"
                                              index="">
                                         create_user_org_code = #{itemtoto.orgCode}
-                                    </foreach>  and HOS.is_del = 0 and HOS.enabled=1
+                                    </foreach>
+                                    and HOS.is_del = 0 and HOS.enabled=1
                                     )
                                 </if>
                             </when>
@@ -200,7 +202,8 @@
                                     create_user_org_code like '${itemto.object}%'
                                 </if>
                                 <if test="!itemto.flag">
-                                    or (create_user_org_code like '${itemto.object}%' and HOS.is_del = 0 and HOS.enabled=1)
+                                    or (create_user_org_code like '${itemto.object}%' and HOS.is_del = 0 and
+                                    HOS.enabled=1)
                                 </if>
                             </when>
                             <when test="inx == 5">
@@ -220,12 +223,11 @@
                     </foreach>
                 </foreach>
             </if>
-<!--                        <include refid="com.kidgrow.usercenter.mapper.SysRoleOrganizationMapper.Role_Organization"></include>-->
+            <!--                        <include refid="com.kidgrow.usercenter.mapper.SysRoleOrganizationMapper.Role_Organization"></include>-->
         </where>
     </sql>
     <select id="findHospitalList" resultType="com.kidgrow.usercenter.vo.HospitalListVo">
         SELECT
-        DISTINCT
         DEP.department_name,
         DEP.id department_id,
         DEP.server_user_name,
@@ -233,6 +235,12 @@
         DEP.org_id,
         DEP.is_del,
         DEP.enabled,
+        hospitals.*
+        FROM
+        sys_department DEP
+        LEFT JOIN sys_organization DEORG ON DEP.org_id = DEORG.id and DEP.is_del=0
+        LEFT JOIN (
+        SELECT
         HOS.id hospital_id,
         HOS.hospital_name,
         HOS.hospital_code,
@@ -247,10 +255,14 @@
         HOS.is_answer,
         HOS.tenant_id,
         HOS.area_code,
-        HOS.create_time
+        HOS.create_time,
+        HOS.is_del hosisdel,
+        HOS.enabled hosenabled,
+        ORG.id AS hosorgid
         FROM
-        sys_department DEP
-        LEFT JOIN sys_hospital HOS ON DEP.hospital_id = HOS.id
+        sys_hospital HOS
+        LEFT JOIN sys_organization ORG ON HOS.org_id = ORG.id and ORG.is_del=0
+        ) AS hospitals ON DEORG.org_parent_id = hospitals.hosorgid
         <include refid="whereList"/>
         order by create_time desc
     </select>
@@ -258,7 +270,26 @@
         select id,
         hospital_name
         from sys_hospital
-        where hospital_name LIKE concat('%',#{hospitalName},'%')
+        where is_del=0 and enabled=1 and hospital_name LIKE concat('%',#{hospitalName},'%')
         order by hospital_name desc
     </select>
+    <select id="chartHospital" resultType="int" parameterType="integer">
+        SELECT
+        count( DISTINCT hospital_name ) hospitalCount
+        FROM
+        sys_hospital
+        WHERE
+        <if test="datatype==0">
+            hospital_state =0
+        </if>
+        <if test="datatype==1">
+            hospital_state =1
+        </if>
+        <if test="datatype==11">
+            is_screen =1 and
+            hospital_state =1
+        </if>
+        AND is_del = 0
+        AND enabled = 1;
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
index 9ba707d..7dac69e 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysDepartmentController.java
@@ -13,6 +13,7 @@
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.ObjectError;
 import org.springframework.web.bind.annotation.*;
@@ -99,6 +100,7 @@
      */
     @ApiOperation(value = "保存")
     @PostMapping
+    @Transactional(rollbackFor = {Exception.class})
     public ResultBody save(@Valid @RequestBody SysDepartment sysDepartment, BindingResult bindingResult) {
         List<String> errMsg = new ArrayList<>();
         if (bindingResult.hasErrors()) {
@@ -112,7 +114,6 @@
                 Map<String, Object> checkDepartment = new HashMap<String, Object>();
                 checkDepartment.put("page", 1);
                 checkDepartment.put("limit", 1);
-                checkDepartment.put("hospitalId", sysDepartment.getHospitalId());
                 checkDepartment.put("departmentName", sysDepartment.getDepartmentName());
                 if (sysDepartmentService.findList(checkDepartment).getData().size() > 0) {
                     return ResultBody.failed().msg(String.format("该医院下已经存在科室 %s", sysDepartment.getDepartmentName()));
diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
index f277fdb..d0a6f42 100644
--- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
+++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-server/src/main/java/com/kidgrow/usercenter/controller/SysHospitalController.java
@@ -179,6 +179,10 @@
             if (organizations.size() > 0) {
                 sysHospital.setCreateUserOrgCode(organizations.get(organizations.size() - 1).getOrgCode());
             }
+            //运营平台添加的医院默认就是正式的
+            if (sysHospital.getHospitalState()==null) {
+                sysHospital.setHospitalState(1);
+            }
             boolean v = sysHospitalService.saveOrUpdate(sysHospital);
             if (v) {
                 return ResultBody.ok().data(sysHospital).msg("保存成功");
diff --git a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
index a17380d..dc23334 100644
--- a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
+++ b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/CommonConstant.java
@@ -169,7 +169,7 @@
     /**
      * 默认超级管理员账号
      */
-    public final static String ROOT = "admin";
+    public final static String ROOT = "admin-xg";
 
     /**
      * 负载均衡策略-版本号 信息头
@@ -257,14 +257,14 @@
      */
     public static final Long HOSPITAL_DOCTOR_ID=1268826800663289858L;
     /**
-     * 普通医生角色code标识
+     * 普通医生角色code标识`
      */
     public static final String HOSPITAL_DOCTOR_CODE="hospital_doctor";
 
     /**
      * 管理员医生角色ID
      */
-    public static final Long HOSPITAL_ADMIN_ID=9L;
+    public static final Long HOSPITAL_ADMIN_ID=1238826800663299909L;
     /**
      * 管理员医生角色code标识
      */
@@ -273,12 +273,12 @@
     /**
      * 自主注册医院的组织id
      */
-    public static final Long HOSPITAL_ORG_ID=1273809987709677569L;
+    public static final Long HOSPITAL_ORG_ID=15321234570L;
 
     /**
      * 自主注册的科室组织id
      */
-    public static final Long DEPARTMENT_ORG_ID=1273810374550335490L;
+    public static final Long DEPARTMENT_ORG_ID=15321234571L;
 
     /**
      * 自主注册的创建人id
@@ -289,9 +289,23 @@
      */
     public static final String CREATE_USER_NAME= "自动创建";
     /**
-     * 管理员医生角色code标识
+     * 管理员角色code标识
      */
-    public static final String SYSTEM_ADMIN_ROLE_CODE="ADMIN";
+    public static final String SYSTEM_ADMIN_ROLE_CODE="admin";
+
+    /**
+     * 销售主管角色code标识
+     */
+    public static final String SALE_MANAGER_ROLE_CODE="salemanager";
+
+    /**
+     * 喜高PC高管角色code标识
+     */
+    public static final String PC_ADMIN_ROLE_CODE="pc_admin";
+    /**
+     * 喜高运营高管角色code标识
+     */
+    public static final String OPRATIONMANAGER_ROLE_CODE="oprationmanager";
 
     /**
      * 集团组织级别
@@ -317,4 +331,8 @@
      * 医生类型 C
      */
     public static final Integer C_DOCTOR_TYPE=2;
+    /**
+     * 一个科室能最大试用多少次
+     */
+    public static final Integer MAX_FREE_COUNT=0;
 }
diff --git a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/DictionariesConstants.java b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/DictionariesConstants.java
index 0c6607a..abd7fed 100644
--- a/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/DictionariesConstants.java
+++ b/kidgrow-commons/kidgrow-common-spring-boot-starter/src/main/java/com/kidgrow/common/constant/DictionariesConstants.java
@@ -22,11 +22,7 @@
      */
     String DOCTOR_RANK = "DOCTOR_RANK";
     /**
-     * 医生职称分类id
-     */
-    Long DOCTOR_RANK_ID=1248150699682988034L;
-    /**
      * 最高组织ID
      */
-    Long ORG_PARENT_ID=1L;
+    Long ORG_PARENT_ID=15321234561L;
 }
diff --git a/kidgrow-uaa/kidgrow-uaa-server/src/main/resources/application.yml b/kidgrow-uaa/kidgrow-uaa-server/src/main/resources/application.yml
index 75d1163..929f9dd 100644
--- a/kidgrow-uaa/kidgrow-uaa-server/src/main/resources/application.yml
+++ b/kidgrow-uaa/kidgrow-uaa-server/src/main/resources/application.yml
@@ -56,7 +56,7 @@
   security:
     code:
       # 忽略验证码的应用编号
-      ignoreClientCode: app,hospital,webApp
+      ignoreClientCode: app,hospital,webApp,readxapp
 
 encrypt:
   key-store:
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/login.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/login.html
index fe6e592..acf9679 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/login.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/login.html
@@ -118,18 +118,18 @@
                     // debugger;
                     if (data.code === 0) {
                         config.putToken(data.data);
-                        layer.msg('登录成功', {icon: 1, time: 500}, function () {
+                        layer.msg('登录成功', {icon: 1, time: 2000}, function () {
                             location.replace('./');
                         });
                     } else {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, {icon: 5, time: 500});
+                        layer.msg(data.msg, {icon: 5, time: 2000});
                     }
                 },
                 error: function (xhr) {
                     //console.log(xhr)
                     layer.closeAll('loading');
-                    layer.msg(xhr.responseJSON.msg, {icon: 5, time: 500});
+                    layer.msg(xhr.responseJSON.msg, {icon: 5, time: 2000});
                 }
             });
             //阻止表单跳转
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/attestation/app.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/attestation/app.html
index 4ba4d01..4d9a49a 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/attestation/app.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/attestation/app.html
@@ -109,7 +109,7 @@
                 layer.load(2);
                 admin.req('api-uaa/clients/' + obj.data.id, {}, function (data) {
                     layer.closeAll('loading');
-                    layer.msg('成功', {icon: 1, time: 500});
+                    layer.msg('成功', {icon: 1, time: 2000});
                     obj.del();
                 }, 'DELETE');
             });
@@ -156,11 +156,11 @@
                 layer.closeAll('loading');
                 console.log(data);
                 if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     table.reload('app-table');
                     layer.closeAll('page');
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, $('#app-form').attr('method'));
             return false;
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/files/files.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/files/files.html
index a294603..5201e79 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/files/files.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/files/files.html
@@ -87,10 +87,10 @@
                 admin.req('api-file/files/' + obj.data.id, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.resp_code == 0) {
-                        layer.msg(data.resp_msg, {icon: 1, time: 500});
+                        layer.msg(data.resp_msg, {icon: 1, time: 2000});
                         obj.del();
                     } else {
-                        layer.msg(data.resp_msg, {icon: 2, time: 500});
+                        layer.msg(data.resp_msg, {icon: 2, time: 2000});
                     }
                 }, 'DELETE');
             });
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager.html
index aec9112..12c4a45 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager.html
@@ -102,10 +102,10 @@
                 admin.req('api-search/admin/index?indexName='+obj.data.indexName, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.resp_code == 0) {
-                        layer.msg(data.resp_msg, {icon: 1, time: 500});
+                        layer.msg(data.resp_msg, {icon: 1, time: 2000});
                         obj.del();
                     } else {
-                        layer.msg(data.resp_msg, {icon: 2, time: 500});
+                        layer.msg(data.resp_msg, {icon: 2, time: 2000});
                     }
                 }, 'DELETE');
             });
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_form.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_form.html
index 93e93a0..738dbdd 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_form.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_form.html
@@ -48,10 +48,10 @@
             admin.req('api-search/admin/index', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.resp_code == 0) {
-                    layer.msg(data.resp_msg, {icon: 1, time: 500});
+                    layer.msg(data.resp_msg, {icon: 1, time: 2000});
                     admin.finishPopupCenter();
                 } else {
-                    layer.msg(data.resp_msg, {icon: 2, time: 500});
+                    layer.msg(data.resp_msg, {icon: 2, time: 2000});
                 }
             }, "POST");
             return false;
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_view.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_view.html
index aff0216..135fb07 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_view.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/search/index_manager_view.html
@@ -26,7 +26,7 @@
                 if (0 == data.resp_code) {
                     $('#data').html(syntaxHighlight(data.datas));
                 } else {
-                    layer.msg('获取索引信息失败', {icon: 2, time: 500});
+                    layer.msg('获取索引信息失败', {icon: 2, time: 2000});
                 }
             }, 'GET');
         }
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus.html
index d7c9f88..adde00f 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus.html
@@ -98,7 +98,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, {icon: 2, time: 500});
+                layer.msg(data.msg, {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -116,10 +116,10 @@
                     admin.req('api-user/menus/'+obj.data.id+'?tenantId='+tenantId, {}, function (data) {
                         layer.closeAll('loading');
                         if (0 === data.code) {
-                            layer.msg(data.msg, {icon: 1, time: 500});
+                            layer.msg(data.msg, {icon: 1, time: 2000});
                             renderTable({tenantId: tenantId});
                         } else {
-                            layer.msg(data.msg, {icon: 2, time: 500});
+                            layer.msg(data.msg, {icon: 2, time: 2000});
                         }
                     }, 'DELETE');
                 });
@@ -170,7 +170,7 @@
                 }
             });
             if (keyword !== '' && searchCount === 0) {
-                layer.msg("没有匹配结果", {icon: 5, time: 500});
+                layer.msg("没有匹配结果", {icon: 5, time: 2000});
             } else {
                 treetable.expandAll('#menus-table');
             }
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus_form.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus_form.html
index afca6db..3d5fbd8 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus_form.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/menus_form.html
@@ -113,7 +113,7 @@
                 }
                 form.render();  //菜单渲染 把内容加载进去
             } else {
-                layer.msg('获取一级菜单', {icon: 2, time: 500});
+                layer.msg('获取一级菜单', {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -123,11 +123,11 @@
             admin.req('api-user/menus/saveOrUpdate?tenantId='+menus.tenantId, JSON.stringify(data.field), function (data) {
                 if (data.code === 0) {
                 	layer.closeAll('loading');
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     admin.finishPopupCenter();
                 } else {
                 	layer.closeAll('loading');
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, $('#menus-form').attr('method'));
             return false;
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/myInfo.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/myInfo.html
index b7558fd..69fe632 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/myInfo.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/myInfo.html
@@ -73,11 +73,11 @@
                 if (data.code == 0) {
                     layer.closeAll('loading');
                     $(".layui-nav-img").attr("src",$("[name=headImgUrl]").val());
-                    layer.msg("操作成功", {icon: 1, time: 500});
+                    layer.msg("操作成功", {icon: 1, time: 2000});
 
                     form.val('user-form',data.data);
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, 'POST');
             return false;
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/role.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/role.html
index f5e52c6..187ea77 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/role.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/role.html
@@ -105,7 +105,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, {icon: 2, time: 500});
+                layer.msg(data.msg, {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -122,11 +122,11 @@
                 layer.closeAll('loading');
                 console.log(data);
                 if (data.code === 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     table.reload('role-table');
                     layer.closeAll('page');
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, $('#role-form').attr('method'));
             return false;
@@ -181,10 +181,10 @@
                 admin.req('api-user/roles/' + obj.data.id+'?tenantId='+tenantId, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.code === 0) {
-                        layer.msg(data.msg, {icon: 1, time: 500});
+                        layer.msg(data.msg, {icon: 1, time: 2000});
                         obj.del();
                     } else {
-                        layer.msg(data.msg, {icon: 2, time: 500});
+                        layer.msg(data.msg, {icon: 2, time: 2000});
                     }
                 }, 'DELETE');
             });
@@ -236,10 +236,10 @@
                     admin.req('api-user/menus/granted?tenantId='+tenantId, JSON.stringify(data) , function (data) {
                         layer.closeAll('loading');
                         if (0 == data.code) {
-                            layer.msg(data.msg, {icon: 1, time: 500});
+                            layer.msg(data.msg, {icon: 1, time: 2000});
                             layer.close(index);
                         } else {
-                            layer.msg(data.msg, {icon: 2, time: 500});
+                            layer.msg(data.msg, {icon: 2, time: 2000});
                         }
                     }, 'POST');
                 }
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/tokens.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/tokens.html
index f217537..8943ec7 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/tokens.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/tokens.html
@@ -72,7 +72,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, {icon: 2, time: 500});
+                layer.msg(data.msg, {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -90,7 +90,7 @@
                 layer.load(2);
                 admin.req('api-uaa/oauth/remove/token?token=' + obj.data.tokenValue, {}, function (data) {
                     layer.closeAll('loading');
-                    layer.msg('成功', {icon: 1, time: 500});
+                    layer.msg('成功', {icon: 1, time: 2000});
                     obj.del();
                 }, 'DELETE');
             });
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user.html
index 38acaaf..b6b125d 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user.html
@@ -99,9 +99,9 @@
                     admin.req('api-user/users/'+obj.data.id+'/password', {}, function (data) {
                         layer.closeAll('loading');
                         if (data.ode == 0) {
-                            layer.msg(data.msg, {icon: 1, time: 500});
+                            layer.msg(data.msg, {icon: 1, time: 2000});
                         } else {
-                            layer.msg(data.msg, {icon: 2, time: 500});
+                            layer.msg(data.msg, {icon: 2, time: 2000});
                         }
                     }, 'PUT');
                 });
@@ -112,10 +112,10 @@
                     admin.req('api-user/users/'+obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
                         if (data.code == 0) {
-                            layer.msg(data.msg, {icon: 1, time: 500});
+                            layer.msg(data.msg, {icon: 1, time: 2000});
                             table.reload('user-table', {});
                         } else {
-                            layer.msg(data.msg, {icon: 2, time: 500});
+                            layer.msg(data.msg, {icon: 2, time: 2000});
                         }
                     }, 'delete');
                 });
@@ -182,10 +182,10 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     //table.reload('table-user', {});
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -202,10 +202,10 @@
             ,headers: {"Authorization" : "Bearer " + config.getToken().access_token}
             ,done: function(data){
                 if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     table.reload('user-table', {});
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }
         });
diff --git a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user_form.html b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user_form.html
index fd9033b..df2f2aa 100644
--- a/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user_form.html
+++ b/kidgrow-web/kidgrow-web-hospital/src/main/resources/static/pages/system/user_form.html
@@ -77,7 +77,7 @@
                     formSelects.value('roleId', rds);
                 }
             } else {
-                layer.msg('获取角色失败', {icon: 2, time: 500});
+                layer.msg('获取角色失败', {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -87,10 +87,10 @@
             admin.req('api-user/users/saveOrUpdate', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     admin.finishPopupCenter();
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, "POST");
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/baidu-map/MarkerClusterer.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/baidu-map/MarkerClusterer.js
index b7bbd35..7d9d330 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/baidu-map/MarkerClusterer.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/baidu-map/MarkerClusterer.js
@@ -593,8 +593,6 @@
         var center = this._center;
         this._clusterMarker.addEventListener("click", function(event){
             //这个方法容易造成晃动
-            //thatMap.setViewport(thatBounds);
-            //console.log(center);
             var zoom = thatMap.getZoom();
             zoom = zoom > 14 ? zoom : 14;
             thatMap.setZoom(zoom);
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/q.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/q.js
index a809434..b235b20 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/q.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/assets/libs/q.js
@@ -85,7 +85,6 @@
             return this
         },
         V: function () {
-            console.log('q.js <https://github.com/itorr/q.js> 2014/12/28');
             return this
         },
         go: function (u) {
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/login.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/login.html
index eaef002..d322427 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/login.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/login.html
@@ -100,18 +100,17 @@
                 success: function (data) {
                     if (data.code === 0) {
                         config.putToken(data.data);
-                        layer.msg('登录成功', {icon: 1, time: 500}, function () {
+                        layer.msg('登录成功', {icon: 1, time: 2000}, function () {
                             location.replace('./');
                         });
                     } else {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, {icon: 5, time: 500});
+                        layer.msg(data.msg, {icon: 5, time: 2000});
                     }
                 },
                 error: function (xhr) {
-                    //console.log(xhr)
                     layer.closeAll('loading');
-                    layer.msg(xhr.responseJSON.msg, {icon: 5, time: 500});
+                    layer.msg(xhr.responseJSON.msg, {icon: 5, time: 2000});
                 }
             });
             //阻止表单跳转
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/admin.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/admin.js
index 001500a..46ba519 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/admin.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/admin.js
@@ -145,7 +145,6 @@
             };
             //发送同步ajax请求
             param.async = false;
-            //console.log(param);
             $.ajax(param);
         },
         // 判断是否有权限
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/area.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/area.js
index 96a4705..23809b9 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/area.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/area.js
@@ -33,9 +33,9 @@
                     clientsAll = data.data;
                     if (clientsAll.length > 0) {
                         area.areasClear(domId,levelType);
-                        if(clientsAll[0].areaLeveltype==2)
+                        if(clientsAll[0].areaLeveltype==3)
                         {
-                            admin.putTempData("t_city",clientsAll);
+                            admin.putTempData("t_area",clientsAll);
                         }
                         $.each(clientsAll, function (index, item) {
                             if (selectValue == item.areaName) { selected = "selected='selected'"; }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/config.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/config.js
index f0447e7..069b35e 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/config.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/config.js
@@ -3,7 +3,8 @@
      * 用于动态切换环境地址
      */
     //默认地址
-    var defUrl = 'http://182.92.99.224:8887/';
+    var defUrl = 'http://127.0.0.1:8888/';
+    //var defUrl = 'http://182.92.99.224:8887/';
     //当前环境的api地址
     var apiUrl;
     try{
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/index.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/index.js
index 300d258..4b04179 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/index.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/index.js
@@ -38,9 +38,6 @@
         // 渲染左侧菜单栏
         initLeftNav: function () {
             admin.req('api-user/menus/current', {}, function (data) {
-                //data = data[1];
-                // console.log(data);
-                // debugger;
                 admin.putTempData("menus", data.data);
                 var menus = data.data;
                 // 判断权限
@@ -192,11 +189,8 @@
             layer.load(2);
             admin.req('api-user/users/current', {}, function (data) {
                 layer.closeAll('loading');
-                // debugger;
-                // console.log(data);
                 if (data && data.code === 0) {
                     let user = data.data;
-                    // debugger;
                     config.putUser(user);
                     admin.putTempData("permissions", user.permissions);
                     admin.putTempData("organization",user.organizations[user.organizations.length-1]);
@@ -216,9 +210,6 @@
                             location.replace('login.html');
                         })
                     }
-
-
-
                 }
             }, 'GET');
         },
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/treetable-lay/treetable.js b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/treetable-lay/treetable.js
index 35efdcf..bfe06a4 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/treetable-lay/treetable.js
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/module/treetable-lay/treetable.js
@@ -43,11 +43,11 @@
                                 mData[len - 1].isParent = true;
                             }
                             mData.push(data[i]);
-                            sort(data[i].id, data);
+                            sort(""+data[i].id, data);
                         }
                     }
                 };
-                sort(param.treeSpid, tNodes);
+                sort(""+param.treeSpid, tNodes);
 
                 // 重写参数
                 param.url = undefined;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/attestation/app.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/attestation/app.html
index 88722bf..9544b6a 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/attestation/app.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/attestation/app.html
@@ -112,7 +112,7 @@
                 layer.load(2);
                 admin.req('api-uaa/clients/' + obj.data.id, {}, function (data) {
                     layer.closeAll('loading');
-                    layer.msg('成功', {icon: 1, time: 500});
+                    layer.msg('成功', {icon: 1, time: 2000});
                     obj.del();
                 }, 'DELETE');
             });
@@ -157,13 +157,12 @@
             layer.load(2);
             admin.req('api-uaa/clients/saveOrUpdate', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
-                console.log(data);
                 if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     table.reload('app-table');
                     layer.closeAll('page');
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, $('#app-form').attr('method'));
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/files/files.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/files/files.html
index a294603..5201e79 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/files/files.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/files/files.html
@@ -87,10 +87,10 @@
                 admin.req('api-file/files/' + obj.data.id, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.resp_code == 0) {
-                        layer.msg(data.resp_msg, {icon: 1, time: 500});
+                        layer.msg(data.resp_msg, {icon: 1, time: 2000});
                         obj.del();
                     } else {
-                        layer.msg(data.resp_msg, {icon: 2, time: 500});
+                        layer.msg(data.resp_msg, {icon: 2, time: 2000});
                     }
                 }, 'DELETE');
             });
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/header.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/header.html
index a7dd0cd..ff1c06e 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/header.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/header.html
@@ -15,19 +15,20 @@
     <!-- <li class="layui-nav-item" lay-unselect>
         <a id="btnMessage" title="消息"><i class="layui-icon layui-icon-notice"></i></a>
     </li> -->
-    <li class="layui-nav-item" lay-unselect>
-        <a  title="消息"><i class="layui-icon layui-icon-notice" id="organization">1231</i></a>
-    </li>
     <li class="layui-nav-item layui-hide-xs" lay-unselect>
         <a ew-event="fullScreen" title="全屏"><i class="layui-icon layui-icon-screen-full"></i></a>
     </li>
     <li class="layui-nav-item" lay-unselect>
         <a>
-            <!--<img src="assets/images/head.png" class="layui-nav-img">-->
             <img p-bind="src:{{headImgUrl}}"  class="layui-nav-img">
             <!--add by owen 修复页面显示问题 -->
             <!--<cite>{{username}}</cite>-->
-            <cite>{{nickname}}</cite>
+            <cite> 
+                {{organizations[1].orgName}}
+            </cite>
+            <cite>
+                {{username}}
+            </cite>
         </a>
         <dl class="layui-nav-child">
             <dd lay-unselect>
@@ -42,17 +43,4 @@
             </dd>
         </dl>
     </li>
-<!--    <li class="layui-nav-item" lay-unselect>-->
-<!--        <a ew-event="theme" title="主题"><i class="layui-icon layui-icon-more-vertical"></i></a>-->
-<!--    </li>-->
-</ul>
-<script>
-     layui.use([ 'admin'], function () {
-        var admin = layui.admin
-         , $ = layui.jquery;
-        var organization=admin.getTempData("organization");
-      $("#organization").html("wer");
-      console.log($("#organization").html())
-     })
-   
-</script>
\ No newline at end of file
+</ul>
\ No newline at end of file
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/businessRecords.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/businessRecords.html
index 9b279da..bfa2894 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/businessRecords.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/businessRecords.html
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">
-            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="按内容模糊查找..." />&emsp;
+            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="按内容模糊查找" />&emsp;
             <input type="text" class="layui-input search-input" id="test1" placeholder="开始时间"> 至 <input type="text"
                 class="layui-input search-input" id="test2"  placeholder="结束时间"> &emsp;
             <button id="app-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html
index b22a17e..9714231 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/company.html
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">
-            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="请输入公司名称" />&emsp;
+            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="按公司名称" />&emsp;
             <button id="app-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
             <button id="user-btn-add" class="layui-btn icon-btn permissions" permissions="syscompany-edit"><i class="layui-icon">&#xe654;</i>添加</button>
         </div>
@@ -141,7 +141,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, { icon: 2, time: 500 });
+                layer.msg(data.msg, { icon: 2, time: 2000 });
             }
         }, 'Post');
 
@@ -188,10 +188,10 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     table.reload('table-user', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -210,14 +210,9 @@
                     let selected = false;
                     clientsAll = data.data;
                     sheng = data.data;
-
-                    console.log(checkValue);
                     $.each(data.data, function (index, item) {
-                        // console.log( item.areaName);
                         if (checkValue == item.areaName) {
                             selected = true;
-                            console.log(item.areaName);
-                            console.log(selected);
                         } else {
                             selected = false;
                         }
@@ -226,7 +221,7 @@
                     })
                     form.render('select', id);
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'GET');
         }
@@ -286,7 +281,7 @@
                     })
                     form.render();
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'GET');
         }
@@ -312,7 +307,7 @@
                     })
                     form.render();
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'GET');
         }
@@ -335,7 +330,7 @@
                     })
                     form.render();
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'GET');
         }
@@ -354,10 +349,10 @@
                     admin.req('api-user/syscompany/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
                         if (data.code == 0) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             table.reload('app-table', {});
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'delete');
                 });
@@ -442,13 +437,11 @@
                         }
                         var shiId = "";
 
-                        console.log(shi_name)
                         $.each(shi_name, function (index, item) {
                             if (data.companyCity === item.areaName) {
                                 shiId = item.id;
                             }
                         })
-                        console.log(data.companyArea)
                         if (data.companyArea) {
                             getShi_and_xian(shiId, "xian", data.companyArea)
                         }
@@ -468,7 +461,7 @@
                     layer.closeAll();
                     table.reload('app-table', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, "POST");
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
index 1f48a49..9364a57 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/contract.html
@@ -10,7 +10,7 @@
         <div class="layui-form toolbar">
             <div class="layui-form-item">
                 <div class="layui-inline" style="margin-bottom: -25px;">&emsp;
-            <input id="hospital-search-value" class="layui-input  search-input" type="text" placeholder="按医院名..." autocomplete="off" width="400px" /></div>&emsp;
+            <input id="hospital-search-value" class="layui-input  search-input" type="text" placeholder="按医院名" autocomplete="off" width="400px" /></div>&emsp;
             <button id="contract-btn-search" class="layui-btn icon-btn permissions" permissions="contract-list" style="margin-bottom: -25px;"><i class="layui-icon">&#xe615;</i>搜索</button>
         </div>
         <table class="layui-table" id="contract-table" lay-filter="contract-table"></table>
@@ -99,7 +99,7 @@
                     layer.load(2);
                     admin.req('api-opration/contract/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, { icon: 1, time: 500 }, function () {
+                        layer.msg(data.msg, { icon: 1, time: 2000 }, function () {
                             renderTable();
                         });
                         obj.del();
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html
index fcaee07..2095325 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/dataNeed.html
@@ -8,9 +8,9 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">
-            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="输入医生姓名" />&emsp;
-            <input type="text" class="layui-input search-input" id="test1" placeholder="请输入开始时间" > 至 <input type="text"
-                class="layui-input search-input" id="test2" placeholder="请输入结束时间" > &emsp;
+            <input id="app-edit-search" class="layui-input search-input" type="text" placeholder="按医生姓名" />&emsp;
+            <input type="text" class="layui-input search-input" id="test1" placeholder="开始时间" > 至 <input type="text"
+                class="layui-input search-input" id="test2" placeholder="结束时间" > &emsp;
             <button id="app-btn-search" class="layui-btn icon-btn permissions"  permissions="diagnostic-get"><i class="layui-icon">&#xe615;</i>搜索</button>
             <!-- <button id="app-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button> -->
             <button id="app-btn-export" class="layui-btn icon-btn permissions"  permissions="dataneed-export"><i class="layui-icon">&#xe654;</i>导出</button>
@@ -196,8 +196,6 @@
         });
         //更新上传的状态
         var updateEnabled = function (dataFile, enabled) {
-            console.log($("#upload-id").val())
-
             admin.req('api-opration/dataneed/updateEnabled', {
                 id: $("#upload-id").val(),
                 enabled: enabled,
@@ -208,7 +206,7 @@
                     layer.closeAll();
                     table.reload('app-table', { where: {} });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'GET');
         }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html
index 7ba3270..f00c1aa 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html
@@ -10,14 +10,14 @@
         <div class="layui-form toolbar">
             <div class="layui-form-item">
                 <div class="layui-inline" style="margin-bottom: -25px;">
-                    <input id="doctorTel" class="layui-input search-input" type="text" placeholder="按手机号..." />&emsp;
-                    <input id="doctorName" class="layui-input search-input" type="text" placeholder="按医生名..." />&emsp;
+                    <input id="doctorTel" class="layui-input search-input" type="text" placeholder="按手机号" />&emsp;
+                    <input id="doctorName" class="layui-input search-input" type="text" placeholder="按医生名" />&emsp;
                     <select id="doctorState" lay-filter="role_clients">
                         <option value="">-医院状态-</option>
                         <option value="true">正常</option>
                         <option value="false">试用</option>
                     </select>&emsp;
-                    <input name="hospitalName" id="hospitalName-seach" placeholder="请输入医院名称" type="text"
+                    <input name="hospitalName" id="hospitalName-seach" placeholder="按医院名称" type="text"
                         class="layui-input search-input" maxlength="50" autocomplete="off" />&emsp;
                 </div>
                 <button id="app-btn-search" class="layui-btn icon-btn permissions" layt="abc"
@@ -281,7 +281,7 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'Post');
@@ -299,12 +299,6 @@
 
             // 修改company状态
             var updata_enable = function (obj) {
-                
-                // alert('确定审核通过吗',{icon: 3, title:'提示'}, function(index){
-                //     console.log("111111111111111111111",index)
-                //     layer.close(index);
-                // });
-              
                 layer.confirm('确定审核通过吗?', function (i) {
                     admin.req('api-user/sysdoctor/enable', JSON.stringify({
                         id: obj.id,
@@ -314,13 +308,13 @@
                         if (data.code == 0) {
                             layer.msg(data.msg, {
                                 icon: 1,
-                                time: 500
+                                time: 2000
                             });
                             parent.layui.table.reload('app-table', {});
                         } else {
                             layer.msg(data.msg, {
                                 icon: 2,
-                                time: 500
+                                time: 2000
                             });
                             $(obj.elem).prop('checked', !obj.elem.checked);
                             form.render('checkbox');
@@ -351,7 +345,7 @@
                     } else {
                         layer.msg(data.msg, {
                             icon: 2,
-                            time: 500
+                            time: 2000
                         });
                     }
                 }, 'Post');
@@ -364,14 +358,13 @@
                         user = data.data;
                         $.each(data.data, function (index, item) {
                             //往下拉菜单里添加元素
-                            console.log(item.nickname)
                             $('#serverUserId-add').append(new Option(item.nickname, item.id,
                                 false, false));
                         })
                     } else {
                         layer.msg(data.msg, {
                             icon: 2,
-                            time: 500
+                            time: 2000
                         });
                     }
                 }, 'get');
@@ -546,12 +539,12 @@
                             if (data.code == 0) {
                                 layer.msg(data.msg, {
                                     icon: 1,
-                                    time: 500
+                                    time: 2000
                                 });
                             } else {
                                 layer.msg(data.msg, {
                                     icon: 2,
-                                    time: 500
+                                    time: 2000
                                 });
                             }
                         }, 'PUT');
@@ -567,13 +560,13 @@
                             if (data.code == 0) {
                                 layer.msg(data.msg, {
                                     icon: 1,
-                                    time: 500
+                                    time: 2000
                                 });
                                 table.reload('app-table', {});
                             } else {
                                 layer.msg(data.msg, {
                                     icon: 2,
-                                    time: 500
+                                    time: 2000
                                 });
                             }
                         }, 'delete');
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html
index de7ca86..10d0e88 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctorTemplete.html
@@ -19,7 +19,7 @@
                 <option value="0">公开-</option>
                 <option value="1">私有</option>
             </select>
-            <input name="templeteTitle" id="templeteTitle" placeholder="请输入标题名称" type="text"
+            <input name="templeteTitle" id="templeteTitle" placeholder="按标题" type="text"
                 class="layui-input search-input" maxlength="20" />
             <button id="app-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
             <button id="docto-templete-btn-add" class="layui-btn icon-btn permissions" permissions="doctortemplete-edit"><i class="layui-icon">&#xe654;</i>添加</button>
@@ -155,10 +155,10 @@
                     admin.req('api-opration/doctortemplete/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
                         if (data.code == 0) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             table.reload('app-table', {});
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'delete');
                 });
@@ -182,10 +182,10 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     table.reload('app-table', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -200,15 +200,14 @@
             }else if (data.field.publicType==0){
                 data.field.publicType=false;
             }
-            console.log(data.field.publicType)
             admin.req('api-opration/doctortemplete', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    // layer.msg(data.msg, { icon: 1, time: 500 });
+                    // layer.msg(data.msg, { icon: 1, time: 2000 });
                     layer.closeAll();
                     table.reload('app-table', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, "POST");
             return false;
@@ -231,7 +230,6 @@
                     $('#app-form')[0].reset();
                     $('#app-form').attr('method', 'POST');
                     if (data) {
-                        console.log(data.publicType == true ? 1 : 0);
                         if(index==1){
                             $('#sure').hide();
                         }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor_form.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor_form.html
index 044de0d..c741722 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor_form.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor_form.html
@@ -248,7 +248,7 @@
                 } else {
                     layer.msg('获取角色失败', {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'GET');
@@ -264,13 +264,13 @@
                         $("#" + username_id).val("")
                         layer.msg("该登录帐号已经使用", {
                             icon: 2,
-                            time: 500
+                            time: 2000
                         })
                     }
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'post');
@@ -353,8 +353,6 @@
             }
             // data.field.hospitalId = ""+data.field.hospitalId;
             data.field.roleId = null;
-            debugger
-            console.log(data.field, "data.fielddata.fielddata.fielddata.field")
             admin.req('api-user/sysdoctor', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
@@ -407,7 +405,7 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'get');
@@ -415,7 +413,7 @@
         //职称添加数据
         var getZhiCheng = function () {
             admin.req('api-user/sysdictionaries/findAll', JSON.stringify({
-                dictionariesClassId: "1248150699682988034"
+                dictionariesClassId: "DOCTOR_RANK"
             }), function (data) {
                 layer.closeAll('loading');
                 if (0 === data.code) {
@@ -434,7 +432,7 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'Post');
@@ -453,7 +451,7 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'get');
@@ -527,7 +525,6 @@
         var doctor = admin.getTempData('t_doctor');
         $('#app-form-add').attr('method', 'POST');
         if (doctor) {
-            console.log("doctordoctordoctor",doctor);
             //重新装载科室
             getdepartment(doctor.hospitalId);
             //获取职称的
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/feedback.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/feedback.html
index 14462d0..526b5ed 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/feedback.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/feedback.html
@@ -8,11 +8,11 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">&emsp;
-            <input id="user-search-value" class="layui-input search-input" type="text" placeholder="输入医生姓名" />&emsp;
-            <input type="text" name="date" id="datebegin" lay-verify="date" placeholder="请输入开始时间" autocomplete="off"
+            <input id="user-search-value" class="layui-input search-input" type="text" placeholder="按医生姓名" />&emsp;
+            <input type="text" name="date" id="datebegin" lay-verify="date" placeholder="开始时间" autocomplete="off"
                 class="layui-input search-input">
             至
-            <input type="text" name="date" id="dateend" lay-verify="date" placeholder="请输入结束时间" autocomplete="off"
+            <input type="text" name="date" id="dateend" lay-verify="date" placeholder="结束时间" autocomplete="off"
                 class="layui-input search-input"> &emsp;
             <button id="user-btn-search" class="layui-btn icon-btn permissioins" permissioins="feedback-list"><i class="layui-icon">&#xe615;</i>搜索</button>
         </div>
@@ -84,9 +84,9 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -101,7 +101,7 @@
                     layer.load(2);
                     admin.req('api-opration/sysfeedback/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, { icon: 1, time: 500 }, function () {
+                        layer.msg(data.msg, { icon: 1, time: 2000 }, function () {
                             tableLoad();
                         });
                         obj.del();
@@ -126,7 +126,7 @@
                             });
                         }
                         else {
-                            layer.msg('未找到相关数据', { icon: 1, time: 500 });
+                            layer.msg('未找到相关数据', { icon: 1, time: 2000 });
                         }
                     },
                     beforeSend: function (xhr) {
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
index 48cfcc4..d69a32d 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital.html
@@ -27,17 +27,17 @@
                 <option value="1">-是-</option>
                 <option value="0">-否-</option>
             </select>
-             &emsp; -->
+             &emsp;
             <select id="hospitalstate" placeholder="选择医院状态" lay-filter="hospitalstate">
                 <option value="">-医院状态-</option>
                 <option value="0">试用</option>
                 <option value="1">正式</option>
-            </select>
+            </select> -->
             &emsp;
             <input id="hosName" class="layui-input search-input" type="text" placeholder="按医院名" />&emsp;
             <button id="hospita-btn-search" class="layui-btn icon-btn"><i
                     class="layui-icon permissions" permissions="hospital-get">&#xe615;</i>搜索</button>&emsp;
-            <button id="hospital-btn-add" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="hospital-save">&#xe654;</i>添加医院</button>
+            <button id="hospital-btn-add" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="hospital-save">&#xe654;</i>添加医院/科室</button>
         </div>
 
         <!-- 数据表格 -->
@@ -76,21 +76,21 @@
             page: true,
             cols: [[
                 { field: 'hospitalName', width: 250, title: '医院名称', fixed: 'left' },
-                { field: 'departmentName', width: 100, title: '科室', fixed: 'left' },
+                { field: 'departmentName', width: 100, title: '科室/部门', fixed: 'left' },
                 {
-                    field: 'hospitalArea', width: 250, title: '所在地区', templet: function (d) {
+                    field: 'hospitalArea', width: 360, title: '所在地区', templet: function (d) {
                         return ((d.hospitalProvince == null) ? "" : d.hospitalProvince) + " "
                             + ((d.hospitalCity == null) ? "" : d.hospitalCity) + " " +
                             ((d.hospitalArea == null) ? "" : d.hospitalArea)
                     }
                 },
                 { field: 'hospitalLink', width: 100, title: '联系人' },
-                { field: 'hospitalTel', width: 100, title: '联系方式' },
-                {
-                    field: 'enabled', width: 80,  title: '状态', templet: function (d) {
-                        return d.hospitalState == 0 ? "试用" : "正式"
-                    }
-                },
+                { field: 'hospitalTel', width: 150, title: '联系方式' },
+                // {
+                //     field: 'enabled', width: 80,  title: '状态', templet: function (d) {
+                //         return d.hospitalState == 0 ? "试用" : "正式"
+                //     }
+                // },
                 {
                     field: 'isScreen', width: 80,  title: '筛查', templet: function (d) {
                         return d.isScreen ? "是" : "否"
@@ -101,11 +101,11 @@
                 // } },
 
                 { field: 'serverUserName', width: 100, title: '服务人员' },
-                { field: 'createTime', width: 120,  title: '创建时间', templet:function (d) {
+                { field: 'createTime', width: 150,  title: '创建时间', templet:function (d) {
                         return new Date(d.createTime).dateFormat("yyyy-MM-dd hh:mm");
                     } },
                 { field: 'enabled', width: 100, templet: '#hospital-tpl-state',  title: '状态' },
-                { field: 'hospitalId', width: 300, align: 'center', toolbar: '#businessRecords-table-bar', title: '操作', fixed: 'right' }
+                { field: 'hospitalId', width: 200, align: 'center', toolbar: '#businessRecords-table-bar', title: '操作', fixed: 'right' }
             ]],
             done:function(res){
                 permissionsInput(res,config);
@@ -126,7 +126,7 @@
                     };
                     admin.req('api-user/syshospital/delete', whereModel, function (data) {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, { icon: 1, time: 500 }, function () {
+                        layer.msg(data.msg, { icon: 1, time: 2000 }, function () {
                             $('#hospita-btn-search').click();
                         });
                         obj.del();
@@ -208,9 +208,9 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
index 46041b2..f5dbf53 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/hospital_form_base.html
@@ -216,7 +216,7 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
 
@@ -251,7 +251,7 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
 
@@ -266,8 +266,10 @@
         //回显组织数据
         let edithospitalData = admin.getTempData('t_hospital');
         var hosIdForEdit = "";
+        var departmentId = "";
         if (edithospitalData != null) {
             hosIdForEdit = edithospitalData.hospitalId;
+            departmentId = edithospitalData.departmentId;
         }
         //装载销售人员 服务人员数据
         loadServerUser();
@@ -277,14 +279,18 @@
         form.on("select(hospitalProvince)", function (data) {
             area.areasClear("#hospitalArea", 3);
             area.areaData("#hospitalCity", 2, data.value, "");
+            defaultValData();
         });
         //装载区县数据
         form.on("select(hospitalCity)", function (data) {
             area.areaData("#hospitalArea", 3, data.value, "");
+            defaultValData();
+        });
+        form.on("select(hospitalArea)", function (data) {
             //区号,金纬度自动赋值
-            var cityDataFor = admin.getTempData("t_city");
-            if (cityDataFor != null) {
-                cityDataFor.forEach(function (item) {
+            var areaDataFor = admin.getTempData("t_area");
+            if (areaDataFor != null) {
+                areaDataFor.forEach(function (item) {
                     if (data.value == item.id) {
                         $("#areaCode").val(item.areaCitycode);
                         $("#longitude").val(item.areaLng);
@@ -328,10 +334,10 @@
                             serverUserTel: $("#serverUserTel").val(),
                             departmentName: $("#departmentName").val(),
                             id: $("#departmentId").val(),
-                            orgId: ''+$("#departmentOrgId").val(),
-                            updateUserId: data.data.orgId,
-                            hospitalId: data.data.id,
-                            saleUserId: $("#saleUserName").val(),
+                            orgId: '' + $("#departmentOrgId").val(),
+                            updateUserId: '' + data.data.orgId,
+                            hospitalId: '' + data.data.id,
+                            saleUserId: '' + $("#saleUserName").val(),
                             saleUserName: $("#saleUserName option:selected").text(),
                             saleUserTel: $("#saleUserTel").val(),
                             accountsCount: $("#accountsCount").val()
@@ -347,7 +353,7 @@
                                         admin.finishPopupCenter();
                                     });
                                     admin.putTempData("t_hospital", "");
-                                    admin.putTempData("t_city", "");
+                                    admin.putTempData("t_area", "");
                                 } else {
                                     layer.msg(data.msg, {
                                         icon: 2,
@@ -378,6 +384,7 @@
             template_val: '{{d.hospitalName}}', //选择后文本框显示的数据字段
             template_txt: "<div class='layui-table-cell'>{{d.hospitalName}}</div>", //下拉列表模板
             onselect: function (resp) {
+                departmentId = "";
                 loadDatas(resp.id);
             }
         });
@@ -429,54 +436,59 @@
                         //装载资质 类型  
                         $("#hospitalQualifiedName").val(hosData.hospitalQualifiedId);
                         $("#hospitalTypeName").val(hosData.hospitalTypeId);
+                        if (!strUtil.isEmpty(departmentId)) {
+                            //装载科室数据
+                            admin.req('api-user/sysdepartment', {
+                                id: departmentId,
+                                isDel: 0,
+                                page: 1,
+                                limit: 20
+                            }, function (data) {
+                                if (data.code == 0) {
+                                    let departData = data.data.data;
+                                    if (departData.length > 0) {
+                                        if (departData.length > 1) {
+                                            layer.msg("该医院下有多个科室,默认显示第一个", {
+                                                icon: 1,
+                                                time: 2000
+                                            });
+                                        }
 
-                        //装载科室数据
-                        admin.req('api-user/sysdepartment', {
-                            hospitalId: hosId,
-                            isDel: 0,
-                            page: 1,
-                            limit: 20
-                        }, function (data) {
-                            if (data.code == 0) {
-                                let departData = data.data.data;
-                                if (departData.length > 0) {
-                                    if (departData.length > 1) {
-                                        layer.msg("该医院下有多个科室,默认显示第一个", {
-                                            icon: 1,
-                                            time: 2000
-                                        });
+                                        $("#serverUserId").val(departData[0].serverUserId);
+                                        $('#serverUserName').val(departData[0]
+                                            .serverUserId);
+
+                                        $("#departmentName").val(departData[0]
+                                            .departmentName);
+                                        $("#departmentId").val(departData[0].id);
+                                        $("#departmentOrgId").val(departData[0].orgId);
+                                        $("#saleUserId").val(departData[0].saleUserId);
+                                        $("#accountsCount").val(departData[0]
+                                            .accountsCount);
+                                        $('#saleUserName').val(departData[0].saleUserId);
+
+                                        if (hosIdForEdit != "") {
+                                            $("#serverUserTel").val(departData[0]
+                                                .serverUserTel);
+                                            $("#saleUserTel").val(departData[0]
+                                                .saleUserTel);
+                                        }
+                                        form.render();
                                     }
-
-                                    $("#serverUserId").val(departData[0].serverUserId);
-                                    $('#serverUserName').val(departData[0].serverUserId);
-
-                                    $("#departmentName").val(departData[0].departmentName);
-                                    $("#departmentId").val(departData[0].id);
-                                    $("#departmentOrgId").val(departData[0].orgId);
-                                    $("#saleUserId").val(departData[0].saleUserId);
-                                    $("#accountsCount").val(departData[0].accountsCount);
-                                    $('#saleUserName').val(departData[0].saleUserId);
-
-                                    if (hosIdForEdit != "") {
-                                        $("#serverUserTel").val(departData[0]
-                                            .serverUserTel);
-                                        $("#saleUserTel").val(departData[0].saleUserTel);
-                                    }
-                                    form.render();
+                                } else {
+                                    layer.msg(data.msg, {
+                                        icon: 2,
+                                        time: 2000
+                                    });
                                 }
-                            } else {
-                                layer.msg(data.msg, {
-                                    icon: 2,
-                                    time: 500
-                                }); 
-                            }
-                        }, 'get');
-                        form.render();
+                            }, 'get');
+                        }
 
+                        form.render();
                     } else {
                         layer.msg(data.msg, {
                             icon: 2,
-                            time: 500
+                            time: 2000
                         });
                     }
                 }, 'get');
@@ -515,10 +527,16 @@
                 } else {
                     layer.msg(data.msg, {
                         icon: 2,
-                        time: 500
+                        time: 2000
                     });
                 }
             }, 'get')
         }
+        //重置区号 金纬度
+        var defaultValData = function () {
+            $("#areaCode").val("");
+            $("#longitude").val("");
+            $("#latitude").val("");
+        }
     });
 </script>
\ No newline at end of file
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product.html
index 74bf61a..ab5536d 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product.html
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">&emsp;
-            <input id="product-search-value" class="layui-input search-input" type="text" placeholder="输入产品名" />&emsp;
+            <input id="product-search-value" class="layui-input search-input" type="text" placeholder="按产品名" />&emsp;
             <button id="product-btn-search" class="layui-btn icon-btn"><i class="layui-icon permissions"
                     permissions="product-list">&#xe615;</i>搜索</button>
             <button id="product-btn-add" class="layui-btn icon-btn permissions" permissions="product-edit"><i
@@ -75,7 +75,7 @@
                     { field: 'enabled', width: 150, templet: '#product-tpl-state', sort: true, title: '状态' },
                     {
                         field: 'createTime', width: 200, sort: true, title: '创建时间', templet: function (d) {
-                            return new Date(d.createTime).dateFormat("yyyy-MM-dd HH:mm");
+                            return new Date(d.createTime).dateFormat("yyyy-MM-dd hh:mm");
                         }
                     },
                     { align: 'center', width: 100, toolbar: '#product-table-bar', title: '操作' }
@@ -96,9 +96,9 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -113,7 +113,7 @@
                     layer.load(2);
                     admin.req('api-opration/product/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, { icon: 1, time: 500 }, function () {
+                        layer.msg(data.msg, { icon: 1, time: 2000 }, function () {
 
                             renderTable();
                         });
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product_form.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product_form.html
index 4bdabe8..786b527 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product_form.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/product_form.html
@@ -78,7 +78,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, { icon: 2, time: 500 });
+                layer.msg(data.msg, { icon: 2, time: 2000 });
             }
         }, 'GET');
         // 表单提交事件
@@ -87,11 +87,11 @@
             admin.req('api-opration/product', JSON.stringify(data.field), function (data) {
                 if (data.code === 0) {
                     layer.closeAll('loading');
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     admin.finishPopupCenter();
                 } else {
                     layer.closeAll('loading');
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, $('#product-form').attr('method'));
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/productdetail.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/productdetail.html
index 5cc539d..a393c76 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/productdetail.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/productdetail.html
@@ -10,8 +10,8 @@
         <div class="layui-form toolbar">&emsp;
             <div  class="layui-col-sm10">
                 <div class="layui-col-sm4">
-                    <input type="text" class="layui-input search-input" id="startTime" placeholder="yyyy-MM-dd"> 至 <input type="text"
-                    class="layui-input search-input" id="endTime" placeholder="yyyy-MM-dd"> &emsp;
+                    <input type="text" class="layui-input search-input" id="startTime" placeholder="开始时间"> 至 <input type="text"
+                    class="layui-input search-input" id="endTime" placeholder="结束时间"> &emsp;
                 </div>
                 <div class="layui-col-sm2">
                     <input id="product-search-value" class="layui-input search-input" type="text" placeholder="按产品名" />&emsp;
@@ -95,7 +95,7 @@
                     // { field: 'createTime', width: 160, sort: true, title: '创建时间',templet:function(d){
                     //     return new Date(d.createTime).dateFormat("yyyy/MM/dd hh:mm:ss");
                     // } },
-                    { field: 'createTime', width: 250, sort: true, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd HH:mm')}}</div>" },
+                    { field: 'createTime', width: 200, sort: true, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd HH:mm')}}</div>" },
                     { align: 'center', width: 100, toolbar: '#product-table-bar', title: '操作' }
                 ]]
             });
@@ -109,7 +109,7 @@
                     layer.load(2);
                     admin.req('api-opration/productorderrecord/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
-                        layer.msg(data.msg, { icon: 1, time: 500 }, function () {
+                        layer.msg(data.msg, { icon: 1, time: 2000 }, function () {
                             renderTable();
                         });
                         obj.del();
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
index c5fc16b..e07c53b 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/recharge.html
@@ -413,6 +413,7 @@
                                     };
                                     listDetailData.push(detailData);
                                 })
+                                
                                 if (listDetailData.length > 0) {
                                     //提交订单数据
                                     admin.req('api-opration/productorderdetail/saveall', JSON.stringify(listDetailData), function (data) {
@@ -420,7 +421,7 @@
                                         if (data.code === 0) {
                                             //现将临时数据清理
                                             admin.putTempData("t_tempProduct", "");
-                                            layer.msg(data.msg, { icon: 1, time: 1000 }, function () {
+                                            layer.msg(data.msg, { icon: 1, time: 20000 }, function () {
                                                 admin.finishPopupCenter();
                                             });
                                         }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysOrganization.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysOrganization.html
index 91be0df..9d085e2 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysOrganization.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysOrganization.html
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">
-            <input id="orgName-search" class="layui-input search-input" type="text" placeholder="请输入名称" />&emsp;
+            <input id="orgName-search" class="layui-input search-input" type="text" placeholder="按名称" />&emsp;
             <button id="app-btn-search" class="layui-btn icon-btn permissions" permissions="sysorganization-list"><i class="layui-icon">&#xe615;</i>搜索</button>
             <!-- <button id="organization-add" class="layui-btn icon-btn permissions" permissions="sysorganization-edit"><i class="layui-icon">&#xe654;</i>添加</button> -->
         </div>
@@ -20,8 +20,8 @@
 
 <!-- 表格操作列 -->
 <script type="text/html" id="organization-table-bar">
-    <a class="layui-btn layui-btn-primary layui-btn-xs permissions" permissions="sysorganization-edit" lay-event="edit">修改</a>
-    <a class="layui-btn layui-btn-danger layui-btn-xs permissions" permissions="sysorganization-del" lay-event="del">删除</a>
+    <!-- <a class="layui-btn layui-btn-primary layui-btn-xs permissions" permissions="sysorganization-edit" lay-event="edit">修改</a>
+    <a class="layui-btn layui-btn-danger layui-btn-xs permissions" permissions="sysorganization-del" lay-event="del">删除</a> -->
 </script>
 
 <!-- 表格状态列 -->
@@ -147,8 +147,8 @@
                             }
                         }
                     },
-                    { field: 'enabled', align: 'right', sort: true, templet: '#organization-tpl-state', title: '状态' },
-                    { toolbar: '#organization-table-bar', align: 'right', align: 'center', title: '操作' }
+                    // { field: 'enabled', align: 'right', sort: true, templet: '#organization-tpl-state', title: '状态' },
+                    // { toolbar: '#organization-table-bar', align: 'right', align: 'center', title: '操作' }
                 ]],
                 done: function (res) {
                     permissionsInput(res,config);
@@ -164,16 +164,16 @@
             if (layEvent === 'edit') { // 查看详情
                 showEditModel(data);
             } else if (layEvent === 'del') {
-                layer.confirm('确定删除此菜单吗?', function () {
+                layer.confirm('确定删除此组织吗?', function () {
                     layer.load(2);
                     let tenantId = $('#menu_clients').val();
                     admin.req('api-user/sysorganization/' + obj.data.id + '?tenantId=' + tenantId, {}, function (data) {
                         layer.closeAll('loading');
                         if (0 === data.code) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             renderTable({ tenantId: tenantId });
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'DELETE');
                 });
@@ -189,10 +189,10 @@
                 layer.closeAll('loading');
                 if (data.code == 0) {
 
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     renderTable({ access_token: config.clientId, is_del: 0 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -208,12 +208,12 @@
             admin.req('api-user/sysorganization', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    // layer.msg(data.msg, { icon: 1, time: 500 });
+                    // layer.msg(data.msg, { icon: 1, time: 2000 });
                     layer.closeAll();
                     // treetable.reload('organization-table', {});
                     renderTable({ access_token: config.clientId, is_del: 0 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, "POST");
             return false;
@@ -235,7 +235,7 @@
                 }
             });
             if (keyword !== '' && searchCount === 0) {
-                layer.msg("没有匹配结果", { icon: 5, time: 500 });
+                layer.msg("没有匹配结果", { icon: 5, time: 2000 });
             } else {
                 treetable.expandAll('#organization-table');
             }
@@ -252,7 +252,6 @@
                         { name: '标签邮件', id: 13 }]
                 }];
                 if (0 === data.code) {
-                    console.log(JSON.stringify(data.data))
                     tree({
                         elem: "#orgParentId-tree",
                         nodes: data.data,
@@ -266,7 +265,7 @@
                     });
 
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'get');
         }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysdictionaries.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysdictionaries.html
index b44c3d3..79ecf3f 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysdictionaries.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/sysdictionaries.html
@@ -153,7 +153,6 @@
             }
         });
         function ccc() {
-            console.log(11111111)
         }
         // 删除
         var doDelete = function (obj) {
@@ -163,10 +162,10 @@
                 admin.req('api-user/sysdictionaries/' + obj.id, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.code == 0) {
-                        layer.msg(data.msg, { icon: 1, time: 500 });
+                        layer.msg(data.msg, { icon: 1, time: 2000 });
                         table.reload('app-table', {});
                     } else {
-                        layer.msg(data.msg, { icon: 2, time: 500 });
+                        layer.msg(data.msg, { icon: 2, time: 2000 });
                     }
                 }, 'delete');
             });
@@ -175,22 +174,18 @@
         // 获取应用列表
         var getdata = function () {
             var co = $('#role_clients');
-            console.log(11111111111111);
-            console.log(co);
             admin.req('api-user/sysdictionaries/findAll', JSON.stringify({ dictionariesClassIdIsNull: "str" }), function (data) {
                 layer.closeAll('loading');
                 if (0 === data.code) {
-                    console.log(123132132132132132)
                     let selected = false;
                     clientsAll = data;
                     $.each(data.data, function (index, item) {
                         //往下拉菜单里添加元素
-                        // console.log(JSON.stringify(item))
                         $('#role_clients').append(new Option(item.dictionariesName, item.dictionariesKey, false, selected));
                     })
                     form.render();
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'Post');
         }
@@ -210,10 +205,10 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    // layer.msg(data.msg, { icon: 1, time: 500 });
+                    // layer.msg(data.msg, { icon: 1, time: 2000 });
                     table.reload('app-table', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -264,11 +259,11 @@
             admin.req('api-user/sysdictionaries', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    // layer.msg(data.msg, { icon: 1, time: 500 });
+                    // layer.msg(data.msg, { icon: 1, time: 2000 });
                     layer.closeAll();
                     table.reload('app-table', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, "POST");
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/verifyRecharge.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/verifyRecharge.html
index 1085a63..6c92aa7 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/verifyRecharge.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/verifyRecharge.html
@@ -42,14 +42,6 @@
                     { field: 'hospitalName', width: 300, title: '医院名称' },
                     { field: 'departmentName', width: 100, title: '科室名称' },
                     { field: 'proName', width: 250, title: '产品名称' },
-                    {
-                        field: 'proType', sort: true, align: 'center', width: 80, templet: function (d) {
-                            if (d.proType === 0)
-                                return "试用"
-                            else
-                                return "正式"
-                        }, title: '类型'
-                    },
                     { field: 'ailightCount', width: 150, title: '读片量' },
                     { field: 'recordCount', width: 100, title: '报告量' },
                     {
@@ -86,21 +78,25 @@
 
         // 修改状态
         form.on('switch(product-tpl-state)', function (obj) {
-            layer.load(2);
-            admin.req('api-opration/productorderdetail/updateEnabled', {
+            layer.confirm("确定要通过此试用吗?",{btn: ["确定", "返回"]},function(){
+                admin.req('api-opration/productorderdetail/updateEnabled', {
                 id: obj.elem.value,
                 enabled: obj.elem.checked ? true : false
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
         renderTable();
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
             }, 'GET');
+            },function(){
+                $(obj.elem).prop('checked', !obj.elem.checked);
+                    form.render('checkbox');
+            });
         });
         // 搜索按钮点击事件
         $('#product-btn-search').click(function () {
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager.html
index 66842a6..d7dc44c 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager.html
@@ -102,10 +102,10 @@
                 admin.req('api-search/admin/index?indexName='+obj.data.indexName, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.code == 0) {
-                        layer.msg(data.msg, {icon: 1, time: 500});
+                        layer.msg(data.msg, {icon: 1, time: 2000});
                         obj.del();
                     } else {
-                        layer.msg(data.msg, {icon: 2, time: 500});
+                        layer.msg(data.msg, {icon: 2, time: 2000});
                     }
                 }, 'DELETE');
             });
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_form.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_form.html
index f2de81f..fedee9f 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_form.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_form.html
@@ -48,10 +48,10 @@
             admin.req('api-search/admin/index', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     admin.finishPopupCenter();
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, "POST");
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_view.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_view.html
index b82c996..41f8992 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_view.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/search/index_manager_view.html
@@ -26,7 +26,7 @@
                 if (0 == data.code) {
                     $('#data').html(syntaxHighlight(data.datas));
                 } else {
-                    layer.msg('获取索引信息失败', {icon: 2, time: 500});
+                    layer.msg('获取索引信息失败', {icon: 2, time: 2000});
                 }
             }, 'GET');
         }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus.html
index f19bf0f..241a419 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus.html
@@ -10,7 +10,7 @@
         <div class="layui-form toolbar">
             所属应用:<select id="menu_clients" lay-filter="menu_clients"></select>
             &emsp;搜索:<input id="menus-edit-search" class="layui-input search-input" type="text"
-                placeholder="输入关键字" />&emsp;
+                placeholder="按关键字" />&emsp;
             <button id="menus-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
             <button id="menus-btn-add" class="layui-btn icon-btn permissions" permissions="saveOrUpdate"><i class="layui-icon">&#xe654;</i>添加</button>
             <button id="menus-btn-expand" class="layui-btn">全部展开</button>
@@ -111,7 +111,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, { icon: 2, time: 500 });
+                layer.msg(data.msg, { icon: 2, time: 2000 });
             }
         }, 'GET');
 
@@ -124,9 +124,9 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -147,10 +147,10 @@
                     admin.req('api-user/menus/' + obj.data.id + '?tenantId=' + tenantId, {}, function (data) {
                         layer.closeAll('loading');
                         if (0 === data.code) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             renderTable({ tenantId: tenantId });
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'DELETE');
                 });
@@ -201,7 +201,7 @@
                 }
             });
             if (keyword !== '' && searchCount === 0) {
-                layer.msg("没有匹配结果", { icon: 5, time: 500 });
+                layer.msg("没有匹配结果", { icon: 5, time: 2000 });
             } else {
                 treetable.expandAll('#menus-table');
             }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus_form.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus_form.html
index 9bf93e2..2e2b07d 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus_form.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/menus_form.html
@@ -121,7 +121,7 @@
                 }
                 form.render();  //菜单渲染 把内容加载进去
             } else {
-                layer.msg('获取一级菜单', {icon: 2, time: 500});
+                layer.msg('获取一级菜单', {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -143,7 +143,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, {icon: 2, time: 500});
+                layer.msg(data.msg, {icon: 2, time: 2000});
             }
         }, 'GET');
         // 表单提交事件
@@ -153,11 +153,11 @@
             admin.req('api-user/menus/saveOrUpdate?tenantId='+menus.tenantId, JSON.stringify(data.field), function (data) {
                 if (data.code === 0) {
                 	layer.closeAll('loading');
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     admin.finishPopupCenter();
                 } else {
                 	layer.closeAll('loading');
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, $('#menus-form').attr('method'));
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/myInfo.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/myInfo.html
index b7558fd..23a2aec 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/myInfo.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/myInfo.html
@@ -73,11 +73,11 @@
                 if (data.code == 0) {
                     layer.closeAll('loading');
                     $(".layui-nav-img").attr("src",$("[name=headImgUrl]").val());
-                    layer.msg("操作成功", {icon: 1, time: 500});
+                    layer.msg("操作成功", {icon: 1, time: 2000});
 
                     form.val('user-form',data.data);
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, 'POST');
             return false;
@@ -100,7 +100,6 @@
             },
             done: function(data){
                 layer.closeAll('loading');
-                console.log(data);
                 $("[name=headImgUrl]").val(data.url);
             },
             error: function (data) {
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/role.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/role.html
index e16d00b..ce7367f 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/role.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/role.html
@@ -16,7 +16,7 @@
                 <option value="">-请选择-</option>
                 <option value="name">角色名称</option>
             </select>&emsp;
-            <input id="role-edit-value" class="layui-input search-input" type="text" placeholder="输入关键字" />&emsp;
+            <input id="role-edit-value" class="layui-input search-input" type="text" placeholder="按关键字" />&emsp;
             <button id="role-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
             <button id="role-btn-add" class="layui-btn icon-btn permissions" permissions="saveOrUpdate"><i class="layui-icon">&#xe654;</i>添加</button>
         </div>
@@ -138,8 +138,6 @@
             page: true,
             cellMinWidth: 80,
             cols: [[
-                { type: 'numbers' },
-                { field: 'id', sort: true, title: 'ID', width: 80 },
                 { field: 'name', sort: true, title: '角色名' },
                 { field: 'code', sort: true, title: 'Code' },
                 { field: 'tenantId', sort: true, title: '应用标识' },
@@ -175,7 +173,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, { icon: 2, time: 500 });
+                layer.msg(data.msg, { icon: 2, time: 2000 });
             }
         }, 'GET');
 
@@ -191,13 +189,12 @@
             layer.load(2);
             admin.req('api-user/roles/saveOrUpdate?tenantId=' + tenantId, JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
-                // console.log(data);
                 if (data.code === 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     table.reload('role-table');
                     layer.closeAll('page');
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, $('#role-form').attr('method'));
             return false;
@@ -208,7 +205,6 @@
             var treeObj = $.fn.zTree.getZTreeObj('treeMenu-role');
             var nodes = treeObj.getCheckedNodes(true);
             $.each(nodes,function(i,item){
-                // console.log(item)
                 if(!item.children){
                     array.push(item.id);
                 }
@@ -220,13 +216,12 @@
             layer.load(2);
             admin.req('api-user/sysroleorganization', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
-                console.log(data);
                 if (data.code === 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     table.reload('role-table');
                     layer.closeAll('page');
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, $('#role-form').attr('method'));
             layer.closeAll('page');
@@ -256,9 +251,9 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -297,7 +292,7 @@
                     layer.closeAll('loading');
 
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }, 'get');
         }
@@ -344,7 +339,6 @@
         };
         //数据权限的点击事件
         form.on('select(role_organization)', function (data) {
-            console.log(data.value)
             if (data.value == 2) {
                 $("#tree").show();
             }else{
@@ -364,7 +358,6 @@
                     $('#role-form').attr('method', 'POST');
                     if (data) {
                         getData();
-                        console.log(data.type)
                         if(data.type!=2){
                             $("#tree").hide();
                         }
@@ -384,10 +377,10 @@
                 admin.req('api-user/roles/' + obj.data.id + '?tenantId=' + tenantId, {}, function (data) {
                     layer.closeAll('loading');
                     if (data.code === 0) {
-                        layer.msg(data.msg, { icon: 1, time: 500 });
+                        layer.msg(data.msg, { icon: 1, time: 2000 });
                         obj.del();
                     } else {
-                        layer.msg(data.msg, { icon: 2, time: 500 });
+                        layer.msg(data.msg, { icon: 2, time: 2000 });
                     }
                 }, 'DELETE');
             });
@@ -439,10 +432,10 @@
                     admin.req('api-user/menus/granted?tenantId=' + tenantId, JSON.stringify(data), function (data) {
                         layer.closeAll('loading');
                         if (0 == data.code) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             layer.close(index);
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'POST');
                 }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea.html
index bc1eb34..3a0ca70 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea.html
@@ -8,7 +8,7 @@
     </div>
     <div class="layui-card-body">
         <div class="layui-form toolbar">&emsp;
-            <input id="area-search-value" class="layui-input search-input" type="text" placeholder="输入地区名称" />&emsp;
+            <input id="area-search-value" class="layui-input search-input" type="text" placeholder="按地区名称" />&emsp;
             <button id="area-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
             <button id="area-btn-add" class="layui-btn icon-btn permissions" permissions="save-area"><i class="layui-icon">&#xe654;</i>添加</button>
             <button id="area-btn-expand" class="layui-btn">全部展开</button>
@@ -104,9 +104,9 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -167,7 +167,7 @@
                 }
             });
             if (keyword !== '' && searchCount === 0) {
-                layer.msg("没有匹配结果", { icon: 5, time: 500 });
+                layer.msg("没有匹配结果", { icon: 5, time: 2000 });
             } else {
                 treetable.expandAll('#area-table');
             }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea_form.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea_form.html
index 5ff22a9..561187e 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea_form.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/sysArea_form.html
@@ -96,11 +96,11 @@
             admin.req('api-user/sysarea', JSON.stringify(data.field), function (data) {
                 if (data.code === 0) {
                 	layer.closeAll('loading');
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                    layer.msg(data.msg, {icon: 1, time: 2000});
                     admin.finishPopupCenter();
                 } else {
                 	layer.closeAll('loading');
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, $('#area-form').attr('method'));
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/tokens.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/tokens.html
index 9554d53..da920ac 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/tokens.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/tokens.html
@@ -9,7 +9,7 @@
     <div class="layui-card-body">
         <div class="layui-form toolbar">
         所属应用:<select id="token_clients" lay-filter="token_clients"></select>
-        &emsp;搜索:<input id="tokens-edit-search" class="layui-input search-input" type="text" placeholder="输入用户名"/>&emsp;
+        &emsp;搜索:<input id="tokens-edit-search" class="layui-input search-input" type="text" placeholder="按用户名"/>&emsp;
         <button id="tokens-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
         </div>
 
@@ -75,7 +75,7 @@
                 })
                 form.render();
             } else {
-                layer.msg(data.msg, {icon: 2, time: 500});
+                layer.msg(data.msg, {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -93,7 +93,7 @@
                 layer.load(2);
                 admin.req('api-uaa/oauth/remove/token?token=' + obj.data.tokenValue, {}, function (data) {
                     layer.closeAll('loading');
-                    layer.msg('成功', {icon: 1, time: 500});
+                    layer.msg('成功', {icon: 1, time: 2000});
                     obj.del();
                 }, 'DELETE');
             });
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user.html
index 1dae744..8b4fc12 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user.html
@@ -11,18 +11,17 @@
             搜索:
             <select id="user-search-key">
                 <option value="">-请选择-</option>
-                <option value="user_id">ID</option>
                 <option value="username">账号</option>
                 <option value="nick_name">用户名</option>
                 <option value="mobile">手机号</option>
             </select>&emsp;
-            <input id="user-search-value" class="layui-input search-input" type="text" placeholder="输入关键字" />&emsp;
+            <input id="user-search-value" class="layui-input search-input" type="text" placeholder="按关键字" />&emsp;
             <button id="user-btn-search" class="layui-btn icon-btn"><i class="layui-icon" >&#xe615;</i>搜索</button>
             <button id="user-btn-add" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="user-btn-add">&#xe654;</i>添加</button>
-            <button id="user-btn-export" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="user-btn-export">&#xe601;</i>导出</button>
-            <button type="button" class="layui-btn" id="user-btn-import">
-                <i class="layui-icon permissions" permissions="user-btn-import">&#xe67c;</i>导入 
-            </button>
+<!--            <button id="user-btn-export" class="layui-btn icon-btn"><i class="layui-icon permissions" permissions="user-btn-export">&#xe601;</i>导出</button>-->
+<!--            <button type="button" class="layui-btn" id="user-btn-import">-->
+<!--                <i class="layui-icon permissions" permissions="user-btn-import">&#xe67c;</i>导入 -->
+<!--            </button>-->
         </div>
 
         <table class="layui-table" id="user-table" lay-filter="user-table"></table>
@@ -35,7 +34,7 @@
     <a class="layui-btn layui-btn-primary layui-btn-xs permissions" permissions="user-btn-add" lay-event="edit">修改</a>
     <a class="layui-btn layui-btn-xs permissions" permissions="user-default-password" lay-event="reset">重置密码</a> 
     <a class="layui-btn layui-btn-xs permissions" permissions="userorg-save" lay-event="org">分配组织</a>
-    <a class="layui-btn layui-btn-xspermissions" permissions="user-del" lay-event="del">删除</a>
+    <a class="layui-btn layui-btn-xs permissions" permissions="user-del" lay-event="del">删除</a>
 </script>
 
 <!-- 表格状态列 -->
@@ -63,20 +62,14 @@
             headers: { 'Authorization': 'Bearer ' + config.getToken().access_token},
             page: true,
             cols: [[
-                { field: 'id', sort: true, width: 200, title: '标识' },
-                { field: 'username', sort: true, width: 100, title: '账号' },
-                { field: 'nickname', sort: true, width: 200, title: '用户名' },
-                { field: 'mobile', sort: true, width: 150, title: '手机号' },
+                { field: 'username',  width: 100, title: '账号' },
+                { field: 'nickname',  width: 200, title: '用户名' },
+                { field: 'mobile',  width: 150, title: '手机号' },
                 {
                     sort: true, title: '性别', templet: function (d) {
                         return d.sex == 0 ? "男" : "女"
                     }, width: 100
                 },
-                // {
-                //     sort: true, width: 200, templet: function (d) {
-                //         return util.toDateString(d.createTime);
-                //     }, title: '创建时间'
-                // },
                 { field: 'createTime', width: 250, sort: true, title: '创建时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd HH:mm')}}</div>" },
                 { field: 'enabled', width: 100, sort: true, templet: '#user-tpl-state', title: '状态' },
                 { fixed: 'right', align: 'center', toolbar: '#user-table-bar', title: '操作', width: 300 }
@@ -105,10 +98,10 @@
                     admin.req('api-user/users/' + obj.data.id + '/password', {}, function (data) {
                         layer.closeAll('loading');
                         if (data.code == 0) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             layer.alert("密码重置为:"+data.data, {icon: 1});
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'PUT');
                 });
@@ -119,10 +112,10 @@
                     admin.req('api-user/users/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
                         if (data.code == 0) {
-                            layer.msg(data.msg, { icon: 1, time: 500 });
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
                             table.reload('user-table', {});
                         } else {
-                            layer.msg(data.msg, { icon: 2, time: 500 });
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'delete');
                 });
@@ -197,10 +190,10 @@
             }, function (data) {
                 layer.closeAll('loading');
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     //table.reload('table-user', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                     $(obj.elem).prop('checked', !obj.elem.checked);
                     form.render('checkbox');
                 }
@@ -217,10 +210,10 @@
             , headers: { "Authorization": "Bearer " + config.getToken().access_token }
             , done: function (data) {
                 if (data.code == 0) {
-                    layer.msg(data.msg, { icon: 1, time: 500 });
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
                     table.reload('user-table', {});
                 } else {
-                    layer.msg(data.msg, { icon: 2, time: 500 });
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
                 }
             }
         });
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user_form.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user_form.html
index 1501a0b..cd1018a 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user_form.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/system/user_form.html
@@ -77,7 +77,7 @@
                     formSelects.value('roleId', rds);
                 }
             } else {
-                layer.msg('获取角色失败', {icon: 2, time: 500});
+                layer.msg('获取角色失败', {icon: 2, time: 2000});
             }
         }, 'GET');
 
@@ -86,11 +86,11 @@
             layer.load(2);
             admin.req('api-user/users/saveOrUpdate', JSON.stringify(data.field), function (data) {
                 layer.closeAll('loading');
-                if (data.code == 0) {
-                    layer.msg(data.msg, {icon: 1, time: 500});
+                if (data.code == 0) { 
+                    layer.alert("用户添加成功,默认密码为:"+data.data.password, {icon: 1});
                     admin.finishPopupCenter();
                 } else {
-                    layer.msg(data.msg, {icon: 2, time: 500});
+                    layer.msg(data.msg, {icon: 2, time: 2000});
                 }
             }, "POST");
             return false;
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/iframe.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/iframe.html
index 8d6c264..37f03fa 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/iframe.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/iframe.html
@@ -5,9 +5,6 @@
         var config = layui.config;
         var admin = layui.admin;
         var html = admin.getTempData("params");
-        console.log(html);
-        console.log($('iframe:last'));
-
         if (!$('iframe:last').attr("src")){
             $('iframe:last').attr("src",html);
         }
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/password.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/password.html
index dc4f8f5..067fe30 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/password.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/tpl/password.html
@@ -29,7 +29,6 @@
         var config = layui.config;
         var layer = layui.layer;
         var user = config.getUser();
-        console.log(user.id);
         $("#id").val(user.id);
         //监听提交
         form.on('submit(submit-psw)', function (data) {

--
Gitblit v1.8.0