刘韬 5 jaren geleden
bovenliggende
commit
1a291fc68d

+ 2 - 0
.gitignore

@@ -7,6 +7,8 @@
 # Package Files #
 *.war
 *.ear
+**/.settings
+**/classes
 
 # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
 hs_err_pid*

+ 5 - 5
DataFusion/.classpath

@@ -2,11 +2,6 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" path="res"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
-		<attributes>
-			<attribute name="module" value="true"/>
-		</attributes>
-	</classpathentry>
 	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-codec-1.9.jar"/>
 	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-io-2.5.jar"/>
 	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/commons-lang3-3.4.jar"/>
@@ -29,5 +24,10 @@
 	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/objenesis-2.1.jar"/>
 	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/ojdbc6.jar"/>
 	<classpathentry kind="lib" path="WebRoot/WEB-INF/lib/sqljdbc42.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
+		<attributes>
+			<attribute name="owner.project.facets" value="java"/>
+		</attributes>
+	</classpathentry>
 	<classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>
 </classpath>

+ 0 - 12
DataFusion/.settings/.jsdtscope

@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry excluding="**/bower_components/*|**/node_modules/*|**/*.min.js" kind="src" path="WebRoot"/>
-	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
-		<attributes>
-			<attribute name="hide" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
-	<classpathentry kind="output" path=""/>
-</classpath>

+ 0 - 8
DataFusion/.settings/org.eclipse.jdt.core.prefs

@@ -1,8 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=10
-org.eclipse.jdt.core.compiler.compliance=10
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=10

+ 0 - 16
DataFusion/.settings/org.eclipse.wst.common.component

@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
-        
-    <wb-module deploy-name="DataFusion">
-                
-        <wb-resource deploy-path="/" source-path="/WebRoot" tag="defaultRootSource"/>
-                
-        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
-        <wb-resource deploy-path="/WEB-INF/classes" source-path="/res"/>
-                
-        <property name="context-root" value="DataFusion"/>
-                
-        <property name="java-output-path" value="/DataFusion/WebRoot/WEB-INF/classes"/>
-            
-    </wb-module>
-    
-</project-modules>

+ 0 - 9
DataFusion/.settings/org.eclipse.wst.common.project.facet.core.xml

@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<faceted-project>
-  <fixed facet="java"/>
-  <fixed facet="wst.jsdt.web"/>
-  <fixed facet="jst.web"/>
-  <installed facet="java" version="10"/>
-  <installed facet="jst.web" version="4.0"/>
-  <installed facet="wst.jsdt.web" version="1.0"/>
-</faceted-project>

+ 0 - 1
DataFusion/.settings/org.eclipse.wst.jsdt.ui.superType.container

@@ -1 +0,0 @@
-org.eclipse.wst.jsdt.launching.baseBrowserLibrary

+ 0 - 1
DataFusion/.settings/org.eclipse.wst.jsdt.ui.superType.name

@@ -1 +0,0 @@
-Window

+ 0 - 8
DataFusion/WebRoot/WEB-INF/classes/config.properties

@@ -1,8 +0,0 @@
-#DB-ZhongShiKangKai and connected partners
-jdbcUrl_zskk  = jdbc:mysql://www.pacsonline.cn:3306/pacsonline?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false
-user_zskk 	  = pacs
-password_zskk = ZSKK@2017~!@#
-
-jdbcUrl_connected  = jdbc:oracle:thin:@172.30.2.212:1521:oracle
-user_connected 	   = hhris
-password_connected = hhris

+ 0 - 10
DataFusion/WebRoot/WEB-INF/classes/log4j.properties

@@ -1,10 +0,0 @@
-log4j.rootLogger=WARN, stdout, file
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=%n%-d{yyyy-MM-dd HH:mm:ss}%n[%p]-[Thread: %t]-[%C.%M()]: %m%n
-
-# Output to the File
-log4j.appender.file=org.apache.log4j.FileAppender
-log4j.appender.file.File=./jfinal_demo.log
-log4j.appender.file.layout=org.apache.log4j.PatternLayout
-log4j.appender.file.layout.ConversionPattern=%n%-d{yyyy-MM-dd HH:mm:ss}%n[%p]-[Thread: %t]-[%C.%M()]: %m%n

+ 5 - 3
DataFusion/src/com/zskk/config/ZskkConfig.java

@@ -5,10 +5,12 @@ import com.jfinal.kit.PropKit;
 import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
 import com.jfinal.plugin.activerecord.dialect.MysqlDialect;
 import com.jfinal.plugin.activerecord.dialect.OracleDialect;
+import com.jfinal.plugin.cron4j.Cron4jPlugin;
 import com.jfinal.plugin.druid.DruidPlugin;
 import com.jfinal.template.Engine;
 import com.zskk.control.ViewController;
 import com.zskk.model._MappingKit;
+import com.zskk.task.DataTask;
 
 public class ZskkConfig extends JFinalConfig {
 
@@ -64,9 +66,9 @@ public class ZskkConfig extends JFinalConfig {
 		arpConnected.setDialect(new OracleDialect());
 		me.add(arpConnected);
 		
-//		Cron4jPlugin cpData = new Cron4jPlugin();
-//		cpData.addTask("*/25 * * * *", new DataTask());
-//		me.add(cpData);
+		Cron4jPlugin cpData = new Cron4jPlugin();
+		cpData.addTask("*/15 * * * *", new DataTask());
+		me.add(cpData);
 
 //		Cron4jPlugin cp2 = new Cron4jPlugin();
 //		cp2.addTask("*/3 * * * *", new SyncTask2());

+ 1 - 0
DataFusion/src/com/zskk/control/ViewController.java

@@ -61,6 +61,7 @@ public class ViewController extends Controller {
 			this.renderText(e.toString());
 		}
 	}
+	
 	public static DruidPlugin createConnectedDruidPlugin() {
 
 		return new DruidPlugin(PropKit.get("jdbcUrl_connected"), PropKit.get("user_connected"),PropKit.get("password_connected").trim());

+ 132 - 114
DataFusion/src/com/zskk/model/_DataDictionary.txt

@@ -1,124 +1,141 @@
 Table: doctors
-----------------+---------------+------+-----+---------+---------
- Field          | Type          | Null | Key | Default | Remarks 
-----------------+---------------+------+-----+---------+---------
- id             | VARCHAR(32)   | NO   | PRI |         |         
- username       | VARCHAR(100)  | NO   |     |         | 用户名     
- password       | VARCHAR(200)  | NO   |     |         | 密码      
- realname       | VARCHAR(200)  | YES  |     |         | 真实姓名    
- email          | VARCHAR(200)  | YES  |     |         | email   
- login_time     | DATETIME(19)  | YES  |     |         | 登录时间    
- createdAt      | DATETIME(19)  | YES  |     |         | 创建时间    
- updatedAt      | DATETIME(19)  | YES  |     |         | 修改时间    
- token          | VARCHAR(255)  | YES  |     |         | 每次登陆产生新的Session标识
- phone          | VARCHAR(20)   | YES  |     |         | 电话      
- remark         | VARCHAR(1000) | YES  |     |         | 备注      
- doctor_title   | VARCHAR(255)  | YES  |     |         | 职称      
- status         | VARCHAR(50)   | YES  |     |         |         
- attachment     | VARCHAR(2000) | YES  |     |         | 附件      
- institution_id | VARCHAR(50)   | YES  |     |         | 医疗机构ID  
- department_id  | VARCHAR(50)   | YES  |     |         | 主要科室ID  
- doctor_role    | VARCHAR(20)   | YES  |     |         | 1.本地医生2.远程医生(可多选)
- login_failure  | INT(10)       | YES  |     |         | 登录失败次数  
- is_report      | VARCHAR(10)   | YES  |     |         | 是否能写报告  
-----------------+---------------+------+-----+---------+---------
+------------------+---------------+------+-----+---------+---------
+ Field            | Type          | Null | Key | Default | Remarks 
+------------------+---------------+------+-----+---------+---------
+ id               | VARCHAR(32)   | NO   | PRI |         |         
+ username         | VARCHAR(100)  | NO   |     |         | 用户名     
+ password         | VARCHAR(200)  | NO   |     |         | 密码      
+ realname         | VARCHAR(200)  | YES  |     |         | 真实姓名    
+ email            | VARCHAR(200)  | YES  |     |         | email   
+ login_time       | DATETIME(19)  | YES  |     |         | 登录时间    
+ createdAt        | DATETIME(19)  | YES  |     |         | 创建时间    
+ updatedAt        | DATETIME(19)  | YES  |     |         | 修改时间    
+ token            | VARCHAR(255)  | YES  |     |         | 每次登陆产生新的Session标识
+ phone            | VARCHAR(20)   | YES  |     |         | 电话      
+ remark           | VARCHAR(1000) | YES  |     |         | 备注      
+ doctor_title     | VARCHAR(255)  | YES  |     |         | 职称      
+ status           | VARCHAR(50)   | YES  |     |         |         
+ attachment       | VARCHAR(2000) | YES  |     |         | 附件      
+ institution_id   | VARCHAR(50)   | YES  |     |         | 医疗机构ID  
+ department_id    | VARCHAR(50)   | YES  |     |         | 主要科室ID  
+ doctor_role      | VARCHAR(20)   | YES  |     |         | 1.本地医生2.远程医生(可多选)
+ login_failure    | INT(10)       | YES  |     |         | 登录失败次数  
+ is_report        | VARCHAR(10)   | YES  |     |         | 是否能写报告  
+ exam_class       | VARCHAR(255)  | YES  |     | *       |         
+ send_sms         | VARCHAR(10)   | YES  |     | 0       | 发送短信通知  
+ message_push     | VARCHAR(10)   | YES  |     | 0       | 是否推送消息  
+ is_admin         | VARCHAR(255)  | YES  |     | 0       | 是否为管理员  
+ is_send_message  | VARCHAR(255)  | YES  |     | 0       | 登录是否发送短信
+ is_use_autograph | VARCHAR(255)  | YES  |     | 0       | 是否使用电子签名
+ autograph        | VARCHAR(255)  | YES  |     |         | 电子签名    
+------------------+---------------+------+-----+---------+---------
 
 Table: exams
--------------------+---------------+------+-----+---------+---------
- Field             | Type          | Null | Key | Default | Remarks 
--------------------+---------------+------+-----+---------+---------
- id                | VARCHAR(32)   | NO   | PRI |         |         
- dept_id           | VARCHAR(100)  | YES  |     |         | 检查科室(执行科室)
- patient_id        | VARCHAR(100)  | YES  |     |         | 患者id    
- patient_num       | VARCHAR(200)  | YES  |     |         | 病历号     
- accession_num     | VARCHAR(100)  | YES  |     |         | 科室检查号   
- exam_datetime     | VARCHAR(20)   | YES  |     |         | 检查日期    
- exam_class        | VARCHAR(200)  | YES  |     |         | 检查类型    
- exam_sub_class    | VARCHAR(200)  | YES  |     |         | 检查子类    
- exam_project      | VARCHAR(200)  | YES  |     |         | 检查项目    
- device            | VARCHAR(200)  | YES  |     |         | 检查设备    
- body_part         | VARCHAR(200)  | YES  |     |         | 检查部位    
- exam_method       | VARCHAR(200)  | YES  |     |         | 检查方法    
- hopitalized_no    | VARCHAR(200)  | YES  |     |         | 住院号     
- bed_no            | VARCHAR(200)  | YES  |     |         | 床位号     
- clin_dept_id      | VARCHAR(50)   | YES  |     |         | 送诊科室id  
- technician        | VARCHAR(200)  | YES  |     |         | 技师      
- charge            | VARCHAR(200)  | YES  |     |         | 检查费用    
- cost              | VARCHAR(200)  | YES  |     |         | 实际费用    
- clin_doctors      | VARCHAR(200)  | YES  |     |         | 送诊医生    
- phone             | VARCHAR(20)   | YES  |     |         | 联系方式    
- institution_id    | VARCHAR(200)  | YES  |     |         | 医院id    
- study_id          | VARCHAR(50)   | YES  |     |         | studyuid(studykey)
- illness_desc      | TEXT(65535)   | YES  |     |         | 主诉      
- phys_sign         | VARCHAR(200)  | YES  |     |         | 体征      
- clin_diag         | VARCHAR(1000) | YES  |     |         | 临床诊断    
- clin_symp         | VARCHAR(4000) | YES  |     |         | 临床症状    
- patient_source    | VARCHAR(20)   | YES  |     |         | 病人来源 1门诊 2住院 3外来
- req_datetime      | DATETIME(19)  | YES  |     |         | 申请时间    
- req_doctor        | VARCHAR(50)   | YES  |     |         | 申请医生(医生id)
- remark            | TEXT(65535)   | YES  |     |         | 其他说明    
- register          | VARCHAR(50)   | YES  |     |         | 登记人员( 医生id)
- register_datetime | DATETIME(19)  | YES  |     |         | 注册登记时间  
- exam_status       | TINYINT(3)    | YES  |     | 1       | 1、登记 2、开始检查3、检查完毕 4、申请 5、驳回 6、接收、7、初步报告 8、审核报告 9、确认、
- status            | VARCHAR(20)   | YES  |     | 1       | 记录状态 0禁用 1正常
- pay_status        | VARCHAR(10)   | YES  |     | 0       | 支付状态    
- is_remote         | VARCHAR(10)   | YES  |     |         | 远程诊断是被接受 0,未接受  1,已接受
- urgent            | VARCHAR(10)   | NO   |     | 0       | 是否急诊 0否  1是
- film_type         | VARCHAR(20)   | YES  |     | 0       | 0 未定义  1传统胶片  2电子胶片
- anamnesis         | VARCHAR(255)  | YES  |     |         |         
- family_ill        | VARCHAR(255)  | YES  |     |         |         
- createdAt         | DATETIME(19)  | YES  |     |         |         
- updatedAt         | DATETIME(19)  | YES  |     |         |         
- delivery_doctor   | VARCHAR(100)  | YES  |     |         | 送诊医生    
- exam_report       | VARCHAR(10)   | YES  |     |         | 检查结果    
--------------------+---------------+------+-----+---------+---------
+------------------------+---------------+------+-----+---------+---------
+ Field                  | Type          | Null | Key | Default | Remarks 
+------------------------+---------------+------+-----+---------+---------
+ id                     | VARCHAR(32)   | NO   | PRI |         |         
+ dept_id                | VARCHAR(100)  | YES  |     |         | 检查科室(执行科室)
+ patient_id             | VARCHAR(100)  | YES  |     |         | 患者id    
+ patient_num            | VARCHAR(200)  | YES  |     |         | 病历号     
+ accession_num          | VARCHAR(100)  | YES  |     |         | 科室检查号   
+ exam_datetime          | VARCHAR(20)   | YES  |     |         | 检查日期    
+ exam_class             | VARCHAR(200)  | YES  |     |         | 检查类型    
+ exam_sub_class         | VARCHAR(200)  | YES  |     |         | 检查子类    
+ exam_project           | VARCHAR(200)  | YES  |     |         | 检查项目    
+ device                 | VARCHAR(200)  | YES  |     |         | 检查设备    
+ body_part              | VARCHAR(200)  | YES  |     |         | 检查部位    
+ exam_method            | VARCHAR(200)  | YES  |     |         | 检查方法    
+ hopitalized_no         | VARCHAR(200)  | YES  |     |         | 住院号     
+ bed_no                 | VARCHAR(200)  | YES  |     |         | 床位号     
+ clin_dept_id           | VARCHAR(50)   | YES  |     |         | 送诊科室id  
+ technician             | VARCHAR(200)  | YES  |     |         | 技师      
+ charge                 | VARCHAR(200)  | YES  |     |         | 检查费用    
+ cost                   | VARCHAR(200)  | YES  |     |         | 实际费用    
+ clin_doctors           | VARCHAR(200)  | YES  |     |         | 送诊医生    
+ phone                  | VARCHAR(20)   | YES  |     |         | 联系方式    
+ institution_id         | VARCHAR(200)  | YES  |     |         | 医院id    
+ study_id               | VARCHAR(50)   | YES  |     |         | studyuid(studykey)
+ illness_desc           | TEXT(65535)   | YES  |     |         | 主诉      
+ phys_sign              | VARCHAR(200)  | YES  |     |         | 体征      
+ clin_diag              | VARCHAR(1000) | YES  |     |         | 临床诊断    
+ clin_symp              | VARCHAR(4000) | YES  |     |         | 临床症状    
+ patient_source         | VARCHAR(20)   | YES  |     |         | 病人来源 1门诊 2住院 3外来
+ req_datetime           | DATETIME(19)  | YES  |     |         | 申请时间    
+ req_doctor             | VARCHAR(50)   | YES  |     |         | 申请医生(医生id)
+ remark                 | TEXT(65535)   | YES  |     |         | 其他说明    
+ register               | VARCHAR(50)   | YES  |     |         | 登记人员( 医生id)
+ register_datetime      | DATETIME(19)  | YES  |     |         | 注册登记时间  
+ exam_status            | TINYINT(3)    | YES  |     | 1       | 1、登记 2、开始检查3、检查完毕 4、申请 5、驳回 6、接收、7、初步报告 8、审核报告 9、确认、
+ status                 | VARCHAR(20)   | YES  |     | 1       | 记录状态 0禁用 1正常
+ pay_status             | VARCHAR(10)   | YES  |     | 0       | 支付状态    
+ is_remote              | VARCHAR(10)   | YES  |     |         | 远程诊断是被接受 0,未接受  1,已接受
+ urgent                 | VARCHAR(10)   | NO   |     | 0       | 是否急诊 0否  1是
+ film_type              | VARCHAR(20)   | YES  |     | 2       | 0 未定义  1传统胶片  2电子胶片
+ anamnesis              | VARCHAR(255)  | YES  |     |         |         
+ family_ill             | VARCHAR(255)  | YES  |     |         |         
+ createdAt              | DATETIME(19)  | YES  |     |         |         
+ updatedAt              | DATETIME(19)  | YES  |     |         |         
+ delivery_doctor        | VARCHAR(100)  | YES  |     |         | 送诊医生    
+ exam_report            | VARCHAR(10)   | YES  |     |         | 检查结果    
+ ext                    | JSON          | YES  |     |         |         
+ id_card                | VARCHAR(50)   | YES  |     |         | 身份证号    
+ study_uid              | VARCHAR(100)  | YES  |     |         |         
+ application_department | VARCHAR(255)  | YES  |     |         | 申请科室    
+ application_doctor     | VARCHAR(255)  | YES  |     |         | 申请医生    
+ severe                 | VARCHAR(255)  | YES  |     | 0       | 重症标识    
+ patient_area           | VARCHAR(255)  | YES  |     |         | 病区      
+------------------------+---------------+------+-----+---------+---------
 
 Table: patient_infos
------------------+---------------+------+-----+---------+---------
- Field           | Type          | Null | Key | Default | Remarks 
------------------+---------------+------+-----+---------+---------
- id              | VARCHAR(32)   | NO   | PRI |         |         
- name            | VARCHAR(100)  | YES  |     |         | 患者姓名    
- sex             | VARCHAR(10)   | YES  |     |         | 性别      
- card_num        | VARCHAR(100)  | YES  |     |         | 身份证号    
- phone           | VARCHAR(20)   | YES  |     |         | 手机号     
- ctime           | DATETIME(19)  | YES  |     |         | 创建时间    
- birthday        | VARCHAR(20)   | YES  |     |         | 生日      
- age             | VARCHAR(10)   | YES  |     |         | 年龄      
- card_type       | VARCHAR(30)   | YES  |     |         | 证件类型    
- nationality     | VARCHAR(50)   | YES  |     |         | 国籍      
- nation          | VARCHAR(30)   | YES  |     |         | 民族      
- marry           | VARCHAR(10)   | YES  |     |         | 婚否      
- professional    | VARCHAR(100)  | YES  |     |         | 职业      
- address         | VARCHAR(255)  | YES  |     |         | 联系地址    
- temp_patient_id | VARCHAR(50)   | YES  |     |         | 检查临时患者id(从dicom影像中解析)
- status          | VARCHAR(10)   | YES  |     |         |         
- institution_id  | VARCHAR(200)  | YES  |     |         | 所属医院    
- anamnesis       | VARCHAR(2000) | YES  |     |         | 疾病史     
- family_ill      | VARCHAR(2000) | YES  |     |         | 家族史     
- createdAt       | DATETIME(19)  | YES  |     |         |         
- updatedAt       | DATETIME(19)  | YES  |     |         |         
------------------+---------------+------+-----+---------+---------
+-----------------+--------------+------+-----+---------+---------
+ Field           | Type         | Null | Key | Default | Remarks 
+-----------------+--------------+------+-----+---------+---------
+ id              | VARCHAR(32)  | NO   | PRI |         |         
+ name            | VARCHAR(100) | YES  |     |         | 患者姓名    
+ sex             | VARCHAR(10)  | YES  |     |         | 性别      
+ card_num        | VARCHAR(100) | YES  |     |         | 身份证号    
+ phone           | VARCHAR(20)  | YES  |     |         | 手机号     
+ ctime           | DATETIME(19) | YES  |     |         | 创建时间    
+ birthday        | VARCHAR(20)  | YES  |     |         | 生日      
+ age             | VARCHAR(10)  | YES  |     |         | 年龄      
+ card_type       | VARCHAR(30)  | YES  |     |         | 证件类型    
+ nationality     | VARCHAR(50)  | YES  |     |         | 国籍      
+ nation          | VARCHAR(30)  | YES  |     |         | 民族      
+ marry           | VARCHAR(10)  | YES  |     |         | 婚否      
+ professional    | VARCHAR(100) | YES  |     |         | 职业      
+ address         | VARCHAR(255) | YES  |     |         | 联系地址    
+ temp_patient_id | VARCHAR(50)  | YES  |     |         | 检查临时患者id(从dicom影像中解析)
+ status          | INT(10)      | NO   |     | 1       |         
+ institution_id  | VARCHAR(200) | YES  |     |         | 所属医院    
+ anamnesis       | VARCHAR(255) | YES  |     |         | 疾病史     
+ family_ill      | VARCHAR(255) | YES  |     |         | 家族史     
+ createdAt       | DATETIME(19) | YES  |     |         |         
+ updatedAt       | DATETIME(19) | YES  |     |         |         
+ ext             | JSON         | YES  |     |         |         
+-----------------+--------------+------+-----+---------+---------
 
 Table: report
--------------------+---------------+------+-----+---------+---------
- Field             | Type          | Null | Key | Default | Remarks 
--------------------+---------------+------+-----+---------+---------
- id                | VARCHAR(32)   | NO   | PRI |         | 报告id    
- report_datetime   | DATETIME(19)  | YES  |     |         | 报告时间    
- description       | TEXT(65535)   | YES  |     |         | 检查所见    
- impression        | TEXT(65535)   | YES  |     |         | 意见建议    
- img_url           | VARCHAR(1500) | YES  |     |         | 缩略图地址   
- exam_id           | VARCHAR(255)  | YES  |     |         | 检查表id   
- createdAt         | DATETIME(19)  | YES  |     |         |         
- report_doctor_id  | VARCHAR(255)  | YES  |     |         | 报告医生id  
- review_doctor_id  | VARCHAR(255)  | YES  |     |         | 审核医生id  
- qr_code           | VARCHAR(255)  | YES  |     |         | 二维码     
- report_result     | VARCHAR(255)  | YES  |     |         | 报告结果(阴阳性) 1阴性 2阳性
- review_datetime   | DATETIME(19)  | YES  |     |         | 审核时间    
- confirm_doctor_id | VARCHAR(50)   | YES  |     |         | 确认医生    
- confirm_datetime  | DATETIME(19)  | YES  |     |         | 确认时间    
--------------------+---------------+------+-----+---------+---------
+-----------------------+---------------+------+-----+---------+---------
+ Field                 | Type          | Null | Key | Default | Remarks 
+-----------------------+---------------+------+-----+---------+---------
+ id                    | VARCHAR(32)   | NO   | PRI |         | 报告id    
+ report_datetime       | DATETIME(19)  | YES  |     |         | 报告时间    
+ description           | TEXT(65535)   | YES  |     |         | 检查所见    
+ impression            | TEXT(65535)   | YES  |     |         | 意见建议    
+ img_url               | VARCHAR(1500) | YES  |     |         | 缩略图地址   
+ exam_id               | VARCHAR(255)  | YES  |     |         | 检查表id   
+ createdAt             | DATETIME(19)  | YES  |     |         |         
+ report_doctor_id      | VARCHAR(255)  | YES  |     |         | 报告医生id  
+ review_doctor_id      | VARCHAR(255)  | YES  |     |         | 审核医生id  
+ qr_code               | VARCHAR(255)  | YES  |     |         | 二维码     
+ report_result         | VARCHAR(255)  | YES  |     |         | 报告结果(阴阳性) 1阴性 2阳性
+ review_datetime       | DATETIME(19)  | YES  |     |         | 审核时间    
+ confirm_doctor_id     | VARCHAR(50)   | YES  |     |         | 确认医生    
+ confirm_datetime      | DATETIME(19)  | YES  |     |         | 确认时间    
+ type                  | VARCHAR(10)   | YES  |     | 1       | 报告类型    
+ remote_application_id | VARCHAR(50)   | YES  |     |         | 申请id    
+-----------------------+---------------+------+-----+---------+---------
 
 Table: studies
 ------------------+--------------+------+-----+---------+---------
@@ -139,5 +156,6 @@ Table: studies
  institution_id   | VARCHAR(200) | YES  |     |         |         
  createdAt        | DATETIME(19) | YES  |     |         |         
  updatedAt        | DATETIME(19) | YES  |     |         |         
+ ext              | JSON         | YES  |     |         |         
 ------------------+--------------+------+-----+---------+---------
 

+ 1 - 1
DataFusion/src/com/zskk/model/_MappingKit.java

@@ -21,7 +21,7 @@ public class _MappingKit {
 		arp.addMapping("patient_infos", "id", PatientInfos.class);
 		arp.addMapping("report", "id", Report.class);
 		// Composite Primary Key order: id,studyuid
-		arp.addMapping("studies", "id", Studies.class);
+		arp.addMapping("studies", "id,studyuid", Studies.class);
 	}
 }
 

+ 63 - 0
DataFusion/src/com/zskk/model/base/BaseDoctors.java

@@ -180,4 +180,67 @@ public abstract class BaseDoctors<M extends BaseDoctors<M>> extends Model<M> imp
 		return getStr("is_report");
 	}
 
+	public M setExamClass(java.lang.String examClass) {
+		set("exam_class", examClass);
+		return (M)this;
+	}
+	
+	public java.lang.String getExamClass() {
+		return getStr("exam_class");
+	}
+
+	public M setSendSms(java.lang.String sendSms) {
+		set("send_sms", sendSms);
+		return (M)this;
+	}
+	
+	public java.lang.String getSendSms() {
+		return getStr("send_sms");
+	}
+
+	public M setMessagePush(java.lang.String messagePush) {
+		set("message_push", messagePush);
+		return (M)this;
+	}
+	
+	public java.lang.String getMessagePush() {
+		return getStr("message_push");
+	}
+
+	public M setIsAdmin(java.lang.String isAdmin) {
+		set("is_admin", isAdmin);
+		return (M)this;
+	}
+	
+	public java.lang.String getIsAdmin() {
+		return getStr("is_admin");
+	}
+
+	public M setIsSendMessage(java.lang.String isSendMessage) {
+		set("is_send_message", isSendMessage);
+		return (M)this;
+	}
+	
+	public java.lang.String getIsSendMessage() {
+		return getStr("is_send_message");
+	}
+
+	public M setIsUseAutograph(java.lang.String isUseAutograph) {
+		set("is_use_autograph", isUseAutograph);
+		return (M)this;
+	}
+	
+	public java.lang.String getIsUseAutograph() {
+		return getStr("is_use_autograph");
+	}
+
+	public M setAutograph(java.lang.String autograph) {
+		set("autograph", autograph);
+		return (M)this;
+	}
+	
+	public java.lang.String getAutograph() {
+		return getStr("autograph");
+	}
+
 }

+ 63 - 0
DataFusion/src/com/zskk/model/base/BaseExams.java

@@ -405,4 +405,67 @@ public abstract class BaseExams<M extends BaseExams<M>> extends Model<M> impleme
 		return getStr("exam_report");
 	}
 
+	public M setExt(java.lang.String ext) {
+		set("ext", ext);
+		return (M)this;
+	}
+	
+	public java.lang.String getExt() {
+		return getStr("ext");
+	}
+
+	public M setIdCard(java.lang.String idCard) {
+		set("id_card", idCard);
+		return (M)this;
+	}
+	
+	public java.lang.String getIdCard() {
+		return getStr("id_card");
+	}
+
+	public M setStudyUid(java.lang.String studyUid) {
+		set("study_uid", studyUid);
+		return (M)this;
+	}
+	
+	public java.lang.String getStudyUid() {
+		return getStr("study_uid");
+	}
+
+	public M setApplicationDepartment(java.lang.String applicationDepartment) {
+		set("application_department", applicationDepartment);
+		return (M)this;
+	}
+	
+	public java.lang.String getApplicationDepartment() {
+		return getStr("application_department");
+	}
+
+	public M setApplicationDoctor(java.lang.String applicationDoctor) {
+		set("application_doctor", applicationDoctor);
+		return (M)this;
+	}
+	
+	public java.lang.String getApplicationDoctor() {
+		return getStr("application_doctor");
+	}
+
+	public M setSevere(java.lang.String severe) {
+		set("severe", severe);
+		return (M)this;
+	}
+	
+	public java.lang.String getSevere() {
+		return getStr("severe");
+	}
+
+	public M setPatientArea(java.lang.String patientArea) {
+		set("patient_area", patientArea);
+		return (M)this;
+	}
+	
+	public java.lang.String getPatientArea() {
+		return getStr("patient_area");
+	}
+
 }

+ 12 - 3
DataFusion/src/com/zskk/model/base/BasePatientInfos.java

@@ -144,13 +144,13 @@ public abstract class BasePatientInfos<M extends BasePatientInfos<M>> extends Mo
 		return getStr("temp_patient_id");
 	}
 
-	public M setStatus(java.lang.String status) {
+	public M setStatus(java.lang.Integer status) {
 		set("status", status);
 		return (M)this;
 	}
 	
-	public java.lang.String getStatus() {
-		return getStr("status");
+	public java.lang.Integer getStatus() {
+		return getInt("status");
 	}
 
 	public M setInstitutionId(java.lang.String institutionId) {
@@ -198,4 +198,13 @@ public abstract class BasePatientInfos<M extends BasePatientInfos<M>> extends Mo
 		return get("updatedAt");
 	}
 
+	public M setExt(java.lang.String ext) {
+		set("ext", ext);
+		return (M)this;
+	}
+	
+	public java.lang.String getExt() {
+		return getStr("ext");
+	}
+
 }

+ 18 - 0
DataFusion/src/com/zskk/model/base/BaseReport.java

@@ -135,4 +135,22 @@ public abstract class BaseReport<M extends BaseReport<M>> extends Model<M> imple
 		return get("confirm_datetime");
 	}
 
+	public M setType(java.lang.String type) {
+		set("type", type);
+		return (M)this;
+	}
+	
+	public java.lang.String getType() {
+		return getStr("type");
+	}
+
+	public M setRemoteApplicationId(java.lang.String remoteApplicationId) {
+		set("remote_application_id", remoteApplicationId);
+		return (M)this;
+	}
+	
+	public java.lang.String getRemoteApplicationId() {
+		return getStr("remote_application_id");
+	}
+
 }

+ 9 - 0
DataFusion/src/com/zskk/model/base/BaseStudies.java

@@ -144,4 +144,13 @@ public abstract class BaseStudies<M extends BaseStudies<M>> extends Model<M> imp
 		return get("updatedAt");
 	}
 
+	public M setExt(java.lang.String ext) {
+		set("ext", ext);
+		return (M)this;
+	}
+	
+	public java.lang.String getExt() {
+		return getStr("ext");
+	}
+
 }

+ 1 - 1
DataFusion/src/com/zskk/service/WeixinService.java

@@ -24,7 +24,7 @@ public class WeixinService {
 	private static final String CAHR_CODE = "UTF-8";
 
 	// 获取访问TOKEN
-	private static final String WEIXIN_QRCODE = "http://wechat.pacsonline.cn/wxzskk/uwx/requestWxQrcode?reportId=%s";
+	private static final String WEIXIN_QRCODE = "http://wechat.pacsonline.cn/wx_patient/api/unifyGetWxQrcode?reportId=%s";
 
 	/*
 	 * 获取用户信息

+ 19 - 10
DataFusion/src/com/zskk/task/DataTask.java

@@ -21,7 +21,7 @@ public class DataTask implements ITask {
 		// TODO Auto-generated method stub
 		try {
 			// exam_status 3 没有报告
-			List<Exams> exams = Exams.dao.use("zskk").find("SELECT * FROM pacsonline.exams where exam_status=3 and institution_id=44000003 order by createdAt desc limit 20");
+			List<Exams> exams = Exams.dao.use("zskk").find("SELECT * FROM pacsonline.exams where exam_status=3 and institution_id=74300015 order by createdAt desc limit 30");
 			for (Exams exams2 : exams) {
 				Studies studies = Studies.dao.use("zskk").findById(exams2.getStudyId());
 				//对方数据库
@@ -62,22 +62,22 @@ public class DataTask implements ITask {
 				patientInfos.update();*/
 				report.setReportDoctorId(getDoctorIdByName(new String(record.getStr("REPORTDOCTOR").getBytes("windows-1252"),"GBK")));
 				report.setReviewDoctorId(getDoctorIdByName(new String(record.getStr("REVIEWDOCTOR").getBytes("windows-1252"),"GBK")));
-				report.setReviewDatetime(parseStringToDate(new String(record.getStr("REPORTDATE").getBytes("windows-1252"),"GBK")));
+				report.setReviewDatetime(parseStringToDate(new String(record.getStr("REPORTDATE"))));
 				report.setConfirmDoctorId(getDoctorIdByName(new String(record.getStr("REVIEWDOCTOR").getBytes("windows-1252"),"GBK")));
-				report.setConfirmDatetime(parseStringToDate(new String(record.getStr("REPORTDATE").getBytes("windows-1252"),"GBK")));
+				report.setConfirmDatetime(parseStringToDate(new String(record.getStr("REPORTDATE"))));
 				report.save();
 				PatientInfos patientInfos = PatientInfos.dao.use("zskk").findById(exams2.getPatientId());
 				patientInfos.setName(new String(record.getStr("PATIENTNAME").getBytes("windows-1252"),"GBK"));
-				patientInfos.setPhone(record.getStr("PHONE"));
-				patientInfos.setCardNum(record.getStr("IDCARD"));
+//				patientInfos.setPhone(record.getStr("PHONE"));
+//				patientInfos.setCardNum(record.getStr("IDCARD"));
 				patientInfos.update();
-				exams2.setClinDoctors(new String(record.getStr("CLINICALDOCTOR").getBytes("windows-1252"),"GBK"));
-
+				exams2.setApplicationDoctor(new String(record.getStr("CLINICALDOCTOR").getBytes("windows-1252"),"GBK"));
+				exams2.setApplicationDepartment(new String(record.getStr("DEPARTMENT").getBytes("windows-1252"),"GBK"));
 				//修改完成状态 9
 				exams2.setExamStatus(9);
 				exams2.update();
 				//获取微信二维码 公众号
-				WeixinService wService = ServiceFactory.getService(WeixinService.class);
+				WeixinService wService = new WeixinService();
 				wService.requestWeixinQrcode(report.getId());
 			}
 		} catch (Exception e) {
@@ -103,9 +103,18 @@ public class DataTask implements ITask {
 		if (name == null) {
 			return null;
 		}
-		Doctors doctors = Doctors.dao.use("zskk").findFirst("SELECT * FROM doctors where instr(?,realname) and institution_id=44000003",name);
+		Doctors doctors = Doctors.dao.use("zskk").findFirst("SELECT * FROM doctors where instr(?,realname) and institution_id=74300015 and realname<>''", name);
 		if (doctors == null) {
-			return null;
+			Doctors newDoctors = new Doctors().use("zskk");
+			newDoctors.setId(creatId());
+			newDoctors.setUsername("none");
+			newDoctors.setRealname(name);
+			newDoctors.setPassword("123456");
+			newDoctors.setInstitutionId("74300015");
+			newDoctors.setCreatedAt(new Date());
+			newDoctors.setUpdatedAt(new Date());
+			newDoctors.save();
+			return newDoctors.getId();
 		}
 		return doctors.getId();
 	}

+ 1 - 1
DataFusion/src/com/zskk/tools/_JFinalDemoGenerator.java

@@ -39,7 +39,7 @@ public class _JFinalDemoGenerator {
 		// 设置是否生成链式 setter 方法
 		generator.setGenerateChainSetter(false);
 		// 添加不需要生成的表名
-		generator.addExcludedTable("bodypart","constant","department","device","doctor_class","dr_cla_permission","exam_class","exam_project","exam_subclass","images","institution","manager","menu","messages","operating","remote_application","report_record","series","sys_logs","sys_menus","templates");
+		generator.addExcludedTable("bodypart","constant","department","device","doctor_class","dr_cla_permission","exam_class","exam_project","exam_subclass","images","institution","manager","menu","messages","operating","remote_application","report_record","series","sys_logs","sys_menus","templates","bbs","default_cost","every_studies","open_application","oss_callbacks","remote_contact","remote_cost","remote_order","remote_water","remote_water_log","send_message","user","user_bind","version","wechat_bind","wechat_pay_log","wechat_refund_log");
 		// 设置是否在 Model 中生成 dao 对象
 		generator.setGenerateDaoInModel(true);
 		// 设置是否生成链式 setter 方法