parent
2bd3a39de1
commit
4913fbf7ca
@ -0,0 +1,44 @@
|
||||
package com.emr.dao;
|
||||
|
||||
import com.emr.vo.CompleteVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
public interface CompleteTaskMapper {
|
||||
/**
|
||||
* 根据最后一次刷表的时间查询出院记录里的且比刷表时间还晚的采集单的masterId集合
|
||||
* @param nowDate
|
||||
* @return
|
||||
*/
|
||||
List<CompleteVo> selectCompleteMasterIds(@Param("nowDate")Date nowDate);
|
||||
|
||||
/**
|
||||
* 查询自定义的完整性策略缺失
|
||||
* @param masterId
|
||||
* @return
|
||||
*/
|
||||
List<CompleteVo> selectMasterIdByCustomComplete(@Param("masterId") String masterId);
|
||||
|
||||
/**
|
||||
* 查询同组需要校验的文档名称集合
|
||||
* @param isCheck
|
||||
* @return
|
||||
*/
|
||||
List<CompleteVo> selectRecordNames(@Param("isCheck")Integer isCheck);
|
||||
|
||||
/**
|
||||
* 查询缺失的检验检查报告集合
|
||||
* @param masterId
|
||||
* @return
|
||||
*/
|
||||
List<CompleteVo> selectMasterIdByInspection(@Param("masterId") String masterId);
|
||||
|
||||
/**
|
||||
* 判断重复文件
|
||||
* @param masterId
|
||||
* @return
|
||||
*/
|
||||
List<CompleteVo> selectMasterIdByRepeat(@Param("masterId") String masterId);
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
package com.emr.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class CompleteVo {
|
||||
private String id;
|
||||
|
||||
private Integer isCheck;//是否校验
|
||||
|
||||
private String recordName;//校验的文档名称
|
||||
|
||||
private Integer count;
|
||||
|
||||
private String lockInfo;
|
||||
}
|
@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.emr.dao.CompleteTaskMapper">
|
||||
<resultMap id="BaseResultMap" type="com.emr.vo.CompleteVo">
|
||||
<id column="id" jdbcType="NVARCHAR" property="id"/>
|
||||
<result column="is_check" jdbcType="INTEGER" property="isCheck"/>
|
||||
<result column="record_name" jdbcType="NVARCHAR" property="recordName"/>
|
||||
<result column="LockInfo" jdbcType="NVARCHAR" property="lockInfo"/>
|
||||
</resultMap>
|
||||
<!--根据最后一次刷表的时间查询出院记录里的且比刷表时间还晚的采集单的masterId集合-->
|
||||
<select id="selectCompleteMasterIds" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
archive_master.id,LockInfo
|
||||
FROM
|
||||
archive_master
|
||||
INNER JOIN archive_detail ON archive_master.id = archive_detail.MasterID
|
||||
WHERE
|
||||
ArchiveState != '1024'
|
||||
AND ArchiveState != '128'
|
||||
AND YEAR (discharge_date_time) != '1801'
|
||||
<if test="nowDate != null and nowDate != ''">
|
||||
AND archive_detail.UpLoadDateTime >= #{nowDate}
|
||||
</if>
|
||||
GROUP BY
|
||||
archive_master.id,LockInfo
|
||||
</select>
|
||||
|
||||
<sql id="selectRecordCompletenessInfo">
|
||||
(
|
||||
SELECT
|
||||
dbo.archive_record_name_info.record_name,
|
||||
dbo.archive_record_name_info.is_check,
|
||||
dbo.archive_master.id
|
||||
FROM
|
||||
dbo.archive_master
|
||||
CROSS JOIN dbo.archive_record_name_info
|
||||
WHERE
|
||||
(
|
||||
dbo.archive_record_name_info.effective = 1
|
||||
)
|
||||
AND (
|
||||
dbo.archive_record_name_info.is_check
|
||||
<>
|
||||
0
|
||||
)
|
||||
AND (
|
||||
dbo.archive_record_name_info.contain_dept_name = '-1'
|
||||
)
|
||||
AND (
|
||||
CHARINDEX (
|
||||
',' + dbo.archive_master.dept_name + ',',
|
||||
',' + dbo.archive_record_name_info.exclude_dept_name + ','
|
||||
)<= 0
|
||||
)
|
||||
OR (
|
||||
dbo.archive_record_name_info.effective = 1
|
||||
)
|
||||
AND (
|
||||
dbo.archive_record_name_info.is_check <> 0
|
||||
)
|
||||
AND (
|
||||
CHARINDEX (
|
||||
',' + dbo.archive_master.dept_name + ',',
|
||||
',' + dbo.archive_record_name_info.exclude_dept_name + ','
|
||||
) <= 0
|
||||
)
|
||||
AND (
|
||||
CHARINDEX (
|
||||
',' + dbo.archive_master.dept_name + ',',
|
||||
',' + dbo.archive_record_name_info.contain_dept_name + ','
|
||||
) > 0
|
||||
)
|
||||
)
|
||||
</sql>
|
||||
|
||||
<!--查询自定义的完整性策略缺失-->
|
||||
<select id="selectMasterIdByCustomComplete" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
record_name,
|
||||
Title,
|
||||
is_check
|
||||
FROM
|
||||
<include refid="selectRecordCompletenessInfo"></include> record_completeness_info
|
||||
LEFT JOIN archive_detail ON record_completeness_info.id = archive_detail.MasterID
|
||||
AND CHARINDEX (
|
||||
',' + Title + ',',
|
||||
',' + record_completeness_info.record_name + ','
|
||||
) > 0
|
||||
AND archive_detail.flag = 0
|
||||
WHERE
|
||||
record_completeness_info.id = #{masterId}
|
||||
and Title is null
|
||||
</select>
|
||||
|
||||
<!--查询同组同时校验的文档名称集合-->
|
||||
<select id="selectRecordNames" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
record_name
|
||||
FROM
|
||||
archive_record_name_info
|
||||
<where>
|
||||
<if test="isCheck != null">
|
||||
and is_check = #{isCheck}
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<!--查询缺失的检验检查报告集合-->
|
||||
<select id="selectMasterIdByInspection" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
C1 recordName
|
||||
FROM
|
||||
archive_other_ext
|
||||
WHERE
|
||||
sysFlag IN (3, 4, 6)
|
||||
AND ISNULL(DID, '') = ''
|
||||
AND ISNULL(MID, '') != ''
|
||||
AND MID = #{masterId}
|
||||
</select>
|
||||
|
||||
<!--判断重复文件-->
|
||||
<select id="selectMasterIdByRepeat" resultMap="BaseResultMap">
|
||||
SELECT
|
||||
archive_detail.Title recordName,
|
||||
COUNT(Title) count
|
||||
FROM
|
||||
archive_detail
|
||||
LEFT JOIN archive_other_ext ON archive_detail.MasterID = archive_other_ext.MID
|
||||
AND archive_detail.id = archive_other_ext.DID
|
||||
WHERE
|
||||
MasterID = #{masterId}
|
||||
AND Source NOT IN (
|
||||
'电子病历系统采集服务-长临医嘱',
|
||||
'扫描上传',
|
||||
'手工上传'
|
||||
)
|
||||
AND flag = 0
|
||||
AND archive_other_ext.ID IS NULL
|
||||
GROUP BY
|
||||
Title
|
||||
HAVING
|
||||
(COUNT(Title) > 1)
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in New Issue