归档源码首次提交

master
zengwh 5 years ago
commit 87ed2dc7fa

@ -0,0 +1,624 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.emr</groupId>
<artifactId>emr_medical_record</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>emr_medical_record Maven Webapp</name>
<url>http://www.example.com</url>
<properties>
<!-- begin 全局设置,被子工程继承 -->
<skipTest>true</skipTest>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- 跳过 必须依赖正式版本的检查 -->
<skipRequireRelease>true</skipRequireRelease>
<!-- begin 框架版本 -->
<framework.version>1.0.0</framework.version>
<!-- end -->
<!-- begin 其它第三方开源版本定义 -->
<portable.maven.version>1.1.5</portable.maven.version>
<junit.version>4.12</junit.version>
<jdk.version>1.8</jdk.version>
<mockito.version>1.9.5</mockito.version>
<!--<spring.version>3.2.2.RELEASE</spring.version>-->
<shiro.version>1.2.2</shiro.version>
<quartz.version>2.2.1</quartz.version>
<jetty.version>7.6.11.v20130520</jetty.version>
<servlet.version>2.4</servlet.version>
<jsp.version>2.1</jsp.version>
<jstl.version>1.2</jstl.version>
<c3p0.version>0.9.5.2</c3p0.version>
<hibernate-validator.version>5.0.1.Final</hibernate-validator.version>
<postgresql.version>9.2-1004-jdbc4</postgresql.version>
<activiti.version>5.17.0</activiti.version>
<groovy.version>2.3.6</groovy.version>
<aliyun-sdk-oss.version>2.2.1</aliyun-sdk-oss.version>
<alipay-sdk.version>1.1.1</alipay-sdk.version>
<bropen-api.version>3.5.0</bropen-api.version>
<spring.version>5.0.2.RELEASE</spring.version>
<mybatis.version>3.2.8</mybatis.version>
<mybatis.spring.version>1.2.2</mybatis.spring.version>
<mybatis.paginator.version>1.2.15</mybatis.paginator.version>
<mysql.version>5.1.32</mysql.version>
<slf4j.version>1.6.4</slf4j.version>
<json-lib.version>2.4</json-lib.version>
<jackson.version>2.9.4</jackson.version>
<druid.version>1.0.9</druid.version>
<httpclient.version>4.3.5</httpclient.version>
<servlet-api.version>2.5</servlet-api.version>
<jsp-api.version>2.0</jsp-api.version>
<joda-time.version>2.5</joda-time.version>
<commons-lang3.version>3.3.2</commons-lang3.version>
<commons-io.version>1.3.2</commons-io.version>
<commons-net.version>3.3</commons-net.version>
<pagehelper.version>3.4.3</pagehelper.version>
<jsqlparser.version>0.9.1</jsqlparser.version>
<commons-fileupload.version>1.3.1</commons-fileupload.version>
<jedis.version>2.7.2</jedis.version>
<solrj.version>4.10.3</solrj.version>
<aspectj.version>1.8.13</aspectj.version>
<aspectjrt.version>1.8.13</aspectjrt.version>
<image2pdf.version>2.1.7</image2pdf.version>
<cxf.version>3.1.8</cxf.version>
<poi.version>3.9</poi.version>
<itext.version>2.1.7</itext.version>
</properties>
<!-- maven依赖 -->
<dependencies>
<!-- Apache工具组件 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>${commons-net.version}</version>
</dependency>
<!--json-->
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>${json-lib.version}</version>
<classifier>jdk15</classifier>
</dependency>
<!-- Jackson Json处理工具包 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<!-- httpclient -->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>${httpclient.version}</version>
</dependency>
<!-- 单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- 日志处理 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
<!-- Mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>${mybatis.spring.version}</version>
</dependency>
<dependency>
<groupId>com.github.miemiedev</groupId>
<artifactId>mybatis-paginator</artifactId>
<version>${mybatis.paginator.version}</version>
</dependency>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>${pagehelper.version}</version>
</dependency>
<!-- MySql -->
<!--<dependency>-->
<!--<groupId>mysql</groupId>-->
<!--<artifactId>mysql-connector-java</artifactId>-->
<!--<version>${mysql.version}</version>-->
<!--</dependency>-->
<!--sqlserver-->
<!--<dependency>-->
<!--<groupId>com.microsoft.sqlserver</groupId>-->
<!--<artifactId>sqljdbc4</artifactId>-->
<!--<version>4.0</version>-->
<!--</dependency>-->
<!-- 连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid.version}</version>
</dependency>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${aspectj.version}</version>
</dependency>
<!-- Hex -->
<!-- https://mvnrepository.com/artifact/commons-codec/commons-codec -->
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.9</version>
</dependency>
<!-- 导入DES对称加密包 -->
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk16</artifactId>
<version>1.46</version>
</dependency>
<!-- Java Mail邮件 -->
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.5</version>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.5.4</version>
</dependency>
<!-- JSP相关 -->
<!-- jsTree -->
<!-- <dependency>
<groupId>org.webjars.bower</groupId>
<artifactId>jstree</artifactId>
<version>3.3.4</version>
</dependency>-->
<!-- https://mvnrepository.com/artifact/commons-dbutils/commons-dbutils -->
<dependency>
<groupId>commons-dbutils</groupId>
<artifactId>commons-dbutils</artifactId>
<version>1.4</version>
</dependency>
<!-- 引入pageHelper分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.0.0</version>
</dependency>
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>${jstl.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>${servlet-api.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>${jsp-api.version}</version>
</dependency>
<!-- 文件上传组件 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>${commons-fileupload.version}</version>
</dependency>
<!-- Redis客户端 -->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>${jedis.version}</version>
</dependency>
<!-- solr客户端 -->
<!--<dependency>
<groupId>org.apache.solr</groupId>
<artifactId>solr-solrj</artifactId>
<version>${solrj.version}</version>
</dependency>-->
<!-- OpenSDK中转CGI接口后台接口:经由 opensdk 确认登记后,才可以进行上报 -->
<!-- <dependency>
<groupId>com.manage</groupId>
<artifactId>framework-open-sdk</artifactId>
<version>${framework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.3.0.RELEASE</version>
</dependency>
-->
<!-- SECURITY begin :进行用户认证以及授予权限的时候,通过各种各样的拦截器来控制权限的访问,从而实现安全 -->
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
<version>${shiro.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-ehcache</artifactId>
<version>${shiro.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>${shiro.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-web</artifactId>
<version>${shiro.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- SECURITY end -->
<!-- 工作流 -->
<!--<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-engine</artifactId>
<version>${activiti.version}</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-bpmn-layout</artifactId>
<version>${activiti.version}</version>
</dependency>
<dependency>
<groupId>org.activiti</groupId>
<artifactId>activiti-spring</artifactId>
<version>${activiti.version}</version>
</dependency>-->
<!--实现任务调度-->
<!--<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>${quartz.version}</version>
</dependency>-->
<!-- groovy脚本引擎 -->
<!--<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>${groovy.version}</version>
</dependency>-->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>${c3p0.version}</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>${postgresql.version}</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
<!--json-->
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>${json-lib.version}</version>
<classifier>jdk15</classifier>
</dependency>
<!-- Jackson Json处理工具包 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<!--简化单元测试的书写-->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<!-- 使用JDOM操作XML-->
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.1</version>
</dependency>
<!--客户端发送Http请求变得容易而且也方便了开发人员测试接口-->
<!--<dependency>-->
<!--<groupId>org.apache.httpcomponents</groupId>-->
<!--<artifactId>httpclient</artifactId>-->
<!--<version>4.5.1</version>-->
<!--</dependency>-->
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</dependency>
<!--<dependency>-->
<!--<groupId>org.mybatis.generator</groupId>-->
<!--<artifactId>mybatis-generator-core</artifactId>-->
<!--<version>1.3.5</version>-->
<!--</dependency>-->
<!--简化单元测试的书写-->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<!--非web项目实现文件下载使用apache的httpmime工具进行相关的http请求操作-->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>4.5.5</version>
</dependency>
<!-- 使用JDOM操作XML-->
<dependency>
<groupId>org.jdom</groupId>
<artifactId>jdom</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.1.0</version>
</dependency>
<!--apache poi-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>${poi.version}</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>${poi.version}</version>
</dependency>
<!--图片转pdf-->
<dependency>
<groupId>org.eclipse.birt.runtime.3_7_1</groupId>
<artifactId>com.lowagie.text</artifactId>
<version>${image2pdf.version}</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.7</version>
</dependency>
<!--webService-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.50</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>${cxf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.12</version>
</dependency>
<!--<dependency>-->
<!--<groupId>commons-logging</groupId>-->
<!--<artifactId>commons-logging</artifactId>-->
<!--<version>1.2</version>-->
<!--</dependency>-->
<!-- 客户端 -->
<!-- axis 1.4 jar start -->
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>commons-discovery</groupId>
<artifactId>commons-discovery</artifactId>
<version>0.2</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>${itext.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>emr_medical_record</finalName>
<plugins>
<!-- 资源文件拷贝插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
<!-- java编译插件 -->
<plugin>
<!-- 指定maven编译的jdk版本,如果不指定,maven3默认用jdk 1.5 maven2默认用jdk1.3 -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<!-- 一般而言target与source是保持一致的但是有时候为了让程序能在其他版本的jdk中运行(对于低版本目标jdk源代码中不能使用低版本jdk中不支持的语法)会存在target不同于source的情况 -->
<source>1.8</source> <!-- 源代码使用的JDK版本 -->
<target>1.8</target> <!-- 需要生成的目标class文件的编译版本 -->
<encoding>UTF-8</encoding><!-- 字符集编码 -->
<verbose>true</verbose>
<showWarnings>true</showWarnings>
<fork>true</fork><!-- 要使compilerVersion标签生效还需要将fork设为true用于明确表示编译版本配置的可用 -->
<executable><!-- path-to-javac --></executable><!-- 使用指定的javac命令例如<executable>${JAVA_1_4_HOME}/bin/javac</executable> -->
<!--<compilerVersion>1.3</compilerVersion>--><!-- 指定插件将使用的编译器的版本 -->
<meminitial>128m</meminitial><!-- 编译器使用的初始内存 -->
<maxmem>512m</maxmem><!-- 编译器使用的最大内存 -->
<!-- <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument> 这个选项用来传递编译器自身不包含但是却支持的参数选项 -->
</configuration>
</plugin>
<!-- mybatis-generator自动生成代码插件 -->
<!--<plugin>-->
<!--<groupId>org.mybatis.generator</groupId>-->
<!--<artifactId>mybatis-generator-maven-plugin</artifactId>-->
<!--<version>1.3.5</version>-->
<!--<configuration>-->
<!--<verbose>true</verbose>-->
<!--<overwrite>false</overwrite>-->
<!--</configuration>-->
<!--</plugin>-->
</plugins>
<!--<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>-->
</build>
</project>

@ -0,0 +1,12 @@
package com.emr.annotation;
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface DataSource {
String dataSource() default "";
}

@ -0,0 +1,36 @@
package com.emr.annotation;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.Signature;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.stereotype.Component;
import java.lang.reflect.Method;
@Aspect
@Component
public class DataSourceAspect {
//配置接入点
@Pointcut("@annotation(com.emr.annotation.DataSource)")
private void controllerAspect(){}//定义一个切入点
@Before("controllerAspect()")
public void dataSwitch(JoinPoint joinPoint){
Signature signature = joinPoint.getSignature();
MethodSignature methodSignature =(MethodSignature) signature;
Method method = methodSignature.getMethod();
DataSource data = null;
String dataSource = "";
if(method != null){
data = method.getAnnotation(DataSource.class);
if(data != null){
dataSource = data.dataSource();
if(dataSource != null){
DynamicDataSource.setDataSourceKey(dataSource);
}
}
}
}
}

@ -0,0 +1,14 @@
package com.emr.annotation;
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
public class DynamicDataSource extends AbstractRoutingDataSource {
private static final ThreadLocal<String> dataSourceKey = new InheritableThreadLocal<String>();
public static void setDataSourceKey(String dataSource){
dataSourceKey.set(dataSource);
}
@Override
protected Object determineCurrentLookupKey() {
return dataSourceKey.get();
}
}

@ -0,0 +1,13 @@
package com.emr.annotation;
import java.lang.annotation.*;
/**
*
*/
@Target({ElementType.PARAMETER, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface OptionalLog {
String methods() default "";
}

@ -0,0 +1,127 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/8/9 16:12
* Description:
*/
package com.emr.controller;
import com.emr.entity.Emr_Dictionary;
import com.emr.entity.Emr_Fault_Type;
import com.emr.service.Emr_DictionaryService;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Controller
@RequestMapping("/dictionary")
public class DictionaryController {
@Autowired
private Emr_DictionaryService emrDictionaryService;
@RequestMapping(value = "/dictionarys")
public String inHospitals(Model model) {
return "dictionaryDir/dictionary";
}
@ResponseBody
@RequestMapping(value = "/dicList")
public List<Emr_Dictionary> dicList(HttpServletRequest request, HttpServletResponse response, Emr_Dictionary emrDictionary) {
List<Emr_Dictionary> list = emrDictionaryService.dicByClo(emrDictionary);
return list;
}
@ResponseBody
@RequestMapping(value = "/delById")
public int delById(HttpServletRequest request, HttpServletResponse response, Integer id) {
int bol = 0;
if (id != null) {
//删除
bol = emrDictionaryService.delById(id);
}
return bol;
}
@ResponseBody
@RequestMapping(value = "/saveInfo")
public String saveInfo(HttpServletRequest request, HttpServletResponse response, Emr_Dictionary emrDictionary) {
String result="";
int bol=0;
Emr_Dictionary dic2 = new Emr_Dictionary();
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = format1.format(new Date());
if(emrDictionary.getId()!=null){
//判断类别代码或代码是否已经存在
//存在修改
emrDictionary.setUpdater(username);
emrDictionary.setUpdateTime(nowTime);
bol=emrDictionaryService.updateCloById(emrDictionary);
if (bol == 1) {
result = "修改成功!";
} else {
result = "修改失败!";
}
}else{
emrDictionary.setCreater(username);
emrDictionary.setCreateTime(nowTime);
//判断类别代码或代码是否已经存在
if(emrDictionary.getCode()!=null && emrDictionary.getCode()!=""){
dic2.setCode(emrDictionary.getCode());
dic2.setParentId(emrDictionary.getParentId());
//根据代码查询该父类下是否存在是否已经存在
List<Emr_Dictionary> list = emrDictionaryService.dicByClo(dic2);
//添加叶子节点
if(list.size()<=0){
//添加叶子
bol = emrDictionaryService.insertSel(emrDictionary);
if(bol==1){
result = "添加成功!";
}else{
result = "添加失败!";
}
}else{
result="代码已存在!";
}
}else{
dic2.setTypecode(emrDictionary.getTypecode());
//根据代码查询是否已经存在
List<Emr_Dictionary> list = emrDictionaryService.dicByClo(dic2);
//添加叶子节点
if (list.size() <= 0) {
//emrDictionary.setEffective(1);
//添加类别
bol = emrDictionaryService.insertSel(emrDictionary);
if (bol == 1) {
result = "添加成功!";
} else {
result = "添加失败!";
}
} else {
result = "代码已存在!";
}
}
}
return result;
}
}

@ -0,0 +1,29 @@
package com.emr.controller;
import com.emr.service.ipml.TPrintinfoService;
import com.emr.util.Msg;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("font/")
public class FontController {
@Autowired
private TPrintinfoService printinfoService;
@RequestMapping("selectIsPrintByPatienId")
@ResponseBody
public Msg selectIsPrintByPatienId(String patientId){
if(StringUtils.isBlank(patientId)){
return Msg.fail("参数patientId不能为空");
}
try {
return printinfoService.selectIsPrintByPatienId(patientId);
}catch (Exception e){
e.printStackTrace();
return Msg.fail("查询失败");
}
}
}

@ -0,0 +1,41 @@
package com.emr.controller;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.EmrHolidaySetVo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.ipml.HolidaySetService;
import com.emr.util.Msg;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("holidaySet/")
public class HolidaySetController {
@Autowired
private HolidaySetService holidaySetService;
@RequestMapping("holidaySetList")
public String holidaySetList(){
return "holidaySetDir/holidaySetList";
}
@ResponseBody
@RequestMapping(value = "getHolidaySetList")
public OffsetLimitPage getHolidaySetList(EmrHolidaySetVo holidaySetVo) {
OffsetLimitPage result = holidaySetService.selectByColumn(holidaySetVo);
return result;
}
@RequestMapping("save")
@ResponseBody
public Msg save(String startTime,String endTime,String checkBoxes,Integer flag){
try{
holidaySetService.update(startTime, endTime, checkBoxes, flag);
return Msg.success();
}catch (Exception e){
e.printStackTrace();
return Msg.fail("保存出错啦,请联系系统管理员");
}
}
}

@ -0,0 +1,53 @@
package com.emr.controller;
import org.apache.cxf.Bus;
import org.apache.cxf.bus.CXFBusFactory;
import org.apache.cxf.endpoint.EndpointImplFactory;
import org.apache.cxf.endpoint.dynamic.DynamicClientFactory;
import org.apache.cxf.jaxws.support.JaxWsEndpointImplFactory;
import java.util.List;
/**
* @ProjectName:
* @Description:
* @Param
* @Return
* @Author:
* @CreateDate: 2019/9/11 16:15
* @UpdateUser:
* @UpdateDate: 2019/9/11 16:15
* @UpdateRemark:
* @Version: 1.0
*/
public class JAXDynamicClientFactory extends DynamicClientFactory {
protected JAXDynamicClientFactory(Bus bus) {
super(bus);
}
protected EndpointImplFactory getEndpointImplFactory() {
return JaxWsEndpointImplFactory.getSingleton();
}
protected boolean allowWrapperOps() {
return true;
}
public static JAXDynamicClientFactory newInstance(Bus b) {
return new JAXDynamicClientFactory(b);
}
public static JAXDynamicClientFactory newInstance() {
Bus bus = CXFBusFactory.getThreadDefaultBus();
return new JAXDynamicClientFactory(bus);
}
public boolean compileJavaSrc(String classPath, List srcList, String dest) {
org.apache.cxf.common.util.Compiler javaCompiler
= new org.apache.cxf.common.util.Compiler();
javaCompiler.setEncoding("UTF-8");
javaCompiler.setClassPath(classPath);
javaCompiler.setOutputDir(dest);
javaCompiler.setTarget("1.8");
return javaCompiler.compileFiles(srcList);
}
}

@ -0,0 +1,180 @@
package com.emr.controller;
import com.emr.annotation.OptionalLog;
import com.emr.entity.Emr_Log;
import com.emr.service.LogService;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.Signature;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.stereotype.Component;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.Method;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
*
*/
@Aspect
@Component
public class LogAopAction {
// 注入service,用来将日志信息保存在数据库
@Resource
private LogService logService;
// 配置接入点即为所要记录的action操作目录
@Pointcut("@annotation(com.emr.annotation.OptionalLog)")
private void controllerAspect() {
}
@Around("controllerAspect()")
public Object around(ProceedingJoinPoint pjp) throws Throwable {
//日志实体对象
Emr_Log logBo = new Emr_Log();
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
logBo.setCreater(username);
// 获取系统当前时间
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm");
logBo.setCreateDate(fmt.format(new Date()));
// 获取访问真实IP
String ipAddress = request.getHeader("x-forwarded-for");
if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
ipAddress = request.getHeader("Proxy-Client-IP");
}
if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
ipAddress = request.getHeader("WL-Proxy-Client-IP");
}
if(ipAddress == null || ipAddress.length() == 0 || "unknown".equalsIgnoreCase(ipAddress)) {
ipAddress = request.getRemoteAddr();
if(ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")){
//根据网卡取本机配置的IP
InetAddress inet=null;
try {
inet = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
e.printStackTrace();
}
ipAddress= inet.getHostAddress();
}
}
//对于通过多个代理的情况第一个IP为客户端真实IP,多个IP按照','分割
if(ipAddress!=null && ipAddress.length()>15){ //"***.***.***.***".length() = 15
if(ipAddress.indexOf(",")>0){
ipAddress = ipAddress.substring(0,ipAddress.indexOf(","));
}
}
logBo.setIp(ipAddress);
// 拦截的实体类就是当前正在执行的controller
Object target = pjp.getTarget();
// 拦截的方法名称。当前正在执行的方法
String methodName = pjp.getSignature().getName();
// 拦截的方法参数
Object[] args = pjp.getArgs();
//获取请求路径
String actionUrl = request.getRequestURI();
// 拦截的放参数类型
Signature sig = pjp.getSignature();
MethodSignature msig = null;
if (!(sig instanceof MethodSignature)) {
throw new IllegalArgumentException("该注解只能用于方法");
}
msig = (MethodSignature) sig;
Class[] parameterTypes = msig.getMethod().getParameterTypes();
Object object = null;
// 获得被拦截的方法
Method method = null;
try {
method = target.getClass().getMethod(methodName, parameterTypes);
} catch (NoSuchMethodException e1) {
e1.printStackTrace();
} catch (SecurityException e1) {
e1.printStackTrace();
}
if (null != method) {
// 获取方法(此为自定义注解)
OptionalLog op = method.getAnnotation(OptionalLog.class);
// 获取注解的methods 设为执行方法
logBo.setLogContent(op.methods());
// 将上面获取到的请求路径 设为请求路径
//logBo.setActionurl(actionUrl);
try {
object = pjp.proceed();
//接受客户端的数据
Map<String,String[]> map = request.getParameterMap();
// 解决获取参数乱码
Map<String,String[]> newmap = new HashMap<String,String[]>();
for(Map.Entry<String, String[]> entry : map.entrySet()){
String name = entry.getKey();
String values[] = entry.getValue();
if(values==null){
newmap.put(name, new String[]{});
continue;
}
String newvalues[] = new String[values.length];
for(int i=0; i<values.length;i++){
String value = values[i];
value = new String(value.getBytes("iso8859-1"),request.getCharacterEncoding());
newvalues[i] = value; //解决乱码后封装到Map中
}
newmap.put(name, newvalues);
}
logBo.setLogTitle(request.getParameter("id"));
logBo.setSysFlag("EMR_Medical_Record");
// 添加到数据库
logService.insert(logBo);
} catch (Throwable e) {
//接受客户端的数据
Map<String,String[]> map = request.getParameterMap();
// 解决获取参数乱码
Map<String,String[]> newmap = new HashMap<String,String[]>();
for(Map.Entry<String, String[]> entry : map.entrySet()){
String name = entry.getKey();
String values[] = entry.getValue();
if(values==null){
newmap.put(name, new String[]{});
continue;
}
String newvalues[] = new String[values.length];
for(int i=0; i<values.length;i++){
String value = values[i];
value = new String(value.getBytes("iso8859-1"),request.getCharacterEncoding());
newvalues[i] = value; //解决乱码后封装到Map中
}
newmap.put(name, newvalues);
}
logBo.setLogTitle(request.getParameter("id"));
logBo.setSysFlag("EMR_Medical_Record");
//添加到数据库
logService.insert(logBo);
}
}
return object;
}
}

@ -0,0 +1,97 @@
package com.emr.controller;
import com.alibaba.fastjson.JSONObject;
import com.emr.entity.Power_User;
import com.emr.util.ActionScopeUtils;
import com.emr.util.HttpClientUtils;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.AuthenticationException;
import org.apache.shiro.authc.IncorrectCredentialsException;
import org.apache.shiro.authc.UnknownAccountException;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
* @author HJL
* @create 2019/4/29
*/
@Controller
public class LoginController {
@Value("${POWER_URLHEAD}")
private String POWER_URLHEAD;
@Value("${POWER_JSP}")
private String POWER_JSP;
@Value("${powerUrl}")
private String powerUrl;
@RequestMapping(value = "/toLogin")
public String toLogin(Model model) {
// 从session获取用户名
// Subject currentUser = SecurityUtils.getSubject();
// Session session = currentUser.getSession();
// session.removeAttribute("username");
// session.removeAttribute("menuList");
// session.removeAttribute("userSession");
//session.invalidate();
return "redirect:/login.jsp";
}
//实现用户登录@PathVariable("username")
@RequestMapping(value = "/login")
public String login(Model model, HttpServletRequest request) {
try{
String token = request.getParameter("token");
if(StringUtils.isNoneBlank(token)){
JAXDynamicClientFactory dcf = JAXDynamicClientFactory.newInstance();
Client client = dcf.createClient(POWER_URLHEAD + "/WebService/PowerWebService?wsdl");
Object[] objects = client.invoke("getInfosByUserId", token, "emr_medical_record");
ObjectMapper mapper = new ObjectMapper();
Power_User powerUser = mapper.readValue(objects[0].toString(), Power_User.class);
//设置进session
request.getSession().setAttribute("CURRENT_USER", powerUser);
if (null == powerUser.getUserId()) {
return "redirect:/emr_medical_record/error.jsp";
}
String userName = request.getParameter("userName");
String name = request.getParameter("name");
UsernamePasswordToken userToken = new UsernamePasswordToken(userName, "123456");
Subject subject = SecurityUtils.getSubject();
subject.login(userToken);
model.addAttribute("POWER_URLHEAD", POWER_JSP);
request.getSession().setAttribute("token", token);
}else{
return "redirect:"+POWER_URLHEAD+"/login";
}
}catch (Exception e){
e.printStackTrace();
}
return "index";
}
@RequestMapping(value = "/index")
public String Login(HttpServletRequest request, Model model) {
return "index";
}
}

@ -0,0 +1,130 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 14:39
* Description:
*/
package com.emr.controller;
import com.emr.annotation.OptionalLog;
import com.emr.entity.*;
import com.emr.service.Archive_MasterService;
import com.emr.service.Emr_DictionaryService;
import com.emr.service.Emr_Fault_DetailService;
import com.emr.service.LogService;
import com.emr.util.ExportExcelUtil;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@PropertySource(value = "classpath:config/jdbc.properties", encoding = "UTF-8")
@Controller
@RequestMapping("/medicalRecall")
public class MedicalRecallController {
@Autowired
private Emr_Fault_DetailService emrFaultDetailService;
@Autowired
private Emr_DictionaryService emrDictionaryService;
@Autowired
private Archive_MasterService archiveMasterService;
@Value("${recallReason}")
private String recallReason;
@RequestMapping(value = "/recall")
public String recall(Model model) {
return "medicalRecallDir/medicalRecallList";
}
@ResponseBody
@RequestMapping(value = "/recallList")
public OffsetLimitPage recallList(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit) {
OffsetLimitPage result = emrFaultDetailService.selectByCol(emrFaultVo, offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Emr_Fault_Vo emrFaultVo) throws Exception {
String tableThNames = "住院号,住院次数,名字,性别,身份证,入院科室,入院日期,出院科室,出院日期,状态,归档状态";
String fieldCns = "inpNo,visitId,name,sex,idNo,deptAdmissionTo,admissionDateTime,deptName,dischargeDateTime,state,archivestate";
//构造excel的数据
List<Emr_Fault_Vo> list = emrFaultDetailService.selectByCol(emrFaultVo);
Emr_Dictionary dic = new Emr_Dictionary();
dic.setEffective(1);
dic.setTypecode("dept_code");
//科室列表
List<Emr_Dictionary> dicList = emrDictionaryService.dicByTypeCode(dic);
for (int i = 0; i < list.size(); i++) {
//替换科室
for (int k = 0; k < dicList.size(); k++) {
String deptName = list.get(i).getDeptName();
if (deptName.equals(dicList.get(k).getCode())) {
//出院科室
deptName = deptName.replace(deptName, dicList.get(k).getName());
list.get(i).setDeptName(deptName);
//入院科室dept_admission_to
deptName = list.get(i).getDeptAdmissionTo();
deptName = deptName.replace(deptName, dicList.get(k).getName());
list.get(i).setDeptAdmissionTo(deptName);
}
}
}
//文件名
String fileName = "召回信息数据" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
@OptionalLog(methods = "病案召回")
@ResponseBody
@RequestMapping(value = "/updateState")
public int updateState(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail) {
try{
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
emrFaultDetail.setUpdater(username);
SimpleDateFormat from1=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
emrFaultDetail.setUpdateTime(from1.format(new Date()));
if(emrFaultDetail.getRecallReason()==null ||emrFaultDetail.getRecallReason()==""){
emrFaultDetail.setRecallReason(recallReason);
}
//emrFaultDetail.setRecallReason("医院需要这份病案");
Archive_Master archiveMaster=new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate("初审");
int bol=archiveMasterService.updateByClo(archiveMaster);
emrFaultDetail.setArchiveDetailId(null);
bol = emrFaultDetailService.updateCloByPrimaryKey(emrFaultDetail);
return 1;
}catch (Exception e){
e.printStackTrace();
return 0;
}
}
}

@ -0,0 +1,64 @@
package com.emr.controller;
import com.emr.entity.Paper;
import com.emr.service.PaperService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
/**
* @Author:hjl
* @Date:Creatid in 15:49 2019/4/6
* @Description:
*/
@Controller
@RequestMapping("/paper")
public class PaperController {
@Autowired
private PaperService paperService;
@RequestMapping("/allPaper")
public String list(Model model) {
List<Paper> list = paperService.queryAllPaper();
model.addAttribute("list", list);
return "paperDir/papeList";
}
@RequestMapping("toAddPaper")
public String toAddPaper() {
return "paperDir/addPaper";
}
@RequestMapping("/addPaper")
public String addPaper(Paper paper) {
paperService.addPaper(paper);
return "redirect:/paper/allPaper";
}
@RequestMapping("/del/{paperId}")
public String deletePaper(@PathVariable("paperId") Long id) {
paperService.deletePaperById(id);
return "redirect:/paper/allPaper";
}
@RequestMapping("toUpdatePaper")
public String toUpdatePaper(Model model, Long id) {
model.addAttribute("paper", paperService.queryById(id));
return "paperDir/updatePaper";
}
@RequestMapping("/updatePaper")
public String updatePaper(Model model, Paper paper) {
paperService.updatePaper(paper);
paper = paperService.queryById(paper.getPaperId());
model.addAttribute("paper", paper);
return "redirect:/paper/allPaper";
}
}

@ -0,0 +1,47 @@
package com.emr.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author:hjl
* @Date:Creatid in 1:28 2019/4/17
* @Description:
*/
@Controller
@RequestMapping("/menuPower")
public class Power_MenuController {
// @Autowired
// private Power_MenuService powerMenuService;
//
// @Autowired
// private Power_UserService powerUserService;
//
//
// @RequestMapping("/powerMenuList")
// @ResponseBody
// public Msg list() {
// List<Power_Menu> list = powerMenuService.queryAllPowerMenu();
// return Msg.success().add("list",list);
// }
//
// @RequestMapping("/indexMenu")
// @ResponseBody
// public Msg indexMenu() {
// Power_User user = (Power_User) ActionScopeUtils.getSessionAttribute( Constant.CURRENT_USER);
// List<Power_Menu> list = null;
// List<Power_Detailed_Menu> menuList = null;
// List<Power_Menu_User> listPower = null;
// if (user.getRoleId().equals(0)) {
// list = powerMenuService.queryAllPowerMenu();
// return Msg.success().add("listRole", list);
// } else if(user.getRoleId().equals(-100)){
// listPower = powerMenuService.queryPoswerMenuByUserId(user.getUserId());
// return Msg.success().add("listPower", listPower);
// } else{
// menuList = powerMenuService.queryMenuViewByUserId(user.getUserId());
// return Msg.success().add("listUser", menuList);
// }
// }
}

@ -0,0 +1,377 @@
package com.emr.controller;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.ipml.StatisticsService;
import com.emr.util.ExportExcelUtil1;
import com.emr.vo.FinalAndFirstStatistics;
import com.emr.vo.TUuInfoVo;
import com.emr.vo.TUuPrintSearch;
import com.emr.vo.TUuPrintVo;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @ProjectName:
* @Description:
* @Param
* @Return
* @Author:
* @CreateDate: 2020/1/8 14:52
* @UpdateUser:
* @UpdateDate: 2020/1/8 14:52
* @UpdateRemark:
* @Version: 1.0
*/
@Controller
@RequestMapping("statistics/")
public class StatisticsController {
@Autowired
private StatisticsService statisticsService;
//终审按天统计
@RequestMapping("finalStatistics")
public String finalStatistics(){
return "statistics/finalStatistics";
}
//终审明细
@RequestMapping("finalStatisticsDetail")
public String finalStatisticsDetail(){
return "statistics/finalStatisticsDetail";
}
//初审按天统计
@RequestMapping("firstStatistics")
public String firstStatistics(){
return "statistics/firstStatistics";
}
//初审终审明细
@RequestMapping("statisticsDetail")
public String statisticsDetail(){
return "statistics/statisticsDetail";
}
//复印记录报表
@RequestMapping("printCount")
public String printCount(){
return "statistics/printCount";
}
//复印记录明细
@RequestMapping("printInfo")
public String printInfo(){
return "statistics/printInfo";
}
//扫描上传记录报表
@RequestMapping("scanCount")
public String scanCount(){
return "statistics/scanCount";
}
//扫描上传明细
@RequestMapping("scanInfo")
public String scanInfo(){
return "statistics/scanInfo";
}
//终审按天统计
@RequestMapping("getFinalStatistics")
@ResponseBody
public OffsetLimitPage getFinalStatistics(HttpServletRequest request,Integer offset, Integer limit, String startDate, String endDate,Integer isSearch){
try {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
startDate = null;
endDate = null;
}
List<FinalAndFirstStatistics> list = statisticsService.getFinalStatistics(request, offset, limit, startDate, endDate,null);
OffsetLimitPage offsetLimitPage = new OffsetLimitPage((Page)list);
return offsetLimitPage;
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//初审按天统计
@RequestMapping("getFirstStatistics")
@ResponseBody
public OffsetLimitPage getFirstStatistics(HttpServletRequest request,Integer offset, Integer limit, String startDate, String endDate,Integer isSearch){
try {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
startDate = null;
endDate = null;
}
List<FinalAndFirstStatistics> list = statisticsService.getFirstStatistics(request, offset, limit, startDate, endDate,null);
OffsetLimitPage offsetLimitPage = new OffsetLimitPage((Page) list);
return offsetLimitPage;
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//审核明细
@RequestMapping("getStatisticsDetail")
@ResponseBody
public OffsetLimitPage getStatisticsDetail(HttpServletRequest request, Integer offset, Integer limit,String disStartDate, String disEndDate, Archive_Master_Vo archiveMasterVo,Integer flag,Integer isSearch){
try {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
disStartDate = null;
disEndDate = null;
archiveMasterVo.setStartDate(null);
archiveMasterVo.setEndDate(null);
}
return statisticsService.getStatisticsDetail(request,offset,limit,disStartDate,disEndDate,archiveMasterVo,flag);
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//导出终审统计
@RequestMapping("exportExcelFinalStatistics")
@ResponseBody
public void exportExcelFinalStatistics(HttpServletRequest request,HttpServletResponse response,Integer offset, Integer limit, String startDate, String endDate,String sql,Integer isSearch){
//全部明细
String tableThNames = "工号,姓名,终审日期,终审数量";
String fieldCns = "checkCode,checkName,checkDate,count";
try {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
startDate = null;
endDate = null;
}
List<FinalAndFirstStatistics> list = statisticsService.getFinalStatistics(request, offset, limit, startDate, endDate,sql);
//文件名
String fileName = "终审记录统计报表(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
//导出初审统计
@RequestMapping("exportExcelFirstStatistics")
@ResponseBody
public void exportExcelFirstStatistics(HttpServletRequest request,HttpServletResponse response,Integer offset, Integer limit, String startDate, String endDate,String sql,Integer isSearch){
//全部明细
String tableThNames = "工号,姓名,审核日期,审核数量";
String fieldCns = "checkCode,checkName,checkDate,count";
try {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
startDate = null;
endDate = null;
}
List<FinalAndFirstStatistics> list = statisticsService.getFirstStatistics(request, offset, limit, startDate, endDate,sql);
//文件名
String fileName = "病案室审核记录统计表(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
//导出审核明细
@RequestMapping("exportExcelDetail")
@ResponseBody
public void exportExcelDetail(HttpServletRequest request,HttpServletResponse response,String disStartDate, String disEndDate, Archive_Master_Vo archiveMasterVo, Integer flag,String sql,Integer isSearch){
//全部明细
String tableThNames = "";
String fieldCns = "";
if(flag == 2){
tableThNames = "初审工号,初审姓名,初审日期,终审工号,终审姓名,终审日期,患者姓名,住院号,出院科室,出院日期,入院科室,入院日期,住院天数";
fieldCns = "checkDoctor,checkName,checkDatetime,checkedDoctor,checkedName,checkedDatetime,name,inpNo,deptName,dischargeDateTime,deptAdmissionTo,admissionDateTime,days";
}else{
//终审明细
tableThNames = "终审工号,终审姓名,终审日期,患者姓名,住院号,出院科室,出院日期,入院科室,入院日期,住院天数";
fieldCns = "checkedDoctor,checkedName,checkedDatetime,name,inpNo,deptName,dischargeDateTime,deptAdmissionTo,admissionDateTime,days";
}
try {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
disStartDate = null;
disEndDate = null;
archiveMasterVo.setStartDate(null);
archiveMasterVo.setEndDate(null);
}
List<Archive_Master_Vo> list = statisticsService.getDetailList(request,disStartDate, disEndDate, archiveMasterVo, flag,sql);
//文件名
String fileName = "病案室审核记录明细报表(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
//复印记录报表
@RequestMapping("getPrintCount")
@ResponseBody
public OffsetLimitPage getPrintCount(Integer offset, Integer limit, TUuPrintSearch search){
try {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<TUuPrintVo> list = statisticsService.getPrintCount(search);
return new OffsetLimitPage((Page)list);
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//复印记录明细
@RequestMapping("getPrintInfo")
@ResponseBody
public OffsetLimitPage getPrintInfo(Integer offset, Integer limit,TUuPrintSearch search){
try {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<TUuPrintVo> list = statisticsService.getPrintInfo(search);
return new OffsetLimitPage((Page)list);
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//扫描记录报表
@RequestMapping("getScanCount")
@ResponseBody
public OffsetLimitPage getScanCount(Integer offset, Integer limit,TUuPrintSearch search){
try {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<TUuInfoVo> list = statisticsService.getScanCount(search);
return new OffsetLimitPage((Page)list);
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//扫描记录明细
@RequestMapping("getScanInfo")
@ResponseBody
public OffsetLimitPage getScanInfo(Integer offset, Integer limit,TUuPrintSearch search){
try {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<TUuInfoVo> list = statisticsService.getScanInfo(search);
return new OffsetLimitPage((Page)list);
}catch (Exception e){
e.printStackTrace();
return null;
}
}
//导出复印记录报表
@RequestMapping("exportExcelPrintCount")
@ResponseBody
public void exportExcelPrintCount(HttpServletResponse response,TUuPrintSearch search){
//全部明细
String tableThNames = "记账号,住院号,住院次数,患者,复印日期,操作人,复印次数";
String fieldCns = "patientId,inpNo,visitId,hzname,printTime,cpyuser,printCount";
try {
List<TUuPrintVo> list = statisticsService.getPrintCount(search);
//文件名
String fileName = "复印记录报表(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
//导出复印记录明细
@RequestMapping("exportExcelPrintInfo")
@ResponseBody
public void exportExcelPrintInfo(HttpServletResponse response,TUuPrintSearch search){
//全部明细
String tableThNames = "记账号,住院号,住院次数,患者姓名,性别,入院时间,出院时间,出院科室,主管医生,复印内容,操作人,复印日期,修改标志";
String fieldCns = "patientId,inpNo,visitId,hzname,sex,admissionDateTime,dischargeDateTime,name,doctorInCharge,filetitle,cpyuser,printTime,flagCn";
try {
List<TUuPrintVo> list = statisticsService.getPrintInfo(search);
//文件名
String fileName = "复印记录明细(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
//导出扫描记录报表
@RequestMapping("exportExcelScanCount")
@ResponseBody
public void exportExcelScanCount(HttpServletResponse response,TUuPrintSearch search){
//全部明细
String tableThNames = "扫描人,扫描日期,扫描次数";
String fieldCns = "uuname,uploaddatetime,scanCount";
try {
List<TUuInfoVo> list = statisticsService.getScanCount(search);
//文件名
String fileName = "扫描上传记录报表(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
//导出扫描记录明细
@RequestMapping("exportExcelScanInfo")
@ResponseBody
public void exportExcelScanInfo(HttpServletResponse response,TUuPrintSearch search){
//全部明细
String tableThNames = "记账号,住院号,住院次数,患者姓名,性别,入院时间,出院时间,出院科室,主管医生,扫描人,扫描时间";
String fieldCns = "patientId,inpNo,visitId,hzname,sex,admissionDateTime,dischargeDateTime,doctorDept,doctorInCharge,uuname,uploaddatetime";
try {
List<TUuInfoVo> list = statisticsService.getScanInfo(search);
//文件名
String fileName = "扫描上传记录明细(" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ").xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,list,fileName,response);
}catch (Exception e){
e.printStackTrace();
}
}
}

@ -0,0 +1,151 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/10 17:09
* Description:
*/
package com.emr.controller;
import com.emr.service.Archive_DetailService;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
@Controller
@RequestMapping(value = "/Upload")
public class UploadFilesController {
@Autowired
private Archive_DetailService archiveDetailService;
private Logger logger = Logger.getLogger(UploadFilesController.class);
/**
* app
*
* @param
* @return
* @throws IOException
*/
@RequestMapping(value = "/uploadImg", method = RequestMethod.POST)
public void uploadImg(HttpServletResponse resp, HttpServletRequest request, @RequestParam(value = "file", required = false) MultipartFile file) throws IOException {
resp.setContentType("text/json");
resp.setCharacterEncoding("utf-8");
String masterID = request.getParameter("masterID");
String assortID = request.getParameter("assortID");
PrintWriter pw = null;
pw = resp.getWriter();
if (!file.isEmpty()) {
logger.info("成功获取照片");
String fileName = file.getOriginalFilename();
String path = null;
String type = null;
type = fileName.indexOf(".") != -1 ? fileName.substring(fileName.lastIndexOf(".") + 1, fileName.length()) : null;
logger.info("图片初始名称为:" + fileName + " 类型为:" + type);
if (type != null) {
if ("PDF".equals(type.toUpperCase())) {
// 项目在容器中实际发布运行的根路径
String realPath = request.getSession().getServletContext().getRealPath("/");
// 自定义的文件名称
String trueFileName = String.valueOf(System.currentTimeMillis()) + fileName;
// 设置存放图片文件的路径
path = realPath + "/static/img/uploads/" + trueFileName;
logger.info("存放图片文件的路径:" + path);
file.transferTo(new File(path));
logger.info("文件成功上传到指定目录下");
//2、根据申请单的标志查询出父级id
// int parentId=emrPictureService.selectByTypeflag("applyImg").get(0).getId();
// //2、将其路径及文件名类型、申请id以及参数保存图片相关信息到图片表
// Emr_Picture obj=new Emr_Picture();
// obj.setRelationId(seqId);
// obj.setMaxPicture("/static/img/uploads/" + trueFileName);
// obj.setPictureSort(seqId);
// obj.setEffective(1);
// obj.setParentId(parentId);
// obj.setCreater(userId);
// obj.setUpdater(userId);
// SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// String nowTime = format1.format(new Date());
// obj.setCreateTime(nowTime);
// obj.setUpdateTime(nowTime);
// int bol= emrPictureService.insert(obj);
// JSONObject json = JSONObject.fromObject(obj);
// if(bol==1){
// pw.print(json.toString());
// }else{
// pw.print("保存图片信息失败");
// }
} else {
logger.info("不是PDF文件类型,请按要求重新上传");
pw.print("文件类型有误,请重新上传");
}
} else {
logger.info("文件类型为空");
pw.print("文件类型为空");
}
} else {
logger.info("没有找到相对应的文件");
pw.print("没有找到相对应的文件");
}
pw.flush();
}
@ResponseBody
@RequestMapping("upload")
public String upload(HttpServletRequest request, @RequestParam(value = "file", required = false) MultipartFile file) throws IOException {
System.out.println("执行upload");
request.setCharacterEncoding("UTF-8");
logger.info("执行图片上传");
String userId = request.getParameter("userId");
logger.info("userId:" + userId);
if (!file.isEmpty()) {
logger.info("成功获取照片");
String fileName = file.getOriginalFilename();
String path = null;
String type = null;
type = fileName.indexOf(".") != -1 ? fileName.substring(fileName.lastIndexOf(".") + 1, fileName.length()) : null;
logger.info("图片初始名称为:" + fileName + " 类型为:" + type);
if (type != null) {
if ("GIF".equals(type.toUpperCase()) || "PNG".equals(type.toUpperCase()) || "JPG".equals(type.toUpperCase())) {
// 项目在容器中实际发布运行的根路径
String realPath = request.getSession().getServletContext().getRealPath("/");
// 自定义的文件名称
String trueFileName = String.valueOf(System.currentTimeMillis()) + fileName;
// 设置存放图片文件的路径
path = realPath + "/uploads/" + trueFileName;
logger.info("存放图片文件的路径:" + path);
file.transferTo(new File(path));
logger.info("文件成功上传到指定目录下");
} else {
logger.info("不是我们想要的文件类型,请按要求重新上传");
return "error";
}
} else {
logger.info("文件类型为空");
return "error";
}
} else {
logger.info("没有找到相对应的文件");
return "error";
}
return "success";
}
}

@ -0,0 +1,98 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/8/22 13:49
* Description:
*/
package com.emr.controller;
import com.emr.entity.Power_User;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.commons.lang3.StringUtils;
import org.apache.cxf.endpoint.Client;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.servlet.HandlerInterceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class UrlInterceptor implements HandlerInterceptor {
@Value("${POWER_URLHEAD}")
private String POWER_URLHEAD;
@Value("${powerUrl}")
private String powerUrl;
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object o) throws Exception {
// String url = request.getServletPath();
// String token = "";
// if (!"/login".equals(url) && StringUtils.isNoneBlank(token)) {
// token = (String) request.getSession().getAttribute("token");
// if (StringUtils.isNoneBlank(token)) {
// JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
// Client client = dcf.createClient(POWER_URLHEAD + "/WebService/PowerWebService?wsdl");
// Object[] objects = new Object[0];
// Power_User powerUser = new Power_User();
// try {
// objects = client.invoke("getInfosByUserId", token, "emr_medical_record");
// ObjectMapper mapper = new ObjectMapper();
// powerUser = mapper.readValue(objects[0].toString(), Power_User.class);
// UsernamePasswordToken userToken = new UsernamePasswordToken(powerUser.getUserName(), "123456");
// Subject subject = SecurityUtils.getSubject();
// subject.login(userToken);
// //设置进session
// request.getSession().setAttribute("CURRENT_USER", powerUser);
//
// if (null == powerUser.getUserId()) {
// response.sendRedirect(POWER_URLHEAD + "/login");
// return false;
// }
//
//
// } catch (Exception e) {
// e.printStackTrace();
// response.sendRedirect(POWER_URLHEAD + "/login");
// return false;
// }
// } else {
// response.sendRedirect(POWER_URLHEAD + "/login");
// return false;
// }
// }
// return true;
String url = request.getServletPath();
String token = (String) request.getSession().getAttribute("token");
if (!"/login".equals(url) && StringUtils.isNoneBlank(token)) {
try {
JAXDynamicClientFactory dcf = JAXDynamicClientFactory.newInstance();
Client client = dcf.createClient(POWER_URLHEAD + "/WebService/PowerWebService?wsdl");
Object[] objects = client.invoke("getInfosByUserId", token, "emr_medical_record");
ObjectMapper mapper = new ObjectMapper();
Power_User powerUser = mapper.readValue(objects[0].toString(), Power_User.class);
//设置进session
request.getSession().setAttribute("CURRENT_USER", powerUser);
if (null == powerUser.getUserId()) {
response.sendRedirect( "/emr_medical_record/error.jsp");
//request.setAttribute("param", "重新登录");
return false;
}
} catch (Exception e) {
response.sendRedirect("/emr_medical_record/error.jsp");
e.printStackTrace();
// response.sendRedirect(POWER_URLHEAD + "/login");
//request.setAttribute("param", "重新登录");
return false;
}
}
// } else {
// response.sendRedirect(POWER_URLHEAD + "/login");
// return false;
// }
return true;
}
}

@ -0,0 +1,340 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 14:39
* Description:
*/
package com.emr.controller;
import com.alibaba.fastjson.JSON;
import com.emr.annotation.OptionalLog;
import com.emr.dao.Archive_MasterMapper;
import com.emr.entity.*;
import com.emr.service.*;
import com.emr.util.ExportExcelUtil;
import com.emr.util.ExportExcelUtil1;
import com.emr.vo.DeptStatistics;
import com.emr.vo.DoctorStatistics;
import com.emr.vo.V_CountVo;
import com.mchange.v2.collection.MapEntry;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.namespace.QName;
import java.text.SimpleDateFormat;
import java.util.*;
@Controller
@RequestMapping("vCount")
public class VCountController {
@Autowired
private V_CountService v_countService;
@Autowired
private Archive_MasterService archiveMasterService;
@Autowired
private Emr_DictionaryService emrDictionaryService;
@Autowired
private Archive_MasterMapper archiveMasterMapper;
@RequestMapping(value = "/vCounts")
public String faults(Model model){
return "vCountDir/vCountList";
}
@ResponseBody
@RequestMapping(value = "/vCountList")
public OffsetLimitPage faultList(HttpServletRequest request, HttpServletResponse response, V_CountVo vCount, Integer offset, Integer limit) {
OffsetLimitPage result = v_countService.selectPageByClo(vCount,offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/vCountNumList")
public List<V_Count> medicalCountDayList(HttpServletResponse response, V_CountVo vCount) throws Exception {
//统计列表
return v_countService.selectByCol(vCount);
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, V_CountVo vCount) throws Exception {
String tableThNames = "科室代码,科室名称,出院人数,已归档,未归档,死亡人数,归档率(%),2日率(%),3日率(%),7日率(%)";
String fieldCns = "deptCode,deptName,outNum,fileNum,unfileNum,deathNum,fileRate,day2Rate,day3Rate,day7Rate";
//构造excel的数据
List<V_Count> list = v_countService.selectByCol(vCount);
if(null != list && !list.isEmpty()){
for (int i = 0; i < list.size(); i++) {
V_Count v_count = list.get(i);
Double fileRate = Double.valueOf(v_count.getFileRate())*100;
Double day2Rate = Double.valueOf(v_count.getDay2Rate())*100;
Double day3Rate = Double.valueOf(v_count.getDay3Rate())*100;
Double day7Rate = Double.valueOf(v_count.getDay7Rate())*100;
v_count.setFileRate(fileRate.intValue()+"%");
v_count.setDay2Rate(day2Rate.intValue()+"%");
v_count.setDay2Rate(day3Rate.intValue()+"%");
v_count.setDay7Rate(day7Rate.intValue()+"%");
}
}
// for (int i = 0; i < list.size(); i++) {
// if(list.get(i).getInNum()==null){
// list.get(i).setInNum(0);
// }
// if (list.get(i).getOutNum() == null) {
// list.get(i).setOutNum(0);
// }
// if (list.get(i).getFileNum() == null) {
// list.get(i).setFileNum(0);
// }
// if (list.get(i).getUnfileNum() == null) {
// list.get(i).setUnfileNum(0);
// }
// if (list.get(i).getDeathNum() == null) {
// list.get(i).setDeathNum(0);
// }
// if (list.get(i).getFileRate() == null) {
// list.get(i).setFileRate("0.0%");
// }else{
// Double val= Double.valueOf(list.get(i).getFileRate())/100;
// list.get(i).setFileRate(val+"%");
// }
// if (list.get(i).getDay2Rate() == null) {
// list.get(i).setDay2Rate("0.0%");
// } else {
// Double val = Double.valueOf(list.get(i).getDay2Rate()) / 100;
// list.get(i).setDay2Rate(val + "%");
// }
// if (list.get(i).getDay3Rate() == null) {
// list.get(i).setDay3Rate("0.0%");
// } else {
// Double val = Double.valueOf(list.get(i).getDay3Rate()) / 100;
// list.get(i).setDay3Rate(val + "%");
// }
// if (list.get(i).getDay7Rate() == null) {
// list.get(i).setDay7Rate("0.0%");
// } else {
// Double val = Double.valueOf(list.get(i).getDay7Rate()) / 100;
// list.get(i).setDay7Rate(val + "%");
// }
// }
//文件名
String fileName = "统计数据" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil1 exportExcelUtil = new ExportExcelUtil1();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
@ResponseBody
@RequestMapping(value = "/exportExcel2")
public void exportExcel(HttpServletResponse response, Archive_Master_Vo archiveMasterVo) throws Exception {
String tableThNames = "名字,入院科室,入院日期,出院科室,出院日期,主管医生";
String fieldCns = "name,deptAdmissionTo,admissionDateTime,deptName,dischargeDateTime,doctorInCharge";
//构造excel的数据
List<Archive_Master_Vo> list = archiveMasterService.selectByUnfile(archiveMasterVo);
Emr_Dictionary dic = new Emr_Dictionary();
dic.setEffective(1);
dic.setTypecode("dept_code");
//科室列表
List<Emr_Dictionary> dicList = emrDictionaryService.dicByTypeCode(dic);
for (int i = 0; i < list.size(); i++) {
//替换科室
for (int k = 0; k < dicList.size(); k++) {
String deptName = list.get(i).getDeptName();
//入院科室dept_admission_to
String dept2 = list.get(i).getDeptAdmissionTo();
if ((deptName != null && deptName.equals(dicList.get(k).getCode())) || (dept2 != null && dept2.equals(dicList.get(k).getCode()))) {
//出院科室
if(deptName != null) {
deptName = deptName.replace(deptName, dicList.get(k).getName());
list.get(i).setDeptName(deptName);
}
dept2 = dept2.replace(dept2, dicList.get(k).getName());
list.get(i).setDeptAdmissionTo(dept2);
}
}
}
//文件名
String fileName = "未归档病历列表" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
//获取完整信息
@ResponseBody
@RequestMapping(value = "/HomepageDic")
public String HomepageDic(HttpServletRequest request, HttpServletResponse response) {
String result="";
try {
String endpoint = "http://120.27.212.36:9999/filing/services/HomepageDictionary?wsdl";
//String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";
//直接引用远程的wsdl文件
//以下都是套路
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);
call.setOperationName(new QName("http://interfaces.ann.com/", "CheckData"));
//call.setOperationName("CheckData");//WSDL里面描述的接口名称
call.addParameter("masterId", org.apache.axis.encoding.XMLType.XSD_DATE, javax.xml.rpc.ParameterMode.IN);//接口的参数
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型
String temp = "02e4ba46662327995711";
result = (String) call.invoke(new Object[]{temp});
//给方法传递参数,并且调用方法
System.out.println("result is " + result);
} catch (Exception e) {
System.err.println(e.toString());
}
return result;
}
//跳转医生统计页面
@RequestMapping("/doctorFileList")
public String doctorFileList(){
return "vCountDir/doctorFileList";
}
//加载医生统计表格iframe
@RequestMapping("/getDoctorFileInfoIframe")
public String getDoctorFileInfoIframe(String deptCode,String doctor,String startTime,String endTime,Model model){
//科室医师明细
List<DoctorStatistics> list = archiveMasterMapper.getDoctorFileInfo(deptCode, doctor, startTime, endTime);
//定义返回结果
List<DeptStatistics> deptList = new ArrayList<>();
if(null != list && !list.isEmpty()){
//定义科室集合
Map<String,String> deptMap = new LinkedHashMap<>();
for (DoctorStatistics info:list) {
deptMap.put(info.getDeptName(),info.getDeptName());
}
if(null != deptMap && !deptMap.isEmpty()){
for(Map.Entry<String,String> dept:deptMap.entrySet()){
DeptStatistics deptStatistics = new DeptStatistics();
//设置科室总住院天数
int deptAdmissDay = 0;
//设置科室总逾期天数
int deptOverDays = 0;
//设置科室总份数
int deptCount = 0;
//设置科室总逾期份数
int deptOverCount = 0;
//定义科室结合
List<DoctorStatistics> deptDoctorList = new ArrayList<>();
//定义不重复医生集合
Map<String,String> doctorMap = new LinkedHashMap<>();
for (DoctorStatistics info:list) {
if(dept.getKey().equals(info.getDeptName())){
//统计住院总天数
deptAdmissDay += info.getAdmissDays();
//统计逾期天数
deptOverDays += info.getOverDays();
//统计总份数
deptCount++;
//统计总逾期份数
if(info.getOverDays() > 0){
deptOverCount++;
}
deptDoctorList.add(info);
doctorMap.put(info.getDoctor(),info.getDoctor());
}
}
//定义医生集合
List<DoctorStatistics> doctorList = new ArrayList<>();
//组织统计医生归档情况
if(null != deptDoctorList && !deptDoctorList.isEmpty()){
if(null != doctorMap && !doctorMap.isEmpty()){
for(Map.Entry<String,String> doctorKey:doctorMap.entrySet()){
DoctorStatistics doctorStatistics = new DoctorStatistics();
String deptName = "";
//设置总住院天数
int admissDay = 0;
//设置总逾期天数
int overDays = 0;
//设置总份数
int count = 0;
//设置总逾期份数
int overCount = 0;
for (DoctorStatistics info:list) {
if (doctorKey.getKey().equals(info.getDoctor())) {
deptName = info.getDeptName();
//统计总天数
admissDay += info.getAdmissDays();
//统计逾期天数
overDays += info.getOverDays();
//统计总份数
count++;
//统计总逾期份数
if(info.getOverDays() > 0){
overCount++;
}
}
}
//设置科室名称
doctorStatistics.setDeptName(deptName);
//设置医生名称
doctorStatistics.setDoctor(doctorKey.getKey());
//设置总住院天数
doctorStatistics.setAdmissDays(admissDay);
//设置总逾期天数
doctorStatistics.setOverDays(overDays);
//设置总份数
doctorStatistics.setRecordCount(count);
//设置总逾期份数
doctorStatistics.setRecordOverCount(overCount);
doctorList.add(doctorStatistics);
}
}
}
//设置科室名
deptStatistics.setDeptName(dept.getKey());
//设置科室总住院天数
deptStatistics.setDeptAdmissDay(deptAdmissDay);
//设置科室总逾期天数
deptStatistics.setDeptOverDays(deptOverDays);
//设置科室总份数
deptStatistics.setDeptCount(deptCount);
//设置科室总逾期份数
deptStatistics.setDeptOverCount(deptOverCount);
//设置医生集合
deptStatistics.setDoctorData(doctorList);
deptList.add(deptStatistics);
}
}
}
model.addAttribute("deptList",deptList);
return "vCountDir/doctorFileListIframe";
}
}

@ -0,0 +1,230 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 14:38
* Description:
*/
package com.emr.controller;
import com.emr.dao.Archive_MasterMapper;
import com.emr.dao.EmrPatientMapper;
import com.emr.entity.*;
import com.emr.service.*;
import com.emr.util.ExportExcelUtil;
import com.emr.util.OracleConnect;
import org.apache.commons.lang3.StringUtils;
import org.apache.cxf.endpoint.Client;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Controller
@RequestMapping("/beHosp")
public class beHospitaledController {
@Autowired
private Archive_MasterService archiveMasterService;
@Autowired
private Emr_Fault_DetailService emrFaultDetailService;
@Autowired
private EmrPatientMapper patientMapper;
@Value("${HomepageDictionary}")
private String HomepageDictionary;
@Value("${HomepageMethod}")
private String HomepageMethod;
@Autowired
private Archive_MasterMapper archive_masterMapper;
@RequestMapping(value = "/beHosps")
public String inHospitals(Model model){
/*try{
File f=new File("D:\\a1222.txt");
FileOutputStream fos1=new FileOutputStream(f);
OutputStreamWriter dos1=new OutputStreamWriter(fos1);
String str = "";
List<Archive_Master> archive_masters = archive_masterMapper.selectAll();
for (int i = 0; i < archive_masters.size(); i++) {
str += archive_masters.get(i).getInpNo()+System.getProperty("line.separator");
}
dos1.write(str);
dos1.close();
}catch (Exception e){
}finally {
}*/
return "beHospitaledDir/beHospList";
}
@ResponseBody
@RequestMapping(value = "/beHospList")
public OffsetLimitPage beHospList(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,Integer isSearch) {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
}
OffsetLimitPage result = archiveMasterService.selectByColumn(archiveMasterVo, offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Archive_Master_Vo archiveMasterVo,Integer isSearch) throws Exception {
String tableThNames = "住院号,住院次数,名字,性别,身份证,出院科室,出院日期,主管医生,状态";
String fieldCns = "inpNo,visitId,name,sex,idNo,deptName,dischargeDateTime,doctorInCharge,archivestate";
//构造excel的数据
if(isSearch == 0){
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
}
List<Archive_Master_Vo> list = archiveMasterService.selectByColumn(archiveMasterVo);
//文件名
String fileName = "出院浏览" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
@ResponseBody
@RequestMapping(value = "/updateStateByArchivId")
public String updateStateByArchivId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail) {
String result = "";
result = checkSuccessMethod(emrFaultDetail.getArchiveDetailId());
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
if(result.equals("完整")) {
//修改病案归档状态
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate(emrFaultDetail.getState());
//设置审核时间
archiveMaster.setCheckDatetime(format1.format(new Date()));
//设置审核人
archiveMaster.setCheckDoctor(username);
archiveMaster.setLockinfo(result);
int bol = archiveMasterService.updateByClo(archiveMaster);
//添加初审内容
if (bol == 1) {
String nowTime = format1.format(new Date());
//参数输入
emrFaultDetail.setCreater(username);
emrFaultDetail.setCreateTime(nowTime);
emrFaultDetail.setState("未召回");
bol = emrFaultDetailService.insertSel(emrFaultDetail);
}
}else{
//修改病案归档完整内容Lockinfo
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
//设置审核时间
archiveMaster.setCheckDatetime(format1.format(new Date()));
//设置审核人
archiveMaster.setCheckDoctor(username);
archiveMaster.setLockinfo(result);
archiveMasterService.updateByClo(archiveMaster);
}
return result;
}
//校验完整性
@ResponseBody
@RequestMapping(value = "/checkSuccess")
public String checkSuccess(String archiveDetailId) {
return checkSuccessMethod(archiveDetailId);
}
//校验完整性方法
private String checkSuccessMethod(String archiveDetailId){
String result = "";
try {
String endpoint = HomepageDictionary;
//String endpoint = "http://localhost:8080/ca3/services/caSynrochnized?wsdl";
String method = HomepageMethod;
JAXDynamicClientFactory factory = JAXDynamicClientFactory.newInstance();
Client client = factory.createClient(endpoint);
Object[] res = null;
res = client.invoke(method, archiveDetailId);
result = (String) res[0];
} catch (Exception e) {
System.err.println(e.toString());
}
return result;
}
@ResponseBody
@RequestMapping(value = "/forceWZ")
public String forceWZ(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail) {
//修改病案归档状态
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate("初审");
archiveMaster.setLockinfo(emrFaultDetail.getContent());
int bol = archiveMasterService.updateByClo(archiveMaster);
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = format1.format(new Date());
//参数输入
emrFaultDetail.setCreater(username);
emrFaultDetail.setCreateTime(nowTime);
emrFaultDetail.setState("未召回");
bol = emrFaultDetailService.insertSel(emrFaultDetail);
return "1";
}
//出院初审先查询his是否医生护士全部提交
@RequestMapping("getInfoFromHis")
@ResponseBody
//@DataSource(dataSource = "dataSource1")
public int getInfoFromHis(String patientId){
try {
String sql = "select fpatno from pacs.v_emrpatient where fpatno = '"+patientId+"'";
String str = OracleConnect.select(sql);
System.out.println("str:"+str);
if(StringUtils.isNoneBlank(str)){
return 1;
}else{
return 0;
}
} catch (Exception e) {
e.printStackTrace();
return -1;
}
}
}

@ -0,0 +1,128 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 14:39
* Description:
*/
package com.emr.controller;
import com.emr.entity.*;
import com.emr.service.Emr_DictionaryService;
import com.emr.service.Emr_Fault_DetailService;
import com.emr.service.Emr_Fault_TypeService;
import com.emr.util.ExportExcelUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Controller
@RequestMapping("fault")
public class faultController {
@Autowired
private Emr_Fault_DetailService emrFaultDetailService;
@Autowired
private Emr_Fault_TypeService emrFaultTypeService;
@Autowired
private Emr_DictionaryService emrDictionaryService;
@RequestMapping(value = "/faults")
public String faults(Model model){
return "faultDir/faultList";
}
@ResponseBody
@RequestMapping(value = "/faultList")
public OffsetLimitPage faultList(Integer isSearch, Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit) {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
emrFaultVo.setStartDate(null);
emrFaultVo.setEndDate(null);
}
OffsetLimitPage result = emrFaultDetailService.selectByCol(emrFaultVo,offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Emr_Fault_Vo emrFaultVo,Integer isSearch) throws Exception {
String tableThNames = "住院号,住院次数,姓名,出院科室,出院日期,归档状态,评分,回退内容,缺陷选项,缺陷内容,创建时间";
String fieldCns = "inpNo,visitId,name,deptName,dischargeDateTime,archivestate,score,backContent,assortId,content,createTime";
//构造excel的数据
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
emrFaultVo.setStartDate(null);
emrFaultVo.setEndDate(null);
}
List<Emr_Fault_Vo> list = emrFaultDetailService.selectByCol(emrFaultVo);
Emr_Dictionary dic = new Emr_Dictionary();
dic.setEffective(1);
dic.setTypecode("dept_code");
//科室列表
List<Emr_Dictionary> dicList = emrDictionaryService.dicByTypeCode(dic);
//获取缺陷类别列表
Emr_Fault_Type obj=new Emr_Fault_Type();
obj.setEffective(1);
//缺陷选项
List<Emr_Fault_Type> typeLis= emrFaultTypeService.selectByCol(obj);
for(int i=0;i<list.size();i++){
String assortId = list.get(i).getAssortId();
if (assortId != "" && assortId != null) {
String[] assorArr = assortId.split(",");
//替换类别
for (int j = 0; j < typeLis.size(); j++) {
String id = String.valueOf(typeLis.get(j).getId());
if (Arrays.asList(assorArr).contains(id)) {
assortId = assortId.replace(id, typeLis.get(j).getTypeName());
list.get(i).setAssortId(assortId);
}
}
}
//替换科室
for (int k = 0; k < dicList.size(); k++) {
String deptName = list.get(i).getDeptName();
//入院科室dept_admission_to
String dept2 = list.get(i).getDeptAdmissionTo();;
if ((deptName != null && deptName.equals(dicList.get(k).getCode()))|| (dept2 != null && dept2.equals(dicList.get(k).getCode()))) {
//出院科室
deptName = deptName.replace(deptName, dicList.get(k).getName());
list.get(i).setDeptName(deptName);
dept2 = dept2.replace(dept2, dicList.get(k).getName());
list.get(i).setDeptAdmissionTo(dept2);
}
}
}
//文件名
String fileName = "缺陷信息数据" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
// @ResponseBody
// @RequestMapping(value = "/faultByArchiveId")
// public Emr_Fault_Detail faultByArchiveId(HttpServletRequest request, HttpServletResponse response, String archiveDetailId) {
// Emr_Fault_Detail result = emrFaultDetailService.selectByArchiveDetailId(archiveDetailId);
// return result;
// }
}

@ -0,0 +1,73 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:32
* Description:
*/
package com.emr.controller;
import com.emr.entity.Emr_Fault_Type;
import com.emr.entity.Emr_Fault_Vo;
import com.emr.service.Emr_Fault_TypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@Controller
@RequestMapping("/faultType")
public class faultTypeController {
@Autowired
private Emr_Fault_TypeService emrFaultTypeService;
@RequestMapping(value = "/faultTypes")
public String faultTypes(Model model) {
return "faultTypeDir/faultTypeList";
}
@ResponseBody
@RequestMapping(value = "/faultTypeList")
public List<Emr_Fault_Type> faultTypeList(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Type emrFaultType) {
List<Emr_Fault_Type> list = emrFaultTypeService.selectByCol(emrFaultType);
return list;
}
@ResponseBody
@RequestMapping(value = "/updateByClo")
public int updateByClo(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Type emrFaultType) {
int bol=0;
//判断id是否存在
if(emrFaultType.getId()!=null){
//判断是否存在记录
if (emrFaultTypeService.selectById(emrFaultType.getId()) != null) {
bol = emrFaultTypeService.updateByClo(emrFaultType);
}
}else{
//不存在则添加缺陷类别记录
bol= emrFaultTypeService.insertClo(emrFaultType);
}
return bol;
}
@ResponseBody
@RequestMapping(value = "/delById")
public int delById(HttpServletRequest request, HttpServletResponse response,Integer id) {
int bol = 0;
//判断id是否存在
if (id!= null) {
//判断是否存在记录
bol = emrFaultTypeService.delById(id);
}
return bol;
}
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,267 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/8/8 12:46
* Description:
*/
package com.emr.controller;
import com.emr.entity.*;
import com.emr.service.Archive_MasterService;
import com.emr.service.Emr_Fault_DetailService;
import com.emr.service.Emr_Fault_TypeService;
import com.emr.util.ExportExcelUtil;
import org.apache.commons.lang3.StringUtils;
import org.apache.cxf.endpoint.Client;
import org.apache.log4j.Logger;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.namespace.QName;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
@Controller
@RequestMapping("lastVerify")
public class lastVerifyController {
private static org.apache.log4j.Logger log = Logger.getLogger("myLog");
//退回病案给金蝶公司的webService接口地址
@Value("${RETURNWEBSERVICE}")
private String RETURNWEBSERVICE;
//webService qName参数1
@Value("${RETURNPARM1}")
private String RETURNPARM1;
//webService qName参数2
@Value("${RETURNPARM2}")
private String RETURNPARM2;
@Autowired
private Archive_MasterService archiveMasterService;
@Autowired
private Emr_Fault_TypeService emrFaultTypeService;
@Autowired
private Emr_Fault_DetailService emrFaultDetailService;
@RequestMapping(value = "/lastVerifys")
public String faults(Model model) {
return "lastVerifyDir/lastVerifyList";
}
@ResponseBody
@RequestMapping(value = "/lastVerifyList")
public OffsetLimitPage lastVerifyList(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,Integer isSearch) {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
}
OffsetLimitPage result = archiveMasterService.selectByLast(archiveMasterVo, offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Archive_Master_Vo archiveMasterVo,Integer isSearch) throws Exception {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
}
String tableThNames = "住院号,住院次数,名字,性别,身份证,出院科室,出院日期,主管医生,状态";
String fieldCns = "inpNo,visitId,name,sex,idNo,deptName,dischargeDateTime,doctorInCharge,archivestate";
//构造excel的数据
List<Archive_Master_Vo> list = archiveMasterService.selectByLast(archiveMasterVo);
//文件名
String fileName = "病案室终审" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
@ResponseBody
@RequestMapping(value = "/getFaultType")
public List<Emr_Fault_Type> getFaultType(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Type emrFaultType) {
List<Emr_Fault_Type> result = emrFaultTypeService.selectByCol(emrFaultType);
return result;
}
@ResponseBody
@RequestMapping(value = "/getDetailByArchId")
public Emr_Fault_Detail getDetailByArchId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail) {
Emr_Fault_Detail result = emrFaultDetailService.selectByArchiveDetailId(emrFaultDetail);
return result;
}
@ResponseBody
@RequestMapping(value = "/updateDetailByArchivId")
public int updateDetailByArchivId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail_Vo emrFaultDetail) {
//修改病案归档状态:复审退回
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate("复审退回");
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
//参数输入
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = format1.format(new Date());
//设置回退给角色信息
archiveMaster.setReturntoRole(emrFaultDetail.getReturntoRole());
//设置回退操作人信息
archiveMaster.setReturnOperUsername(username);
int bol= 1;
bol = archiveMasterService.updateByClo(archiveMaster);
//修改复审内容
if (bol == 1) {
emrFaultDetail.setUpdater(username);
emrFaultDetail.setUpdateTime(nowTime);
//修改复审内容
//1、查询出该病案的创建时间最近的缺陷记录
Emr_Fault_Detail entity= emrFaultDetailService.selectByArchiveDetailId(emrFaultDetail);
if(null != entity) {
emrFaultDetail.setId(entity.getId());
//2、修改缺陷记录
bol = emrFaultDetailService.updateCloByPrimaryKey(emrFaultDetail);
}
//退回金蝶
//获取基本信息
Archive_Master archiveMaster1 = archiveMasterService.selectByPrimaryKey(emrFaultDetail.getArchiveDetailId());
try {
String msg = "<req>" +
"<patNo>" + archiveMaster1.getPatientId() + "</patNo>" +
"<patTimes>" + archiveMaster1.getVisitId() + "</patTimes>" +
"<patFileNo>" + archiveMaster1.getInpNo() + "</patFileNo>" +
"<returnObject>" + emrFaultDetail.getReturntoRole() + "</returnObject>" +
"<returnType>01</returnType>" +
"<returnName>修改病历</returnName>" +
"<returnDept>" + archiveMaster1.getDeptName() + "</returnDept>" +
"<regEmp>" + username + "</regEmp>" +
"<regDept>8913</regDept>" +
"<returnDate>" + nowTime + "</returnDate>" +
"<validHours>24</validHours>" +
"</req>";
log.info(msg);
JAXDynamicClientFactory clientFactory = JAXDynamicClientFactory.newInstance();
Client client = clientFactory.createClient(RETURNWEBSERVICE);
QName qname = new QName(RETURNPARM1, RETURNPARM2);
Object[] result = client.invoke(qname, msg);
Document document = DocumentHelper.parseText(result[0].toString());
Element rootElement = document.getRootElement();
Iterator iterator = rootElement.elementIterator();
while (iterator.hasNext()) {
Element element = (Element) iterator.next();
if ("resultCode".equals(element.getName())) {
System.out.println("resultCode:" + element.getTextTrim());
}
if ("resultDesc".equals(element.getName())) {
System.out.println("resultDesc:" + element.getTextTrim());
}
}
log.info("回退成功!");
}catch(Exception e){
log.info("回退出错了!");
log.info(e.getMessage());
e.printStackTrace();
}
}
return bol;
}
/*
@ResponseBody
@RequestMapping(value = "/updateDetailByArchivId")
public int updateDetailByArchivId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail emrFaultDetail) {
//修改病案归档状态:复审退回
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate("复审退回");
int bol = archiveMasterService.updateByClo(archiveMaster);
//修改复审内容
if (bol == 1) {
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
//参数输入
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime = format1.format(new Date());
emrFaultDetail.setUpdater(username);
emrFaultDetail.setUpdateTime(nowTime);
//修改复审内容
//1、查询出该病案的创建时间最近的缺陷记录
Emr_Fault_Detail entity= emrFaultDetailService.selectByArchiveDetailId(emrFaultDetail);
emrFaultDetail.setId(entity.getId());
//2、修改缺陷记录
bol = emrFaultDetailService.updateCloByPrimaryKey(emrFaultDetail);
}
return bol;
}
*/
//终审
@ResponseBody
@RequestMapping(value = "/updateStateByArchivId")
public int updateStateByArchivId(HttpServletRequest request, HttpServletResponse response, Emr_Fault_Detail_Vo emrFaultDetail) {
// 从session获取用户名
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
String username = (String) session.getAttribute("userSession");//获取前面登录的用户名
SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//修改病案归档状态
Archive_Master archiveMaster = new Archive_Master();
archiveMaster.setId(emrFaultDetail.getArchiveDetailId());
archiveMaster.setArchivestate("已归档");
//设置审核时间
if(StringUtils.isBlank(emrFaultDetail.getCheckedDateTime())){
archiveMaster.setCheckedDatetime(format1.format(new Date()));
}else{
archiveMaster.setCheckedDatetime(emrFaultDetail.getCheckedDateTime());
}
//设置修改原因
archiveMaster.setChangeReason(emrFaultDetail.getChangeReason());
//设置审核人
archiveMaster.setCheckedDoctor(username);
int bol = archiveMasterService.updateByClo(archiveMaster);
//添加初审内容
if (bol == 1) {
String nowTime = format1.format(new Date());
//参数输入
emrFaultDetail.setCreater(username);
emrFaultDetail.setCreateTime(nowTime);
emrFaultDetail.setState("未召回");
emrFaultDetailService.insertSel(emrFaultDetail);
}
return 1;
}
}

@ -0,0 +1,72 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 14:39
* Description:
*/
package com.emr.controller;
import com.emr.entity.Emr_Log;
import com.emr.entity.Emr_Log_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.LogService;
import com.emr.util.ExportExcelUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Controller
@RequestMapping("/recallDate")
public class medicalRecallDateController {
@Autowired
private LogService logService;
@RequestMapping(value = "/recallDates")
public String recallDates(Model model) {
return "medicalRecallDateDir/recallDateList";
}
@ResponseBody
@RequestMapping(value = "/recallDateList")
public OffsetLimitPage recallDateList(HttpServletRequest request, HttpServletResponse response, Emr_Log_Vo emrLogVo, Integer offset, Integer limit) {
emrLogVo.setLogContent("病案召回");
emrLogVo.setSysFlag("EMR_Medical_Record");
OffsetLimitPage result = logService.selectByCol(emrLogVo, offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Emr_Log_Vo emrLogVo) throws Exception {
String tableThNames = "住院号,住院次数,名字,性别,身份证,召回人,召回时间,召回原因,状态,归档状态";
String fieldCns = "inpNo,visitId,name,sex,idNo,creater,createDate,recallReason,state,archivestate";
emrLogVo.setLogContent("病案召回");
emrLogVo.setSysFlag("EMR_Medical_Record");
//构造excel的数据
List<Emr_Log_Vo> list = logService.selectByCol(emrLogVo);
//文件名
String fileName = "日志信息数据" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
@ResponseBody
@RequestMapping(value = "/lastBylogTitle")
public Emr_Log lastBylogTitle(HttpServletRequest request, HttpServletResponse response, String logTitle) {
Emr_Log result = logService.lastBylogTitle(logTitle);
return result;
}
}

@ -0,0 +1,31 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/9/17 11:30
* Description:
*/
package com.emr.controller;
import com.emr.util.PDFUtils;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.io.File;
@Component
public class taskController {
@Scheduled(cron="0 0 4 * * ?")//每天4点触发0 0 4 * * ?
public void task(){
//static\img\pdfFiles\typesPdf
// 项目在容器中实际发布运行的根路径
// String realPath = request.getSession().getServletContext().getRealPath("/");
// realPath = realPath.split("target")[0] + pictureUrl + "\\static\\img\\";
String projectPath = System.getProperty("user.dir") + "\\static\\img\\pdfFiles\\typesPdf\\";
System.out.println("projectPath==" + projectPath);
PDFUtils.delAllFile(projectPath);
}
}

@ -0,0 +1,43 @@
package com.emr.controller;
import java.math.BigInteger;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class test {
public static void main(String[] args) throws Exception {
int data = 65504;//data表示要转换的数
toNBigit(data,2);
}
private static void toNBigit(int data, int a) {
if(a>36||a<2){
System.out.println("不支持此进制!!!");
return;
}
if(data<0){
data=((-1*data)^((1<<31)-1))+1;//将负数变为正数,再取反(^((1<<31)-1)即为取反),最后再加1
}
int n=(data%a);
int m=(data/a);
if(m==0){
printNBigitNum(n);
}else{
toNBigit(m,a);
printNBigitNum(n);
}
}
private static void printNBigitNum(int n) {
if(n>9&&n<=36){
System.out.print((char)((n-10)+65));
}else if(n>36){
System.out.println("不支持此进制!!!");
return;
}else{
System.out.print(n);
}
}
}

@ -0,0 +1,79 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 14:40
* Description:
*/
package com.emr.controller;
import com.emr.entity.Archive_Master;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.Emr_Dictionary;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.Archive_MasterService;
import com.emr.service.Emr_DictionaryService;
import com.emr.util.ExportExcelUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Controller
@RequestMapping("/unfile")
public class unfileMedicalController {
@Autowired
private Archive_MasterService archiveMasterService;
@Autowired
private Emr_DictionaryService emrDictionaryService;
@RequestMapping(value = "/unfileMedicals")
public String faults(Model model) {
return "unfileMedicalDir/unfileMedicalList";
}
@ResponseBody
@RequestMapping(value = "/unfileList")
public OffsetLimitPage unfileList(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,Integer isSearch) {
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
}
OffsetLimitPage result = archiveMasterService.selectByUnfile(archiveMasterVo, offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Archive_Master_Vo archiveMasterVo,Integer isSearch) throws Exception {
String tableThNames = "住院号,住院次数,名字,性别,身份证,入院科室,入院日期,出院科室,出院日期,主管医生,状态";
String fieldCns = "inpNo,visitId,name,sex,idNo,deptAdmissionTo,admissionDateTime,deptName,dischargeDateTime,doctorInCharge,archivestate";
//构造excel的数据
//判断是否是初始化查询,是初始化查询把开始结束时间置空
if(isSearch == 0){
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
}
List<Archive_Master_Vo> list = archiveMasterService.selectByUnfile(archiveMasterVo);
//文件名
String fileName = "未归档病历列表" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//ExportExcelUtil
ExportExcelUtil exportExcelUtil = new ExportExcelUtil();
response.setContentType("application/ms-excel;charset=gbk");
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames, fieldCns, list, fileName, response);
}
}

@ -0,0 +1,33 @@
package com.emr.dao;
import com.emr.entity.Archive_Detail;
import com.emr.entity.Archive_Detail_Vo;
import java.util.List;
public interface Archive_DetailMapper {
int deleteByPrimaryKey(String id);
int deleteByClo(Archive_Detail record);
int insert(Archive_Detail record);
int insertSel(Archive_Detail record);
Archive_Detail selectByid(String id);
int updateCloById(Archive_Detail record);
int updateByPrimaryKey(Archive_Detail record);
List<Archive_Detail> selectByColm(Archive_Detail record);
List<Archive_Detail> selectByCol(Archive_Detail record);
List<Archive_Detail_Vo> selectByClo(Archive_Detail_Vo record);
List<Archive_Detail_Vo> detailByClo(Archive_Detail_Vo record);
List<Archive_Detail> selectByIdStr(Archive_Detail record);
}

@ -0,0 +1,34 @@
package com.emr.dao;
import com.emr.entity.Archive_Master;
import com.emr.entity.Archive_Master_Vo;
import com.emr.vo.DoctorStatistics;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface Archive_MasterMapper {
int deleteByPrimaryKey(String id);
int insert(Archive_Master record);
int insertSelective(Archive_Master record);
Archive_Master selectByPrimaryKey(String id);
List<Archive_Master> selectByCol(Archive_Master_Vo record);
List<Archive_Master_Vo> selectByColumn(Archive_Master_Vo record);
List<Archive_Master_Vo> selectByLast(Archive_Master_Vo record);
List<Archive_Master_Vo> selectByUnfile(Archive_Master_Vo record);
int updateByClo(Archive_Master record);
int updateById(Archive_Master record);
List<Archive_Master> selectAll();
List<DoctorStatistics> getDoctorFileInfo(@Param("deptCode")String deptCode,@Param("doctor")String doctor,@Param("startTime")String startTime,@Param("endTime")String endTime);
}

@ -0,0 +1,29 @@
package com.emr.dao;
import com.emr.entity.EmrHolidaySet;
import com.emr.entity.EmrHolidaySetVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface EmrHolidaySetMapper {
int deleteByPrimaryKey(Integer id);
int insert(EmrHolidaySet record);
int insertSelective(EmrHolidaySet record);
EmrHolidaySet selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(EmrHolidaySet record);
int updateByPrimaryKey(EmrHolidaySet record);
List<EmrHolidaySet> selectAllByDates(@Param("startTime")String startTime, @Param("endTime")String endTime);
int SampleInsert(@Param("list")List<EmrHolidaySet> list);
int SampleUpdate(@Param("list")List<EmrHolidaySet> list);
List<EmrHolidaySetVo> selectByColumn(EmrHolidaySetVo record);
}

@ -0,0 +1,17 @@
package com.emr.dao;
import com.emr.entity.EmrOvertimeSet;
public interface EmrOvertimeSetMapper {
int deleteByPrimaryKey(Integer id);
int insert(EmrOvertimeSet record);
int insertSelective(EmrOvertimeSet record);
EmrOvertimeSet selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(EmrOvertimeSet record);
int updateByPrimaryKey(EmrOvertimeSet record);
}

@ -0,0 +1,7 @@
package com.emr.dao;
import org.apache.ibatis.annotations.Param;
public interface EmrPatientMapper {
int selectExistByPatient(@Param("fpatno") String fpatno);
}

@ -0,0 +1,17 @@
package com.emr.dao;
import com.emr.entity.Emr_Archive_Detail;
public interface Emr_Archive_DetailMapper {
int deleteByPrimaryKey(Integer id);
int insert(Emr_Archive_Detail record);
int insertSelective(Emr_Archive_Detail record);
Emr_Archive_Detail selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(Emr_Archive_Detail record);
int updateByPrimaryKey(Emr_Archive_Detail record);
}

@ -0,0 +1,42 @@
package com.emr.dao;
import com.emr.entity.Emr_Dictionary;
import java.util.List;
public interface Emr_DictionaryMapper {
/**
*
* @param emrDictionary
* @return
*/
List<Emr_Dictionary> dicByTypeCode(Emr_Dictionary emrDictionary);
/**
*
* @param emrDictionary
* @return
*/
List<Emr_Dictionary> dicByClo(Emr_Dictionary emrDictionary);
/**
*
* @param emrDictionary
* @return
*/
int insertSel(Emr_Dictionary emrDictionary);
/**
* id
* @param id
* @return
*/
int delById(Integer id);
/**
* id
* @param emrDictionary
* @return
*/
int updateCloById(Emr_Dictionary emrDictionary);
}

@ -0,0 +1,24 @@
package com.emr.dao;
import com.emr.entity.Emr_Fault_Detail;
import com.emr.entity.Emr_Fault_Vo;
import java.util.List;
public interface Emr_Fault_DetailMapper {
int deleteByPrimaryKey(Integer id);
int insert(Emr_Fault_Detail record);
int insertSel(Emr_Fault_Detail record);
Emr_Fault_Detail selectByPrimaryKey(Integer id);
int updateCloByPrimaryKey(Emr_Fault_Detail record);
int updateByPrimaryKey(Emr_Fault_Detail record);
List<Emr_Fault_Vo> selectByCol(Emr_Fault_Vo record);
Emr_Fault_Detail selectByArchiveDetailId(Emr_Fault_Detail record);
}

@ -0,0 +1,22 @@
package com.emr.dao;
import com.emr.entity.Emr_Fault_Type;
import java.util.List;
public interface Emr_Fault_TypeMapper {
int delById(Integer id);
int insert(Emr_Fault_Type record);
int insertClo(Emr_Fault_Type record);
List<Emr_Fault_Type> selectByCol(Emr_Fault_Type record);
int updateByClo(Emr_Fault_Type record);
int updateByPrimaryKey(Emr_Fault_Type record);
Emr_Fault_Type selectById(Integer id);
}

@ -0,0 +1,22 @@
package com.emr.dao;
import com.emr.entity.Emr_Log;
import com.emr.entity.Emr_Log_Vo;
import java.util.List;
public interface Emr_LogMapper {
int deleteByPrimaryKey(Integer logId);
int insert(Emr_Log record);
int insertSelective(Emr_Log record);
Emr_Log lastBylogTitle(String logTitle);
int updateByPrimaryKeySelective(Emr_Log record);
int updateByPrimaryKey(Emr_Log record);
List<Emr_Log_Vo> selectByCol(Emr_Log_Vo record);
}

@ -0,0 +1,21 @@
package com.emr.dao;
import com.emr.entity.Emr_Picture;
import java.util.List;
public interface Emr_PictureMapper {
int deleteById(String id);
int insert(Emr_Picture record);
int insertSel(Emr_Picture record);
Emr_Picture selectByid(String id);
int updateCloByIdOrFlay(Emr_Picture record);
int updateByPrimaryKey(Emr_Picture record);
List<Emr_Picture> selectByClo(Emr_Picture record);
}

@ -0,0 +1,22 @@
package com.emr.dao;
import com.emr.entity.Paper;
import java.util.List;
/**
* @Author:hjl
* @Date:Creatid in 15:48 2019/4/6
* @Description:
*/
public interface PaperDao {
int addPaper(Paper paper);
int deletePaperById(long id);
int updatePaper(Paper paper);
Paper queryById(long id);
List<Paper> queryAllPaper();
}

@ -0,0 +1,40 @@
package com.emr.dao;
import com.emr.entity.Paper;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @Author:hjl
* @Date:Creatid in 16:25 2019/4/7
* @Description:
* @Repository
*/
@Repository
public class PaperDaoImpl implements PaperDao {
@Override
public int addPaper(Paper paper) {
return this.addPaper(paper);
}
@Override
public int deletePaperById(long id) {
return this.deletePaperById(id);
}
@Override
public int updatePaper(Paper paper) {
return this.updatePaper(paper);
}
@Override
public Paper queryById(long id) {
return this.queryById(id);
}
@Override
public List<Paper> queryAllPaper() {
return this.queryAllPaper();
}
}

@ -0,0 +1,18 @@
package com.emr.dao;
import com.emr.entity.Archive_Master_Vo;
import com.emr.vo.FinalAndFirstStatistics;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface StatisticsMapper {
//终审按天统计
List<FinalAndFirstStatistics> finalStatistics(@Param("startDate")String startDate,@Param("endDate")String endDate,@Param("sql")String sql);
//初审按天统计
List<FinalAndFirstStatistics> firstStatistics(@Param("startDate")String startDate,@Param("endDate")String endDate,@Param("sql")String sql);
//审核明细
List<Archive_Master_Vo> statistics(@Param("disStartDate")String disStartDate,@Param("disEndDate")String disEndDate,@Param("record")Archive_Master_Vo record,@Param("flag")Integer flag,@Param("sql")String sql);
}

@ -0,0 +1,16 @@
package com.emr.dao;
import com.emr.entity.TPrintinfo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface TPrintinfoMapper {
int insert(TPrintinfo record);
int insertSelective(TPrintinfo record);
List<TPrintinfo> selectIsPrintByPatienId(@Param("patientId")String patientId);
TPrintinfo selectLockByPatienId(@Param("patientId")String patientId);
}

@ -0,0 +1,18 @@
package com.emr.dao;
import com.emr.entity.TUuInfo;
import com.emr.vo.TUuInfoVo;
import com.emr.vo.TUuPrintSearch;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface TUuInfoMapper {
int insert(TUuInfo record);
int insertSelective(TUuInfo record);
List<TUuInfoVo> getScanCount(TUuPrintSearch record);
List<TUuInfoVo> getScanInfo(TUuPrintSearch record);
}

@ -0,0 +1,18 @@
package com.emr.dao;
import com.emr.entity.TUuPrint;
import com.emr.vo.TUuPrintSearch;
import com.emr.vo.TUuPrintVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface TUuPrintMapper {
int insert(TUuPrint record);
int insertSelective(TUuPrint record);
List<TUuPrintVo> getPrintCount(TUuPrintSearch record);
List<TUuPrintVo> getPrintInfo(TUuPrintSearch record);
}

@ -0,0 +1,19 @@
package com.emr.dao;
import com.emr.entity.V_Count;
import com.emr.vo.V_CountVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface V_CountMapper {
List<V_Count> selectByCol(V_CountVo record);
// /**
// * 根据条件查找统计列表分页
// *
// * @param record
// * @return
// */
// List<V_Count> selectPageByClo(V_Count record);
}

@ -0,0 +1,103 @@
package com.emr.entity;
public class Archive_Detail {
private String id;
private String pdfPath;
private String masterid;
private String uploaddatetime;
private String assortid;
private String source;
private String subassort;
private String title;
private String flag;
private String sys;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id == null ? null : id.trim();
}
public String getPdfPath() {
return pdfPath;
}
public void setPdfPath(String pdfPath) {
this.pdfPath = pdfPath == null ? null : pdfPath.trim();
}
public String getMasterid() {
return masterid;
}
public void setMasterid(String masterid) {
this.masterid = masterid == null ? null : masterid.trim();
}
public String getUploaddatetime() {
return uploaddatetime;
}
public void setUploaddatetime(String uploaddatetime) {
this.uploaddatetime = uploaddatetime == null ? null : uploaddatetime.trim();
}
public String getAssortid() {
return assortid;
}
public void setAssortid(String assortid) {
this.assortid = assortid == null ? null : assortid.trim();
}
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source == null ? null : source.trim();
}
public String getSubassort() {
return subassort;
}
public void setSubassort(String subassort) {
this.subassort = subassort == null ? null : subassort.trim();
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title == null ? null : title.trim();
}
public String getFlag() {
return flag;
}
public void setFlag(String flag) {
this.flag = flag == null ? null : flag.trim();
}
public String getSys() {
return sys;
}
public void setSys(String sys) {
this.sys = sys == null ? null : sys.trim();
}
}

@ -0,0 +1,183 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/29 15:02
* Description:
*/
package com.emr.entity;
public class Archive_Detail_Vo {
private String id;
private String pdfPath;
private String masterid;
private String uploaddatetime;
private String assortid;
private String source;
private String subassort;
private String title;
private String flag;
private String sys;
private String assortId;
private String assortName;
private Short assortSort;
private String printFlag;
private String patientId;
private String scanPage;
private int pageNum;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id == null ? null : id.trim();
}
public String getPdfPath() {
return pdfPath;
}
public void setPdfPath(String pdfPath) {
this.pdfPath = pdfPath == null ? null : pdfPath.trim();
}
public String getMasterid() {
return masterid;
}
public void setMasterid(String masterid) {
this.masterid = masterid == null ? null : masterid.trim();
}
public String getUploaddatetime() {
return uploaddatetime;
}
public void setUploaddatetime(String uploaddatetime) {
this.uploaddatetime = uploaddatetime == null ? null : uploaddatetime.trim();
}
public String getAssortid() {
return assortid;
}
public void setAssortid(String assortid) {
this.assortid = assortid == null ? null : assortid.trim();
}
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source == null ? null : source.trim();
}
public String getSubassort() {
return subassort;
}
public void setSubassort(String subassort) {
this.subassort = subassort == null ? null : subassort.trim();
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title == null ? null : title.trim();
}
public String getFlag() {
return flag;
}
public void setFlag(String flag) {
this.flag = flag == null ? null : flag.trim();
}
public String getSys() {
return sys;
}
public void setSys(String sys) {
this.sys = sys == null ? null : sys.trim();
}
public String getAssortId() {
return assortId;
}
public void setAssortId(String assortId) {
this.assortId = assortId == null ? null : assortId.trim();
}
public String getAssortName() {
return assortName;
}
public void setAssortName(String assortName) {
this.assortName = assortName == null ? null : assortName.trim();
}
public Short getAssortSort() {
return assortSort;
}
public void setAssortSort(Short assortSort) {
this.assortSort = assortSort;
}
public String getPrintFlag() {
return printFlag;
}
public void setPrintFlag(String printFlag) {
this.printFlag = printFlag == null ? null : printFlag.trim();
}
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId == null ? null : patientId.trim();
}
public String getScanPage() {
return scanPage;
}
public void setScanPage(String scanPage) {
this.scanPage = scanPage == null ? null : scanPage.trim();
}
public Integer getPageNum() {
return pageNum;
}
public void setPageNum(Integer pageNum) {
this.pageNum = pageNum;
}
}

@ -0,0 +1,233 @@
package com.emr.entity;
public class Archive_Master {
private String id;
private String patientId;
private String inpNo;
private String visitId;
private String name;
private String sex;
private String deptName;
private String dischargeDateTime;
private String archivestate;
private String admissionDateTime;
private String deptAdmissionTo;
private String checkDoctor;
private String checkDatetime;
private String checkedDoctor;
private String checkedDatetime;
private String lockinfo;
private String doctorInCharge;
private String idNo;
private String dischargeDisposition;
private String deptCodeLend;
private String returntoRole;
private String returnOperUsername;
private String changeReason;
public String getChangeReason() {
return changeReason;
}
public void setChangeReason(String changeReason) {
this.changeReason = changeReason;
}
public String getReturntoRole() {
return returntoRole;
}
public void setReturntoRole(String returntoRole) {
this.returntoRole = returntoRole;
}
public String getReturnOperUsername() {
return returnOperUsername;
}
public void setReturnOperUsername(String returnOperUsername) {
this.returnOperUsername = returnOperUsername;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id == null ? null : id.trim();
}
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId == null ? null : patientId.trim();
}
public String getInpNo() {
return inpNo;
}
public void setInpNo(String inpNo) {
this.inpNo = inpNo == null ? null : inpNo.trim();
}
public String getVisitId() {
return visitId;
}
public void setVisitId(String visitId) {
this.visitId = visitId == null ? null : visitId.trim();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex == null ? null : sex.trim();
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName == null ? null : deptName.trim();
}
public String getDischargeDateTime() {
return dischargeDateTime;
}
public void setDischargeDateTime(String dischargeDateTime) {
this.dischargeDateTime = dischargeDateTime == null ? null : dischargeDateTime.trim();
}
public String getArchivestate() {
return archivestate;
}
public void setArchivestate(String archivestate) {
this.archivestate = archivestate == null ? null : archivestate.trim();
}
public String getAdmissionDateTime() {
return admissionDateTime;
}
public void setAdmissionDateTime(String admissionDateTime) {
this.admissionDateTime = admissionDateTime == null ? null : admissionDateTime.trim();
}
public String getDeptAdmissionTo() {
return deptAdmissionTo;
}
public void setDeptAdmissionTo(String deptAdmissionTo) {
this.deptAdmissionTo = deptAdmissionTo == null ? null : deptAdmissionTo.trim();
}
public String getCheckDoctor() {
return checkDoctor;
}
public void setCheckDoctor(String checkDoctor) {
this.checkDoctor = checkDoctor == null ? null : checkDoctor.trim();
}
public String getCheckDatetime() {
return checkDatetime;
}
public void setCheckDatetime(String checkDatetime) {
this.checkDatetime = checkDatetime == null ? null : checkDatetime.trim();
}
public String getCheckedDoctor() {
return checkedDoctor;
}
public void setCheckedDoctor(String checkedDoctor) {
this.checkedDoctor = checkedDoctor == null ? null : checkedDoctor.trim();
}
public String getCheckedDatetime() {
return checkedDatetime;
}
public void setCheckedDatetime(String checkedDatetime) {
this.checkedDatetime = checkedDatetime == null ? null : checkedDatetime.trim();
}
public String getLockinfo() {
return lockinfo;
}
public void setLockinfo(String lockinfo) {
this.lockinfo = lockinfo == null ? null : lockinfo.trim();
}
public String getDoctorInCharge() {
return doctorInCharge;
}
public void setDoctorInCharge(String doctorInCharge) {
this.doctorInCharge = doctorInCharge == null ? null : doctorInCharge.trim();
}
public String getIdNo() {
return idNo;
}
public void setIdNo(String idNo) {
this.idNo = idNo == null ? null : idNo.trim();
}
public String getDischargeDisposition() {
return dischargeDisposition;
}
public void setDischargeDisposition(String dischargeDisposition) {
this.dischargeDisposition = dischargeDisposition == null ? null : dischargeDisposition.trim();
}
public String getDeptCodeLend() {
return deptCodeLend;
}
public void setDeptCodeLend(String deptCodeLend) {
this.deptCodeLend = deptCodeLend == null ? null : deptCodeLend.trim();
}
}

@ -0,0 +1,323 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/26 17:51
* Description:
*/
package com.emr.entity;
import java.util.List;
public class Archive_Master_Vo {
private String id;
private String patientId;
private String inpNo;
private String visitId;
private String name;
private String sex;
private String deptName;
private String dischargeDateTime;
private String archivestate;
private String admissionDateTime;
private String deptAdmissionTo;
private String checkDoctor;
private String checkDatetime;
private String checkedDoctor;
private String checkedDatetime;
private String lockinfo;
private String doctorInCharge;
private String idNo;
private String dischargeDisposition;
private String deptCodeLend;
private String returntoRole;
private String returnOperUsername;
private String changeReason;
private String startDateTo;
private String endDateTo;
private String startDate;
private String endDate;
private List<String> deptList;
private Float days;
private String checkName;
private String checkedName;
public String getCheckName() {
return checkName;
}
public void setCheckName(String checkName) {
this.checkName = checkName;
}
public String getCheckedName() {
return checkedName;
}
public void setCheckedName(String checkedName) {
this.checkedName = checkedName;
}
public String getReturntoRole() {
return returntoRole;
}
public void setReturntoRole(String returntoRole) {
this.returntoRole = returntoRole;
}
public String getReturnOperUsername() {
return returnOperUsername;
}
public void setReturnOperUsername(String returnOperUsername) {
this.returnOperUsername = returnOperUsername;
}
public String getChangeReason() {
return changeReason;
}
public void setChangeReason(String changeReason) {
this.changeReason = changeReason;
}
public Float getDays() {
return days;
}
public void setDays(Float days) {
this.days = days;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id == null ? null : id.trim();
}
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId == null ? null : patientId.trim();
}
public String getInpNo() {
return inpNo;
}
public void setInpNo(String inpNo) {
this.inpNo = inpNo == null ? null : inpNo.trim();
}
public String getVisitId() {
return visitId;
}
public void setVisitId(String visitId) {
this.visitId = visitId == null ? null : visitId.trim();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex == null ? null : sex.trim();
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName == null ? null : deptName.trim();
}
public String getDischargeDateTime() {
return dischargeDateTime;
}
public void setDischargeDateTime(String dischargeDateTime) {
this.dischargeDateTime = dischargeDateTime == null ? null : dischargeDateTime.trim();
}
public String getArchivestate() {
return archivestate;
}
public void setArchivestate(String archivestate) {
this.archivestate = archivestate == null ? null : archivestate.trim();
}
public String getAdmissionDateTime() {
return admissionDateTime;
}
public void setAdmissionDateTime(String admissionDateTime) {
this.admissionDateTime = admissionDateTime == null ? null : admissionDateTime.trim();
}
public String getDeptAdmissionTo() {
return deptAdmissionTo;
}
public void setDeptAdmissionTo(String deptAdmissionTo) {
this.deptAdmissionTo = deptAdmissionTo == null ? null : deptAdmissionTo.trim();
}
public String getCheckDoctor() {
return checkDoctor;
}
public void setCheckDoctor(String checkDoctor) {
this.checkDoctor = checkDoctor == null ? null : checkDoctor.trim();
}
public String getCheckDatetime() {
return checkDatetime;
}
public void setCheckDatetime(String checkDatetime) {
this.checkDatetime = checkDatetime == null ? null : checkDatetime.trim();
}
public String getCheckedDoctor() {
return checkedDoctor;
}
public void setCheckedDoctor(String checkedDoctor) {
this.checkedDoctor = checkedDoctor == null ? null : checkedDoctor.trim();
}
public String getCheckedDatetime() {
return checkedDatetime;
}
public void setCheckedDatetime(String checkedDatetime) {
this.checkedDatetime = checkedDatetime == null ? null : checkedDatetime.trim();
}
public String getLockinfo() {
return lockinfo;
}
public void setLockinfo(String lockinfo) {
this.lockinfo = lockinfo == null ? null : lockinfo.trim();
}
public String getDoctorInCharge() {
return doctorInCharge;
}
public void setDoctorInCharge(String doctorInCharge) {
this.doctorInCharge = doctorInCharge == null ? null : doctorInCharge.trim();
}
public String getIdNo() {
return idNo;
}
public void setIdNo(String idNo) {
this.idNo = idNo == null ? null : idNo.trim();
}
public String getDischargeDisposition() {
return dischargeDisposition;
}
public void setDischargeDisposition(String dischargeDisposition) {
this.dischargeDisposition = dischargeDisposition == null ? null : dischargeDisposition.trim();
}
public String getDeptCodeLend() {
return deptCodeLend;
}
public void setDeptCodeLend(String deptCodeLend) {
this.deptCodeLend = deptCodeLend == null ? null : deptCodeLend.trim();
}
public String getStartDateTo() {
return startDateTo;
}
public void setStartDateTo(String startDateTo) {
this.startDateTo = startDateTo == null ? null : startDateTo.trim();
}
public String getEndDateTo() {
return endDateTo;
}
public void setEndDateTo(String endDateTo) {
this.endDateTo = endDateTo == null ? null : endDateTo.trim();
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate == null ? null : startDate.trim();
}
public String getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
this.endDate = endDate == null ? null : endDate.trim();
}
public List<String> getDeptList() {
return deptList;
}
public void setDeptList(List<String> deptList) {
this.deptList = deptList;
}
}

@ -0,0 +1,61 @@
package com.emr.entity;
import java.io.Serializable;
public class EmrHolidaySet implements Serializable {
private Integer id;
private String date;
private Short flag;
private String updateTime;
private static final long serialVersionUID = 1L;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date == null ? null : date.trim();
}
public Short getFlag() {
return flag;
}
public void setFlag(Short flag) {
this.flag = flag;
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", date=").append(date);
sb.append(", flag=").append(flag);
sb.append(", updateTime=").append(updateTime);
sb.append("]");
return sb.toString();
}
}

@ -0,0 +1,53 @@
package com.emr.entity;
public class EmrHolidaySetVo extends EmrHolidaySet {
private String startTime;
private String endTime;
private int offset;
private int limit;
private String flagCh;
public String getFlagCh() {
return flagCh;
}
public void setFlagCh(String flagCh) {
this.flagCh = flagCh;
}
public int getOffset() {
return offset;
}
public void setOffset(int offset) {
this.offset = offset;
}
public int getLimit() {
return limit;
}
public void setLimit(int limit) {
this.limit = limit;
}
public String getStartTime() {
return startTime;
}
public void setStartTime(String startTime) {
this.startTime = startTime;
}
public String getEndTime() {
return endTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime;
}
}

@ -0,0 +1,39 @@
package com.emr.entity;
import java.io.Serializable;
public class EmrOvertimeSet implements Serializable {
private Integer id;
private Integer days;
private static final long serialVersionUID = 1L;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getDays() {
return days;
}
public void setDays(Integer days) {
this.days = days;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", days=").append(days);
sb.append("]");
return sb.toString();
}
}

@ -0,0 +1,49 @@
package com.emr.entity;
public class EmrPatient {
private String fpatno; //记账号,
private String fpatfilen;//住院号
private String fpattimes;//住院次数
private String fpatname;//姓名
private String farchieve_dt;//最后更改时间
public String getFpatno() {
return fpatno;
}
public void setFpatno(String fpatno) {
this.fpatno = fpatno;
}
public String getFpatfilen() {
return fpatfilen;
}
public void setFpatfilen(String fpatfilen) {
this.fpatfilen = fpatfilen;
}
public String getFpattimes() {
return fpattimes;
}
public void setFpattimes(String fpattimes) {
this.fpattimes = fpattimes;
}
public String getFpatname() {
return fpatname;
}
public void setFpatname(String fpatname) {
this.fpatname = fpatname;
}
public String getFarchieve_dt() {
return farchieve_dt;
}
public void setFarchieve_dt(String farchieve_dt) {
this.farchieve_dt = farchieve_dt;
}
}

@ -0,0 +1,103 @@
package com.emr.entity;
public class Emr_Archive_Detail {
private Integer id;
private String archiveDetailId;
private String assortId;
private Integer parentId;
private String title;
private String creater;
private String createTime;
private String updater;
private String updateTime;
private String remaker;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getArchiveDetailId() {
return archiveDetailId;
}
public void setArchiveDetailId(String archiveDetailId) {
this.archiveDetailId = archiveDetailId == null ? null : archiveDetailId.trim();
}
public String getAssortId() {
return assortId;
}
public void setAssortId(String assortId) {
this.assortId = assortId == null ? null : assortId.trim();
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title == null ? null : title.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime == null ? null : createTime.trim();
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater == null ? null : updater.trim();
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
public String getRemaker() {
return remaker;
}
public void setRemaker(String remaker) {
this.remaker = remaker == null ? null : remaker.trim();
}
}

@ -0,0 +1,183 @@
package com.emr.entity;
public class Emr_Dictionary {
private Integer id;
private String typecode;
private String typename;
private String code;
private String name;
private String pyCode;
private String wbCode;
private String zipCode;
private String gbCode;
private Short flag;
private String cComment;
private Integer parentId;
private Integer effective;
private String updater;
private String updateTime;
private String creater;
private String createTime;
private String remark;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getTypecode() {
return typecode;
}
public void setTypecode(String typecode) {
this.typecode = typecode == null ? null : typecode.trim();
}
public String getTypename() {
return typename;
}
public void setTypename(String typename) {
this.typename = typename == null ? null : typename.trim();
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code == null ? null : code.trim();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getPyCode() {
return pyCode;
}
public void setPyCode(String pyCode) {
this.pyCode = pyCode == null ? null : pyCode.trim();
}
public String getWbCode() {
return wbCode;
}
public void setWbCode(String wbCode) {
this.wbCode = wbCode == null ? null : wbCode.trim();
}
public String getZipCode() {
return zipCode;
}
public void setZipCode(String zipCode) {
this.zipCode = zipCode == null ? null : zipCode.trim();
}
public String getGbCode() {
return gbCode;
}
public void setGbCode(String gbCode) {
this.gbCode = gbCode == null ? null : gbCode.trim();
}
public Short getFlag() {
return flag;
}
public void setFlag(Short flag) {
this.flag = flag;
}
public String getcComment() {
return cComment;
}
public void setcComment(String cComment) {
this.cComment = cComment == null ? null : cComment.trim();
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public Integer getEffective() {
return effective;
}
public void setEffective(Integer effective) {
this.effective = effective;
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater == null ? null : updater.trim();
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime == null ? null : createTime.trim();
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
}

@ -0,0 +1,145 @@
package com.emr.entity;
import java.math.BigDecimal;
public class Emr_Fault_Detail {
private Integer id;
private String archiveDetailId;
private String assortId;
private Integer parentId;
private String content;
private BigDecimal score;
private String backContent;
private String firstTrial;
private String state;
private String recallReason;
private String creater;
private String createTime;
private String updater;
private String updateTime;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getArchiveDetailId() {
return archiveDetailId;
}
public void setArchiveDetailId(String archiveDetailId) {
this.archiveDetailId = archiveDetailId == null ? null : archiveDetailId.trim();
}
public String getAssortId() {
return assortId;
}
public void setAssortId(String assortId) {
this.assortId = assortId == null ? null : assortId.trim();
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content == null ? null : content.trim();
}
public BigDecimal getScore() {
return score;
}
public void setScore(BigDecimal score) {
this.score = score;
}
public String getBackContent() {
return backContent;
}
public void setBackContent(String backContent) {
this.backContent = backContent == null ? null : backContent.trim();
}
public String getFirstTrial() {
return firstTrial;
}
public void setFirstTrial(String firstTrial) {
this.firstTrial = firstTrial == null ? null : firstTrial.trim();
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state == null ? null : state.trim();
}
public String getRecallReason() {
return recallReason;
}
public void setRecallReason(String recallReason) {
this.recallReason = recallReason == null ? null : recallReason.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime == null ? null : createTime.trim();
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater == null ? null : updater.trim();
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
}

@ -0,0 +1,43 @@
package com.emr.entity;
public class Emr_Fault_Detail_Vo extends Emr_Fault_Detail {
private String returntoRole;
private String returnOperUsername;
private String checkedDateTime;
private String changeReason;
public String getChangeReason() {
return changeReason;
}
public void setChangeReason(String changeReason) {
this.changeReason = changeReason;
}
public String getCheckedDateTime() {
return checkedDateTime;
}
public void setCheckedDateTime(String checkedDateTime) {
this.checkedDateTime = checkedDateTime;
}
public String getReturntoRole() {
return returntoRole;
}
public void setReturntoRole(String returntoRole) {
this.returntoRole = returntoRole;
}
public String getReturnOperUsername() {
return returnOperUsername;
}
public void setReturnOperUsername(String returnOperUsername) {
this.returnOperUsername = returnOperUsername;
}
}

@ -0,0 +1,113 @@
package com.emr.entity;
public class Emr_Fault_Type {
private Integer id;
private String archiveDetailId;
private String typeFlag;
private String typeName;
private Integer typeSort;
private Integer effective;
private String remark;
private String creater;
private String createTime;
private String updater;
private String updateTime;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getArchiveDetailId() {
return archiveDetailId;
}
public void setArchiveDetailId(String archiveDetailId) {
this.archiveDetailId = archiveDetailId;
}
public String getTypeFlag() {
return typeFlag;
}
public void setTypeFlag(String typeFlag) {
this.typeFlag = typeFlag == null ? null : typeFlag.trim();
}
public String getTypeName() {
return typeName;
}
public void setTypeName(String typeName) {
this.typeName = typeName == null ? null : typeName.trim();
}
public Integer getTypeSort() {
return typeSort;
}
public void setTypeSort(Integer typeSort) {
this.typeSort = typeSort;
}
public Integer getEffective() {
return effective;
}
public void setEffective(Integer effective) {
this.effective = effective;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime == null ? null : createTime.trim();
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater == null ? null : updater.trim();
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
}

@ -0,0 +1,315 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/22 12:06
* Description:
*/
package com.emr.entity;
import java.math.BigDecimal;
public class Emr_Fault_Vo {
private Integer id;
private String archiveDetailId;
private String assortId;
private Integer parentId;
private String content;
private BigDecimal score;
private String backContent;
private String firstTrial;
private String state;
private String recallReason;
private String creater;
private String createTime;
private String updater;
private String updateTime;
private String inpNo;
private String visitId;
private String name;
private String deptName;
private String dischargeDateTime;
private String archivestate;
private String startDate;
private String endDate;
private String admissionDateTime;
private String deptAdmissionTo;
private String sex;
private String idNo;
private String dischargeDisposition;
private String startDateTo;
private String endDateTo;
private String patientId;
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getArchiveDetailId() {
return archiveDetailId;
}
public void setArchiveDetailId(String archiveDetailId) {
this.archiveDetailId = archiveDetailId == null ? null : archiveDetailId.trim();
}
public String getAssortId() {
return assortId;
}
public void setAssortId(String assortId) {
this.assortId = assortId == null ? null : assortId.trim();
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content == null ? null : content.trim();
}
public BigDecimal getScore() {
return score;
}
public void setScore(BigDecimal score) {
this.score = score;
}
public String getBackContent() {
return backContent;
}
public void setBackContent(String backContent) {
this.backContent = backContent == null ? null : backContent.trim();
}
public String getFirstTrial() {
return firstTrial;
}
public void setFirstTrial(String firstTrial) {
this.firstTrial = firstTrial == null ? null : firstTrial.trim();
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state == null ? null : state.trim();
}
public String getRecallReason() {
return recallReason;
}
public void setRecallReason(String recallReason) {
this.recallReason = recallReason == null ? null : recallReason.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime == null ? null : createTime.trim();
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater == null ? null : updater.trim();
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
public String getInpNo() {
return inpNo;
}
public void setInpNo(String inpNo) {
this.inpNo = inpNo == null ? null : inpNo.trim();
}
public String getVisitId() {
return visitId;
}
public void setVisitId(String visitId) {
this.visitId = visitId == null ? null : visitId.trim();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName == null ? null : deptName.trim();
}
public String getDischargeDateTime() {
return dischargeDateTime;
}
public void setDischargeDateTime(String dischargeDateTime) {
this.dischargeDateTime = dischargeDateTime == null ? null : dischargeDateTime.trim();
}
public String getArchivestate() {
return archivestate;
}
public void setArchivestate(String archivestate) {
this.archivestate = archivestate == null ? null : archivestate.trim();
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate == null ? null : startDate.trim();
}
public String getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
this.endDate = endDate == null ? null : endDate.trim();
}
public String getAdmissionDateTime() {
return admissionDateTime;
}
public void setAdmissionDateTime(String admissionDateTime) {
this.admissionDateTime = admissionDateTime == null ? null : admissionDateTime.trim();
}
public String getDeptAdmissionTo() {
return deptAdmissionTo;
}
public void setDeptAdmissionTo(String deptAdmissionTo) {
this.deptAdmissionTo = deptAdmissionTo == null ? null : deptAdmissionTo.trim();
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex == null ? null : sex.trim();
}
public String getIdNo() {
return idNo;
}
public void setIdNo(String idNo) {
this.idNo = idNo == null ? null : idNo.trim();
}
public String getDischargeDisposition() {
return dischargeDisposition;
}
public void setDischargeDisposition(String dischargeDisposition) {
this.dischargeDisposition = dischargeDisposition == null ? null : dischargeDisposition.trim();
}
public String getStartDateTo() {
return startDateTo;
}
public void setStartDateTo(String startDateTo) {
this.startDateTo = startDateTo == null ? null : startDateTo.trim();
}
public String getEndDateTo() {
return endDateTo;
}
public void setEndDateTo(String endDateTo) {
this.endDateTo = endDateTo == null ? null : endDateTo.trim();
}
}

@ -0,0 +1,93 @@
package com.emr.entity;
public class Emr_Log {
private Integer logId;
private String logTitle;
private String logContent;
private String ip;
private Integer sysId;
private String sysFlag;
private String creater;
private String createDate;
private String remark;
public Integer getLogId() {
return logId;
}
public void setLogId(Integer logId) {
this.logId = logId;
}
public String getLogTitle() {
return logTitle;
}
public void setLogTitle(String logTitle) {
this.logTitle = logTitle == null ? null : logTitle.trim();
}
public String getLogContent() {
return logContent;
}
public void setLogContent(String logContent) {
this.logContent = logContent == null ? null : logContent.trim();
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public Integer getSysId() {
return sysId;
}
public void setSysId(Integer sysId) {
this.sysId = sysId;
}
public String getSysFlag() {
return sysFlag;
}
public void setSysFlag(String sysFlag) {
this.sysFlag = sysFlag == null ? null : sysFlag.trim();
}
public String getCreateDate() {
return createDate;
}
public void setCreateDate(String createDate) {
this.createDate = createDate == null ? null : createDate.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
}

@ -0,0 +1,231 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/24 17:40
* Description:
*/
package com.emr.entity;
public class Emr_Log_Vo {
private String archiveDetailId;
private String state;
private String recallReason;
private String inpNo;
private String visitId;
private String name;
private String archivestate;
private String startDate;
private String endDate;
private String admissionDateTime;
private String deptAdmissionTo;
private String sex;
private String idNo;
private Integer logId;
private String logTitle;
private String logContent;
private String ip;
private Integer sysId;
private String sysFlag;
private String creater;
private String createDate;
private String remark;
public String getArchiveDetailId() {
return archiveDetailId;
}
public void setArchiveDetailId(String archiveDetailId) {
this.archiveDetailId = archiveDetailId == null ? null : archiveDetailId.trim();
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state == null ? null : state.trim();
}
public String getRecallReason() {
return recallReason;
}
public void setRecallReason(String recallReason) {
this.recallReason = recallReason == null ? null : recallReason.trim();
}
public String getInpNo() {
return inpNo;
}
public void setInpNo(String inpNo) {
this.inpNo = inpNo == null ? null : inpNo.trim();
}
public String getVisitId() {
return visitId;
}
public void setVisitId(String visitId) {
this.visitId = visitId == null ? null : visitId.trim();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getArchivestate() {
return archivestate;
}
public void setArchivestate(String archivestate) {
this.archivestate = archivestate == null ? null : archivestate.trim();
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate == null ? null : startDate.trim();
}
public String getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
this.endDate = endDate == null ? null : endDate.trim();
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex == null ? null : sex.trim();
}
public String getIdNo() {
return idNo;
}
public void setIdNo(String idNo) {
this.idNo = idNo == null ? null : idNo.trim();
}
public String getAdmissionDateTime() {
return admissionDateTime;
}
public void setAdmissionDateTime(String admissionDateTime) {
this.admissionDateTime = admissionDateTime == null ? null : admissionDateTime.trim();
}
public String getDeptAdmissionTo() {
return deptAdmissionTo;
}
public void setDeptAdmissionTo(String deptAdmissionTo) {
this.deptAdmissionTo = deptAdmissionTo == null ? null : deptAdmissionTo.trim();
}
public Integer getLogId() {
return logId;
}
public void setLogId(Integer logId) {
this.logId = logId;
}
public String getLogTitle() {
return logTitle;
}
public void setLogTitle(String logTitle) {
this.logTitle = logTitle == null ? null : logTitle.trim();
}
public String getLogContent() {
return logContent;
}
public void setLogContent(String logContent) {
this.logContent = logContent == null ? null : logContent.trim();
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public Integer getSysId() {
return sysId;
}
public void setSysId(Integer sysId) {
this.sysId = sysId;
}
public String getSysFlag() {
return sysFlag;
}
public void setSysFlag(String sysFlag) {
this.sysFlag = sysFlag == null ? null : sysFlag.trim();
}
public String getCreateDate() {
return createDate;
}
public void setCreateDate(String createDate) {
this.createDate = createDate == null ? null : createDate.trim();
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
}

@ -0,0 +1,153 @@
package com.emr.entity;
public class Emr_Picture {
private String id;
private String relationId;
private String assortId;
private Integer parentId;
private String typeFlag;
private String typeName;
private String minPicture;
private String maxPicture;
private Integer pictureSort;
private Integer effective;
private String creater;
private String createTime;
private String updater;
private String updateTime;
private String remark;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id == null ? null : id.trim();
}
public String getRelationId() {
return relationId;
}
public void setRelationId(String relationId) {
this.relationId = relationId == null ? null : relationId.trim();
}
public String getAssortId() {
return assortId;
}
public void setAssortId(String assortId) {
this.assortId = assortId == null ? null : assortId.trim();
}
public Integer getParentId() {
return parentId;
}
public void setParentId(Integer parentId) {
this.parentId = parentId;
}
public String getTypeFlag() {
return typeFlag;
}
public void setTypeFlag(String typeFlag) {
this.typeFlag = typeFlag == null ? null : typeFlag.trim();
}
public String getTypeName() {
return typeName;
}
public void setTypeName(String typeName) {
this.typeName = typeName == null ? null : typeName.trim();
}
public String getMinPicture() {
return minPicture;
}
public void setMinPicture(String minPicture) {
this.minPicture = minPicture == null ? null : minPicture.trim();
}
public String getMaxPicture() {
return maxPicture;
}
public void setMaxPicture(String maxPicture) {
this.maxPicture = maxPicture == null ? null : maxPicture.trim();
}
public Integer getPictureSort() {
return pictureSort;
}
public void setPictureSort(Integer pictureSort) {
this.pictureSort = pictureSort;
}
public Integer getEffective() {
return effective;
}
public void setEffective(Integer effective) {
this.effective = effective;
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater == null ? null : creater.trim();
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime == null ? null : createTime.trim();
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater == null ? null : updater.trim();
}
public String getUpdateTime() {
return updateTime;
}
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime == null ? null : updateTime.trim();
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
}

@ -0,0 +1,32 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/8/2 18:13
* Description:
*/
package com.emr.entity;
public class File_Vo {
//文件地址
private String fileSrc;
//文件类别
private String selectVal;
public String getFileSrc() {
return fileSrc;
}
public void setFileSrc(String fileSrc) {
this.fileSrc = fileSrc == null ? null : fileSrc.trim();
}
public String getSelectVal() {
return selectVal;
}
public void setSelectVal(String selectVal) {
this.selectVal = selectVal == null ? null : selectVal.trim();
}
}

@ -0,0 +1,47 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 19:49
* Description:
*/
package com.emr.entity;
import com.github.pagehelper.Page;
import java.util.List;
public class OffsetLimitPage {
private Long total;
private List rows;
public Long getTotal() {
return total;
}
public void setTotal(Long total) {
this.total = total;
}
public List getRows() {
return rows;
}
public void setRows(List rows) {
this.rows = rows;
}
public OffsetLimitPage() {
}
public OffsetLimitPage(List rows, Long total) {
this.rows = rows;
this.total = total;
}
public OffsetLimitPage(Page rows) {
this(rows, rows.getTotal());
}
}

@ -0,0 +1,45 @@
package com.emr.entity;
/**
* @Author:hjl
* @Date:Creatid in 15:44 2019/4/6
* @Description:
*/
public class Paper {
private long paperId;
private String paperName;
private int paperNum;
private String paperDetail;
public long getPaperId() {
return paperId;
}
public void setPaperId(long paperId) {
this.paperId = paperId;
}
public String getPaperName() {
return paperName;
}
public void setPaperName(String paperName) {
this.paperName = paperName;
}
public int getPaperNum() {
return paperNum;
}
public void setPaperNum(int paperNum) {
this.paperNum = paperNum;
}
public String getPaperDetail() {
return paperDetail;
}
public void setPaperDetail(String paperDetail) {
this.paperDetail = paperDetail;
}
}

@ -0,0 +1,195 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/8/22 13:48
* Description:
*/
package com.emr.entity;
import java.util.Set;
public class Power_User {
/**
* id
*/
private Integer userId;
/**
*
*/
private String userName;
/**
* 10
*/
private Integer userSex;
/**
*
*/
private Integer userAge;
/**
*
*/
private String userTel;
/**
*
*/
private String userEmail;
/**
*
*/
private String userPosition;
/**
* id
*/
private Integer roleId;
/**
*
*/
private Integer effective;
/**
*
*/
private String createDate;
/**
*
*/
private String creater;
/**
*
*/
private String updateDate;
/**
*
*/
private String updater;
/**
*
*/
private String remark;
/**
*
*/
private Set<String> menus;
public Integer getUserId() {
return userId;
}
public void setUserId(Integer userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public Integer getUserSex() {
return userSex;
}
public void setUserSex(Integer userSex) {
this.userSex = userSex;
}
public Integer getUserAge() {
return userAge;
}
public void setUserAge(Integer userAge) {
this.userAge = userAge;
}
public String getUserTel() {
return userTel;
}
public void setUserTel(String userTel) {
this.userTel = userTel;
}
public String getUserEmail() {
return userEmail;
}
public void setUserEmail(String userEmail) {
this.userEmail = userEmail;
}
public String getUserPosition() {
return userPosition;
}
public void setUserPosition(String userPosition) {
this.userPosition = userPosition;
}
public Integer getRoleId() {
return roleId;
}
public void setRoleId(Integer roleId) {
this.roleId = roleId;
}
public Integer getEffective() {
return effective;
}
public void setEffective(Integer effective) {
this.effective = effective;
}
public String getCreateDate() {
return createDate;
}
public void setCreateDate(String createDate) {
this.createDate = createDate;
}
public String getCreater() {
return creater;
}
public void setCreater(String creater) {
this.creater = creater;
}
public String getUpdateDate() {
return updateDate;
}
public void setUpdateDate(String updateDate) {
this.updateDate = updateDate;
}
public String getUpdater() {
return updater;
}
public void setUpdater(String updater) {
this.updater = updater;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Set<String> getMenus() {
return menus;
}
public void setMenus(Set<String> menus) {
this.menus = menus;
}
}

@ -0,0 +1,30 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/11/11 11:45
* Description:
*/
package com.emr.entity;
public class ReturnAsmx {
private String resultCode;
private String resultDesc;
public String getResultCode() {
return resultCode;
}
public void setResultCode(String resultCode) {
this.resultCode = resultCode;
}
public String getResultDesc() {
return resultDesc;
}
public void setResultDesc(String resultDesc) {
this.resultDesc = resultDesc;
}
}

@ -0,0 +1,39 @@
package com.emr.entity;
import java.io.Serializable;
public class TPrintinfo implements Serializable {
private String patientId;
private String isprint;
private static final long serialVersionUID = 1L;
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId == null ? null : patientId.trim();
}
public String getIsprint() {
return isprint;
}
public void setIsprint(String isprint) {
this.isprint = isprint == null ? null : isprint.trim();
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", patientId=").append(patientId);
sb.append(", isprint=").append(isprint);
sb.append("]");
return sb.toString();
}
}

@ -0,0 +1,153 @@
package com.emr.entity;
public class TUuInfo {
private String patientId;
private String inpNo;
private String visitId;
private String hzname;
private String sex;
private String dischargeDateTime;
private String admissionDateTime;
private String deptName;
private String doctorDept;
private String checkedDoctor;
private String checkedDatetime;
private String doctorInCharge;
private String sys;
private String uuname;
private String uploaddatetime;
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId == null ? null : patientId.trim();
}
public String getInpNo() {
return inpNo;
}
public void setInpNo(String inpNo) {
this.inpNo = inpNo == null ? null : inpNo.trim();
}
public String getVisitId() {
return visitId;
}
public void setVisitId(String visitId) {
this.visitId = visitId == null ? null : visitId.trim();
}
public String getHzname() {
return hzname;
}
public void setHzname(String hzname) {
this.hzname = hzname == null ? null : hzname.trim();
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex == null ? null : sex.trim();
}
public String getDischargeDateTime() {
return dischargeDateTime;
}
public void setDischargeDateTime(String dischargeDateTime) {
this.dischargeDateTime = dischargeDateTime == null ? null : dischargeDateTime.trim();
}
public String getAdmissionDateTime() {
return admissionDateTime;
}
public void setAdmissionDateTime(String admissionDateTime) {
this.admissionDateTime = admissionDateTime == null ? null : admissionDateTime.trim();
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName == null ? null : deptName.trim();
}
public String getDoctorDept() {
return doctorDept;
}
public void setDoctorDept(String doctorDept) {
this.doctorDept = doctorDept == null ? null : doctorDept.trim();
}
public String getCheckedDoctor() {
return checkedDoctor;
}
public void setCheckedDoctor(String checkedDoctor) {
this.checkedDoctor = checkedDoctor == null ? null : checkedDoctor.trim();
}
public String getCheckedDatetime() {
return checkedDatetime;
}
public void setCheckedDatetime(String checkedDatetime) {
this.checkedDatetime = checkedDatetime == null ? null : checkedDatetime.trim();
}
public String getDoctorInCharge() {
return doctorInCharge;
}
public void setDoctorInCharge(String doctorInCharge) {
this.doctorInCharge = doctorInCharge == null ? null : doctorInCharge.trim();
}
public String getSys() {
return sys;
}
public void setSys(String sys) {
this.sys = sys == null ? null : sys.trim();
}
public String getUuname() {
return uuname;
}
public void setUuname(String uuname) {
this.uuname = uuname == null ? null : uuname.trim();
}
public String getUploaddatetime() {
return uploaddatetime;
}
public void setUploaddatetime(String uploaddatetime) {
this.uploaddatetime = uploaddatetime == null ? null : uploaddatetime.trim();
}
}

@ -0,0 +1,135 @@
package com.emr.entity;
import java.util.Date;
public class TUuPrint {
private String patientId;
private String inpNo;
private String visitId;
private String hzname;
private String sex;
private String admissionDateTime;
private String dischargeDateTime;
private String name;
private String doctorInCharge;
private String filetitle;
private String cpyuser;
private Date cpytime;
private Integer flag;
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId == null ? null : patientId.trim();
}
public String getInpNo() {
return inpNo;
}
public void setInpNo(String inpNo) {
this.inpNo = inpNo == null ? null : inpNo.trim();
}
public String getVisitId() {
return visitId;
}
public void setVisitId(String visitId) {
this.visitId = visitId == null ? null : visitId.trim();
}
public String getHzname() {
return hzname;
}
public void setHzname(String hzname) {
this.hzname = hzname == null ? null : hzname.trim();
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex == null ? null : sex.trim();
}
public String getAdmissionDateTime() {
return admissionDateTime;
}
public void setAdmissionDateTime(String admissionDateTime) {
this.admissionDateTime = admissionDateTime == null ? null : admissionDateTime.trim();
}
public String getDischargeDateTime() {
return dischargeDateTime;
}
public void setDischargeDateTime(String dischargeDateTime) {
this.dischargeDateTime = dischargeDateTime == null ? null : dischargeDateTime.trim();
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public String getDoctorInCharge() {
return doctorInCharge;
}
public void setDoctorInCharge(String doctorInCharge) {
this.doctorInCharge = doctorInCharge == null ? null : doctorInCharge.trim();
}
public String getFiletitle() {
return filetitle;
}
public void setFiletitle(String filetitle) {
this.filetitle = filetitle == null ? null : filetitle.trim();
}
public String getCpyuser() {
return cpyuser;
}
public void setCpyuser(String cpyuser) {
this.cpyuser = cpyuser == null ? null : cpyuser.trim();
}
public Date getCpytime() {
return cpytime;
}
public void setCpytime(Date cpytime) {
this.cpytime = cpytime;
}
public Integer getFlag() {
return flag;
}
public void setFlag(Integer flag) {
this.flag = flag;
}
}

@ -0,0 +1,33 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/8/2 18:09
* Description:
*/
package com.emr.entity;
import java.util.List;
public class Upload_File_Vo {
private String masterID;
private List<File_Vo> list;
public String getMasterID() {
return masterID;
}
public void setMasterID(String masterID) {
this.masterID = masterID == null ? null : masterID.trim();
}
public List<File_Vo> getList() {
return list;
}
public void setList(List<File_Vo> list) {
this.list = list;
}
}

@ -0,0 +1,142 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/9/2 14:22
* Description:
*/
package com.emr.entity;
public class V_Count {
private String deptCode;
private String deptName;
private Integer inNum;
private Integer outNum;
private Integer fileNum;
private Integer unfileNum;
private Integer deathNum;
private String fileRate;
private String day2Rate;
private String day3Rate;
private String day7Rate;
private String startDate;
private String endDate;
public String getDeptCode() {
return deptCode;
}
public void setDeptCode(String deptCode) {
this.deptCode = deptCode;
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName;
}
public Integer getInNum() {
return inNum;
}
public void setInNum(Integer inNum) {
this.inNum = inNum;
}
public Integer getOutNum() {
return outNum;
}
public void setOutNum(Integer outNum) {
this.outNum = outNum;
}
public Integer getFileNum() {
return fileNum;
}
public void setFileNum(Integer fileNum) {
this.fileNum = fileNum;
}
public Integer getUnfileNum() {
return unfileNum;
}
public void setUnfileNum(Integer unfileNum) {
this.unfileNum = unfileNum;
}
public Integer getDeathNum() {
return deathNum;
}
public void setDeathNum(Integer deathNum) {
this.deathNum = deathNum;
}
public String getFileRate() {
return fileRate;
}
public void setFileRate(String fileRate) {
this.fileRate = fileRate;
}
public String getDay2Rate() {
return day2Rate;
}
public void setDay2Rate(String day2Rate) {
this.day2Rate = day2Rate;
}
public String getDay3Rate() {
return day3Rate;
}
public void setDay3Rate(String day3Rate) {
this.day3Rate = day3Rate;
}
public String getDay7Rate() {
return day7Rate;
}
public void setDay7Rate(String day7Rate) {
this.day7Rate = day7Rate;
}
public String getStartDate() {
return startDate;
}
public void setStartDate(String startDate) {
this.startDate = startDate;
}
public String getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
this.endDate = endDate;
}
}

@ -0,0 +1,79 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:27
* Description:
*/
package com.emr.service;
import com.emr.entity.Archive_Detail;
import com.emr.entity.Archive_Detail_Vo;
import com.emr.entity.OffsetLimitPage;
import java.util.List;
public interface Archive_DetailService {
/**
*
*
* @param record
* @return
*/
List<Archive_Detail_Vo> selectByClo(Archive_Detail_Vo record);
/**
*
*
* @param record
* @return
*/
OffsetLimitPage detailByClo(Archive_Detail_Vo record, Integer offset, Integer limit);
/**
*
*
* @param record
* @return
*/
int updateCloById(Archive_Detail record);
/**
*
* @param record
* @return
*/
int insertSel(Archive_Detail record);
/**
* id
* @param id
* @return
*/
Archive_Detail selectByid(String id);
/**
* +
* @param record
* @return
*/
int deleteByClo(Archive_Detail record);
/**
*
* @param record
* @return
*/
List<Archive_Detail> selectByColm(Archive_Detail record);
List<Archive_Detail> selectByCol(Archive_Detail record);
/**
* id
*
* @param id
* @return
*/
List<Archive_Detail> selectByIdStr(Archive_Detail record);
}

@ -0,0 +1,102 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:27
* Description:
*/
package com.emr.service;
import com.emr.entity.Archive_Master;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.OffsetLimitPage;
import java.util.List;
public interface Archive_MasterService {
/**
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectByCol(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
/**
*
* @param archiveMasterVo
* @return
*/
List<Archive_Master> selectByCol(Archive_Master_Vo archiveMasterVo);
/**
*
*
* @param archiveMasterVo
* @return
*/
List<Archive_Master_Vo> selectByLast(Archive_Master_Vo archiveMasterVo);
/**
* '','退'
*
* @param archiveMasterVo
* @return
*/
List<Archive_Master_Vo> selectByColumn(Archive_Master_Vo archiveMasterVo);
/**
*
*
* @param archiveMasterVo
* @return
*/
List<Archive_Master_Vo> selectByUnfile(Archive_Master_Vo archiveMasterVo);
/**
* '','退'
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectByColumn(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
/**
*
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectByUnfile(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
/**
*
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectByLast(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
/**
*
* @param record
* @return
*/
int updateByClo(Archive_Master record);
/**
* id
* @param record
* @return
*/
int updateById(Archive_Master record);
/**
* id
* @param
* @return
*/
Archive_Master selectByPrimaryKey(String id);
}

@ -0,0 +1,13 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:27
* Description:
*/
package com.emr.service;
public interface Emr_Archive_DetailService {
}

@ -0,0 +1,47 @@
package com.emr.service;
import com.emr.entity.Emr_Dictionary;
import java.util.List;
public interface Emr_DictionaryService {
/**
*
*
* @param emrDictionary
* @return
*/
List<Emr_Dictionary> dicByTypeCode(Emr_Dictionary emrDictionary);
/**
*
*
* @param emrDictionary
* @return
*/
List<Emr_Dictionary> dicByClo(Emr_Dictionary emrDictionary);
/**
*
*
* @param emrDictionary
* @return
*/
int insertSel(Emr_Dictionary emrDictionary);
/**
* id
*
* @param id
* @return
*/
int delById(Integer id);
/**
* id
*
* @param emrDictionary
* @return
*/
int updateCloById(Emr_Dictionary emrDictionary);
}

@ -0,0 +1,54 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:27
* Description:
*/
package com.emr.service;
import com.emr.entity.Emr_Fault_Detail;
import com.emr.entity.Emr_Fault_Vo;
import com.emr.entity.OffsetLimitPage;
import java.util.List;
public interface Emr_Fault_DetailService {
/**
*
* @param emrFaultVo
* @param offset
* @param limit
* @return
*/
OffsetLimitPage selectByCol(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit);
/**
*
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> selectByCol(Emr_Fault_Vo emrFaultVo);
/**
* id
* @param emrFaultDetail
* @return
*/
int updateCloByPrimaryKey(Emr_Fault_Detail emrFaultDetail);
/**
* 退
* @param record
* @return
*/
Emr_Fault_Detail selectByArchiveDetailId(Emr_Fault_Detail record);
/**
* 退
* @param record
* @return
*/
int insertSel(Emr_Fault_Detail record);
}

@ -0,0 +1,53 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:35
* Description:
*/
package com.emr.service;
import com.emr.entity.Emr_Fault_Type;
import java.util.List;
public interface Emr_Fault_TypeService {
/**
*
* @param record
* @return
*/
List<Emr_Fault_Type> selectByCol(Emr_Fault_Type record);
/**
*
*
* @param record
* @return
*/
int updateByClo(Emr_Fault_Type record);
/**
*
* @param record
* @return
*/
int insertClo(Emr_Fault_Type record);
/**
* id
* @param id
* @return
*/
int delById(Integer id);
/**
* id
*
* @param id
* @return
*/
Emr_Fault_Type selectById(Integer id);
}

@ -0,0 +1,51 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:28
* Description:
*/
package com.emr.service;
import com.emr.entity.Emr_Picture;
import java.util.List;
public interface Emr_PictureService {
/**
* id
* @param id
* @return
*/
Emr_Picture selectByid(String id);
/**
*
* @param record
* @return
*/
int insertSel(Emr_Picture record);
/**
* id
* @param record
* @return
*/
int updateCloByIdOrFlay(Emr_Picture record);
/**
*
* @param record
* @return
*/
List<Emr_Picture> selectByClo(Emr_Picture record);
/**
* id
* @param id
* @return
*/
int deleteById(String id);
}

@ -0,0 +1,53 @@
package com.emr.service;
import com.emr.entity.Emr_Fault_Vo;
import com.emr.entity.Emr_Log;
import com.emr.entity.Emr_Log_Vo;
import com.emr.entity.OffsetLimitPage;
import java.util.List;
public interface LogService {
/**
*
* @param log
*/
int insert(Emr_Log log);
/**
*
*
* @param log
*/
int insertSelective(Emr_Log log);
/**
* id
* @param logId
*/
void deleteLogById(Integer logId);
/**
*
* @param emr_log_vo
* @param offset
* @param limit
* @return
*/
OffsetLimitPage selectByCol(Emr_Log_Vo emr_log_vo, Integer offset, Integer limit);
/**
*
* @param emr_log_vo
* @return
*/
List<Emr_Log_Vo> selectByCol(Emr_Log_Vo emr_log_vo);
/**
* logTitle
* @param logTitle
* @return
*/
Emr_Log lastBylogTitle(String logTitle);
}

@ -0,0 +1,22 @@
package com.emr.service;
import com.emr.entity.Paper;
import java.util.List;
/**
* @Author:hjl
* @Date:Creatid in 15:46 2019/4/6
* @Description:
*/
public interface PaperService {
int addPaper(Paper paper);
int deletePaperById(long id);
int updatePaper(Paper paper);
Paper queryById(long id);
List<Paper> queryAllPaper();
}

@ -0,0 +1,33 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:35
* Description:
*/
package com.emr.service;
import com.emr.entity.*;
import com.emr.vo.V_CountVo;
import java.util.List;
public interface V_CountService {
/**
*
* @param record
* @return
*/
List<V_Count> selectByCol(V_CountVo record);
/**
*
*
* @param record
* @return
*/
OffsetLimitPage selectPageByClo(V_CountVo record, Integer offset, Integer limit);
}

@ -0,0 +1,7 @@
package com.emr.service;
import org.springframework.stereotype.Component;
@Component
public class WebService {
}

@ -0,0 +1,79 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:37
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Archive_DetailMapper;
import com.emr.entity.Archive_Detail;
import com.emr.entity.Archive_Detail_Vo;
import com.emr.entity.Emr_Fault_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.Archive_DetailService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class Archive_DetailServiceImpl implements Archive_DetailService {
@Autowired
private Archive_DetailMapper archiveDetailMapper;
@Override
public List<Archive_Detail_Vo> selectByClo(Archive_Detail_Vo record) {
return archiveDetailMapper.selectByClo(record);
}
@Override
public OffsetLimitPage detailByClo(Archive_Detail_Vo record, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Archive_Detail_Vo> list = archiveDetailMapper.detailByClo(record);
return new OffsetLimitPage((Page) list);
}
@Override
public int updateCloById(Archive_Detail record) {
return archiveDetailMapper.updateCloById(record);
}
@Override
public int insertSel(Archive_Detail record) {
return archiveDetailMapper.insertSel(record);
}
@Override
public Archive_Detail selectByid(String id) {
return archiveDetailMapper.selectByid(id);
}
@Override
public int deleteByClo(Archive_Detail record) {
return archiveDetailMapper.deleteByClo(record);
}
@Override
public List<Archive_Detail> selectByColm(Archive_Detail record) {
return archiveDetailMapper.selectByColm(record);
}
@Override
public List<Archive_Detail> selectByCol(Archive_Detail record) {
return archiveDetailMapper.selectByCol(record);
}
@Override
public List<Archive_Detail> selectByIdStr(Archive_Detail record) {
return archiveDetailMapper.selectByIdStr(record);
}
}

@ -0,0 +1,102 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:39
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Archive_DetailMapper;
import com.emr.dao.Archive_MasterMapper;
import com.emr.entity.Archive_Master;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.Emr_Dictionary;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.Archive_MasterService;
import com.emr.service.Emr_DictionaryService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
public class Archive_MasterServiceImpl implements Archive_MasterService {
@Autowired
private Archive_MasterMapper archiveMasterMapper;
@Autowired
private Emr_DictionaryService emrDictionaryService;
@Override
public OffsetLimitPage selectByCol(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
//archiveMasterVo.setDeptAdmissionTo("20050102,20070102");
List<Archive_Master> list= archiveMasterMapper.selectByCol(archiveMasterVo);
return new OffsetLimitPage((Page) list);
}
@Override
public List<Archive_Master> selectByCol(Archive_Master_Vo archiveMasterVo) {
return archiveMasterMapper.selectByCol(archiveMasterVo);
}
@Override
public List<Archive_Master_Vo> selectByColumn(Archive_Master_Vo archiveMasterVo) {
return archiveMasterMapper.selectByColumn(archiveMasterVo);
}
@Override
public List<Archive_Master_Vo> selectByUnfile(Archive_Master_Vo archiveMasterVo) {
return archiveMasterMapper.selectByUnfile(archiveMasterVo);
}
@Override
public List<Archive_Master_Vo> selectByLast(Archive_Master_Vo archiveMasterVo) {
return archiveMasterMapper.selectByLast(archiveMasterVo);
}
@Override
public OffsetLimitPage selectByColumn(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Archive_Master_Vo> list = archiveMasterMapper.selectByColumn(archiveMasterVo);
return new OffsetLimitPage((Page) list);
}
@Override
public OffsetLimitPage selectByUnfile(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Archive_Master_Vo> list = archiveMasterMapper.selectByUnfile(archiveMasterVo);
return new OffsetLimitPage((Page) list);
}
@Override
public OffsetLimitPage selectByLast(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Archive_Master_Vo> list = archiveMasterMapper.selectByLast(archiveMasterVo);
return new OffsetLimitPage((Page) list);
}
@Override
public int updateByClo(Archive_Master record) {
return archiveMasterMapper.updateByClo(record);
}
@Override
public int updateById(Archive_Master record) {
return archiveMasterMapper.updateById(record);
}
@Override
public Archive_Master selectByPrimaryKey(String id) {
return archiveMasterMapper.selectByPrimaryKey(id);
}
}

@ -0,0 +1,21 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:41
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Emr_Archive_DetailMapper;
import com.emr.service.Emr_Archive_DetailService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class Emr_Archive_DetailServiceImpl implements Emr_Archive_DetailService {
@Autowired
private Emr_Archive_DetailMapper emrArchiveDetailMapper;
}

@ -0,0 +1,49 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/26 15:51
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Emr_Archive_DetailMapper;
import com.emr.dao.Emr_DictionaryMapper;
import com.emr.entity.Emr_Dictionary;
import com.emr.service.Emr_DictionaryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class Emr_DictionaryServiceImpl implements Emr_DictionaryService {
@Autowired
private Emr_DictionaryMapper emrDictionaryMapper;
@Override
public List<Emr_Dictionary> dicByTypeCode(Emr_Dictionary emrDictionary) {
return emrDictionaryMapper.dicByTypeCode(emrDictionary);
}
@Override
public List<Emr_Dictionary> dicByClo(Emr_Dictionary emrDictionary) {
return emrDictionaryMapper.dicByClo(emrDictionary);
}
@Override
public int insertSel(Emr_Dictionary emrDictionary) {
return emrDictionaryMapper.insertSel(emrDictionary);
}
@Override
public int delById(Integer id) {
return emrDictionaryMapper.delById(id);
}
@Override
public int updateCloById(Emr_Dictionary emrDictionary) {
return emrDictionaryMapper.updateCloById(emrDictionary);
}
}

@ -0,0 +1,108 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:43
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Emr_Fault_DetailMapper;
import com.emr.entity.*;
import com.emr.service.Emr_DictionaryService;
import com.emr.service.Emr_Fault_DetailService;
import com.emr.service.Emr_Fault_TypeService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
@Service
public class Emr_Fault_DetailServiceImpl implements Emr_Fault_DetailService {
@Autowired
private Emr_Fault_DetailMapper emrFaultDetailMapper;
@Autowired
private Emr_Fault_TypeService emrFaultTypeService;
@Autowired
private Emr_DictionaryService emrDictionaryService;
/**
*
* @param emrFaultVo
* @return
*/
@Override
public OffsetLimitPage selectByCol(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit) {
//return emrFaultDetailMapper.selectByCol(emrFaultDetail);
PageHelper.offsetPage(offset, limit);
List<Emr_Fault_Vo> list = emrFaultDetailMapper.selectByCol(emrFaultVo);
Emr_Dictionary dic = new Emr_Dictionary();
dic.setEffective(1);
dic.setTypecode("dept_code");
//科室列表
List<Emr_Dictionary> dicList = emrDictionaryService.dicByTypeCode(dic);
//获取缺陷类别列表
Emr_Fault_Type obj = new Emr_Fault_Type();
obj.setEffective(1);
List<Emr_Fault_Type> typeLis = emrFaultTypeService.selectByCol(obj);
for (int i = 0; i < list.size(); i++) {
//替换科室
for (int k = 0; k < dicList.size(); k++) {
String deptName = list.get(i).getDeptName();
//入院科室dept_admission_to
String dept2 = list.get(i).getDeptAdmissionTo();
if ((deptName != null && deptName.equals(dicList.get(k).getCode())) || (dept2 != null && dept2.equals(dicList.get(k).getCode()))) {
//出院科室
deptName = deptName.replace(deptName, dicList.get(k).getName());
list.get(i).setDeptName(deptName);
dept2 = dept2.replace(dept2, dicList.get(k).getName());
list.get(i).setDeptAdmissionTo(dept2);
}
}
String assortId = list.get(i).getAssortId();
if(assortId!="" && assortId!=null) {
String[] assorArr = assortId.split(",");
//替换类别
for (int j = 0; j < typeLis.size(); j++) {
String id = String.valueOf(typeLis.get(j).getId());
if (Arrays.asList(assorArr).contains(id)) {
assortId = assortId.replace(id, typeLis.get(j).getTypeName());
list.get(i).setAssortId(assortId);
}
}
}
}
return new OffsetLimitPage((Page) list);
}
@Override
public List<Emr_Fault_Vo> selectByCol(Emr_Fault_Vo emrFaultVo) {
return emrFaultDetailMapper.selectByCol(emrFaultVo);
}
@Override
public int updateCloByPrimaryKey(Emr_Fault_Detail emrFaultDetail) {
return emrFaultDetailMapper.updateCloByPrimaryKey(emrFaultDetail);
}
@Override
public Emr_Fault_Detail selectByArchiveDetailId(Emr_Fault_Detail record) {
return emrFaultDetailMapper.selectByArchiveDetailId(record);
}
@Override
public int insertSel(Emr_Fault_Detail record) {
return emrFaultDetailMapper.insertSel(record);
}
}

@ -0,0 +1,49 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:46
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Emr_Fault_TypeMapper;
import com.emr.entity.Emr_Fault_Type;
import com.emr.service.Emr_Fault_TypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class Emr_Fault_TypeServiceImpl implements Emr_Fault_TypeService {
@Autowired
private Emr_Fault_TypeMapper emrFaultTypeMapper;
@Override
public List<Emr_Fault_Type> selectByCol(Emr_Fault_Type record) {
return emrFaultTypeMapper.selectByCol(record);
}
@Override
public int updateByClo(Emr_Fault_Type record) {
return emrFaultTypeMapper.updateByClo(record);
}
@Override
public int insertClo(Emr_Fault_Type record) {
return emrFaultTypeMapper.insertClo(record);
}
@Override
public int delById(Integer id) {
return emrFaultTypeMapper.delById(id);
}
@Override
public Emr_Fault_Type selectById(Integer id) {
return emrFaultTypeMapper.selectById(id);
}
}

@ -0,0 +1,51 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:48
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.Emr_PictureMapper;
import com.emr.entity.Emr_Picture;
import com.emr.service.Emr_PictureService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class Emr_PictureServiceImpl implements Emr_PictureService {
@Autowired
private Emr_PictureMapper emrPictureMapper;
@Override
public Emr_Picture selectByid(String id) {
return emrPictureMapper.selectByid(id);
}
@Override
public int insertSel(Emr_Picture record) {
return emrPictureMapper.insertSel(record);
}
@Override
public int updateCloByIdOrFlay(Emr_Picture record) {
return emrPictureMapper.updateCloByIdOrFlay(record);
}
@Override
public List<Emr_Picture> selectByClo(Emr_Picture record) {
return emrPictureMapper.selectByClo(record);
}
@Override
public int deleteById(String id) {
return emrPictureMapper.deleteById(id);
}
}

@ -0,0 +1,96 @@
package com.emr.service.ipml;
import com.emr.dao.EmrHolidaySetMapper;
import com.emr.entity.*;
import com.emr.util.AccountDate;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.*;
@Service
@Transactional
public class HolidaySetService {
@Autowired
private EmrHolidaySetMapper holidaySetMapper;
public OffsetLimitPage selectByColumn(EmrHolidaySetVo holidaySetVo){
PageHelper.offsetPage(holidaySetVo.getOffset(), holidaySetVo.getLimit());
List<EmrHolidaySetVo> list = holidaySetMapper.selectByColumn(holidaySetVo);
return new OffsetLimitPage((Page) list);
}
public void update(String startTime,String endTime,String checkBoxes,Integer flag) throws Exception{
Map<Integer,String> map = new HashMap<>();
//将选中星期几添加进map
String[] checkBoxList = checkBoxes.split(",");
for(String checkBoxed:checkBoxList){
if(StringUtils.isNoneBlank(checkBoxed)){
map.put(Integer.valueOf(checkBoxed),checkBoxed);
}
}
List<String> dateList = AccountDate.getEveryday(startTime,endTime);
//查询时间段记录
List<EmrHolidaySet> emrHolidaySets = holidaySetMapper.selectAllByDates(startTime, endTime);
//定义批量添加集合
List<EmrHolidaySet> insertList = new ArrayList<>();
//定义批量更新集合
List<EmrHolidaySet> updateList = new ArrayList<>();
//定义批量修改的时间字符串
String dates = "";
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//没有记录添加进insertList
for(String date : dateList){
//查询几天星期几
Integer weekDay = AccountDate.getWeekDayByStr(date);
//无记录,全部添加进批量添加集合
EmrHolidaySet holidaySet = new EmrHolidaySet();
holidaySet.setDate(date);
holidaySet.setUpdateTime(fmt.format(new Date()));
if(flag == 1){
if(map.containsKey(weekDay)){
holidaySet.setFlag(Short.valueOf("1"));
}else{
holidaySet.setFlag(Short.valueOf("2"));
}
}else{
if(map.containsKey(weekDay)){
holidaySet.setFlag(Short.valueOf("2"));
}else{
holidaySet.setFlag(Short.valueOf("1"));
}
}
//如果存在记录就区分更新部分还是添加部分
if(null != emrHolidaySets && !emrHolidaySets.isEmpty()){
boolean isExist = false;
for (int i = 0; i < emrHolidaySets.size(); i++) {
if(emrHolidaySets.get(i).getDate().equals(date)){
isExist = true;
holidaySet.setId(emrHolidaySets.get(i).getId());
break;
}
}
//如果存在,添加进更新的字符串
if(isExist){
updateList.add(holidaySet);
}else{
//否则添加进批量添加集合
insertList.add(holidaySet);
}
}else{
//数据库无数,添加全部记录
insertList.add(holidaySet);
}
}
if(null != insertList && !insertList.isEmpty()){
holidaySetMapper.SampleInsert(insertList);
}
if(null != updateList && !updateList.isEmpty()){
holidaySetMapper.SampleUpdate(updateList);
}
}
}

@ -0,0 +1,55 @@
package com.emr.service.ipml;
import com.emr.dao.Emr_LogMapper;
import com.emr.entity.Emr_Fault_Vo;
import com.emr.entity.Emr_Log;
import com.emr.entity.Emr_Log_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.LogService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
@Transactional
public class LogServiceImpl implements LogService {
@Autowired
private Emr_LogMapper logMapper;
@Override
public int insert(Emr_Log log) {
return logMapper.insert(log);
}
@Override
public int insertSelective(Emr_Log log) {
return logMapper.insertSelective(log);
}
@Override
public void deleteLogById(Integer logId) {
logMapper.deleteByPrimaryKey(logId);
}
@Override
public OffsetLimitPage selectByCol(Emr_Log_Vo emr_log_vo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Emr_Log_Vo> newsInfoList = logMapper.selectByCol(emr_log_vo);
return new OffsetLimitPage((Page) newsInfoList);
}
@Override
public List<Emr_Log_Vo> selectByCol(Emr_Log_Vo emr_log_vo) {
return logMapper.selectByCol(emr_log_vo);
}
@Override
public Emr_Log lastBylogTitle(String logTitle) {
return logMapper.lastBylogTitle(logTitle);
}
}

@ -0,0 +1,46 @@
package com.emr.service.ipml;
import com.emr.dao.PaperDao;
import com.emr.entity.Paper;
import com.emr.service.PaperService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Author:hjl
* @Date:Creatid in 15:47 2019/4/6
* @Description:
*/
@Service
public class PaperServiceImpl implements PaperService {
@Autowired
private PaperDao paperDao;
@Override
public int addPaper(Paper paper) {
return paperDao.addPaper(paper);
}
@Override
public int deletePaperById(long id) {
return paperDao.deletePaperById(id);
}
@Override
public int updatePaper(Paper paper) {
return paperDao.updatePaper(paper);
}
@Override
public Paper queryById(long id) {
return paperDao.queryById(id);
}
@Override
public List<Paper> queryAllPaper() {
return paperDao.queryAllPaper();
}
}

@ -0,0 +1,193 @@
package com.emr.service.ipml;
import com.alibaba.fastjson.JSON;
import com.emr.dao.StatisticsMapper;
import com.emr.dao.TUuInfoMapper;
import com.emr.dao.TUuPrintMapper;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.entity.TUuPrint;
import com.emr.vo.*;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import net.sf.json.JSONObject;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @ProjectName:
* @Description:
* @Param
* @Return
* @Author:
* @CreateDate: 2020/1/8 15:54
* @UpdateUser:
* @UpdateDate: 2020/1/8 15:54
* @UpdateRemark:
* @Version: 1.0
*/
@Service
@Transactional
public class StatisticsService {
@Value("${POWER_URLHEAD}")
private String POWER_URLHEAD;
@Autowired
private StatisticsMapper statisticsMapper;
@Autowired
private TUuPrintMapper uuPrintMapper;
@Autowired
private TUuInfoMapper uuInfoMapper;
//终审按天统计
public List<FinalAndFirstStatistics> getFinalStatistics(HttpServletRequest request,Integer offset, Integer limit, String startDate, String endDate,String sql) {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<FinalAndFirstStatistics> list = statisticsMapper.finalStatistics(startDate, endDate,sql);
//转换姓名
List<User> userList = getUserList(request);
for(FinalAndFirstStatistics statistics:list) {
for (User user : userList) {
if(StringUtils.isNotBlank(statistics.getCheckCode()) && statistics.getCheckCode().equals(user.getUserName())){
statistics.setCheckName(user.getName());
break;
}
}
}
return list;
}
//初审按天统计
public List<FinalAndFirstStatistics> getFirstStatistics(HttpServletRequest request, Integer offset, Integer limit, String startDate, String endDate,String sql) {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<FinalAndFirstStatistics> list = statisticsMapper.firstStatistics(startDate, endDate,sql);
//转换姓名
List<User> userList = getUserList(request);
for(FinalAndFirstStatistics statistics:list) {
for (User user : userList) {
if(statistics.getCheckCode().equals(user.getUserName())){
statistics.setCheckName(user.getName());
break;
}
}
}
return list;
}
public OffsetLimitPage getStatisticsDetail(HttpServletRequest request, Integer offset, Integer limit,String disStartDate, String disEndDate, Archive_Master_Vo archiveMasterVo,Integer flag) {
if(null != offset && null != limit){
PageHelper.offsetPage(offset, limit);
}
List<Archive_Master_Vo> list = getDetailList(request,disStartDate, disEndDate, archiveMasterVo, flag,null);
return new OffsetLimitPage((Page) list);
}
public List<Archive_Master_Vo> getDetailList(HttpServletRequest request,String disStartDate, String disEndDate, Archive_Master_Vo archiveMasterVo,Integer flag,String sql){
//转换姓名
List<User> userList = getUserList(request);
String checkDoctor = archiveMasterVo.getCheckDoctor();
//模糊搜索审核姓名转换工号
if(StringUtils.isNoneBlank(checkDoctor)){
String checkNames = "";
for(User user:userList){
if(StringUtils.isNoneBlank(user.getName()) && user.getName().contains(checkDoctor)){
checkNames += user.getUserName() + ",";
}
}
if(StringUtils.isNotBlank(checkNames)){
checkNames = checkNames.substring(0,checkNames.length()-1);
archiveMasterVo.setCheckDoctor(checkNames);
}
}
List<Archive_Master_Vo> list = statisticsMapper.statistics(disStartDate,disEndDate,archiveMasterVo,flag,sql);
for(Archive_Master_Vo statistics:list) {
for (User user : userList) {
if(StringUtils.isNotBlank(statistics.getCheckDoctor()) && statistics.getCheckDoctor().equals(user.getUserName())){
statistics.setCheckName(user.getName());
}
if(StringUtils.isNotBlank(statistics.getCheckedDoctor()) && statistics.getCheckedDoctor().equals(user.getUserName())){
statistics.setCheckedName(user.getName());
}
}
}
return list;
}
//复印记录报表
public List<TUuPrintVo> getPrintCount(TUuPrintSearch search){
List<TUuPrintVo> list = uuPrintMapper.getPrintCount(search);
return list;
}
//复印记录明细
public List<TUuPrintVo> getPrintInfo(TUuPrintSearch search){
List<TUuPrintVo> list = uuPrintMapper.getPrintInfo(search);
if(null != list && !list.isEmpty()){
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for(TUuPrintVo printVo : list){
Date cpytime = printVo.getCpytime();
printVo.setPrintTime(fmt.format(cpytime));
}
}
return list;
}
//扫描记录报表
public List<TUuInfoVo> getScanCount(TUuPrintSearch search){
List<TUuInfoVo> list = uuInfoMapper.getScanCount(search);
return list;
}
//扫描记录明细
public List<TUuInfoVo> getScanInfo(TUuPrintSearch search){
List<TUuInfoVo> list = uuInfoMapper.getScanInfo(search);
return list;
}
public List<User> getUserList(HttpServletRequest request){
List<User> userList = new ArrayList<>();
try {
//查询缓存时候存在
userList = (List<User>)request.getSession().getAttribute("USER_LIST");
if(null == userList || userList.isEmpty()){
String userName = (String) request.getSession().getAttribute("userSession");
//调用接口查询
String resultString = "";
// 创建uri
String url = POWER_URLHEAD+"/font/getUserList?userName="+userName;
// 执行请求
CloseableHttpResponse response = HttpClients.createDefault().execute(new HttpGet(url));
// 判断返回状态是否为200
if (response.getStatusLine().getStatusCode() == 200) {
resultString = EntityUtils.toString(response.getEntity(), "UTF-8");
}
JSONObject jsonObject = JSONObject.fromObject(resultString);
String extend = jsonObject.getString("extend");
JSONObject extendObject = JSONObject.fromObject(extend);
String userList1 = extendObject.getString("userList");
userList = (List<User>) JSON.parseArray(userList1,User.class);
//设置进session
request.getSession().setAttribute("USER_LIST",userList);
}
}catch (Exception e){
e.printStackTrace();
}
return userList;
}
}

@ -0,0 +1,27 @@
package com.emr.service.ipml;
import com.emr.dao.TPrintinfoMapper;
import com.emr.entity.TPrintinfo;
import com.emr.util.Msg;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class TPrintinfoService {
@Autowired
private TPrintinfoMapper tPrintinfoMapper;
public Msg selectIsPrintByPatienId(String patientId){
TPrintinfo tPrintinfo = tPrintinfoMapper.selectLockByPatienId(patientId);
if(!"0".equals(tPrintinfo.getIsprint())){
return Msg.success().add("isPrint","1");
}
List<TPrintinfo> list = tPrintinfoMapper.selectIsPrintByPatienId(patientId);
if(null != list && !list.isEmpty()){
return Msg.success().add("isPrint",list.get(0).getIsprint());
}else{
return Msg.success().add("isPrint","0");
}
}
}

@ -0,0 +1,40 @@
/**
* Copyright (C), 2015-2019
* Author: HJL
* Date: 2019/7/19 15:46
* Description:
*/
package com.emr.service.ipml;
import com.emr.dao.V_CountMapper;
import com.emr.entity.*;
import com.emr.service.V_CountService;
import com.emr.vo.V_CountVo;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
@Service
public class V_CountServiceImpl implements V_CountService {
@Autowired
private V_CountMapper vCountMapper;
@Override
public List<V_Count> selectByCol(V_CountVo record) {
List<V_Count> v_counts = vCountMapper.selectByCol(record);
return v_counts;
}
@Override
public OffsetLimitPage selectPageByClo(V_CountVo record, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<V_Count> list = selectByCol(record);
return new OffsetLimitPage((Page) list);
}
}

@ -0,0 +1,120 @@
package com.emr.shiro;
import com.alibaba.fastjson.JSONObject;
import com.emr.util.HttpClientUtils;
import org.apache.poi.ss.formula.functions.T;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.*;
import org.apache.shiro.authz.AuthorizationInfo;
import org.apache.shiro.authz.SimpleAuthorizationInfo;
import org.apache.shiro.realm.AuthorizingRealm;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.PrincipalCollection;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import java.util.List;
/**
* @author HJL
* @create 2019/4/29
*/
public class MyRealm extends AuthorizingRealm {
//获取权限列表
/*@Autowired
private PermissionService permissionService;
//获取用户
@Autowired
private UserService userService;
////获取用户角色
@Autowired
private RoleService roleService;*/
@Value("${powerUrl}")
private String powerUrl;
/**
* , .
*/
@Override
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) {
//获取登录时输入的用户名
String username = (String) principalCollection.getPrimaryPrincipal();
if (username != null) {
//获取用户信息
//User user = userService.getUserByUsername(username);
//获取用户角色
//List<Role> roles = roleService.getRoles(username);
//获取权限列表
//List<String> permission = permissionService.getTheUrl(user.getId());
SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();
info.addStringPermission("/login");
info.addStringPermission("index");
info.addRole("0");
// String url = powerUrl + "?sysFlag=emr_medical_record&userName=" + username;
// JSONObject obj = HttpClientUtils.httpGet(url);
// if (obj != null) {
// if ((obj.getString("code")).equals("100")) {
//
// }
// }
/* if (permission != null && !permission.isEmpty()) {
for (String url : permission) {
info.addStringPermission(url);//加入权限
}
}
if (roles != null && !roles.isEmpty()) {
for (Role role : roles) {
info.addRole(role.getRole());//加入角色
}
}*/
return info;
}
return null;
}
/**
* ,.
*/
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken authenticationToken) throws AuthenticationException {
UsernamePasswordToken token = (UsernamePasswordToken) authenticationToken;
//通过表单接收的用户名
String username = token.getUsername();
String userpwd = String.valueOf(token.getPassword());
if (username != null && !"".equals(username)) {
/*User user = userService.getUserByUsername(username);
if (user != null) {
return new SimpleAuthenticationInfo(user.getUsername(), user.getPassword(), getName());
}
http://120.27.212.36:8888/power/font/getMenusByUserIdAndSysFlag?sysFlag=emr_medical_record&userName=admin*/
String url = powerUrl+"?sysFlag=emr_medical_record&userName="+ username;
JSONObject obj = HttpClientUtils.httpGet(url);
if(obj!=null){
if((obj.getString("code")).equals("100")){
//当验证都通过后,把用户信息放在 session 里
Session session = SecurityUtils.getSubject().getSession();
// session.setTimeout(30*24 * 60 * 60);//以秒为单位即在没有活动30分钟后session将失效
session.setAttribute("menuList", obj);
//session.setAttribute("userSession",username);
//session.setAttribute("userSessionId", users.get(0).getId());
//session.setAttribute("userRoles", org.apache.commons.lang.StringUtils.join(roleList, ","));
//当验证都通过后,把用户信息放在 session 里
JSONObject list= (JSONObject) obj.getJSONObject("extend");
//System.out.println(list);
session.setAttribute("userSession", username);
return new SimpleAuthenticationInfo(username, userpwd, getName());
}
}
}
return null;
}
}

@ -0,0 +1,162 @@
package com.emr.util;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
*
* @author
* 2019.01.30
*/
public class AccountDate {
private static transient int gregorianCutoverYear = 1582;
/** 闰年中每月天数 */
private static final int[] DAYS_P_MONTH_LY= {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
/** 非闰年中每月天数 */
private static final int[] DAYS_P_MONTH_CY= {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
/** 代表数组里的年、月、日 */
private static final int Y = 0, M = 1, D = 2;
/**
*
* @param date
* @return
*/
public static int[] splitYMD(String date){
date = date.replace("-", "");
int[] ymd = {0, 0, 0};
ymd[Y] = Integer.parseInt(date.substring(0, 4));
ymd[M] = Integer.parseInt(date.substring(4, 6));
ymd[D] = Integer.parseInt(date.substring(6, 8));
return ymd;
}
/**
*
* @param year
* @return
*/
public static boolean isLeapYear(int year) {
return year >= gregorianCutoverYear ?
((year%4 == 0) && ((year%100 != 0) || (year%400 == 0))) : (year%4 == 0);
}
/**
* 1
* @param year
* @param month
* @param day
* @return
*/
private static int[] addOneDay(int year, int month, int day){
if(isLeapYear( year )){
day++;
if( day > DAYS_P_MONTH_LY[month -1 ] ){
month++;
if(month > 12){
year++;
month = 1;
}
day = 1;
}
}else{
day++;
if( day > DAYS_P_MONTH_CY[month -1 ] ){
month++;
if(month > 12){
year++;
month = 1;
}
day = 1;
}
}
int[] ymd = {year, month, day};
return ymd;
}
/**
*
* @param decimal
* @return
*/
public static String formatMonthDay(int decimal){
DecimalFormat df = new DecimalFormat("00");
return df.format( decimal );
}
/**
*
* @param decimal
* @return
*/
public static String formatYear(int decimal){
DecimalFormat df = new DecimalFormat("0000");
return df.format( decimal );
}
/**
*
* @param begin
* @param end
* @return
* @throws ParseException
*/
public static long countDay(String begin,String end){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date beginDate , endDate;
long day = 0;
try {
beginDate= format.parse(begin);
endDate= format.parse(end);
day=(endDate.getTime()-beginDate.getTime())/(24*60*60*1000);
} catch (ParseException e) {
e.printStackTrace();
}
return day;
}
/**
*
* @param beginDate endDate
* @return
*/
public static List<String> getEveryday(String beginDate , String endDate){
long days = countDay(beginDate, endDate);
int[] ymd = splitYMD( beginDate );
List<String> everyDays = new ArrayList<String>();
everyDays.add(beginDate);
for(int i = 0; i < days; i++){
ymd = addOneDay(ymd[Y], ymd[M], ymd[D]);
everyDays.add(formatYear(ymd[Y])+"-"+formatMonthDay(ymd[M])+"-"+formatMonthDay(ymd[D]));
}
return everyDays;
}
/**
*
* */
public static Integer getWeekDayByStr(String date) throws Exception{
SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd");
Date dt = sim.parse(date);//将指定格式的字符串解析成Date时间对象
SimpleDateFormat sim1 = new SimpleDateFormat("yyyy年-MM月-dd日");
Calendar ca = Calendar.getInstance();
ca.setTime(dt);//将date对象转换为Calendar对象
return ca.get(Calendar.DAY_OF_WEEK)-1;
}
public static void main(String[] args) throws Exception{
List<String> list = AccountDate.getEveryday("2007-08-29", "2008-09-02");
/*for (String result : list) {
System.out.println(result);
}*/
System.out.println(getWeekDayByStr("2019-12-21"));
}
}

@ -0,0 +1,42 @@
package com.emr.util;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
/**
*
* @Author:
* @Date:
* @Version 1.0
*/
public class ActionScopeUtils {
public static HttpSession getSession(HttpServletRequest request){
return request.getSession();
}
public static HttpServletRequest getRequest(){
return ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
}
public static void setSessionAttribute(String key,Object value){
getSession(getRequest()).setAttribute(key,value);
}
public static Object getSessionAttribute(String key){
return getSession(getRequest()).getAttribute(key);
}
public static void setRequestAttribute(String key,Object value){
getRequest().setAttribute(key,value);
}
public static Object getRequestAttribute(String key){
return getRequest().getAttribute(key);
}
}

@ -0,0 +1,201 @@
/**
* Excel
* @version 1.0
*/
package com.emr.util;
import org.apache.commons.lang3.CharUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.HSSFColor;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
public class ExportExcelUtil {
private final int SPLIT_COUNT = 1000000; //Excel每个工作簿的行数
private static List<String> fieldName = null; //excel标题数据集
private static List<List<String>> fieldData = null; //excel数据内容
private String fileName;//excel文件名
private HSSFWorkbook workBook = null;
/**
* ,list
* */
public List<String> getFieldName(String tableThNames){
String[] names = tableThNames.split(",");
List<String> fieldName = new ArrayList<>();
if (names != null) {
for (int i = 0; i < names.length; i++) {
if (StringUtils.isNoneBlank(names[i])) {
fieldName.add(names[i]);
}
}
}
return fieldName;
}
/**
* ,1.list 2.list
* */
public List<List<String>> getFieldData(String fieldCns, Collection list){
List<List<String>> fieldData = new ArrayList<List<String>>();
String[] fieldList = fieldCns.split(",");
Object[] objects = list.toArray();
for (Object object : objects) {
List<String> data = new ArrayList<String>();
for (String english : fieldList) {
String field = fieldToProperty(english);
String value = getFieldValueByFieldName(field,object);
data.add(value);
}
fieldData.add(data);
}
return fieldData;
}
/**
* excel
* tableThNames",",
* fieldCns","name,age
* list:
* fileName:excel
* response:
* */
public void expordExcel(String tableThNames,String fieldCns,Collection list,String fileName,HttpServletResponse response) throws Exception {
this.fieldName = getFieldName(tableThNames);
this.fieldData = getFieldData(fieldCns,list);
this.fileName = fileName;
OutputStream os = response.getOutputStream();
//导出excel建议加上重置输出流可以不加该代码但是如果不加必须要保证输出流中不应该在存在其他数据否则导出会有问题
response.reset();
//处理乱码
fileName = new String(fileName.getBytes("gbk"), "iso-8859-1");
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-disposition", "attachment;filename=" + fileName);
response.setBufferSize(1024);
workBook = createWorkbook();
workBook.write(os);//将excel中的数据写到输出流中用于文件的输出
os.close();
}
/**
* HSSFWorkbook
* @return HSSFWorkbook
*/
public HSSFWorkbook createWorkbook() {
workBook = new HSSFWorkbook();//创建一个工作薄对象
int rows = fieldData.size();//总的记录数
int sheetNum = 0; //指定sheet的页数
if (rows % SPLIT_COUNT == 0) {
sheetNum = rows / SPLIT_COUNT;
} else {
sheetNum = rows / SPLIT_COUNT + 1;
}
for (int i = 1; i <= sheetNum; i++) {//循环2个sheet的值
HSSFSheet sheet = workBook.createSheet("Page " + i);//使用workbook对象创建sheet对象
HSSFRow headRow = sheet.createRow((short) 0); //创建行0表示第一行本例是excel的标题
/**************对标题添加样式begin********************/
HSSFCellStyle cellStyle = workBook.createCellStyle();//创建列的样式对象
//水平居中
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
//垂直居中
cellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
HSSFFont font = workBook.createFont();//创建字体对象
//字体加粗
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
//字体颜色变红
font.setColor(HSSFColor.RED.index);
//如果font中存在设置后的字体并放置到cellStyle对象中此时该单元格中就具有了样式字体
cellStyle.setFont(font);
/**************对标题添加样式end********************/
for (int j = 0; j < fieldName.size(); j++) {//循环excel的标题
HSSFCell cell = headRow.createCell( j);//使用行对象创建列对象0表示第1列
//设置列的宽度/
sheet.setColumnWidth(j, 6000);
//添加样式
cell.setCellType(HSSFCell.CELL_TYPE_STRING);
if(fieldName.get(j) != null){
//将创建好的样式放置到对应的单元格中
cell.setCellStyle(cellStyle);
cell.setCellValue((String) fieldName.get(j));//为标题中的单元格设置值
}else{
cell.setCellValue("-");
}
}
//分页处理excel的数据遍历所有的结果
for (int k = 0; k < (rows < SPLIT_COUNT ? rows : SPLIT_COUNT); k++) {
if (((i - 1) * SPLIT_COUNT + k) >= rows)//如果数据超出总的记录数的时候,就退出循环
break;
HSSFRow row = sheet.createRow((short) (k + 1));//创建1行
//分页处理获取每页的结果集并将数据内容放入excel单元格
ArrayList<String> rowList = (ArrayList<String>) fieldData.get((i - 1) * SPLIT_COUNT + k);
for (int n = 0; n < rowList.size(); n++) {//遍历某一行的结果
HSSFCell cell = row.createCell( n);//使用行创建列对象
if(rowList.get(n) != null){
cell.setCellValue((String) rowList.get(n).toString());
}else{
cell.setCellValue("");
}
}
}
}
return workBook;
}
/**
* user_name to userName
* @param field
* @return
*/
public static String fieldToProperty(String field) {
if (null == field) {
return "";
}
char[] chars = field.toCharArray();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < chars.length; i++) {
char c = chars[i];
if (c == '_') {
int j = i + 1;
if (j < chars.length) {
sb.append(StringUtils.upperCase(CharUtils.toString(chars[j])));
i++;
}
} else {
sb.append(c);
}
}
return sb.toString();
}
/**
*
*
* @param fieldName
* @param object
* @return
*/
public static String getFieldValueByFieldName(String fieldName, Object object) {
try {
Field field = object.getClass().getDeclaredField(fieldName);
//设置对象的访问权限保证对private的属性的访问
field.setAccessible(true);
return field.get(object).toString();
} catch (Exception e) {
return null;
}
}
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save