修改优先采集没有fileId新需求,按记账号和分类编号追溯

master
zengwh 5 years ago
parent df343174ae
commit cd6c55e420

@ -235,9 +235,9 @@ public class beHospitaledController {
obj1.setFrecName("标题" + i);
obj1.setFentryNo((808+i)+"");
obj1.setFentryName("分类"+(808+i));
obj1.setFfileId((4234+i)+"");
if(i>=2){
obj1.setPdfflag("1");
obj1.setFfileId((4234+i)+"");
}else{
obj1.setPdfflag("0");
}
@ -268,34 +268,42 @@ public class beHospitaledController {
//赋值两时间:最近上传时间与最新手动提交时间
private void setTwoTimeForList(List<HisCollectInfo> list) {
StringBuilder fileIdsStr = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
String ffileId = list.get(i).getFfileId();
if(i != 0){
fileIdsStr.append(",");
for (HisCollectInfo hisCollectInfo1 : list) {
String ffileId = hisCollectInfo1.getFfileId();
if (StringUtils.isNotBlank(ffileId)) {
if (StringUtils.isNotBlank(fileIdsStr)) {
fileIdsStr.append(",");
}
fileIdsStr.append("'").append(ffileId).append("'");
}
fileIdsStr.append("'").append(ffileId).append("'");
}
//查询detail表的上传时间
List<Archive_Detail> archiveDetails = detailMapper.selectUpdateTimeBySubAssort(fileIdsStr.toString());
//查询archive_sumbitDate_info的提交时间
List<ArchiveSumbitdateInfo> archiveSumbitdateInfoList = sumbitdateInfoMapper.selectOneByFileId(fileIdsStr.toString());
List<ArchiveSumbitdateInfo> archiveSumbitdateInfoList = sumbitdateInfoMapper.selectOneByPatientId(list.get(0).getFpatno(),null,null);
if(!CollectionUtils.isEmpty(archiveDetails) || !CollectionUtils.isEmpty(archiveSumbitdateInfoList)){
for (HisCollectInfo hisCollectInfo : list) {
String ffileId = hisCollectInfo.getFfileId();
if(StringUtils.isNotBlank(ffileId)) {
if (!CollectionUtils.isEmpty(archiveDetails)) {
for (Archive_Detail archiveDetail : archiveDetails) {
if (ffileId.equals(archiveDetail.getSubassort())) {
hisCollectInfo.setUpdateLoadTime(archiveDetail.getUploaddatetime());
break;
}
//分类编号
String fentryNo = hisCollectInfo.getFentryNo();
if (!CollectionUtils.isEmpty(archiveDetails) && StringUtils.isNotBlank(ffileId)) {
for (Archive_Detail archiveDetail : archiveDetails) {
if (ffileId.equals(archiveDetail.getSubassort())) {
hisCollectInfo.setUpdateLoadTime(archiveDetail.getUploaddatetime());
break;
}
}
if (!CollectionUtils.isEmpty(archiveSumbitdateInfoList)) {
for (ArchiveSumbitdateInfo info : archiveSumbitdateInfoList) {
if (ffileId.equals(info.getFileId())) {
}
if (!CollectionUtils.isEmpty(archiveSumbitdateInfoList)) {
for (ArchiveSumbitdateInfo info : archiveSumbitdateInfoList) {
String fentryNoTemp = info.getFentryNo();
if(StringUtils.isNotBlank(fentryNo) && StringUtils.isNotBlank(fentryNoTemp) && fentryNo.equals(fentryNoTemp)){
if (StringUtils.isNotBlank(ffileId) && StringUtils.isNotBlank(ffileId) && ffileId.equals(info.getFileId())) {
hisCollectInfo.setSumbitTime(info.getCreateTime());
break;
}else{
//取分类的最后一个
hisCollectInfo.setSumbitTime(info.getCreateTime());
}
}
}
@ -306,7 +314,7 @@ public class beHospitaledController {
//组织sql语句查询orcle查询文件完成情况
private String getSelectSqlForGetPdfCollect(HisCollectInfo collectInfo){
String sql = "select FENTRY_NO,FENTRY_NAME,FREC_NAME,FFILE_ID,PDF_FLAG from pacs.v_emrpdf_rec where fpatno = '"+collectInfo.getFpatno()+"'";
String sql = "select FPATNO,FENTRY_NO,FENTRY_NAME,FREC_NAME,FFILE_ID,PDF_FLAG from pacs.v_emrpdf_rec where fpatno = '"+collectInfo.getFpatno()+"'";
//标题
String frecName = collectInfo.getFrecName();
if(StringUtils.isNotBlank(frecName)){
@ -342,14 +350,15 @@ public class beHospitaledController {
if(StringUtils.isBlank(fentryNos)){
return Msg.fail("分类编号不能为空");
}
if(StringUtils.isBlank(ffileIds)){
return Msg.fail("文件id不能为空");
}
String[] fentryNoList = fentryNos.split(",");
String[] ffileIdList = ffileIds.split(",");
for (int i = 0; i < fentryNoList.length; i++) {
if(StringUtils.isNotBlank(fentryNoList[i])){
String sql = "insert into pacs.p_pdf_print(FENTRYNO,FPATNO,FAPPLYTIME,FFILE_ID) values('"+fentryNoList[i]+"','"+fpatno+"','"+fapplytime+"','"+ffileIdList[i]+"')";
String fileId = null;
if(StringUtils.isNotBlank(ffileIdList[i]) && !"undefined".equals(ffileIdList[i])){
fileId = "'" + ffileIdList[i] + "'";
}
String sql = "insert into pacs.p_pdf_print(FENTRYNO,FPATNO,FAPPLYTIME,FFILE_ID) values('"+fentryNoList[i]+"','"+fpatno+"','"+fapplytime+"',"+fileId+")";
log.info("优先采集插入语句:"+sql);
try {
OracleConnect.insert(sql);
@ -359,7 +368,7 @@ public class beHospitaledController {
log.info("优先采集插入oracle失败,请查看error.log文件");
ExceptionPrintUtil.printException(e);
}
if (insertSubmitDateInfo(fapplytime, ffileIdList[i])){
if (insertSubmitDateInfo(fpatno,fapplytime,fentryNoList[i], ffileIdList[i])){
return Msg.fail("服务器内部出错,请联系系统管理员!");
}
}
@ -367,13 +376,18 @@ public class beHospitaledController {
return Msg.success();
}
private boolean insertSubmitDateInfo(String fapplytime, String fileId) {
private boolean insertSubmitDateInfo(String fpatno, String fapplytime, String fentryNo,String fileId) {
//插入记录
ArchiveSumbitdateInfo info = new ArchiveSumbitdateInfo();
info.setPatientId(fpatno);
info.setFentryNo(fentryNo);
if(StringUtils.isBlank(fileId) || "undefined".equals(fileId)) {
fileId = null;
}
info.setFileId(fileId);
//查询时候存在,存在更新,不存在添加
try {
List<ArchiveSumbitdateInfo> archiveSumbitdateInfoList = sumbitdateInfoMapper.selectOneByFileId("'"+ fileId +"'");
List<ArchiveSumbitdateInfo> archiveSumbitdateInfoList = sumbitdateInfoMapper.selectOneByPatientId(fpatno,fentryNo,fileId);
info.setCreateTime(fapplytime);
if(!CollectionUtils.isEmpty(archiveSumbitdateInfoList)){
ArchiveSumbitdateInfo archiveSumbitdateInfo = archiveSumbitdateInfoList.get(0);

@ -8,15 +8,13 @@ import java.util.List;
public interface ArchiveSumbitdateInfoMapper {
int deleteByPrimaryKey(Integer id);
int insert(ArchiveSumbitdateInfo record);
int insertSelective(ArchiveSumbitdateInfo record);
ArchiveSumbitdateInfo selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(ArchiveSumbitdateInfo record);
int updateByPrimaryKey(ArchiveSumbitdateInfo record);
List<ArchiveSumbitdateInfo> selectOneByFileId(@Param("fileId")String fileId);
List<ArchiveSumbitdateInfo> selectOneByPatientId(@Param("patientId")String patientId,
@Param("fentryNo")String fentryNo,
@Param("fileId")String fileId);
}

@ -5,6 +5,10 @@ import java.io.Serializable;
public class ArchiveSumbitdateInfo implements Serializable {
private Integer id;
private String patientId;
private String fentryNo;
private String fileId;
private String createTime;
@ -31,6 +35,26 @@ public class ArchiveSumbitdateInfo implements Serializable {
this.id = id;
}
public String getPatientId() {
return patientId;
}
public void setPatientId(String patientId) {
this.patientId = patientId;
}
public String getFentryNo() {
return fentryNo;
}
public void setFentryNo(String fentryNo) {
this.fentryNo = fentryNo;
}
public static long getSerialVersionUID() {
return serialVersionUID;
}
public String getFileId() {
return fileId;
}
@ -97,20 +121,18 @@ public class ArchiveSumbitdateInfo implements Serializable {
@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(", fileId=").append(fileId);
sb.append(", createTime=").append(createTime);
sb.append(", int1=").append(int1);
sb.append(", int2=").append(int2);
sb.append(", int3=").append(int3);
sb.append(", str1=").append(str1);
sb.append(", str2=").append(str2);
sb.append(", str3=").append(str3);
sb.append("]");
return sb.toString();
return "ArchiveSumbitdateInfo{" +
"id=" + id +
", patientId='" + patientId + '\'' +
", fentryNo='" + fentryNo + '\'' +
", fileId='" + fileId + '\'' +
", createTime='" + createTime + '\'' +
", int1=" + int1 +
", int2=" + int2 +
", int3=" + int3 +
", str1='" + str1 + '\'' +
", str2='" + str2 + '\'' +
", str3='" + str3 + '\'' +
'}';
}
}

@ -110,11 +110,12 @@ public class OracleConnect {
if(rs.next()) {
while (rs.next()) {
HisCollectInfo info = new HisCollectInfo();
info.setFentryNo(rs.getString(1));
info.setFentryName(rs.getString(2));
info.setFrecName(rs.getString(3));
info.setFfileId(rs.getString(4));
info.setPdfflag(rs.getString(5));
info.setFpatno(rs.getString(1));
info.setFentryNo(rs.getString(2));
info.setFentryName(rs.getString(3));
info.setFrecName(rs.getString(4));
info.setFfileId(rs.getString(5));
info.setPdfflag(rs.getString(6));
list.add(info);
}
}

@ -3,6 +3,8 @@
<mapper namespace="com.emr.dao.ArchiveSumbitdateInfoMapper" >
<resultMap id="BaseResultMap" type="com.emr.entity.ArchiveSumbitdateInfo" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="patient_id" property="patientId" jdbcType="VARCHAR" />
<result column="fentry_no" property="fentryNo" jdbcType="VARCHAR" />
<result column="file_id" property="fileId" jdbcType="VARCHAR" />
<result column="create_time" property="createTime" jdbcType="VARCHAR" />
<result column="int1" property="int1" jdbcType="INTEGER" />
@ -13,7 +15,7 @@
<result column="str3" property="str3" jdbcType="NVARCHAR" />
</resultMap>
<sql id="Base_Column_List" >
id, file_id, create_time, int1, int2, int3, str1, str2, str3
id, patient_id,fentry_no,file_id, create_time, int1, int2, int3, str1, str2, str3
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
select
@ -25,20 +27,18 @@
delete from archive_sumbitDate_info
where id = #{id,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.emr.entity.ArchiveSumbitdateInfo" >
insert into archive_sumbitDate_info (id, file_id, create_time,
int1, int2, int3, str1,
str2, str3)
values (#{id,jdbcType=INTEGER}, #{fileId,jdbcType=VARCHAR}, #{createTime,jdbcType=VARCHAR},
#{int1,jdbcType=INTEGER}, #{int2,jdbcType=INTEGER}, #{int3,jdbcType=INTEGER}, #{str1,jdbcType=NVARCHAR},
#{str2,jdbcType=NVARCHAR}, #{str3,jdbcType=NVARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.emr.entity.ArchiveSumbitdateInfo" >
insert into archive_sumbitDate_info
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="id != null" >
id,
</if>
<if test="patientId != null" >
patient_id,
</if>
<if test="fentryNo != null" >
fentry_no,
</if>
<if test="fileId != null" >
file_id,
</if>
@ -68,6 +68,12 @@
<if test="id != null" >
#{id,jdbcType=INTEGER},
</if>
<if test="patientId != null" >
#{patientId,jdbcType=VARCHAR},
</if>
<if test="fentryNo != null" >
#{fentryNo,jdbcType=VARCHAR},
</if>
<if test="fileId != null" >
#{fileId,jdbcType=VARCHAR},
</if>
@ -97,6 +103,12 @@
<update id="updateByPrimaryKeySelective" parameterType="com.emr.entity.ArchiveSumbitdateInfo" >
update archive_sumbitDate_info
<set >
<if test="patientId != null" >
patient_id = #{patientId,jdbcType=VARCHAR},
</if>
<if test="fentryNo != null" >
fentry_no = #{fentryNo,jdbcType=VARCHAR},
</if>
<if test="fileId != null" >
file_id = #{fileId,jdbcType=VARCHAR},
</if>
@ -124,24 +136,19 @@
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.emr.entity.ArchiveSumbitdateInfo" >
update archive_sumbitDate_info
set file_id = #{fileId,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=VARCHAR},
int1 = #{int1,jdbcType=INTEGER},
int2 = #{int2,jdbcType=INTEGER},
int3 = #{int3,jdbcType=INTEGER},
str1 = #{str1,jdbcType=NVARCHAR},
str2 = #{str2,jdbcType=NVARCHAR},
str3 = #{str3,jdbcType=NVARCHAR}
where id = #{id,jdbcType=INTEGER}
</update>
<select id="selectOneByFileId" resultMap="BaseResultMap">
select id,file_id,create_time from archive_sumbitDate_info
<select id="selectOneByPatientId" resultMap="BaseResultMap">
select id,fentry_no,file_id,create_time from archive_sumbitDate_info
<where>
<if test="patientId != null and patientId != ''">
and patient_id = #{patientId}
</if>
<if test="fentryNo != null and fentryNo != ''">
and fentry_no = #{fentryNo}
</if>
<if test="fileId != null and fileId != ''">
and file_id in(${fileId})
and file_id = #{fileId}
</if>
</where>
order by create_time desc
</select>
</mapper>

@ -338,7 +338,7 @@
<div class="col-sm-4">
完整性审核:
<a id="showDefectTable" style="cursor: pointer">
<span id="wzContent">缺失首页,青碧的</span>
<span id="wzContent"></span>
</a>
</div>
</div>
@ -2266,6 +2266,9 @@
var fentryNos = row.fentryNo;
//文件id
var ffileIds = row.ffileId;
if(ffileIds == null || ffileIds == ''){
ffileIds = 'undefined';
}
//提交请求
sumbitFirstCollect(fentryNos,ffileIds);
$(this).removeAttr("disabled");

Loading…
Cancel
Save