From 2b80ec2ea965f3ac34ac164d8ed1ec8a00d40f87 Mon Sep 17 00:00:00 2001
From: luliqiang <kidgrow>
Date: Wed, 16 Dec 2020 16:40:13 +0800
Subject: [PATCH] 增加合作商信息和合作商客户信息管理功能

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerInfoMapper.xml                                          |   99 +-
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerDockingInfo.html                                                              |  393 ++++++++++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerDockingInfoServiceImpl.java |  218 +++++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/template/imageServer_template.sql                                     |  557 +++++++++++++++++
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml                                                    |    2 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/EquipmentDocking.java                     |  145 ++--
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/PartnerDockingInfo.java                   |  144 ++--
 kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerInfo.html                                                                     |  221 ++++--
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerDockingInfoService.java         |    7 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerDockingInfoMapper.xml                                   |   14 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerInfoService.java                |   10 
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerInfoServiceImpl.java        |   25 
 12 files changed, 1,538 insertions(+), 297 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/EquipmentDocking.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/EquipmentDocking.java
index b24a964..94bbd69 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/EquipmentDocking.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/EquipmentDocking.java
@@ -15,11 +15,12 @@
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @version 1.0
  * @Description: <br>
  * @Project: 用户中心<br>
  * @CreateDate: Created in 2020-10-19 11:14:58 <br>
  * @Author: <a href="4345453@kidgrow.com">liuke</a>
- * @version 1.0
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
@@ -27,76 +28,76 @@
 @AllArgsConstructor
 @TableName("equipment_docking")
 public class EquipmentDocking extends SuperModel {
-    private static final long serialVersionUID=1L;
+    private static final long serialVersionUID = 1L;
 
-            /**
-    * 医院名称
-    */
-        @NotEmpty(message = "医院名称不能为空")
-        private String hospitalName;
-            /**
-    * 科室名称
-    */
-        @NotEmpty(message = "科室名称不能为空")
-        private String departName;
-            /**
-    * 医院唯一标识
-    */
-        @NotNull(message = "医院唯一标识不能为空")
-        @JsonSerialize(using = ToStringSerializer.class)
-        private Long hospitalId;
-            /**
-    * 部门唯一表示
-    */
-            @NotNull(message = "部门唯一表示不能为空")
-            @JsonSerialize(using = ToStringSerializer.class)
-        private Long departId;
-            /**
-    * 设备厂家名称
-    */
-        @NotEmpty(message = "设备厂家名称不能为空")
-        private String companyName;
-            /**
-    * 设备型号
-    */
-        @NotEmpty(message = "设备型号不能为空")
-        private String unitType;
-            /**
-    * 设备品牌
-    */
-        @NotEmpty(message = "设备品牌不能为空")
-        private String equipmentBrand;
-            /**
-    * 设备机器码
-    */
-        @NotEmpty(message = "设备机器码不能为空")
-        private String machineCode;
-            /**
-    * hospital_id+depart_id+machine_code 进行md5加密生成的32位小写的字符串
-    */
+    /**
+     * 医院名称
+     */
+    @NotEmpty(message = "医院名称不能为空")
+    private String hospitalName;
+    /**
+     * 科室名称
+     */
+    @NotEmpty(message = "科室名称不能为空")
+    private String departName;
+    /**
+     * 医院唯一标识
+     */
+    @NotNull(message = "医院唯一标识不能为空")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long hospitalId;
+    /**
+     * 部门唯一表示
+     */
+    @NotNull(message = "部门唯一表示不能为空")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long departId;
+    /**
+     * 设备厂家名称
+     */
+    @NotEmpty(message = "设备厂家名称不能为空")
+    private String companyName;
+    /**
+     * 设备型号
+     */
+    @NotEmpty(message = "设备型号不能为空")
+    private String unitType;
+    /**
+     * 设备品牌
+     */
+    @NotEmpty(message = "设备品牌不能为空")
+    private String equipmentBrand;
+    /**
+     * 设备机器码
+     */
+    @NotEmpty(message = "设备机器码不能为空")
+    private String machineCode;
+    /**
+     * hospital_id+depart_id+machine_code 进行md5加密生成的32位小写的字符串
+     */
 //        @NotEmpty(message = "hospital_id+depart_id+machine_code 进行md5加密生成的32位小写的字符串不能为空")
-        private String outAccesskey;
-            /**
-    * 设备厂家联系人电话
-    */
-        @NotEmpty(message = "设备厂家联系人电话不能为空")
-        private String contactPhone;
-            /**
-    * 设备厂家联系人名称
-    */
-        @NotEmpty(message = "设备厂家联系人名称不能为空")
-        private String contactName;
-            /**
-    * 备注信息
-    */
-        private String remarkComment;
-                                    /**
-    * 状态,1启用,0停用 
-    */
-        private Boolean enabled;
-            /**
-    * 是否删除,1删除,0未删除
-    */
-        @TableLogic
-        private Boolean isDel;
-    }
+    private String outAccesskey;
+    /**
+     * 设备厂家联系人电话
+     */
+    @NotEmpty(message = "设备厂家联系人电话不能为空")
+    private String contactPhone;
+    /**
+     * 设备厂家联系人名称
+     */
+    @NotEmpty(message = "设备厂家联系人名称不能为空")
+    private String contactName;
+    /**
+     * 备注信息
+     */
+    private String remarkComment;
+    /**
+     * 状态,1启用,0停用
+     */
+    private Boolean enabled;
+    /**
+     * 是否删除,1删除,0未删除
+     */
+    @TableLogic
+    private Boolean isDel;
+}
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/PartnerDockingInfo.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/PartnerDockingInfo.java
index cc5e1ae..ce24896 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/PartnerDockingInfo.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-api/src/main/java/com/kidgrow/oprationcenter/model/PartnerDockingInfo.java
@@ -1,88 +1,104 @@
 package com.kidgrow.oprationcenter.model;
 
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
 import com.kidgrow.common.model.SuperModel;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
+import org.hibernate.validator.constraints.NotEmpty;
 
+import javax.validation.constraints.NotNull;
 import java.util.Date;
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
+ *
+ * @version 1.0
  * @Description: 合作商客户对接信息表<br>
  * @Project: 运营中心<br>
  * @CreateDate: Created in 2020-12-08 14:35:33 <br>
  * @Author: <a href="1024030301@kidgrow.com">LuLiQiang</a>
- * @version 1.0
  */
 @Data
 @EqualsAndHashCode(callSuper = false)
 @NoArgsConstructor
 @AllArgsConstructor
-@TableName("parter_docking_info")
+@TableName("partner_docking_info")
 public class PartnerDockingInfo extends SuperModel {
-    private static final long serialVersionUID=1L;
+    private static final long serialVersionUID = 1L;
 
-            /**
-    * 合作商ID
-    */
-        private Long parterId;
-            /**
-    * 合作商名称
-    */
-        private String parterName;
-            /**
-    * 医院ID
-    */
-        private Long hospitalId;
-            /**
-    * 医院名称
-    */
-        private String hospitalName;
-            /**
-    * 科室ID
-    */
-        private Long departmentId;
-            /**
-    * 科室名称
-    */
-        private String departmentName;
-            /**
-    * 对接类型(1:影像版API,2:妇幼版API)
-    */
-        private Integer dockingType;
-            /**
-    * 对接版本
-    */
-        private String dockingVersion;
-            /**
-    * 对接状态(1:正常,2:暂停)
-    */
-        private Integer dockingStatus;
-            /**
-    * 服务器机器码
-    */
-        private String serverMachineCode;
-            /**
-    * 服务器软加密码
-    */
-        private String accessKey;
-            /**
-    * 操作人
-    */
-        private String operationName;
-            /**
-    * 操作时间
-    */
-        private Date operationTime;
-            /**
-    * 是否删除,1删除,0未删除
-    */
-        private Boolean isDel;
-            /**
-    * 状态,1启用,0停用 
-    */
-        private Boolean enabled;
-                            }
+    /**
+     * 合作商ID
+     */
+    @NotNull(message = "合作商唯一标识不能为空")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long partnerId;
+    /**
+     * 合作商名称
+     */
+    @NotEmpty(message = "合作商名称不能为空")
+    private String partnerName;
+    /**
+     * 医院ID
+     */
+    @NotNull(message = "医院唯一标识不能为空")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long hospitalId;
+    /**
+     * 医院名称
+     */
+    @NotEmpty(message = "医院名称不能为空")
+    private String hospitalName;
+    /**
+     * 科室ID
+     */
+    @NotNull(message = "科室唯一标识不能为空")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long departmentId;
+    /**
+     * 科室名称
+     */
+    @NotEmpty(message = "科室名称不能为空")
+    private String departmentName;
+    /**
+     * 对接类型(1:影像版API,2:妇幼版API)
+     */
+    private Integer dockingType;
+    /**
+     * 对接版本
+     */
+    @NotEmpty(message = "对接版本不能为空")
+    private String dockingVersion;
+    /**
+     * 对接状态(1:正常,2:暂停)
+     */
+    private Integer dockingStatus;
+    /**
+     * 服务器机器码
+     */
+    private String serverMachineCode;
+    /**
+     * 服务器软加密码
+     */
+    private String accessKey;
+    /**
+     * 操作人
+     */
+    @NotEmpty(message = "操作人不能为空")
+    private String operationName;
+    /**
+     * 操作时间
+     */
+    private Date operationTime;
+    /**
+     * 是否删除,1删除,0未删除
+     */
+    private Boolean isDel;
+    /**
+     * 状态,1启用,0停用
+     */
+    private Boolean enabled;
+}
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerDockingInfoService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerDockingInfoService.java
index 1d8c872..07f5683 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerDockingInfoService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerDockingInfoService.java
@@ -29,5 +29,12 @@
     * @return PartnerDockingInfo对象
     */
     PartnerDockingInfo findByObject(PartnerDockingInfo partnerDockingInfo);
+
+    /**
+     * 根据对接类型版本等信息,创建客户私有云数据库脚本
+     * @param partnerDockingInfo
+     * @return
+     */
+    String createSQL( PartnerDockingInfo partnerDockingInfo );
 }
 
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerInfoService.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerInfoService.java
index 7bcbeb7..9f319df 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerInfoService.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/IPartnerInfoService.java
@@ -1,9 +1,10 @@
 package com.kidgrow.oprationcenter.service;
 
-import com.kidgrow.oprationcenter.model.PartnerInfo;
 import com.kidgrow.common.model.PageResult;
 import com.kidgrow.common.service.ISuperService;
+import com.kidgrow.oprationcenter.model.PartnerInfo;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -29,5 +30,12 @@
     * @return PartnerInfo对象
     */
     PartnerInfo findByObject(PartnerInfo partnerInfo);
+
+    /**
+     * 根据名称查询合作商名称列表
+     * @param partnerName
+     * @return
+     */
+    List<PartnerInfo> findByName(String partnerName);
 }
 
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerDockingInfoServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerDockingInfoServiceImpl.java
index e33678b..d7e673b 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerDockingInfoServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerDockingInfoServiceImpl.java
@@ -1,15 +1,33 @@
 package com.kidgrow.oprationcenter.service.impl;
 
+import cn.hutool.core.date.DateTime;
+import com.alibaba.fastjson.JSONObject;
 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.oprationcenter.mapper.PartnerDockingInfoMapper;
 import com.kidgrow.oprationcenter.model.PartnerDockingInfo;
+import com.kidgrow.oprationcenter.model.PartnerInfo;
 import com.kidgrow.oprationcenter.service.IPartnerDockingInfoService;
+import com.kidgrow.oprationcenter.service.IPartnerInfoService;
+import com.kidgrow.usercenter.feign.SysDepartmentService;
+import com.kidgrow.usercenter.feign.SysDoctorService;
+import com.kidgrow.usercenter.feign.SysHospitalService;
+import com.kidgrow.usercenter.model.SysDoctor;
+import com.kidgrow.usercenter.model.SysHospital;
+import io.undertow.util.FileUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.MapUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.io.Resource;
+import org.springframework.core.io.ResourceLoader;
 import org.springframework.stereotype.Service;
+import org.springframework.util.DigestUtils;
 
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -24,6 +42,22 @@
 @Slf4j
 @Service
 public class PartnerDockingInfoServiceImpl extends SuperServiceImpl<PartnerDockingInfoMapper, PartnerDockingInfo> implements IPartnerDockingInfoService {
+
+    @Autowired
+    ResourceLoader resourceLoader;
+
+    @Autowired
+    SysHospitalService sysHospitalService;
+
+    @Autowired
+    SysDepartmentService sysDepartmentService;
+
+    @Autowired
+    SysDoctorService sysDoctorService;
+
+    @Autowired
+    IPartnerInfoService partnerInfoService;
+
     /**
      * 列表
      * @param params
@@ -45,4 +79,188 @@
     public PartnerDockingInfo findByObject(PartnerDockingInfo partnerDockingInfo){
         return baseMapper.findByObject(partnerDockingInfo);
     }
+
+
+    /**
+     * 根据对接类型版本等信息,创建客户私有云数据库脚本
+     * @param partnerDockingInfo
+     * @return
+     */
+    @Override
+    public String createSQL( PartnerDockingInfo partnerDockingInfo ){
+        // 模板SQL文
+        String dbSql = "";
+        // 医院信息SQL文
+        String hospitalSQL = "";
+        // 科室信息SQL文
+        String departmentSQL = "";
+        // 医生信息SQL文
+        String doctorSQL = "";
+        // 合作商信息SQL文
+        String partnerSQL = "";
+        // 服务器信息SQL文
+        String serverSQL= "";
+        InputStream fileImput =null;
+        try {
+            // 1、读取基础表结构SQL
+            Resource resource = resourceLoader.getResource("classpath:template//imageServer_template.sql");
+            fileImput = resource.getInputStream();  //new FileInputStream("./template/imageServer_template.sql");
+            dbSql = FileUtils.readFile(fileImput);
+
+            // 2、读取医院信息表Hospital_Info,插入SQL文中
+            Map<String,Object> hospitalMap = new HashMap<>();
+            hospitalMap.put("id",partnerDockingInfo.getHospitalId());
+            ResultBody hospitalResult = sysHospitalService.findAllByMap(hospitalMap);
+
+            if (hospitalResult.isOk()){
+                String jsonData = JSONObject.toJSONString(hospitalResult.getData());
+                List<SysHospital> hospitalLists= JSONObject.parseArray(jsonData,SysHospital.class);
+                if (hospitalLists.size()> 0) {
+                    SysHospital hospitalInfo = hospitalLists.get(0);
+                    hospitalSQL = " INSERT INTO sys_hospital  VALUES (" +
+                            hospitalInfo.getId() + ", " +
+                            "'" + hospitalInfo.getHospitalName()+ "', " +
+                            "'" + hospitalInfo.getHospitalShortName()+ "', " +
+                            "'" + hospitalInfo.getHospitalCode()+ "', " +
+                            "'" + hospitalInfo.getHospitalTypeId()+ "', " +
+                            "'" + hospitalInfo.getHospitalTypeName()+ "', " +
+                            "'" + hospitalInfo.getHospitalTel()+ "', " +
+                            "'" + hospitalInfo.getHospitalProvince()+ "', " +
+                            "'" + hospitalInfo.getHospitalCity()+ "', " +
+                            "'" + hospitalInfo.getHospitalArea()+ "', " +
+                            "'" + hospitalInfo.getAreaCode()+ "', " +
+                            "'" + hospitalInfo.getHospitalLink()+ "', " +
+                            "'" + hospitalInfo.getHospitalAdress()+ "', " +
+                            "'" + hospitalInfo.getLatitude()+ "', " +
+                            "'" + hospitalInfo.getLongitude()+ "', " +
+                            "'" + hospitalInfo.getHospitalQualifiedId()+ "', " +
+                            "'" + hospitalInfo.getHospitalQualifiedName()+ "', " +
+                            "NULL," +
+                            "NULL," +
+                            "NULL," +
+                            "'" + hospitalInfo.getHospitalAbout()+ "', " +
+                            hospitalInfo.getHospitalState() + ", " +
+                            hospitalInfo.getEnabled() + ", " +
+                            hospitalInfo.getIsDel() + ", " +
+                            hospitalInfo.getCreateUserId() + ", " +
+                            "'" + hospitalInfo.getCreateUserName()+ "', " +
+                            hospitalInfo.getUpdateUserId() + ", " +
+                            "'" + hospitalInfo.getUpdateUserName()+ "', " +
+                            "'" + hospitalInfo.getCreateTime()+ "', " +
+                            "'" + hospitalInfo.getUpdateTime()+"' " +
+                            ");\n\r";
+                }
+
+            }
+
+            // 3、读取科室信息表Department_Info,生成SQL文
+            departmentSQL = "INSERT INTO sys_department VALUES ("+
+                    +partnerDockingInfo.getDepartmentId()+ ", "+
+                    "'" + partnerDockingInfo.getDepartmentName() +"', " +
+                    "0, 1, 0, '喜高科技', 0 , '喜高科技', " +
+                    "'" + DateTime.now().toString() + "', " +
+                    "'" + DateTime.now().toString() + "', " +
+                    "6 " +
+                    ");\n\r";
+            // 4、读取医生信息表Doctor_Info,生成SQL文
+            Map<String,Object> doctorMap = new HashMap<>();
+            doctorMap.put("hospital_id",partnerDockingInfo.getHospitalId());
+            doctorMap.put("department_id",partnerDockingInfo.getDepartmentId());
+            doctorMap.put("is_admin_user",1);
+            ResultBody doctorResult = sysDoctorService.getListByMap(doctorMap);
+
+            if (doctorResult.isOk()) {
+                String jsonData = JSONObject.toJSONString(doctorResult.getData());
+                List<SysDoctor> doctorList = JSONObject.parseArray(jsonData, SysDoctor.class);
+                if (doctorList.size() > 0) {
+                    SysDoctor doctorInfo = doctorList.get(0);
+                    doctorSQL = "INSERT INTO sys_doctor VALUES(" +
+                            doctorInfo.getId() + ", " +
+                            + doctorInfo.getHospitalId() + ", " +
+                            "'" + doctorInfo.getHospitalName()+ "', " +
+                            + doctorInfo.getDepartmentId() + ", " +
+                            "'" + doctorInfo.getDepartmentName()+ "', " +
+                            "'" + doctorInfo.getDoctorName()+ "', " +
+                            "NULL, " +
+                            "'" + doctorInfo.getDoctorCcie()+ "', " +
+                            "'" + doctorInfo.getDoctorTel()+ "', " +
+                            "'" + DigestUtils.md5DigestAsHex("123456".getBytes()).replace("-","") +"', " +
+                            "'" + doctorInfo.getDoctorRankId()+ "', " +
+                            "'" + doctorInfo.getDoctorRank()+ "', " +
+                            "'" + doctorInfo.getDoctorOtherLink()+ "', " +
+                            "'" + doctorInfo.getDoctorEmail()+ "', " +
+                            "'" + doctorInfo.getDoctorAbout()+ "', " +
+                            "0, " +
+                            doctorInfo.getDoctorState()+ ", " +
+                            doctorInfo.getDoctorType()+ ", " +
+                            "0, 1, 0, '喜高科技', 0 , '喜高科技', " +
+                            "'" + DateTime.now().toString() + "', " +
+                            "'" + DateTime.now().toString() + "', " +
+                            "1" +
+                            ");\n\r";
+                }
+            }
+
+            // 5、读取合作商信息表Partner_Info,生成SQL文
+            PartnerInfo partnerInfo = partnerInfoService.getById(partnerDockingInfo.getPartnerId());
+            if (partnerInfo!= null) {
+                partnerSQL = "INSERT INTO partner_info VALUES (" +
+                        partnerInfo.getId() + ", " +
+                        "'" +partnerInfo.getPartnerName() + "', " +
+                        + partnerInfo.getPartnerType() + ", " +
+                        "'" +partnerInfo.getPartnerAddress() + "', " +
+                        "'" +partnerInfo.getPartnerProvince() + "', " +
+                        "'" +partnerInfo.getPartnerCity() + "', " +
+                        "'" +partnerInfo.getPartnerArea() + "', " +
+                        "'" +partnerInfo.getPartnerLinkMan() + "', " +
+                        "'" +partnerInfo.getPartnerLinkTelephone() + "', " +
+                        "'" +partnerInfo.getPartnerBussinessArea() + "', " +
+                        "'" +partnerInfo.getPartnerIntroduce() + "', " +
+                        "'" +partnerInfo.getPartnerUniqueCode() + "', " +
+                        + partnerInfo.getCreateUserId() + ", " +
+                        "'" +partnerInfo.getCreateUserName() + "', " +
+                        "'" +partnerInfo.getCreateTime() + "', " +
+                        + partnerInfo.getUpdateUserId() + ", " +
+                        "'" +partnerInfo.getUpdateUserName() + "', " +
+                        "'" +partnerInfo.getUpdateTime() + "'  " +
+                        ");\n\r";
+            }
+            // 6、读取服务器信息表Server_Info,生成SQL文
+            if ((partnerDockingInfo.getAccessKey() != null) && (!partnerDockingInfo.getAccessKey().isEmpty())) {
+                serverSQL = "INSERT INTO server_info VALUES(" +
+                        partnerDockingInfo.getId() + ", " +
+                        partnerDockingInfo.getPartnerId() + ", " +
+                        partnerDockingInfo.getHospitalId() + ", " +
+                        partnerDockingInfo.getDepartmentId() + ", " +
+                        "NULL, NULL, NULL, NULL, " +
+                        "'" + partnerDockingInfo.getServerMachineCode() + "', " +
+                        "NULL, NULL, " +
+                        "'" + partnerDockingInfo.getAccessKey() + "', " +
+                        "0, 1, " +
+                        partnerDockingInfo.getCreateUserId() + ", " +
+                        "'" + partnerDockingInfo.getCreateUserName() + "', " +
+                        "'" + partnerDockingInfo.getCreateTime() + "', " +
+                        partnerDockingInfo.getUpdateUserId() + ", " +
+                        "'" + partnerDockingInfo.getUpdateUserName() + "', " +
+                        "'" + partnerDockingInfo.getUpdateTime() + "', " +
+                        ");\n\r";
+            }
+            // 7、所有SQL文合并入基本的SQL中
+            dbSql += hospitalSQL + departmentSQL + doctorSQL + partnerSQL +serverSQL;
+
+        } catch (Exception e){
+            e.printStackTrace();
+        } finally {
+            try {
+                fileImput.close();
+            } catch (IOException e){
+                e.printStackTrace();
+            }
+        }
+
+
+
+
+        return  dbSql;
+    };
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerInfoServiceImpl.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerInfoServiceImpl.java
index 83c3b45..6bd26e8 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerInfoServiceImpl.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/java/com/kidgrow/oprationcenter/service/impl/PartnerInfoServiceImpl.java
@@ -1,18 +1,17 @@
 package com.kidgrow.oprationcenter.service.impl;
 
-import org.springframework.stereotype.Service;
-import com.kidgrow.common.model.PageResult;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kidgrow.common.model.PageResult;
 import com.kidgrow.common.service.impl.SuperServiceImpl;
+import com.kidgrow.oprationcenter.mapper.PartnerInfoMapper;
+import com.kidgrow.oprationcenter.model.PartnerInfo;
+import com.kidgrow.oprationcenter.service.IPartnerInfoService;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.MapUtils;
+import org.springframework.stereotype.Service;
 
 import java.util.List;
 import java.util.Map;
-import org.apache.commons.collections4.MapUtils;
-import lombok.extern.slf4j.Slf4j;
-
-import com.kidgrow.oprationcenter.model.PartnerInfo;
-import com.kidgrow.oprationcenter.mapper.PartnerInfoMapper;
-import com.kidgrow.oprationcenter.service.IPartnerInfoService;
 
 /**
  * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br>
@@ -46,4 +45,14 @@
     public PartnerInfo findByObject(PartnerInfo partnerInfo){
         return baseMapper.findByObject(partnerInfo);
     }
+
+    /**
+     * 根据名称查询合作商名称列表
+     * @param partnerName
+     * @return
+     */
+    @Override
+    public List<PartnerInfo> findByName(String partnerName) {
+        return baseMapper.findByName(partnerName);
+    }
 }
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerDockingInfoMapper.xml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerDockingInfoMapper.xml
index 411157e..e511e12 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerDockingInfoMapper.xml
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerDockingInfoMapper.xml
@@ -15,17 +15,17 @@
             <if test="p.id != null and p.id !=''">
                 and id = #{p.id}
             </if>
-            <if test="p.parterId != null and p.parterId !=''">
-                and parter_id = #{p.parterId}
+            <if test="p.partnerId != null and p.partnerId !=''">
+                and partner_id = #{p.partnerId}
             </if>
-            <if test="p.parterName != null and p.parterName !=''">
-                and parter_name = #{p.parterName}
+            <if test="p.partnerName != null and p.partnerName !=''">
+                and partner_name like CONCAT('%',#{p.partnerName},'%')
             </if>
             <if test="p.hospitalId != null and p.hospitalId !=''">
                 and hospital_id = #{p.hospitalId}
             </if>
             <if test="p.hospitalName != null and p.hospitalName !=''">
-                and hospital_name = #{p.hospitalName}
+                and hospital_name like CONCAT('%', #{p.hospitalName},'%')
             </if>
             <if test="p.departmentId != null and p.departmentId !=''">
                 and department_id = #{p.departmentId}
@@ -85,7 +85,7 @@
     <select id="findByObject" resultType="com.kidgrow.oprationcenter.model.PartnerDockingInfo">
         select
         <include refid="Column_List"/>
-        from parter_docking_info
+        from partner_docking_info
         <include refid="where"/>
         order by id desc
         limit 1
@@ -95,7 +95,7 @@
     <select id="findList" resultType="com.kidgrow.oprationcenter.model.PartnerDockingInfo">
         select
         <include refid="Column_List"/>
-        from parter_docking_info
+        from partner_docking_info
         <include refid="where"/>
         order by id desc
     </select>
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerInfoMapper.xml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerInfoMapper.xml
index 6de96ff..20d87de 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerInfoMapper.xml
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/mapper/PartnerInfoMapper.xml
@@ -12,72 +12,73 @@
         <where>
             <!--查询条件自行添加-->
             is_del=0
-                                    <if test="p.id != null and p.id !=''">
-                and  id =  #{p.id}
+            <if test="p.id != null and p.id !=''">
+                and id = #{p.id}
             </if>
-                                                <if test="p.partnerName != null and p.partnerName !=''">
-                and  partner_name =  #{p.partnerName}
+            <if test="p.partnerName != null and p.partnerName !=''">
+                and partner_name like CONCAT('%', #{p.partnerName},'%')
             </if>
-                                                <if test="p.partnerType != null and p.partnerType !=''">
-                and  partner_type =  #{p.partnerType}
+            <if test="p.partnerType != null and p.partnerType !=''">
+                and partner_type = #{p.partnerType}
             </if>
-                                                <if test="p.partnerAddress != null and p.partnerAddress !=''">
-                and  partner_address =  #{p.partnerAddress}
+            <if test="p.partnerAddress != null and p.partnerAddress !=''">
+                and partner_address = #{p.partnerAddress}
             </if>
-                                                <if test="p.partnerProvince != null and p.partnerProvince !=''">
-                and  partner_province =  #{p.partnerProvince}
+            <if test="p.partnerProvince != null and p.partnerProvince !=''">
+                and partner_province = #{p.partnerProvince}
             </if>
-                                                <if test="p.partnerCity != null and p.partnerCity !=''">
-                and  partner_city =  #{p.partnerCity}
+            <if test="p.partnerCity != null and p.partnerCity !=''">
+                and partner_city = #{p.partnerCity}
             </if>
-                                                <if test="p.partnerArea != null and p.partnerArea !=''">
-                and  partner_area =  #{p.partnerArea}
+            <if test="p.partnerArea != null and p.partnerArea !=''">
+                and partner_area = #{p.partnerArea}
             </if>
-                                                <if test="p.partnerLinkMan != null and p.partnerLinkMan !=''">
-                and  partner_link_man =  #{p.partnerLinkMan}
+            <if test="p.partnerLinkMan != null and p.partnerLinkMan !=''">
+                and partner_link_man = #{p.partnerLinkMan}
             </if>
-                                                <if test="p.partnerLinkTelephone != null and p.partnerLinkTelephone !=''">
-                and  partner_link_telephone =  #{p.partnerLinkTelephone}
+            <if test="p.partnerLinkTelephone != null and p.partnerLinkTelephone !=''">
+                and partner_link_telephone = #{p.partnerLinkTelephone}
             </if>
-                                                <if test="p.partnerBussinessArea != null and p.partnerBussinessArea !=''">
-                and  partner_bussiness_area =  #{p.partnerBussinessArea}
+            <if test="p.partnerBussinessArea != null and p.partnerBussinessArea !=''">
+                and partner_bussiness_area = #{p.partnerBussinessArea}
             </if>
-                                                <if test="p.partnerIntroduce != null and p.partnerIntroduce !=''">
-                and  partner_introduce =  #{p.partnerIntroduce}
+            <if test="p.partnerIntroduce != null and p.partnerIntroduce !=''">
+                and partner_introduce = #{p.partnerIntroduce}
             </if>
-                                                <if test="p.partnerUniqueCode != null and p.partnerUniqueCode !=''">
-                and  partner_unique_code =  #{p.partnerUniqueCode}
+            <if test="p.partnerUniqueCode != null and p.partnerUniqueCode !=''">
+                and partner_unique_code = #{p.partnerUniqueCode}
             </if>
-                                                <if test="p.isDel != null and p.isDel !=''">
-                and  is_del =  #{p.isDel}
+            <if test="p.isDel != null and p.isDel !=''">
+                and is_del = #{p.isDel}
             </if>
-                                                <if test="p.enabled != null and p.enabled !=''">
-                and  enabled =  #{p.enabled}
+            <if test="p.enabled != null and p.enabled !=''">
+                and enabled = #{p.enabled}
             </if>
-                                                <if test="p.createUserId != null and p.createUserId !=''">
-                and  create_user_id =  #{p.createUserId}
+            <if test="p.createUserId != null and p.createUserId !=''">
+                and create_user_id = #{p.createUserId}
             </if>
-                                                <if test="p.createUserName != null and p.createUserName !=''">
-                and  create_user_name =  #{p.createUserName}
+            <if test="p.createUserName != null and p.createUserName !=''">
+                and create_user_name = #{p.createUserName}
             </if>
-                                                <if test="p.createTime != null and p.createTime !=''">
-                and  create_time =  #{p.createTime}
+            <if test="p.createTime != null and p.createTime !=''">
+                and create_time = #{p.createTime}
             </if>
-                                                <if test="p.updateUserId != null and p.updateUserId !=''">
-                and  update_user_id =  #{p.updateUserId}
+            <if test="p.updateUserId != null and p.updateUserId !=''">
+                and update_user_id = #{p.updateUserId}
             </if>
-                                                <if test="p.updateUserName != null and p.updateUserName !=''">
-                and  update_user_name =  #{p.updateUserName}
+            <if test="p.updateUserName != null and p.updateUserName !=''">
+                and update_user_name = #{p.updateUserName}
             </if>
-                                                <if test="p.updateTime != null and p.updateTime !=''">
-                and  update_time =  #{p.updateTime}
+            <if test="p.updateTime != null and p.updateTime !=''">
+                and update_time = #{p.updateTime}
             </if>
-                                </where>
+        </where>
     </sql>
 
     <!--定义根据-PartnerInfo当作查询条件返回对象-->
-    <select id="findByObject"  resultType="com.kidgrow.oprationcenter.model.PartnerInfo">
-        select <include refid="Column_List"/>
+    <select id="findByObject" resultType="com.kidgrow.oprationcenter.model.PartnerInfo">
+        select
+        <include refid="Column_List"/>
         from partner_info
         <include refid="where"/>
         order by id desc
@@ -86,9 +87,19 @@
 
     <!--定义根据-PartnerInfo当作查询条件返回对象集合-->
     <select id="findList" resultType="com.kidgrow.oprationcenter.model.PartnerInfo">
-        select <include refid="Column_List"/>
+        select
+        <include refid="Column_List"/>
         from partner_info
         <include refid="where"/>
         order by id desc
     </select>
+
+    <!--定义根据-PartnerName当作查询条件返回对象集合-->
+    <select id="findByName" resultType="com.kidgrow.oprationcenter.model.PartnerInfo">
+        select id,
+        partner_name
+        from partner_info
+        where is_del=0 and enabled=1 and partner_name LIKE concat('%',#{partnerName},'%')
+        order by partner_name desc,id desc
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/template/imageServer_template.sql b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/template/imageServer_template.sql
new file mode 100644
index 0000000..9848bbc
--- /dev/null
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-biz/src/main/resources/template/imageServer_template.sql
@@ -0,0 +1,557 @@
+CREATE TABLE `bonect`  (
+  `UUID` char(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT '唯一标识',
+  `OriginName` varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL COMMENT '光片名称',
+  `Sex` bit(1) NULL DEFAULT NULL COMMENT '性别。0:男,1:女',
+  `Seged` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否分割。0:未分割,1:已分割',
+  `AiStatus` tinyint(4) NOT NULL DEFAULT 0 COMMENT 'AI分析结果。0:未分析,-1:无效光片,21:分析完成',
+  `CreateTime` timestamp(0) NOT NULL DEFAULT current_timestamp(0) COMMENT '创建时间',
+  `ReturnTime` timestamp(0) NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '结果返回时间',
+  `Returned` bit(1) NOT NULL DEFAULT b'0' COMMENT '结果是否返回。0:未返回,1:已返回',
+  `CompleteTime` timestamp(0) NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT 'AI分析完成时间',
+  `RGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `RGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `RGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `RGPT1` float NOT NULL DEFAULT 0,
+  `RGPT2` float NOT NULL DEFAULT 0,
+  `RGPT3` float NOT NULL DEFAULT 0,
+  `CGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `CGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `CGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `CGPT1` float NOT NULL DEFAULT 0,
+  `CGPT2` float NOT NULL DEFAULT 0,
+  `CGPT3` float NOT NULL DEFAULT 0,
+  `ZGIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGIPT1` float NOT NULL DEFAULT 0,
+  `ZGIPT2` float NOT NULL DEFAULT 0,
+  `ZGIPT3` float NOT NULL DEFAULT 0,
+  `ZGIIIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGIIIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGIIIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGIIIPT1` float NOT NULL DEFAULT 0,
+  `ZGIIIPT2` float NOT NULL DEFAULT 0,
+  `ZGIIIPT3` float NOT NULL DEFAULT 0,
+  `ZGVT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGVT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGVT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGVPT1` float NOT NULL DEFAULT 0,
+  `ZGVPT2` float NOT NULL DEFAULT 0,
+  `ZGVPT3` float NOT NULL DEFAULT 0,
+  `JJIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJIPT1` float NOT NULL DEFAULT 0,
+  `JJIPT2` float NOT NULL DEFAULT 0,
+  `JJIPT3` float NOT NULL DEFAULT 0,
+  `JJIIIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJIIIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJIIIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJIIIPT1` float NOT NULL DEFAULT 0,
+  `JJIIIPT2` float NOT NULL DEFAULT 0,
+  `JJIIIPT3` float NOT NULL DEFAULT 0,
+  `JJVT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJVT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJVT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `JJVPT1` float NOT NULL DEFAULT 0,
+  `JJVPT2` float NOT NULL DEFAULT 0,
+  `JJVPT3` float NOT NULL DEFAULT 0,
+  `ZJIIIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZJIIIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZJIIIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZJIIIPT1` float NOT NULL DEFAULT 0,
+  `ZJIIIPT2` float NOT NULL DEFAULT 0,
+  `ZJIIIPT3` float NOT NULL DEFAULT 0,
+  `ZJIIIBY` float NOT NULL DEFAULT 0,
+  `ZJVT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZJVT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZJVT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZJVPT1` float NOT NULL DEFAULT 0,
+  `ZJVPT2` float NOT NULL DEFAULT 0,
+  `ZJVPT3` float NOT NULL DEFAULT 0,
+  `ZJVBY` float NOT NULL DEFAULT 0,
+  `YJIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJIPT1` float NOT NULL DEFAULT 0,
+  `YJIPT2` float NOT NULL DEFAULT 0,
+  `YJIPT3` float NOT NULL DEFAULT 0,
+  `YJIBY` float NOT NULL DEFAULT 0,
+  `YJIIIT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJIIIT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJIIIT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJIIIPT1` float NOT NULL DEFAULT 0,
+  `YJIIIPT2` float NOT NULL DEFAULT 0,
+  `YJIIIPT3` float NOT NULL DEFAULT 0,
+  `YJIIIBY` float NOT NULL DEFAULT 0,
+  `YJVT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJVT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJVT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YJVPT1` float NOT NULL DEFAULT 0,
+  `YJVPT2` float NOT NULL DEFAULT 0,
+  `YJVPT3` float NOT NULL DEFAULT 0,
+  `YJVBY` float NOT NULL DEFAULT 0,
+  `TZGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `TZGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `TZGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `TZGPT1` float NOT NULL DEFAULT 0,
+  `TZGPT2` float NOT NULL DEFAULT 0,
+  `TZGPT3` float NOT NULL DEFAULT 0,
+  `GGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `GGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `GGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `GGPT1` float NOT NULL DEFAULT 0,
+  `GGPT2` float NOT NULL DEFAULT 0,
+  `GGPT3` float NOT NULL DEFAULT 0,
+  `SJGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `SJGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `SJGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `SJGPT1` float NOT NULL DEFAULT 0,
+  `SJGPT2` float NOT NULL DEFAULT 0,
+  `SJGPT3` float NOT NULL DEFAULT 0,
+  `YGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `YGPT1` float NOT NULL DEFAULT 0,
+  `YGPT2` float NOT NULL DEFAULT 0,
+  `YGPT3` float NOT NULL DEFAULT 0,
+  `ZGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZGPT1` float NOT NULL DEFAULT 0,
+  `ZGPT2` float NOT NULL DEFAULT 0,
+  `ZGPT3` float NOT NULL DEFAULT 0,
+  `DDJGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `DDJGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `DDJGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `DDJGPT1` float NOT NULL DEFAULT 0,
+  `DDJGPT2` float NOT NULL DEFAULT 0,
+  `DDJGPT3` float NOT NULL DEFAULT 0,
+  `XDJGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `XDJGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `XDJGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `XDJGPT1` float NOT NULL DEFAULT 0,
+  `XDJGPT2` float NOT NULL DEFAULT 0,
+  `XDJGPT3` float NOT NULL DEFAULT 0,
+  `ZIGT1` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZIGT2` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZIGT3` varchar(4) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '-1',
+  `ZIGPT1` float NOT NULL DEFAULT 0,
+  `ZIGPT2` float NOT NULL DEFAULT 0,
+  `ZIGPT3` float NOT NULL DEFAULT 0,
+  `gpBoneAge` float NOT NULL DEFAULT -1 COMMENT 'GP骨龄',
+  `Message` tinyint(4) NOT NULL DEFAULT 0 COMMENT '失败原因',
+  `Source` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '来源',
+  PRIMARY KEY (`UUID`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'AI骨等级分析记录表' ROW_FORMAT = DYNAMIC;
+
+CREATE TABLE `child_info`  (
+  `id` varchar(36) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '孩子唯一标识',
+  `hospital_id` bigint(20) NULL COMMENT '医院的唯一标识',
+  `deparment_id` bigint(20) NULL COMMENT '医院科室的唯一标识',
+  `doctor_id` bigint(20) NULL COMMENT '医生的唯一标识',
+  `name` varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '孩子姓名',
+  `sex` tinyint(1) NOT NULL COMMENT '孩子性别,0表示男孩,1表示女孩',
+  `birthday` date NOT NULL COMMENT '孩子出生日期',
+  `identity_card_number` varchar(18) CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '孩子身份证号',
+  `diagnose_count` int(6) NOT NULL COMMENT '孩子H端诊断次数(只加不减)',
+  `address` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '家庭地址',
+  `phone` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '联系电话',
+  `is_del` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否删除:0:正常 1:删除',
+  `create_time` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',
+  `create_user_id` bigint(20) NULL COMMENT '创建账号的唯一标识',
+  `create_user_name` varchar(50) NULL COMMENT '创建者名称',
+  `update_time` datetime NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+  `update_user_id` bigint(20) NULL COMMENT '更新数据的账号的唯一标识',
+  `update_user_name` varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '更新数据的用户的姓名',
+  PRIMARY KEY (`id`),
+  UNIQUE INDEX `pk_id`(`id`) USING BTREE COMMENT '主键唯一索引',
+  INDEX `idx_name_birthday`(`child_name`, `child_birthday`) USING BTREE COMMENT '孩子名字和出生日的普通索引'
+) COMMENT = '孩子档案信息表';
+
+CREATE TABLE `diagnose_record`  (
+  `id` varchar(36) NOT NULL COMMENT '诊断记录唯一ID',
+  `hospital_id` bigint(20) NULL COMMENT '医院唯一ID',
+  `department_id` bigint(20) NULL COMMENT '科室唯一ID',
+  `doctor_id` bigint(20) NULL COMMENT '医生唯一ID',
+  `child_id` varchar(36) NULL COMMENT '儿童档案ID',
+  `diagnose_time` date NULL COMMENT '诊断日期',
+  `life_age` decimal(4, 2) NULL COMMENT '诊断时的生活年龄',
+  `xray_name` varchar(200) NULL COMMENT '光片名称',
+  `ai_id` varchar(36) NULL COMMENT 'AI业务处理ID',
+  `evaluation_status` tinyint(2) NULL DEFAULT 0 COMMENT '评价状态(1:提交AI分析;2:AI分析失败;3:AI分析成功;4:提交高级分析;5:高级分析失败:6:高级分析成功;7:自主分析;8:报告采用)',
+  `generate_report` tinyint(1) NULL DEFAULT 0 COMMENT '是否生成报告(0:未生成;1:已生成)',
+  `is_del` bit(1) NOT NULL DEFAULT 0 COMMENT '是否删除(1:删除,0:未删除)',
+  `enable` bit(1) NOT NULL DEFAULT 1 COMMENT '是否启用(0:停用;1:启用)',
+  `create_user_id` bigint(20) NULL COMMENT '创建者ID',
+  `create_user_name` varchar(50) NULL COMMENT '创建者账号',
+  `create_time` datetime(0) NULL DEFAULT now() ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '创建时间',
+  `update_user_id` bigint(20) NULL COMMENT '更新者ID',
+  `update_user_name` varchar(50) NULL COMMENT '更新者账号',
+  `update_time` datetime(0) NULL ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) COMMENT = '诊断记录表';
+
+CREATE TABLE `evaluation_detail`  (
+  `id` bigint(20) NOT NULL COMMENT '骨龄评价序号',
+  `record_id` bigint(20) NOT NULL COMMENT '评价记录ID',
+  `diagnostic_id` varchar(36) NOT NULL COMMENT '诊断记录ID',
+  `xray_name` varchar(255) NULL COMMENT '光片地址与名称',
+  `evaluation_type` tinyint(1) NULL DEFAULT 1 COMMENT '评价方式(1:AI;2:自读;3:高级)',
+  `rus_evaluation_method` tinyint(1) NULL COMMENT '评价方法(1:RUS_CHN;2:TW3-C RUS;3:TW3 RUS;4:G-P)',
+  `rus_bone_age` decimal(4, 2) NULL DEFAULT 0 COMMENT 'RUS骨龄',
+  `rus_bone_age_twelve` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '12进制骨龄',
+  `rg_level` varchar(5) NULL COMMENT '桡骨等级',
+  `rg_credible` bit(1) NULL DEFAULT 1 COMMENT '桡骨等级是否可信(1:可信;0:不可信)',
+  `cg_level` varchar(5) NULL COMMENT '尺骨等级',
+  `cg_credible` bit(1) NULL DEFAULT 1 COMMENT '尺骨等级是否可信(1:可信;0:不可信)',
+  `zgi_level` varchar(5) NULL COMMENT '掌骨I等级',
+  `zgi_credible` bit(1) NULL DEFAULT 1 COMMENT '掌骨I等级是否可信(1:可信;0:不可信)',
+  `zgiii_level` varchar(5) NULL COMMENT '掌骨III等级',
+  `zgiii_credible` bit(1) NULL DEFAULT 1 COMMENT '掌骨III等级是否可信(1:可信;0:不可信)',
+  `zgv_level` varchar(5) NULL COMMENT '掌骨V等级',
+  `zgv_credible` bit(1) NULL DEFAULT 1 COMMENT '掌骨V等级是否可信(1:可信;0:不可信)',
+  `jji_level` varchar(5) NULL COMMENT '近节指骨I等级',
+  `jji_credible` bit(1) NULL DEFAULT 1 COMMENT '近节指骨I等级是否可信(1:可信;0:不可信)',
+  `jjiii_level` varchar(5) NULL COMMENT '近节指骨III等级',
+  `jjiii_credible` bit(1) NULL DEFAULT 1 COMMENT '近节指骨III等级是否可信(1:可信;0:不可信)',
+  `jjv_level` varchar(5) NULL COMMENT '近节指骨V等级',
+  `jjv_credible` bit(1) NULL DEFAULT 1 COMMENT '近节指骨V等级是否可信(1:可信;0:不可信)',
+  `zjiii_level` varchar(5) NULL COMMENT '中节指骨III等级',
+  `zjiii_credible` bit(1) NULL DEFAULT 1 COMMENT '中节指骨III等级是否可信(1:可信;0:不可信)',
+  `zjiii_mutation_rate` float NULL COMMENT '中节指骨III变异概率',
+  `zjv_level` varchar(5) NULL COMMENT '中节指骨V等级',
+  `zjv_credible` bit(1) NULL DEFAULT 1 COMMENT '中节指骨V等级是否可信(1:可信;0:不可信)',
+  `zjv_mutation_rate` float NULL COMMENT '中节指骨V变异概率',
+  `yji_level` varchar(5) NULL COMMENT '远节指骨I等级',
+  `yji_credible` bit(1) NULL DEFAULT 1 COMMENT '远节指骨I等级是否可信(1:可信;0:不可信)',
+  `yji_mutation_rate` float NULL COMMENT '远节指骨I变异概率',
+  `yjiii_level` varchar(5) NULL COMMENT '远节指骨III等级',
+  `yjiii_credible` bit(1) NULL DEFAULT 1 COMMENT '远节指骨III等级是否可信(1:可信;0:不可信)',
+  `yjiii_mutation_rate` float NULL COMMENT '远节指骨III变异概率',
+  `yjv_level` varchar(5) NULL COMMENT '远节指骨V等级',
+  `yjv_credible` bit(1) NULL DEFAULT 1 COMMENT '远节指骨V等级是否可信(1:可信;0:不可信)',
+  `yjv_mutation_rate` float NULL COMMENT '远节指骨V变异概率',
+  `carpal_evaluation_method` tinyint(1) NULL COMMENT 'Carpal骨龄评价方法(1:TW3-C Carpal;2:TW3 Carpal)',
+  `carpal_bone_age` decimal(4, 2) NULL DEFAULT 0 COMMENT '腕骨骨龄',
+  `tzg_level` varchar(5) NULL COMMENT '头状骨等级',
+  `tzg_credible` bit(1) NULL DEFAULT 1 COMMENT '头状骨等级可信度(1:可信;0:不可信)',
+  `gg_level` varchar(5) NULL COMMENT '钩骨等级',
+  `gg_credible` bit(1) NULL DEFAULT 1 COMMENT '钩骨等级可信度(1:可信;0:不可信)',
+  `sjg_level` varchar(5) NULL COMMENT '三角骨等级',
+  `sjg_credible` bit(1) NULL DEFAULT 1 COMMENT '三角骨等级可信度(1:可信;0:不可信)',
+  `yg_level` varchar(5) NULL COMMENT '月骨等级',
+  `yg_credible` bit(1) NULL DEFAULT 1 COMMENT '月骨等级可信度(1:可信;0:不可信)',
+  `zg_level` varchar(5) NULL COMMENT '舟骨等级',
+  `zg_credible` bit(1) NULL DEFAULT 1 COMMENT '舟骨等级可信度(1:可信;0:不可信)',
+  `ddjg_level` varchar(5) NULL COMMENT '大多角骨等级',
+  `ddjg_credible` bit(1) NULL DEFAULT 1 COMMENT '大多角骨等级可信度(1:可信;0:不可信)',
+  `xdjg_level` varchar(5) NULL COMMENT '小多角骨等级',
+  `xdjg_credible` bit(1) NULL DEFAULT 1 COMMENT '小多角骨骨等级可信度(1:可信;0:不可信)',
+  `zig_level` varchar(5) NULL COMMENT '籽骨等级',
+  `image_finding` varchar(1000) NULL COMMENT '影像表现',
+  `image_impression` varchar(1000) NULL COMMENT '影像印象',
+  `is_del` bit(1) NOT NULL DEFAULT 0 COMMENT '是否删除(0:未删除;1:已删除)',
+  `enable` bit(1) NOT NULL DEFAULT 1 COMMENT '是否启用(0:停用;1:启用)',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建者ID',
+  `create_user_name` varchar(50) NOT NULL COMMENT '创建者账号',
+  `create_time` datetime NOT NULL DEFAULT now() ON UPDATE CURRENT_TIMESTAMP COMMENT '创建时间',
+  `update_user_id` bigint(20) NULL COMMENT '更新者ID',
+  `update_user_name` varchar(50) NULL COMMENT '更新者账号',
+  `update_time` datetime NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+  PRIMARY KEY (`id`),
+  INDEX(`record_id`, `diagnostic_id`)
+) COMMENT = '骨龄评价记录明细表';
+
+CREATE TABLE `evaluation_record`  (
+  `id` bigint(20) NOT NULL COMMENT '骨龄评价序号',
+  `hospital_id` bigint(20) NULL COMMENT '医院ID',
+  `department_id` bigint(20) NULL COMMENT '科室ID',
+  `doctor_id` bigint(20) NULL COMMENT '医生ID',
+  `child_id` varchar(36) NOT NULL COMMENT '儿童档案ID',
+  `diagnostic_id` varchar(36) NOT NULL COMMENT '诊断记录ID',
+  `xray_name` varchar(255) NULL COMMENT '光片地址与名称',
+  `xray_upload_type` tinyint(1) NULL DEFAULT 1 COMMENT 'X光片上传方式(1:web端;2:移动端;3:Pacs)',
+  `evaluation_status` tinyint(2) NULL DEFAULT 0 COMMENT '评价状态(1:提交AI分析;2:AI分析失败;3:AI分析成功;4:提交高级分析;5:高级分析失败:6:高级分析成功;7:自主分析;8:报告采用)',
+  `operation_time` datetime NULL COMMENT '高级读片时间',
+  `operation_user_name` varchar(50) NULL COMMENT '高级读片员姓名',
+  `is_del` bit(1) NOT NULL DEFAULT 0 COMMENT '是否删除(0:未删除;1:已删除)',
+  `enable` bit(1) NOT NULL DEFAULT 1 COMMENT '是否启用(0:停用;1:启用)',
+  `create_user_id` bigint(20) NULL COMMENT '创建者ID',
+  `create_user_name` varchar(50) NULL COMMENT '创建者账号',
+  `create_time` datetime(0) NULL DEFAULT now() ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '创建时间',
+  `update_user_id` bigint(20) NULL COMMENT '更新者ID',
+  `update_user_name` varchar(50) NULL COMMENT '更新者账号',
+  `update_time` datetime(0) NULL ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) COMMENT = '骨龄评价记录表';
+
+CREATE TABLE `partner_info`  (
+  `id` bigint(20) NOT NULL COMMENT 'ID',
+  `partner_name` varchar(50) NULL COMMENT '合作商名称',
+  `partner_type` tinyint(1) NULL COMMENT '合作商类型(1:区域经销商;2:设备供应商;3:系统集成商;4:行业代理商;5:个人)',
+  `partner_address` varchar(100) NULL COMMENT '合作商地址',
+  `partner_province` varchar(50) NULL COMMENT '合作商所在省',
+  `partner_city` varchar(50) NULL COMMENT '合作商所在市',
+  `partner_area` varchar(50) NULL COMMENT '合作商所在区县',
+  `partner_link_man` varchar(50) NULL COMMENT '合作商联系人',
+  `partner_link_telephone` varchar(50) NULL COMMENT '合作商联系电话',
+  `partner_bussiness_area` varchar(300) NULL COMMENT '合作商合作区域',
+  `partner_introduce` varchar(1000) NULL COMMENT '合作商简介',
+  `partner_unique_code` varchar(100) NULL COMMENT '合作商唯一标识码',
+  `is_del` bit(1) NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用 ',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) COMMENT = '合作商信息表';
+
+CREATE TABLE `product_order`  (
+  `id` bigint(20) NOT NULL COMMENT '充值记录ID',
+  `hospital_id` bigint(20) NOT NULL COMMENT '医院标识id',
+  `hospital_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '医院名称',
+  `department_id` bigint(20) NOT NULL COMMENT '科室ID',
+  `department_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '科室名称',
+  `contract_no` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '合同编号',
+  `contract_title` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '合同名称',
+  `contract_begin_time` datetime(0) NULL DEFAULT NULL COMMENT '合同开始时间',
+  `contract_end_time` datetime(0) NULL DEFAULT NULL COMMENT '合同结束时间',
+  `contract_time` datetime(0) NULL DEFAULT NULL COMMENT '合同签订日期',
+  `is_del` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `tenant_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '租户字段',
+  `create_user_org_code` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建者的部门',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `idx_sumption_other`(`hospital_id`, `department_id`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci COMMENT = '产品的充值记录-订单' ROW_FORMAT = DYNAMIC;
+
+CREATE TABLE `product_order_detail`  (
+  `id` bigint(20) NOT NULL COMMENT '充值订单明细ID',
+  `order_id` bigint(20) NOT NULL COMMENT '对应product_order表中的id',
+  `pro_id` bigint(20) NOT NULL COMMENT '产品/明细ID',
+  `pro_type` tinyint(1) NOT NULL COMMENT '产品类型0试用1正式',
+  `pro_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '产品/明细名称',
+  `is_share` bit(1) NOT NULL COMMENT '是否共享 0否 1是',
+  `is_del` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `ailight_count` int(6) NOT NULL DEFAULT 0 COMMENT '读片量',
+  `record_count` int(6) NOT NULL COMMENT '报告量',
+  `pro_begintime` datetime(0) NULL DEFAULT NULL COMMENT '有效的开始时间',
+  `pro_endtime` datetime(0) NULL DEFAULT NULL COMMENT '有效的结束时间',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `tenant_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '租户字段',
+  `create_user_org_code` varchar(20) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL COMMENT '创建者的部门',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `idx_sumption_other`(`pro_id`, `order_id`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci COMMENT = '账户明细' ROW_FORMAT = DYNAMIC;
+
+CREATE TABLE `product_order_record`  (
+  `id` bigint(20) NOT NULL COMMENT '充值订单明细ID',
+  `order_id` bigint(20) NOT NULL COMMENT '对应product_order表中的id',
+  `pro_id` bigint(20) NOT NULL COMMENT '产品/明细ID',
+  `pro_type` tinyint(1) NOT NULL COMMENT '产品类型0试用1正式',
+  `pro_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '产品/明细名称',
+  `is_share` bit(1) NOT NULL COMMENT '是否共享 0否 1是',
+  `is_del` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `ailight_count` int(6) NOT NULL DEFAULT 0 COMMENT '读片量',
+  `record_count` int(6) NOT NULL COMMENT '报告量',
+  `pro_begintime` datetime(0) NULL DEFAULT NULL COMMENT '有效的开始时间',
+  `pro_endtime` datetime(0) NULL DEFAULT NULL COMMENT '有效的结束时间',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `tenant_id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '租户字段',
+  `create_user_org_code` varchar(20) CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL COMMENT '创建者的部门',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `idx_sumption_other`(`pro_id`, `order_id`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = latin1 COLLATE = latin1_swedish_ci COMMENT = '产品/明显的充值记录' ROW_FORMAT = DYNAMIC;
+
+CREATE TABLE `report_content`  (
+  `id` bigint(20) NOT NULL COMMENT '唯一ID',
+  `hospital_id` bigint(20) NULL COMMENT '医院ID',
+  `hospital_name` varchar(50) NULL COMMENT '医院名称',
+  `department_id` bigint(20) NULL COMMENT '科室ID',
+  `department_name` varchar(50) NULL COMMENT '科室名称',
+  `doctor_id` bigint(20) NULL COMMENT '医生ID',
+  `doctor_name` varchar(20) NULL COMMENT '医生姓名',
+  `child_id` varchar(36) NULL COMMENT '儿童档案ID',
+  `child_name` varchar(20) NULL COMMENT '儿童姓名',
+  `child_sex` tinyint(1) NULL COMMENT '儿童性别(0:男;1:女)',
+  `child_birthday` date NULL COMMENT '儿童出生日期',
+  `image_name` varchar(255) NULL COMMENT '光片名称',
+  `diagnose_id` varchar(32) NULL COMMENT '诊断记录ID',
+  `report_type` tinyint(1) NULL COMMENT '1:影像检验报告\r\n2:生长发育报告',
+  `report_name` varchar(20) NULL COMMENT '报告名称',
+  `clinic_number` varchar(20) NULL COMMENT '门诊号',
+  `bed_number` varchar(20) NULL COMMENT '床号',
+  `study_number` varchar(20) NULL COMMENT '检查单号',
+  `study_date` date NULL COMMENT '检查日期',
+  `life_age` decimal(4, 2) NULL COMMENT '儿童生活年龄',
+  `body_part_examined` varchar(50) NULL COMMENT '检查部位',
+  `rus_evaluation_method` varchar(20) NULL COMMENT '掌指骨评价方法',
+  `rus_bone_age` decimal(4, 2) NULL COMMENT '掌指骨骨龄',
+  `rus_bone_age_twelve` varchar(50) NULL COMMENT '十二进制掌指骨骨龄',
+  `rus_bone_age_percentile` varchar(8) NULL COMMENT '掌指骨骨龄百分位',
+  `rg_level` varchar(5) NULL COMMENT '桡骨等级',
+  `cg_level` varchar(5) NULL COMMENT '尺骨等级',
+  `zgi_level` varchar(5) NULL COMMENT '掌骨I等级',
+  `zgiii_level` varchar(5) NULL COMMENT '掌骨III等级',
+  `zgv_level` varchar(5) NULL COMMENT '掌骨V等级',
+  `jji_level` varchar(5) NULL COMMENT '近节指骨I等级',
+  `jjiii_level` varchar(5) NULL COMMENT '近节指骨III等级',
+  `jjv_level` varchar(5) NULL COMMENT '近节指骨V等级',
+  `zjiii_level` varchar(5) NULL COMMENT '中节指骨III等级',
+  `zjv_level` varchar(5) NULL COMMENT '中节指骨V等级',
+  `yji_level` varchar(5) NULL COMMENT '远节指骨I等级',
+  `yjiii_level` varchar(5) NULL COMMENT '远节指骨III等级',
+  `yjv_level` varchar(5) NULL COMMENT '远节指骨V等级',
+  `carpal_evaluation_method` varchar(20) NULL COMMENT '腕骨评价方法',
+  `carpal_bone_age` decimal(4, 2) NULL COMMENT '腕骨骨龄',
+  `carpal_bone_age_percentile` varchar(8) NULL COMMENT '腕骨骨龄百分位',
+  `rus_age_resuce_capal_age_sds` varchar(8) NULL COMMENT '掌指骨骨龄减腕骨骨龄SDS',
+  `tzg_level` varchar(5) NULL COMMENT '头状骨等级',
+  `gg_level` varchar(5) NULL COMMENT '钩骨等级',
+  `sjg_level` varchar(5) NULL COMMENT '三角骨等级',
+  `yg_level` varchar(5) NULL COMMENT '月骨等级',
+  `zg_level` varchar(5) NULL COMMENT '舟骨等级',
+  `ddjg_level` varchar(5) NULL COMMENT '大多角骨等级',
+  `xdjg_level` varchar(5) NULL COMMENT '小多角骨等级',
+  `image_finding` varchar(1000) NULL COMMENT '影像表现',
+  `image_impression` varchar(1000) NULL COMMENT '影像印象',
+  `is_del` bit(1) NOT NULL DEFAULT 0 COMMENT '是否删除(0:未删除;1:已删除)',
+  `enable` bit(1) NOT NULL DEFAULT 1 COMMENT '是否启用(0:停用;1:启用)',
+  `create_user_id` bigint(20) NULL COMMENT '创建者ID',
+  `create_user_name` varchar(50) NULL COMMENT '创建者账号',
+  `create_time` datetime(0) NULL DEFAULT now() ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '创建时间',
+  `update_user_id` bigint(20) NULL COMMENT '更新者ID',
+  `update_user_name` varchar(50) NULL COMMENT '更新者账号',
+  `update_time` datetime(0) NULL ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) COMMENT = '报告内容表';
+
+CREATE TABLE `server_Info`  (
+  `id` bigint(20) NOT NULL COMMENT 'ID',
+  `partner_id` bigint(20) NULL COMMENT '合作商ID',
+  `hospital_id` bigint(20) NULL COMMENT '医院ID',
+  `department_id` bigint(20) NULL COMMENT '科室ID',
+  `operation_system` varchar(50) NULL COMMENT '操作系统类型及版本',
+  `main_board_uuid` varchar(100) NULL COMMENT '主板UUID',
+  `cpu_id` varchar(100) NULL COMMENT 'CPU ID',
+  `bios_serial_number` varchar(100) NULL COMMENT 'BIOS序列号',
+  `machine_guid` varchar(100) NULL COMMENT '主机GUID',
+  `network_card_mac` varchar(100) NULL COMMENT '网卡MAC地址',
+  `hard_disk_sn` varchar(100) NULL COMMENT '硬盘序列号',
+  `application_system_unique_code` varchar(50) NULL COMMENT '应用系统唯一标识符',
+  `is_del` bit(1) NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用 ',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) COMMENT = '服务器相关信息';
+
+CREATE TABLE `sys_department`  (
+  `id` bigint(20) NOT NULL COMMENT '科室/部门id',
+  `department_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '科室/部门名称 同组织名称',
+  `hospital_id` bigint(20) NOT NULL COMMENT '医院Id',
+  `is_del` bit(1) NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用',
+  `create_user_id` bigint(20) NULL DEFAULT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人账号',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  `accounts_count` smallint(2) NOT NULL COMMENT '帐号数量 默认6',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `idx_dep_other`(`department_name`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '科室表' ROW_FORMAT = DYNAMIC;
+
+CREATE TABLE `sys_doctor`  (
+  `id` bigint(20) NOT NULL COMMENT '医生ID',
+  `hospital_id` bigint(20) NOT NULL COMMENT '所属医院ID',
+  `hospital_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医院名称',
+  `department_id` bigint(20) NOT NULL COMMENT '科室ID',
+  `department_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '科室名称',
+  `doctor_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医生姓名',
+  `doctor_logo` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT 'image/touxiang.png' COMMENT '医生的头像',
+  `doctor_ccie` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医生资质证书',
+  `doctor_tel` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医生联系方式',
+  `doctor_password` varchar(50) NULL COMMENT '登录密码',
+  `doctor_rank_id` bigint(20) NULL DEFAULT NULL COMMENT '职称ID',
+  `doctor_rank` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '职称',
+  `doctor_other_link` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医生其它联系方式',
+  `doctor_email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医生的email',
+  `doctor_about` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医生简介',
+  `is_del` bit(1) NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `doctor_state` bit(1) NOT NULL DEFAULT b'0' COMMENT '医生状态 1正常 0试用',
+  `doctor_type` tinyint(1) NOT NULL DEFAULT 2 COMMENT '医生类型 0H+C端都可用   1H端   2C端 默认2',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '启用禁用状态,1启用,0停用 ',
+  `create_user_id` bigint(20) UNSIGNED ZEROFILL NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  `is_admin_user` bit(1) NULL DEFAULT b'0' COMMENT '是否管理帐号 0否1是',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `idx_doctor_other`(`hospital_id`, `doctor_name`, `doctor_tel`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
+
+CREATE TABLE `sys_hospital`  (
+  `id` bigint(20) NOT NULL COMMENT '医院ID',
+  `hospital_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '医院名称',
+  `hospital_short_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院简称',
+  `hospital_code` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院编码',
+  `hospital_type_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '医院类型ID  从字典表关联 社区/儿保等等之类',
+  `hospital_type_name` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院类型 社区/儿保等等之类',
+  `hospital_tel` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院电话',
+  `hospital_province` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '省名称',
+  `hospital_city` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '城市名称',
+  `hospital_area` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院所在地区名称',
+  `area_code` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区号',
+  `hospital_link` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院联系人',
+  `hospital_adress` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院地址',
+  `latitude` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所在位置纬度',
+  `longitude` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所在位置经度',
+  `hospital_qualified_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '资质ID',
+  `hospital_qualified_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '资质(三甲医院)',
+  `hospital_lit_logo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT '医院logo  缩略图',
+  `hospital_logo` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '医院logo 原图',
+  `hospital_adimage` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院简介图片',
+  `hospital_about` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '医院简介',
+  `hospital_state` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '服务状态 0试用 1正式',
+  `enabled` bit(1) NULL DEFAULT b'1' COMMENT '状态,1启用,0停用 ',
+  `is_del` bit(1) NULL DEFAULT b'0' COMMENT '是否删除,1删除,0未删除',
+  `create_user_id` bigint(20) NOT NULL COMMENT '创建人ID',
+  `create_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '创建人账号',
+  `update_user_id` bigint(20) NULL DEFAULT NULL COMMENT '更新人ID',
+  `update_user_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人账号',
+  `create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
+  `update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`) USING BTREE,
+  INDEX `idx_hospital_other`(`hospital_name`, `hospital_area`, `is_screen`, `tenant_id`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '医院基础信息表' ROW_FORMAT = DYNAMIC;
+
diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml
index 2365810..5882e7a 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/resources/application.yml
@@ -95,6 +95,8 @@
       - equipment_docking
       - hospital_screening
       - screening_organization_info
+      - partner_info
+      - partner_docking_info
     ignoreSqls:
       - com.kidgrow.usercenter.mapper.SysRoleMapper.findAll
       - com.kidgrow.oprationcenter.mapper.ConsumptionRecordMapper.findDetailList
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerDockingInfo.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerDockingInfo.html
index 0265ee1..a6d43a9 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerDockingInfo.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerDockingInfo.html
@@ -1,9 +1,9 @@
 <div class="layui-card">
     <div class="layui-card-header">
-        <h2 class="header-title">合作商客户对接信息表</h2>
+        <h2 class="header-title">合作商客户对接管理</h2>
         <span class="layui-breadcrumb pull-right">
-          <a href="#!console">首页</a>
-          <a><cite>合作商客户对接信息表</cite></a>
+            <a href="#!console">首页</a>
+            <a><cite>合作商客户对接管理</cite></a>
         </span>
     </div>
 
@@ -11,42 +11,401 @@
     <div class="layui-card-body">
         <div class="layui-form toolbar">
             搜索:
-            <input id="partnerDockingInfo-edit-value" class="layui-input search-input" type="text" placeholder="输入关键字"/>&emsp;
-            <button id="partnerDockingInfo-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
-            <button id="partnerDockingInfo-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
+            <input id="partnerName-search" class="layui-input search-input" type="text" placeholder="按合作商名称" />&emsp;
+            <input id="hospitalName-search" class="layui-input search-input" type="text" placeholder="按医院名称" />&emsp;
+            <button id="partnerDockingInfo-btn-search" class="layui-btn icon-btn  permissions"
+                permissions="partnerDockingInfo-list"><i class="layui-icon">&#xe615;</i>搜索</button>
+            <button id="partnerDockingInfo-btn-add" class="layui-btn icon-btn  permissions"
+                permissions="partnerDockingInfo-edit"><i class="layui-icon">&#xe654;</i>添加</button>
         </div>
-
         <!-- 数据表格 -->
         <table class="layui-table" id="partnerDockingInfo-table" lay-filter="partnerDockingInfo-table"></table>
+
     </div>
 </div>
 
+<!-- 表格操作列 -->
+<script type="text/html" id="partnerDockingInfo-table-bar">
+    <a class="layui-btn layui-btn-primary layui-btn-xs permissions" permissions="partnerDockingInfo-edit" lay-event="edit">修改</a>
+    <a class="layui-btn layui-btn-danger  layui-btn-xs permissions" permissions="partnerDockingInfo-del" lay-event="del">删除</a>
+    <a class="layui-btn layui-btn-xs permissions" permissions="partnerDockingInfo-download" lay-event="download">下载数据库脚本</a>
+
+</script>
+<!-- 表格状态列 -->
+<script type="text/html" id="partnerDockingInfo-status">
+    <input type="checkbox" lay-filter="partnerDockingInfo-status" value="{{d.id}}" lay-skin="switch" lay-text="启用|暂停"
+           {{d.dockingStatus==1?'checked':''}} class="permissions" permissions="partnerDockingInfo-status"/>
+</script>
+
+<!-- 新增/修改表单弹窗 -->
+<script type="text/html" id="partnerDockingInfo-model">
+    <form id="partnerDockingInfo-form" lay-filter="partnerDockingInfo-form" class="layui-form model-form">
+        <input name="id" type="hidden"/>
+        <div class="layui-form-item">
+            <label class="layui-form-label" style="width: 100px;">合作商名称</label>
+            <div class="layui-input-inline" style="width: 200px;">
+                <!-- <input name="partnerName" id="partnerName" placeholder="请输入合作商名称" lay-verify="required" required
+                       type="text" class="layui-input" maxlength="100" style="width: 200px;"/> -->
+                    <select id="partnerId" name="partnerId" lay-filter="partnerId" placeholder="请选择合作商"  
+                       lay-verify="required" required >
+                   <option value="">-请选择合作商-</option>
+               </select>        
+                <input type="hidden" name="partnerName" id="partnerName"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label" style="width: 100px;">医院名称</label>
+            <div class="layui-input-block" style="width: 250px;">
+                <input name="hospitalName" id="hospitalName" placeholder="请输入医院名称"lay-verify="required" required 
+                        type="text" class="layui-input" maxlength="100"  style="width: 200px;"/>
+                <input type="hidden" name="hospitalId" id="hospitalId"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label" style="width: 100px;">科室</label>
+            <div class="layui-input-inline" style="width: 200px;">
+                <select id="departmentId" name="departmentId" lay-filter="departmentId" placeholder="请选择科室" 
+                        lay-verify="required" required >
+                    <option value="">-请选择科室-</option>
+                </select>
+                <input name="departmentName" id="departmentName"  type="hidden" />
+            </div>
+        </div>
+        <!-- 对接类型,默认为1:影像版API-->
+        <!-- <input name="dockingType" id="partnerType" type="hidden" value="1" /> -->
+        <div class="layui-form-item">
+           <label class="layui-form-label"  style="width: 100px;">对接类型</label>
+            <div class="layui-input-inline"style="width: 200px;">
+                <input name="dockingTypeName" id="partnerTypeName" type="hidden" value="1" />
+                <select name="dockingType" id="partnerType" lay-filter="dockingType"
+                        style="width: 50px;">
+                    <option value="">请选择</option>
+                    <option value="1" selected>影像版API</option>
+                    <option value="2">妇幼版API</option>
+                   
+                </select>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label" style="width:100px" >对接系统版本</label>
+            <div class="layui-input-block"  style="width:250px;">
+                <input name="dockingVersion" lay-verify="required" required type="text" class="layui-input" maxlength="30" style="width: 200px;"/>
+            </div>
+        </div>
+
+        <div class="layui-form-item">
+            <label class="layui-form-label" style="width:100px" >服务器机器码</label>
+            <div class="layui-input-block"  style="width:250px;">
+                <input name="serverMachineCode" lay-verify="required" required type="text" class="layui-input" maxlength="100" style="width: 200px;"/>
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-form-label" style="width: 100px;">安装人</label>
+            <div class="layui-input-block" style="width: 250px;">
+                <input name="operationName" lay-verify="required" required type="text" class="layui-input" maxlength="30"style="width: 200px;"/>
+            </div>
+        </div>
+
+        <div class="layui-form-item model-form-footer">
+            <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">取消</button>
+            <button class="layui-btn" id="sure" lay-filter="partnerDockingInfo-form-submit" permissions="
+            partnerDocking-edit" lay-submit>保存
+            </button>
+        </div>
+    </form>
+</script>
 
 <script>
-    layui.use(['form', 'table', 'util', 'config', 'admin'], function () {
+    layui.use(['form', 'table', 'util', 'config', 'admin', 'autocomplete', 'laydate'], function () {
         var form = layui.form;
         var table = layui.table;
         var config = layui.config;
         var layer = layui.layer;
         var util = layui.util;
         var admin = layui.admin;
+        var laydate = layui.laydate;
+        var autocomplete = layui.autocomplete;
+        var $ = layui.jquery;
+
+        // 添加按钮点击事件
+        $('#partnerDockingInfo-btn-add').click(function () {
+            showEditModel(undefined, 1);
+        });
+        //// 刷新
+        // $('#docto-templete-btn-update').click(function () {
+        //     table.reload('app-table', { where: {} });
+        // });
 
         //渲染表格
         table.render({
             elem: '#partnerDockingInfo-table',
-            url: config.base_server + 'api-oprationcenter/parterdockinginfo/list',
-            where: {
-                access_token: config.getToken().access_token
-            },
+            url: config.base_server + 'api-opration/partnerdockinginfo',
+            method: 'GET',
+            headers: { 'Authorization': 'Bearer ' + config.getToken().access_token },
             page: true,
             cols: [[
-                {type: 'numbers'},
-                {field: 'id', sort: true, title: 'ID',width: 80},
-                {field: 'name', sort: true, title: 'name'},
-                {field: 'code', sort: true, title: 'code'},
-                {align: 'center', toolbar: '#partnerDockingInfo-table-bar', title: '操作',width: 250}
+                { field: 'partnerName', align: 'center', width: '10%', title: '合作商名称' },
+                { field: 'hospitalName', align: 'center', width: '15%', title: '医院名称' },
+                { field: 'departmentName', align: 'center', width: '7%', title: '科室名称' },
+                {
+                    field: 'dockingType', align: 'center', width: '7%', title: '对接类型', templet: function (d) {
+                        if (d.dockingType == null) {
+                            return "";
+                        } else if (d.dockingType == 1) {
+                            return "影像版API";
+                        } else if (d.dockingType == 2) {
+                            return "妇幼版API";
+                        } else {
+                            return "";
+                        }
+                    }
+                },
+                { field: 'dockingVersion', align: 'center', width: '5%', title: '对接版本' },
+                { field: 'dockingStatus', align: 'center', width: '7%', templet: '#partnerDockingInfo-status', title: '状态' },
+                { field: 'serverMachineCode', align: 'center', width: '10%', title: '设备电脑机器码' },
+                { field: 'accessKey', align: 'center', width: '10%', title: 'AccessKey' },
+                { field: 'operationName', align: 'center', width: '7%', title: '对接操作人' },
+                { field: 'operationTime', align: 'center', width: '7%', title: '对接日期', templet: "<div>{{layui.util.toDateString(d.operationTime, 'yyyy/MM/dd')}}</div>" },
+                { field: 'Id', align: 'center', toolbar: '#partnerDockingInfo-table-bar', title: '操作', width: '15%', fixed: 'right' }
             ]]
+            // , done: function () {
+            //     // $("[data-field='partnerId']").css('display','none');
+            //     // $("[data-field='hospitalId']").css('display','none');
+            //     $("[data-field='departmentId']").css('display','none');
+            // }
         });
 
+        // 工具条点击事件
+        table.on('tool(partnerDockingInfo-table)', function (obj) {
+            var data = obj.data;
+            var layEvent = obj.event;
+            if (layEvent === 'edit') { // 查看详情
+                showEditModel(data, 2);
+            } else if (layEvent === 'del') {
+                layer.confirm('确定删除此合作商客户对接信息吗?', function (i) {
+                    layer.close(i);
+                    layer.load(2);
+                    admin.req('api-opration/partnerdockinginfo/' + obj.data.id, {}, function (data) {
+                        layer.closeAll('loading');
+                        if (data.code == 0) {
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
+                            table.reload('partnerDockingInfo-table', {});
+                        } else {
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
+                        }
+                    }, 'delete');
+                });
+            } else if (layEvent == 'download') {
+
+                var url = config.base_server + "api-opration/partnerdockinginfo/downloaddb/";
+                // 获取XMLHttpRequest
+                var xmlResquest = new XMLHttpRequest();
+                //  发起请求
+                xmlResquest.open("POST", url, true);
+
+                // 设置请求头类型
+                xmlResquest.setRequestHeader("Content-type", "application/json");
+                xmlResquest.setRequestHeader("Authorization", "Bearer " + config.getToken().access_token);
+                xmlResquest.responseType = "blob";
+                var jsondata = JSON.stringify(obj.data);
+
+                //  返回
+                xmlResquest.onload = function () {
+                    if (this.status == 200) {
+                        var fileName = data.hospitalName+data.departmentName+".sql";
+                        var blob = this.response;
+                        var a = document.createElement('a');
+                        a.innerHTML = fileName;
+                        // 指定生成的文件名
+                        a.download = fileName;
+                        a.href = URL.createObjectURL(blob);
+                        document.body.appendChild(a);
+                        var evt = document.createEvent("MouseEvents");
+                        evt.initEvent("click", false, false);
+                        a.dispatchEvent(evt);
+                        document.body.removeChild(a);
+                    }
+                };
+                xmlResquest.send(jsondata);
+
+
+            }
+        });
+
+        // 搜索按钮点击事件
+        $('#partnerDockingInfo-btn-search').click(function () {
+            var partnerName = $('#partnerName-search').val();
+            var hospitalName = $('#hospitalName-search').val();
+            table.reload('partnerDockingInfo-table', { where: { partnerName: partnerName, hospitalName: hospitalName }, page: { curr: 1 } });
+        });
+
+        // 修改客户对接状态
+        form.on('switch(partnerDockingInfo-status)', function (obj) {
+            layer.load(2);
+            admin.req('api-opration/partnerdockinginfo/updatestatus', JSON.stringify({
+                id: obj.elem.value,
+                dockingStatus: obj.elem.checked ? 1 : 2
+            }), function (data) {
+                layer.closeAll('loading');
+                if (data.code == 0) {
+                    layer.msg(data.msg, { icon: 1, time: 2000 });
+                    table.reload('app-tablepartnerDockingInfo-table', {});
+                } else {
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
+                    $(obj.elem).prop('checked', !obj.elem.checked);
+                    form.render('checkbox');
+                }
+            }, 'POST');
+        });
+
+
+        //合作商选择赋值
+        form.on("select(partnerId)", function (data) {
+            $("#partnerName").val(data.elem[data.elem.selectedIndex].text);
+        })
+
+
+        //赋值对接类型ID
+        form.on("select(dockingType)", function (data) {
+            $("#dockingTypeName").val(data.elem[data.elem.selectedIndex].text);
+        });
+
+        //新增 和  更新   科室触发的事件
+        form.on('select(departmentId)', function () {
+            //将部门名称赋值
+            $('#departmentName').val($(this)[0].innerHTML);
+        });
+
+        // 表单提交事件
+        form.on('submit(partnerDockingInfo-form-submit)', function (data) {
+            layer.load(2);
+            admin.req('api-opration/partnerdockinginfo', JSON.stringify(data.field), function (data) {
+                layer.closeAll('loading');
+                if (data.code == 0) {
+                    // layer.msg(data.msg, { icon: 1, time: 2000 });
+                    layer.closeAll();
+                    table.reload('partnerDockingInfo-table', {});
+                } else {
+                    layer.msg(data.msg, { icon: 2, time: 2000 });
+                }
+            }, "POST");
+            return false;
+        });
+
+        // // 显示编辑弹窗
+        var showEditModel = function (data, index) {
+            var title = "";
+            if (index == 1) {
+                title = "新增";
+            } else if (index == 2) {
+                title = "修改";
+            }
+            layer.open({
+                type: 1,
+                title: title,
+                area: '550px',
+                offset: '120px',
+                content: $('#partnerDockingInfo-model').html(),
+                success: function () {
+                    $('#partnerDockingInfo-form')[0].reset();
+                    $('#partnerDockingInfo-form').attr('method', 'POST');
+                    if (data) {
+                        // if (index == 1) {
+                        //     $('#sure').hide();
+                        // }
+
+                        //加载合作商列表信息
+                        loadPartnerInfoList(data.partnerId);
+
+                        //重新装载科室
+                        getdepartment(data.hospitalId);
+
+                        form.val('partnerDockingInfo-form', data);
+
+                        form.render();
+
+                    } else {
+                        //加载合作商列表信息
+                        loadPartnerInfoList();
+                    }
+
+                    //自动完成-医院名称                    
+                    autocomplete.render({
+                        elem: $('#hospitalName')[0],
+                        url: config.base_server + 'api-user/syshospital/findByName',
+                        keywordsName: 'hospitalName', //查询关键字名称
+                        template_val: '{{d.hospitalName}}', //选择后文本框显示的数据字段
+                        template_txt: "<div class='layui-table-cell'>{{d.hospitalName}}</div>", //下拉列表模板
+                        onselect: function (resp) {
+                            $("#hospitalId").val(resp.id);
+                            //重新装载科室
+                            getdepartment(resp.id);
+                        }
+                    });
+                    //执行一个laydate实例
+                    laydate.render({
+                        elem: '#operationTime' //指定元素
+                        , type: 'datetime'
+                    });
+
+
+                }
+            });
+        };
+
+
+
+        //加载合作商信息列表
+        var loadPartnerInfoList = function (selectVal) {
+            admin.req('api-opration/partnerinfo', {
+                limit: 100,
+                page: 1
+            }, function (data) {
+                layer.closeAll('loading');
+                if (0 === data.code) {
+                    if (data.data.length > 0) {
+                        $.each(data.data, function (index, item) {
+                            //往下拉菜单里添加元素
+                            $('#partnerId').append(new Option(item.partnerName, item.id,
+                                false, (!strUtil.isEmpty(selectVal) && selectVal == item.id)));
+                        });
+
+                    }
+                } else {
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 2000
+                    });
+                }
+            }, 'get');
+        }
+
+        //获取科室
+        var getdepartment = function (data) {
+            admin.req('api-user/sysdepartment/findListByHospitalId', {
+                id: data
+            }, function (data) {
+                layer.closeAll('loading');
+                if (0 === data.code) {
+                    //department = data.data;
+                    $('#departmentId').empty();
+                    if (data.data.length > 0) {
+                        $('#departmentName').val(data.data[0].departmentName);
+                    }
+                    $.each(data.data, function (index, item) {
+                        //往下拉菜单里添加元素
+                        $('#departmentId').append(new Option(item.departmentName, item.id,
+                            false, false));
+                        form.render('select', 'partnerDockingInfo-form');
+                    })
+                    form.render();
+                } else {
+                    layer.msg(data.msg, {
+                        icon: 2,
+                        time: 2000
+                    });
+                }
+            }, 'get');
+        }
     });
 </script>
\ No newline at end of file
diff --git a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerInfo.html b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerInfo.html
index caab48f..fd8fb09 100644
--- a/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerInfo.html
+++ b/kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/partnerInfo.html
@@ -1,9 +1,9 @@
 <div class="layui-card">
     <div class="layui-card-header">
-        <h2 class="header-title">合作商信息表</h2>
+        <h2 class="header-title">合作商管理</h2>
         <span class="layui-breadcrumb pull-right">
-          <a href="#!console">首页</a>
-          <a><cite>合作商信息表</cite></a>
+            <a href="#!console">首页</a>
+            <a><cite>合作商管理</cite></a>
         </span>
     </div>
 
@@ -12,7 +12,15 @@
         <div class="layui-form toolbar">
             搜索:
             <input name="partnerName" id="partnerName-serch" placeholder="按合作商名称" type="text"
-                   class="layui-input search-input" maxlength="50" autocomplete="off"/>&emsp;
+                class="layui-input search-input" maxlength="50" />&emsp;
+            <select id="province" placeholder="省份" lay-filter="province">
+            </select>
+            <select id="city" placeholder="市" lay-filter="city">
+                <option value="">选择市</option>
+            </select>
+            <select id="area" placeholder="区县" lay-filter="areas">
+                <option value="">选择区县</option>
+            </select>
             <button id="partnerInfo-btn-search" class="layui-btn icon-btn permissions" permissions="partnerInfo-list"><i
                     class="layui-icon">&#xe615;</i>搜索
             </button>
@@ -22,8 +30,8 @@
         </div>
 
         <!-- 数据表格 -->
-        <table class="layui-table permissions" permissions="equipmentDocking-list" id="partnerInfo-table"
-               lay-filter="partnerInfo-table"></table>
+        <table class="layui-table permissions" permissions="partnerInfo-list" id="partnerInfo-table"
+            lay-filter="partnerInfo-table"></table>
     </div>
 </div>
 
@@ -41,14 +49,14 @@
         <div class="layui-form-item">
             <label class="layui-form-label">合作商名称</label>
             <div class="layui-input-block">
-                <input name="partnerName" lay-verify="required" required type="text" class="layui-input"/>
+                <input name="partnerName" lay-verify="required" required type="text" class="layui-input" maxlength="50"/>
             </div>
         </div>
         <div class="layui-form-item">
             <label class="layui-form-label">合作商类型</label>
             <div class="layui-input-block">
-                <input name="partnerType" id="partnerType" type="hidden" value="" />
-                <select name="partnerTypeName" id="partnerTypeName" lay-filter="partnerTypeName"
+                <!-- <input name="partnerTypeName" id="partnerTypeName" type="hidden" value=""/> -->
+                <select name="partnerType" id="partnerType" lay-filter="partnerTypeName"
                         style="width: 50px;">
                     <option value="">请选择</option>
                     <option value="1">区域经销商</option>
@@ -70,61 +78,56 @@
                         </select></div>
                     <div class="layui-col-sm4">
                         <select id="partnerCity" lay-verify="required" required placeholder="市"
-                                lay-filter="hospitalCity"
+                                lay-filter="partnerCity"
                                 style="width: 350px;">
                             <option value="">选择市</option>
                         </select></div>
                     <div class="layui-col-sm4">
                         <select id="partnerArea" lay-verify="required" required placeholder="区县"
-                                lay-filter="hospitalArea"
+                                lay-filter="partnerArea"
                                 style="width: 350px;">
                             <option value="">选择区县</option>
                         </select>
                     </div>
-                    <div class="layui-input-block">
-                        <input name="partnerAdress" type="text" class="layui-input" maxlength="100"/>
-                    </div>
+
                 </div>
+
             </div>
         </div>
-        <!--        <div class="layui-form-item">-->
-        <!--            <label class="layui-form-label">地址</label>-->
-        <!--            -->
-        <!--        </div>-->
+        <div class="layui-form-item">
+<!--            <label class="layui-form-label">地址</label>-->
+            <div class="layui-input-block">
+                <input name="partnerAddress" type="text" class="layui-input" maxlength="100"/>
+            </div>
+        </div>
         <div class="layui-form-item">
             <label class="layui-form-label">联系人</label>
             <div class="layui-input-block">
-                <input name="partnerLinkMan" lay-verify="required" required type="text" class="layui-input"/>
+                <input name="partnerLinkMan" lay-verify="required" required type="text" class="layui-input" maxlength="20"/>
             </div>
         </div>
         <div class="layui-form-item">
             <label class="layui-form-label">联系电话</label>
             <div class="layui-input-block">
-                <input name="partnerLinkTelephone" lay-verify="required" required type="text" class="layui-input"/>
+                <input name="partnerLinkTelephone" lay-verify="required|phone" required type="text" class="layui-input" maxlength="20"/>
             </div>
         </div>
         <div class="layui-form-item">
             <label class="layui-form-label">合作区域</label>
             <div class="layui-input-block">
-                <input name="partnerBussinessArea" lay-verify="required" required type="text" class="layui-input"/>
+                <input name="partnerBussinessArea" lay-verify="required" required type="text" class="layui-input" maxlength="100"/>
             </div>
         </div>
         <div class="layui-form-item">
             <label class="layui-form-label">简介</label>
             <div class="layui-input-block">
-                <input name="partnerIntroduce" lay-verify="required" required type="text" class="layui-input"/>
+                <textArea name="partnerIntroduce" class="layui-textarea" maxlength="300"/>
             </div>
         </div>
-        <div class="layui-form-item">
-            <label class="layui-form-label">标识码</label>
-            <div class="layui-input-block">
-                <input name="partnerUniqueCode" lay-verify="required" required type="text" class="layui-input"/>
-            </div>
-        </div>
-
+        
         <div class="layui-form-item model-form-footer">
             <button class="layui-btn layui-btn-primary" ew-event="closeDialog" type="button">取消</button>
-            <button class="layui-btn" id="sure" lay-filter="partnerInfo-form-submit" permissions="
+            <button class="layui-btn" lay-filter="partnerInfo-form-submit" permissions="
             partner-info-edit" lay-submit>保存
             </button>
         </div>
@@ -132,7 +135,7 @@
 </script>
 
 <script>
-    layui.use(['form', 'table', 'util', 'config', 'area', 'admin'], function () {
+    layui.use(['form', 'table', 'config', 'layer', 'util', 'admin', 'area', 'autocomplete'], function () {
         var form = layui.form;
         var table = layui.table;
         var config = layui.config;
@@ -140,24 +143,32 @@
         var util = layui.util;
         var admin = layui.admin;
         var area = layui.area;
+        var autocomplete = layui.autocomplete;
+        var laydate = layui.laydate;
+
+
+        // //省份数据加载
+        // area.areaData("#partnerProvince", 1, "", "");
+        // //装载市区数据
+        // form.on("select(partnerProvince)", function (data) {
+        //     area.areasClear("#partnerlArea", 3);
+        //     area.areaData("#partnerCity", 2, data.value, "");
+        // });
+        // //装载区县数据
+        // form.on("select(partnerCity)", function (data) {
+        //     area.areaData("#partnerArea", 3, data.value, "");
+        // });
 
         //省份数据加载
-        area.areaData("#hospitalProvince", 1, "", "");
+        area.areaData("#province", 1, "", "");
         //装载市区数据
-        form.on("select(hospitalProvince)", function (data) {
-            area.areasClear("#hospitalArea", 3);
-            area.areaData("#hospitalCity", 2, data.value, "");
-            defaultValData();
+        form.on("select(province)", function (data) {
+            area.areasClear("#area", 3);
+            area.areaData("#city", 2, data.value, "");
         });
         //装载区县数据
-        form.on("select(hospitalCity)", function (data) {
-            area.areaData("#hospitalArea", 3, data.value, "");
-            defaultValData();
-        });
-
-        //赋值合作商类型数据ID
-        form.on("select(partnerTypeName)", function (data) {
-            $("#partnerType").val(data.value);
+        form.on("select(city)", function (data) {
+            area.areaData("#area", 3, data.value, "");
         });
 
         // 添加按钮点击事件
@@ -166,19 +177,20 @@
         });
         //// 刷新
         $('#partnerInfo-btn-update').click(function () {
-            table.reload('app-table', {where: {}});
+            table.reload('partnerInfo-table', { where: {} });
         });
 
         //渲染表格
         table.render({
             elem: '#partnerInfo-table',
-            url: config.base_server + 'api-oprationcenter/partnerinfo/list',
+            url: config.base_server + 'api-opration/partnerinfo',
             method: 'GET',
-            headers: {'Authorization': 'Bearer ' + config.getToken().access_token},
+            headers: { 'Authorization': 'Bearer ' + config.getToken().access_token },
             page: true,
             cols: [[
-                {field: 'partnerName', align: 'left', width: '10%', title: '名称'},
-                {field: 'partnerType', align: 'left', width: '10%', title: '类型', templet:function (d) {
+                { field: 'partnerName', align: 'left', width: '10%', title: '名称' },
+                {
+                    field: 'partnerType', align: 'left', width: '10%', title: '类型', templet: function (d) {
                         if (d.partnerType == null) {
                             return "";
                         } else if (d.partnerType == 1) {
@@ -194,19 +206,20 @@
                         } else {
                             return "";
                         }
-                    }},
+                    }
+                },
                 {
-                    field: 'partnerAddress', align: 'left', width: '10%', title: '地址', templet: function (d) {
+                    field: 'partnerAddress', align: 'left', width: '20%', title: '地址', templet: function (d) {
                         return ((d.partnerProvince == null) ? "" : d.partnerProvince) + " " +
                             ((d.partnerCity == null) ? "" : d.partnerCity) + " " +
                             ((d.partnerArea == null) ? "" : d.partnerArea) + " " +
                             ((d.partnerAddress == null) ? "" : d.partnerAddress)
                     }
                 },
-                {field: 'partnerLinkMan', align: 'left', width: '10%', title: '联系人'},
-                {field: 'partnerLinkTelephone', align: 'left', width: '10%', title: '联系电话'},
-                {field: 'partnerBussinessArea', align: 'left', width: '10%', title: '合作区域'},
-                {field: 'partnerUniqueCode', align: 'left', width: '10%', title: '标识码'},
+                { field: 'partnerLinkMan', align: 'left', width: '7%', title: '联系人' },
+                { field: 'partnerLinkTelephone', align: 'left', width: '7%', title: '联系电话' },
+                { field: 'partnerBussinessArea', align: 'left', width: '15%', title: '合作区域' },
+                { field: 'partnerUniqueCode', align: 'left', width: '10%', title: '标识码' },
                 {
                     field: 'createTime',
                     align: 'center',
@@ -214,8 +227,7 @@
                     title: '创建日期',
                     templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy/MM/dd')}}</div>"
                 },
-                {field: 'id', align: 'center', width: '10%', toolbar: '#partnerInfo-bar', title: '操作', fixed: 'right'}
-
+                { field: 'id', align: 'center', width: '10%', toolbar: '#partnerInfo-bar', title: '操作', fixed: 'right' }
             ]],
             done: function (res) {
                 permissionsInput(res, config);
@@ -223,7 +235,7 @@
         });
 
         // 工具条点击事件
-        table.on('tool(app-table)', function (obj) {
+        table.on('tool(partnerInfo-table)', function (obj) {
             var data = obj.data;
             var layEvent = obj.event;
             if (layEvent === 'edit') { // 查看详情
@@ -235,10 +247,10 @@
                     admin.req('api-opration/partnerinfo/' + obj.data.id, {}, function (data) {
                         layer.closeAll('loading');
                         if (data.code == 0) {
-                            layer.msg(data.msg, {icon: 1, time: 2000});
-                            table.reload('app-table', {});
+                            layer.msg(data.msg, { icon: 1, time: 2000 });
+                            table.reload('partnerInfo-table', {});
                         } else {
-                            layer.msg(data.msg, {icon: 2, time: 2000});
+                            layer.msg(data.msg, { icon: 2, time: 2000 });
                         }
                     }, 'delete');
                 });
@@ -246,25 +258,44 @@
         });
 
         // 搜索按钮点击事件
-        $('#app-btn-search').click(function () {
+        $('#partnerInfo-btn-search').click(function () {
             var partnerName = $('#partnerName-serch').val();
-            table.reload('app-table', {where: {partnerName: partnerName}, page: {curr: 1}});
+            var partnerProvince = $("#province option:selected").text() != "选择省" ?
+                $("#province option:selected").text() : "";
+            var partnerCity = $("#city option:selected").text() != "选择市" ? $(
+                "#city option:selected").text() : "";
+            var partnerArea = $("#area option:selected").text() != "选择区县" ? $(
+                "#area option:selected").text() : "";
+
+            table.reload('partnerInfo-table', { where: { partnerName: partnerName, partnerProvince: partnerProvince, partnerCity: partnerCity, partnerArea: partnerArea }, page: { curr: 1 } });
         });
 
         // 表单提交事件
         form.on('submit(partnerInfo-form-submit)', function (data) {
             layer.load(2);
-            admin.req('api-opration/partnerinfo', JSON.stringify(data.field), function (data) {
-                layer.closeAll('loading');
-                if (data.code == 0) {
-                    // layer.msg(data.msg, { icon: 1, time: 2000 });
-                    layer.closeAll();
-                    table.reload('app-table', {});
-                } else {
-                    layer.msg(data.msg, {icon: 2, time: 2000});
-                }
-            }, "POST");
+
+            if (data.field != null) {
+                data.field.partnerProvince = $("#partnerProvince option:selected").text() != "选择省" ?
+                    $("#partnerProvince option:selected").text() : "";
+                data.field.partnerCity = $("#partnerCity option:selected").text() != "选择市" ? $(
+                    "#partnerCity option:selected").text() : "";
+                data.field.partnerArea = $("#partnerArea option:selected").text() != "选择区县" ? $(
+                    "#partnerArea option:selected").text() : "";
+
+                admin.req('api-opration/partnerinfo', JSON.stringify(data.field), function (data) {
+                    layer.closeAll('loading');
+                    if (data.code == 0) {
+                        // layer.msg(data.msg, { icon: 1, time: 2000 });
+                        layer.closeAll();
+                        table.reload('partnerInfo-table', {});
+                    } else {
+                        layer.msg(data.msg, { icon: 2, time: 2000 });
+                    }
+                }, "POST");
+
+            }
             return false;
+
         });
 
 
@@ -286,20 +317,42 @@
                     $('#app-form')[0].reset();
                     $('#app-form').attr('method', 'POST');
                     if (data) {
-                        if (index == 1) {
-                            $('#sure').hide();
-                        }
+                        // if (index == 1) {
+                        //     $('#sure').hide();
+
+                        // }
                         form.val('app-form', data);
-                        // //重新装载科室
-                        // getdepartment(data.hospitalId);
-                        // form.render();
+                        //装载省市区数据
+                        if (!strUtil.isEmpty(data.partnerProvince))
+                            area.areaData("#partnerProvince", 1, "", data.partnerProvince);
+                        if (!strUtil.isEmpty(data.partnerCity))
+                            area.areaData("#partnerCity", 2, $("#partnerProvince").val(), data
+                                .partnerCity);
+                        if (!strUtil.isEmpty(data.partnerArea))
+                            area.areaData("#partnerArea", 3, $("#partnerCity").val(), data
+                                .partnerArea);
+                        form.render();
+                    } else {
+                        //省份数据加载
+                        area.areaData("#partnerProvince", 1, "", "");
+                        //装载市区数据
+                        form.on("select(partnerProvince)", function (data) {
+                            area.areasClear("#partnerlArea", 3);
+                            area.areaData("#partnerCity", 2, data.value, "");
+                        });
+                        //装载区县数据
+                        form.on("select(partnerCity)", function (data) {
+                            area.areaData("#partnerArea", 3, data.value, "");
+                        });
                     }
 
-                    // //执行一个laydate实例
-                    // laydate.render({
-                    //     elem: '#startTime' //指定元素
-                    //     ,type: 'datetime'
-                    // });
+
+
+                    //执行一个laydate实例
+                    laydate.render({
+                        elem: '#startTime' //指定元素
+                        , type: 'datetime'
+                    });
 
 
                 }

--
Gitblit v1.8.0